2 lines
8.7 KiB
JavaScript
2 lines
8.7 KiB
JavaScript
import{c as Q,a as u,h as g,b as L,e as y,g as H,i as W,l as M,p as I,d as K,w as A,o as X,f as Y,n as Z,j as ee,k as te,m as oe,q as ne,r as C,s as re,t as R,u as q,v as ae,x as le,y as ie,z as se,A as T,B as k,C as p,D as O,E as $,F as b,G as F,H as x,I as ce,J as ue,K as de,Q as fe,L as he,M as ge,N as me}from"./index.e908c8ed.js";import{Q as ve}from"./QBadge.6ac31b1c.js";import{Q as pe}from"./QHeader.2df70dd2.js";import{Q as ye}from"./sorry.6512b57b.js";import{Q as U}from"./QResizeObserver.4148d4ee.js";import{_ as be}from"./InfiniteScroll.535f5283.js";import{U as we}from"./UserAvatar.4cf87caa.js";import{_ as Se}from"./AuthButton.b9aa4f23.js";import{W as $e}from"./WarnTip.0eda1d38.js";import{_ as xe}from"./LoadingView.e605bd10.js";/* empty css */import"./selection.c95d5970.js";import"./QImg.574c62c5.js";import"./plugin-vue_export-helper.21dcd24c.js";import"./use-quasar.224893de.js";var E=Q({name:"QToolbarTitle",props:{shrink:Boolean},setup(e,{slots:i}){const o=u(()=>"q-toolbar__title ellipsis"+(e.shrink===!0?" col-shrink":""));return()=>g("div",{class:o.value},L(i.default))}}),_e=Q({name:"QToolbar",props:{inset:Boolean},setup(e,{slots:i}){const o=u(()=>"q-toolbar row no-wrap items-center"+(e.inset===!0?" q-toolbar--inset":""));return()=>g("div",{class:o.value,role:"toolbar"},L(i.default))}}),Ce=Q({name:"QPage",props:{padding:Boolean,styleFn:Function},setup(e,{slots:i}){const{proxy:{$q:o}}=H(),t=W(M,y);if(t===y)return console.error("QPage needs to be a deep child of QLayout"),y;if(W(I,y)===y)return console.error("QPage needs to be child of QPageContainer"),y;const l=u(()=>{const s=(t.header.space===!0?t.header.size:0)+(t.footer.space===!0?t.footer.size:0);if(typeof e.styleFn=="function"){const h=t.isContainer.value===!0?t.containerHeight.value:o.screen.height;return e.styleFn(s,h)}return{minHeight:t.isContainer.value===!0?t.containerHeight.value-s+"px":o.screen.height===0?s!==0?`calc(100vh - ${s}px)`:"100vh":o.screen.height-s+"px"}}),d=u(()=>`q-page${e.padding===!0?" q-layout-padding":""}`);return()=>g("main",{class:d.value,style:l.value},L(i.default))}}),Qe=Q({name:"QPageContainer",setup(e,{slots:i}){const{proxy:{$q:o}}=H(),t=W(M,y);if(t===y)return console.error("QPageContainer needs to be child of QLayout"),y;K(I,!0);const a=u(()=>{const l={};return t.header.space===!0&&(l.paddingTop=`${t.header.size}px`),t.right.space===!0&&(l[`padding${o.lang.rtl===!0?"Left":"Right"}`]=`${t.right.size}px`),t.footer.space===!0&&(l.paddingBottom=`${t.footer.size}px`),t.left.space===!0&&(l[`padding${o.lang.rtl===!0?"Right":"Left"}`]=`${t.left.size}px`),l});return()=>g("div",{class:"q-page-container",style:a.value},L(i.default))}});const{passive:D}=te,ze=["both","horizontal","vertical"];var Te=Q({name:"QScrollObserver",props:{axis:{type:String,validator:e=>ze.includes(e),default:"vertical"},debounce:[String,Number],scrollTarget:{default:void 0}},emits:["scroll"],setup(e,{emit:i}){const o={position:{top:0,left:0},direction:"down",directionChanged:!1,delta:{top:0,left:0},inflectionPoint:{top:0,left:0}};let t=null,a,l;A(()=>e.scrollTarget,()=>{h(),s()});function d(){t!==null&&t();const m=Math.max(0,oe(a)),v=ne(a),f={top:m-o.position.top,left:v-o.position.left};if(e.axis==="vertical"&&f.top===0||e.axis==="horizontal"&&f.left===0)return;const w=Math.abs(f.top)>=Math.abs(f.left)?f.top<0?"up":"down":f.left<0?"left":"right";o.position={top:m,left:v},o.directionChanged=o.direction!==w,o.delta=f,o.directionChanged===!0&&(o.direction=w,o.inflectionPoint=o.position),i("scroll",{...o})}function s(){a=ee(l,e.scrollTarget),a.addEventListener("scroll",r,D),r(!0)}function h(){a!==void 0&&(a.removeEventListener("scroll",r,D),a=void 0)}function r(m){if(m===!0||e.debounce===0||e.debounce==="0")d();else if(t===null){const[v,f]=e.debounce?[setTimeout(d,e.debounce),clearTimeout]:[requestAnimationFrame(d),cancelAnimationFrame];t=()=>{f(v),t=null}}}const{proxy:_}=H();return A(()=>_.$q.lang.rtl,d),X(()=>{l=_.$el.parentNode,s()}),Y(()=>{t!==null&&t(),h()}),Object.assign(_,{trigger:r,getPosition:()=>o}),Z}}),Pe=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:i,emit:o}){const{proxy:{$q:t}}=H(),a=C(null),l=C(t.screen.height),d=C(e.container===!0?0:t.screen.width),s=C({position:0,direction:"down",inflectionPoint:0}),h=C(0),r=C(re.value===!0?0:R()),_=u(()=>"q-layout q-layout--"+(e.container===!0?"containerized":"standard")),m=u(()=>e.container===!1?{minHeight:t.screen.height+"px"}:null),v=u(()=>r.value!==0?{[t.lang.rtl===!0?"left":"right"]:`${r.value}px`}:null),f=u(()=>r.value!==0?{[t.lang.rtl===!0?"right":"left"]:0,[t.lang.rtl===!0?"left":"right"]:`-${r.value}px`,width:`calc(100% + ${r.value}px)`}:null);function w(n){if(e.container===!0||document.qScrollPrevented!==!0){const c={position:n.position.top,direction:n.direction,directionChanged:n.directionChanged,inflectionPoint:n.inflectionPoint.top,delta:n.delta.top};s.value=c,e.onScroll!==void 0&&o("scroll",c)}}function G(n){const{height:c,width:S}=n;let z=!1;l.value!==c&&(z=!0,l.value=c,e.onScrollHeight!==void 0&&o("scrollHeight",c),N()),d.value!==S&&(z=!0,d.value=S),z===!0&&e.onResize!==void 0&&o("resize",n)}function J({height:n}){h.value!==n&&(h.value=n,N())}function N(){if(e.container===!0){const n=l.value>h.value?R():0;r.value!==n&&(r.value=n)}}let P=null;const V={instances:{},view:u(()=>e.view),isContainer:u(()=>e.container),rootRef:a,height:l,containerHeight:h,scrollbarWidth:r,totalWidth:u(()=>d.value+r.value),rows:u(()=>{const n=e.view.toLowerCase().split(" ");return{top:n[0].split(""),middle:n[1].split(""),bottom:n[2].split("")}}),header:q({size:0,offset:0,space:!1}),right:q({size:300,offset:0,space:!1}),footer:q({size:0,offset:0,space:!1}),left:q({size:300,offset:0,space:!1}),scroll:s,animate(){P!==null?clearTimeout(P):document.body.classList.add("q-body--layout-animate"),P=setTimeout(()=>{P=null,document.body.classList.remove("q-body--layout-animate")},155)},update(n,c,S){V[n][c]=S}};if(K(M,V),R()>0){let S=function(){n=null,c.classList.remove("hide-scrollbar")},z=function(){if(n===null){if(c.scrollHeight>t.screen.height)return;c.classList.add("hide-scrollbar")}else clearTimeout(n);n=setTimeout(S,300)},B=function(j){n!==null&&j==="remove"&&(clearTimeout(n),S()),window[`${j}EventListener`]("resize",z)},n=null;const c=document.body;A(()=>e.container!==!0?"add":"remove",B),e.container!==!0&&B("add"),ae(()=>{B("remove")})}return()=>{const n=le(i.default,[g(Te,{onScroll:w}),g(U,{onResize:G})]),c=g("div",{class:_.value,style:m.value,ref:e.container===!0?void 0:a,tabindex:-1},n);return e.container===!0?g("div",{class:"q-layout-container overflow-hidden",ref:a},[g(U,{onResize:J}),g("div",{class:"absolute-full",style:v.value},[g("div",{class:"scroll",style:f.value},[c])])]):c}}});const qe={key:0,class:"row justify-center q-my-md"},ke={__name:"PageLayout",props:{hideHeader:Boolean,headerClass:String,loading:Boolean},setup(e){const i=e,o=ie(),t=se(),a=ue(),l=de(),d=u(()=>a.query.title||a.meta.title),s=u(()=>a.path.split("/").length<=2);function h(){l.back()}return(r,_)=>(T(),k(Pe,{view:"lHh lpr lFf",key:"1"},{default:p(()=>[i.hideHeader?F("",!0):(T(),k(pe,{key:0,bordered:!1,class:O(["topBar-header text-black bg-white",i.headerClass])},{default:p(()=>[$(r.$slots,"header",{backState:b(s),back:h},()=>[x(_e,{class:"justify-between overflow-hidden"},{default:p(()=>[x(E,{class:"toolbar-btns col-auto q-pr-none"},{default:p(()=>[b(s)?F("",!0):(T(),k(fe,{key:0,flat:"",round:"",dense:"",icon:"arrow_back_ios_new",onClick:h},{default:p(()=>{var m,v,f,w;return[((m=b(t).orders)==null?void 0:m.pending_num)||((v=b(t).orders)==null?void 0:v.draft_num)||((f=b(t).orders)==null?void 0:f.win_num)||((w=b(t).orders)==null?void 0:w.withdraw_num)?(T(),k(ve,{key:0,color:"red",rounded:"",class:"absolute-top-left",style:{width:"8px","min-height":"8px",padding:"0px"}})):F("",!0)]}),_:1})),$(r.$slots,"header-left")]),_:3}),x(E,{class:"text-left row col-grow items-center"},{default:p(()=>[$(r.$slots,"header-title",{},()=>[he(ge(b(d)),1)])]),_:3}),x(E,{class:"toolbar-btns col q-pl-none text-right"},{default:p(()=>[$(r.$slots,"header-right")]),_:3})]),_:3}),$(r.$slots,"header-append")])]),_:3},8,["class"])),x(Qe,{class:O(["page-container",b(o).class])},{default:p(()=>[x(Ce,null,{default:p(()=>[i.loading?(T(),ce("div",qe,[x(ye,{color:"grey",size:"24px"})])):$(r.$slots,"default",{key:1})]),_:3})]),_:3},8,["class"]),$(r.$slots,"footer")]),_:3}))}};var Ie=me(({app:e,router:i,store:o,urlPath:t,redirect:a})=>{e.component("PageLayout",ke),e.component("InfiniteScroll",be),e.component("UserAvatar",we),e.component("AuthButton",Se),e.component("WarnTip",$e),e.component("LoadingView",xe),e.config.errorHandler=(l,d,s)=>{console.error(l,d,s)}});export{Ie as default};
|