{"version":3,"file":"ironsource-fusion-ui-components-textarea-common-base.mjs","sources":["../../../projects/fusion-ui/components/textarea/common/base/textarea.base.component.ts","../../../projects/fusion-ui/components/textarea/common/base/ironsource-fusion-ui-components-textarea-common-base.ts"],"sourcesContent":["import {Directive, EventEmitter, Input, OnInit, Output} from '@angular/core';\n\n@Directive()\nexport abstract class TextareaBaseComponent implements OnInit {\n    @Input() placeholder: string;\n    @Input() error: string;\n    @Input() readonly: boolean;\n    @Input() required: boolean;\n    @Input() resize: boolean;\n    @Input() name: string;\n    @Input() isDisabled: boolean;\n    @Input() model: string;\n    @Output() modelChange = new EventEmitter();\n\n    ngOnInit() {\n        this.resize = typeof this.resize === 'undefined' ? false : this.resize;\n        this.model = this.model || '';\n        this.placeholder = this.placeholder || '';\n        this.error = this.error || '';\n    }\n\n    onChange(event) {\n        this.propagateTouched();\n        this.model = event;\n        this.propagateChange(event);\n        this.modelChange.emit(this.model);\n    }\n\n    // Implement ControlValueAccessor methods\n    /**\n     * Method to call when value has changes.\n     */\n    propagateChange = (_: string) => {};\n\n    /**\n     * Method to call when the component is touched (when it was is clicked).\n     */\n    propagateTouched = () => {};\n\n    /**\n     * update value from model to the component\n     */\n    writeValue(value: string): void {\n        if (value === undefined || value === null) {\n            this.model = '';\n        } else {\n            this.model = value;\n        }\n    }\n\n    /**\n     * Informs the outside world about changes.\n     * see method propagateChange call - this.propagateChange(this.model);\n     */\n    registerOnChange(fn: any): void {\n        this.propagateChange = fn;\n    }\n\n    /**\n     * on click\n     */\n    registerOnTouched(fn: any): void {\n        this.propagateTouched = fn;\n    }\n\n    /**\n     * on set form controll enabled / disabled\n     * also do UI Component enabled / disabled\n     */\n    setDisabledState?(isDisabled: boolean): void {\n        this.isDisabled = isDisabled;\n    }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;MAGsB,qBAAqB,CAAA;AAD3C,IAAA,WAAA,GAAA;AAUc,QAAA,IAAA,CAAA,WAAW,GAAG,IAAI,YAAY,EAAE,CAAC;;AAiB3C;;AAEG;AACH,QAAA,IAAA,CAAA,eAAe,GAAG,CAAC,CAAS,KAAI,GAAG,CAAC;AAEpC;;AAEG;AACH,QAAA,IAAA,CAAA,gBAAgB,GAAG,MAAK,GAAG,CAAC;AAmC/B,KAAA;IA1DG,QAAQ,GAAA;AACJ,QAAA,IAAI,CAAC,MAAM,GAAG,OAAO,IAAI,CAAC,MAAM,KAAK,WAAW,GAAG,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;QACvE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QAC9B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC;QAC1C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;KACjC;AAED,IAAA,QAAQ,CAAC,KAAK,EAAA;QACV,IAAI,CAAC,gBAAgB,EAAE,CAAC;AACxB,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AACnB,QAAA,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAC5B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACrC;AAaD;;AAEG;AACH,IAAA,UAAU,CAAC,KAAa,EAAA;AACpB,QAAA,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;AACvC,YAAA,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;AACnB,SAAA;AAAM,aAAA;AACH,YAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AACtB,SAAA;KACJ;AAED;;;AAGG;AACH,IAAA,gBAAgB,CAAC,EAAO,EAAA;AACpB,QAAA,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;KAC7B;AAED;;AAEG;AACH,IAAA,iBAAiB,CAAC,EAAO,EAAA;AACrB,QAAA,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;KAC9B;AAED;;;AAGG;AACH,IAAA,gBAAgB,CAAE,UAAmB,EAAA;AACjC,QAAA,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;KAChC;sFApEiB,qBAAqB,GAAA,CAAA,EAAA,CAAA,EAAA;oEAArB,qBAAqB,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,UAAA,EAAA,YAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;iFAArB,qBAAqB,EAAA,CAAA;cAD1C,SAAS;gBAEG,WAAW,EAAA,CAAA;kBAAnB,KAAK;YACG,KAAK,EAAA,CAAA;kBAAb,KAAK;YACG,QAAQ,EAAA,CAAA;kBAAhB,KAAK;YACG,QAAQ,EAAA,CAAA;kBAAhB,KAAK;YACG,MAAM,EAAA,CAAA;kBAAd,KAAK;YACG,IAAI,EAAA,CAAA;kBAAZ,KAAK;YACG,UAAU,EAAA,CAAA;kBAAlB,KAAK;YACG,KAAK,EAAA,CAAA;kBAAb,KAAK;YACI,WAAW,EAAA,CAAA;kBAApB,MAAM;;;ACZX;;AAEG;;;;"}