@postnord/web-components
Version:
PostNord Web Components
6 lines • 6.11 kB
JavaScript
/*!
* Built with Stencil
* By PostNord.
*/
import{r as e,g as t,h as a,a as r}from"./p-43660913.js";import{u as n}from"./p-c511b4fb.js";const o='pn-textarea{display:inline-flex;flex-direction:column}pn-textarea .pn-textarea-label{cursor:pointer;display:flex;justify-content:space-between;align-items:flex-end;font-weight:400;color:#2d2013;margin:0 0 0.25em 0;gap:0.5em;transition-property:color;transition-duration:0.2s;transition-timing-function:cubic-bezier(0.7, 0, 0.3, 1);-webkit-tap-highlight-color:transparent}pn-textarea .pn-textarea-label>span{font-size:0.875em}pn-textarea .pn-textarea-text{color:#5e554a;font-size:0.875em;font-weight:400;margin:0.25em 0 0 0;display:flex;flex-direction:column;gap:0.25em}pn-textarea .pn-textarea-text>pn-icon{margin-right:0.25em}pn-textarea .pn-textarea-element{color:#2d2013;background-color:#ffffff;border:0.0625em solid #969087;border-radius:0.5em;padding:0.75em;font-family:inherit;font-size:1em;font-weight:500;line-height:1.5em;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;outline:0.2rem solid transparent;outline-offset:0.2rem;transition-property:outline-color, background-color, border-color, color;transition-duration:0.2s;transition-timing-function:cubic-bezier(0.7, 0, 0.3, 1);width:100%;resize:none}pn-textarea .pn-textarea-element:-webkit-autofill,pn-textarea .pn-textarea-element:-webkit-autofill:hover,pn-textarea .pn-textarea-element:-webkit-autofill:focus,pn-textarea .pn-textarea-element:-webkit-autofill:active{-webkit-box-shadow:0 0 0 10em #e0f8ff inset;-webkit-text-fill-color:#2d2013}pn-textarea .pn-textarea-element:focus-visible{outline-color:#005d92;background-color:#ffffff;border-color:#005d92}pn-textarea .pn-textarea-element::placeholder{color:#5e554a;font-weight:normal}pn-textarea .pn-textarea-element:hover{border-color:#005d92}pn-textarea .pn-textarea-element:disabled{color:#5e554a;background-color:#f3f2f2;border-color:#f3f2f2}pn-textarea .pn-textarea-element::-webkit-scrollbar{background-color:#ffffff;width:0.875em;border-radius:0.5em}pn-textarea .pn-textarea-element::-webkit-scrollbar-track{background-color:#ffffff;border-radius:0.5em}pn-textarea .pn-textarea-element::-webkit-scrollbar-thumb{cursor:pointer;background-color:#969087;border-radius:1em;border:0.25em solid #ffffff}pn-textarea .pn-textarea-element::-webkit-scrollbar-thumb:hover{background-color:#5e554a}pn-textarea .pn-textarea-element::-webkit-scrollbar-corner,pn-textarea .pn-textarea-element::-webkit-scrollbar-button{display:none}pn-textarea .pn-textarea-element:read-only{border-color:#ffffff}pn-textarea .pn-textarea-element::-webkit-resizer{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%3E%0A%20%20%3Cpath%20d%3D%22M7%2017L17%207M12%2017L17%2012%22%20stroke%3D%22%23005D92%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%2F%3E%0A%3C%2Fsvg%3E");background-repeat:no-repeat;background-position:center}pn-textarea .pn-textarea[data-valid]>.pn-textarea-label{color:#005e41}pn-textarea .pn-textarea[data-valid]>.pn-textarea-element{border-color:#005e41}pn-textarea .pn-textarea[data-valid]>.pn-textarea-element:hover{border-color:#002f24}pn-textarea .pn-textarea[data-valid]>.pn-textarea-element:focus-visible{background-color:#ffffff;border-color:#005e41;outline-color:#005e41}pn-textarea .pn-textarea[data-error]>.pn-textarea-label{color:#a70707}pn-textarea .pn-textarea[data-error]>.pn-textarea-element{border-color:#a70707}pn-textarea .pn-textarea[data-error]>.pn-textarea-element:hover{border-color:#500715}pn-textarea .pn-textarea[data-error]>.pn-textarea-element:focus-visible{background-color:#ffffff;border-color:#a70707;outline-color:#a70707}pn-textarea .pn-textarea[data-error]>.pn-textarea-text[role=alert]{color:#a70707}pn-textarea .pn-textarea[data-resize]>.pn-textarea-element{resize:vertical}';const i=o;const l=class{constructor(t){e(this,t);this.content=undefined;this.label=undefined;this.value="";this.helpertext=undefined;this.textareaid=this.id;this.name=undefined;this.form=undefined;this.rows=2;this.cols=20;this.wrap="soft";this.maxlength=undefined;this.autocomplete="off";this.spellcheck=false;this.placeholder=undefined;this.resize=false;this.required=false;this.valid=false;this.invalid=false;this.error=undefined;this.disabled=false;this.readonly=false}id=`pn-textarea-${n()}`;idHelper=`${this.id}-text`;get hostElement(){return t(this)}componentWillLoad(){if(this.textareaid!==this.id){this.idHelper=`${this.textareaid}-helper`}}setVal(e){const t=e.target.value;this.value=t}hasError(){return this.invalid||!!this.error}hasMessage(){return!!(this.helpertext?.length||this.error?.length)}render(){return a(r,{key:"5a142dbaa2f6ea08d868668bf3f12e43be23f935"},a("div",{key:"2858929a5c5daedaa477dcb720a232e63e3c0c85",class:"pn-textarea","data-valid":this.valid,"data-error":this.hasError(),"data-resize":this.resize},a("label",{key:"ea30152404c7dacafbac4f7bbede2a5e65245ef1",class:"pn-textarea-label",htmlFor:this.textareaid},a("span",{key:"d095e7a14076c808d6ae13684e5961ae74ce11e6"},this.label),this.maxlength>=1&&a("span",{key:"d689bbda3d391099285f7d1609668647935e5f13"},`${this.value?.length||0}/${this.maxlength}`)),a("textarea",{key:"e38bea77a771e20d6318afa5481fb3fe78063952",class:"pn-textarea-element",id:this.textareaid,name:this.name,rows:this.rows,cols:this.cols,wrap:this.wrap,autocomplete:this.autocomplete,spellcheck:this.spellcheck,placeholder:this.placeholder,maxlength:this.maxlength,required:this.required,disabled:this.disabled,readonly:this.readonly,"aria-describedby":this.hasMessage()?this.idHelper:null,"aria-invalid":this.hasError().toString(),onInput:e=>this.setVal(e),value:this.value}),this.hasMessage()&&a("p",{key:"5cf140710137d0ff3a843e0435b1c6551ee12a13",id:this.idHelper,class:"pn-textarea-text",role:this.error?.length?"alert":null},a("span",{key:"ea36ceb356fd1a985c9ef9cad9673b11a38a598f"},this.error||this.helpertext))))}};l.style=i;export{l as pn_textarea};
//# sourceMappingURL=p-fc6545ec.entry.js.map