{"version":3,"file":"devextreme-angular-ui-text-box.mjs","sources":["../../../dist/ui/text-box/index.ts","../../../dist/ui/text-box/devextreme-angular-ui-text-box.ts"],"sourcesContent":["/*!\n * devextreme-angular\n * Version: 26.1.3\n * Build date: Wed Jun 10 2026\n *\n * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/DevExtreme\n */\n\n/* tslint:disable:max-line-length */\n\n\nimport {\n    TransferState,\n    Component,\n    NgModule,\n    ElementRef,\n    NgZone,\n    PLATFORM_ID,\n    Inject,\n\n    Input,\n    Output,\n    OnDestroy,\n    EventEmitter,\n    forwardRef,\n    HostListener,\n    OnChanges,\n    DoCheck,\n    SimpleChanges,\n    ContentChildren,\n    QueryList\n} from '@angular/core';\n\n\nimport type { TextBoxPredefinedButton, TextEditorButton, LabelMode, MaskMode, EditorStyle, ValidationMessageMode, Position, ValidationStatus } from 'devextreme/common';\nimport type { TextBoxType, ChangeEvent, ContentReadyEvent, CopyEvent, CutEvent, DisposingEvent, EnterKeyEvent, FocusInEvent, FocusOutEvent, InitializedEvent, InputEvent, KeyDownEvent, KeyUpEvent, OptionChangedEvent, PasteEvent, ValueChangedEvent } from 'devextreme/ui/text_box';\n\nimport DxTextBox from 'devextreme/ui/text_box';\n\nimport {\n    ControlValueAccessor,\n    NG_VALUE_ACCESSOR\n} from '@angular/forms';\n\nimport {\n    DxComponent,\n    DxTemplateHost,\n    DxIntegrationModule,\n    DxTemplateModule,\n    NestedOptionHost,\n    IterableDifferHelper,\n    WatcherHelper,\n    CollectionNestedOption,\n} from 'devextreme-angular/core';\n\nimport { DxiButtonModule } from 'devextreme-angular/ui/nested';\nimport { DxoOptionsModule } from 'devextreme-angular/ui/nested';\n\nimport { DxiTextBoxButtonModule } from 'devextreme-angular/ui/text-box/nested';\nimport { DxoTextBoxOptionsModule } from 'devextreme-angular/ui/text-box/nested';\nimport { \n           PROPERTY_TOKEN_buttons,\n     } from 'devextreme-angular/core/tokens';\n\n\n\nconst CUSTOM_VALUE_ACCESSOR_PROVIDER = {\n    provide: NG_VALUE_ACCESSOR,\n    useExisting: forwardRef(() => DxTextBoxComponent),\n    multi: true\n};\n/**\n * The TextBox is a UI component that enables a user to enter and edit a single line of text.\n\n */\n@Component({\n    selector: 'dx-text-box',\n    template: '',\n    host: { ngSkipHydration: 'true' },\n    imports: [ DxIntegrationModule ],\n    providers: [\n        DxTemplateHost,\n        WatcherHelper,\n        CUSTOM_VALUE_ACCESSOR_PROVIDER,\n        NestedOptionHost,\n        IterableDifferHelper\n    ]\n})\nexport class DxTextBoxComponent extends DxComponent implements OnDestroy, ControlValueAccessor, OnChanges, DoCheck {\n\n    @ContentChildren(PROPERTY_TOKEN_buttons)\n    set _buttonsContentChildren(value: QueryList<CollectionNestedOption>) {\n        this.setChildren('buttons', value);\n    }\n\n    instance: DxTextBox = null;\n\n    /**\n     * Specifies the shortcut key that sets focus on the UI component.\n    \n     */\n    @Input()\n    get accessKey(): string | undefined {\n        return this._getOption('accessKey');\n    }\n    set accessKey(value: string | undefined) {\n        this._setOption('accessKey', value);\n    }\n\n\n    /**\n     * Specifies whether the UI component changes its visual state as a result of user interaction.\n    \n     */\n    @Input()\n    get activeStateEnabled(): boolean {\n        return this._getOption('activeStateEnabled');\n    }\n    set activeStateEnabled(value: boolean) {\n        this._setOption('activeStateEnabled', value);\n    }\n\n\n    /**\n     * Allows you to add custom buttons to the input text field.\n    \n     */\n    @Input()\n    get buttons(): Array<string | TextBoxPredefinedButton | TextEditorButton> {\n        return this._getOption('buttons');\n    }\n    set buttons(value: Array<string | TextBoxPredefinedButton | TextEditorButton>) {\n        this._setOption('buttons', value);\n    }\n\n\n    /**\n     * Specifies whether the UI component responds to user interaction.\n    \n     */\n    @Input()\n    get disabled(): boolean {\n        return this._getOption('disabled');\n    }\n    set disabled(value: boolean) {\n        this._setOption('disabled', value);\n    }\n\n\n    /**\n     * Specifies the global attributes to be attached to the UI component&apos;s container element.\n    \n     */\n    @Input()\n    get elementAttr(): Record<string, any> {\n        return this._getOption('elementAttr');\n    }\n    set elementAttr(value: Record<string, any>) {\n        this._setOption('elementAttr', value);\n    }\n\n\n    /**\n     * Specifies whether the UI component can be focused using keyboard navigation.\n    \n     */\n    @Input()\n    get focusStateEnabled(): boolean {\n        return this._getOption('focusStateEnabled');\n    }\n    set focusStateEnabled(value: boolean) {\n        this._setOption('focusStateEnabled', value);\n    }\n\n\n    /**\n     * Specifies the UI component&apos;s height.\n    \n     */\n    @Input()\n    get height(): number | string | undefined {\n        return this._getOption('height');\n    }\n    set height(value: number | string | undefined) {\n        this._setOption('height', value);\n    }\n\n\n    /**\n     * Specifies text for a hint that appears when a user pauses on the UI component.\n    \n     */\n    @Input()\n    get hint(): string | undefined {\n        return this._getOption('hint');\n    }\n    set hint(value: string | undefined) {\n        this._setOption('hint', value);\n    }\n\n\n    /**\n     * Specifies whether the UI component changes its state when a user pauses on it.\n    \n     */\n    @Input()\n    get hoverStateEnabled(): boolean {\n        return this._getOption('hoverStateEnabled');\n    }\n    set hoverStateEnabled(value: boolean) {\n        this._setOption('hoverStateEnabled', value);\n    }\n\n\n    /**\n     * Specifies the attributes to be passed on to the underlying HTML element.\n    \n     */\n    @Input()\n    get inputAttr(): any {\n        return this._getOption('inputAttr');\n    }\n    set inputAttr(value: any) {\n        this._setOption('inputAttr', value);\n    }\n\n\n    /**\n     * Specifies whether the component&apos;s current value differs from the initial value.\n    \n     */\n    @Input()\n    get isDirty(): boolean {\n        return this._getOption('isDirty');\n    }\n    set isDirty(value: boolean) {\n        this._setOption('isDirty', value);\n    }\n\n\n    /**\n     * Specifies or indicates whether the editor&apos;s value is valid.\n    \n     */\n    @Input()\n    get isValid(): boolean {\n        return this._getOption('isValid');\n    }\n    set isValid(value: boolean) {\n        this._setOption('isValid', value);\n    }\n\n\n    /**\n     * Specifies a text string used to annotate the editor&apos;s value.\n    \n     */\n    @Input()\n    get label(): string {\n        return this._getOption('label');\n    }\n    set label(value: string) {\n        this._setOption('label', value);\n    }\n\n\n    /**\n     * Specifies the label&apos;s display mode.\n    \n     */\n    @Input()\n    get labelMode(): LabelMode {\n        return this._getOption('labelMode');\n    }\n    set labelMode(value: LabelMode) {\n        this._setOption('labelMode', value);\n    }\n\n\n    /**\n     * The editor mask that specifies a custom input format.\n    \n     */\n    @Input()\n    get mask(): string {\n        return this._getOption('mask');\n    }\n    set mask(value: string) {\n        this._setOption('mask', value);\n    }\n\n\n    /**\n     * Specifies a mask placeholder. A single character is recommended.\n    \n     */\n    @Input()\n    get maskChar(): string {\n        return this._getOption('maskChar');\n    }\n    set maskChar(value: string) {\n        this._setOption('maskChar', value);\n    }\n\n\n    /**\n     * A message displayed when the entered text does not match the specified pattern.\n    \n     */\n    @Input()\n    get maskInvalidMessage(): string {\n        return this._getOption('maskInvalidMessage');\n    }\n    set maskInvalidMessage(value: string) {\n        this._setOption('maskInvalidMessage', value);\n    }\n\n\n    /**\n     * Specifies custom mask rules.\n    \n     */\n    @Input()\n    get maskRules(): any {\n        return this._getOption('maskRules');\n    }\n    set maskRules(value: any) {\n        this._setOption('maskRules', value);\n    }\n\n\n    /**\n     * Specifies the maximum number of characters you can enter into the textbox.\n    \n     */\n    @Input()\n    get maxLength(): number | string {\n        return this._getOption('maxLength');\n    }\n    set maxLength(value: number | string) {\n        this._setOption('maxLength', value);\n    }\n\n\n    /**\n     * The &apos;mode&apos; attribute value of the actual HTML input element representing the text box.\n    \n     */\n    @Input()\n    get mode(): TextBoxType {\n        return this._getOption('mode');\n    }\n    set mode(value: TextBoxType) {\n        this._setOption('mode', value);\n    }\n\n\n    /**\n     * The value to be assigned to the `name` attribute of the underlying HTML element.\n    \n     */\n    @Input()\n    get name(): string {\n        return this._getOption('name');\n    }\n    set name(value: string) {\n        this._setOption('name', value);\n    }\n\n\n    /**\n     * Specifies a text string displayed when the editor&apos;s value is empty.\n    \n     */\n    @Input()\n    get placeholder(): string {\n        return this._getOption('placeholder');\n    }\n    set placeholder(value: string) {\n        this._setOption('placeholder', value);\n    }\n\n\n    /**\n     * Specifies whether the editor is read-only.\n    \n     */\n    @Input()\n    get readOnly(): boolean {\n        return this._getOption('readOnly');\n    }\n    set readOnly(value: boolean) {\n        this._setOption('readOnly', value);\n    }\n\n\n    /**\n     * Switches the UI component to a right-to-left representation.\n    \n     */\n    @Input()\n    get rtlEnabled(): boolean {\n        return this._getOption('rtlEnabled');\n    }\n    set rtlEnabled(value: boolean) {\n        this._setOption('rtlEnabled', value);\n    }\n\n\n    /**\n     * Specifies whether to display the Clear button in the UI component.\n    \n     */\n    @Input()\n    get showClearButton(): boolean {\n        return this._getOption('showClearButton');\n    }\n    set showClearButton(value: boolean) {\n        this._setOption('showClearButton', value);\n    }\n\n\n    /**\n     * Specifies when the UI component shows the mask. Applies only if useMaskedValue is true.\n    \n     */\n    @Input()\n    get showMaskMode(): MaskMode {\n        return this._getOption('showMaskMode');\n    }\n    set showMaskMode(value: MaskMode) {\n        this._setOption('showMaskMode', value);\n    }\n\n\n    /**\n     * Specifies whether or not the UI component checks the inner text for spelling mistakes.\n    \n     */\n    @Input()\n    get spellcheck(): boolean {\n        return this._getOption('spellcheck');\n    }\n    set spellcheck(value: boolean) {\n        this._setOption('spellcheck', value);\n    }\n\n\n    /**\n     * Specifies how the UI component&apos;s text field is styled.\n    \n     */\n    @Input()\n    get stylingMode(): EditorStyle {\n        return this._getOption('stylingMode');\n    }\n    set stylingMode(value: EditorStyle) {\n        this._setOption('stylingMode', value);\n    }\n\n\n    /**\n     * Specifies the number of the element when the Tab key is used for navigating.\n    \n     */\n    @Input()\n    get tabIndex(): number {\n        return this._getOption('tabIndex');\n    }\n    set tabIndex(value: number) {\n        this._setOption('tabIndex', value);\n    }\n\n\n    /**\n     * The read-only property that holds the text displayed by the UI component input element.\n    \n     */\n    @Input()\n    get text(): string {\n        return this._getOption('text');\n    }\n    set text(value: string) {\n        this._setOption('text', value);\n    }\n\n\n    /**\n     * Specifies whether the value should contain mask characters or not.\n    \n     */\n    @Input()\n    get useMaskedValue(): boolean {\n        return this._getOption('useMaskedValue');\n    }\n    set useMaskedValue(value: boolean) {\n        this._setOption('useMaskedValue', value);\n    }\n\n\n    /**\n     * Information on the broken validation rule. Contains the first item from the validationErrors array.\n    \n     */\n    @Input()\n    get validationError(): any {\n        return this._getOption('validationError');\n    }\n    set validationError(value: any) {\n        this._setOption('validationError', value);\n    }\n\n\n    /**\n     * An array of validation errors.\n    \n     */\n    @Input()\n    get validationErrors(): Array<any> {\n        return this._getOption('validationErrors');\n    }\n    set validationErrors(value: Array<any>) {\n        this._setOption('validationErrors', value);\n    }\n\n\n    /**\n     * Specifies how the message about the validation rules that are not satisfied by this editor&apos;s value is displayed.\n    \n     */\n    @Input()\n    get validationMessageMode(): ValidationMessageMode {\n        return this._getOption('validationMessageMode');\n    }\n    set validationMessageMode(value: ValidationMessageMode) {\n        this._setOption('validationMessageMode', value);\n    }\n\n\n    /**\n     * Specifies the position of a validation message relative to the component. The validation message describes the validation rules that this component&apos;s value does not satisfy.\n    \n     */\n    @Input()\n    get validationMessagePosition(): Position {\n        return this._getOption('validationMessagePosition');\n    }\n    set validationMessagePosition(value: Position) {\n        this._setOption('validationMessagePosition', value);\n    }\n\n\n    /**\n     * Indicates or specifies the current validation status.\n    \n     */\n    @Input()\n    get validationStatus(): ValidationStatus {\n        return this._getOption('validationStatus');\n    }\n    set validationStatus(value: ValidationStatus) {\n        this._setOption('validationStatus', value);\n    }\n\n\n    /**\n     * Specifies a value the UI component displays.\n    \n     */\n    @Input()\n    get value(): string {\n        return this._getOption('value');\n    }\n    set value(value: string) {\n        this._setOption('value', value);\n    }\n\n\n    /**\n     * Specifies the DOM events after which the UI component&apos;s value should be updated.\n    \n     */\n    @Input()\n    get valueChangeEvent(): string {\n        return this._getOption('valueChangeEvent');\n    }\n    set valueChangeEvent(value: string) {\n        this._setOption('valueChangeEvent', value);\n    }\n\n\n    /**\n     * Specifies whether the UI component is visible.\n    \n     */\n    @Input()\n    get visible(): boolean {\n        return this._getOption('visible');\n    }\n    set visible(value: boolean) {\n        this._setOption('visible', value);\n    }\n\n\n    /**\n     * Specifies the UI component&apos;s width.\n    \n     */\n    @Input()\n    get width(): number | string | undefined {\n        return this._getOption('width');\n    }\n    set width(value: number | string | undefined) {\n        this._setOption('width', value);\n    }\n\n    /**\n    \n     * A function that is executed when the UI component loses focus after the text field&apos;s content was changed using the keyboard.\n    \n    \n     */\n    @Output() onChange: EventEmitter<ChangeEvent>;\n\n    /**\n    \n     * A function that is executed when the UI component is rendered and each time the component is repainted.\n    \n    \n     */\n    @Output() onContentReady: EventEmitter<ContentReadyEvent>;\n\n    /**\n    \n     * A function that is executed when the UI component&apos;s input has been copied.\n    \n    \n     */\n    @Output() onCopy: EventEmitter<CopyEvent>;\n\n    /**\n    \n     * A function that is executed when the UI component&apos;s input has been cut.\n    \n    \n     */\n    @Output() onCut: EventEmitter<CutEvent>;\n\n    /**\n    \n     * A function that is executed before the UI component is disposed of.\n    \n    \n     */\n    @Output() onDisposing: EventEmitter<DisposingEvent>;\n\n    /**\n    \n     * A function that is executed when the Enter key has been pressed while the UI component is focused.\n    \n    \n     */\n    @Output() onEnterKey: EventEmitter<EnterKeyEvent>;\n\n    /**\n    \n     * A function that is executed when the UI component gets focus.\n    \n    \n     */\n    @Output() onFocusIn: EventEmitter<FocusInEvent>;\n\n    /**\n    \n     * A function that is executed when the UI component loses focus.\n    \n    \n     */\n    @Output() onFocusOut: EventEmitter<FocusOutEvent>;\n\n    /**\n    \n     * A function used in JavaScript frameworks to save the UI component instance.\n    \n    \n     */\n    @Output() onInitialized: EventEmitter<InitializedEvent>;\n\n    /**\n    \n     * A function that is executed each time the UI component&apos;s input is changed while the UI component is focused.\n    \n    \n     */\n    @Output() onInput: EventEmitter<InputEvent>;\n\n    /**\n    \n     * A function that is executed when a user is pressing a key on the keyboard.\n    \n    \n     */\n    @Output() onKeyDown: EventEmitter<KeyDownEvent>;\n\n    /**\n    \n     * A function that is executed when a user releases a key on the keyboard.\n    \n    \n     */\n    @Output() onKeyUp: EventEmitter<KeyUpEvent>;\n\n    /**\n    \n     * A function that is executed after a UI component property is changed.\n    \n    \n     */\n    @Output() onOptionChanged: EventEmitter<OptionChangedEvent>;\n\n    /**\n    \n     * A function that is executed when the UI component&apos;s input has been pasted.\n    \n    \n     */\n    @Output() onPaste: EventEmitter<PasteEvent>;\n\n    /**\n    \n     * A function that is executed after the UI component&apos;s value is changed.\n    \n    \n     */\n    @Output() onValueChanged: EventEmitter<ValueChangedEvent>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() accessKeyChange: EventEmitter<string | undefined>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() activeStateEnabledChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() buttonsChange: EventEmitter<Array<string | TextBoxPredefinedButton | TextEditorButton>>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() disabledChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() elementAttrChange: EventEmitter<Record<string, any>>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() focusStateEnabledChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() heightChange: EventEmitter<number | string | undefined>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() hintChange: EventEmitter<string | undefined>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() hoverStateEnabledChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() inputAttrChange: EventEmitter<any>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() isDirtyChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() isValidChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() labelChange: EventEmitter<string>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() labelModeChange: EventEmitter<LabelMode>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() maskChange: EventEmitter<string>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() maskCharChange: EventEmitter<string>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() maskInvalidMessageChange: EventEmitter<string>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() maskRulesChange: EventEmitter<any>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() maxLengthChange: EventEmitter<number | string>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() modeChange: EventEmitter<TextBoxType>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() nameChange: EventEmitter<string>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() placeholderChange: EventEmitter<string>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() readOnlyChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() rtlEnabledChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() showClearButtonChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() showMaskModeChange: EventEmitter<MaskMode>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() spellcheckChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() stylingModeChange: EventEmitter<EditorStyle>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() tabIndexChange: EventEmitter<number>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() textChange: EventEmitter<string>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() useMaskedValueChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() validationErrorChange: EventEmitter<any>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() validationErrorsChange: EventEmitter<Array<any>>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() validationMessageModeChange: EventEmitter<ValidationMessageMode>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() validationMessagePositionChange: EventEmitter<Position>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() validationStatusChange: EventEmitter<ValidationStatus>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() valueChange: EventEmitter<string>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() valueChangeEventChange: EventEmitter<string>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() visibleChange: EventEmitter<boolean>;\n\n    /**\n    \n     * This member supports the internal infrastructure and is not intended to be used directly from your code.\n    \n     */\n    @Output() widthChange: EventEmitter<number | string | undefined>;\n\n    /**\n    \n     * \n    \n    \n     */\n    @Output() onBlur: EventEmitter<any>;\n\n\n    @HostListener('valueChange', ['$event']) change(_) { }\n    @HostListener('onBlur', ['$event']) touched = (_) => {};\n\n\n    constructor(elementRef: ElementRef, ngZone: NgZone, templateHost: DxTemplateHost,\n            private _watcherHelper: WatcherHelper,\n            private _idh: IterableDifferHelper,\n            optionHost: NestedOptionHost,\n            transferState: TransferState,\n            @Inject(PLATFORM_ID) platformId: any) {\n\n        super(elementRef, ngZone, templateHost, _watcherHelper, transferState, platformId);\n\n        this._createEventEmitters([\n            { subscribe: 'change', emit: 'onChange' },\n            { subscribe: 'contentReady', emit: 'onContentReady' },\n            { subscribe: 'copy', emit: 'onCopy' },\n            { subscribe: 'cut', emit: 'onCut' },\n            { subscribe: 'disposing', emit: 'onDisposing' },\n            { subscribe: 'enterKey', emit: 'onEnterKey' },\n            { subscribe: 'focusIn', emit: 'onFocusIn' },\n            { subscribe: 'focusOut', emit: 'onFocusOut' },\n            { subscribe: 'initialized', emit: 'onInitialized' },\n            { subscribe: 'input', emit: 'onInput' },\n            { subscribe: 'keyDown', emit: 'onKeyDown' },\n            { subscribe: 'keyUp', emit: 'onKeyUp' },\n            { subscribe: 'optionChanged', emit: 'onOptionChanged' },\n            { subscribe: 'paste', emit: 'onPaste' },\n            { subscribe: 'valueChanged', emit: 'onValueChanged' },\n            { emit: 'accessKeyChange' },\n            { emit: 'activeStateEnabledChange' },\n            { emit: 'buttonsChange' },\n            { emit: 'disabledChange' },\n            { emit: 'elementAttrChange' },\n            { emit: 'focusStateEnabledChange' },\n            { emit: 'heightChange' },\n            { emit: 'hintChange' },\n            { emit: 'hoverStateEnabledChange' },\n            { emit: 'inputAttrChange' },\n            { emit: 'isDirtyChange' },\n            { emit: 'isValidChange' },\n            { emit: 'labelChange' },\n            { emit: 'labelModeChange' },\n            { emit: 'maskChange' },\n            { emit: 'maskCharChange' },\n            { emit: 'maskInvalidMessageChange' },\n            { emit: 'maskRulesChange' },\n            { emit: 'maxLengthChange' },\n            { emit: 'modeChange' },\n            { emit: 'nameChange' },\n            { emit: 'placeholderChange' },\n            { emit: 'readOnlyChange' },\n            { emit: 'rtlEnabledChange' },\n            { emit: 'showClearButtonChange' },\n            { emit: 'showMaskModeChange' },\n            { emit: 'spellcheckChange' },\n            { emit: 'stylingModeChange' },\n            { emit: 'tabIndexChange' },\n            { emit: 'textChange' },\n            { emit: 'useMaskedValueChange' },\n            { emit: 'validationErrorChange' },\n            { emit: 'validationErrorsChange' },\n            { emit: 'validationMessageModeChange' },\n            { emit: 'validationMessagePositionChange' },\n            { emit: 'validationStatusChange' },\n            { emit: 'valueChange' },\n            { emit: 'valueChangeEventChange' },\n            { emit: 'visibleChange' },\n            { emit: 'widthChange' },\n            { emit: 'onBlur' }\n        ]);\n\n        this._idh.setHost(this);\n        optionHost.setHost(this);\n    }\n\n    protected _createInstance(element, options) {\n\n        return new DxTextBox(element, options);\n    }\n\n\n    writeValue(value: any): void {\n        this.eventHelper.lockedValueChangeEvent = true;\n        this.value = value;\n        this.eventHelper.lockedValueChangeEvent = false;\n    }\n\n    setDisabledState(isDisabled: boolean): void {\n        this.disabled = isDisabled;\n    }\n\n    registerOnChange(fn: (_: any) => void): void { this.change = fn; }\n    registerOnTouched(fn: () => void): void { this.touched = fn; }\n\n    _createWidget(element: any) {\n        super._createWidget(element);\n        this.instance.on('focusOut', (e) => {\n            this.eventHelper.fireNgEvent('onBlur', [e]);\n        });\n    }\n\n    ngOnDestroy() {\n        this._destroyWidget();\n    }\n\n    ngOnChanges(changes: SimpleChanges) {\n        super.ngOnChanges(changes);\n        this.setupChanges('buttons', changes);\n        this.setupChanges('validationErrors', changes);\n    }\n\n    setupChanges(prop: string, changes: SimpleChanges) {\n        if (!(prop in this._optionsToUpdate)) {\n            this._idh.setup(prop, changes);\n        }\n    }\n\n    ngDoCheck() {\n        this._idh.doCheck('buttons');\n        this._idh.doCheck('validationErrors');\n        this._watcherHelper.checkWatchers();\n        super.ngDoCheck();\n        super.clearChangedOptions();\n    }\n\n    _setOption(name: string, value: any) {\n        let isSetup = this._idh.setupSingle(name, value);\n        let isChanged = this._idh.getChanges(name, value) !== null;\n\n        if (isSetup || isChanged) {\n            super._setOption(name, value);\n        }\n    }\n}\n\n@NgModule({\n  imports: [\n    DxTextBoxComponent,\n    DxiButtonModule,\n    DxoOptionsModule,\n    DxiTextBoxButtonModule,\n    DxoTextBoxOptionsModule,\n    DxIntegrationModule,\n    DxTemplateModule\n  ],\n  exports: [\n    DxTextBoxComponent,\n    DxiButtonModule,\n    DxoOptionsModule,\n    DxiTextBoxButtonModule,\n    DxoTextBoxOptionsModule,\n    DxTemplateModule\n  ]\n})\nexport class DxTextBoxModule { }\n\nexport * from 'devextreme-angular/ui/text-box/nested';\n\nimport type * as DxTextBoxTypes from \"devextreme/ui/text_box_types\";\nexport { DxTextBoxTypes };\n\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}