import t,{createRef as e,Component as o}from"react";import{DomHandler as r,classNames as n,ObjectUtils as i}from"primereact/utils";import{tip as s}from"primereact/tooltip";function p(){return p=Object.assign||function(t){for(var e=1;e0?r.addClass(t.target,"p-filled"):r.removeClass(t.target,"p-filled"),this.props.onInput&&this.props.onInput(t)}},{key:"resize",value:function(t){var e=this.elementRef&&this.elementRef.current;e&&r.isVisible(e)&&(this.cachedScrollHeight||(this.cachedScrollHeight=e.scrollHeight,e.style.overflow="hidden"),(this.cachedScrollHeight!==e.scrollHeight||t)&&(e.style.height="",e.style.height=e.scrollHeight+"px",parseFloat(e.style.height)>=parseFloat(e.style.maxHeight)?(e.style.overflowY="scroll",e.style.height=e.style.maxHeight):e.style.overflow="hidden",this.cachedScrollHeight=e.scrollHeight))}},{key:"isFilled",value:function(){return null!=this.props.value&&this.props.value.toString().length>0||null!=this.props.defaultValue&&this.props.defaultValue.toString().length>0||this.elementRef&&this.elementRef.current&&this.elementRef.current.value.toString().length>0}},{key:"updateForwardRef",value:function(){var t=this.props.forwardRef;t&&("function"==typeof t?t(this.elementRef.current):t.current=this.elementRef.current)}},{key:"componentDidMount",value:function(){this.updateForwardRef(),this.props.tooltip&&this.renderTooltip(),this.props.autoResize&&this.resize(!0)}},{key:"componentDidUpdate",value:function(t){t.tooltip===this.props.tooltip&&t.tooltipOptions===this.props.tooltipOptions||(this.tooltip?this.tooltip.update(v({content:this.props.tooltip},this.props.tooltipOptions||{})):this.renderTooltip()),this.props.autoResize&&this.resize(!0)}},{key:"componentWillUnmount",value:function(){this.tooltip&&(this.tooltip.destroy(),this.tooltip=null)}},{key:"renderTooltip",value:function(){this.tooltip=s({target:this.elementRef.current,content:this.props.tooltip,options:this.props.tooltipOptions})}},{key:"render",value:function(){var e=n("p-inputtextarea p-inputtext p-component",{"p-disabled":this.props.disabled,"p-filled":this.isFilled(),"p-inputtextarea-resizable":this.props.autoResize},this.props.className),o=i.findDiffKeys(this.props,j.defaultProps);return t.createElement("textarea",p({ref:this.elementRef},o,{className:e,onFocus:this.onFocus,onBlur:this.onBlur,onKeyUp:this.onKeyUp,onInput:this.onInput}))}}])&&u(m.prototype,O),R&&u(m,R),Object.defineProperty(m,"prototype",{writable:!1}),j}();b(O,"defaultProps",{autoResize:!1,tooltip:null,tooltipOptions:null,onInput:null,forwardRef:null});var R=t.forwardRef((function(e,o){return t.createElement(O,p({forwardRef:o},e))}));export{R as InputTextarea};