{"version":3,"file":"default-node_modules_angular_material_fesm2022_input_mjs.js","mappings":"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","sources":["./node_modules/@angular/cdk/fesm2022/observers/private.mjs","./node_modules/@angular/cdk/fesm2022/text-field.mjs","./node_modules/@angular/material/fesm2022/form-field.mjs","./node_modules/@angular/material/fesm2022/input.mjs"],"sourcesContent":["import * as i0 from '@angular/core';\nimport { inject, NgZone, Injectable } from '@angular/core';\nimport { Subject, Observable } from 'rxjs';\nimport { filter, shareReplay, takeUntil } from 'rxjs/operators';\n\n/**\n * Handler that logs \"ResizeObserver loop limit exceeded\" errors.\n * These errors are not shown in the Chrome console, so we log them to ensure developers are aware.\n * @param e The error\n */\nconst loopLimitExceededErrorHandler = (e) => {\n if (e instanceof ErrorEvent && e.message === 'ResizeObserver loop limit exceeded') {\n console.error(`${e.message}. This could indicate a performance issue with your app. See https://github.com/WICG/resize-observer/blob/master/explainer.md#error-handling`);\n }\n};\n/**\n * A shared ResizeObserver to be used for a particular box type (content-box, border-box, or\n * device-pixel-content-box)\n */\nclass SingleBoxSharedResizeObserver {\n constructor(\n /** The box type to observe for resizes. */\n _box) {\n this._box = _box;\n /** Stream that emits when the shared observer is destroyed. */\n this._destroyed = new Subject();\n /** Stream of all events from the ResizeObserver. */\n this._resizeSubject = new Subject();\n /** A map of elements to streams of their resize events. */\n this._elementObservables = new Map();\n if (typeof ResizeObserver !== 'undefined') {\n this._resizeObserver = new ResizeObserver(entries => this._resizeSubject.next(entries));\n }\n }\n /**\n * Gets a stream of resize events for the given element.\n * @param target The element to observe.\n * @return The stream of resize events for the element.\n */\n observe(target) {\n if (!this._elementObservables.has(target)) {\n this._elementObservables.set(target, new Observable(observer => {\n const subscription = this._resizeSubject.subscribe(observer);\n this._resizeObserver?.observe(target, { box: this._box });\n return () => {\n this._resizeObserver?.unobserve(target);\n subscription.unsubscribe();\n this._elementObservables.delete(target);\n };\n }).pipe(filter(entries => entries.some(entry => entry.target === target)), \n // Share a replay of the last event so that subsequent calls to observe the same element\n // receive initial sizing info like the first one. Also enable ref counting so the\n // element will be automatically unobserved when there are no more subscriptions.\n shareReplay({ bufferSize: 1, refCount: true }), takeUntil(this._destroyed)));\n }\n return this._elementObservables.get(target);\n }\n /** Destroys this instance. */\n destroy() {\n this._destroyed.next();\n this._destroyed.complete();\n this._resizeSubject.complete();\n this._elementObservables.clear();\n }\n}\n/**\n * Allows observing resize events on multiple elements using a shared set of ResizeObserver.\n * Sharing a ResizeObserver instance is recommended for better performance (see\n * https://github.com/WICG/resize-observer/issues/59).\n *\n * Rather than share a single `ResizeObserver`, this class creates one `ResizeObserver` per type\n * of observed box ('content-box', 'border-box', and 'device-pixel-content-box'). This avoids\n * later calls to `observe` with a different box type from influencing the events dispatched to\n * earlier calls.\n */\nclass SharedResizeObserver {\n constructor() {\n /** Map of box type to shared resize observer. */\n this._observers = new Map();\n /** The Angular zone. */\n this._ngZone = inject(NgZone);\n if (typeof ResizeObserver !== 'undefined' && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n this._ngZone.runOutsideAngular(() => {\n window.addEventListener('error', loopLimitExceededErrorHandler);\n });\n }\n }\n ngOnDestroy() {\n for (const [, observer] of this._observers) {\n observer.destroy();\n }\n this._observers.clear();\n if (typeof ResizeObserver !== 'undefined' && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n window.removeEventListener('error', loopLimitExceededErrorHandler);\n }\n }\n /**\n * Gets a stream of resize events for the given target element and box type.\n * @param target The element to observe for resizes.\n * @param options Options to pass to the `ResizeObserver`\n * @return The stream of resize events for the element.\n */\n observe(target, options) {\n const box = options?.box || 'content-box';\n if (!this._observers.has(box)) {\n this._observers.set(box, new SingleBoxSharedResizeObserver(box));\n }\n return this._observers.get(box).observe(target);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: SharedResizeObserver, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: SharedResizeObserver, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: SharedResizeObserver, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }], ctorParameters: () => [] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { SharedResizeObserver };\n","import * as i1 from '@angular/cdk/platform';\nimport { normalizePassiveListenerOptions } from '@angular/cdk/platform';\nimport * as i0 from '@angular/core';\nimport { Injectable, EventEmitter, Directive, Output, booleanAttribute, Optional, Inject, Input, NgModule } from '@angular/core';\nimport { coerceElement, coerceNumberProperty } from '@angular/cdk/coercion';\nimport { EMPTY, Subject, fromEvent } from 'rxjs';\nimport { auditTime, takeUntil } from 'rxjs/operators';\nimport { DOCUMENT } from '@angular/common';\n\n/** Options to pass to the animationstart listener. */\nconst listenerOptions = normalizePassiveListenerOptions({ passive: true });\n/**\n * An injectable service that can be used to monitor the autofill state of an input.\n * Based on the following blog post:\n * https://medium.com/@brunn/detecting-autofilled-fields-in-javascript-aed598d25da7\n */\nclass AutofillMonitor {\n constructor(_platform, _ngZone) {\n this._platform = _platform;\n this._ngZone = _ngZone;\n this._monitoredElements = new Map();\n }\n monitor(elementOrRef) {\n if (!this._platform.isBrowser) {\n return EMPTY;\n }\n const element = coerceElement(elementOrRef);\n const info = this._monitoredElements.get(element);\n if (info) {\n return info.subject;\n }\n const result = new Subject();\n const cssClass = 'cdk-text-field-autofilled';\n const listener = ((event) => {\n // Animation events fire on initial element render, we check for the presence of the autofill\n // CSS class to make sure this is a real change in state, not just the initial render before\n // we fire off events.\n if (event.animationName === 'cdk-text-field-autofill-start' &&\n !element.classList.contains(cssClass)) {\n element.classList.add(cssClass);\n this._ngZone.run(() => result.next({ target: event.target, isAutofilled: true }));\n }\n else if (event.animationName === 'cdk-text-field-autofill-end' &&\n element.classList.contains(cssClass)) {\n element.classList.remove(cssClass);\n this._ngZone.run(() => result.next({ target: event.target, isAutofilled: false }));\n }\n });\n this._ngZone.runOutsideAngular(() => {\n element.addEventListener('animationstart', listener, listenerOptions);\n element.classList.add('cdk-text-field-autofill-monitored');\n });\n this._monitoredElements.set(element, {\n subject: result,\n unlisten: () => {\n element.removeEventListener('animationstart', listener, listenerOptions);\n },\n });\n return result;\n }\n stopMonitoring(elementOrRef) {\n const element = coerceElement(elementOrRef);\n const info = this._monitoredElements.get(element);\n if (info) {\n info.unlisten();\n info.subject.complete();\n element.classList.remove('cdk-text-field-autofill-monitored');\n element.classList.remove('cdk-text-field-autofilled');\n this._monitoredElements.delete(element);\n }\n }\n ngOnDestroy() {\n this._monitoredElements.forEach((_info, element) => this.stopMonitoring(element));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: AutofillMonitor, deps: [{ token: i1.Platform }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: AutofillMonitor, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: AutofillMonitor, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: () => [{ type: i1.Platform }, { type: i0.NgZone }] });\n/** A directive that can be used to monitor the autofill state of an input. */\nclass CdkAutofill {\n constructor(_elementRef, _autofillMonitor) {\n this._elementRef = _elementRef;\n this._autofillMonitor = _autofillMonitor;\n /** Emits when the autofill state of the element changes. */\n this.cdkAutofill = new EventEmitter();\n }\n ngOnInit() {\n this._autofillMonitor\n .monitor(this._elementRef)\n .subscribe(event => this.cdkAutofill.emit(event));\n }\n ngOnDestroy() {\n this._autofillMonitor.stopMonitoring(this._elementRef);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: CdkAutofill, deps: [{ token: i0.ElementRef }, { token: AutofillMonitor }], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"18.2.0-next.2\", type: CdkAutofill, isStandalone: true, selector: \"[cdkAutofill]\", outputs: { cdkAutofill: \"cdkAutofill\" }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: CdkAutofill, decorators: [{\n type: Directive,\n args: [{\n selector: '[cdkAutofill]',\n standalone: true,\n }]\n }], ctorParameters: () => [{ type: i0.ElementRef }, { type: AutofillMonitor }], propDecorators: { cdkAutofill: [{\n type: Output\n }] } });\n\n/** Directive to automatically resize a textarea to fit its content. */\nclass CdkTextareaAutosize {\n /** Minimum amount of rows in the textarea. */\n get minRows() {\n return this._minRows;\n }\n set minRows(value) {\n this._minRows = coerceNumberProperty(value);\n this._setMinHeight();\n }\n /** Maximum amount of rows in the textarea. */\n get maxRows() {\n return this._maxRows;\n }\n set maxRows(value) {\n this._maxRows = coerceNumberProperty(value);\n this._setMaxHeight();\n }\n /** Whether autosizing is enabled or not */\n get enabled() {\n return this._enabled;\n }\n set enabled(value) {\n // Only act if the actual value changed. This specifically helps to not run\n // resizeToFitContent too early (i.e. before ngAfterViewInit)\n if (this._enabled !== value) {\n (this._enabled = value) ? this.resizeToFitContent(true) : this.reset();\n }\n }\n get placeholder() {\n return this._textareaElement.placeholder;\n }\n set placeholder(value) {\n this._cachedPlaceholderHeight = undefined;\n if (value) {\n this._textareaElement.setAttribute('placeholder', value);\n }\n else {\n this._textareaElement.removeAttribute('placeholder');\n }\n this._cacheTextareaPlaceholderHeight();\n }\n constructor(_elementRef, _platform, _ngZone, \n /** @breaking-change 11.0.0 make document required */\n document) {\n this._elementRef = _elementRef;\n this._platform = _platform;\n this._ngZone = _ngZone;\n this._destroyed = new Subject();\n this._enabled = true;\n /**\n * Value of minRows as of last resize. If the minRows has decreased, the\n * height of the textarea needs to be recomputed to reflect the new minimum. The maxHeight\n * does not have the same problem because it does not affect the textarea's scrollHeight.\n */\n this._previousMinRows = -1;\n this._isViewInited = false;\n /** Handles `focus` and `blur` events. */\n this._handleFocusEvent = (event) => {\n this._hasFocus = event.type === 'focus';\n };\n this._document = document;\n this._textareaElement = this._elementRef.nativeElement;\n }\n /** Sets the minimum height of the textarea as determined by minRows. */\n _setMinHeight() {\n const minHeight = this.minRows && this._cachedLineHeight ? `${this.minRows * this._cachedLineHeight}px` : null;\n if (minHeight) {\n this._textareaElement.style.minHeight = minHeight;\n }\n }\n /** Sets the maximum height of the textarea as determined by maxRows. */\n _setMaxHeight() {\n const maxHeight = this.maxRows && this._cachedLineHeight ? `${this.maxRows * this._cachedLineHeight}px` : null;\n if (maxHeight) {\n this._textareaElement.style.maxHeight = maxHeight;\n }\n }\n ngAfterViewInit() {\n if (this._platform.isBrowser) {\n // Remember the height which we started with in case autosizing is disabled\n this._initialHeight = this._textareaElement.style.height;\n this.resizeToFitContent();\n this._ngZone.runOutsideAngular(() => {\n const window = this._getWindow();\n fromEvent(window, 'resize')\n .pipe(auditTime(16), takeUntil(this._destroyed))\n .subscribe(() => this.resizeToFitContent(true));\n this._textareaElement.addEventListener('focus', this._handleFocusEvent);\n this._textareaElement.addEventListener('blur', this._handleFocusEvent);\n });\n this._isViewInited = true;\n this.resizeToFitContent(true);\n }\n }\n ngOnDestroy() {\n this._textareaElement.removeEventListener('focus', this._handleFocusEvent);\n this._textareaElement.removeEventListener('blur', this._handleFocusEvent);\n this._destroyed.next();\n this._destroyed.complete();\n }\n /**\n * Cache the height of a single-row textarea if it has not already been cached.\n *\n * We need to know how large a single \"row\" of a textarea is in order to apply minRows and\n * maxRows. For the initial version, we will assume that the height of a single line in the\n * textarea does not ever change.\n */\n _cacheTextareaLineHeight() {\n if (this._cachedLineHeight) {\n return;\n }\n // Use a clone element because we have to override some styles.\n let textareaClone = this._textareaElement.cloneNode(false);\n textareaClone.rows = 1;\n // Use `position: absolute` so that this doesn't cause a browser layout and use\n // `visibility: hidden` so that nothing is rendered. Clear any other styles that\n // would affect the height.\n textareaClone.style.position = 'absolute';\n textareaClone.style.visibility = 'hidden';\n textareaClone.style.border = 'none';\n textareaClone.style.padding = '0';\n textareaClone.style.height = '';\n textareaClone.style.minHeight = '';\n textareaClone.style.maxHeight = '';\n // In Firefox it happens that textarea elements are always bigger than the specified amount\n // of rows. This is because Firefox tries to add extra space for the horizontal scrollbar.\n // As a workaround that removes the extra space for the scrollbar, we can just set overflow\n // to hidden. This ensures that there is no invalid calculation of the line height.\n // See Firefox bug report: https://bugzilla.mozilla.org/show_bug.cgi?id=33654\n textareaClone.style.overflow = 'hidden';\n this._textareaElement.parentNode.appendChild(textareaClone);\n this._cachedLineHeight = textareaClone.clientHeight;\n textareaClone.remove();\n // Min and max heights have to be re-calculated if the cached line height changes\n this._setMinHeight();\n this._setMaxHeight();\n }\n _measureScrollHeight() {\n const element = this._textareaElement;\n const previousMargin = element.style.marginBottom || '';\n const isFirefox = this._platform.FIREFOX;\n const needsMarginFiller = isFirefox && this._hasFocus;\n const measuringClass = isFirefox\n ? 'cdk-textarea-autosize-measuring-firefox'\n : 'cdk-textarea-autosize-measuring';\n // In some cases the page might move around while we're measuring the `textarea` on Firefox. We\n // work around it by assigning a temporary margin with the same height as the `textarea` so that\n // it occupies the same amount of space. See #23233.\n if (needsMarginFiller) {\n element.style.marginBottom = `${element.clientHeight}px`;\n }\n // Reset the textarea height to auto in order to shrink back to its default size.\n // Also temporarily force overflow:hidden, so scroll bars do not interfere with calculations.\n element.classList.add(measuringClass);\n // The measuring class includes a 2px padding to workaround an issue with Chrome,\n // so we account for that extra space here by subtracting 4 (2px top + 2px bottom).\n const scrollHeight = element.scrollHeight - 4;\n element.classList.remove(measuringClass);\n if (needsMarginFiller) {\n element.style.marginBottom = previousMargin;\n }\n return scrollHeight;\n }\n _cacheTextareaPlaceholderHeight() {\n if (!this._isViewInited || this._cachedPlaceholderHeight != undefined) {\n return;\n }\n if (!this.placeholder) {\n this._cachedPlaceholderHeight = 0;\n return;\n }\n const value = this._textareaElement.value;\n this._textareaElement.value = this._textareaElement.placeholder;\n this._cachedPlaceholderHeight = this._measureScrollHeight();\n this._textareaElement.value = value;\n }\n ngDoCheck() {\n if (this._platform.isBrowser) {\n this.resizeToFitContent();\n }\n }\n /**\n * Resize the textarea to fit its content.\n * @param force Whether to force a height recalculation. By default the height will be\n * recalculated only if the value changed since the last call.\n */\n resizeToFitContent(force = false) {\n // If autosizing is disabled, just skip everything else\n if (!this._enabled) {\n return;\n }\n this._cacheTextareaLineHeight();\n this._cacheTextareaPlaceholderHeight();\n // If we haven't determined the line-height yet, we know we're still hidden and there's no point\n // in checking the height of the textarea.\n if (!this._cachedLineHeight) {\n return;\n }\n const textarea = this._elementRef.nativeElement;\n const value = textarea.value;\n // Only resize if the value or minRows have changed since these calculations can be expensive.\n if (!force && this._minRows === this._previousMinRows && value === this._previousValue) {\n return;\n }\n const scrollHeight = this._measureScrollHeight();\n const height = Math.max(scrollHeight, this._cachedPlaceholderHeight || 0);\n // Use the scrollHeight to know how large the textarea *would* be if fit its entire value.\n textarea.style.height = `${height}px`;\n this._ngZone.runOutsideAngular(() => {\n if (typeof requestAnimationFrame !== 'undefined') {\n requestAnimationFrame(() => this._scrollToCaretPosition(textarea));\n }\n else {\n setTimeout(() => this._scrollToCaretPosition(textarea));\n }\n });\n this._previousValue = value;\n this._previousMinRows = this._minRows;\n }\n /**\n * Resets the textarea to its original size\n */\n reset() {\n // Do not try to change the textarea, if the initialHeight has not been determined yet\n // This might potentially remove styles when reset() is called before ngAfterViewInit\n if (this._initialHeight !== undefined) {\n this._textareaElement.style.height = this._initialHeight;\n }\n }\n _noopInputHandler() {\n // no-op handler that ensures we're running change detection on input events.\n }\n /** Access injected document if available or fallback to global document reference */\n _getDocument() {\n return this._document || document;\n }\n /** Use defaultView of injected document if available or fallback to global window reference */\n _getWindow() {\n const doc = this._getDocument();\n return doc.defaultView || window;\n }\n /**\n * Scrolls a textarea to the caret position. On Firefox resizing the textarea will\n * prevent it from scrolling to the caret position. We need to re-set the selection\n * in order for it to scroll to the proper position.\n */\n _scrollToCaretPosition(textarea) {\n const { selectionStart, selectionEnd } = textarea;\n // IE will throw an \"Unspecified error\" if we try to set the selection range after the\n // element has been removed from the DOM. Assert that the directive hasn't been destroyed\n // between the time we requested the animation frame and when it was executed.\n // Also note that we have to assert that the textarea is focused before we set the\n // selection range. Setting the selection range on a non-focused textarea will cause\n // it to receive focus on IE and Edge.\n if (!this._destroyed.isStopped && this._hasFocus) {\n textarea.setSelectionRange(selectionStart, selectionEnd);\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: CdkTextareaAutosize, deps: [{ token: i0.ElementRef }, { token: i1.Platform }, { token: i0.NgZone }, { token: DOCUMENT, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"16.1.0\", version: \"18.2.0-next.2\", type: CdkTextareaAutosize, isStandalone: true, selector: \"textarea[cdkTextareaAutosize]\", inputs: { minRows: [\"cdkAutosizeMinRows\", \"minRows\"], maxRows: [\"cdkAutosizeMaxRows\", \"maxRows\"], enabled: [\"cdkTextareaAutosize\", \"enabled\", booleanAttribute], placeholder: \"placeholder\" }, host: { attributes: { \"rows\": \"1\" }, listeners: { \"input\": \"_noopInputHandler()\" }, classAttribute: \"cdk-textarea-autosize\" }, exportAs: [\"cdkTextareaAutosize\"], ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: CdkTextareaAutosize, decorators: [{\n type: Directive,\n args: [{\n selector: 'textarea[cdkTextareaAutosize]',\n exportAs: 'cdkTextareaAutosize',\n host: {\n 'class': 'cdk-textarea-autosize',\n // Textarea elements that have the directive applied should have a single row by default.\n // Browsers normally show two rows by default and therefore this limits the minRows binding.\n 'rows': '1',\n '(input)': '_noopInputHandler()',\n },\n standalone: true,\n }]\n }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.Platform }, { type: i0.NgZone }, { type: undefined, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [DOCUMENT]\n }] }], propDecorators: { minRows: [{\n type: Input,\n args: ['cdkAutosizeMinRows']\n }], maxRows: [{\n type: Input,\n args: ['cdkAutosizeMaxRows']\n }], enabled: [{\n type: Input,\n args: [{ alias: 'cdkTextareaAutosize', transform: booleanAttribute }]\n }], placeholder: [{\n type: Input\n }] } });\n\nclass TextFieldModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: TextFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: TextFieldModule, imports: [CdkAutofill, CdkTextareaAutosize], exports: [CdkAutofill, CdkTextareaAutosize] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: TextFieldModule }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: TextFieldModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CdkAutofill, CdkTextareaAutosize],\n exports: [CdkAutofill, CdkTextareaAutosize],\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { AutofillMonitor, CdkAutofill, CdkTextareaAutosize, TextFieldModule };\n","import * as i0 from '@angular/core';\nimport { Directive, InjectionToken, Attribute, Input, inject, NgZone, Component, ChangeDetectionStrategy, ViewEncapsulation, ViewChild, contentChild, Injector, computed, afterRender, ANIMATION_MODULE_TYPE, Optional, Inject, ContentChild, ContentChildren, NgModule } from '@angular/core';\nimport * as i1 from '@angular/cdk/bidi';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport * as i2 from '@angular/cdk/platform';\nimport { DOCUMENT, NgTemplateOutlet, CommonModule } from '@angular/common';\nimport { Subscription, Subject, merge } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { SharedResizeObserver } from '@angular/cdk/observers/private';\nimport { trigger, state, style, transition, animate } from '@angular/animations';\nimport { ObserversModule } from '@angular/cdk/observers';\nimport { MatCommonModule } from '@angular/material/core';\n\n/** The floating label for a `mat-form-field`. */\nclass MatLabel {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatLabel, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"18.2.0-next.2\", type: MatLabel, isStandalone: true, selector: \"mat-label\", ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatLabel, decorators: [{\n type: Directive,\n args: [{\n selector: 'mat-label',\n standalone: true,\n }]\n }] });\n\nlet nextUniqueId$2 = 0;\n/**\n * Injection token that can be used to reference instances of `MatError`. It serves as\n * alternative token to the actual `MatError` class which could cause unnecessary\n * retention of the class and its directive metadata.\n */\nconst MAT_ERROR = new InjectionToken('MatError');\n/** Single error message to be shown underneath the form-field. */\nclass MatError {\n constructor(ariaLive, elementRef) {\n this.id = `mat-mdc-error-${nextUniqueId$2++}`;\n // If no aria-live value is set add 'polite' as a default. This is preferred over setting\n // role='alert' so that screen readers do not interrupt the current task to read this aloud.\n if (!ariaLive) {\n elementRef.nativeElement.setAttribute('aria-live', 'polite');\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatError, deps: [{ token: 'aria-live', attribute: true }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"18.2.0-next.2\", type: MatError, isStandalone: true, selector: \"mat-error, [matError]\", inputs: { id: \"id\" }, host: { attributes: { \"aria-atomic\": \"true\" }, properties: { \"id\": \"id\" }, classAttribute: \"mat-mdc-form-field-error mat-mdc-form-field-bottom-align\" }, providers: [{ provide: MAT_ERROR, useExisting: MatError }], ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatError, decorators: [{\n type: Directive,\n args: [{\n selector: 'mat-error, [matError]',\n host: {\n 'class': 'mat-mdc-form-field-error mat-mdc-form-field-bottom-align',\n 'aria-atomic': 'true',\n '[id]': 'id',\n },\n providers: [{ provide: MAT_ERROR, useExisting: MatError }],\n standalone: true,\n }]\n }], ctorParameters: () => [{ type: undefined, decorators: [{\n type: Attribute,\n args: ['aria-live']\n }] }, { type: i0.ElementRef }], propDecorators: { id: [{\n type: Input\n }] } });\n\nlet nextUniqueId$1 = 0;\n/** Hint text to be shown underneath the form field control. */\nclass MatHint {\n constructor() {\n /** Whether to align the hint label at the start or end of the line. */\n this.align = 'start';\n /** Unique ID for the hint. Used for the aria-describedby on the form field control. */\n this.id = `mat-mdc-hint-${nextUniqueId$1++}`;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatHint, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"18.2.0-next.2\", type: MatHint, isStandalone: true, selector: \"mat-hint\", inputs: { align: \"align\", id: \"id\" }, host: { properties: { \"class.mat-mdc-form-field-hint-end\": \"align === \\\"end\\\"\", \"id\": \"id\", \"attr.align\": \"null\" }, classAttribute: \"mat-mdc-form-field-hint mat-mdc-form-field-bottom-align\" }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatHint, decorators: [{\n type: Directive,\n args: [{\n selector: 'mat-hint',\n host: {\n 'class': 'mat-mdc-form-field-hint mat-mdc-form-field-bottom-align',\n '[class.mat-mdc-form-field-hint-end]': 'align === \"end\"',\n '[id]': 'id',\n // Remove align attribute to prevent it from interfering with layout.\n '[attr.align]': 'null',\n },\n standalone: true,\n }]\n }], propDecorators: { align: [{\n type: Input\n }], id: [{\n type: Input\n }] } });\n\n/**\n * Injection token that can be used to reference instances of `MatPrefix`. It serves as\n * alternative token to the actual `MatPrefix` class which could cause unnecessary\n * retention of the class and its directive metadata.\n */\nconst MAT_PREFIX = new InjectionToken('MatPrefix');\n/** Prefix to be placed in front of the form field. */\nclass MatPrefix {\n constructor() {\n this._isText = false;\n }\n set _isTextSelector(value) {\n this._isText = true;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatPrefix, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"18.2.0-next.2\", type: MatPrefix, isStandalone: true, selector: \"[matPrefix], [matIconPrefix], [matTextPrefix]\", inputs: { _isTextSelector: [\"matTextPrefix\", \"_isTextSelector\"] }, providers: [{ provide: MAT_PREFIX, useExisting: MatPrefix }], ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatPrefix, decorators: [{\n type: Directive,\n args: [{\n selector: '[matPrefix], [matIconPrefix], [matTextPrefix]',\n providers: [{ provide: MAT_PREFIX, useExisting: MatPrefix }],\n standalone: true,\n }]\n }], propDecorators: { _isTextSelector: [{\n type: Input,\n args: ['matTextPrefix']\n }] } });\n\n/**\n * Injection token that can be used to reference instances of `MatSuffix`. It serves as\n * alternative token to the actual `MatSuffix` class which could cause unnecessary\n * retention of the class and its directive metadata.\n */\nconst MAT_SUFFIX = new InjectionToken('MatSuffix');\n/** Suffix to be placed at the end of the form field. */\nclass MatSuffix {\n constructor() {\n this._isText = false;\n }\n set _isTextSelector(value) {\n this._isText = true;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatSuffix, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"18.2.0-next.2\", type: MatSuffix, isStandalone: true, selector: \"[matSuffix], [matIconSuffix], [matTextSuffix]\", inputs: { _isTextSelector: [\"matTextSuffix\", \"_isTextSelector\"] }, providers: [{ provide: MAT_SUFFIX, useExisting: MatSuffix }], ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatSuffix, decorators: [{\n type: Directive,\n args: [{\n selector: '[matSuffix], [matIconSuffix], [matTextSuffix]',\n providers: [{ provide: MAT_SUFFIX, useExisting: MatSuffix }],\n standalone: true,\n }]\n }], propDecorators: { _isTextSelector: [{\n type: Input,\n args: ['matTextSuffix']\n }] } });\n\n/** An injion token for the parent form-field. */\nconst FLOATING_LABEL_PARENT = new InjectionToken('FloatingLabelParent');\n/**\n * Internal directive that maintains a MDC floating label. This directive does not\n * use the `MDCFloatingLabelFoundation` class, as it is not worth the size cost of\n * including it just to measure the label width and toggle some classes.\n *\n * The use of a directive allows us to conditionally render a floating label in the\n * template without having to manually manage instantiation and destruction of the\n * floating label component based on.\n *\n * The component is responsible for setting up the floating label styles, measuring label\n * width for the outline notch, and providing inputs that can be used to toggle the\n * label's floating or required state.\n */\nclass MatFormFieldFloatingLabel {\n /** Whether the label is floating. */\n get floating() {\n return this._floating;\n }\n set floating(value) {\n this._floating = value;\n if (this.monitorResize) {\n this._handleResize();\n }\n }\n /** Whether to monitor for resize events on the floating label. */\n get monitorResize() {\n return this._monitorResize;\n }\n set monitorResize(value) {\n this._monitorResize = value;\n if (this._monitorResize) {\n this._subscribeToResize();\n }\n else {\n this._resizeSubscription.unsubscribe();\n }\n }\n constructor(_elementRef) {\n this._elementRef = _elementRef;\n this._floating = false;\n this._monitorResize = false;\n /** The shared ResizeObserver. */\n this._resizeObserver = inject(SharedResizeObserver);\n /** The Angular zone. */\n this._ngZone = inject(NgZone);\n /** The parent form-field. */\n this._parent = inject(FLOATING_LABEL_PARENT);\n /** The current resize event subscription. */\n this._resizeSubscription = new Subscription();\n }\n ngOnDestroy() {\n this._resizeSubscription.unsubscribe();\n }\n /** Gets the width of the label. Used for the outline notch. */\n getWidth() {\n return estimateScrollWidth(this._elementRef.nativeElement);\n }\n /** Gets the HTML element for the floating label. */\n get element() {\n return this._elementRef.nativeElement;\n }\n /** Handles resize events from the ResizeObserver. */\n _handleResize() {\n // In the case where the label grows in size, the following sequence of events occurs:\n // 1. The label grows by 1px triggering the ResizeObserver\n // 2. The notch is expanded to accommodate the entire label\n // 3. The label expands to its full width, triggering the ResizeObserver again\n //\n // This is expected, but If we allow this to all happen within the same macro task it causes an\n // error: `ResizeObserver loop limit exceeded`. Therefore we push the notch resize out until\n // the next macro task.\n setTimeout(() => this._parent._handleLabelResized());\n }\n /** Subscribes to resize events. */\n _subscribeToResize() {\n this._resizeSubscription.unsubscribe();\n this._ngZone.runOutsideAngular(() => {\n this._resizeSubscription = this._resizeObserver\n .observe(this._elementRef.nativeElement, { box: 'border-box' })\n .subscribe(() => this._handleResize());\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatFormFieldFloatingLabel, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"18.2.0-next.2\", type: MatFormFieldFloatingLabel, isStandalone: true, selector: \"label[matFormFieldFloatingLabel]\", inputs: { floating: \"floating\", monitorResize: \"monitorResize\" }, host: { properties: { \"class.mdc-floating-label--float-above\": \"floating\" }, classAttribute: \"mdc-floating-label mat-mdc-floating-label\" }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatFormFieldFloatingLabel, decorators: [{\n type: Directive,\n args: [{\n selector: 'label[matFormFieldFloatingLabel]',\n host: {\n 'class': 'mdc-floating-label mat-mdc-floating-label',\n '[class.mdc-floating-label--float-above]': 'floating',\n },\n standalone: true,\n }]\n }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { floating: [{\n type: Input\n }], monitorResize: [{\n type: Input\n }] } });\n/**\n * Estimates the scroll width of an element.\n * via https://github.com/material-components/material-components-web/blob/c0a11ef0d000a098fd0c372be8f12d6a99302855/packages/mdc-dom/ponyfill.ts\n */\nfunction estimateScrollWidth(element) {\n // Check the offsetParent. If the element inherits display: none from any\n // parent, the offsetParent property will be null (see\n // https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/offsetParent).\n // This check ensures we only clone the node when necessary.\n const htmlEl = element;\n if (htmlEl.offsetParent !== null) {\n return htmlEl.scrollWidth;\n }\n const clone = htmlEl.cloneNode(true);\n clone.style.setProperty('position', 'absolute');\n clone.style.setProperty('transform', 'translate(-9999px, -9999px)');\n document.documentElement.appendChild(clone);\n const scrollWidth = clone.scrollWidth;\n clone.remove();\n return scrollWidth;\n}\n\n/** Class added when the line ripple is active. */\nconst ACTIVATE_CLASS = 'mdc-line-ripple--active';\n/** Class added when the line ripple is being deactivated. */\nconst DEACTIVATING_CLASS = 'mdc-line-ripple--deactivating';\n/**\n * Internal directive that creates an instance of the MDC line-ripple component. Using a\n * directive allows us to conditionally render a line-ripple in the template without having\n * to manually create and destroy the `MDCLineRipple` component whenever the condition changes.\n *\n * The directive sets up the styles for the line-ripple and provides an API for activating\n * and deactivating the line-ripple.\n */\nclass MatFormFieldLineRipple {\n constructor(_elementRef, ngZone) {\n this._elementRef = _elementRef;\n this._handleTransitionEnd = (event) => {\n const classList = this._elementRef.nativeElement.classList;\n const isDeactivating = classList.contains(DEACTIVATING_CLASS);\n if (event.propertyName === 'opacity' && isDeactivating) {\n classList.remove(ACTIVATE_CLASS, DEACTIVATING_CLASS);\n }\n };\n ngZone.runOutsideAngular(() => {\n _elementRef.nativeElement.addEventListener('transitionend', this._handleTransitionEnd);\n });\n }\n activate() {\n const classList = this._elementRef.nativeElement.classList;\n classList.remove(DEACTIVATING_CLASS);\n classList.add(ACTIVATE_CLASS);\n }\n deactivate() {\n this._elementRef.nativeElement.classList.add(DEACTIVATING_CLASS);\n }\n ngOnDestroy() {\n this._elementRef.nativeElement.removeEventListener('transitionend', this._handleTransitionEnd);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatFormFieldLineRipple, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"18.2.0-next.2\", type: MatFormFieldLineRipple, isStandalone: true, selector: \"div[matFormFieldLineRipple]\", host: { classAttribute: \"mdc-line-ripple\" }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatFormFieldLineRipple, decorators: [{\n type: Directive,\n args: [{\n selector: 'div[matFormFieldLineRipple]',\n host: {\n 'class': 'mdc-line-ripple',\n },\n standalone: true,\n }]\n }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.NgZone }] });\n\n/**\n * Internal component that creates an instance of the MDC notched-outline component.\n *\n * The component sets up the HTML structure and styles for the notched-outline. It provides\n * inputs to toggle the notch state and width.\n */\nclass MatFormFieldNotchedOutline {\n constructor(_elementRef, _ngZone) {\n this._elementRef = _elementRef;\n this._ngZone = _ngZone;\n /** Whether the notch should be opened. */\n this.open = false;\n }\n ngAfterViewInit() {\n const label = this._elementRef.nativeElement.querySelector('.mdc-floating-label');\n if (label) {\n this._elementRef.nativeElement.classList.add('mdc-notched-outline--upgraded');\n if (typeof requestAnimationFrame === 'function') {\n label.style.transitionDuration = '0s';\n this._ngZone.runOutsideAngular(() => {\n requestAnimationFrame(() => (label.style.transitionDuration = ''));\n });\n }\n }\n else {\n this._elementRef.nativeElement.classList.add('mdc-notched-outline--no-label');\n }\n }\n _setNotchWidth(labelWidth) {\n if (!this.open || !labelWidth) {\n this._notch.nativeElement.style.width = '';\n }\n else {\n const NOTCH_ELEMENT_PADDING = 8;\n const NOTCH_ELEMENT_BORDER = 1;\n this._notch.nativeElement.style.width = `calc(${labelWidth}px * var(--mat-mdc-form-field-floating-label-scale, 0.75) + ${NOTCH_ELEMENT_PADDING + NOTCH_ELEMENT_BORDER}px)`;\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatFormFieldNotchedOutline, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"18.2.0-next.2\", type: MatFormFieldNotchedOutline, isStandalone: true, selector: \"div[matFormFieldNotchedOutline]\", inputs: { open: [\"matFormFieldNotchedOutlineOpen\", \"open\"] }, host: { properties: { \"class.mdc-notched-outline--notched\": \"open\" }, classAttribute: \"mdc-notched-outline\" }, viewQueries: [{ propertyName: \"_notch\", first: true, predicate: [\"notch\"], descendants: true }], ngImport: i0, template: \"
\\n
\\n \\n
\\n
\\n\", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatFormFieldNotchedOutline, decorators: [{\n type: Component,\n args: [{ selector: 'div[matFormFieldNotchedOutline]', host: {\n 'class': 'mdc-notched-outline',\n // Besides updating the notch state through the MDC component, we toggle this class through\n // a host binding in order to ensure that the notched-outline renders correctly on the server.\n '[class.mdc-notched-outline--notched]': 'open',\n }, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: true, template: \"
\\n
\\n \\n
\\n
\\n\" }]\n }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { open: [{\n type: Input,\n args: ['matFormFieldNotchedOutlineOpen']\n }], _notch: [{\n type: ViewChild,\n args: ['notch']\n }] } });\n\n/**\n * Animations used by the MatFormField.\n * @docs-private\n */\nconst matFormFieldAnimations = {\n /** Animation that transitions the form field's error and hint messages. */\n transitionMessages: trigger('transitionMessages', [\n // TODO(mmalerba): Use angular animations for label animation as well.\n state('enter', style({ opacity: 1, transform: 'translateY(0%)' })),\n transition('void => enter', [\n style({ opacity: 0, transform: 'translateY(-5px)' }),\n animate('300ms cubic-bezier(0.55, 0, 0.55, 0.2)'),\n ]),\n ]),\n};\n\n/** An interface which allows a control to work inside of a `MatFormField`. */\nclass MatFormFieldControl {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatFormFieldControl, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"18.2.0-next.2\", type: MatFormFieldControl, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatFormFieldControl, decorators: [{\n type: Directive\n }] });\n\n/** @docs-private */\nfunction getMatFormFieldPlaceholderConflictError() {\n return Error('Placeholder attribute and child element were both specified.');\n}\n/** @docs-private */\nfunction getMatFormFieldDuplicatedHintError(align) {\n return Error(`A hint was already declared for 'align=\"${align}\"'.`);\n}\n/** @docs-private */\nfunction getMatFormFieldMissingControlError() {\n return Error('mat-form-field must contain a MatFormFieldControl.');\n}\n\n/**\n * Injection token that can be used to inject an instances of `MatFormField`. It serves\n * as alternative token to the actual `MatFormField` class which would cause unnecessary\n * retention of the `MatFormField` class and its component metadata.\n */\nconst MAT_FORM_FIELD = new InjectionToken('MatFormField');\n/**\n * Injection token that can be used to configure the\n * default options for all form field within an app.\n */\nconst MAT_FORM_FIELD_DEFAULT_OPTIONS = new InjectionToken('MAT_FORM_FIELD_DEFAULT_OPTIONS');\nlet nextUniqueId = 0;\n/** Default appearance used by the form field. */\nconst DEFAULT_APPEARANCE = 'fill';\n/**\n * Whether the label for form fields should by default float `always`,\n * `never`, or `auto`.\n */\nconst DEFAULT_FLOAT_LABEL = 'auto';\n/** Default way that the subscript element height is set. */\nconst DEFAULT_SUBSCRIPT_SIZING = 'fixed';\n/**\n * Default transform for docked floating labels in a MDC text-field. This value has been\n * extracted from the MDC text-field styles because we programmatically modify the docked\n * label transform, but do not want to accidentally discard the default label transform.\n */\nconst FLOATING_LABEL_DEFAULT_DOCKED_TRANSFORM = `translateY(-50%)`;\n/** Container for form controls that applies Material Design styling and behavior. */\nclass MatFormField {\n /** Whether the required marker should be hidden. */\n get hideRequiredMarker() {\n return this._hideRequiredMarker;\n }\n set hideRequiredMarker(value) {\n this._hideRequiredMarker = coerceBooleanProperty(value);\n }\n /** Whether the label should always float or float as the user types. */\n get floatLabel() {\n return this._floatLabel || this._defaults?.floatLabel || DEFAULT_FLOAT_LABEL;\n }\n set floatLabel(value) {\n if (value !== this._floatLabel) {\n this._floatLabel = value;\n // For backwards compatibility. Custom form field controls or directives might set\n // the \"floatLabel\" input and expect the form field view to be updated automatically.\n // e.g. autocomplete trigger. Ideally we'd get rid of this and the consumers would just\n // emit the \"stateChanges\" observable. TODO(devversion): consider removing.\n this._changeDetectorRef.markForCheck();\n }\n }\n /** The form field appearance style. */\n get appearance() {\n return this._appearance;\n }\n set appearance(value) {\n const oldValue = this._appearance;\n const newAppearance = value || this._defaults?.appearance || DEFAULT_APPEARANCE;\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n if (newAppearance !== 'fill' && newAppearance !== 'outline') {\n throw new Error(`MatFormField: Invalid appearance \"${newAppearance}\", valid values are \"fill\" or \"outline\".`);\n }\n }\n this._appearance = newAppearance;\n if (this._appearance === 'outline' && this._appearance !== oldValue) {\n // If the appearance has been switched to `outline`, the label offset needs to be updated.\n // The update can happen once the view has been re-checked, but not immediately because\n // the view has not been updated and the notched-outline floating label is not present.\n this._needsOutlineLabelOffsetUpdate = true;\n }\n }\n /**\n * Whether the form field should reserve space for one line of hint/error text (default)\n * or to have the spacing grow from 0px as needed based on the size of the hint/error content.\n * Note that when using dynamic sizing, layout shifts will occur when hint/error text changes.\n */\n get subscriptSizing() {\n return this._subscriptSizing || this._defaults?.subscriptSizing || DEFAULT_SUBSCRIPT_SIZING;\n }\n set subscriptSizing(value) {\n this._subscriptSizing = value || this._defaults?.subscriptSizing || DEFAULT_SUBSCRIPT_SIZING;\n }\n /** Text for the form field hint. */\n get hintLabel() {\n return this._hintLabel;\n }\n set hintLabel(value) {\n this._hintLabel = value;\n this._processHints();\n }\n /** Gets the current form field control */\n get _control() {\n return this._explicitFormFieldControl || this._formFieldControl;\n }\n set _control(value) {\n this._explicitFormFieldControl = value;\n }\n constructor(_elementRef, _changeDetectorRef, \n /**\n * @deprecated not needed, to be removed.\n * @breaking-change 19.0.0 remove this param\n */\n _unusedNgZone, _dir, _platform, _defaults, _animationMode, \n /**\n * @deprecated not needed, to be removed.\n * @breaking-change 17.0.0 remove this param\n */\n _unusedDocument) {\n this._elementRef = _elementRef;\n this._changeDetectorRef = _changeDetectorRef;\n this._dir = _dir;\n this._platform = _platform;\n this._defaults = _defaults;\n this._animationMode = _animationMode;\n this._labelChild = contentChild(MatLabel);\n this._hideRequiredMarker = false;\n /**\n * Theme color of the form field. This API is supported in M2 themes only, it\n * has no effect in M3 themes.\n *\n * For information on applying color variants in M3, see\n * https://material.angular.io/guide/theming#using-component-color-variants.\n */\n this.color = 'primary';\n this._appearance = DEFAULT_APPEARANCE;\n this._subscriptSizing = null;\n this._hintLabel = '';\n this._hasIconPrefix = false;\n this._hasTextPrefix = false;\n this._hasIconSuffix = false;\n this._hasTextSuffix = false;\n // Unique id for the internal form field label.\n this._labelId = `mat-mdc-form-field-label-${nextUniqueId++}`;\n // Unique id for the hint label.\n this._hintLabelId = `mat-mdc-hint-${nextUniqueId++}`;\n /** State of the mat-hint and mat-error animations. */\n this._subscriptAnimationState = '';\n this._destroyed = new Subject();\n this._isFocused = null;\n this._needsOutlineLabelOffsetUpdate = false;\n this._previousControl = null;\n this._injector = inject(Injector);\n /**\n * Gets the id of the label element. If no label is present, returns `null`.\n */\n this.getLabelId = computed(() => (this._hasFloatingLabel() ? this._labelId : null));\n this._hasFloatingLabel = computed(() => !!this._labelChild());\n if (_defaults) {\n if (_defaults.appearance) {\n this.appearance = _defaults.appearance;\n }\n this._hideRequiredMarker = Boolean(_defaults?.hideRequiredMarker);\n if (_defaults.color) {\n this.color = _defaults.color;\n }\n }\n }\n ngAfterViewInit() {\n // Initial focus state sync. This happens rarely, but we want to account for\n // it in case the form field control has \"focused\" set to true on init.\n this._updateFocusState();\n // Enable animations now. This ensures we don't animate on initial render.\n this._subscriptAnimationState = 'enter';\n // Because the above changes a value used in the template after it was checked, we need\n // to trigger CD or the change might not be reflected if there is no other CD scheduled.\n this._changeDetectorRef.detectChanges();\n }\n ngAfterContentInit() {\n this._assertFormFieldControl();\n this._initializeSubscript();\n this._initializePrefixAndSuffix();\n this._initializeOutlineLabelOffsetSubscriptions();\n }\n ngAfterContentChecked() {\n this._assertFormFieldControl();\n if (this._control !== this._previousControl) {\n this._initializeControl(this._previousControl);\n this._previousControl = this._control;\n }\n }\n ngOnDestroy() {\n this._stateChanges?.unsubscribe();\n this._valueChanges?.unsubscribe();\n this._destroyed.next();\n this._destroyed.complete();\n }\n /**\n * Gets an ElementRef for the element that a overlay attached to the form field\n * should be positioned relative to.\n */\n getConnectedOverlayOrigin() {\n return this._textField || this._elementRef;\n }\n /** Animates the placeholder up and locks it in position. */\n _animateAndLockLabel() {\n // This is for backwards compatibility only. Consumers of the form field might use\n // this method. e.g. the autocomplete trigger. This method has been added to the non-MDC\n // form field because setting \"floatLabel\" to \"always\" caused the label to float without\n // animation. This is different in MDC where the label always animates, so this method\n // is no longer necessary. There doesn't seem any benefit in adding logic to allow changing\n // the floating label state without animations. The non-MDC implementation was inconsistent\n // because it always animates if \"floatLabel\" is set away from \"always\".\n // TODO(devversion): consider removing this method when releasing the MDC form field.\n if (this._hasFloatingLabel()) {\n this.floatLabel = 'always';\n }\n }\n /** Initializes the registered form field control. */\n _initializeControl(previousControl) {\n const control = this._control;\n const classPrefix = 'mat-mdc-form-field-type-';\n if (previousControl) {\n this._elementRef.nativeElement.classList.remove(classPrefix + previousControl.controlType);\n }\n if (control.controlType) {\n this._elementRef.nativeElement.classList.add(classPrefix + control.controlType);\n }\n // Subscribe to changes in the child control state in order to update the form field UI.\n this._stateChanges?.unsubscribe();\n this._stateChanges = control.stateChanges.subscribe(() => {\n this._updateFocusState();\n this._syncDescribedByIds();\n this._changeDetectorRef.markForCheck();\n });\n this._valueChanges?.unsubscribe();\n // Run change detection if the value changes.\n if (control.ngControl && control.ngControl.valueChanges) {\n this._valueChanges = control.ngControl.valueChanges\n .pipe(takeUntil(this._destroyed))\n .subscribe(() => this._changeDetectorRef.markForCheck());\n }\n }\n _checkPrefixAndSuffixTypes() {\n this._hasIconPrefix = !!this._prefixChildren.find(p => !p._isText);\n this._hasTextPrefix = !!this._prefixChildren.find(p => p._isText);\n this._hasIconSuffix = !!this._suffixChildren.find(s => !s._isText);\n this._hasTextSuffix = !!this._suffixChildren.find(s => s._isText);\n }\n /** Initializes the prefix and suffix containers. */\n _initializePrefixAndSuffix() {\n this._checkPrefixAndSuffixTypes();\n // Mark the form field as dirty whenever the prefix or suffix children change. This\n // is necessary because we conditionally display the prefix/suffix containers based\n // on whether there is projected content.\n merge(this._prefixChildren.changes, this._suffixChildren.changes).subscribe(() => {\n this._checkPrefixAndSuffixTypes();\n this._changeDetectorRef.markForCheck();\n });\n }\n /**\n * Initializes the subscript by validating hints and synchronizing \"aria-describedby\" ids\n * with the custom form field control. Also subscribes to hint and error changes in order\n * to be able to validate and synchronize ids on change.\n */\n _initializeSubscript() {\n // Re-validate when the number of hints changes.\n this._hintChildren.changes.subscribe(() => {\n this._processHints();\n this._changeDetectorRef.markForCheck();\n });\n // Update the aria-described by when the number of errors changes.\n this._errorChildren.changes.subscribe(() => {\n this._syncDescribedByIds();\n this._changeDetectorRef.markForCheck();\n });\n // Initial mat-hint validation and subscript describedByIds sync.\n this._validateHints();\n this._syncDescribedByIds();\n }\n /** Throws an error if the form field's control is missing. */\n _assertFormFieldControl() {\n if (!this._control && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw getMatFormFieldMissingControlError();\n }\n }\n _updateFocusState() {\n // Usually the MDC foundation would call \"activateFocus\" and \"deactivateFocus\" whenever\n // certain DOM events are emitted. This is not possible in our implementation of the\n // form field because we support abstract form field controls which are not necessarily\n // of type input, nor do we have a reference to a native form field control element. Instead\n // we handle the focus by checking if the abstract form field control focused state changes.\n if (this._control.focused && !this._isFocused) {\n this._isFocused = true;\n this._lineRipple?.activate();\n }\n else if (!this._control.focused && (this._isFocused || this._isFocused === null)) {\n this._isFocused = false;\n this._lineRipple?.deactivate();\n }\n this._textField?.nativeElement.classList.toggle('mdc-text-field--focused', this._control.focused);\n }\n /**\n * The floating label in the docked state needs to account for prefixes. The horizontal offset\n * is calculated whenever the appearance changes to `outline`, the prefixes change, or when the\n * form field is added to the DOM. This method sets up all subscriptions which are needed to\n * trigger the label offset update.\n */\n _initializeOutlineLabelOffsetSubscriptions() {\n // Whenever the prefix changes, schedule an update of the label offset.\n // TODO(mmalerba): Use ResizeObserver to better support dynamically changing prefix content.\n this._prefixChildren.changes.subscribe(() => (this._needsOutlineLabelOffsetUpdate = true));\n // TODO(mmalerba): Split this into separate `afterRender` calls using the `EarlyRead` and\n // `Write` phases.\n afterRender(() => {\n if (this._needsOutlineLabelOffsetUpdate) {\n this._needsOutlineLabelOffsetUpdate = false;\n this._updateOutlineLabelOffset();\n }\n }, {\n injector: this._injector,\n });\n this._dir.change\n .pipe(takeUntil(this._destroyed))\n .subscribe(() => (this._needsOutlineLabelOffsetUpdate = true));\n }\n /** Whether the floating label should always float or not. */\n _shouldAlwaysFloat() {\n return this.floatLabel === 'always';\n }\n _hasOutline() {\n return this.appearance === 'outline';\n }\n /**\n * Whether the label should display in the infix. Labels in the outline appearance are\n * displayed as part of the notched-outline and are horizontally offset to account for\n * form field prefix content. This won't work in server side rendering since we cannot\n * measure the width of the prefix container. To make the docked label appear as if the\n * right offset has been calculated, we forcibly render the label inside the infix. Since\n * the label is part of the infix, the label cannot overflow the prefix content.\n */\n _forceDisplayInfixLabel() {\n return !this._platform.isBrowser && this._prefixChildren.length && !this._shouldLabelFloat();\n }\n _shouldLabelFloat() {\n if (!this._hasFloatingLabel()) {\n return false;\n }\n return this._control.shouldLabelFloat || this._shouldAlwaysFloat();\n }\n /**\n * Determines whether a class from the AbstractControlDirective\n * should be forwarded to the host element.\n */\n _shouldForward(prop) {\n const control = this._control ? this._control.ngControl : null;\n return control && control[prop];\n }\n /** Determines whether to display hints or errors. */\n _getDisplayedMessages() {\n return this._errorChildren && this._errorChildren.length > 0 && this._control.errorState\n ? 'error'\n : 'hint';\n }\n /** Handle label resize events. */\n _handleLabelResized() {\n this._refreshOutlineNotchWidth();\n }\n /** Refreshes the width of the outline-notch, if present. */\n _refreshOutlineNotchWidth() {\n if (!this._hasOutline() || !this._floatingLabel || !this._shouldLabelFloat()) {\n this._notchedOutline?._setNotchWidth(0);\n }\n else {\n this._notchedOutline?._setNotchWidth(this._floatingLabel.getWidth());\n }\n }\n /** Does any extra processing that is required when handling the hints. */\n _processHints() {\n this._validateHints();\n this._syncDescribedByIds();\n }\n /**\n * Ensure that there is a maximum of one of each \"mat-hint\" alignment specified. The hint\n * label specified set through the input is being considered as \"start\" aligned.\n *\n * This method is a noop if Angular runs in production mode.\n */\n _validateHints() {\n if (this._hintChildren && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n let startHint;\n let endHint;\n this._hintChildren.forEach((hint) => {\n if (hint.align === 'start') {\n if (startHint || this.hintLabel) {\n throw getMatFormFieldDuplicatedHintError('start');\n }\n startHint = hint;\n }\n else if (hint.align === 'end') {\n if (endHint) {\n throw getMatFormFieldDuplicatedHintError('end');\n }\n endHint = hint;\n }\n });\n }\n }\n /**\n * Sets the list of element IDs that describe the child control. This allows the control to update\n * its `aria-describedby` attribute accordingly.\n */\n _syncDescribedByIds() {\n if (this._control) {\n let ids = [];\n // TODO(wagnermaciel): Remove the type check when we find the root cause of this bug.\n if (this._control.userAriaDescribedBy &&\n typeof this._control.userAriaDescribedBy === 'string') {\n ids.push(...this._control.userAriaDescribedBy.split(' '));\n }\n if (this._getDisplayedMessages() === 'hint') {\n const startHint = this._hintChildren\n ? this._hintChildren.find(hint => hint.align === 'start')\n : null;\n const endHint = this._hintChildren\n ? this._hintChildren.find(hint => hint.align === 'end')\n : null;\n if (startHint) {\n ids.push(startHint.id);\n }\n else if (this._hintLabel) {\n ids.push(this._hintLabelId);\n }\n if (endHint) {\n ids.push(endHint.id);\n }\n }\n else if (this._errorChildren) {\n ids.push(...this._errorChildren.map(error => error.id));\n }\n this._control.setDescribedByIds(ids);\n }\n }\n /**\n * Updates the horizontal offset of the label in the outline appearance. In the outline\n * appearance, the notched-outline and label are not relative to the infix container because\n * the outline intends to surround prefixes, suffixes and the infix. This means that the\n * floating label by default overlaps prefixes in the docked state. To avoid this, we need to\n * horizontally offset the label by the width of the prefix container. The MDC text-field does\n * not need to do this because they use a fixed width for prefixes. Hence, they can simply\n * incorporate the horizontal offset into their default text-field styles.\n */\n _updateOutlineLabelOffset() {\n if (!this._hasOutline() || !this._floatingLabel) {\n return;\n }\n const floatingLabel = this._floatingLabel.element;\n // If no prefix is displayed, reset the outline label offset from potential\n // previous label offset updates.\n if (!(this._iconPrefixContainer || this._textPrefixContainer)) {\n floatingLabel.style.transform = '';\n return;\n }\n // If the form field is not attached to the DOM yet (e.g. in a tab), we defer\n // the label offset update until the zone stabilizes.\n if (!this._isAttachedToDom()) {\n this._needsOutlineLabelOffsetUpdate = true;\n return;\n }\n const iconPrefixContainer = this._iconPrefixContainer?.nativeElement;\n const textPrefixContainer = this._textPrefixContainer?.nativeElement;\n const iconSuffixContainer = this._iconSuffixContainer?.nativeElement;\n const textSuffixContainer = this._textSuffixContainer?.nativeElement;\n const iconPrefixContainerWidth = iconPrefixContainer?.getBoundingClientRect().width ?? 0;\n const textPrefixContainerWidth = textPrefixContainer?.getBoundingClientRect().width ?? 0;\n const iconSuffixContainerWidth = iconSuffixContainer?.getBoundingClientRect().width ?? 0;\n const textSuffixContainerWidth = textSuffixContainer?.getBoundingClientRect().width ?? 0;\n // If the directionality is RTL, the x-axis transform needs to be inverted. This\n // is because `transformX` does not change based on the page directionality.\n const negate = this._dir.value === 'rtl' ? '-1' : '1';\n const prefixWidth = `${iconPrefixContainerWidth + textPrefixContainerWidth}px`;\n const labelOffset = `var(--mat-mdc-form-field-label-offset-x, 0px)`;\n const labelHorizontalOffset = `calc(${negate} * (${prefixWidth} + ${labelOffset}))`;\n // Update the translateX of the floating label to account for the prefix container,\n // but allow the CSS to override this setting via a CSS variable when the label is\n // floating.\n floatingLabel.style.transform = `var(\n --mat-mdc-form-field-label-transform,\n ${FLOATING_LABEL_DEFAULT_DOCKED_TRANSFORM} translateX(${labelHorizontalOffset})\n )`;\n // Prevent the label from overlapping the suffix when in resting position.\n const prefixAndSuffixWidth = iconPrefixContainerWidth +\n textPrefixContainerWidth +\n iconSuffixContainerWidth +\n textSuffixContainerWidth;\n this._elementRef.nativeElement.style.setProperty('--mat-form-field-notch-max-width', `calc(100% - ${prefixAndSuffixWidth}px)`);\n }\n /** Checks whether the form field is attached to the DOM. */\n _isAttachedToDom() {\n const element = this._elementRef.nativeElement;\n if (element.getRootNode) {\n const rootNode = element.getRootNode();\n // If the element is inside the DOM the root node will be either the document\n // or the closest shadow root, otherwise it'll be the element itself.\n return rootNode && rootNode !== element;\n }\n // Otherwise fall back to checking if it's in the document. This doesn't account for\n // shadow DOM, however browser that support shadow DOM should support `getRootNode` as well.\n return document.documentElement.contains(element);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatFormField, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i1.Directionality }, { token: i2.Platform }, { token: MAT_FORM_FIELD_DEFAULT_OPTIONS, optional: true }, { token: ANIMATION_MODULE_TYPE, optional: true }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"18.2.0-next.2\", type: MatFormField, isStandalone: true, selector: \"mat-form-field\", inputs: { hideRequiredMarker: \"hideRequiredMarker\", color: \"color\", floatLabel: \"floatLabel\", appearance: \"appearance\", subscriptSizing: \"subscriptSizing\", hintLabel: \"hintLabel\" }, host: { properties: { \"class.mat-mdc-form-field-label-always-float\": \"_shouldAlwaysFloat()\", \"class.mat-mdc-form-field-has-icon-prefix\": \"_hasIconPrefix\", \"class.mat-mdc-form-field-has-icon-suffix\": \"_hasIconSuffix\", \"class.mat-form-field-invalid\": \"_control.errorState\", \"class.mat-form-field-disabled\": \"_control.disabled\", \"class.mat-form-field-autofilled\": \"_control.autofilled\", \"class.mat-form-field-no-animations\": \"_animationMode === \\\"NoopAnimations\\\"\", \"class.mat-form-field-appearance-fill\": \"appearance == \\\"fill\\\"\", \"class.mat-form-field-appearance-outline\": \"appearance == \\\"outline\\\"\", \"class.mat-form-field-hide-placeholder\": \"_hasFloatingLabel() && !_shouldLabelFloat()\", \"class.mat-focused\": \"_control.focused\", \"class.mat-primary\": \"color !== \\\"accent\\\" && color !== \\\"warn\\\"\", \"class.mat-accent\": \"color === \\\"accent\\\"\", \"class.mat-warn\": \"color === \\\"warn\\\"\", \"class.ng-untouched\": \"_shouldForward(\\\"untouched\\\")\", \"class.ng-touched\": \"_shouldForward(\\\"touched\\\")\", \"class.ng-pristine\": \"_shouldForward(\\\"pristine\\\")\", \"class.ng-dirty\": \"_shouldForward(\\\"dirty\\\")\", \"class.ng-valid\": \"_shouldForward(\\\"valid\\\")\", \"class.ng-invalid\": \"_shouldForward(\\\"invalid\\\")\", \"class.ng-pending\": \"_shouldForward(\\\"pending\\\")\" }, classAttribute: \"mat-mdc-form-field\" }, providers: [\n { provide: MAT_FORM_FIELD, useExisting: MatFormField },\n { provide: FLOATING_LABEL_PARENT, useExisting: MatFormField },\n ], queries: [{ propertyName: \"_labelChild\", first: true, predicate: MatLabel, descendants: true, isSignal: true }, { propertyName: \"_formFieldControl\", first: true, predicate: MatFormFieldControl, descendants: true }, { propertyName: \"_prefixChildren\", predicate: MAT_PREFIX, descendants: true }, { propertyName: \"_suffixChildren\", predicate: MAT_SUFFIX, descendants: true }, { propertyName: \"_errorChildren\", predicate: MAT_ERROR, descendants: true }, { propertyName: \"_hintChildren\", predicate: MatHint, descendants: true }], viewQueries: [{ propertyName: \"_textField\", first: true, predicate: [\"textField\"], descendants: true }, { propertyName: \"_iconPrefixContainer\", first: true, predicate: [\"iconPrefixContainer\"], descendants: true }, { propertyName: \"_textPrefixContainer\", first: true, predicate: [\"textPrefixContainer\"], descendants: true }, { propertyName: \"_iconSuffixContainer\", first: true, predicate: [\"iconSuffixContainer\"], descendants: true }, { propertyName: \"_textSuffixContainer\", first: true, predicate: [\"textSuffixContainer\"], descendants: true }, { propertyName: \"_floatingLabel\", first: true, predicate: MatFormFieldFloatingLabel, descendants: true }, { propertyName: \"_notchedOutline\", first: true, predicate: MatFormFieldNotchedOutline, descendants: true }, { propertyName: \"_lineRipple\", first: true, predicate: MatFormFieldLineRipple, descendants: true }], exportAs: [\"matFormField\"], ngImport: i0, template: \"\\n \\n @if (_hasFloatingLabel()) {\\n \\n \\n \\n @if (!hideRequiredMarker && _control.required) {\\n \\n }\\n \\n }\\n\\n\\n\\n @if (!_hasOutline() && !_control.disabled) {\\n
\\n }\\n
\\n @if (_hasOutline()) {\\n
\\n @if (!_forceDisplayInfixLabel()) {\\n \\n }\\n
\\n }\\n\\n @if (_hasIconPrefix) {\\n
\\n \\n
\\n }\\n\\n @if (_hasTextPrefix) {\\n
\\n \\n
\\n }\\n\\n
\\n @if (!_hasOutline() || _forceDisplayInfixLabel()) {\\n \\n }\\n\\n \\n
\\n\\n @if (_hasTextSuffix) {\\n
\\n \\n
\\n }\\n\\n @if (_hasIconSuffix) {\\n
\\n \\n
\\n }\\n
\\n\\n @if (!_hasOutline()) {\\n
\\n }\\n\\n\\n\\n @switch (_getDisplayedMessages()) {\\n @case ('error') {\\n \\n \\n \\n }\\n\\n @case ('hint') {\\n
\\n @if (hintLabel) {\\n {{hintLabel}}\\n }\\n \\n
\\n \\n
\\n }\\n }\\n\\n\", styles: [\".mdc-text-field{display:inline-flex;align-items:baseline;padding:0 16px;position:relative;box-sizing:border-box;overflow:hidden;will-change:opacity,transform,color;border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.mdc-text-field__input{width:100%;min-width:0;border:none;border-radius:0;background:none;padding:0;-moz-appearance:none;-webkit-appearance:none;height:28px}.mdc-text-field__input::-webkit-calendar-picker-indicator{display:none}.mdc-text-field__input::-ms-clear{display:none}.mdc-text-field__input:focus{outline:none}.mdc-text-field__input:invalid{box-shadow:none}.mdc-text-field__input::placeholder{opacity:0}.mdc-text-field__input::-moz-placeholder{opacity:0}.mdc-text-field__input::-webkit-input-placeholder{opacity:0}.mdc-text-field__input:-ms-input-placeholder{opacity:0}.mdc-text-field--no-label .mdc-text-field__input::placeholder,.mdc-text-field--focused .mdc-text-field__input::placeholder{opacity:1}.mdc-text-field--no-label .mdc-text-field__input::-moz-placeholder,.mdc-text-field--focused .mdc-text-field__input::-moz-placeholder{opacity:1}.mdc-text-field--no-label .mdc-text-field__input::-webkit-input-placeholder,.mdc-text-field--focused .mdc-text-field__input::-webkit-input-placeholder{opacity:1}.mdc-text-field--no-label .mdc-text-field__input:-ms-input-placeholder,.mdc-text-field--focused .mdc-text-field__input:-ms-input-placeholder{opacity:1}.mdc-text-field--outlined .mdc-text-field__input,.mdc-text-field--filled.mdc-text-field--no-label .mdc-text-field__input{height:100%}.mdc-text-field--outlined .mdc-text-field__input{display:flex;border:none !important;background-color:rgba(0,0,0,0)}.mdc-text-field--disabled .mdc-text-field__input{pointer-events:auto}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input{color:var(--mdc-filled-text-field-input-text-color, var(--mat-app-on-surface));caret-color:var(--mdc-filled-text-field-caret-color, var(--mat-app-primary))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder{color:var(--mdc-filled-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder{color:var(--mdc-filled-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder{color:var(--mdc-filled-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder{color:var(--mdc-filled-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input{caret-color:var(--mdc-filled-text-field-error-caret-color)}.mdc-text-field--filled.mdc-text-field--disabled .mdc-text-field__input{color:var(--mdc-filled-text-field-disabled-input-text-color)}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input{color:var(--mdc-outlined-text-field-input-text-color, var(--mat-app-on-surface));caret-color:var(--mdc-outlined-text-field-caret-color, var(--mat-app-primary))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder{color:var(--mdc-outlined-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder{color:var(--mdc-outlined-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder{color:var(--mdc-outlined-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder{color:var(--mdc-outlined-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input{caret-color:var(--mdc-outlined-text-field-error-caret-color)}.mdc-text-field--outlined.mdc-text-field--disabled .mdc-text-field__input{color:var(--mdc-outlined-text-field-disabled-input-text-color)}.mdc-text-field--disabled .cdk-high-contrast-active .mdc-text-field__input{background-color:Window}.mdc-text-field--filled{height:56px;border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-left-radius:var(--mdc-filled-text-field-container-shape, var(--mat-app-corner-extra-small-top));border-top-right-radius:var(--mdc-filled-text-field-container-shape, var(--mat-app-corner-extra-small-top))}.mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:var(--mdc-filled-text-field-container-color, var(--mat-app-surface-variant))}.mdc-text-field--filled.mdc-text-field--disabled{background-color:var(--mdc-filled-text-field-disabled-container-color)}.mdc-text-field--outlined{height:56px;overflow:visible;padding-right:max(16px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)));padding-left:max(16px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)) + 4px)}[dir=rtl] .mdc-text-field--outlined{padding-right:max(16px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)) + 4px);padding-left:max(16px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)))}.mdc-floating-label{position:absolute;left:0;transform-origin:left top;line-height:1.15rem;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:text;overflow:hidden;will-change:transform}[dir=rtl] .mdc-floating-label{right:0;left:auto;transform-origin:right top;text-align:right}.mdc-text-field .mdc-floating-label{top:50%;transform:translateY(-50%);pointer-events:none}.mdc-notched-outline .mdc-floating-label{display:inline-block;position:relative;max-width:100%}.mdc-text-field--outlined .mdc-floating-label{left:4px;right:auto}[dir=rtl] .mdc-text-field--outlined .mdc-floating-label{left:auto;right:4px}.mdc-text-field--filled .mdc-floating-label{left:16px;right:auto}[dir=rtl] .mdc-text-field--filled .mdc-floating-label{left:auto;right:16px}.mdc-text-field--disabled .mdc-floating-label{cursor:default}.cdk-high-contrast-active .mdc-text-field--disabled .mdc-floating-label{z-index:1}.mdc-text-field--filled.mdc-text-field--no-label .mdc-floating-label{display:none}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-floating-label{color:var(--mdc-filled-text-field-label-text-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-floating-label{color:var(--mdc-filled-text-field-focus-label-text-color, var(--mat-app-primary))}.mdc-text-field--filled:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-floating-label{color:var(--mdc-filled-text-field-hover-label-text-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled.mdc-text-field--disabled .mdc-floating-label{color:var(--mdc-filled-text-field-disabled-label-text-color)}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-floating-label{color:var(--mdc-filled-text-field-error-label-text-color, var(--mat-app-error))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid.mdc-text-field--focused .mdc-floating-label{color:var(--mdc-filled-text-field-error-focus-label-text-color, var(--mat-app-error))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--disabled):hover .mdc-floating-label{color:var(--mdc-filled-text-field-error-hover-label-text-color, var(--mat-app-on-error-container))}.mdc-text-field--filled .mdc-floating-label{font-family:var(--mdc-filled-text-field-label-text-font, var(--mat-app-body-large-font));font-size:var(--mdc-filled-text-field-label-text-size, var(--mat-app-body-large-size));font-weight:var(--mdc-filled-text-field-label-text-weight, var(--mat-app-body-large-weight));letter-spacing:var(--mdc-filled-text-field-label-text-tracking, var(--mat-app-body-large-tracking))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-floating-label{color:var(--mdc-outlined-text-field-label-text-color, var(--mat-app-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-floating-label{color:var(--mdc-outlined-text-field-focus-label-text-color, var(--mat-app-primary))}.mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-floating-label{color:var(--mdc-outlined-text-field-hover-label-text-color, var(--mat-app-on-surface))}.mdc-text-field--outlined.mdc-text-field--disabled .mdc-floating-label{color:var(--mdc-outlined-text-field-disabled-label-text-color)}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-floating-label{color:var(--mdc-outlined-text-field-error-label-text-color, var(--mat-app-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid.mdc-text-field--focused .mdc-floating-label{color:var(--mdc-outlined-text-field-error-focus-label-text-color, var(--mat-app-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--disabled):hover .mdc-floating-label{color:var(--mdc-outlined-text-field-error-hover-label-text-color, var(--mat-app-on-error-container))}.mdc-text-field--outlined .mdc-floating-label{font-family:var(--mdc-outlined-text-field-label-text-font, var(--mat-app-body-large-font));font-size:var(--mdc-outlined-text-field-label-text-size, var(--mat-app-body-large-size));font-weight:var(--mdc-outlined-text-field-label-text-weight, var(--mat-app-body-large-weight));letter-spacing:var(--mdc-outlined-text-field-label-text-tracking, var(--mat-app-body-large-tracking))}.mdc-floating-label--float-above{cursor:auto;transform:translateY(-106%) scale(0.75)}.mdc-text-field--filled .mdc-floating-label--float-above{transform:translateY(-106%) scale(0.75)}.mdc-text-field--outlined .mdc-floating-label--float-above{transform:translateY(-37.25px) scale(1);font-size:.75rem}.mdc-notched-outline .mdc-floating-label--float-above{text-overflow:clip}.mdc-notched-outline--upgraded .mdc-floating-label--float-above{max-width:133.3333333333%}.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{transform:translateY(-34.75px) scale(0.75)}.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{font-size:1rem}.mdc-floating-label--required:not(.mdc-floating-label--hide-required-marker)::after{margin-left:1px;margin-right:0;content:\\\"*\\\"}[dir=rtl] .mdc-floating-label--required:not(.mdc-floating-label--hide-required-marker)::after{margin-left:0;margin-right:1px}.mdc-notched-outline{display:flex;position:absolute;top:0;right:0;left:0;box-sizing:border-box;width:100%;max-width:100%;height:100%;text-align:left;pointer-events:none}[dir=rtl] .mdc-notched-outline{text-align:right}.mdc-text-field--outlined .mdc-notched-outline{z-index:1}.mat-mdc-notch-piece{box-sizing:border-box;height:100%;pointer-events:none;border-top:1px solid;border-bottom:1px solid}.mdc-text-field--focused .mat-mdc-notch-piece{border-width:2px}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-outline-color, var(--mat-app-outline));border-width:var(--mdc-outlined-text-field-outline-width)}.mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-hover-outline-color, var(--mat-app-on-surface))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-focus-outline-color, var(--mat-app-primary))}.mdc-text-field--outlined.mdc-text-field--disabled .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-disabled-outline-color)}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-error-outline-color, var(--mat-app-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--focused):hover .mdc-notched-outline .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-error-hover-outline-color, var(--mat-app-on-error-container))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid.mdc-text-field--focused .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-error-focus-outline-color, var(--mat-app-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline .mat-mdc-notch-piece{border-width:var(--mdc-outlined-text-field-focus-outline-width)}.mdc-notched-outline__leading{border-left:1px solid;border-right:none;border-top-right-radius:0;border-bottom-right-radius:0;border-top-left-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small));border-bottom-left-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small))}.mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__leading{width:max(12px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)))}[dir=rtl] .mdc-notched-outline__leading{border-left:none;border-right:1px solid;border-bottom-left-radius:0;border-top-left-radius:0;border-top-right-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small));border-bottom-right-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small))}.mdc-notched-outline__trailing{flex-grow:1;border-left:none;border-right:1px solid;border-top-left-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small));border-bottom-right-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small))}[dir=rtl] .mdc-notched-outline__trailing{border-left:1px solid;border-right:none;border-top-right-radius:0;border-bottom-right-radius:0;border-top-left-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small));border-bottom-left-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small))}.mdc-notched-outline__notch{flex:0 0 auto;width:auto}.mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__notch{max-width:min(var(--mat-form-field-notch-max-width, 100%),100% - max(12px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)))*2)}.mdc-text-field--outlined .mdc-notched-outline--notched .mdc-notched-outline__notch{padding-top:1px}.mdc-text-field--focused.mdc-text-field--outlined .mdc-notched-outline--notched .mdc-notched-outline__notch{padding-top:2px}.mdc-notched-outline--notched .mdc-notched-outline__notch{padding-left:0;padding-right:8px;border-top:none;--mat-form-field-notch-max-width: 100%}[dir=rtl] .mdc-notched-outline--notched .mdc-notched-outline__notch{padding-left:8px;padding-right:0}.mdc-notched-outline--no-label .mdc-notched-outline__notch{display:none}.mdc-line-ripple::before,.mdc-line-ripple::after{position:absolute;bottom:0;left:0;width:100%;border-bottom-style:solid;content:\\\"\\\"}.mdc-line-ripple::before{z-index:1;border-bottom-width:var(--mdc-filled-text-field-active-indicator-height)}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-line-ripple::before{border-bottom-color:var(--mdc-filled-text-field-active-indicator-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-line-ripple::before{border-bottom-color:var(--mdc-filled-text-field-hover-active-indicator-color, var(--mat-app-on-surface))}.mdc-text-field--filled.mdc-text-field--disabled .mdc-line-ripple::before{border-bottom-color:var(--mdc-filled-text-field-disabled-active-indicator-color)}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-line-ripple::before{border-bottom-color:var(--mdc-filled-text-field-error-active-indicator-color, var(--mat-app-error))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--focused):hover .mdc-line-ripple::before{border-bottom-color:var(--mdc-filled-text-field-error-hover-active-indicator-color, var(--mat-app-on-error-container))}.mdc-line-ripple::after{transform:scaleX(0);opacity:0;z-index:2}.mdc-text-field--filled .mdc-line-ripple::after{border-bottom-width:var(--mdc-filled-text-field-focus-active-indicator-height)}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-line-ripple::after{border-bottom-color:var(--mdc-filled-text-field-focus-active-indicator-color, var(--mat-app-primary))}.mdc-text-field--filled.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-line-ripple::after{border-bottom-color:var(--mdc-filled-text-field-error-focus-active-indicator-color, var(--mat-app-error))}.mdc-line-ripple--active::after{transform:scaleX(1);opacity:1}.mdc-line-ripple--deactivating::after{opacity:0}.mdc-text-field--disabled{pointer-events:none}.mat-mdc-form-field-textarea-control{vertical-align:middle;resize:vertical;box-sizing:border-box;height:auto;margin:0;padding:0;border:none;overflow:auto}.mat-mdc-form-field-input-control.mat-mdc-form-field-input-control{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font:inherit;letter-spacing:inherit;text-decoration:inherit;text-transform:inherit;border:none}.mat-mdc-form-field .mat-mdc-floating-label.mdc-floating-label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;line-height:normal;pointer-events:all;will-change:auto}.mat-mdc-form-field:not(.mat-form-field-disabled) .mat-mdc-floating-label.mdc-floating-label{cursor:inherit}.mdc-text-field--no-label:not(.mdc-text-field--textarea) .mat-mdc-form-field-input-control.mdc-text-field__input,.mat-mdc-text-field-wrapper .mat-mdc-form-field-input-control{height:auto}.mat-mdc-text-field-wrapper .mat-mdc-form-field-input-control.mdc-text-field__input[type=color]{height:23px}.mat-mdc-text-field-wrapper{height:auto;flex:auto;will-change:auto}.mat-mdc-form-field-has-icon-prefix .mat-mdc-text-field-wrapper{padding-left:0;--mat-mdc-form-field-label-offset-x: -16px}.mat-mdc-form-field-has-icon-suffix .mat-mdc-text-field-wrapper{padding-right:0}[dir=rtl] .mat-mdc-text-field-wrapper{padding-left:16px;padding-right:16px}[dir=rtl] .mat-mdc-form-field-has-icon-suffix .mat-mdc-text-field-wrapper{padding-left:0}[dir=rtl] .mat-mdc-form-field-has-icon-prefix .mat-mdc-text-field-wrapper{padding-right:0}.mat-form-field-disabled .mdc-text-field__input::placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color)}.mat-form-field-disabled .mdc-text-field__input::-moz-placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color)}.mat-form-field-disabled .mdc-text-field__input::-webkit-input-placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color)}.mat-form-field-disabled .mdc-text-field__input:-ms-input-placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color)}.mat-mdc-form-field-label-always-float .mdc-text-field__input::placeholder{transition-delay:40ms;transition-duration:110ms;opacity:1}.mat-mdc-text-field-wrapper .mat-mdc-form-field-infix .mat-mdc-floating-label{left:auto;right:auto}.mat-mdc-text-field-wrapper.mdc-text-field--outlined .mdc-text-field__input{display:inline-block}.mat-mdc-form-field .mat-mdc-text-field-wrapper.mdc-text-field .mdc-notched-outline__notch{padding-top:0}.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field .mdc-notched-outline__notch{border-left:1px solid rgba(0,0,0,0)}[dir=rtl] .mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field .mdc-notched-outline__notch{border-left:none;border-right:1px solid rgba(0,0,0,0)}.mat-mdc-form-field-infix{min-height:var(--mat-form-field-container-height);padding-top:var(--mat-form-field-filled-with-label-container-padding-top);padding-bottom:var(--mat-form-field-filled-with-label-container-padding-bottom)}.mdc-text-field--outlined .mat-mdc-form-field-infix,.mdc-text-field--no-label .mat-mdc-form-field-infix{padding-top:var(--mat-form-field-container-vertical-padding);padding-bottom:var(--mat-form-field-container-vertical-padding)}.mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-floating-label{top:calc(var(--mat-form-field-container-height)/2)}.mdc-text-field--filled .mat-mdc-floating-label{display:var(--mat-form-field-filled-label-display, block)}.mat-mdc-text-field-wrapper.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{--mat-mdc-form-field-label-transform: translateY(calc(calc(6.75px + var(--mat-form-field-container-height) / 2) * -1)) scale(var(--mat-mdc-form-field-floating-label-scale, 0.75));transform:var(--mat-mdc-form-field-label-transform)}.mat-mdc-form-field-subscript-wrapper{box-sizing:border-box;width:100%;position:relative}.mat-mdc-form-field-hint-wrapper,.mat-mdc-form-field-error-wrapper{position:absolute;top:0;left:0;right:0;padding:0 16px}.mat-mdc-form-field-subscript-dynamic-size .mat-mdc-form-field-hint-wrapper,.mat-mdc-form-field-subscript-dynamic-size .mat-mdc-form-field-error-wrapper{position:static}.mat-mdc-form-field-bottom-align::before{content:\\\"\\\";display:inline-block;height:16px}.mat-mdc-form-field-bottom-align.mat-mdc-form-field-subscript-dynamic-size::before{content:unset}.mat-mdc-form-field-hint-end{order:1}.mat-mdc-form-field-hint-wrapper{display:flex}.mat-mdc-form-field-hint-spacer{flex:1 0 1em}.mat-mdc-form-field-error{display:block;color:var(--mat-form-field-error-text-color, var(--mat-app-error))}.mat-mdc-form-field-subscript-wrapper,.mat-mdc-form-field-bottom-align::before{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--mat-form-field-subscript-text-font, var(--mat-app-body-small-font));line-height:var(--mat-form-field-subscript-text-line-height, var(--mat-app-body-small-line-height));font-size:var(--mat-form-field-subscript-text-size, var(--mat-app-body-small-size));letter-spacing:var(--mat-form-field-subscript-text-tracking, var(--mat-app-body-small-tracking));font-weight:var(--mat-form-field-subscript-text-weight, var(--mat-app-body-small-weight))}.mat-mdc-form-field-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;opacity:0;pointer-events:none;background-color:var(--mat-form-field-state-layer-color, var(--mat-app-on-surface))}.mat-mdc-text-field-wrapper:hover .mat-mdc-form-field-focus-overlay{opacity:var(--mat-form-field-hover-state-layer-opacity, var(--mat-app-hover-state-layer-opacity))}.mat-mdc-form-field.mat-focused .mat-mdc-form-field-focus-overlay{opacity:var(--mat-form-field-focus-state-layer-opacity)}select.mat-mdc-form-field-input-control{-moz-appearance:none;-webkit-appearance:none;background-color:rgba(0,0,0,0);display:inline-flex;box-sizing:border-box}select.mat-mdc-form-field-input-control:not(:disabled){cursor:pointer}select.mat-mdc-form-field-input-control:not(.mat-mdc-native-select-inline) option{color:var(--mat-form-field-select-option-text-color)}select.mat-mdc-form-field-input-control:not(.mat-mdc-native-select-inline) option:disabled{color:var(--mat-form-field-select-disabled-option-text-color)}.mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-infix::after{content:\\\"\\\";width:0;height:0;border-left:5px solid rgba(0,0,0,0);border-right:5px solid rgba(0,0,0,0);border-top:5px solid;position:absolute;right:0;top:50%;margin-top:-2.5px;pointer-events:none;color:var(--mat-form-field-enabled-select-arrow-color, var(--mat-app-on-surface-variant))}[dir=rtl] .mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-infix::after{right:auto;left:0}.mat-mdc-form-field-type-mat-native-select.mat-focused .mat-mdc-form-field-infix::after{color:var(--mat-form-field-focus-select-arrow-color, var(--mat-app-primary))}.mat-mdc-form-field-type-mat-native-select.mat-form-field-disabled .mat-mdc-form-field-infix::after{color:var(--mat-form-field-disabled-select-arrow-color)}.mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-input-control{padding-right:15px}[dir=rtl] .mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-input-control{padding-right:0;padding-left:15px}.cdk-high-contrast-active .mat-form-field-appearance-fill .mat-mdc-text-field-wrapper{outline:solid 1px}.cdk-high-contrast-active .mat-form-field-appearance-fill.mat-form-field-disabled .mat-mdc-text-field-wrapper{outline-color:GrayText}.cdk-high-contrast-active .mat-form-field-appearance-fill.mat-focused .mat-mdc-text-field-wrapper{outline:dashed 3px}.cdk-high-contrast-active .mat-mdc-form-field.mat-focused .mdc-notched-outline{border:dashed 3px}.mat-mdc-form-field-input-control[type=date],.mat-mdc-form-field-input-control[type=datetime],.mat-mdc-form-field-input-control[type=datetime-local],.mat-mdc-form-field-input-control[type=month],.mat-mdc-form-field-input-control[type=week],.mat-mdc-form-field-input-control[type=time]{line-height:1}.mat-mdc-form-field-input-control::-webkit-datetime-edit{line-height:1;padding:0;margin-bottom:-2px}.mat-mdc-form-field{--mat-mdc-form-field-floating-label-scale: 0.75;display:inline-flex;flex-direction:column;min-width:0;text-align:left;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--mat-form-field-container-text-font, var(--mat-app-body-large-font));line-height:var(--mat-form-field-container-text-line-height, var(--mat-app-body-large-line-height));font-size:var(--mat-form-field-container-text-size, var(--mat-app-body-large-size));letter-spacing:var(--mat-form-field-container-text-tracking, var(--mat-app-body-large-tracking));font-weight:var(--mat-form-field-container-text-weight, var(--mat-app-body-large-weight))}[dir=rtl] .mat-mdc-form-field{text-align:right}.mat-mdc-form-field .mdc-text-field--outlined .mdc-floating-label--float-above{font-size:calc(var(--mat-form-field-outlined-label-text-populated-size)*var(--mat-mdc-form-field-floating-label-scale))}.mat-mdc-form-field .mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{font-size:var(--mat-form-field-outlined-label-text-populated-size)}.mat-mdc-form-field-flex{display:inline-flex;align-items:baseline;box-sizing:border-box;width:100%}.mat-mdc-text-field-wrapper{width:100%;z-index:0}.mat-mdc-form-field-icon-prefix,.mat-mdc-form-field-icon-suffix{align-self:center;line-height:0;pointer-events:auto;position:relative;z-index:1}.mat-mdc-form-field-icon-prefix>.mat-icon,.mat-mdc-form-field-icon-suffix>.mat-icon{padding:0 12px;box-sizing:content-box}.mat-mdc-form-field-icon-prefix{color:var(--mat-form-field-leading-icon-color, var(--mat-app-on-surface-variant))}.mat-form-field-disabled .mat-mdc-form-field-icon-prefix{color:var(--mat-form-field-disabled-leading-icon-color)}.mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-trailing-icon-color, var(--mat-app-on-surface-variant))}.mat-form-field-disabled .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-disabled-trailing-icon-color)}.mat-form-field-invalid .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-error-trailing-icon-color, var(--mat-app-error))}.mat-form-field-invalid:not(.mat-focused):not(.mat-form-field-disabled) .mat-mdc-text-field-wrapper:hover .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-error-hover-trailing-icon-color, var(--mat-app-on-error-container))}.mat-form-field-invalid.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-error-focus-trailing-icon-color, var(--mat-app-error))}.mat-mdc-form-field-icon-prefix,[dir=rtl] .mat-mdc-form-field-icon-suffix{padding:0 4px 0 0}.mat-mdc-form-field-icon-suffix,[dir=rtl] .mat-mdc-form-field-icon-prefix{padding:0 0 0 4px}.mat-mdc-form-field-subscript-wrapper .mat-icon,.mat-mdc-form-field label .mat-icon{width:1em;height:1em;font-size:inherit}.mat-mdc-form-field-infix{flex:auto;min-width:0;width:180px;position:relative;box-sizing:border-box}.mat-mdc-form-field-infix:has(textarea[cols]){width:auto}.mat-mdc-form-field .mdc-notched-outline__notch{margin-left:-1px;-webkit-clip-path:inset(-9em -999em -9em 1px);clip-path:inset(-9em -999em -9em 1px)}[dir=rtl] .mat-mdc-form-field .mdc-notched-outline__notch{margin-left:0;margin-right:-1px;-webkit-clip-path:inset(-9em 1px -9em -999em);clip-path:inset(-9em 1px -9em -999em)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-floating-label{transition:transform 150ms cubic-bezier(0.4, 0, 0.2, 1),color 150ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field__input{transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field__input::placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field__input::-moz-placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field__input::-webkit-input-placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field__input:-ms-input-placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--no-label .mdc-text-field__input::placeholder,.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--focused .mdc-text-field__input::placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--no-label .mdc-text-field__input::-moz-placeholder,.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--focused .mdc-text-field__input::-moz-placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--no-label .mdc-text-field__input::-webkit-input-placeholder,.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--focused .mdc-text-field__input::-webkit-input-placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--no-label .mdc-text-field__input:-ms-input-placeholder,.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--focused .mdc-text-field__input:-ms-input-placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field--filled:not(.mdc-ripple-upgraded):focus .mdc-text-field__ripple::before{transition-duration:75ms}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-line-ripple::after{transition:transform 180ms cubic-bezier(0.4, 0, 0.2, 1),opacity 180ms cubic-bezier(0.4, 0, 0.2, 1)}.mdc-notched-outline .mdc-floating-label{max-width:calc(100% + 1px)}.mdc-notched-outline--upgraded .mdc-floating-label--float-above{max-width:calc(133.3333333333% + 1px)}\"], dependencies: [{ kind: \"directive\", type: MatFormFieldFloatingLabel, selector: \"label[matFormFieldFloatingLabel]\", inputs: [\"floating\", \"monitorResize\"] }, { kind: \"component\", type: MatFormFieldNotchedOutline, selector: \"div[matFormFieldNotchedOutline]\", inputs: [\"matFormFieldNotchedOutlineOpen\"] }, { kind: \"directive\", type: NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\", \"ngTemplateOutletInjector\"] }, { kind: \"directive\", type: MatFormFieldLineRipple, selector: \"div[matFormFieldLineRipple]\" }, { kind: \"directive\", type: MatHint, selector: \"mat-hint\", inputs: [\"align\", \"id\"] }], animations: [matFormFieldAnimations.transitionMessages], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatFormField, decorators: [{\n type: Component,\n args: [{ selector: 'mat-form-field', exportAs: 'matFormField', animations: [matFormFieldAnimations.transitionMessages], host: {\n 'class': 'mat-mdc-form-field',\n '[class.mat-mdc-form-field-label-always-float]': '_shouldAlwaysFloat()',\n '[class.mat-mdc-form-field-has-icon-prefix]': '_hasIconPrefix',\n '[class.mat-mdc-form-field-has-icon-suffix]': '_hasIconSuffix',\n // Note that these classes reuse the same names as the non-MDC version, because they can be\n // considered a public API since custom form controls may use them to style themselves.\n // See https://github.com/angular/components/pull/20502#discussion_r486124901.\n '[class.mat-form-field-invalid]': '_control.errorState',\n '[class.mat-form-field-disabled]': '_control.disabled',\n '[class.mat-form-field-autofilled]': '_control.autofilled',\n '[class.mat-form-field-no-animations]': '_animationMode === \"NoopAnimations\"',\n '[class.mat-form-field-appearance-fill]': 'appearance == \"fill\"',\n '[class.mat-form-field-appearance-outline]': 'appearance == \"outline\"',\n '[class.mat-form-field-hide-placeholder]': '_hasFloatingLabel() && !_shouldLabelFloat()',\n '[class.mat-focused]': '_control.focused',\n '[class.mat-primary]': 'color !== \"accent\" && color !== \"warn\"',\n '[class.mat-accent]': 'color === \"accent\"',\n '[class.mat-warn]': 'color === \"warn\"',\n '[class.ng-untouched]': '_shouldForward(\"untouched\")',\n '[class.ng-touched]': '_shouldForward(\"touched\")',\n '[class.ng-pristine]': '_shouldForward(\"pristine\")',\n '[class.ng-dirty]': '_shouldForward(\"dirty\")',\n '[class.ng-valid]': '_shouldForward(\"valid\")',\n '[class.ng-invalid]': '_shouldForward(\"invalid\")',\n '[class.ng-pending]': '_shouldForward(\"pending\")',\n }, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [\n { provide: MAT_FORM_FIELD, useExisting: MatFormField },\n { provide: FLOATING_LABEL_PARENT, useExisting: MatFormField },\n ], standalone: true, imports: [\n MatFormFieldFloatingLabel,\n MatFormFieldNotchedOutline,\n NgTemplateOutlet,\n MatFormFieldLineRipple,\n MatHint,\n ], template: \"\\n \\n @if (_hasFloatingLabel()) {\\n \\n \\n \\n @if (!hideRequiredMarker && _control.required) {\\n \\n }\\n \\n }\\n\\n\\n\\n @if (!_hasOutline() && !_control.disabled) {\\n
\\n }\\n
\\n @if (_hasOutline()) {\\n
\\n @if (!_forceDisplayInfixLabel()) {\\n \\n }\\n
\\n }\\n\\n @if (_hasIconPrefix) {\\n
\\n \\n
\\n }\\n\\n @if (_hasTextPrefix) {\\n
\\n \\n
\\n }\\n\\n
\\n @if (!_hasOutline() || _forceDisplayInfixLabel()) {\\n \\n }\\n\\n \\n
\\n\\n @if (_hasTextSuffix) {\\n
\\n \\n
\\n }\\n\\n @if (_hasIconSuffix) {\\n
\\n \\n
\\n }\\n
\\n\\n @if (!_hasOutline()) {\\n
\\n }\\n\\n\\n\\n @switch (_getDisplayedMessages()) {\\n @case ('error') {\\n \\n \\n \\n }\\n\\n @case ('hint') {\\n
\\n @if (hintLabel) {\\n {{hintLabel}}\\n }\\n \\n
\\n \\n
\\n }\\n }\\n\\n\", styles: [\".mdc-text-field{display:inline-flex;align-items:baseline;padding:0 16px;position:relative;box-sizing:border-box;overflow:hidden;will-change:opacity,transform,color;border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.mdc-text-field__input{width:100%;min-width:0;border:none;border-radius:0;background:none;padding:0;-moz-appearance:none;-webkit-appearance:none;height:28px}.mdc-text-field__input::-webkit-calendar-picker-indicator{display:none}.mdc-text-field__input::-ms-clear{display:none}.mdc-text-field__input:focus{outline:none}.mdc-text-field__input:invalid{box-shadow:none}.mdc-text-field__input::placeholder{opacity:0}.mdc-text-field__input::-moz-placeholder{opacity:0}.mdc-text-field__input::-webkit-input-placeholder{opacity:0}.mdc-text-field__input:-ms-input-placeholder{opacity:0}.mdc-text-field--no-label .mdc-text-field__input::placeholder,.mdc-text-field--focused .mdc-text-field__input::placeholder{opacity:1}.mdc-text-field--no-label .mdc-text-field__input::-moz-placeholder,.mdc-text-field--focused .mdc-text-field__input::-moz-placeholder{opacity:1}.mdc-text-field--no-label .mdc-text-field__input::-webkit-input-placeholder,.mdc-text-field--focused .mdc-text-field__input::-webkit-input-placeholder{opacity:1}.mdc-text-field--no-label .mdc-text-field__input:-ms-input-placeholder,.mdc-text-field--focused .mdc-text-field__input:-ms-input-placeholder{opacity:1}.mdc-text-field--outlined .mdc-text-field__input,.mdc-text-field--filled.mdc-text-field--no-label .mdc-text-field__input{height:100%}.mdc-text-field--outlined .mdc-text-field__input{display:flex;border:none !important;background-color:rgba(0,0,0,0)}.mdc-text-field--disabled .mdc-text-field__input{pointer-events:auto}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input{color:var(--mdc-filled-text-field-input-text-color, var(--mat-app-on-surface));caret-color:var(--mdc-filled-text-field-caret-color, var(--mat-app-primary))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder{color:var(--mdc-filled-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder{color:var(--mdc-filled-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder{color:var(--mdc-filled-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder{color:var(--mdc-filled-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input{caret-color:var(--mdc-filled-text-field-error-caret-color)}.mdc-text-field--filled.mdc-text-field--disabled .mdc-text-field__input{color:var(--mdc-filled-text-field-disabled-input-text-color)}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input{color:var(--mdc-outlined-text-field-input-text-color, var(--mat-app-on-surface));caret-color:var(--mdc-outlined-text-field-caret-color, var(--mat-app-primary))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder{color:var(--mdc-outlined-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder{color:var(--mdc-outlined-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder{color:var(--mdc-outlined-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder{color:var(--mdc-outlined-text-field-input-text-placeholder-color, var(--mat-app-on-surface-variant))}.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input{caret-color:var(--mdc-outlined-text-field-error-caret-color)}.mdc-text-field--outlined.mdc-text-field--disabled .mdc-text-field__input{color:var(--mdc-outlined-text-field-disabled-input-text-color)}.mdc-text-field--disabled .cdk-high-contrast-active .mdc-text-field__input{background-color:Window}.mdc-text-field--filled{height:56px;border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-left-radius:var(--mdc-filled-text-field-container-shape, var(--mat-app-corner-extra-small-top));border-top-right-radius:var(--mdc-filled-text-field-container-shape, var(--mat-app-corner-extra-small-top))}.mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:var(--mdc-filled-text-field-container-color, var(--mat-app-surface-variant))}.mdc-text-field--filled.mdc-text-field--disabled{background-color:var(--mdc-filled-text-field-disabled-container-color)}.mdc-text-field--outlined{height:56px;overflow:visible;padding-right:max(16px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)));padding-left:max(16px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)) + 4px)}[dir=rtl] .mdc-text-field--outlined{padding-right:max(16px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)) + 4px);padding-left:max(16px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)))}.mdc-floating-label{position:absolute;left:0;transform-origin:left top;line-height:1.15rem;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:text;overflow:hidden;will-change:transform}[dir=rtl] .mdc-floating-label{right:0;left:auto;transform-origin:right top;text-align:right}.mdc-text-field .mdc-floating-label{top:50%;transform:translateY(-50%);pointer-events:none}.mdc-notched-outline .mdc-floating-label{display:inline-block;position:relative;max-width:100%}.mdc-text-field--outlined .mdc-floating-label{left:4px;right:auto}[dir=rtl] .mdc-text-field--outlined .mdc-floating-label{left:auto;right:4px}.mdc-text-field--filled .mdc-floating-label{left:16px;right:auto}[dir=rtl] .mdc-text-field--filled .mdc-floating-label{left:auto;right:16px}.mdc-text-field--disabled .mdc-floating-label{cursor:default}.cdk-high-contrast-active .mdc-text-field--disabled .mdc-floating-label{z-index:1}.mdc-text-field--filled.mdc-text-field--no-label .mdc-floating-label{display:none}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-floating-label{color:var(--mdc-filled-text-field-label-text-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-floating-label{color:var(--mdc-filled-text-field-focus-label-text-color, var(--mat-app-primary))}.mdc-text-field--filled:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-floating-label{color:var(--mdc-filled-text-field-hover-label-text-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled.mdc-text-field--disabled .mdc-floating-label{color:var(--mdc-filled-text-field-disabled-label-text-color)}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-floating-label{color:var(--mdc-filled-text-field-error-label-text-color, var(--mat-app-error))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid.mdc-text-field--focused .mdc-floating-label{color:var(--mdc-filled-text-field-error-focus-label-text-color, var(--mat-app-error))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--disabled):hover .mdc-floating-label{color:var(--mdc-filled-text-field-error-hover-label-text-color, var(--mat-app-on-error-container))}.mdc-text-field--filled .mdc-floating-label{font-family:var(--mdc-filled-text-field-label-text-font, var(--mat-app-body-large-font));font-size:var(--mdc-filled-text-field-label-text-size, var(--mat-app-body-large-size));font-weight:var(--mdc-filled-text-field-label-text-weight, var(--mat-app-body-large-weight));letter-spacing:var(--mdc-filled-text-field-label-text-tracking, var(--mat-app-body-large-tracking))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-floating-label{color:var(--mdc-outlined-text-field-label-text-color, var(--mat-app-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-floating-label{color:var(--mdc-outlined-text-field-focus-label-text-color, var(--mat-app-primary))}.mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-floating-label{color:var(--mdc-outlined-text-field-hover-label-text-color, var(--mat-app-on-surface))}.mdc-text-field--outlined.mdc-text-field--disabled .mdc-floating-label{color:var(--mdc-outlined-text-field-disabled-label-text-color)}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-floating-label{color:var(--mdc-outlined-text-field-error-label-text-color, var(--mat-app-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid.mdc-text-field--focused .mdc-floating-label{color:var(--mdc-outlined-text-field-error-focus-label-text-color, var(--mat-app-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--disabled):hover .mdc-floating-label{color:var(--mdc-outlined-text-field-error-hover-label-text-color, var(--mat-app-on-error-container))}.mdc-text-field--outlined .mdc-floating-label{font-family:var(--mdc-outlined-text-field-label-text-font, var(--mat-app-body-large-font));font-size:var(--mdc-outlined-text-field-label-text-size, var(--mat-app-body-large-size));font-weight:var(--mdc-outlined-text-field-label-text-weight, var(--mat-app-body-large-weight));letter-spacing:var(--mdc-outlined-text-field-label-text-tracking, var(--mat-app-body-large-tracking))}.mdc-floating-label--float-above{cursor:auto;transform:translateY(-106%) scale(0.75)}.mdc-text-field--filled .mdc-floating-label--float-above{transform:translateY(-106%) scale(0.75)}.mdc-text-field--outlined .mdc-floating-label--float-above{transform:translateY(-37.25px) scale(1);font-size:.75rem}.mdc-notched-outline .mdc-floating-label--float-above{text-overflow:clip}.mdc-notched-outline--upgraded .mdc-floating-label--float-above{max-width:133.3333333333%}.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{transform:translateY(-34.75px) scale(0.75)}.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{font-size:1rem}.mdc-floating-label--required:not(.mdc-floating-label--hide-required-marker)::after{margin-left:1px;margin-right:0;content:\\\"*\\\"}[dir=rtl] .mdc-floating-label--required:not(.mdc-floating-label--hide-required-marker)::after{margin-left:0;margin-right:1px}.mdc-notched-outline{display:flex;position:absolute;top:0;right:0;left:0;box-sizing:border-box;width:100%;max-width:100%;height:100%;text-align:left;pointer-events:none}[dir=rtl] .mdc-notched-outline{text-align:right}.mdc-text-field--outlined .mdc-notched-outline{z-index:1}.mat-mdc-notch-piece{box-sizing:border-box;height:100%;pointer-events:none;border-top:1px solid;border-bottom:1px solid}.mdc-text-field--focused .mat-mdc-notch-piece{border-width:2px}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-outline-color, var(--mat-app-outline));border-width:var(--mdc-outlined-text-field-outline-width)}.mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-hover-outline-color, var(--mat-app-on-surface))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-focus-outline-color, var(--mat-app-primary))}.mdc-text-field--outlined.mdc-text-field--disabled .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-disabled-outline-color)}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-error-outline-color, var(--mat-app-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--focused):hover .mdc-notched-outline .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-error-hover-outline-color, var(--mat-app-on-error-container))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid.mdc-text-field--focused .mat-mdc-notch-piece{border-color:var(--mdc-outlined-text-field-error-focus-outline-color, var(--mat-app-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline .mat-mdc-notch-piece{border-width:var(--mdc-outlined-text-field-focus-outline-width)}.mdc-notched-outline__leading{border-left:1px solid;border-right:none;border-top-right-radius:0;border-bottom-right-radius:0;border-top-left-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small));border-bottom-left-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small))}.mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__leading{width:max(12px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)))}[dir=rtl] .mdc-notched-outline__leading{border-left:none;border-right:1px solid;border-bottom-left-radius:0;border-top-left-radius:0;border-top-right-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small));border-bottom-right-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small))}.mdc-notched-outline__trailing{flex-grow:1;border-left:none;border-right:1px solid;border-top-left-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small));border-bottom-right-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small))}[dir=rtl] .mdc-notched-outline__trailing{border-left:1px solid;border-right:none;border-top-right-radius:0;border-bottom-right-radius:0;border-top-left-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small));border-bottom-left-radius:var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small))}.mdc-notched-outline__notch{flex:0 0 auto;width:auto}.mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__notch{max-width:min(var(--mat-form-field-notch-max-width, 100%),100% - max(12px,var(--mdc-outlined-text-field-container-shape, var(--mat-app-corner-extra-small)))*2)}.mdc-text-field--outlined .mdc-notched-outline--notched .mdc-notched-outline__notch{padding-top:1px}.mdc-text-field--focused.mdc-text-field--outlined .mdc-notched-outline--notched .mdc-notched-outline__notch{padding-top:2px}.mdc-notched-outline--notched .mdc-notched-outline__notch{padding-left:0;padding-right:8px;border-top:none;--mat-form-field-notch-max-width: 100%}[dir=rtl] .mdc-notched-outline--notched .mdc-notched-outline__notch{padding-left:8px;padding-right:0}.mdc-notched-outline--no-label .mdc-notched-outline__notch{display:none}.mdc-line-ripple::before,.mdc-line-ripple::after{position:absolute;bottom:0;left:0;width:100%;border-bottom-style:solid;content:\\\"\\\"}.mdc-line-ripple::before{z-index:1;border-bottom-width:var(--mdc-filled-text-field-active-indicator-height)}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-line-ripple::before{border-bottom-color:var(--mdc-filled-text-field-active-indicator-color, var(--mat-app-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-line-ripple::before{border-bottom-color:var(--mdc-filled-text-field-hover-active-indicator-color, var(--mat-app-on-surface))}.mdc-text-field--filled.mdc-text-field--disabled .mdc-line-ripple::before{border-bottom-color:var(--mdc-filled-text-field-disabled-active-indicator-color)}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-line-ripple::before{border-bottom-color:var(--mdc-filled-text-field-error-active-indicator-color, var(--mat-app-error))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--focused):hover .mdc-line-ripple::before{border-bottom-color:var(--mdc-filled-text-field-error-hover-active-indicator-color, var(--mat-app-on-error-container))}.mdc-line-ripple::after{transform:scaleX(0);opacity:0;z-index:2}.mdc-text-field--filled .mdc-line-ripple::after{border-bottom-width:var(--mdc-filled-text-field-focus-active-indicator-height)}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-line-ripple::after{border-bottom-color:var(--mdc-filled-text-field-focus-active-indicator-color, var(--mat-app-primary))}.mdc-text-field--filled.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-line-ripple::after{border-bottom-color:var(--mdc-filled-text-field-error-focus-active-indicator-color, var(--mat-app-error))}.mdc-line-ripple--active::after{transform:scaleX(1);opacity:1}.mdc-line-ripple--deactivating::after{opacity:0}.mdc-text-field--disabled{pointer-events:none}.mat-mdc-form-field-textarea-control{vertical-align:middle;resize:vertical;box-sizing:border-box;height:auto;margin:0;padding:0;border:none;overflow:auto}.mat-mdc-form-field-input-control.mat-mdc-form-field-input-control{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font:inherit;letter-spacing:inherit;text-decoration:inherit;text-transform:inherit;border:none}.mat-mdc-form-field .mat-mdc-floating-label.mdc-floating-label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;line-height:normal;pointer-events:all;will-change:auto}.mat-mdc-form-field:not(.mat-form-field-disabled) .mat-mdc-floating-label.mdc-floating-label{cursor:inherit}.mdc-text-field--no-label:not(.mdc-text-field--textarea) .mat-mdc-form-field-input-control.mdc-text-field__input,.mat-mdc-text-field-wrapper .mat-mdc-form-field-input-control{height:auto}.mat-mdc-text-field-wrapper .mat-mdc-form-field-input-control.mdc-text-field__input[type=color]{height:23px}.mat-mdc-text-field-wrapper{height:auto;flex:auto;will-change:auto}.mat-mdc-form-field-has-icon-prefix .mat-mdc-text-field-wrapper{padding-left:0;--mat-mdc-form-field-label-offset-x: -16px}.mat-mdc-form-field-has-icon-suffix .mat-mdc-text-field-wrapper{padding-right:0}[dir=rtl] .mat-mdc-text-field-wrapper{padding-left:16px;padding-right:16px}[dir=rtl] .mat-mdc-form-field-has-icon-suffix .mat-mdc-text-field-wrapper{padding-left:0}[dir=rtl] .mat-mdc-form-field-has-icon-prefix .mat-mdc-text-field-wrapper{padding-right:0}.mat-form-field-disabled .mdc-text-field__input::placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color)}.mat-form-field-disabled .mdc-text-field__input::-moz-placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color)}.mat-form-field-disabled .mdc-text-field__input::-webkit-input-placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color)}.mat-form-field-disabled .mdc-text-field__input:-ms-input-placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color)}.mat-mdc-form-field-label-always-float .mdc-text-field__input::placeholder{transition-delay:40ms;transition-duration:110ms;opacity:1}.mat-mdc-text-field-wrapper .mat-mdc-form-field-infix .mat-mdc-floating-label{left:auto;right:auto}.mat-mdc-text-field-wrapper.mdc-text-field--outlined .mdc-text-field__input{display:inline-block}.mat-mdc-form-field .mat-mdc-text-field-wrapper.mdc-text-field .mdc-notched-outline__notch{padding-top:0}.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field .mdc-notched-outline__notch{border-left:1px solid rgba(0,0,0,0)}[dir=rtl] .mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field .mdc-notched-outline__notch{border-left:none;border-right:1px solid rgba(0,0,0,0)}.mat-mdc-form-field-infix{min-height:var(--mat-form-field-container-height);padding-top:var(--mat-form-field-filled-with-label-container-padding-top);padding-bottom:var(--mat-form-field-filled-with-label-container-padding-bottom)}.mdc-text-field--outlined .mat-mdc-form-field-infix,.mdc-text-field--no-label .mat-mdc-form-field-infix{padding-top:var(--mat-form-field-container-vertical-padding);padding-bottom:var(--mat-form-field-container-vertical-padding)}.mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-floating-label{top:calc(var(--mat-form-field-container-height)/2)}.mdc-text-field--filled .mat-mdc-floating-label{display:var(--mat-form-field-filled-label-display, block)}.mat-mdc-text-field-wrapper.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{--mat-mdc-form-field-label-transform: translateY(calc(calc(6.75px + var(--mat-form-field-container-height) / 2) * -1)) scale(var(--mat-mdc-form-field-floating-label-scale, 0.75));transform:var(--mat-mdc-form-field-label-transform)}.mat-mdc-form-field-subscript-wrapper{box-sizing:border-box;width:100%;position:relative}.mat-mdc-form-field-hint-wrapper,.mat-mdc-form-field-error-wrapper{position:absolute;top:0;left:0;right:0;padding:0 16px}.mat-mdc-form-field-subscript-dynamic-size .mat-mdc-form-field-hint-wrapper,.mat-mdc-form-field-subscript-dynamic-size .mat-mdc-form-field-error-wrapper{position:static}.mat-mdc-form-field-bottom-align::before{content:\\\"\\\";display:inline-block;height:16px}.mat-mdc-form-field-bottom-align.mat-mdc-form-field-subscript-dynamic-size::before{content:unset}.mat-mdc-form-field-hint-end{order:1}.mat-mdc-form-field-hint-wrapper{display:flex}.mat-mdc-form-field-hint-spacer{flex:1 0 1em}.mat-mdc-form-field-error{display:block;color:var(--mat-form-field-error-text-color, var(--mat-app-error))}.mat-mdc-form-field-subscript-wrapper,.mat-mdc-form-field-bottom-align::before{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--mat-form-field-subscript-text-font, var(--mat-app-body-small-font));line-height:var(--mat-form-field-subscript-text-line-height, var(--mat-app-body-small-line-height));font-size:var(--mat-form-field-subscript-text-size, var(--mat-app-body-small-size));letter-spacing:var(--mat-form-field-subscript-text-tracking, var(--mat-app-body-small-tracking));font-weight:var(--mat-form-field-subscript-text-weight, var(--mat-app-body-small-weight))}.mat-mdc-form-field-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;opacity:0;pointer-events:none;background-color:var(--mat-form-field-state-layer-color, var(--mat-app-on-surface))}.mat-mdc-text-field-wrapper:hover .mat-mdc-form-field-focus-overlay{opacity:var(--mat-form-field-hover-state-layer-opacity, var(--mat-app-hover-state-layer-opacity))}.mat-mdc-form-field.mat-focused .mat-mdc-form-field-focus-overlay{opacity:var(--mat-form-field-focus-state-layer-opacity)}select.mat-mdc-form-field-input-control{-moz-appearance:none;-webkit-appearance:none;background-color:rgba(0,0,0,0);display:inline-flex;box-sizing:border-box}select.mat-mdc-form-field-input-control:not(:disabled){cursor:pointer}select.mat-mdc-form-field-input-control:not(.mat-mdc-native-select-inline) option{color:var(--mat-form-field-select-option-text-color)}select.mat-mdc-form-field-input-control:not(.mat-mdc-native-select-inline) option:disabled{color:var(--mat-form-field-select-disabled-option-text-color)}.mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-infix::after{content:\\\"\\\";width:0;height:0;border-left:5px solid rgba(0,0,0,0);border-right:5px solid rgba(0,0,0,0);border-top:5px solid;position:absolute;right:0;top:50%;margin-top:-2.5px;pointer-events:none;color:var(--mat-form-field-enabled-select-arrow-color, var(--mat-app-on-surface-variant))}[dir=rtl] .mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-infix::after{right:auto;left:0}.mat-mdc-form-field-type-mat-native-select.mat-focused .mat-mdc-form-field-infix::after{color:var(--mat-form-field-focus-select-arrow-color, var(--mat-app-primary))}.mat-mdc-form-field-type-mat-native-select.mat-form-field-disabled .mat-mdc-form-field-infix::after{color:var(--mat-form-field-disabled-select-arrow-color)}.mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-input-control{padding-right:15px}[dir=rtl] .mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-input-control{padding-right:0;padding-left:15px}.cdk-high-contrast-active .mat-form-field-appearance-fill .mat-mdc-text-field-wrapper{outline:solid 1px}.cdk-high-contrast-active .mat-form-field-appearance-fill.mat-form-field-disabled .mat-mdc-text-field-wrapper{outline-color:GrayText}.cdk-high-contrast-active .mat-form-field-appearance-fill.mat-focused .mat-mdc-text-field-wrapper{outline:dashed 3px}.cdk-high-contrast-active .mat-mdc-form-field.mat-focused .mdc-notched-outline{border:dashed 3px}.mat-mdc-form-field-input-control[type=date],.mat-mdc-form-field-input-control[type=datetime],.mat-mdc-form-field-input-control[type=datetime-local],.mat-mdc-form-field-input-control[type=month],.mat-mdc-form-field-input-control[type=week],.mat-mdc-form-field-input-control[type=time]{line-height:1}.mat-mdc-form-field-input-control::-webkit-datetime-edit{line-height:1;padding:0;margin-bottom:-2px}.mat-mdc-form-field{--mat-mdc-form-field-floating-label-scale: 0.75;display:inline-flex;flex-direction:column;min-width:0;text-align:left;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--mat-form-field-container-text-font, var(--mat-app-body-large-font));line-height:var(--mat-form-field-container-text-line-height, var(--mat-app-body-large-line-height));font-size:var(--mat-form-field-container-text-size, var(--mat-app-body-large-size));letter-spacing:var(--mat-form-field-container-text-tracking, var(--mat-app-body-large-tracking));font-weight:var(--mat-form-field-container-text-weight, var(--mat-app-body-large-weight))}[dir=rtl] .mat-mdc-form-field{text-align:right}.mat-mdc-form-field .mdc-text-field--outlined .mdc-floating-label--float-above{font-size:calc(var(--mat-form-field-outlined-label-text-populated-size)*var(--mat-mdc-form-field-floating-label-scale))}.mat-mdc-form-field .mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{font-size:var(--mat-form-field-outlined-label-text-populated-size)}.mat-mdc-form-field-flex{display:inline-flex;align-items:baseline;box-sizing:border-box;width:100%}.mat-mdc-text-field-wrapper{width:100%;z-index:0}.mat-mdc-form-field-icon-prefix,.mat-mdc-form-field-icon-suffix{align-self:center;line-height:0;pointer-events:auto;position:relative;z-index:1}.mat-mdc-form-field-icon-prefix>.mat-icon,.mat-mdc-form-field-icon-suffix>.mat-icon{padding:0 12px;box-sizing:content-box}.mat-mdc-form-field-icon-prefix{color:var(--mat-form-field-leading-icon-color, var(--mat-app-on-surface-variant))}.mat-form-field-disabled .mat-mdc-form-field-icon-prefix{color:var(--mat-form-field-disabled-leading-icon-color)}.mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-trailing-icon-color, var(--mat-app-on-surface-variant))}.mat-form-field-disabled .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-disabled-trailing-icon-color)}.mat-form-field-invalid .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-error-trailing-icon-color, var(--mat-app-error))}.mat-form-field-invalid:not(.mat-focused):not(.mat-form-field-disabled) .mat-mdc-text-field-wrapper:hover .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-error-hover-trailing-icon-color, var(--mat-app-on-error-container))}.mat-form-field-invalid.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-error-focus-trailing-icon-color, var(--mat-app-error))}.mat-mdc-form-field-icon-prefix,[dir=rtl] .mat-mdc-form-field-icon-suffix{padding:0 4px 0 0}.mat-mdc-form-field-icon-suffix,[dir=rtl] .mat-mdc-form-field-icon-prefix{padding:0 0 0 4px}.mat-mdc-form-field-subscript-wrapper .mat-icon,.mat-mdc-form-field label .mat-icon{width:1em;height:1em;font-size:inherit}.mat-mdc-form-field-infix{flex:auto;min-width:0;width:180px;position:relative;box-sizing:border-box}.mat-mdc-form-field-infix:has(textarea[cols]){width:auto}.mat-mdc-form-field .mdc-notched-outline__notch{margin-left:-1px;-webkit-clip-path:inset(-9em -999em -9em 1px);clip-path:inset(-9em -999em -9em 1px)}[dir=rtl] .mat-mdc-form-field .mdc-notched-outline__notch{margin-left:0;margin-right:-1px;-webkit-clip-path:inset(-9em 1px -9em -999em);clip-path:inset(-9em 1px -9em -999em)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-floating-label{transition:transform 150ms cubic-bezier(0.4, 0, 0.2, 1),color 150ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field__input{transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field__input::placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field__input::-moz-placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field__input::-webkit-input-placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field__input:-ms-input-placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--no-label .mdc-text-field__input::placeholder,.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--focused .mdc-text-field__input::placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--no-label .mdc-text-field__input::-moz-placeholder,.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--focused .mdc-text-field__input::-moz-placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--no-label .mdc-text-field__input::-webkit-input-placeholder,.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--focused .mdc-text-field__input::-webkit-input-placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--no-label .mdc-text-field__input:-ms-input-placeholder,.mat-mdc-form-field:not(.mat-form-field-no-animations).mdc-text-field--focused .mdc-text-field__input:-ms-input-placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-text-field--filled:not(.mdc-ripple-upgraded):focus .mdc-text-field__ripple::before{transition-duration:75ms}.mat-mdc-form-field:not(.mat-form-field-no-animations) .mdc-line-ripple::after{transition:transform 180ms cubic-bezier(0.4, 0, 0.2, 1),opacity 180ms cubic-bezier(0.4, 0, 0.2, 1)}.mdc-notched-outline .mdc-floating-label{max-width:calc(100% + 1px)}.mdc-notched-outline--upgraded .mdc-floating-label--float-above{max-width:calc(133.3333333333% + 1px)}\"] }]\n }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i1.Directionality }, { type: i2.Platform }, { type: undefined, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [MAT_FORM_FIELD_DEFAULT_OPTIONS]\n }] }, { type: undefined, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [ANIMATION_MODULE_TYPE]\n }] }, { type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }], propDecorators: { _textField: [{\n type: ViewChild,\n args: ['textField']\n }], _iconPrefixContainer: [{\n type: ViewChild,\n args: ['iconPrefixContainer']\n }], _textPrefixContainer: [{\n type: ViewChild,\n args: ['textPrefixContainer']\n }], _iconSuffixContainer: [{\n type: ViewChild,\n args: ['iconSuffixContainer']\n }], _textSuffixContainer: [{\n type: ViewChild,\n args: ['textSuffixContainer']\n }], _floatingLabel: [{\n type: ViewChild,\n args: [MatFormFieldFloatingLabel]\n }], _notchedOutline: [{\n type: ViewChild,\n args: [MatFormFieldNotchedOutline]\n }], _lineRipple: [{\n type: ViewChild,\n args: [MatFormFieldLineRipple]\n }], _formFieldControl: [{\n type: ContentChild,\n args: [MatFormFieldControl]\n }], _prefixChildren: [{\n type: ContentChildren,\n args: [MAT_PREFIX, { descendants: true }]\n }], _suffixChildren: [{\n type: ContentChildren,\n args: [MAT_SUFFIX, { descendants: true }]\n }], _errorChildren: [{\n type: ContentChildren,\n args: [MAT_ERROR, { descendants: true }]\n }], _hintChildren: [{\n type: ContentChildren,\n args: [MatHint, { descendants: true }]\n }], hideRequiredMarker: [{\n type: Input\n }], color: [{\n type: Input\n }], floatLabel: [{\n type: Input\n }], appearance: [{\n type: Input\n }], subscriptSizing: [{\n type: Input\n }], hintLabel: [{\n type: Input\n }] } });\n\nclass MatFormFieldModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatFormFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatFormFieldModule, imports: [MatCommonModule,\n CommonModule,\n ObserversModule,\n MatFormField,\n MatLabel,\n MatError,\n MatHint,\n MatPrefix,\n MatSuffix], exports: [MatFormField, MatLabel, MatHint, MatError, MatPrefix, MatSuffix, MatCommonModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatFormFieldModule, imports: [MatCommonModule,\n CommonModule,\n ObserversModule, MatCommonModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatFormFieldModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [\n MatCommonModule,\n CommonModule,\n ObserversModule,\n MatFormField,\n MatLabel,\n MatError,\n MatHint,\n MatPrefix,\n MatSuffix,\n ],\n exports: [MatFormField, MatLabel, MatHint, MatError, MatPrefix, MatSuffix, MatCommonModule],\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { MAT_ERROR, MAT_FORM_FIELD, MAT_FORM_FIELD_DEFAULT_OPTIONS, MAT_PREFIX, MAT_SUFFIX, MatError, MatFormField, MatFormFieldControl, MatFormFieldModule, MatHint, MatLabel, MatPrefix, MatSuffix, getMatFormFieldDuplicatedHintError, getMatFormFieldMissingControlError, getMatFormFieldPlaceholderConflictError, matFormFieldAnimations };\n","import { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport * as i1 from '@angular/cdk/platform';\nimport { getSupportedInputTypes } from '@angular/cdk/platform';\nimport * as i4 from '@angular/cdk/text-field';\nimport { TextFieldModule } from '@angular/cdk/text-field';\nimport * as i0 from '@angular/core';\nimport { InjectionToken, Directive, Optional, Self, Inject, Input, NgModule } from '@angular/core';\nimport * as i2 from '@angular/forms';\nimport { Validators } from '@angular/forms';\nimport * as i3 from '@angular/material/core';\nimport { _ErrorStateTracker, MatCommonModule } from '@angular/material/core';\nimport * as i5 from '@angular/material/form-field';\nimport { MAT_FORM_FIELD, MatFormFieldControl, MatFormFieldModule } from '@angular/material/form-field';\nexport { MatError, MatFormField, MatHint, MatLabel, MatPrefix, MatSuffix } from '@angular/material/form-field';\nimport { Subject } from 'rxjs';\n\n/** @docs-private */\nfunction getMatInputUnsupportedTypeError(type) {\n return Error(`Input type \"${type}\" isn't supported by matInput.`);\n}\n\n/**\n * This token is used to inject the object whose value should be set into `MatInput`. If none is\n * provided, the native `HTMLInputElement` is used. Directives like `MatDatepickerInput` can provide\n * themselves for this token, in order to make `MatInput` delegate the getting and setting of the\n * value to them.\n */\nconst MAT_INPUT_VALUE_ACCESSOR = new InjectionToken('MAT_INPUT_VALUE_ACCESSOR');\n\n// Invalid input type. Using one of these will throw an MatInputUnsupportedTypeError.\nconst MAT_INPUT_INVALID_TYPES = [\n 'button',\n 'checkbox',\n 'file',\n 'hidden',\n 'image',\n 'radio',\n 'range',\n 'reset',\n 'submit',\n];\nlet nextUniqueId = 0;\nclass MatInput {\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n get disabled() {\n return this._disabled;\n }\n set disabled(value) {\n this._disabled = coerceBooleanProperty(value);\n // Browsers may not fire the blur event if the input is disabled too quickly.\n // Reset from here to ensure that the element doesn't become stuck.\n if (this.focused) {\n this.focused = false;\n this.stateChanges.next();\n }\n }\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n get id() {\n return this._id;\n }\n set id(value) {\n this._id = value || this._uid;\n }\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n get required() {\n return this._required ?? this.ngControl?.control?.hasValidator(Validators.required) ?? false;\n }\n set required(value) {\n this._required = coerceBooleanProperty(value);\n }\n /** Input type of the element. */\n get type() {\n return this._type;\n }\n set type(value) {\n this._type = value || 'text';\n this._validateType();\n // When using Angular inputs, developers are no longer able to set the properties on the native\n // input element. To ensure that bindings for `type` work, we need to sync the setter\n // with the native property. Textarea elements don't support the type property or attribute.\n if (!this._isTextarea && getSupportedInputTypes().has(this._type)) {\n this._elementRef.nativeElement.type = this._type;\n }\n this._ensureWheelDefaultBehavior();\n }\n /** An object used to control when error messages are shown. */\n get errorStateMatcher() {\n return this._errorStateTracker.matcher;\n }\n set errorStateMatcher(value) {\n this._errorStateTracker.matcher = value;\n }\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n get value() {\n return this._inputValueAccessor.value;\n }\n set value(value) {\n if (value !== this.value) {\n this._inputValueAccessor.value = value;\n this.stateChanges.next();\n }\n }\n /** Whether the element is readonly. */\n get readonly() {\n return this._readonly;\n }\n set readonly(value) {\n this._readonly = coerceBooleanProperty(value);\n }\n /** Whether the input is in an error state. */\n get errorState() {\n return this._errorStateTracker.errorState;\n }\n set errorState(value) {\n this._errorStateTracker.errorState = value;\n }\n constructor(_elementRef, _platform, ngControl, parentForm, parentFormGroup, defaultErrorStateMatcher, inputValueAccessor, _autofillMonitor, _ngZone, \n // TODO: Remove this once the legacy appearance has been removed. We only need\n // to inject the form field for determining whether the placeholder has been promoted.\n _formField) {\n this._elementRef = _elementRef;\n this._platform = _platform;\n this.ngControl = ngControl;\n this._autofillMonitor = _autofillMonitor;\n this._ngZone = _ngZone;\n this._formField = _formField;\n this._uid = `mat-input-${nextUniqueId++}`;\n this._webkitBlinkWheelListenerAttached = false;\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n this.focused = false;\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n this.stateChanges = new Subject();\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n this.controlType = 'mat-input';\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n this.autofilled = false;\n this._disabled = false;\n this._type = 'text';\n this._readonly = false;\n this._neverEmptyInputTypes = [\n 'date',\n 'datetime',\n 'datetime-local',\n 'month',\n 'time',\n 'week',\n ].filter(t => getSupportedInputTypes().has(t));\n this._iOSKeyupListener = (event) => {\n const el = event.target;\n // Note: We specifically check for 0, rather than `!el.selectionStart`, because the two\n // indicate different things. If the value is 0, it means that the caret is at the start\n // of the input, whereas a value of `null` means that the input doesn't support\n // manipulating the selection range. Inputs that don't support setting the selection range\n // will throw an error so we want to avoid calling `setSelectionRange` on them. See:\n // https://html.spec.whatwg.org/multipage/input.html#do-not-apply\n if (!el.value && el.selectionStart === 0 && el.selectionEnd === 0) {\n // Note: Just setting `0, 0` doesn't fix the issue. Setting\n // `1, 1` fixes it for the first time that you type text and\n // then hold delete. Toggling to `1, 1` and then back to\n // `0, 0` seems to completely fix it.\n el.setSelectionRange(1, 1);\n el.setSelectionRange(0, 0);\n }\n };\n this._webkitBlinkWheelListener = () => {\n // This is a noop function and is used to enable mouse wheel input\n // on number inputs\n // on blink and webkit browsers.\n };\n const element = this._elementRef.nativeElement;\n const nodeName = element.nodeName.toLowerCase();\n // If no input value accessor was explicitly specified, use the element as the input value\n // accessor.\n this._inputValueAccessor = inputValueAccessor || element;\n this._previousNativeValue = this.value;\n // Force setter to be called in case id was not specified.\n this.id = this.id;\n // On some versions of iOS the caret gets stuck in the wrong place when holding down the delete\n // key. In order to get around this we need to \"jiggle\" the caret loose. Since this bug only\n // exists on iOS, we only bother to install the listener on iOS.\n if (_platform.IOS) {\n _ngZone.runOutsideAngular(() => {\n _elementRef.nativeElement.addEventListener('keyup', this._iOSKeyupListener);\n });\n }\n this._errorStateTracker = new _ErrorStateTracker(defaultErrorStateMatcher, ngControl, parentFormGroup, parentForm, this.stateChanges);\n this._isServer = !this._platform.isBrowser;\n this._isNativeSelect = nodeName === 'select';\n this._isTextarea = nodeName === 'textarea';\n this._isInFormField = !!_formField;\n if (this._isNativeSelect) {\n this.controlType = element.multiple\n ? 'mat-native-select-multiple'\n : 'mat-native-select';\n }\n }\n ngAfterViewInit() {\n if (this._platform.isBrowser) {\n this._autofillMonitor.monitor(this._elementRef.nativeElement).subscribe(event => {\n this.autofilled = event.isAutofilled;\n this.stateChanges.next();\n });\n }\n }\n ngOnChanges() {\n this.stateChanges.next();\n }\n ngOnDestroy() {\n this.stateChanges.complete();\n if (this._platform.isBrowser) {\n this._autofillMonitor.stopMonitoring(this._elementRef.nativeElement);\n }\n if (this._platform.IOS) {\n this._elementRef.nativeElement.removeEventListener('keyup', this._iOSKeyupListener);\n }\n if (this._webkitBlinkWheelListenerAttached) {\n this._elementRef.nativeElement.removeEventListener('wheel', this._webkitBlinkWheelListener);\n }\n }\n ngDoCheck() {\n if (this.ngControl) {\n // We need to re-evaluate this on every change detection cycle, because there are some\n // error triggers that we can't subscribe to (e.g. parent form submissions). This means\n // that whatever logic is in here has to be super lean or we risk destroying the performance.\n this.updateErrorState();\n // Since the input isn't a `ControlValueAccessor`, we don't have a good way of knowing when\n // the disabled state has changed. We can't use the `ngControl.statusChanges`, because it\n // won't fire if the input is disabled with `emitEvents = false`, despite the input becoming\n // disabled.\n if (this.ngControl.disabled !== null && this.ngControl.disabled !== this.disabled) {\n this.disabled = this.ngControl.disabled;\n this.stateChanges.next();\n }\n }\n // We need to dirty-check the native element's value, because there are some cases where\n // we won't be notified when it changes (e.g. the consumer isn't using forms or they're\n // updating the value using `emitEvent: false`).\n this._dirtyCheckNativeValue();\n // We need to dirty-check and set the placeholder attribute ourselves, because whether it's\n // present or not depends on a query which is prone to \"changed after checked\" errors.\n this._dirtyCheckPlaceholder();\n }\n /** Focuses the input. */\n focus(options) {\n this._elementRef.nativeElement.focus(options);\n }\n /** Refreshes the error state of the input. */\n updateErrorState() {\n this._errorStateTracker.updateErrorState();\n }\n /** Callback for the cases where the focused state of the input changes. */\n _focusChanged(isFocused) {\n if (isFocused !== this.focused) {\n this.focused = isFocused;\n this.stateChanges.next();\n }\n }\n _onInput() {\n // This is a noop function and is used to let Angular know whenever the value changes.\n // Angular will run a new change detection each time the `input` event has been dispatched.\n // It's necessary that Angular recognizes the value change, because when floatingLabel\n // is set to false and Angular forms aren't used, the placeholder won't recognize the\n // value changes and will not disappear.\n // Listening to the input event wouldn't be necessary when the input is using the\n // FormsModule or ReactiveFormsModule, because Angular forms also listens to input events.\n }\n /** Does some manual dirty checking on the native input `value` property. */\n _dirtyCheckNativeValue() {\n const newValue = this._elementRef.nativeElement.value;\n if (this._previousNativeValue !== newValue) {\n this._previousNativeValue = newValue;\n this.stateChanges.next();\n }\n }\n /** Does some manual dirty checking on the native input `placeholder` attribute. */\n _dirtyCheckPlaceholder() {\n const placeholder = this._getPlaceholder();\n if (placeholder !== this._previousPlaceholder) {\n const element = this._elementRef.nativeElement;\n this._previousPlaceholder = placeholder;\n placeholder\n ? element.setAttribute('placeholder', placeholder)\n : element.removeAttribute('placeholder');\n }\n }\n /** Gets the current placeholder of the form field. */\n _getPlaceholder() {\n return this.placeholder || null;\n }\n /** Make sure the input is a supported type. */\n _validateType() {\n if (MAT_INPUT_INVALID_TYPES.indexOf(this._type) > -1 &&\n (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw getMatInputUnsupportedTypeError(this._type);\n }\n }\n /** Checks whether the input type is one of the types that are never empty. */\n _isNeverEmpty() {\n return this._neverEmptyInputTypes.indexOf(this._type) > -1;\n }\n /** Checks whether the input is invalid based on the native validation. */\n _isBadInput() {\n // The `validity` property won't be present on platform-server.\n let validity = this._elementRef.nativeElement.validity;\n return validity && validity.badInput;\n }\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n get empty() {\n return (!this._isNeverEmpty() &&\n !this._elementRef.nativeElement.value &&\n !this._isBadInput() &&\n !this.autofilled);\n }\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n get shouldLabelFloat() {\n if (this._isNativeSelect) {\n // For a single-selection ``, the label *always* floats to avoid\n // overlapping the label with the options.\n const selectElement = this._elementRef.nativeElement;\n const firstOption = selectElement.options[0];\n // On most browsers the `selectedIndex` will always be 0, however on IE and Edge it'll be\n // -1 if the `value` is set to something, that isn't in the list of options, at a later point.\n return (this.focused ||\n selectElement.multiple ||\n !this.empty ||\n !!(selectElement.selectedIndex > -1 && firstOption && firstOption.label));\n }\n else {\n return this.focused || !this.empty;\n }\n }\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n setDescribedByIds(ids) {\n if (ids.length) {\n this._elementRef.nativeElement.setAttribute('aria-describedby', ids.join(' '));\n }\n else {\n this._elementRef.nativeElement.removeAttribute('aria-describedby');\n }\n }\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n onContainerClick() {\n // Do not re-focus the input element if the element is already focused. Otherwise it can happen\n // that someone clicks on a time input and the cursor resets to the \"hours\" field while the\n // \"minutes\" field was actually clicked. See: https://github.com/angular/components/issues/12849\n if (!this.focused) {\n this.focus();\n }\n }\n /** Whether the form control is a native select that is displayed inline. */\n _isInlineSelect() {\n const element = this._elementRef.nativeElement;\n return this._isNativeSelect && (element.multiple || element.size > 1);\n }\n /**\n * In blink and webkit browsers a focused number input does not increment or decrement its value\n * on mouse wheel interaction unless a wheel event listener is attached to it or one of its ancestors or a passive wheel listener is attached somewhere in the DOM.\n * For example: Hitting a tooltip once enables the mouse wheel input for all number inputs as long as it exists.\n * In order to get reliable and intuitive behavior we apply a wheel event on our own\n * thus making sure increment and decrement by mouse wheel works every time.\n * @docs-private\n */\n _ensureWheelDefaultBehavior() {\n if (!this._webkitBlinkWheelListenerAttached &&\n this._type === 'number' &&\n (this._platform.BLINK || this._platform.WEBKIT)) {\n this._ngZone.runOutsideAngular(() => {\n this._elementRef.nativeElement.addEventListener('wheel', this._webkitBlinkWheelListener);\n });\n this._webkitBlinkWheelListenerAttached = true;\n }\n if (this._webkitBlinkWheelListenerAttached && this._type !== 'number') {\n this._elementRef.nativeElement.removeEventListener('wheel', this._webkitBlinkWheelListener);\n this._webkitBlinkWheelListenerAttached = true;\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatInput, deps: [{ token: i0.ElementRef }, { token: i1.Platform }, { token: i2.NgControl, optional: true, self: true }, { token: i2.NgForm, optional: true }, { token: i2.FormGroupDirective, optional: true }, { token: i3.ErrorStateMatcher }, { token: MAT_INPUT_VALUE_ACCESSOR, optional: true, self: true }, { token: i4.AutofillMonitor }, { token: i0.NgZone }, { token: MAT_FORM_FIELD, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"18.2.0-next.2\", type: MatInput, isStandalone: true, selector: \"input[matInput], textarea[matInput], select[matNativeControl],\\n input[matNativeControl], textarea[matNativeControl]\", inputs: { disabled: \"disabled\", id: \"id\", placeholder: \"placeholder\", name: \"name\", required: \"required\", type: \"type\", errorStateMatcher: \"errorStateMatcher\", userAriaDescribedBy: [\"aria-describedby\", \"userAriaDescribedBy\"], value: \"value\", readonly: \"readonly\" }, host: { listeners: { \"focus\": \"_focusChanged(true)\", \"blur\": \"_focusChanged(false)\", \"input\": \"_onInput()\" }, properties: { \"class.mat-input-server\": \"_isServer\", \"class.mat-mdc-form-field-textarea-control\": \"_isInFormField && _isTextarea\", \"class.mat-mdc-form-field-input-control\": \"_isInFormField\", \"class.mdc-text-field__input\": \"_isInFormField\", \"class.mat-mdc-native-select-inline\": \"_isInlineSelect()\", \"id\": \"id\", \"disabled\": \"disabled\", \"required\": \"required\", \"attr.name\": \"name || null\", \"attr.readonly\": \"readonly && !_isNativeSelect || null\", \"attr.aria-invalid\": \"(empty && required) ? null : errorState\", \"attr.aria-required\": \"required\", \"attr.id\": \"id\" }, classAttribute: \"mat-mdc-input-element\" }, providers: [{ provide: MatFormFieldControl, useExisting: MatInput }], exportAs: [\"matInput\"], usesOnChanges: true, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatInput, decorators: [{\n type: Directive,\n args: [{\n selector: `input[matInput], textarea[matInput], select[matNativeControl],\n input[matNativeControl], textarea[matNativeControl]`,\n exportAs: 'matInput',\n host: {\n 'class': 'mat-mdc-input-element',\n // The BaseMatInput parent class adds `mat-input-element`, `mat-form-field-control` and\n // `mat-form-field-autofill-control` to the CSS class list, but this should not be added for\n // this MDC equivalent input.\n '[class.mat-input-server]': '_isServer',\n '[class.mat-mdc-form-field-textarea-control]': '_isInFormField && _isTextarea',\n '[class.mat-mdc-form-field-input-control]': '_isInFormField',\n '[class.mdc-text-field__input]': '_isInFormField',\n '[class.mat-mdc-native-select-inline]': '_isInlineSelect()',\n // Native input properties that are overwritten by Angular inputs need to be synced with\n // the native input element. Otherwise property bindings for those don't work.\n '[id]': 'id',\n '[disabled]': 'disabled',\n '[required]': 'required',\n '[attr.name]': 'name || null',\n '[attr.readonly]': 'readonly && !_isNativeSelect || null',\n // Only mark the input as invalid for assistive technology if it has a value since the\n // state usually overlaps with `aria-required` when the input is empty and can be redundant.\n '[attr.aria-invalid]': '(empty && required) ? null : errorState',\n '[attr.aria-required]': 'required',\n // Native input properties that are overwritten by Angular inputs need to be synced with\n // the native input element. Otherwise property bindings for those don't work.\n '[attr.id]': 'id',\n '(focus)': '_focusChanged(true)',\n '(blur)': '_focusChanged(false)',\n '(input)': '_onInput()',\n },\n providers: [{ provide: MatFormFieldControl, useExisting: MatInput }],\n standalone: true,\n }]\n }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.Platform }, { type: i2.NgControl, decorators: [{\n type: Optional\n }, {\n type: Self\n }] }, { type: i2.NgForm, decorators: [{\n type: Optional\n }] }, { type: i2.FormGroupDirective, decorators: [{\n type: Optional\n }] }, { type: i3.ErrorStateMatcher }, { type: undefined, decorators: [{\n type: Optional\n }, {\n type: Self\n }, {\n type: Inject,\n args: [MAT_INPUT_VALUE_ACCESSOR]\n }] }, { type: i4.AutofillMonitor }, { type: i0.NgZone }, { type: i5.MatFormField, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [MAT_FORM_FIELD]\n }] }], propDecorators: { disabled: [{\n type: Input\n }], id: [{\n type: Input\n }], placeholder: [{\n type: Input\n }], name: [{\n type: Input\n }], required: [{\n type: Input\n }], type: [{\n type: Input\n }], errorStateMatcher: [{\n type: Input\n }], userAriaDescribedBy: [{\n type: Input,\n args: ['aria-describedby']\n }], value: [{\n type: Input\n }], readonly: [{\n type: Input\n }] } });\n\nclass MatInputModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatInputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatInputModule, imports: [MatCommonModule, MatFormFieldModule, MatInput], exports: [MatInput, MatFormFieldModule, TextFieldModule, MatCommonModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatInputModule, imports: [MatCommonModule, MatFormFieldModule, MatFormFieldModule, TextFieldModule, MatCommonModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"18.2.0-next.2\", ngImport: i0, type: MatInputModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [MatCommonModule, MatFormFieldModule, MatInput],\n exports: [MatInput, MatFormFieldModule, TextFieldModule, MatCommonModule],\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { MAT_INPUT_VALUE_ACCESSOR, MatInput, MatInputModule, getMatInputUnsupportedTypeError };\n"],"names":["i0","inject","NgZone","Injectable","Subject","Observable","filter","shareReplay","takeUntil","loopLimitExceededErrorHandler","e","ErrorEvent","message","console","error","SingleBoxSharedResizeObserver","constructor","_box","_destroyed","_resizeSubject","_elementObservables","Map","ResizeObserver","_resizeObserver","entries","next","observe","target","has","set","observer","subscription","subscribe","box","unobserve","unsubscribe","delete","pipe","some","entry","bufferSize","refCount","get","destroy","complete","clear","SharedResizeObserver","_observers","_ngZone","ngDevMode","runOutsideAngular","window","addEventListener","ngOnDestroy","removeEventListener","options","ɵfac","SharedResizeObserver_Factory","__ngFactoryType__","ɵprov","ɵɵdefineInjectable","token","factory","providedIn","ɵsetClassMetadata","type","args","i1","normalizePassiveListenerOptions","EventEmitter","Directive","Output","booleanAttribute","Optional","Inject","Input","NgModule","coerceElement","coerceNumberProperty","EMPTY","fromEvent","auditTime","DOCUMENT","listenerOptions","passive","AutofillMonitor","_platform","_monitoredElements","monitor","elementOrRef","isBrowser","element","info","subject","result","cssClass","listener","event","animationName","classList","contains","add","run","isAutofilled","remove","unlisten","stopMonitoring","forEach","_info","AutofillMonitor_Factory","ɵɵinject","Platform","CdkAutofill","_elementRef","_autofillMonitor","cdkAutofill","ngOnInit","emit","CdkAutofill_Factory","ɵɵdirectiveInject","ElementRef","ɵdir","ɵɵdefineDirective","selectors","outputs","standalone","selector","CdkTextareaAutosize","minRows","_minRows","value","_setMinHeight","maxRows","_maxRows","_setMaxHeight","enabled","_enabled","resizeToFitContent","reset","placeholder","_textareaElement","_cachedPlaceholderHeight","undefined","setAttribute","removeAttribute","_cacheTextareaPlaceholderHeight","document","_previousMinRows","_isViewInited","_handleFocusEvent","_hasFocus","_document","nativeElement","minHeight","_cachedLineHeight","style","maxHeight","ngAfterViewInit","_initialHeight","height","_getWindow","_cacheTextareaLineHeight","textareaClone","cloneNode","rows","position","visibility","border","padding","overflow","parentNode","appendChild","clientHeight","_measureScrollHeight","previousMargin","marginBottom","isFirefox","FIREFOX","needsMarginFiller","measuringClass","scrollHeight","ngDoCheck","force","textarea","_previousValue","Math","max","requestAnimationFrame","_scrollToCaretPosition","setTimeout","_noopInputHandler","_getDocument","doc","defaultView","selectionStart","selectionEnd","isStopped","setSelectionRange","CdkTextareaAutosize_Factory","hostAttrs","hostBindings","CdkTextareaAutosize_HostBindings","rf","ctx","ɵɵlistener","CdkTextareaAutosize_input_HostBindingHandler","inputs","exportAs","features","ɵɵInputTransformsFeature","host","decorators","alias","transform","TextFieldModule","TextFieldModule_Factory","ɵmod","ɵɵdefineNgModule","ɵinj","ɵɵdefineInjector","imports","exports","InjectionToken","Attribute","Component","ChangeDetectionStrategy","ViewEncapsulation","ViewChild","contentChild","Injector","computed","afterRender","ANIMATION_MODULE_TYPE","ContentChild","ContentChildren","coerceBooleanProperty","i2","NgTemplateOutlet","CommonModule","Subscription","merge","trigger","state","transition","animate","ObserversModule","MatCommonModule","_c0","_c1","_c2","_c3","_c4","_c5","_c6","_c7","_c8","_c9","MatFormField_ng_template_0_Conditional_0_Conditional_2_Template","ɵɵelement","MatFormField_ng_template_0_Conditional_0_Template","ɵɵelementStart","ɵɵprojection","ɵɵtemplate","ɵɵelementEnd","ctx_r1","ɵɵnextContext","ɵɵproperty","_shouldLabelFloat","_hasOutline","_labelId","ɵɵattribute","_control","disableAutomaticLabeling","id","ɵɵadvance","ɵɵconditional","hideRequiredMarker","required","MatFormField_ng_template_0_Template","_hasFloatingLabel","MatFormField_Conditional_4_Template","MatFormField_Conditional_6_Conditional_1_ng_template_0_Template","MatFormField_Conditional_6_Conditional_1_Template","labelTemplate_r3","ɵɵreference","MatFormField_Conditional_6_Template","_forceDisplayInfixLabel","MatFormField_Conditional_7_Template","MatFormField_Conditional_8_Template","MatFormField_Conditional_10_ng_template_0_Template","MatFormField_Conditional_10_Template","MatFormField_Conditional_12_Template","MatFormField_Conditional_13_Template","MatFormField_Conditional_14_Template","MatFormField_Case_16_Template","_subscriptAnimationState","MatFormField_Case_17_Conditional_1_Template","ɵɵtext","_hintLabelId","ɵɵtextInterpolate","hintLabel","MatFormField_Case_17_Template","MatLabel","MatLabel_Factory","nextUniqueId$2","MAT_ERROR","MatError","ariaLive","elementRef","MatError_Factory","ɵɵinjectAttribute","hostVars","MatError_HostBindings","ɵɵhostProperty","ɵɵProvidersFeature","provide","useExisting","providers","nextUniqueId$1","MatHint","align","MatHint_Factory","MatHint_HostBindings","ɵɵclassProp","MAT_PREFIX","MatPrefix","_isText","_isTextSelector","MatPrefix_Factory","MAT_SUFFIX","MatSuffix","MatSuffix_Factory","FLOATING_LABEL_PARENT","MatFormFieldFloatingLabel","floating","_floating","monitorResize","_handleResize","_monitorResize","_subscribeToResize","_resizeSubscription","_parent","getWidth","estimateScrollWidth","_handleLabelResized","MatFormFieldFloatingLabel_Factory","MatFormFieldFloatingLabel_HostBindings","htmlEl","offsetParent","scrollWidth","clone","setProperty","documentElement","ACTIVATE_CLASS","DEACTIVATING_CLASS","MatFormFieldLineRipple","ngZone","_handleTransitionEnd","isDeactivating","propertyName","activate","deactivate","MatFormFieldLineRipple_Factory","MatFormFieldNotchedOutline","open","label","querySelector","transitionDuration","_setNotchWidth","labelWidth","_notch","width","NOTCH_ELEMENT_PADDING","NOTCH_ELEMENT_BORDER","MatFormFieldNotchedOutline_Factory","ɵcmp","ɵɵdefineComponent","viewQuery","MatFormFieldNotchedOutline_Query","ɵɵviewQuery","_t","ɵɵqueryRefresh","ɵɵloadQuery","first","MatFormFieldNotchedOutline_HostBindings","ɵɵStandaloneFeature","attrs","ngContentSelectors","decls","vars","consts","template","MatFormFieldNotchedOutline_Template","ɵɵprojectionDef","encapsulation","changeDetection","OnPush","None","matFormFieldAnimations","transitionMessages","opacity","MatFormFieldControl","MatFormFieldControl_Factory","getMatFormFieldPlaceholderConflictError","Error","getMatFormFieldDuplicatedHintError","getMatFormFieldMissingControlError","MAT_FORM_FIELD","MAT_FORM_FIELD_DEFAULT_OPTIONS","nextUniqueId","DEFAULT_APPEARANCE","DEFAULT_FLOAT_LABEL","DEFAULT_SUBSCRIPT_SIZING","FLOATING_LABEL_DEFAULT_DOCKED_TRANSFORM","MatFormField","_hideRequiredMarker","floatLabel","_floatLabel","_defaults","_changeDetectorRef","markForCheck","appearance","_appearance","oldValue","newAppearance","_needsOutlineLabelOffsetUpdate","subscriptSizing","_subscriptSizing","_hintLabel","_processHints","_explicitFormFieldControl","_formFieldControl","_unusedNgZone","_dir","_animationMode","_unusedDocument","_labelChild","color","_hasIconPrefix","_hasTextPrefix","_hasIconSuffix","_hasTextSuffix","_isFocused","_previousControl","_injector","getLabelId","Boolean","_updateFocusState","detectChanges","ngAfterContentInit","_assertFormFieldControl","_initializeSubscript","_initializePrefixAndSuffix","_initializeOutlineLabelOffsetSubscriptions","ngAfterContentChecked","_initializeControl","_stateChanges","_valueChanges","getConnectedOverlayOrigin","_textField","_animateAndLockLabel","previousControl","control","classPrefix","controlType","stateChanges","_syncDescribedByIds","ngControl","valueChanges","_checkPrefixAndSuffixTypes","_prefixChildren","find","p","_suffixChildren","s","changes","_hintChildren","_errorChildren","_validateHints","focused","_lineRipple","toggle","_updateOutlineLabelOffset","injector","change","_shouldAlwaysFloat","length","shouldLabelFloat","_shouldForward","prop","_getDisplayedMessages","errorState","_refreshOutlineNotchWidth","_floatingLabel","_notchedOutline","startHint","endHint","hint","ids","userAriaDescribedBy","push","split","map","setDescribedByIds","floatingLabel","_iconPrefixContainer","_textPrefixContainer","_isAttachedToDom","iconPrefixContainer","textPrefixContainer","iconSuffixContainer","_iconSuffixContainer","textSuffixContainer","_textSuffixContainer","iconPrefixContainerWidth","getBoundingClientRect","textPrefixContainerWidth","iconSuffixContainerWidth","textSuffixContainerWidth","negate","prefixWidth","labelOffset","labelHorizontalOffset","prefixAndSuffixWidth","getRootNode","rootNode","MatFormField_Factory","ChangeDetectorRef","Directionality","contentQueries","MatFormField_ContentQueries","dirIndex","ɵɵcontentQuerySignal","ɵɵcontentQuery","ɵɵqueryAdvance","MatFormField_Query","MatFormField_HostBindings","disabled","autofilled","MatFormField_Template","_r1","ɵɵgetCurrentView","ɵɵtemplateRefExtractor","MatFormField_Template_div_click_2_listener","$event","ɵɵrestoreView","ɵɵresetView","onContainerClick","tmp_16_0","dependencies","styles","data","animation","animations","descendants","MatFormFieldModule","MatFormFieldModule_Factory","getSupportedInputTypes","i4","Self","Validators","i3","_ErrorStateTracker","i5","getMatInputUnsupportedTypeError","MAT_INPUT_VALUE_ACCESSOR","MAT_INPUT_INVALID_TYPES","MatInput","_disabled","_id","_uid","_required","hasValidator","_type","_validateType","_isTextarea","_ensureWheelDefaultBehavior","errorStateMatcher","_errorStateTracker","matcher","_inputValueAccessor","readonly","_readonly","parentForm","parentFormGroup","defaultErrorStateMatcher","inputValueAccessor","_formField","_webkitBlinkWheelListenerAttached","_neverEmptyInputTypes","t","_iOSKeyupListener","el","_webkitBlinkWheelListener","nodeName","toLowerCase","_previousNativeValue","IOS","_isServer","_isNativeSelect","_isInFormField","multiple","ngOnChanges","updateErrorState","_dirtyCheckNativeValue","_dirtyCheckPlaceholder","focus","_focusChanged","isFocused","_onInput","newValue","_getPlaceholder","_previousPlaceholder","indexOf","_isNeverEmpty","_isBadInput","validity","badInput","empty","selectElement","firstOption","selectedIndex","join","_isInlineSelect","size","BLINK","WEBKIT","MatInput_Factory","NgControl","NgForm","FormGroupDirective","ErrorStateMatcher","MatInput_HostBindings","MatInput_focus_HostBindingHandler","MatInput_blur_HostBindingHandler","MatInput_input_HostBindingHandler","name","ɵɵNgOnChangesFeature","MatInputModule","MatInputModule_Factory"],"sourceRoot":"webpack:///","x_google_ignoreList":[0,1,2,3]}