1
0
mirror of https://github.com/ZeroCatDev/Classworks.git synced 2025-07-02 00:59:23 +00:00
Classworks/assets/VAppBarTitle-B8BT9fYp.js

2 lines
6.0 KiB
JavaScript

import{g as P,p,j as w,k as n,n as N,x as R,u as q,b as z,c as F,d as j,a as G,al as K,s as T,f as v,aV as O,aD as W,a4 as C,l as k,bc as Y,m as Z,o as $,v as J,y as Q,r as A,bG as X,a9 as H,ad as ee,bf as te,a7 as ae,t as I,h as le,w as oe,K as ne,i as se,Z as L,q as re}from"./index-ByVcHmHP.js";const D=p({text:String,...R(),...N()},"VToolbarTitle"),U=P()({name:"VToolbarTitle",props:D(),setup(e,g){let{slots:t}=g;return w(()=>{const d=!!(t.default||t.text||e.text);return n(e.tag,{class:["v-toolbar-title",e.class],style:e.style},{default:()=>{var s;return[d&&n("div",{class:"v-toolbar-title__placeholder"},[t.text?t.text():e.text,(s=t.default)==null?void 0:s.call(t)])]}})}),{}}}),ue=[null,"prominent","default","comfortable","compact"],M=p({absolute:Boolean,collapse:Boolean,color:String,density:{type:String,default:"default",validator:e=>ue.includes(e)},extended:Boolean,extensionHeight:{type:[Number,String],default:48},flat:Boolean,floating:Boolean,height:{type:[Number,String],default:64},image:String,title:String,...Q(),...R(),...J(),...$(),...N({tag:"header"}),...Z()},"VToolbar"),E=P()({name:"VToolbar",props:M(),setup(e,g){var h;let{slots:t}=g;const{backgroundColorClasses:d,backgroundColorStyles:s}=q(()=>e.color),{borderClasses:a}=z(e),{elevationClasses:i}=F(e),{roundedClasses:r}=j(e),{themeClasses:f}=G(e),{rtlClasses:x}=K(),u=T(!!(e.extended||(h=t.extension)!=null&&h.call(t))),c=v(()=>parseInt(Number(e.height)+(e.density==="prominent"?Number(e.height):0)-(e.density==="comfortable"?8:0)-(e.density==="compact"?16:0),10)),y=v(()=>u.value?parseInt(Number(e.extensionHeight)+(e.density==="prominent"?Number(e.extensionHeight):0)-(e.density==="comfortable"?4:0)-(e.density==="compact"?8:0),10):0);return O({VBtn:{variant:"text"}}),w(()=>{var B;const o=!!(e.title||t.title),m=!!(t.image||e.image),S=(B=t.extension)==null?void 0:B.call(t);return u.value=!!(e.extended||S),n(e.tag,{class:["v-toolbar",{"v-toolbar--absolute":e.absolute,"v-toolbar--collapse":e.collapse,"v-toolbar--flat":e.flat,"v-toolbar--floating":e.floating,[`v-toolbar--density-${e.density}`]:!0},d.value,a.value,i.value,r.value,f.value,x.value,e.class],style:[s.value,e.style]},{default:()=>[m&&n("div",{key:"image",class:"v-toolbar__image"},[t.image?n(C,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{cover:!0,src:e.image}}},t.image):n(W,{key:"image-img",cover:!0,src:e.image},null)]),n(C,{defaults:{VTabs:{height:k(c.value)}}},{default:()=>{var l,b,V;return[n("div",{class:"v-toolbar__content",style:{height:k(c.value)}},[t.prepend&&n("div",{class:"v-toolbar__prepend"},[(l=t.prepend)==null?void 0:l.call(t)]),o&&n(U,{key:"title",text:e.title},{text:t.title}),(b=t.default)==null?void 0:b.call(t),t.append&&n("div",{class:"v-toolbar__append"},[(V=t.append)==null?void 0:V.call(t)])])]}}),n(C,{defaults:{VTabs:{height:k(y.value)}}},{default:()=>[n(Y,null,{default:()=>[u.value&&n("div",{class:"v-toolbar__extension",style:{height:k(y.value)}},[S])]})]})]})}),{contentHeight:c,extensionHeight:y}}}),ie=p({scrollTarget:{type:String},scrollThreshold:{type:[String,Number],default:300}},"scroll");function ce(e){let g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const{canScroll:t}=g;let d=0,s=0;const a=A(null),i=T(0),r=T(0),f=T(0),x=T(!1),u=T(!1),c=v(()=>Number(e.scrollThreshold)),y=v(()=>X((c.value-i.value)/c.value||0)),h=()=>{const o=a.value;if(!o||t&&!t.value)return;d=i.value,i.value="window"in o?o.pageYOffset:o.scrollTop;const m=o instanceof Window?document.documentElement.scrollHeight:o.scrollHeight;if(s!==m){s=m;return}u.value=i.value<d,f.value=Math.abs(i.value-c.value)};return H(u,()=>{r.value=r.value||i.value}),H(x,()=>{r.value=0}),ee(()=>{H(()=>e.scrollTarget,o=>{var S;const m=o?document.querySelector(o):window;m&&m!==a.value&&((S=a.value)==null||S.removeEventListener("scroll",h),a.value=m,a.value.addEventListener("scroll",h,{passive:!0}))},{immediate:!0})}),te(()=>{var o;(o=a.value)==null||o.removeEventListener("scroll",h)}),t&&H(t,h,{immediate:!0}),{scrollThreshold:c,currentScroll:i,currentThreshold:f,isScrollActive:x,scrollRatio:y,isScrollingUp:u,savedScroll:r}}const ve=p({scrollBehavior:String,modelValue:{type:Boolean,default:!0},location:{type:String,default:"top",validator:e=>["top","bottom"].includes(e)},...M(),...re(),...ie(),height:{type:[Number,String],default:64}},"VAppBar"),me=P()({name:"VAppBar",props:ve(),emits:{"update:modelValue":e=>!0},setup(e,g){let{slots:t}=g;const d=A(),s=ae(e,"modelValue"),a=v(()=>{var b;const l=new Set(((b=e.scrollBehavior)==null?void 0:b.split(" "))??[]);return{hide:l.has("hide"),fullyHide:l.has("fully-hide"),inverted:l.has("inverted"),collapse:l.has("collapse"),elevate:l.has("elevate"),fadeImage:l.has("fade-image")}}),i=v(()=>{const l=a.value;return l.hide||l.fullyHide||l.inverted||l.collapse||l.elevate||l.fadeImage||!s.value}),{currentScroll:r,scrollThreshold:f,isScrollingUp:x,scrollRatio:u}=ce(e,{canScroll:i}),c=I(()=>a.value.hide||a.value.fullyHide),y=v(()=>e.collapse||a.value.collapse&&(a.value.inverted?u.value>0:u.value===0)),h=v(()=>e.flat||a.value.fullyHide&&!s.value||a.value.elevate&&(a.value.inverted?r.value>0:r.value===0)),o=v(()=>a.value.fadeImage?a.value.inverted?1-u.value:u.value:void 0),m=v(()=>{var V,_;if(a.value.hide&&a.value.inverted)return 0;const l=((V=d.value)==null?void 0:V.contentHeight)??0,b=((_=d.value)==null?void 0:_.extensionHeight)??0;return c.value?r.value<f.value||a.value.fullyHide?l+b:l:l+b});le(()=>!!e.scrollBehavior,()=>{oe(()=>{c.value?a.value.inverted?s.value=r.value>f.value:s.value=x.value||r.value<f.value:s.value=!0})});const{ssrBootStyles:S}=ne(),{layoutItemStyles:B}=se({id:e.name,order:v(()=>parseInt(e.order,10)),position:I(()=>e.location),layoutSize:m,elementSize:T(void 0),active:s,absolute:I(()=>e.absolute)});return w(()=>{const l=E.filterProps(e);return n(E,L({ref:d,class:["v-app-bar",{"v-app-bar--bottom":e.location==="bottom"},e.class],style:[{...B.value,"--v-toolbar-image-opacity":o.value,height:void 0,...S.value},e.style]},l,{collapse:y.value,flat:h.value}),t)}),{}}}),ge=P()({name:"VAppBarTitle",props:D(),setup(e,g){let{slots:t}=g;return w(()=>n(U,L(e,{class:"v-app-bar-title"}),t)),{}}});export{ge as V,me as a,E as b,U as c};