@legion-ui-kit/react-core
Version:
To install the package into your project:
3 lines (2 loc) • 1.65 kB
JavaScript
import{jsxs as e,jsx as t}from"react/jsx-runtime";import{useId as a}from"react";import s from"classnames";import l from"./styles/styles.module.scss.js";import r from"../Icon/index.js";import{kebabCase as i}from"../../helpers/typography.js";import{TEXT_AREA_DEFAULT_PROPS as n,TEXT_AREA_VARIANT as c,TEXT_AREA_STATUS as o}from"./TextArea.constant.js";import{ICON_NAME as p}from"../Icon/Icon.constant.js";const m=m=>{const{block:d,caption:h,captionClassName:u,captionStyle:y,className:_,disabled:x,hint:N,hintClassName:f,hintStyle:b,id:g,inputClassName:w,inputStyle:j,inputWrapperClassName:v,inputWrapperStyle:C,label:S,labelClassName:k,labelStyle:I,placeholder:W,size:z=n.size,status:A=n.status,style:F,variant:T=n.variant,...$}=m,q=a(),B=g||`legion_textarea_${i(q)}`,D=T===c.outline,E=s(l.legion_text_area,l[z],l[A],_,{[l.block]:d,[l.disabled]:x,[l[T]]:T}),G=s(l.text_area_caption,u),H=s(l.text_area_hint,f),J=s(l.input_wrapper,v),K=s(l.text_area_input,w),L=s(l.text_area_label,k),M=(e=>{switch(e){case o.error:return p["error-triangle"];case o.success:return p["success-circle"];default:return p["info-circle"]}})(A);return e("div",{className:E,style:F,children:[S&&t("label",{htmlFor:B,className:L,style:I,children:S}),e("div",{className:J,style:C,children:[t("textarea",{className:K,id:B,placeholder:W,disabled:x,style:j,...$}),D&&t("svg",{xmlns:"http://www.w3.org/2000/svg",children:t("rect",{height:"100%",width:"100%",strokeWidth:"2px",fill:"none"})})]}),h&&e("p",{className:G,style:y,children:[t(r,{className:l.caption_icon,icon:M}),h]}),N&&t("p",{className:H,style:b,children:N})]})};export{m as default};
//# sourceMappingURL=index.js.map