@zoff-tech/zt-bottom-drawer
Version:
Bottom Drawer / Web Component
2 lines • 5.24 kB
JavaScript
import{r as o,d as t,h as i,H as n,e as r}from"./p-f6c816ce.js";import{printIonWarning as e}from"@utils/logging";import{g as s}from"./p-0b9b2444.js";const a=":host{display:block}:host(.accordion-group-expand-inset){-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:16px;margin-bottom:16px}:host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-expanding),:host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-expanded){border-bottom:none}";const d=":host{display:block}:host(.accordion-group-expand-inset){-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:16px;margin-bottom:16px}:host(.accordion-group-expand-inset) ::slotted(ion-accordion){box-shadow:0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12)}:host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-expanding),:host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-expanded){margin-left:0;margin-right:0;margin-top:16px;margin-bottom:16px;border-radius:6px}:host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-previous){border-bottom-right-radius:6px;border-bottom-left-radius:6px}:host-context([dir=rtl]):host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-previous),:host-context([dir=rtl]).accordion-group-expand-inset ::slotted(ion-accordion.accordion-previous){border-bottom-right-radius:6px;border-bottom-left-radius:6px}@supports selector(:dir(rtl)){:host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-previous):dir(rtl){border-bottom-right-radius:6px;border-bottom-left-radius:6px}}:host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-next){border-top-left-radius:6px;border-top-right-radius:6px}:host-context([dir=rtl]):host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-next),:host-context([dir=rtl]).accordion-group-expand-inset ::slotted(ion-accordion.accordion-next){border-top-left-radius:6px;border-top-right-radius:6px}@supports selector(:dir(rtl)){:host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-next):dir(rtl){border-top-left-radius:6px;border-top-right-radius:6px}}:host(.accordion-group-expand-inset) ::slotted(ion-accordion):first-of-type{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}";const c=class{constructor(i){o(this,i);this.ionChange=t(this,"ionChange",7);this.ionValueChange=t(this,"ionValueChange",7);this.animated=true;this.multiple=undefined;this.value=undefined;this.disabled=false;this.readonly=false;this.expand="compact"}valueChanged(){const{value:o,multiple:t}=this;if(!t&&Array.isArray(o)){e(`ion-accordion-group was passed an array of values, but multiple="false". This is incorrect usage and may result in unexpected behaviors. To dismiss this warning, pass a string to the "value" property when multiple="false".\n\n Value Passed: [${o.map((o=>`'${o}'`)).join(", ")}]\n`,this.el)}this.ionValueChange.emit({value:this.value})}async disabledChanged(){const{disabled:o}=this;const t=await this.getAccordions();for(const i of t){i.disabled=o}}async readonlyChanged(){const{readonly:o}=this;const t=await this.getAccordions();for(const i of t){i.readonly=o}}async onKeydown(o){const t=document.activeElement;if(!t){return}const i=t.closest('ion-accordion [slot="header"]');if(!i){return}const n=t.tagName==="ION-ACCORDION"?t:t.closest("ion-accordion");if(!n){return}const r=n.closest("ion-accordion-group");if(r!==this.el){return}const e=await this.getAccordions();const s=e.findIndex((o=>o===n));if(s===-1){return}let a;if(o.key==="ArrowDown"){a=this.findNextAccordion(e,s)}else if(o.key==="ArrowUp"){a=this.findPreviousAccordion(e,s)}else if(o.key==="Home"){a=e[0]}else if(o.key==="End"){a=e[e.length-1]}if(a!==undefined&&a!==t){a.focus()}}async componentDidLoad(){if(this.disabled){this.disabledChanged()}if(this.readonly){this.readonlyChanged()}}setValue(o){const t=this.value=o;this.ionChange.emit({value:t})}async requestAccordionToggle(o,t){const{multiple:i,value:n,readonly:r,disabled:e}=this;if(r||e){return}if(t){if(i){const t=n!==null&&n!==void 0?n:[];const i=Array.isArray(t)?t:[t];const r=i.find((t=>t===o));if(r===undefined&&o!==undefined){this.setValue([...i,o])}}else{this.setValue(o)}}else{if(i){const t=n!==null&&n!==void 0?n:[];const i=Array.isArray(t)?t:[t];this.setValue(i.filter((t=>t!==o)))}else{this.setValue(undefined)}}}findNextAccordion(o,t){const i=o[t+1];if(i===undefined){return o[0]}return i}findPreviousAccordion(o,t){const i=o[t-1];if(i===undefined){return o[o.length-1]}return i}async getAccordions(){return Array.from(this.el.querySelectorAll(":scope > ion-accordion"))}render(){const{disabled:o,readonly:t,expand:r}=this;const e=s(this);return i(n,{class:{[e]:true,"accordion-group-disabled":o,"accordion-group-readonly":t,[`accordion-group-expand-${r}`]:true},role:"presentation"},i("slot",null))}get el(){return r(this)}static get watchers(){return{value:["valueChanged"],disabled:["disabledChanged"],readonly:["readonlyChanged"]}}};c.style={ios:a,md:d};export{c as ion_accordion_group};
//# sourceMappingURL=p-cdc12ceb.entry.js.map