forms-reactive
Version:
Reactive Form Web Component
2 lines • 4.48 kB
JavaScript
import{r as o,c as n,h as i,H as t,e}from"./p-3e1171f6.js";import{p as r}from"./p-8613551a.js";import{g as s}from"./p-9c83f640.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=a;const c=":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-end-end-radius:6px;border-end-start-radius:6px}:host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-next){border-start-start-radius:6px;border-start-end-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 p=c;const l=class{constructor(i){o(this,i);this.ionChange=n(this,"ionChange",7);this.ionValueChange=n(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:n}=this;if(!n&&Array.isArray(o)){r(`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 n=await this.getAccordions();for(const i of n){i.disabled=o}}async readonlyChanged(){const{readonly:o}=this;const n=await this.getAccordions();for(const i of n){i.readonly=o}}async onKeydown(o){const n=document.activeElement;if(!n){return}const i=n.closest('ion-accordion [slot="header"]');if(!i){return}const t=n.tagName==="ION-ACCORDION"?n:n.closest("ion-accordion");if(!t){return}const e=t.closest("ion-accordion-group");if(e!==this.el){return}const r=await this.getAccordions();const s=r.findIndex((o=>o===t));if(s===-1){return}let a;if(o.key==="ArrowDown"){a=this.findNextAccordion(r,s)}else if(o.key==="ArrowUp"){a=this.findPreviousAccordion(r,s)}else if(o.key==="Home"){a=r[0]}else if(o.key==="End"){a=r[r.length-1]}if(a!==undefined&&a!==n){a.focus()}}async componentDidLoad(){if(this.disabled){this.disabledChanged()}if(this.readonly){this.readonlyChanged()}this.valueChanged()}setValue(o){const n=this.value=o;this.ionChange.emit({value:n})}async requestAccordionToggle(o,n){const{multiple:i,value:t,readonly:e,disabled:r}=this;if(e||r){return}if(n){if(i){const n=t!==null&&t!==void 0?t:[];const i=Array.isArray(n)?n:[n];const e=i.find((n=>n===o));if(e===undefined&&o!==undefined){this.setValue([...i,o])}}else{this.setValue(o)}}else{if(i){const n=t!==null&&t!==void 0?t:[];const i=Array.isArray(n)?n:[n];this.setValue(i.filter((n=>n!==o)))}else{this.setValue(undefined)}}}findNextAccordion(o,n){const i=o[n+1];if(i===undefined){return o[0]}return i}findPreviousAccordion(o,n){const i=o[n-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:n,expand:e}=this;const r=s(this);return i(t,{key:"82f3e77066fabb4736638ee4c487ad56efd39c63",class:{[r]:true,"accordion-group-disabled":o,"accordion-group-readonly":n,[`accordion-group-expand-${e}`]:true},role:"presentation"},i("slot",{key:"a3c791ea887fc640b512f81d429be465ae902b3d"}))}get el(){return e(this)}static get watchers(){return{value:["valueChanged"],disabled:["disabledChanged"],readonly:["readonlyChanged"]}}};l.style={ios:d,md:p};export{l as ion_accordion_group};
//# sourceMappingURL=p-93cceffe.entry.js.map