1
0
mirror of https://github.com/ZeroCatDev/Classworks.git synced 2025-09-03 16:19:22 +00:00
Classworks/assets/VAppBarTitle-CQLnBe80.js

2 lines
6.1 KiB
JavaScript

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