@securecall/client-component
Version:
SecureCall Core Web Component
2 lines • 2.42 kB
JavaScript
import{r as e,c as t,h as i,H as s}from"./p-KxdoBBDC.js";import{L as a}from"./p-By6Qn8nU.js";const c=":host{display:block}.field-container{display:grid;grid-template-columns:10em 1fr 20px;align-items:center;gap:1rem}.custom-label{color:var(--theme-primary-color);text-align:right;align-items:center;font-weight:bold;gap:0.5rem}.custom-select{padding:0.2rem;border:1px solid var(--theme-secondary-color);border-radius:4px;font-size:1rem;background-color:var(--theme-input-active-background)}";const l=class{constructor(i){e(this,i);this.isValidEvent=t(this,"isValidEvent");this.changed=t(this,"changed")}fieldName;config;isValidEvent;log=new a("SecurecallRequestSelect");selectElement;changed;get value(){return this.config.value}set value(e){if(this.config.value!==e){this.config.value=e;this.validateChange()}}handleConfigChange(e,t){this.log.debug(this.fieldName+": handleConfigChange: config",e,t);if(t.value!==e.value){this.value=e.value;this.validateChange();if(this.selectElement)this.selectElement.value=this.value}else if(t.valid!==e.valid){this.validateChange()}}componentWillLoad(){this.log.debug(this.fieldName+": componentWillLoad: config",this.config);if(this.config.value===undefined)this.value=Object.entries(this.config.possibleValues)[0][0]||"";this.validateChange()}handleChange(e){this.log.debug(this.fieldName+": handleChange: select change:",e.target.value);this.value=e.target.value}validateChange(){const e=this.value;let t=false;if(e&&e.length>0){t=true}this.isValidEvent.emit({field:this.fieldName,valid:t,value:e})}render(){return i(s,{key:"bf4aa30394d253ad120d6e82557835d27ecdc7a5"},i("div",{key:"fc1641d05b1eb681050625db293858d4a3c48d42",class:"field-container"},i("label",{key:"97846cf246e9ced0c4b4bac1a0550451b7516c7a",class:"custom-label"},this.config["label"],":"),i("select",{key:"6c2daa0379cb8c23010cda56adf91f9bc9eccfb3",class:"custom-select",id:this.fieldName,disabled:this.config.readOnly,onChange:e=>this.handleChange(e),ref:e=>this.selectElement=e},typeof this.config.possibleValues==="object"&&this.config.possibleValues!==null?Object.entries(this.config.possibleValues).map((([e,t])=>i("option",{value:e,selected:e===this.value},t))):null),i("div",{key:"bcabc83fa9ef3313c5c9cd1d288cf4d1898f0f99",class:"validity none"})))}static get watchers(){return{config:["handleConfigChange"]}}};l.style=c;export{l as securecall_request_select};
//# sourceMappingURL=p-0bb22a02.entry.js.map