forked from Simnation/Main
1 line
4.4 KiB
JavaScript
1 line
4.4 KiB
JavaScript
import{aC as z,b as W,a0 as A,E as X,F as Y,G as Z,H as p,k,aD as w,J as ee,q as o,d as x,f as te,x as n,aE as _,h as ne,L as ae,aF as ie,A as oe,S as C,ap as le}from"./app-014d9ed9.js";import{a as ue,c as y,Q as S}from"./QItemLabel.b6dd3adb.js";import{Q as ce}from"./QSlideTransition.104e08c1.js";const u=z({}),de=Object.keys(A),ve=W({name:"QExpansionItem",props:{...A,...X,...Y,icon:String,label:String,labelLines:[Number,String],caption:String,captionLines:[Number,String],dense:Boolean,toggleAriaLabel:String,expandIcon:String,expandedIcon:String,expandIconClass:[Array,String,Object],duration:Number,headerInsetLevel:Number,contentInsetLevel:Number,expandSeparator:Boolean,defaultOpened:Boolean,hideExpandIcon:Boolean,expandIconToggle:Boolean,switchToggleSide:Boolean,denseToggle:Boolean,group:String,popup:Boolean,headerStyle:[Array,String,Object],headerClass:[Array,String,Object]},emits:[...Z,"click","after-show","after-hide"],setup(e,{slots:g,emit:v}){const{proxy:{$q:d}}=ne(),f=p(e,d),a=k(e.modelValue!==null?e.modelValue:e.defaultOpened),h=k(null),b=w(),{show:Q,hide:I,toggle:m}=ee({showing:a});let l,c;const B=o(()=>`q-expansion-item q-item-type q-expansion-item--${a.value===!0?"expanded":"collapsed"} q-expansion-item--${e.popup===!0?"popup":"standard"}`),O=o(()=>e.contentInsetLevel===void 0?null:{["padding"+(d.lang.rtl===!0?"Right":"Left")]:e.contentInsetLevel*56+"px"}),r=o(()=>e.disable!==!0&&(e.href!==void 0||e.to!==void 0&&e.to!==null&&e.to!=="")),E=o(()=>{const t={};return de.forEach(i=>{t[i]=e[i]}),t}),P=o(()=>r.value===!0||e.expandIconToggle!==!0),j=o(()=>e.expandedIcon!==void 0&&a.value===!0?e.expandedIcon:e.expandIcon||d.iconSet.expansionItem[e.denseToggle===!0?"denseIcon":"icon"]),N=o(()=>e.disable!==!0&&(r.value===!0||e.expandIconToggle===!0)),D=o(()=>({expanded:a.value===!0,detailsId:e.targetUid,toggle:m,show:Q,hide:I})),T=o(()=>{const t=e.toggleAriaLabel!==void 0?e.toggleAriaLabel:d.lang.label[a.value===!0?"collapse":"expand"](e.label);return{role:"button","aria-expanded":a.value===!0?"true":"false","aria-owns":b,"aria-controls":b,"aria-label":t}});x(()=>e.group,t=>{c!==void 0&&c(),t!==void 0&&L()});function H(t){r.value!==!0&&m(t),v("click",t)}function R(t){t.keyCode===13&&q(t,!0)}function q(t,i){i!==!0&&h.value!==null&&h.value.focus(),m(t),le(t)}function G(){v("after-show")}function $(){v("after-hide")}function L(){l===void 0&&(l=w()),a.value===!0&&(u[e.group]=l);const t=x(a,s=>{s===!0?u[e.group]=l:u[e.group]===l&&delete u[e.group]}),i=x(()=>u[e.group],(s,J)=>{J===l&&s!==void 0&&s!==l&&I()});c=()=>{t(),i(),u[e.group]===l&&delete u[e.group],c=void 0}}function K(){const t={class:[`q-focusable relative-position cursor-pointer${e.denseToggle===!0&&e.switchToggleSide===!0?" items-end":""}`,e.expandIconClass],side:e.switchToggleSide!==!0,avatar:e.switchToggleSide},i=[n(C,{class:"q-expansion-item__toggle-icon"+(e.expandedIcon===void 0&&a.value===!0?" q-expansion-item__toggle-icon--rotated":""),name:j.value})];return N.value===!0&&(Object.assign(t,{tabindex:0,...T.value,onClick:q,onKeyup:R}),i.unshift(n("div",{ref:h,class:"q-expansion-item__toggle-focus q-icon q-focus-helper q-focus-helper--rounded",tabindex:-1}))),n(S,t,()=>i)}function M(){let t;return g.header!==void 0?t=[].concat(g.header(D.value)):(t=[n(S,()=>[n(y,{lines:e.labelLines},()=>e.label||""),e.caption?n(y,{lines:e.captionLines,caption:!0},()=>e.caption):null])],e.icon&&t[e.switchToggleSide===!0?"push":"unshift"](n(S,{side:e.switchToggleSide===!0,avatar:e.switchToggleSide!==!0},()=>n(C,{name:e.icon})))),e.disable!==!0&&e.hideExpandIcon!==!0&&t[e.switchToggleSide===!0?"unshift":"push"](K()),t}function U(){const t={ref:"item",style:e.headerStyle,class:e.headerClass,dark:f.value,disable:e.disable,dense:e.dense,insetLevel:e.headerInsetLevel};return P.value===!0&&(t.clickable=!0,t.onClick=H,Object.assign(t,r.value===!0?E.value:T.value)),n(ue,t,M)}function F(){return ae(n("div",{key:"e-content",class:"q-expansion-item__content relative-position",style:O.value,id:b},oe(g.default)),[[ie,a.value]])}function V(){const t=[U(),n(ce,{duration:e.duration,onShow:G,onHide:$},F)];return e.expandSeparator===!0&&t.push(n(_,{class:"q-expansion-item__border q-expansion-item__border--top absolute-top",dark:f.value}),n(_,{class:"q-expansion-item__border q-expansion-item__border--bottom absolute-bottom",dark:f.value})),t}return e.group!==void 0&&L(),te(()=>{c!==void 0&&c()}),()=>n("div",{class:B.value},[n("div",{class:"q-expansion-item__container relative-position"},V())])}});export{ve as Q};
|