import{proxyCustomElement as e,HTMLElement as t,createEvent as i,h as l,Host as r,transformTag as a}from"@stencil/core/internal/client";import{n as s,b as o}from"./index.esm.js";import{d as n}from"./lime-query-value-input.js";import{d as c}from"./property-selector.js";const p=[{value:s.EQUALS,label:"webclient.operator.equals",icon:"-lime-filter-equal"},{value:s.NOT_EQUALS,label:"webclient.operator.not-equals",icon:"-lime-filter-equal-not"},{value:s.GREATER,label:"webclient.operator.greater-than",icon:"-lime-filter-greater",applicableTypes:["integer","decimal","date","time"]},{value:s.GREATER_OR_EQUAL,label:"webclient.operator.greater-than-or-equal-to",icon:"-lime-filter-greater-equal",applicableTypes:["integer","decimal","date","time"]},{value:s.LESS,label:"webclient.operator.less-than",icon:"-lime-filter-less",applicableTypes:["integer","decimal","date","time"]},{value:s.LESS_OR_EQUAL,label:"webclient.operator.less-than-or-equal-to",icon:"-lime-filter-less-equal",applicableTypes:["integer","decimal","date","time"]},{value:s.IN,label:"webclient.operator.in-filter",icon:"-lime-filter-set-included"},{value:s.LIKE,label:"webclient.operator.contains",icon:"-lime-filter-contain",applicableTypes:["string","text"]},{value:s.BEGINS,label:"webclient.operator.begins-with",icon:"-lime-filter-starts-with",applicableTypes:["string","text"]},{value:s.ENDS,label:"webclient.operator.ends-with",icon:"-lime-filter-ends-with",applicableTypes:["string","text"]}],m=e(class extends t{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.expressionChange=i(this,"expressionChange",7),this.handlePropertyChange=e=>{e.stopPropagation(),this.expressionChange.emit(Object.assign(Object.assign({},this.expression),{key:e.detail}))},this.handleOperatorChange=e=>{e.stopPropagation();const t=e.detail.value,i=this.expression.op;let l=this.expression.exp;t!==s.IN||Array.isArray(l)?i===s.IN&&t!==s.IN&&Array.isArray(l)&&(l=l.length>0?l[0]:""):l=void 0!==l&&""!==l?[l]:[],this.expressionChange.emit({key:this.expression.key,op:t,exp:l})},this.handleValueChange=e=>{e.stopPropagation(),this.expressionChange.emit(Object.assign(Object.assign({},this.expression),{exp:e.detail}))},this.removeExpression=()=>{this.expressionChange.emit(void 0)}}render(){return l(r,{key:"29ddf92b2e83eafe695faeb9a4ce6b8d29aa973e"},this.renderHeader(),l("div",{key:"258f8aeee98a2435d324a1e5b816f111188cf3cc",class:"expression-container"},this.renderPropertySelector(),this.renderOperator(),this.renderValueInput(),l("limel-icon-button",{key:"c9e4cf456908fb82507e2599af631691e96ab8e4",class:"remove",icon:"trash",label:"Remove condition",onClick:this.removeExpression})))}renderHeader(){if(this.label)return l("limel-header",{subheading:this.label})}renderPropertySelector(){return l("limebb-property-selector",{platform:this.platform,context:this.context,label:"Property",limetype:this.limetype,value:this.expression.key,required:!0,onChange:this.handlePropertyChange})}renderOperator(){const e=!!this.expression.op,t=p.map((e=>{var t,i;return{text:null!==(i=null===(t=this.translator)||void 0===t?void 0:t.get(e.label))&&void 0!==i?i:e.label,value:e.value,icon:e.icon?{name:e.icon}:void 0}})),i=t.find((e=>e.value===this.expression.op));return l("limel-select",{class:"operator",label:"Operator",value:i,options:t,disabled:!e&&!this.expression.key,onChange:this.handleOperatorChange})}renderValueInput(){return this.expression.op?l("limebb-lime-query-value-input",{platform:this.platform,context:this.context,limetype:this.limetype,activeLimetype:this.activeLimetype,propertyPath:this.expression.key,operator:this.expression.op,value:this.expression.exp,onChange:this.handleValueChange}):null}get translator(){var e;return null===(e=this.platform)||void 0===e?void 0:e.get(o.Translate)}static get style(){return":host(limebb-lime-query-filter-comparison){display:flex;flex-direction:column;gap:0.5rem}.expression-container{position:relative;display:grid;grid-template-columns:repeat(auto-fit, minmax(10rem, 1fr));grid-gap:0.5rem;padding-right:2.75rem}.remove{position:absolute;right:0;top:0.125rem}"}},[1,"limebb-lime-query-filter-comparison",{platform:[16],context:[16],label:[513],limetype:[1],activeLimetype:[1,"active-limetype"],expression:[16]}]);function b(){"undefined"!=typeof customElements&&["limebb-lime-query-filter-comparison","limebb-lime-query-value-input","limebb-property-selector"].forEach((e=>{switch(e){case"limebb-lime-query-filter-comparison":customElements.get(a(e))||customElements.define(a(e),m);break;case"limebb-lime-query-value-input":customElements.get(a(e))||n();break;case"limebb-property-selector":customElements.get(a(e))||c()}}))}export{m as L,b as d}