go-quasar-partial-ssr/backend/internal/http/static/spa/assets/QLayout-DIjK04DF.js

2 lines
8.9 KiB
JavaScript

import{s as q,y as v,p as d,q as w,v as D,x as P,A as Q,Q as C,F as U,P as k,S as B,M as A,N as $,O as N,z as T,U as I,V as X,W as G,X as H}from"./index-QUdrNkKl.js";import{h as W,c as J,d as Y}from"./render-B4qP-w0Q.js";import{s as Z,g as ee,e as te,f as oe,h as E}from"./use-prevent-scroll-eZQDeoK_.js";const ue=q({name:"QToolbarTitle",props:{shrink:Boolean},setup(e,{slots:h}){const o=d(()=>"q-toolbar__title ellipsis"+(e.shrink===!0?" col-shrink":""));return()=>v("div",{class:o.value},W(h.default))}}),ce=q({name:"QToolbar",props:{inset:Boolean},setup(e,{slots:h}){const o=d(()=>"q-toolbar row no-wrap items-center"+(e.inset===!0?" q-toolbar--inset":""));return()=>v("div",{class:o.value,role:"toolbar"},W(h.default))}});function ne(){const e=w(!D.value);return e.value===!1&&P(()=>{e.value=!0}),{isHydrated:e}}const K=typeof ResizeObserver<"u",M=K===!0?{}:{style:"display:block;position:absolute;top:0;left:0;right:0;bottom:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1;",url:"about:blank"},F=q({name:"QResizeObserver",props:{debounce:{type:[String,Number],default:100}},emits:["resize"],setup(e,{emit:h}){let o=null,t,i={width:-1,height:-1};function s(r){r===!0||e.debounce===0||e.debounce==="0"?u():o===null&&(o=setTimeout(u,e.debounce))}function u(){if(o!==null&&(clearTimeout(o),o=null),t){const{offsetWidth:r,offsetHeight:l}=t;(r!==i.width||l!==i.height)&&(i={width:r,height:l},h("resize",i))}}const{proxy:g}=Q();if(g.trigger=s,K===!0){let r;const l=b=>{t=g.$el.parentNode,t?(r=new ResizeObserver(s),r.observe(t),u()):b!==!0&&k(()=>{l(!0)})};return P(()=>{l()}),C(()=>{o!==null&&clearTimeout(o),r!==void 0&&(r.disconnect!==void 0?r.disconnect():t&&r.unobserve(t))}),U}else{let r=function(){o!==null&&(clearTimeout(o),o=null),f!==void 0&&(f.removeEventListener!==void 0&&f.removeEventListener("resize",s,B.passive),f=void 0)},l=function(){r(),t?.contentDocument&&(f=t.contentDocument.defaultView,f.addEventListener("resize",s,B.passive),u())};const{isHydrated:b}=ne();let f;return P(()=>{k(()=>{t=g.$el,t&&l()})}),C(r),()=>{if(b.value===!0)return v("object",{class:"q--avoid-card-border",style:M.style,tabindex:-1,type:"text/html",data:M.url,"aria-hidden":"true",onLoad:l})}}}}),de=q({name:"QHeader",props:{modelValue:{type:Boolean,default:!0},reveal:Boolean,revealOffset:{type:Number,default:250},bordered:Boolean,elevated:Boolean,heightHint:{type:[String,Number],default:50}},emits:["reveal","focusin"],setup(e,{slots:h,emit:o}){const{proxy:{$q:t}}=Q(),i=A(N,$);if(i===$)return console.error("QHeader needs to be child of QLayout"),$;const s=w(parseInt(e.heightHint,10)),u=w(!0),g=d(()=>e.reveal===!0||i.view.value.indexOf("H")!==-1||t.platform.is.ios&&i.isContainer.value===!0),r=d(()=>{if(e.modelValue!==!0)return 0;if(g.value===!0)return u.value===!0?s.value:0;const n=s.value-i.scroll.value.position;return n>0?n:0}),l=d(()=>e.modelValue!==!0||g.value===!0&&u.value!==!0),b=d(()=>e.modelValue===!0&&l.value===!0&&e.reveal===!0),f=d(()=>"q-header q-layout__section--marginal "+(g.value===!0?"fixed":"absolute")+"-top"+(e.bordered===!0?" q-header--bordered":"")+(l.value===!0?" q-header--hidden":"")+(e.modelValue!==!0?" q-layout--prevent-focus":"")),S=d(()=>{const n=i.rows.value.top,y={};return n[0]==="l"&&i.left.space===!0&&(y[t.lang.rtl===!0?"right":"left"]=`${i.left.size}px`),n[2]==="r"&&i.right.space===!0&&(y[t.lang.rtl===!0?"left":"right"]=`${i.right.size}px`),y});function c(n,y){i.update("header",n,y)}function p(n,y){n.value!==y&&(n.value=y)}function R({height:n}){p(s,n),c("size",n)}function O(n){b.value===!0&&p(u,!0),o("focusin",n)}T(()=>e.modelValue,n=>{c("space",n),p(u,!0),i.animate()}),T(r,n=>{c("offset",n)}),T(()=>e.reveal,n=>{n===!1&&p(u,e.modelValue)}),T(u,n=>{i.animate(),o("reveal",n)}),T(i.scroll,n=>{e.reveal===!0&&p(u,n.direction==="up"||n.position<=e.revealOffset||n.position-n.inflectionPoint<100)});const L={};return i.instances.header=L,e.modelValue===!0&&c("size",s.value),c("space",e.modelValue),c("offset",r.value),C(()=>{i.instances.header===L&&(i.instances.header=void 0,c("size",0),c("offset",0),c("space",!1))}),()=>{const n=J(h.default,[]);return e.elevated===!0&&n.push(v("div",{class:"q-layout__shadow absolute-full overflow-hidden no-pointer-events"})),n.push(v(F,{debounce:0,onResize:R})),v("header",{class:f.value,style:S.value,onFocusin:O},n)}}}),fe=q({name:"QPageContainer",setup(e,{slots:h}){const{proxy:{$q:o}}=Q(),t=A(N,$);if(t===$)return console.error("QPageContainer needs to be child of QLayout"),$;I(X,!0);const i=d(()=>{const s={};return t.header.space===!0&&(s.paddingTop=`${t.header.size}px`),t.right.space===!0&&(s[`padding${o.lang.rtl===!0?"Left":"Right"}`]=`${t.right.size}px`),t.footer.space===!0&&(s.paddingBottom=`${t.footer.size}px`),t.left.space===!0&&(s[`padding${o.lang.rtl===!0?"Right":"Left"}`]=`${t.left.size}px`),s});return()=>v("div",{class:"q-page-container",style:i.value},W(h.default))}}),{passive:j}=B,ie=["both","horizontal","vertical"],le=q({name:"QScrollObserver",props:{axis:{type:String,validator:e=>ie.includes(e),default:"vertical"},debounce:[String,Number],scrollTarget:Z},emits:["scroll"],setup(e,{emit:h}){const o={position:{top:0,left:0},direction:"down",directionChanged:!1,delta:{top:0,left:0},inflectionPoint:{top:0,left:0}};let t=null,i,s;T(()=>e.scrollTarget,()=>{r(),g()});function u(){t?.();const f=Math.max(0,te(i)),S=oe(i),c={top:f-o.position.top,left:S-o.position.left};if(e.axis==="vertical"&&c.top===0||e.axis==="horizontal"&&c.left===0)return;const p=Math.abs(c.top)>=Math.abs(c.left)?c.top<0?"up":"down":c.left<0?"left":"right";o.position={top:f,left:S},o.directionChanged=o.direction!==p,o.delta=c,o.directionChanged===!0&&(o.direction=p,o.inflectionPoint=o.position),h("scroll",{...o})}function g(){i=ee(s,e.scrollTarget),i.addEventListener("scroll",l,j),l(!0)}function r(){i!==void 0&&(i.removeEventListener("scroll",l,j),i=void 0)}function l(f){if(f===!0||e.debounce===0||e.debounce==="0")u();else if(t===null){const[S,c]=e.debounce?[setTimeout(u,e.debounce),clearTimeout]:[requestAnimationFrame(u),cancelAnimationFrame];t=()=>{c(S),t=null}}}const{proxy:b}=Q();return T(()=>b.$q.lang.rtl,u),P(()=>{s=b.$el.parentNode,g()}),C(()=>{t?.(),r()}),Object.assign(b,{trigger:l,getPosition:()=>o}),U}}),ve=q({name:"QLayout",props:{container:Boolean,view:{type:String,default:"hhh lpr fff",validator:e=>/^(h|l)h(h|r) lpr (f|l)f(f|r)$/.test(e.toLowerCase())},onScroll:Function,onScrollHeight:Function,onResize:Function},setup(e,{slots:h,emit:o}){const{proxy:{$q:t}}=Q(),i=w(null),s=w(t.screen.height),u=w(e.container===!0?0:t.screen.width),g=w({position:0,direction:"down",inflectionPoint:0}),r=w(0),l=w(D.value===!0?0:E()),b=d(()=>"q-layout q-layout--"+(e.container===!0?"containerized":"standard")),f=d(()=>e.container===!1?{minHeight:t.screen.height+"px"}:null),S=d(()=>l.value!==0?{[t.lang.rtl===!0?"left":"right"]:`${l.value}px`}:null),c=d(()=>l.value!==0?{[t.lang.rtl===!0?"right":"left"]:0,[t.lang.rtl===!0?"left":"right"]:`-${l.value}px`,width:`calc(100% + ${l.value}px)`}:null);function p(a){if(e.container===!0||document.qScrollPrevented!==!0){const m={position:a.position.top,direction:a.direction,directionChanged:a.directionChanged,inflectionPoint:a.inflectionPoint.top,delta:a.delta.top};g.value=m,e.onScroll!==void 0&&o("scroll",m)}}function R(a){const{height:m,width:x}=a;let z=!1;s.value!==m&&(z=!0,s.value=m,e.onScrollHeight!==void 0&&o("scrollHeight",m),L()),u.value!==x&&(z=!0,u.value=x),z===!0&&e.onResize!==void 0&&o("resize",a)}function O({height:a}){r.value!==a&&(r.value=a,L())}function L(){if(e.container===!0){const a=s.value>r.value?E():0;l.value!==a&&(l.value=a)}}let n=null;const y={instances:{},view:d(()=>e.view),isContainer:d(()=>e.container),rootRef:i,height:s,containerHeight:r,scrollbarWidth:l,totalWidth:d(()=>u.value+l.value),rows:d(()=>{const a=e.view.toLowerCase().split(" ");return{top:a[0].split(""),middle:a[1].split(""),bottom:a[2].split("")}}),header:H({size:0,offset:0,space:!1}),right:H({size:300,offset:0,space:!1}),footer:H({size:0,offset:0,space:!1}),left:H({size:300,offset:0,space:!1}),scroll:g,animate(){n!==null?clearTimeout(n):document.body.classList.add("q-body--layout-animate"),n=setTimeout(()=>{n=null,document.body.classList.remove("q-body--layout-animate")},155)},update(a,m,x){y[a][m]=x}};if(I(N,y),E()>0){let a=function(){z=null,V.classList.remove("hide-scrollbar")},m=function(){if(z===null){if(V.scrollHeight>t.screen.height)return;V.classList.add("hide-scrollbar")}else clearTimeout(z);z=setTimeout(a,300)},x=function(_){z!==null&&_==="remove"&&(clearTimeout(z),a()),window[`${_}EventListener`]("resize",m)},z=null;const V=document.body;T(()=>e.container!==!0?"add":"remove",x),e.container!==!0&&x("add"),G(()=>{x("remove")})}return()=>{const a=Y(h.default,[v(le,{onScroll:p}),v(F,{onResize:R})]),m=v("div",{class:b.value,style:f.value,ref:e.container===!0?void 0:i,tabindex:-1},a);return e.container===!0?v("div",{class:"q-layout-container overflow-hidden",ref:i},[v(F,{onResize:O}),v("div",{class:"absolute-full",style:S.value},[v("div",{class:"scroll",style:c.value},[m])])]):m}}});export{de as Q,ce as a,ue as b,fe as c,ve as d};