From f009c347d2c03fdf99f24a16d104c1f688c48351 Mon Sep 17 00:00:00 2001 From: Patrick Mulligan Date: Tue, 5 Nov 2024 11:58:48 +0100 Subject: [PATCH 1/9] chore: update market binaries --- .../market/assets/ErrorNotFound.db68ea1d.js | 1 - .../market/assets/ErrorNotFound.e659d628.js | 1 + static/market/assets/MainLayout.8257fc44.js | 1 + static/market/assets/MainLayout.8e5caf60.js | 1 - static/market/assets/MarketPage.b14abdfe.js | 45 + static/market/assets/MarketPage.e81dd906.js | 45 - .../market/assets/QResizeObserver.0b22f089.js | 1 + .../market/assets/QResizeObserver.1ffe80c2.js | 1 - static/market/assets/index.73d462e5.css | 1 - static/market/assets/index.de281aed.css | 1 + .../{index.923cbbf9.js => index.dfb4e5db.js} | 2 +- static/market/index.html | 30 +- static/market/js/bolt11-decoder.js | 342 +- static/market/js/nostr.bundle.js | 3723 ++++++++++------- static/market/js/utils.js | 287 +- 15 files changed, 2570 insertions(+), 1912 deletions(-) delete mode 100644 static/market/assets/ErrorNotFound.db68ea1d.js create mode 100644 static/market/assets/ErrorNotFound.e659d628.js create mode 100644 static/market/assets/MainLayout.8257fc44.js delete mode 100644 static/market/assets/MainLayout.8e5caf60.js create mode 100644 static/market/assets/MarketPage.b14abdfe.js delete mode 100644 static/market/assets/MarketPage.e81dd906.js create mode 100644 static/market/assets/QResizeObserver.0b22f089.js delete mode 100644 static/market/assets/QResizeObserver.1ffe80c2.js delete mode 100644 static/market/assets/index.73d462e5.css create mode 100644 static/market/assets/index.de281aed.css rename static/market/assets/{index.923cbbf9.js => index.dfb4e5db.js} (56%) diff --git a/static/market/assets/ErrorNotFound.db68ea1d.js b/static/market/assets/ErrorNotFound.db68ea1d.js deleted file mode 100644 index 3b62c08..0000000 --- a/static/market/assets/ErrorNotFound.db68ea1d.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as t,n as o,s,aQ as a,v as e,x as n,ap as r}from"./index.923cbbf9.js";const c=o({name:"ErrorNotFound"}),l={class:"fullscreen bg-blue text-white text-center q-pa-md flex flex-center"},d=e("div",{style:{"font-size":"30vh"}}," 404 ",-1),i=e("div",{class:"text-h2",style:{opacity:".4"}}," Oops. Nothing here... ",-1);function _(p,f,u,x,h,m){return s(),a("div",l,[e("div",null,[d,i,n(r,{class:"q-mt-xl",color:"white","text-color":"blue",unelevated:"",to:"/",label:"Go Home","no-caps":""})])])}var N=t(c,[["render",_]]);export{N as default}; diff --git a/static/market/assets/ErrorNotFound.e659d628.js b/static/market/assets/ErrorNotFound.e659d628.js new file mode 100644 index 0000000..881e411 --- /dev/null +++ b/static/market/assets/ErrorNotFound.e659d628.js @@ -0,0 +1 @@ +import{_ as t,E as o,G as s,aR as a,aT as e,J as n,av as r}from"./index.dfb4e5db.js";const c=o({name:"ErrorNotFound"}),l={class:"fullscreen bg-blue text-white text-center q-pa-md flex flex-center"},d=e("div",{style:{"font-size":"30vh"}},"404",-1),i=e("div",{class:"text-h2",style:{opacity:"0.4"}},"Oops. Nothing here...",-1);function _(p,f,u,h,x,m){return s(),a("div",l,[e("div",null,[d,i,n(r,{class:"q-mt-xl",color:"white","text-color":"blue",unelevated:"",to:"/",label:"Go Home","no-caps":""})])])}var N=t(c,[["render",_]]);export{N as default}; diff --git a/static/market/assets/MainLayout.8257fc44.js b/static/market/assets/MainLayout.8257fc44.js new file mode 100644 index 0000000..6a18da8 --- /dev/null +++ b/static/market/assets/MainLayout.8257fc44.js @@ -0,0 +1 @@ +import{c as te,u as _e,a as Pe,b as Me,d as We,e as Oe,i as he,f as D,l as ae,r as b,g as o,h as De,j as Re,w as d,o as He,n as ue,k as Qe,m as Ae,p as w,q as se,s as me,t as le,v as Fe,x as ye,y as Ie,z as Ve,A as Z,B as V,C as Ee,D as Ne,_ as je,E as Ue,F as Ke,G as Ge,H as Je,I as ce,J as E}from"./index.dfb4e5db.js";import{T as ee,b as N,Q as Xe,a as de}from"./QResizeObserver.0b22f089.js";const ve=150;var fe=te({name:"QDrawer",inheritAttrs:!1,props:{..._e,...Pe,side:{type:String,default:"left",validator:e=>["left","right"].includes(e)},width:{type:Number,default:300},mini:Boolean,miniToOverlay:Boolean,miniWidth:{type:Number,default:57},noMiniAnimation:Boolean,breakpoint:{type:Number,default:1023},showIfAbove:Boolean,behavior:{type:String,validator:e=>["default","desktop","mobile"].includes(e),default:"default"},bordered:Boolean,elevated:Boolean,overlay:Boolean,persistent:Boolean,noSwipeOpen:Boolean,noSwipeClose:Boolean,noSwipeBackdrop:Boolean},emits:[...Me,"onLayout","miniState"],setup(e,{slots:$,emit:v,attrs:r}){const f=le(),{proxy:{$q:u}}=f,T=We(e,u),{preventBodyScroll:M}=Fe(),{registerTimeout:z,removeTimeout:x}=Oe(),a=he(ae,D);if(a===D)return console.error("QDrawer needs to be child of QLayout"),D;let R,S=null,B;const c=b(e.behavior==="mobile"||e.behavior!=="desktop"&&a.totalWidth.value<=e.breakpoint),L=o(()=>e.mini===!0&&c.value!==!0),h=o(()=>L.value===!0?e.miniWidth:e.width),i=b(e.showIfAbove===!0&&c.value===!1?!0:e.modelValue===!0),p=o(()=>e.persistent!==!0&&(c.value===!0||ge.value===!0));function H(t,l){if(_(),t!==!1&&a.animate(),g(0),c.value===!0){const m=a.instances[F.value];m!==void 0&&m.belowBreakpoint===!0&&m.hide(!1),k(1),a.isContainer.value!==!0&&M(!0)}else k(0),t!==!1&&J(!1);z(()=>{t!==!1&&J(!0),l!==!0&&v("show",t)},ve)}function n(t,l){Q(),t!==!1&&a.animate(),k(0),g(W.value*h.value),X(),l!==!0?z(()=>{v("hide",t)},ve):x()}const{show:s,hide:y}=De({showing:i,hideOnRouteChange:p,handleShow:H,handleHide:n}),{addToHistory:_,removeFromHistory:Q}=Re(i,y,p),P={belowBreakpoint:c,hide:y},C=o(()=>e.side==="right"),W=o(()=>(u.lang.rtl===!0?-1:1)*(C.value===!0?1:-1)),ne=b(0),O=b(!1),j=b(!1),oe=b(h.value*W.value),F=o(()=>C.value===!0?"left":"right"),U=o(()=>i.value===!0&&c.value===!1&&e.overlay===!1?e.miniToOverlay===!0?e.miniWidth:h.value:0),K=o(()=>e.overlay===!0||e.miniToOverlay===!0||a.view.value.indexOf(C.value?"R":"L")>-1||u.platform.is.ios===!0&&a.isContainer.value===!0),A=o(()=>e.overlay===!1&&i.value===!0&&c.value===!1),ge=o(()=>e.overlay===!0&&i.value===!0&&c.value===!1),we=o(()=>"fullscreen q-drawer__backdrop"+(i.value===!1&&O.value===!1?" hidden":"")),be=o(()=>({backgroundColor:`rgba(0,0,0,${ne.value*.4})`})),ie=o(()=>C.value===!0?a.rows.value.top[2]==="r":a.rows.value.top[0]==="l"),xe=o(()=>C.value===!0?a.rows.value.bottom[2]==="r":a.rows.value.bottom[0]==="l"),Se=o(()=>{const t={};return a.header.space===!0&&ie.value===!1&&(K.value===!0?t.top=`${a.header.offset}px`:a.header.space===!0&&(t.top=`${a.header.size}px`)),a.footer.space===!0&&xe.value===!1&&(K.value===!0?t.bottom=`${a.footer.offset}px`:a.footer.space===!0&&(t.bottom=`${a.footer.size}px`)),t}),Ce=o(()=>{const t={width:`${h.value}px`,transform:`translateX(${oe.value}px)`};return c.value===!0?t:Object.assign(t,Se.value)}),$e=o(()=>"q-drawer__content fit "+(a.isContainer.value!==!0?"scroll":"overflow-auto")),ke=o(()=>`q-drawer q-drawer--${e.side}`+(j.value===!0?" q-drawer--mini-animate":"")+(e.bordered===!0?" q-drawer--bordered":"")+(T.value===!0?" q-drawer--dark q-dark":"")+(O.value===!0?" no-transition":i.value===!0?"":" q-layout--prevent-focus")+(c.value===!0?" fixed q-drawer--on-top q-drawer--mobile q-drawer--top-padding":` q-drawer--${L.value===!0?"mini":"standard"}`+(K.value===!0||A.value!==!0?" fixed":"")+(e.overlay===!0||e.miniToOverlay===!0?" q-drawer--on-top":"")+(ie.value===!0?" q-drawer--top-padding":""))),qe=o(()=>{const t=u.lang.rtl===!0?e.side:F.value;return[[ee,Le,void 0,{[t]:!0,mouse:!0}]]}),Te=o(()=>{const t=u.lang.rtl===!0?F.value:e.side;return[[ee,re,void 0,{[t]:!0,mouse:!0}]]}),ze=o(()=>{const t=u.lang.rtl===!0?F.value:e.side;return[[ee,re,void 0,{[t]:!0,mouse:!0,mouseAllDir:!0}]]});function G(){pe(c,e.behavior==="mobile"||e.behavior!=="desktop"&&a.totalWidth.value<=e.breakpoint)}d(c,t=>{t===!0?(R=i.value,i.value===!0&&y(!1)):e.overlay===!1&&e.behavior!=="mobile"&&R!==!1&&(i.value===!0?(g(0),k(0),X()):s(!1))}),d(()=>e.side,(t,l)=>{a.instances[l]===P&&(a.instances[l]=void 0,a[l].space=!1,a[l].offset=0),a.instances[t]=P,a[t].size=h.value,a[t].space=A.value,a[t].offset=U.value}),d(a.totalWidth,()=>{(a.isContainer.value===!0||document.qScrollPrevented!==!0)&&G()}),d(()=>e.behavior+e.breakpoint,G),d(a.isContainer,t=>{i.value===!0&&M(t!==!0),t===!0&&G()}),d(a.scrollbarWidth,()=>{g(i.value===!0?0:void 0)}),d(U,t=>{q("offset",t)}),d(A,t=>{v("onLayout",t),q("space",t)}),d(C,()=>{g()}),d(h,t=>{g(),Y(e.miniToOverlay,t)}),d(()=>e.miniToOverlay,t=>{Y(t,h.value)}),d(()=>u.lang.rtl,()=>{g()}),d(()=>e.mini,()=>{e.noMiniAnimation||e.modelValue===!0&&(Be(),a.animate())}),d(L,t=>{v("miniState",t)});function g(t){t===void 0?ue(()=>{t=i.value===!0?0:h.value,g(W.value*t)}):(a.isContainer.value===!0&&C.value===!0&&(c.value===!0||Math.abs(t)===h.value)&&(t+=W.value*a.scrollbarWidth.value),oe.value=t)}function k(t){ne.value=t}function J(t){const l=t===!0?"remove":a.isContainer.value!==!0?"add":"";l!==""&&document.body.classList[l]("q-body--drawer-toggle")}function Be(){S!==null&&clearTimeout(S),f.proxy&&f.proxy.$el&&f.proxy.$el.classList.add("q-drawer--mini-animate"),j.value=!0,S=setTimeout(()=>{S=null,j.value=!1,f&&f.proxy&&f.proxy.$el&&f.proxy.$el.classList.remove("q-drawer--mini-animate")},150)}function Le(t){if(i.value!==!1)return;const l=h.value,m=N(t.distance.x,0,l);if(t.isFinal===!0){m>=Math.min(75,l)===!0?s():(a.animate(),k(0),g(W.value*l)),O.value=!1;return}g((u.lang.rtl===!0?C.value!==!0:C.value)?Math.max(l-m,0):Math.min(0,m-l)),k(N(m/l,0,1)),t.isFirst===!0&&(O.value=!0)}function re(t){if(i.value!==!0)return;const l=h.value,m=t.direction===e.side,I=(u.lang.rtl===!0?m!==!0:m)?N(t.distance.x,0,l):0;if(t.isFinal===!0){Math.abs(I){v("onLayout",A.value),v("miniState",L.value),R=e.showIfAbove===!0;const t=()=>{(i.value===!0?H:n)(!1,!0)};if(a.totalWidth.value!==0){ue(t);return}B=d(a.totalWidth,()=>{B(),B=void 0,i.value===!1&&e.showIfAbove===!0&&c.value===!1?s(!1):t()})}),Qe(()=>{B!==void 0&&B(),S!==null&&(clearTimeout(S),S=null),i.value===!0&&X(),a.instances[e.side]===P&&(a.instances[e.side]=void 0,q("size",0),q("offset",0),q("space",!1))}),()=>{const t=[];c.value===!0&&(e.noSwipeOpen===!1&&t.push(Ae(w("div",{key:"open",class:`q-drawer__opener fixed-${e.side}`,"aria-hidden":"true"}),qe.value)),t.push(se("div",{ref:"backdrop",class:we.value,style:be.value,"aria-hidden":"true",onClick:y},void 0,"backdrop",e.noSwipeBackdrop!==!0&&i.value===!0,()=>ze.value)));const l=L.value===!0&&$.mini!==void 0,m=[w("div",{...r,key:""+l,class:[$e.value,r.class]},l===!0?$.mini():me($.default))];return e.elevated===!0&&i.value===!0&&m.push(w("div",{class:"q-layout__shadow absolute-full overflow-hidden no-pointer-events"})),t.push(se("aside",{ref:"content",class:ke.value,style:Ce.value},m,"contentclose",e.noSwipeClose!==!0&&c.value===!0,()=>Te.value)),w("div",{class:"q-drawer-container"},t)}}}),Ye=te({name:"QPageContainer",setup(e,{slots:$}){const{proxy:{$q:v}}=le(),r=he(ae,D);if(r===D)return console.error("QPageContainer needs to be child of QLayout"),D;ye(Ie,!0);const f=o(()=>{const u={};return r.header.space===!0&&(u.paddingTop=`${r.header.size}px`),r.right.space===!0&&(u[`padding${v.lang.rtl===!0?"Left":"Right"}`]=`${r.right.size}px`),r.footer.space===!0&&(u.paddingBottom=`${r.footer.size}px`),r.left.space===!0&&(u[`padding${v.lang.rtl===!0?"Right":"Left"}`]=`${r.left.size}px`),u});return()=>w("div",{class:"q-page-container",style:f.value},me($.default))}}),Ze=te({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:$,emit:v}){const{proxy:{$q:r}}=le(),f=b(null),u=b(r.screen.height),T=b(e.container===!0?0:r.screen.width),M=b({position:0,direction:"down",inflectionPoint:0}),z=b(0),x=b(Ve.value===!0?0:Z()),a=o(()=>"q-layout q-layout--"+(e.container===!0?"containerized":"standard")),R=o(()=>e.container===!1?{minHeight:r.screen.height+"px"}:null),S=o(()=>x.value!==0?{[r.lang.rtl===!0?"left":"right"]:`${x.value}px`}:null),B=o(()=>x.value!==0?{[r.lang.rtl===!0?"right":"left"]:0,[r.lang.rtl===!0?"left":"right"]:`-${x.value}px`,width:`calc(100% + ${x.value}px)`}:null);function c(n){if(e.container===!0||document.qScrollPrevented!==!0){const s={position:n.position.top,direction:n.direction,directionChanged:n.directionChanged,inflectionPoint:n.inflectionPoint.top,delta:n.delta.top};M.value=s,e.onScroll!==void 0&&v("scroll",s)}}function L(n){const{height:s,width:y}=n;let _=!1;u.value!==s&&(_=!0,u.value=s,e.onScrollHeight!==void 0&&v("scrollHeight",s),i()),T.value!==y&&(_=!0,T.value=y),_===!0&&e.onResize!==void 0&&v("resize",n)}function h({height:n}){z.value!==n&&(z.value=n,i())}function i(){if(e.container===!0){const n=u.value>z.value?Z():0;x.value!==n&&(x.value=n)}}let p=null;const H={instances:{},view:o(()=>e.view),isContainer:o(()=>e.container),rootRef:f,height:u,containerHeight:z,scrollbarWidth:x,totalWidth:o(()=>T.value+x.value),rows:o(()=>{const n=e.view.toLowerCase().split(" ");return{top:n[0].split(""),middle:n[1].split(""),bottom:n[2].split("")}}),header:V({size:0,offset:0,space:!1}),right:V({size:300,offset:0,space:!1}),footer:V({size:0,offset:0,space:!1}),left:V({size:300,offset:0,space:!1}),scroll:M,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,s,y){H[n][s]=y}};if(ye(ae,H),Z()>0){let y=function(){n=null,s.classList.remove("hide-scrollbar")},_=function(){if(n===null){if(s.scrollHeight>r.screen.height)return;s.classList.add("hide-scrollbar")}else clearTimeout(n);n=setTimeout(y,300)},Q=function(P){n!==null&&P==="remove"&&(clearTimeout(n),y()),window[`${P}EventListener`]("resize",_)},n=null;const s=document.body;d(()=>e.container!==!0?"add":"remove",Q),e.container!==!0&&Q("add"),Ee(()=>{Q("remove")})}return()=>{const n=Ne($.default,[w(Xe,{onScroll:c}),w(de,{onResize:L})]),s=w("div",{class:a.value,style:R.value,ref:e.container===!0?void 0:f,tabindex:-1},n);return e.container===!0?w("div",{class:"q-layout-container overflow-hidden",ref:f},[w(de,{onResize:h}),w("div",{class:"absolute-full",style:S.value},[w("div",{class:"scroll",style:B.value},[s])])]):s}}});const et=Ue({name:"MainLayout",setup(){return{}}});function tt(e,$,v,r,f,u){const T=Ke("router-view");return Ge(),Je(Ze,{view:"hHh lpR fFf"},{default:ce(()=>[E(fe,{"show-if-above":"",side:"left"}),E(fe,{"show-if-above":"",side:"right"}),E(Ye,null,{default:ce(()=>[E(T)]),_:1})]),_:1})}var ot=je(et,[["render",tt]]);export{ot as default}; diff --git a/static/market/assets/MainLayout.8e5caf60.js b/static/market/assets/MainLayout.8e5caf60.js deleted file mode 100644 index 05920b0..0000000 --- a/static/market/assets/MainLayout.8e5caf60.js +++ /dev/null @@ -1 +0,0 @@ -import{c as R,i as E,e as _,l as P,p as H,a,h as r,b as K,g as Q,d as N,r as d,f as O,j as b,k as p,w as V,o as I,m as U,_ as A,n as D,q as G,s as J,t as X,u as C,v as y,x as L}from"./index.923cbbf9.js";import{Q as Y,a as q}from"./QResizeObserver.1ffe80c2.js";var Z=R({name:"QPageContainer",setup(t,{slots:h}){const{proxy:{$q:s}}=Q(),o=E(P,_);if(o===_)return console.error("QPageContainer needs to be child of QLayout"),_;H(N,!0);const u=a(()=>{const l={};return o.header.space===!0&&(l.paddingTop=`${o.header.size}px`),o.right.space===!0&&(l[`padding${s.lang.rtl===!0?"Left":"Right"}`]=`${o.right.size}px`),o.footer.space===!0&&(l.paddingBottom=`${o.footer.size}px`),o.left.space===!0&&(l[`padding${s.lang.rtl===!0?"Right":"Left"}`]=`${o.left.size}px`),l});return()=>r("div",{class:"q-page-container",style:u.value},K(h.default))}}),ee=R({name:"QLayout",props:{container:Boolean,view:{type:String,default:"hhh lpr fff",validator:t=>/^(h|l)h(h|r) lpr (f|l)f(f|r)$/.test(t.toLowerCase())},onScroll:Function,onScrollHeight:Function,onResize:Function},setup(t,{slots:h,emit:s}){const{proxy:{$q:o}}=Q(),u=d(null),l=d(o.screen.height),f=d(t.container===!0?0:o.screen.width),z=d({position:0,direction:"down",inflectionPoint:0}),m=d(0),i=d(O.value===!0?0:b()),T=a(()=>"q-layout q-layout--"+(t.container===!0?"containerized":"standard")),B=a(()=>t.container===!1?{minHeight:o.screen.height+"px"}:null),F=a(()=>i.value!==0?{[o.lang.rtl===!0?"left":"right"]:`${i.value}px`}:null),W=a(()=>i.value!==0?{[o.lang.rtl===!0?"right":"left"]:0,[o.lang.rtl===!0?"left":"right"]:`-${i.value}px`,width:`calc(100% + ${i.value}px)`}:null);function k(e){if(t.container===!0||document.qScrollPrevented!==!0){const n={position:e.position.top,direction:e.direction,directionChanged:e.directionChanged,inflectionPoint:e.inflectionPoint.top,delta:e.delta.top};z.value=n,t.onScroll!==void 0&&s("scroll",n)}}function M(e){const{height:n,width:c}=e;let v=!1;l.value!==n&&(v=!0,l.value=n,t.onScrollHeight!==void 0&&s("scrollHeight",n),S()),f.value!==c&&(v=!0,f.value=c),v===!0&&t.onResize!==void 0&&s("resize",e)}function j({height:e}){m.value!==e&&(m.value=e,S())}function S(){if(t.container===!0){const e=l.value>m.value?b():0;i.value!==e&&(i.value=e)}}let g=null;const $={instances:{},view:a(()=>t.view),isContainer:a(()=>t.container),rootRef:u,height:l,containerHeight:m,scrollbarWidth:i,totalWidth:a(()=>f.value+i.value),rows:a(()=>{const e=t.view.toLowerCase().split(" ");return{top:e[0].split(""),middle:e[1].split(""),bottom:e[2].split("")}}),header:p({size:0,offset:0,space:!1}),right:p({size:300,offset:0,space:!1}),footer:p({size:0,offset:0,space:!1}),left:p({size:300,offset:0,space:!1}),scroll:z,animate(){g!==null?clearTimeout(g):document.body.classList.add("q-body--layout-animate"),g=setTimeout(()=>{g=null,document.body.classList.remove("q-body--layout-animate")},155)},update(e,n,c){$[e][n]=c}};if(H(P,$),b()>0){let c=function(){e=null,n.classList.remove("hide-scrollbar")},v=function(){if(e===null){if(n.scrollHeight>o.screen.height)return;n.classList.add("hide-scrollbar")}else clearTimeout(e);e=setTimeout(c,300)},w=function(x){e!==null&&x==="remove"&&(clearTimeout(e),c()),window[`${x}EventListener`]("resize",v)},e=null;const n=document.body;V(()=>t.container!==!0?"add":"remove",w),t.container!==!0&&w("add"),I(()=>{w("remove")})}return()=>{const e=U(h.default,[r(Y,{onScroll:k}),r(q,{onResize:M})]),n=r("div",{class:T.value,style:B.value,ref:t.container===!0?void 0:u,tabindex:-1},e);return t.container===!0?r("div",{class:"q-layout-container overflow-hidden",ref:u},[r(q,{onResize:j}),r("div",{class:"absolute-full",style:F.value},[r("div",{class:"scroll",style:W.value},[n])])]):n}}});const te=D({name:"MainLayout",setup(){return{}}}),oe={class:"row q-mb-sm q-mt-md"},ne=y("div",{class:"col-lg-2 col-md-1 col-sm-0"},null,-1),le={class:"col-lg-8 col-md-10 col-sm-12 auto-width q-pl-md q-pr-md"},ie=y("div",{class:"col-lg-2 col-md-1 col-sm-0"},null,-1);function ae(t,h,s,o,u,l){const f=G("router-view");return J(),X(ee,{view:"lHh Lpr lFf"},{default:C(()=>[y("div",oe,[ne,y("div",le,[L(Z,null,{default:C(()=>[L(f)]),_:1})]),ie])]),_:1})}var ce=A(te,[["render",ae]]);export{ce as default}; diff --git a/static/market/assets/MarketPage.b14abdfe.js b/static/market/assets/MarketPage.b14abdfe.js new file mode 100644 index 0000000..af861cf --- /dev/null +++ b/static/market/assets/MarketPage.b14abdfe.js @@ -0,0 +1,45 @@ +import{c as Je,g as I,p as E,D as bi,r as se,$ as Ya,R as Ia,n as kn,O as Gr,w as ze,o as ei,k as Gt,t as Dt,U as Ki,X as Xi,a0 as Xf,L as Wi,A as Db,u as Hu,a1 as Gu,b as Ku,a2 as $a,e as so,a3 as Ah,h as Qu,a4 as Eh,W as Do,a5 as Ha,s as Mt,V as Ft,a as ar,a6 as qb,d as lr,a7 as Pb,q as ju,a8 as Ht,a9 as xb,aa as uo,M as Ih,ab as Zu,ac as Ju,ad as ia,ae as aa,af as Ab,ag as Eb,ah as $h,ai as qo,aj as Rh,ak as Oh,al as Lh,T as qu,am as Nh,an as eh,ao as Ib,ap as $b,aq as Bh,ar as Rb,as as Fh,at as co,au as Ob,av as ge,S as mi,aw as Lb,ax as Nb,ay as Xu,i as fo,f as Cr,l as Bb,y as Fb,K as Vh,az as Vb,aA as Ub,aB as zb,E as un,aC as Uh,m as sn,aD as zh,aE as Yi,x as Wh,aF as ec,aG as Yh,aH as Hh,aI as Gh,aJ as Wb,aK as Yb,aL as th,aM as Hb,aN as Gb,aO as Kb,aP as Ra,N as Qb,Q as cu,aQ as jb,_ as Mn,G as R,aR as ne,J as y,I as _,aS as Zr,aT as S,aU as me,aV as ke,aW as $t,F as Xr,H as oe,aX as Ne,aY as ut,aZ as $e,a_ as It,a$ as io,b0 as Pu,b1 as Ut,b2 as Yt,b3 as du,b4 as Oa,b5 as Zb,b6 as Jb,b7 as _i,b8 as Xb,b9 as Zl,Y as fu,ba as nh,bb as Kh,bc as ew,bd as tw,be as nw,bf as rh,bg as rw,bh as iw,bi as aw,bj as lw}from"./index.dfb4e5db.js";import{c as ho,a as xu,n as ih,g as ah,s as lh,b as Jl,Q as ow,T as oh}from"./QResizeObserver.0b22f089.js";const sw=["top","middle","bottom"];var Tn=Je({name:"QBadge",props:{color:String,textColor:String,floating:Boolean,transparent:Boolean,multiLine:Boolean,outline:Boolean,rounded:Boolean,label:[Number,String],align:{type:String,validator:e=>sw.includes(e)}},setup(e,{slots:t}){const r=I(()=>e.align!==void 0?{verticalAlign:e.align}:null),a=I(()=>{const l=e.outline===!0&&e.color||e.textColor;return`q-badge flex inline items-center no-wrap q-badge--${e.multiLine===!0?"multi":"single"}-line`+(e.outline===!0?" q-badge--outline":e.color!==void 0?` bg-${e.color}`:"")+(l!==void 0?` text-${l}`:"")+(e.floating===!0?" q-badge--floating":"")+(e.rounded===!0?" q-badge--rounded":"")+(e.transparent===!0?" q-badge--transparent":"")});return()=>E("div",{class:a.value,style:r.value,role:"status","aria-label":e.label},bi(t.default,e.label!==void 0?[e.label]:[]))}});const Qh={target:{default:!0},noParentEvent:Boolean,contextMenu:Boolean};function jh({showing:e,avoidEmit:t,configureAnchorEl:r}){const{props:a,proxy:l,emit:s}=Dt(),u=se(null);let d=null;function f(b){return u.value===null?!1:b===void 0||b.touches===void 0||b.touches.length<=1}const g={};r===void 0&&(Object.assign(g,{hide(b){l.hide(b)},toggle(b){l.toggle(b),b.qAnchorHandled=!0},toggleKey(b){Ya(b,13)===!0&&g.toggle(b)},contextClick(b){l.hide(b),Ia(b),kn(()=>{l.show(b),b.qAnchorHandled=!0})},prevent:Ia,mobileTouch(b){if(g.mobileCleanup(b),f(b)!==!0)return;l.hide(b),u.value.classList.add("non-selectable");const x=b.target;Gr(g,"anchor",[[x,"touchmove","mobileCleanup","passive"],[x,"touchend","mobileCleanup","passive"],[x,"touchcancel","mobileCleanup","passive"],[u.value,"contextmenu","prevent","notPassive"]]),d=setTimeout(()=>{d=null,l.show(b),b.qAnchorHandled=!0},300)},mobileCleanup(b){u.value.classList.remove("non-selectable"),d!==null&&(clearTimeout(d),d=null),e.value===!0&&b!==void 0&&ho()}}),r=function(b=a.contextMenu){if(a.noParentEvent===!0||u.value===null)return;let x;b===!0?l.$q.platform.is.mobile===!0?x=[[u.value,"touchstart","mobileTouch","passive"]]:x=[[u.value,"mousedown","hide","passive"],[u.value,"contextmenu","contextClick","notPassive"]]:x=[[u.value,"click","toggle","passive"],[u.value,"keyup","toggleKey","passive"]],Gr(g,"anchor",x)});function v(){Ki(g,"anchor")}function T(b){for(u.value=b;u.value.classList.contains("q-anchor--skip");)u.value=u.value.parentNode;r()}function M(){if(a.target===!1||a.target===""||l.$el.parentNode===null)u.value=null;else if(a.target===!0)T(l.$el.parentNode);else{let b=a.target;if(typeof a.target=="string")try{b=document.querySelector(a.target)}catch{b=void 0}b!=null?(u.value=b.$el||b,r()):(u.value=null,console.error(`Anchor: target "${a.target}" not found`))}}return ze(()=>a.contextMenu,b=>{u.value!==null&&(v(),r(b))}),ze(()=>a.target,()=>{u.value!==null&&v(),M()}),ze(()=>a.noParentEvent,b=>{u.value!==null&&(b===!0?v():r())}),ei(()=>{M(),t!==!0&&a.modelValue===!0&&u.value===null&&s("update:modelValue",!1)}),Gt(()=>{d!==null&&clearTimeout(d),v()}),{anchorEl:u,canShow:f,anchorEvents:g}}function Zh(e,t){const r=se(null);let a;function l(d,f){const g=`${f!==void 0?"add":"remove"}EventListener`,v=f!==void 0?f:a;d!==window&&d[g]("scroll",v,Xi.passive),window[g]("scroll",v,Xi.passive),a=f}function s(){r.value!==null&&(l(r.value),r.value=null)}const u=ze(()=>e.noParentEvent,()=>{r.value!==null&&(s(),t())});return Gt(u),{localScrollTarget:r,unconfigureScrollTarget:s,changeScrollEvent:l}}const{notPassiveCapture:go}=Xi,pi=[];function mo(e){const t=e.target;if(t===void 0||t.nodeType===8||t.classList.contains("no-pointer-events")===!0)return;let r=Xf.length-1;for(;r>=0;){const a=Xf[r].$;if(a.type.name==="QTooltip"){r--;continue}if(a.type.name!=="QDialog")break;if(a.props.seamless!==!0)return;r--}for(let a=pi.length-1;a>=0;a--){const l=pi[a];if((l.anchorEl.value===null||l.anchorEl.value.contains(t)===!1)&&(t===document.body||l.innerRef.value!==null&&l.innerRef.value.contains(t)===!1))e.qClickOutside=!0,l.onClickOutside(e);else return}}function Jh(e){pi.push(e),pi.length===1&&(document.addEventListener("mousedown",mo,go),document.addEventListener("touchstart",mo,go))}function vo(e){const t=pi.findIndex(r=>r===e);t>-1&&(pi.splice(t,1),pi.length===0&&(document.removeEventListener("mousedown",mo,go),document.removeEventListener("touchstart",mo,go)))}let sh,uh;function po(e){const t=e.split(" ");return t.length!==2?!1:["top","center","bottom"].includes(t[0])!==!0?(console.error("Anchor/Self position must start with one of top/center/bottom"),!1):["left","middle","right","start","end"].includes(t[1])!==!0?(console.error("Anchor/Self position must end with one of left/middle/right/start/end"),!1):!0}function Xh(e){return e?!(e.length!==2||typeof e[0]!="number"||typeof e[1]!="number"):!0}const Au={"start#ltr":"left","start#rtl":"right","end#ltr":"right","end#rtl":"left"};["left","middle","right"].forEach(e=>{Au[`${e}#ltr`]=e,Au[`${e}#rtl`]=e});function yo(e,t){const r=e.split(" ");return{vertical:r[0],horizontal:Au[`${r[1]}#${t===!0?"rtl":"ltr"}`]}}function uw(e,t){let{top:r,left:a,right:l,bottom:s,width:u,height:d}=e.getBoundingClientRect();return t!==void 0&&(r-=t[1],a-=t[0],s+=t[1],l+=t[0],u+=t[0],d+=t[1]),{top:r,bottom:s,height:d,left:a,right:l,width:u,middle:a+(l-a)/2,center:r+(s-r)/2}}function cw(e,t,r){let{top:a,left:l}=e.getBoundingClientRect();return a+=t.top,l+=t.left,r!==void 0&&(a+=r[1],l+=r[0]),{top:a,bottom:a+1,height:1,left:l,right:l+1,width:1,middle:l,center:a}}function dw(e,t){return{top:0,center:t/2,bottom:t,left:0,middle:e/2,right:e}}function ch(e,t,r,a){return{top:e[r.vertical]-t[a.vertical],left:e[r.horizontal]-t[a.horizontal]}}function tc(e,t=0){if(e.targetEl===null||e.anchorEl===null||t>5)return;if(e.targetEl.offsetHeight===0||e.targetEl.offsetWidth===0){setTimeout(()=>{tc(e,t+1)},10);return}const{targetEl:r,offset:a,anchorEl:l,anchorOrigin:s,selfOrigin:u,absoluteOffset:d,fit:f,cover:g,maxHeight:v,maxWidth:T}=e;if(Wi.is.ios===!0&&window.visualViewport!==void 0){const J=document.body.style,{offsetLeft:z,offsetTop:H}=window.visualViewport;z!==sh&&(J.setProperty("--q-pe-left",z+"px"),sh=z),H!==uh&&(J.setProperty("--q-pe-top",H+"px"),uh=H)}const{scrollLeft:M,scrollTop:b}=r,x=d===void 0?uw(l,g===!0?[0,0]:a):cw(l,d,a);Object.assign(r.style,{top:0,left:0,minWidth:null,minHeight:null,maxWidth:T||"100vw",maxHeight:v||"100vh",visibility:"visible"});const{offsetWidth:$,offsetHeight:L}=r,{elWidth:F,elHeight:W}=f===!0||g===!0?{elWidth:Math.max(x.width,$),elHeight:g===!0?Math.max(x.height,L):L}:{elWidth:$,elHeight:L};let D={maxWidth:T,maxHeight:v};(f===!0||g===!0)&&(D.minWidth=x.width+"px",g===!0&&(D.minHeight=x.height+"px")),Object.assign(r.style,D);const A=dw(F,W);let N=ch(x,A,s,u);if(d===void 0||a===void 0)hu(N,x,A,s,u);else{const{top:J,left:z}=N;hu(N,x,A,s,u);let H=!1;if(N.top!==J){H=!0;const ye=2*a[1];x.center=x.top-=ye,x.bottom-=ye+2}if(N.left!==z){H=!0;const ye=2*a[0];x.middle=x.left-=ye,x.right-=ye+2}H===!0&&(N=ch(x,A,s,u),hu(N,x,A,s,u))}D={top:N.top+"px",left:N.left+"px"},N.maxHeight!==void 0&&(D.maxHeight=N.maxHeight+"px",x.height>N.maxHeight&&(D.minHeight=D.maxHeight)),N.maxWidth!==void 0&&(D.maxWidth=N.maxWidth+"px",x.width>N.maxWidth&&(D.minWidth=D.maxWidth)),Object.assign(r.style,D),r.scrollTop!==b&&(r.scrollTop=b),r.scrollLeft!==M&&(r.scrollLeft=M)}function hu(e,t,r,a,l){const s=r.bottom,u=r.right,d=Db(),f=window.innerHeight-d,g=document.body.clientWidth;if(e.top<0||e.top+s>f)if(l.vertical==="center")e.top=t[a.vertical]>f/2?Math.max(0,f-s):0,e.maxHeight=Math.min(s,f);else if(t[a.vertical]>f/2){const v=Math.min(f,a.vertical==="center"?t.center:a.vertical===l.vertical?t.bottom:t.top);e.maxHeight=Math.min(s,v),e.top=Math.max(0,v-s)}else e.top=Math.max(0,a.vertical==="center"?t.center:a.vertical===l.vertical?t.top:t.bottom),e.maxHeight=Math.min(s,f-e.top);if(e.left<0||e.left+u>g)if(e.maxWidth=Math.min(u,g),l.horizontal==="middle")e.left=t[a.horizontal]>g/2?Math.max(0,g-u):0;else if(t[a.horizontal]>g/2){const v=Math.min(g,a.horizontal==="middle"?t.middle:a.horizontal===l.horizontal?t.right:t.left);e.maxWidth=Math.min(u,v),e.left=Math.max(0,v-e.maxWidth)}else e.left=Math.max(0,a.horizontal==="middle"?t.middle:a.horizontal===l.horizontal?t.left:t.right),e.maxWidth=Math.min(u,g-e.left)}var Hr=Je({name:"QTooltip",inheritAttrs:!1,props:{...Qh,...Hu,...Gu,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null},transitionShow:{default:"jump-down"},transitionHide:{default:"jump-up"},anchor:{type:String,default:"bottom middle",validator:po},self:{type:String,default:"top middle",validator:po},offset:{type:Array,default:()=>[14,14],validator:Xh},scrollTarget:{default:void 0},delay:{type:Number,default:0},hideDelay:{type:Number,default:0}},emits:[...Ku],setup(e,{slots:t,emit:r,attrs:a}){let l,s;const u=Dt(),{proxy:{$q:d}}=u,f=se(null),g=se(!1),v=I(()=>yo(e.anchor,d.lang.rtl)),T=I(()=>yo(e.self,d.lang.rtl)),M=I(()=>e.persistent!==!0),{registerTick:b,removeTick:x}=$a(),{registerTimeout:$}=so(),{transitionProps:L,transitionStyle:F}=Ah(e),{localScrollTarget:W,changeScrollEvent:D,unconfigureScrollTarget:A}=Zh(e,X),{anchorEl:N,canShow:J,anchorEvents:z}=jh({showing:g,configureAnchorEl:rt}),{show:H,hide:ye}=Qu({showing:g,canShow:J,handleShow:te,handleHide:Pe,hideOnRouteChange:M,processOnMount:!0});Object.assign(z,{delayShow:K,delayHide:ve});const{showPortal:_e,hidePortal:Ae,renderPortal:lt}=Eh(u,f,he,"tooltip");if(d.platform.is.mobile===!0){const fe={anchorEl:N,innerRef:f,onClickOutside(Ue){return ye(Ue),Ue.target.classList.contains("q-dialog__backdrop")&&Ft(Ue),!0}},Ke=I(()=>e.modelValue===null&&e.persistent!==!0&&g.value===!0);ze(Ke,Ue=>{(Ue===!0?Jh:vo)(fe)}),Gt(()=>{vo(fe)})}function te(fe){_e(),b(()=>{s=new MutationObserver(()=>j()),s.observe(f.value,{attributes:!1,childList:!0,characterData:!0,subtree:!0}),j(),X()}),l===void 0&&(l=ze(()=>d.screen.width+"|"+d.screen.height+"|"+e.self+"|"+e.anchor+"|"+d.lang.rtl,j)),$(()=>{_e(!0),r("show",fe)},e.transitionDuration)}function Pe(fe){x(),Ae(),Be(),$(()=>{Ae(!0),r("hide",fe)},e.transitionDuration)}function Be(){s!==void 0&&(s.disconnect(),s=void 0),l!==void 0&&(l(),l=void 0),A(),Ki(z,"tooltipTemp")}function j(){tc({targetEl:f.value,offset:e.offset,anchorEl:N.value,anchorOrigin:v.value,selfOrigin:T.value,maxHeight:e.maxHeight,maxWidth:e.maxWidth})}function K(fe){if(d.platform.is.mobile===!0){ho(),document.body.classList.add("non-selectable");const Ke=N.value,Ue=["touchmove","touchcancel","touchend","click"].map(we=>[Ke,we,"delayHide","passiveCapture"]);Gr(z,"tooltipTemp",Ue)}$(()=>{H(fe)},e.delay)}function ve(fe){d.platform.is.mobile===!0&&(Ki(z,"tooltipTemp"),ho(),setTimeout(()=>{document.body.classList.remove("non-selectable")},10)),$(()=>{ye(fe)},e.hideDelay)}function rt(){if(e.noParentEvent===!0||N.value===null)return;const fe=d.platform.is.mobile===!0?[[N.value,"touchstart","delayShow","passive"]]:[[N.value,"mouseenter","delayShow","passive"],[N.value,"mouseleave","delayHide","passive"]];Gr(z,"anchor",fe)}function X(){if(N.value!==null||e.scrollTarget!==void 0){W.value=Do(N.value,e.scrollTarget);const fe=e.noParentEvent===!0?j:ye;D(W.value,fe)}}function Z(){return g.value===!0?E("div",{...a,ref:f,class:["q-tooltip q-tooltip--style q-position-engine no-pointer-events",a.class],style:[a.style,F.value],role:"tooltip"},Mt(t.default)):null}function he(){return E(Ha,L.value,Z)}return Gt(Be),Object.assign(u.proxy,{updatePosition:j}),lt}});const fw={xs:8,sm:10,md:14,lg:20,xl:24};var Ga=Je({name:"QChip",props:{...ar,...qb,dense:Boolean,icon:String,iconRight:String,iconRemove:String,iconSelected:String,label:[String,Number],color:String,textColor:String,modelValue:{type:Boolean,default:!0},selected:{type:Boolean,default:null},square:Boolean,outline:Boolean,clickable:Boolean,removable:Boolean,removeAriaLabel:String,tabindex:[String,Number],disable:Boolean,ripple:{type:[Boolean,Object],default:!0}},emits:["update:modelValue","update:selected","remove","click"],setup(e,{slots:t,emit:r}){const{proxy:{$q:a}}=Dt(),l=lr(e,a),s=Pb(e,fw),u=I(()=>e.selected===!0||e.icon!==void 0),d=I(()=>e.selected===!0?e.iconSelected||a.iconSet.chip.selected:e.icon),f=I(()=>e.iconRemove||a.iconSet.chip.remove),g=I(()=>e.disable===!1&&(e.clickable===!0||e.selected!==null)),v=I(()=>{const L=e.outline===!0&&e.color||e.textColor;return"q-chip row inline no-wrap items-center"+(e.outline===!1&&e.color!==void 0?` bg-${e.color}`:"")+(L?` text-${L} q-chip--colored`:"")+(e.disable===!0?" disabled":"")+(e.dense===!0?" q-chip--dense":"")+(e.outline===!0?" q-chip--outline":"")+(e.selected===!0?" q-chip--selected":"")+(g.value===!0?" q-chip--clickable cursor-pointer non-selectable q-hoverable":"")+(e.square===!0?" q-chip--square":"")+(l.value===!0?" q-chip--dark q-dark":"")}),T=I(()=>{const L=e.disable===!0?{tabindex:-1,"aria-disabled":"true"}:{tabindex:e.tabindex||0},F={...L,role:"button","aria-hidden":"false","aria-label":e.removeAriaLabel||a.lang.label.remove};return{chip:L,remove:F}});function M(L){L.keyCode===13&&b(L)}function b(L){e.disable||(r("update:selected",!e.selected),r("click",L))}function x(L){(L.keyCode===void 0||L.keyCode===13)&&(Ft(L),e.disable===!1&&(r("update:modelValue",!1),r("remove")))}function $(){const L=[];g.value===!0&&L.push(E("div",{class:"q-focus-helper"})),u.value===!0&&L.push(E(Ht,{class:"q-chip__icon q-chip__icon--left",name:d.value}));const F=e.label!==void 0?[E("div",{class:"ellipsis"},[e.label])]:void 0;return L.push(E("div",{class:"q-chip__content col row no-wrap items-center q-anchor--skip"},xb(t.default,F))),e.iconRight&&L.push(E(Ht,{class:"q-chip__icon q-chip__icon--right",name:e.iconRight})),e.removable===!0&&L.push(E(Ht,{class:"q-chip__icon q-chip__icon--remove cursor-pointer",name:f.value,...T.value.remove,onClick:x,onKeyup:x})),L}return()=>{if(e.modelValue===!1)return;const L={class:v.value,style:s.value};return g.value===!0&&Object.assign(L,T.value.chip,{onClick:b,onKeyup:M}),ju("div",L,$(),"ripple",e.ripple!==!1&&e.disable!==!0,()=>[[uo,e.ripple]])}}}),rr=Je({name:"QList",props:{...ar,bordered:Boolean,dense:Boolean,separator:Boolean,padding:Boolean,tag:{type:String,default:"div"}},setup(e,{slots:t}){const r=Dt(),a=lr(e,r.proxy.$q),l=I(()=>"q-list"+(e.bordered===!0?" q-list--bordered":"")+(e.dense===!0?" q-list--dense":"")+(e.separator===!0?" q-list--separator":"")+(a.value===!0?" q-list--dark":"")+(e.padding===!0?" q-list--padding":""));return()=>E(e.tag,{class:l.value},Mt(t.default))}});const hw=["horizontal","vertical","cell","none"];var gw=Je({name:"QMarkupTable",props:{...ar,dense:Boolean,flat:Boolean,bordered:Boolean,square:Boolean,wrapCells:Boolean,separator:{type:String,default:"horizontal",validator:e=>hw.includes(e)}},setup(e,{slots:t}){const r=Dt(),a=lr(e,r.proxy.$q),l=I(()=>`q-markup-table q-table__container q-table__card q-table--${e.separator}-separator`+(a.value===!0?" q-table--dark q-table__card--dark q-dark":"")+(e.dense===!0?" q-table--dense":"")+(e.flat===!0?" q-table--flat":"")+(e.bordered===!0?" q-table--bordered":"")+(e.square===!0?" q-table--square":"")+(e.wrapCells===!1?" q-table--no-wrap":""));return()=>E("div",{class:l.value},[E("table",{class:"q-table"},Mt(t.default))])}});function mw(e,t){return E("div",e,[E("table",{class:"q-table"},t)])}let Fa=!1;{const e=document.createElement("div");e.setAttribute("dir","rtl"),Object.assign(e.style,{width:"1px",height:"1px",overflow:"auto"});const t=document.createElement("div");Object.assign(t.style,{width:"1000px",height:"1px"}),document.body.appendChild(e),e.appendChild(t),e.scrollLeft=-1e3,Fa=e.scrollLeft>=0,e.remove()}const Hn=1e3,vw=["start","center","end","start-force","center-force","end-force"],eg=Array.prototype.filter,pw=window.getComputedStyle(document.body).overflowAnchor===void 0?Ih:function(e,t){e!==null&&(e._qOverflowAnimationFrame!==void 0&&cancelAnimationFrame(e._qOverflowAnimationFrame),e._qOverflowAnimationFrame=requestAnimationFrame(()=>{if(e===null)return;e._qOverflowAnimationFrame=void 0;const r=e.children||[];eg.call(r,l=>l.dataset&&l.dataset.qVsAnchor!==void 0).forEach(l=>{delete l.dataset.qVsAnchor});const a=r[t];a&&a.dataset&&(a.dataset.qVsAnchor="")}))};function Qi(e,t){return e+t}function gu(e,t,r,a,l,s,u,d){const f=e===window?document.scrollingElement||document.documentElement:e,g=l===!0?"offsetWidth":"offsetHeight",v={scrollStart:0,scrollViewSize:-u-d,scrollMaxSize:0,offsetStart:-u,offsetEnd:-d};if(l===!0?(e===window?(v.scrollStart=window.pageXOffset||window.scrollX||document.body.scrollLeft||0,v.scrollViewSize+=document.documentElement.clientWidth):(v.scrollStart=f.scrollLeft,v.scrollViewSize+=f.clientWidth),v.scrollMaxSize=f.scrollWidth,s===!0&&(v.scrollStart=(Fa===!0?v.scrollMaxSize-v.scrollViewSize:0)-v.scrollStart)):(e===window?(v.scrollStart=window.pageYOffset||window.scrollY||document.body.scrollTop||0,v.scrollViewSize+=document.documentElement.clientHeight):(v.scrollStart=f.scrollTop,v.scrollViewSize+=f.clientHeight),v.scrollMaxSize=f.scrollHeight),r!==null)for(let T=r.previousElementSibling;T!==null;T=T.previousElementSibling)T.classList.contains("q-virtual-scroll--skip")===!1&&(v.offsetStart+=T[g]);if(a!==null)for(let T=a.nextElementSibling;T!==null;T=T.nextElementSibling)T.classList.contains("q-virtual-scroll--skip")===!1&&(v.offsetEnd+=T[g]);if(t!==e){const T=f.getBoundingClientRect(),M=t.getBoundingClientRect();l===!0?(v.offsetStart+=M.left-T.left,v.offsetEnd-=M.width):(v.offsetStart+=M.top-T.top,v.offsetEnd-=M.height),e!==window&&(v.offsetStart+=v.scrollStart),v.offsetEnd+=v.scrollMaxSize-v.offsetStart}return v}function dh(e,t,r,a){t==="end"&&(t=(e===window?document.body:e)[r===!0?"scrollWidth":"scrollHeight"]),e===window?r===!0?(a===!0&&(t=(Fa===!0?document.body.scrollWidth-document.documentElement.clientWidth:0)-t),window.scrollTo(t,window.pageYOffset||window.scrollY||document.body.scrollTop||0)):window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,t):r===!0?(a===!0&&(t=(Fa===!0?e.scrollWidth-e.offsetWidth:0)-t),e.scrollLeft=t):e.scrollTop=t}function Ta(e,t,r,a){if(r>=a)return 0;const l=t.length,s=Math.floor(r/Hn),u=Math.floor((a-1)/Hn)+1;let d=e.slice(s,u).reduce(Qi,0);return r%Hn!==0&&(d-=t.slice(s*Hn,r).reduce(Qi,0)),a%Hn!==0&&a!==l&&(d-=t.slice(a,u*Hn).reduce(Qi,0)),d}const yw={virtualScrollSliceSize:{type:[Number,String],default:null},virtualScrollSliceRatioBefore:{type:[Number,String],default:1},virtualScrollSliceRatioAfter:{type:[Number,String],default:1},virtualScrollItemSize:{type:[Number,String],default:24},virtualScrollStickySizeStart:{type:[Number,String],default:0},virtualScrollStickySizeEnd:{type:[Number,String],default:0},tableColspan:[Number,String]},tg={virtualScrollHorizontal:Boolean,onVirtualScroll:Function,...yw};function ng({virtualScrollLength:e,getVirtualScrollTarget:t,getVirtualScrollEl:r,virtualScrollItemSizeComputed:a}){const l=Dt(),{props:s,emit:u,proxy:d}=l,{$q:f}=d;let g,v,T,M=[],b;const x=se(0),$=se(0),L=se({}),F=se(null),W=se(null),D=se(null),A=se({from:0,to:0}),N=I(()=>s.tableColspan!==void 0?s.tableColspan:100);a===void 0&&(a=I(()=>s.virtualScrollItemSize));const J=I(()=>a.value+";"+s.virtualScrollHorizontal),z=I(()=>J.value+";"+s.virtualScrollSliceRatioBefore+";"+s.virtualScrollSliceRatioAfter);ze(z,()=>{j()}),ze(J,H);function H(){Be(v,!0)}function ye(Z){Be(Z===void 0?v:Z)}function _e(Z,he){const fe=t();if(fe==null||fe.nodeType===8)return;const Ke=gu(fe,r(),F.value,W.value,s.virtualScrollHorizontal,f.lang.rtl,s.virtualScrollStickySizeStart,s.virtualScrollStickySizeEnd);T!==Ke.scrollViewSize&&j(Ke.scrollViewSize),lt(fe,Ke,Math.min(e.value-1,Math.max(0,parseInt(Z,10)||0)),0,vw.indexOf(he)>-1?he:v>-1&&Z>v?"end":"start")}function Ae(){const Z=t();if(Z==null||Z.nodeType===8)return;const he=gu(Z,r(),F.value,W.value,s.virtualScrollHorizontal,f.lang.rtl,s.virtualScrollStickySizeStart,s.virtualScrollStickySizeEnd),fe=e.value-1,Ke=he.scrollMaxSize-he.offsetStart-he.offsetEnd-$.value;if(g===he.scrollStart)return;if(he.scrollMaxSize<=0){lt(Z,he,0,0);return}T!==he.scrollViewSize&&j(he.scrollViewSize),te(A.value.from);const Ue=Math.floor(he.scrollMaxSize-Math.max(he.scrollViewSize,he.offsetEnd)-Math.min(b[fe],he.scrollViewSize/2));if(Ue>0&&Math.ceil(he.scrollStart)>=Ue){lt(Z,he,fe,he.scrollMaxSize-he.offsetEnd-M.reduce(Qi,0));return}let we=0,Me=he.scrollStart-he.offsetStart,ft=Me;if(Me<=Ke&&Me+he.scrollViewSize>=x.value)Me-=x.value,we=A.value.from,ft=Me;else for(let ee=0;Me>=M[ee]&&we0&&we-he.scrollViewSize?(we++,ft=Me):ft=b[we]+Me;lt(Z,he,we,ft)}function lt(Z,he,fe,Ke,Ue){const we=typeof Ue=="string"&&Ue.indexOf("-force")>-1,Me=we===!0?Ue.replace("-force",""):Ue,ft=Me!==void 0?Me:"start";let ee=Math.max(0,fe-L.value[ft]),wt=ee+L.value.total;wt>e.value&&(wt=e.value,ee=Math.max(0,wt-L.value.total)),g=he.scrollStart;const nn=ee!==A.value.from||wt!==A.value.to;if(nn===!1&&Me===void 0){ve(fe);return}const{activeElement:cn}=document,rn=D.value;nn===!0&&rn!==null&&rn!==cn&&rn.contains(cn)===!0&&(rn.addEventListener("focusout",Pe),setTimeout(()=>{rn!==null&&rn.removeEventListener("focusout",Pe)})),pw(rn,fe-ee);const qt=Me!==void 0?b.slice(ee,fe).reduce(Qi,0):0;if(nn===!0){const Kt=wt>=A.value.from&&ee<=A.value.to?A.value.to:wt;A.value={from:ee,to:Kt},x.value=Ta(M,b,0,ee),$.value=Ta(M,b,wt,e.value),requestAnimationFrame(()=>{A.value.to!==wt&&g===he.scrollStart&&(A.value={from:A.value.from,to:wt},$.value=Ta(M,b,wt,e.value))})}requestAnimationFrame(()=>{if(g!==he.scrollStart)return;nn===!0&&te(ee);const Kt=b.slice(ee,fe).reduce(Qi,0),Zn=Kt+he.offsetStart+x.value,Qt=Zn+b[fe];let Fn=Zn+Ke;if(Me!==void 0){const Ar=Kt-qt,St=he.scrollStart+Ar;Fn=we!==!0&&Stee.classList&&ee.classList.contains("q-virtual-scroll--skip")===!1),Ke=fe.length,Ue=s.virtualScrollHorizontal===!0?ee=>ee.getBoundingClientRect().width:ee=>ee.offsetHeight;let we=Z,Me,ft;for(let ee=0;ee=Ke;we--)b[we]=fe;const Ue=Math.floor((e.value-1)/Hn);M=[];for(let we=0;we<=Ue;we++){let Me=0;const ft=Math.min((we+1)*Hn,e.value);for(let ee=we*Hn;ee=0?(te(A.value.from),kn(()=>{_e(Z)})):rt()}function j(Z){if(Z===void 0&&typeof window!="undefined"){const Me=t();Me!=null&&Me.nodeType!==8&&(Z=gu(Me,r(),F.value,W.value,s.virtualScrollHorizontal,f.lang.rtl,s.virtualScrollStickySizeStart,s.virtualScrollStickySizeEnd).scrollViewSize)}T=Z;const he=parseFloat(s.virtualScrollSliceRatioBefore)||0,fe=parseFloat(s.virtualScrollSliceRatioAfter)||0,Ke=1+he+fe,Ue=Z===void 0||Z<=0?1:Math.ceil(Z/a.value),we=Math.max(1,Ue,Math.ceil((s.virtualScrollSliceSize>0?s.virtualScrollSliceSize:10)/Ke));L.value={total:Math.ceil(we*Ke),start:Math.ceil(we*he),center:Math.ceil(we*(.5+he)),end:Math.ceil(we*(1+he)),view:Ue}}function K(Z,he){const fe=s.virtualScrollHorizontal===!0?"width":"height",Ke={["--q-virtual-scroll-item-"+fe]:a.value+"px"};return[Z==="tbody"?E(Z,{class:"q-virtual-scroll__padding",key:"before",ref:F},[E("tr",[E("td",{style:{[fe]:`${x.value}px`,...Ke},colspan:N.value})])]):E(Z,{class:"q-virtual-scroll__padding",key:"before",ref:F,style:{[fe]:`${x.value}px`,...Ke}}),E(Z,{class:"q-virtual-scroll__content",key:"content",ref:D,tabindex:-1},he.flat()),Z==="tbody"?E(Z,{class:"q-virtual-scroll__padding",key:"after",ref:W},[E("tr",[E("td",{style:{[fe]:`${$.value}px`,...Ke},colspan:N.value})])]):E(Z,{class:"q-virtual-scroll__padding",key:"after",ref:W,style:{[fe]:`${$.value}px`,...Ke}})]}function ve(Z){v!==Z&&(s.onVirtualScroll!==void 0&&u("virtualScroll",{index:Z,from:A.value.from,to:A.value.to-1,direction:Z{j()});let X=!1;return ia(()=>{X=!0}),aa(()=>{if(X!==!0)return;const Z=t();g!==void 0&&Z!==void 0&&Z!==null&&Z.nodeType!==8?dh(Z,g,s.virtualScrollHorizontal,f.lang.rtl):_e(v)}),Gt(()=>{rt.cancel()}),Object.assign(d,{scrollTo:_e,reset:H,refresh:ye}),{virtualScrollSliceRange:A,virtualScrollSliceSizeComputed:L,setVirtualScrollSize:j,onVirtualScrollEvt:rt,localResetVirtualScroll:Be,padVirtualScroll:K,scrollTo:_e,reset:H,refresh:ye}}const _w={list:rr,table:gw},bw=["list","table","__qtable"];var nc=Je({name:"QVirtualScroll",props:{...tg,type:{type:String,default:"list",validator:e=>bw.includes(e)},items:{type:Array,default:()=>[]},itemsFn:Function,itemsSize:Number,scrollTarget:{default:void 0}},setup(e,{slots:t,attrs:r}){let a;const l=se(null),s=I(()=>e.itemsSize>=0&&e.itemsFn!==void 0?parseInt(e.itemsSize,10):Array.isArray(e.items)?e.items.length:0),{virtualScrollSliceRange:u,localResetVirtualScroll:d,padVirtualScroll:f,onVirtualScrollEvt:g}=ng({virtualScrollLength:s,getVirtualScrollTarget:x,getVirtualScrollEl:b}),v=I(()=>{if(s.value===0)return[];const W=(D,A)=>({index:u.value.from+A,item:D});return e.itemsFn===void 0?e.items.slice(u.value.from,u.value.to).map(W):e.itemsFn(u.value.from,u.value.to-u.value.from).map(W)}),T=I(()=>"q-virtual-scroll q-virtual-scroll"+(e.virtualScrollHorizontal===!0?"--horizontal":"--vertical")+(e.scrollTarget!==void 0?"":" scroll")),M=I(()=>e.scrollTarget!==void 0?{}:{tabindex:0});ze(s,()=>{d()}),ze(()=>e.scrollTarget,()=>{L(),$()});function b(){return l.value.$el||l.value}function x(){return a}function $(){a=Do(b(),e.scrollTarget),a.addEventListener("scroll",g,Xi.passive)}function L(){a!==void 0&&(a.removeEventListener("scroll",g,Xi.passive),a=void 0)}function F(){let W=f(e.type==="list"?"div":"tbody",v.value.map(t.default));return t.before!==void 0&&(W=t.before().concat(W)),bi(t.after,W)}return Ju(()=>{d()}),ei(()=>{$()}),aa(()=>{$()}),ia(()=>{L()}),Gt(()=>{L()}),()=>{if(t.default===void 0){console.error("QVirtualScroll: default scoped slot is required for rendering");return}return e.type==="__qtable"?mw({ref:l,class:"q-table__middle "+T.value},F()):E(_w[e.type],{...r,ref:l,class:[r.class,T.value],...M.value},F)}}});const ww=[E("circle",{cx:"15",cy:"15",r:"15"},[E("animate",{attributeName:"r",from:"15",to:"15",begin:"0s",dur:"0.8s",values:"15;9;15",calcMode:"linear",repeatCount:"indefinite"}),E("animate",{attributeName:"fill-opacity",from:"1",to:"1",begin:"0s",dur:"0.8s",values:"1;.5;1",calcMode:"linear",repeatCount:"indefinite"})]),E("circle",{cx:"60",cy:"15",r:"9","fill-opacity":".3"},[E("animate",{attributeName:"r",from:"9",to:"9",begin:"0s",dur:"0.8s",values:"9;15;9",calcMode:"linear",repeatCount:"indefinite"}),E("animate",{attributeName:"fill-opacity",from:".5",to:".5",begin:"0s",dur:"0.8s",values:".5;1;.5",calcMode:"linear",repeatCount:"indefinite"})]),E("circle",{cx:"105",cy:"15",r:"15"},[E("animate",{attributeName:"r",from:"15",to:"15",begin:"0s",dur:"0.8s",values:"15;9;15",calcMode:"linear",repeatCount:"indefinite"}),E("animate",{attributeName:"fill-opacity",from:"1",to:"1",begin:"0s",dur:"0.8s",values:"1;.5;1",calcMode:"linear",repeatCount:"indefinite"})])];var Eu=Je({name:"QSpinnerDots",props:Ab,setup(e){const{cSize:t,classes:r}=Eb(e);return()=>E("svg",{class:r.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 120 30",xmlns:"http://www.w3.org/2000/svg"},ww)}});const Sw={ratio:[String,Number]};function kw(e,t){return I(()=>{const r=Number(e.ratio||(t!==void 0?t.value:void 0));return isNaN(r)!==!0&&r>0?{paddingBottom:`${100/r}%`}:null})}const Cw=16/9;var rc=Je({name:"QImg",props:{...Sw,src:String,srcset:String,sizes:String,alt:String,crossorigin:String,decoding:String,referrerpolicy:String,draggable:Boolean,loading:{type:String,default:"lazy"},fetchpriority:{type:String,default:"auto"},width:String,height:String,initialRatio:{type:[Number,String],default:Cw},placeholderSrc:String,fit:{type:String,default:"cover"},position:{type:String,default:"50% 50%"},imgClass:String,imgStyle:Object,noSpinner:Boolean,noNativeMenu:Boolean,noTransition:Boolean,spinnerColor:String,spinnerSize:String},emits:["load","error"],setup(e,{slots:t,emit:r}){const a=se(e.initialRatio),l=kw(e,a);let s=null,u=!1;const d=[se(null),se(L())],f=se(0),g=se(!1),v=se(!1),T=I(()=>`q-img q-img--${e.noNativeMenu===!0?"no-":""}menu`),M=I(()=>({width:e.width,height:e.height})),b=I(()=>`q-img__image ${e.imgClass!==void 0?e.imgClass+" ":""}q-img__image--with${e.noTransition===!0?"out":""}-transition`),x=I(()=>({...e.imgStyle,objectFit:e.fit,objectPosition:e.position}));ze(()=>$(),F);function $(){return e.src||e.srcset||e.sizes?{src:e.src,srcset:e.srcset,sizes:e.sizes}:null}function L(){return e.placeholderSrc!==void 0?{src:e.placeholderSrc}:null}function F(H){s!==null&&(clearTimeout(s),s=null),v.value=!1,H===null?(g.value=!1,d[f.value^1].value=L()):g.value=!0,d[f.value].value=H}function W({target:H}){u!==!0&&(s!==null&&(clearTimeout(s),s=null),a.value=H.naturalHeight===0?.5:H.naturalWidth/H.naturalHeight,D(H,1))}function D(H,ye){u===!0||ye===1e3||(H.complete===!0?A(H):s=setTimeout(()=>{s=null,D(H,ye+1)},50))}function A(H){u!==!0&&(f.value=f.value^1,d[f.value].value=null,g.value=!1,v.value=!1,r("load",H.currentSrc||H.src))}function N(H){s!==null&&(clearTimeout(s),s=null),g.value=!1,v.value=!0,d[f.value].value=null,d[f.value^1].value=L(),r("error",H)}function J(H){const ye=d[H].value,_e={key:"img_"+H,class:b.value,style:x.value,crossorigin:e.crossorigin,decoding:e.decoding,referrerpolicy:e.referrerpolicy,height:e.height,width:e.width,loading:e.loading,fetchpriority:e.fetchpriority,"aria-hidden":"true",draggable:e.draggable,...ye};return f.value===H?(_e.class+=" q-img__image--waiting",Object.assign(_e,{onLoad:W,onError:N})):_e.class+=" q-img__image--loaded",E("div",{class:"q-img__container absolute-full",key:"img"+H},E("img",_e))}function z(){return g.value!==!0?E("div",{key:"content",class:"q-img__content absolute-full q-anchor--skip"},Mt(t[v.value===!0?"error":"default"])):E("div",{key:"loading",class:"q-img__loading absolute-full flex flex-center"},t.loading!==void 0?t.loading():e.noSpinner===!0?void 0:[E($h,{color:e.spinnerColor,size:e.spinnerSize})])}return F($()),Gt(()=>{u=!0,s!==null&&(clearTimeout(s),s=null)}),()=>{const H=[];return l.value!==null&&H.push(E("div",{key:"filler",style:l.value})),v.value!==!0&&(d[0].value!==null&&H.push(J(0)),d[1].value!==null&&H.push(J(1))),H.push(E(Ha,{name:"q-transition--fade"},z)),E("div",{class:T.value,style:M.value,role:"img","aria-label":e.alt},H)}}}),Tw=Je({name:"QBanner",props:{...ar,inlineActions:Boolean,dense:Boolean,rounded:Boolean},setup(e,{slots:t}){const{proxy:{$q:r}}=Dt(),a=lr(e,r),l=I(()=>"q-banner row items-center"+(e.dense===!0?" q-banner--dense":"")+(a.value===!0?" q-banner--dark q-dark":"")+(e.rounded===!0?" rounded-borders":"")),s=I(()=>`q-banner__actions row items-center justify-end col-${e.inlineActions===!0?"auto":"all"}`);return()=>{const u=[E("div",{class:"q-banner__avatar col-auto row items-center self-start"},Mt(t.avatar)),E("div",{class:"q-banner__content col text-body2"},Mt(t.default))],d=Mt(t.action);return d!==void 0&&u.push(E("div",{class:s.value},d)),E("div",{class:l.value+(e.inlineActions===!1&&d!==void 0?" q-banner--top-padding":""),role:"alert"},u)}}}),xe=Je({name:"QItemSection",props:{avatar:Boolean,thumbnail:Boolean,side:Boolean,top:Boolean,noWrap:Boolean},setup(e,{slots:t}){const r=I(()=>`q-item__section column q-item__section--${e.avatar===!0||e.side===!0||e.thumbnail===!0?"side":"main"}`+(e.top===!0?" q-item__section--top justify-start":" justify-center")+(e.avatar===!0?" q-item__section--avatar":"")+(e.thumbnail===!0?" q-item__section--thumbnail":"")+(e.noWrap===!0?" q-item__section--nowrap":""));return()=>E("div",{class:r.value},Mt(t.default))}}),He=Je({name:"QItemLabel",props:{overline:Boolean,caption:Boolean,header:Boolean,lines:[Number,String]},setup(e,{slots:t}){const r=I(()=>parseInt(e.lines,10)),a=I(()=>"q-item__label"+(e.overline===!0?" q-item__label--overline text-overline":"")+(e.caption===!0?" q-item__label--caption text-caption":"")+(e.header===!0?" q-item__label--header":"")+(r.value===1?" ellipsis":"")),l=I(()=>e.lines!==void 0&&r.value>1?{overflow:"hidden",display:"-webkit-box","-webkit-box-orient":"vertical","-webkit-line-clamp":r.value}:null);return()=>E("div",{style:l.value,class:a.value},Mt(t.default))}}),Vt=Je({name:"QItem",props:{...ar,...qo,tag:{type:String,default:"div"},active:{type:Boolean,default:null},clickable:Boolean,dense:Boolean,insetLevel:Number,tabindex:[String,Number],focused:Boolean,manualFocus:Boolean},emits:["click","keyup"],setup(e,{slots:t,emit:r}){const{proxy:{$q:a}}=Dt(),l=lr(e,a),{hasLink:s,linkAttrs:u,linkClass:d,linkTag:f,navigateOnClick:g}=Rh(),v=se(null),T=se(null),M=I(()=>e.clickable===!0||s.value===!0||e.tag==="label"),b=I(()=>e.disable!==!0&&M.value===!0),x=I(()=>"q-item q-item-type row no-wrap"+(e.dense===!0?" q-item--dense":"")+(l.value===!0?" q-item--dark":"")+(s.value===!0&&e.active===null?d.value:e.active===!0?` q-item--active${e.activeClass!==void 0?` ${e.activeClass}`:""}`:"")+(e.disable===!0?" disabled":"")+(b.value===!0?" q-item--clickable q-link cursor-pointer "+(e.manualFocus===!0?"q-manual-focusable":"q-focusable q-hoverable")+(e.focused===!0?" q-manual-focusable--focused":""):"")),$=I(()=>{if(e.insetLevel===void 0)return null;const D=a.lang.rtl===!0?"Right":"Left";return{["padding"+D]:16+e.insetLevel*56+"px"}});function L(D){b.value===!0&&(T.value!==null&&(D.qKeyEvent!==!0&&document.activeElement===v.value?T.value.focus():document.activeElement===T.value&&v.value.focus()),g(D))}function F(D){if(b.value===!0&&Ya(D,13)===!0){Ft(D),D.qKeyEvent=!0;const A=new MouseEvent("click",D);A.qKeyEvent=!0,v.value.dispatchEvent(A)}r("keyup",D)}function W(){const D=Oh(t.default,[]);return b.value===!0&&D.unshift(E("div",{class:"q-focus-helper",tabindex:-1,ref:T})),D}return()=>{const D={ref:v,class:x.value,style:$.value,role:"listitem",onClick:L,onKeyup:F};return b.value===!0?(D.tabindex=e.tabindex||"0",Object.assign(D,u.value)):M.value===!0&&(D["aria-disabled"]="true"),E(f.value,D,W())}}}),Mw=Je({name:"QBtnGroup",props:{unelevated:Boolean,outline:Boolean,flat:Boolean,rounded:Boolean,square:Boolean,push:Boolean,stretch:Boolean,glossy:Boolean,spread:Boolean},setup(e,{slots:t}){const r=I(()=>{const a=["unelevated","outline","flat","rounded","square","push","stretch","glossy"].filter(l=>e[l]===!0).map(l=>`q-btn-group--${l}`).join(" ");return`q-btn-group row no-wrap${a.length!==0?" "+a:""}`+(e.spread===!0?" q-btn-group--spread":" inline")});return()=>E("div",{class:r.value},Mt(t.default))}}),rg=Je({name:"QMenu",inheritAttrs:!1,props:{...Qh,...Hu,...ar,...Gu,persistent:Boolean,autoClose:Boolean,separateClosePopup:Boolean,noRouteDismiss:Boolean,noRefocus:Boolean,noFocus:Boolean,fit:Boolean,cover:Boolean,square:Boolean,anchor:{type:String,validator:po},self:{type:String,validator:po},offset:{type:Array,validator:Xh},scrollTarget:{default:void 0},touchPosition:Boolean,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null}},emits:[...Ku,"click","escapeKey"],setup(e,{slots:t,emit:r,attrs:a}){let l=null,s,u,d;const f=Dt(),{proxy:g}=f,{$q:v}=g,T=se(null),M=se(!1),b=I(()=>e.persistent!==!0&&e.noRouteDismiss!==!0),x=lr(e,v),{registerTick:$,removeTick:L}=$a(),{registerTimeout:F}=so(),{transitionProps:W,transitionStyle:D}=Ah(e),{localScrollTarget:A,changeScrollEvent:N,unconfigureScrollTarget:J}=Zh(e,fe),{anchorEl:z,canShow:H}=jh({showing:M}),{hide:ye}=Qu({showing:M,canShow:H,handleShow:X,handleHide:Z,hideOnRouteChange:b,processOnMount:!0}),{showPortal:_e,hidePortal:Ae,renderPortal:lt}=Eh(f,T,ft,"menu"),te={anchorEl:z,innerRef:T,onClickOutside(ee){if(e.persistent!==!0&&M.value===!0)return ye(ee),(ee.type==="touchstart"||ee.target.classList.contains("q-dialog__backdrop"))&&Ft(ee),!0}},Pe=I(()=>yo(e.anchor||(e.cover===!0?"center middle":"bottom start"),v.lang.rtl)),Be=I(()=>e.cover===!0?Pe.value:yo(e.self||"top start",v.lang.rtl)),j=I(()=>(e.square===!0?" q-menu--square":"")+(x.value===!0?" q-menu--dark q-dark":"")),K=I(()=>e.autoClose===!0?{onClick:Ke}:{}),ve=I(()=>M.value===!0&&e.persistent!==!0);ze(ve,ee=>{ee===!0?($b(we),Jh(te)):(eh(we),vo(te))});function rt(){Bh(()=>{let ee=T.value;ee&&ee.contains(document.activeElement)!==!0&&(ee=ee.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||ee.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||ee.querySelector("[autofocus], [data-autofocus]")||ee,ee.focus({preventScroll:!0}))})}function X(ee){if(l=e.noRefocus===!1?document.activeElement:null,Lh(Ue),_e(),fe(),s=void 0,ee!==void 0&&(e.touchPosition||e.contextMenu)){const wt=qu(ee);if(wt.left!==void 0){const{top:nn,left:cn}=z.value.getBoundingClientRect();s={left:wt.left-cn,top:wt.top-nn}}}u===void 0&&(u=ze(()=>v.screen.width+"|"+v.screen.height+"|"+e.self+"|"+e.anchor+"|"+v.lang.rtl,Me)),e.noFocus!==!0&&document.activeElement.blur(),$(()=>{Me(),e.noFocus!==!0&&rt()}),F(()=>{v.platform.is.ios===!0&&(d=e.autoClose,T.value.click()),Me(),_e(!0),r("show",ee)},e.transitionDuration)}function Z(ee){L(),Ae(),he(!0),l!==null&&(ee===void 0||ee.qClickOutside!==!0)&&(((ee&&ee.type.indexOf("key")===0?l.closest('[tabindex]:not([tabindex^="-"])'):void 0)||l).focus(),l=null),F(()=>{Ae(!0),r("hide",ee)},e.transitionDuration)}function he(ee){s=void 0,u!==void 0&&(u(),u=void 0),(ee===!0||M.value===!0)&&(Nh(Ue),J(),vo(te),eh(we)),ee!==!0&&(l=null)}function fe(){(z.value!==null||e.scrollTarget!==void 0)&&(A.value=Do(z.value,e.scrollTarget),N(A.value,Me))}function Ke(ee){d!==!0?(Ib(g,ee),r("click",ee)):d=!1}function Ue(ee){ve.value===!0&&e.noFocus!==!0&&Rb(T.value,ee.target)!==!0&&rt()}function we(ee){r("escapeKey"),ye(ee)}function Me(){tc({targetEl:T.value,offset:e.offset,anchorEl:z.value,anchorOrigin:Pe.value,selfOrigin:Be.value,absoluteOffset:s,fit:e.fit,cover:e.cover,maxHeight:e.maxHeight,maxWidth:e.maxWidth})}function ft(){return E(Ha,W.value,()=>M.value===!0?E("div",{role:"menu",...a,ref:T,tabindex:-1,class:["q-menu q-position-engine scroll"+j.value,a.class],style:[a.style,D.value],...K.value},Mt(t.default)):null)}return Gt(he),Object.assign(g,{focus:rt,updatePosition:Me}),lt}});const Dw=Object.keys(Fh),qw=e=>Dw.reduce((t,r)=>{const a=e[r];return a!==void 0&&(t[r]=a),t},{});var Iu=Je({name:"QBtnDropdown",props:{...Fh,...Gu,modelValue:Boolean,split:Boolean,dropdownIcon:String,contentClass:[Array,String,Object],contentStyle:[Array,String,Object],cover:Boolean,persistent:Boolean,noRouteDismiss:Boolean,autoClose:Boolean,menuAnchor:{type:String,default:"bottom end"},menuSelf:{type:String,default:"top end"},menuOffset:Array,disableMainBtn:Boolean,disableDropdown:Boolean,noIconAnimation:Boolean,toggleAriaLabel:String},emits:["update:modelValue","click","beforeShow","show","beforeHide","hide"],setup(e,{slots:t,emit:r}){const{proxy:a}=Dt(),l=se(e.modelValue),s=se(null),u=co(),d=I(()=>{const A={"aria-expanded":l.value===!0?"true":"false","aria-haspopup":"true","aria-controls":u,"aria-label":e.toggleAriaLabel||a.$q.lang.label[l.value===!0?"collapse":"expand"](e.label)};return(e.disable===!0||e.split===!1&&e.disableMainBtn===!0||e.disableDropdown===!0)&&(A["aria-disabled"]="true"),A}),f=I(()=>"q-btn-dropdown__arrow"+(l.value===!0&&e.noIconAnimation===!1?" rotate-180":"")+(e.split===!1?" q-btn-dropdown__arrow-container":"")),g=I(()=>Ob(e)),v=I(()=>qw(e));ze(()=>e.modelValue,A=>{s.value!==null&&s.value[A?"show":"hide"]()}),ze(()=>e.split,D);function T(A){l.value=!0,r("beforeShow",A)}function M(A){r("show",A),r("update:modelValue",!0)}function b(A){l.value=!1,r("beforeHide",A)}function x(A){r("hide",A),r("update:modelValue",!1)}function $(A){r("click",A)}function L(A){mi(A),D(),r("click",A)}function F(A){s.value!==null&&s.value.toggle(A)}function W(A){s.value!==null&&s.value.show(A)}function D(A){s.value!==null&&s.value.hide(A)}return Object.assign(a,{show:W,hide:D,toggle:F}),ei(()=>{e.modelValue===!0&&W()}),()=>{const A=[E(Ht,{class:f.value,name:e.dropdownIcon||a.$q.iconSet.arrow.dropdown})];return e.disableDropdown!==!0&&A.push(E(rg,{ref:s,id:u,class:e.contentClass,style:e.contentStyle,cover:e.cover,fit:!0,persistent:e.persistent,noRouteDismiss:e.noRouteDismiss,autoClose:e.autoClose,anchor:e.menuAnchor,self:e.menuSelf,offset:e.menuOffset,separateClosePopup:!0,transitionShow:e.transitionShow,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,onBeforeShow:T,onShow:M,onBeforeHide:b,onHide:x},t.default)),e.split===!1?E(ge,{class:"q-btn-dropdown q-btn-dropdown--simple",...v.value,...d.value,disable:e.disable===!0||e.disableMainBtn===!0,noWrap:!0,round:!1,onClick:$},{default:()=>Mt(t.label,[]).concat(A),loading:t.loading}):E(Mw,{class:"q-btn-dropdown q-btn-dropdown--split no-wrap q-btn-item",rounded:e.rounded,square:e.square,...g.value,glossy:e.glossy,stretch:e.stretch},()=>[E(ge,{class:"q-btn-dropdown--current",...v.value,disable:e.disable===!0||e.disableMainBtn===!0,noWrap:!0,round:!1,onClick:L},{default:t.label,loading:t.loading}),E(ge,{class:"q-btn-dropdown__arrow-container q-anchor--skip",...d.value,...g.value,disable:e.disable===!0||e.disableDropdown===!0,rounded:e.rounded,color:e.color,textColor:e.textColor,dense:e.dense,size:e.size,padding:e.padding,ripple:e.ripple},()=>A)])}}}),br=Je({name:"QBreadcrumbsEl",props:{...qo,label:String,icon:String,tag:{type:String,default:"span"}},emits:["click"],setup(e,{slots:t}){const{linkTag:r,linkAttrs:a,linkClass:l,navigateOnClick:s}=Rh(),u=I(()=>({class:"q-breadcrumbs__el q-link flex inline items-center relative-position "+(e.disable!==!0?"q-link--focusable"+l.value:"q-breadcrumbs__el--disable"),...a.value,onClick:s})),d=I(()=>"q-breadcrumbs__el-icon"+(e.label!==void 0?" q-breadcrumbs__el-icon--with-label":""));return()=>{const f=[];return e.icon!==void 0&&f.push(E(Ht,{class:d.value,name:e.icon})),e.label!==void 0&&f.push(e.label),E(r.value,{...u.value},bi(t.default,f))}}});const Pw=["",!0];var xw=Je({name:"QBreadcrumbs",props:{...Lb,separator:{type:String,default:"/"},separatorColor:String,activeColor:{type:String,default:"primary"},gutter:{type:String,validator:e=>["none","xs","sm","md","lg","xl"].includes(e),default:"sm"}},setup(e,{slots:t}){const r=Nb(e),a=I(()=>`flex items-center ${r.value}${e.gutter==="none"?"":` q-gutter-${e.gutter}`}`),l=I(()=>e.separatorColor?` text-${e.separatorColor}`:""),s=I(()=>` text-${e.activeColor}`);return()=>{const u=Xu(Mt(t.default));if(u.length===0)return;let d=1;const f=[],g=u.filter(T=>T.type!==void 0&&T.type.name==="QBreadcrumbsEl").length,v=t.separator!==void 0?t.separator:()=>e.separator;return u.forEach(T=>{if(T.type!==void 0&&T.type.name==="QBreadcrumbsEl"){const M=d{const d=(a.header.space===!0?a.header.size:0)+(a.footer.space===!0?a.footer.size:0);if(typeof e.styleFn=="function"){const f=a.isContainer.value===!0?a.containerHeight.value:r.screen.height;return e.styleFn(d,f)}return{minHeight:a.isContainer.value===!0?a.containerHeight.value-d+"px":r.screen.height===0?d!==0?`calc(100vh - ${d}px)`:"100vh":r.screen.height-d+"px"}}),u=I(()=>`q-page${e.padding===!0?" q-layout-padding":""}`);return()=>E("main",{class:u.value,style:s.value},Mt(t.default))}});const Ew=E("div",{class:"q-space"});var Iw=Je({name:"QSpace",setup(){return()=>Ew}});function fh(e){if(e===!1)return 0;if(e===!0||e===void 0)return 1;const t=parseInt(e,10);return isNaN(t)?0:t}var Sr=Vh({name:"close-popup",beforeMount(e,{value:t}){const r={depth:fh(t),handler(a){r.depth!==0&&setTimeout(()=>{const l=Vb(e);l!==void 0&&Ub(l,a,r.depth)})},handlerKey(a){Ya(a,13)===!0&&r.handler(a)}};e.__qclosepopup=r,e.addEventListener("click",r.handler),e.addEventListener("keyup",r.handlerKey)},updated(e,{value:t,oldValue:r}){t!==r&&(e.__qclosepopup.depth=fh(t))},beforeUnmount(e){const t=e.__qclosepopup;e.removeEventListener("click",t.handler),e.removeEventListener("keyup",t.handlerKey),delete e.__qclosepopup}});function $w(){return fo(zb)}var Ma=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{},Rw=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then},ig={},Dn={};let ic;const Ow=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];Dn.getSymbolSize=function(t){if(!t)throw new Error('"version" cannot be null or undefined');if(t<1||t>40)throw new Error('"version" should be in range from 1 to 40');return t*4+17};Dn.getSymbolTotalCodewords=function(t){return Ow[t]};Dn.getBCHDigit=function(e){let t=0;for(;e!==0;)t++,e>>>=1;return t};Dn.setToSJISFunction=function(t){if(typeof t!="function")throw new Error('"toSJISFunc" is not a valid function.');ic=t};Dn.isKanjiModeEnabled=function(){return typeof ic!="undefined"};Dn.toSJIS=function(t){return ic(t)};var Po={};(function(e){e.L={bit:1},e.M={bit:0},e.Q={bit:3},e.H={bit:2};function t(r){if(typeof r!="string")throw new Error("Param is not a string");switch(r.toLowerCase()){case"l":case"low":return e.L;case"m":case"medium":return e.M;case"q":case"quartile":return e.Q;case"h":case"high":return e.H;default:throw new Error("Unknown EC Level: "+r)}}e.isValid=function(a){return a&&typeof a.bit!="undefined"&&a.bit>=0&&a.bit<4},e.from=function(a,l){if(e.isValid(a))return a;try{return t(a)}catch{return l}}})(Po);function ag(){this.buffer=[],this.length=0}ag.prototype={get:function(e){const t=Math.floor(e/8);return(this.buffer[t]>>>7-e%8&1)===1},put:function(e,t){for(let r=0;r>>t-r-1&1)===1)},getLengthInBits:function(){return this.length},putBit:function(e){const t=Math.floor(this.length/8);this.buffer.length<=t&&this.buffer.push(0),e&&(this.buffer[t]|=128>>>this.length%8),this.length++}};var Lw=ag;function Ka(e){if(!e||e<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=e,this.data=new Uint8Array(e*e),this.reservedBit=new Uint8Array(e*e)}Ka.prototype.set=function(e,t,r,a){const l=e*this.size+t;this.data[l]=r,a&&(this.reservedBit[l]=!0)};Ka.prototype.get=function(e,t){return this.data[e*this.size+t]};Ka.prototype.xor=function(e,t,r){this.data[e*this.size+t]^=r};Ka.prototype.isReserved=function(e,t){return this.reservedBit[e*this.size+t]};var Nw=Ka,lg={};(function(e){const t=Dn.getSymbolSize;e.getRowColCoords=function(a){if(a===1)return[];const l=Math.floor(a/7)+2,s=t(a),u=s===145?26:Math.ceil((s-13)/(2*l-2))*2,d=[s-7];for(let f=1;f=0&&l<=7},e.from=function(l){return e.isValid(l)?parseInt(l,10):void 0},e.getPenaltyN1=function(l){const s=l.size;let u=0,d=0,f=0,g=null,v=null;for(let T=0;T=5&&(u+=t.N1+(d-5)),g=b,d=1),b=l.get(M,T),b===v?f++:(f>=5&&(u+=t.N1+(f-5)),v=b,f=1)}d>=5&&(u+=t.N1+(d-5)),f>=5&&(u+=t.N1+(f-5))}return u},e.getPenaltyN2=function(l){const s=l.size;let u=0;for(let d=0;d=10&&(d===1488||d===93)&&u++,f=f<<1&2047|l.get(v,g),v>=10&&(f===1488||f===93)&&u++}return u*t.N3},e.getPenaltyN4=function(l){let s=0;const u=l.data.length;for(let f=0;f=0;){const u=s[0];for(let f=0;f0){const s=new Uint8Array(this.degree);return s.set(a,l),s}return a};var Fw=ac,dg={},ti={},lc={};lc.isValid=function(t){return!isNaN(t)&&t>=1&&t<=40};var or={};const fg="[0-9]+",Vw="[A-Z $%*+\\-./:]+";let Va="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";Va=Va.replace(/u/g,"\\u");const Uw="(?:(?![A-Z0-9 $%*+\\-./:]|"+Va+`)(?:.|[\r +]))+`;or.KANJI=new RegExp(Va,"g");or.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g");or.BYTE=new RegExp(Uw,"g");or.NUMERIC=new RegExp(fg,"g");or.ALPHANUMERIC=new RegExp(Vw,"g");const zw=new RegExp("^"+Va+"$"),Ww=new RegExp("^"+fg+"$"),Yw=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");or.testKanji=function(t){return zw.test(t)};or.testNumeric=function(t){return Ww.test(t)};or.testAlphanumeric=function(t){return Yw.test(t)};(function(e){const t=lc,r=or;e.NUMERIC={id:"Numeric",bit:1<<0,ccBits:[10,12,14]},e.ALPHANUMERIC={id:"Alphanumeric",bit:1<<1,ccBits:[9,11,13]},e.BYTE={id:"Byte",bit:1<<2,ccBits:[8,16,16]},e.KANJI={id:"Kanji",bit:1<<3,ccBits:[8,10,12]},e.MIXED={bit:-1},e.getCharCountIndicator=function(s,u){if(!s.ccBits)throw new Error("Invalid mode: "+s);if(!t.isValid(u))throw new Error("Invalid version: "+u);return u>=1&&u<10?s.ccBits[0]:u<27?s.ccBits[1]:s.ccBits[2]},e.getBestModeForData=function(s){return r.testNumeric(s)?e.NUMERIC:r.testAlphanumeric(s)?e.ALPHANUMERIC:r.testKanji(s)?e.KANJI:e.BYTE},e.toString=function(s){if(s&&s.id)return s.id;throw new Error("Invalid mode")},e.isValid=function(s){return s&&s.bit&&s.ccBits};function a(l){if(typeof l!="string")throw new Error("Param is not a string");switch(l.toLowerCase()){case"numeric":return e.NUMERIC;case"alphanumeric":return e.ALPHANUMERIC;case"kanji":return e.KANJI;case"byte":return e.BYTE;default:throw new Error("Unknown mode: "+l)}}e.from=function(s,u){if(e.isValid(s))return s;try{return a(s)}catch{return u}}})(ti);(function(e){const t=Dn,r=xo,a=Po,l=ti,s=lc,u=1<<12|1<<11|1<<10|1<<9|1<<8|1<<5|1<<2|1<<0,d=t.getBCHDigit(u);function f(M,b,x){for(let $=1;$<=40;$++)if(b<=e.getCapacity($,x,M))return $}function g(M,b){return l.getCharCountIndicator(M,b)+4}function v(M,b){let x=0;return M.forEach(function($){x+=g($.mode,b)+$.getBitsLength()}),x}function T(M,b){for(let x=1;x<=40;x++)if(v(M,x)<=e.getCapacity(x,b,l.MIXED))return x}e.from=function(b,x){return s.isValid(b)?parseInt(b,10):x},e.getCapacity=function(b,x,$){if(!s.isValid(b))throw new Error("Invalid QR Code version");typeof $=="undefined"&&($=l.BYTE);const L=t.getSymbolTotalCodewords(b),F=r.getTotalCodewordsCount(b,x),W=(L-F)*8;if($===l.MIXED)return W;const D=W-g($,b);switch($){case l.NUMERIC:return Math.floor(D/10*3);case l.ALPHANUMERIC:return Math.floor(D/11*2);case l.KANJI:return Math.floor(D/13);case l.BYTE:default:return Math.floor(D/8)}},e.getBestVersionForData=function(b,x){let $;const L=a.from(x,a.M);if(Array.isArray(b)){if(b.length>1)return T(b,L);if(b.length===0)return 1;$=b[0]}else $=b;return f($.mode,$.getLength(),L)},e.getEncodedBits=function(b){if(!s.isValid(b)||b<7)throw new Error("Invalid QR Code version");let x=b<<12;for(;t.getBCHDigit(x)-d>=0;)x^=u<=0;)l^=gg<<$u.getBCHDigit(l)-gh;return(a<<10|l)^Hw};var mg={};const Gw=ti;function ea(e){this.mode=Gw.NUMERIC,this.data=e.toString()}ea.getBitsLength=function(t){return 10*Math.floor(t/3)+(t%3?t%3*3+1:0)};ea.prototype.getLength=function(){return this.data.length};ea.prototype.getBitsLength=function(){return ea.getBitsLength(this.data.length)};ea.prototype.write=function(t){let r,a,l;for(r=0;r+3<=this.data.length;r+=3)a=this.data.substr(r,3),l=parseInt(a,10),t.put(l,10);const s=this.data.length-r;s>0&&(a=this.data.substr(r),l=parseInt(a,10),t.put(l,s*3+1))};var Kw=ea;const Qw=ti,mu=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function ta(e){this.mode=Qw.ALPHANUMERIC,this.data=e}ta.getBitsLength=function(t){return 11*Math.floor(t/2)+6*(t%2)};ta.prototype.getLength=function(){return this.data.length};ta.prototype.getBitsLength=function(){return ta.getBitsLength(this.data.length)};ta.prototype.write=function(t){let r;for(r=0;r+2<=this.data.length;r+=2){let a=mu.indexOf(this.data[r])*45;a+=mu.indexOf(this.data[r+1]),t.put(a,11)}this.data.length%2&&t.put(mu.indexOf(this.data[r]),6)};var jw=ta,Zw=function(t){for(var r=[],a=t.length,l=0;l=55296&&s<=56319&&a>l+1){var u=t.charCodeAt(l+1);u>=56320&&u<=57343&&(s=(s-55296)*1024+u-56320+65536,l+=1)}if(s<128){r.push(s);continue}if(s<2048){r.push(s>>6|192),r.push(s&63|128);continue}if(s<55296||s>=57344&&s<65536){r.push(s>>12|224),r.push(s>>6&63|128),r.push(s&63|128);continue}if(s>=65536&&s<=1114111){r.push(s>>18|240),r.push(s>>12&63|128),r.push(s>>6&63|128),r.push(s&63|128);continue}r.push(239,191,189)}return new Uint8Array(r).buffer};const Jw=Zw,Xw=ti;function na(e){this.mode=Xw.BYTE,typeof e=="string"&&(e=Jw(e)),this.data=new Uint8Array(e)}na.getBitsLength=function(t){return t*8};na.prototype.getLength=function(){return this.data.length};na.prototype.getBitsLength=function(){return na.getBitsLength(this.data.length)};na.prototype.write=function(e){for(let t=0,r=this.data.length;t=33088&&r<=40956)r-=33088;else if(r>=57408&&r<=60351)r-=49472;else throw new Error("Invalid SJIS character: "+this.data[t]+` +Make sure your charset is UTF-8`);r=(r>>>8&255)*192+(r&255),e.put(r,13)}};var rS=ra,vg={exports:{}};(function(e){var t={single_source_shortest_paths:function(r,a,l){var s={},u={};u[a]=0;var d=t.PriorityQueue.make();d.push(a,0);for(var f,g,v,T,M,b,x,$,L;!d.empty();){f=d.pop(),g=f.value,T=f.cost,M=r[g]||{};for(v in M)M.hasOwnProperty(v)&&(b=M[v],x=T+b,$=u[v],L=typeof u[v]=="undefined",(L||$>x)&&(u[v]=x,d.push(v,x),s[v]=g))}if(typeof l!="undefined"&&typeof u[l]=="undefined"){var F=["Could not find a path from ",a," to ",l,"."].join("");throw new Error(F)}return s},extract_shortest_path_from_predecessor_list:function(r,a){for(var l=[],s=a;s;)l.push(s),r[s],s=r[s];return l.reverse(),l},find_path:function(r,a,l){var s=t.single_source_shortest_paths(r,a,l);return t.extract_shortest_path_from_predecessor_list(s,l)},PriorityQueue:{make:function(r){var a=t.PriorityQueue,l={},s;r=r||{};for(s in a)a.hasOwnProperty(s)&&(l[s]=a[s]);return l.queue=[],l.sorter=r.sorter||a.default_sorter,l},default_sorter:function(r,a){return r.cost-a.cost},push:function(r,a){var l={value:r,cost:a};this.queue.push(l),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};e.exports=t})(vg);(function(e){const t=ti,r=Kw,a=jw,l=eS,s=rS,u=or,d=Dn,f=vg.exports;function g(F){return unescape(encodeURIComponent(F)).length}function v(F,W,D){const A=[];let N;for(;(N=F.exec(D))!==null;)A.push({data:N[0],index:N.index,mode:W,length:N[0].length});return A}function T(F){const W=v(u.NUMERIC,t.NUMERIC,F),D=v(u.ALPHANUMERIC,t.ALPHANUMERIC,F);let A,N;return d.isKanjiModeEnabled()?(A=v(u.BYTE,t.BYTE,F),N=v(u.KANJI,t.KANJI,F)):(A=v(u.BYTE_KANJI,t.BYTE,F),N=[]),W.concat(D,A,N).sort(function(z,H){return z.index-H.index}).map(function(z){return{data:z.data,mode:z.mode,length:z.length}})}function M(F,W){switch(W){case t.NUMERIC:return r.getBitsLength(F);case t.ALPHANUMERIC:return a.getBitsLength(F);case t.KANJI:return s.getBitsLength(F);case t.BYTE:return l.getBitsLength(F)}}function b(F){return F.reduce(function(W,D){const A=W.length-1>=0?W[W.length-1]:null;return A&&A.mode===D.mode?(W[W.length-1].data+=D.data,W):(W.push(D),W)},[])}function x(F){const W=[];for(let D=0;D=0&&d<=6&&(f===0||f===6)||f>=0&&f<=6&&(d===0||d===6)||d>=2&&d<=4&&f>=2&&f<=4?e.set(s+d,u+f,!0,!0):e.set(s+d,u+f,!1,!0))}}function fS(e){const t=e.size;for(let r=8;r>d&1)===1,e.set(l,s,u,!0),e.set(s,l,u,!0)}function yu(e,t,r){const a=e.size,l=uS.getEncodedBits(t,r);let s,u;for(s=0;s<15;s++)u=(l>>s&1)===1,s<6?e.set(s,8,u,!0):s<8?e.set(s+1,8,u,!0):e.set(a-15+s,8,u,!0),s<8?e.set(8,a-s-1,u,!0):s<9?e.set(8,15-s-1+1,u,!0):e.set(8,15-s-1,u,!0);e.set(a-8,8,1,!0)}function mS(e,t){const r=e.size;let a=-1,l=r-1,s=7,u=0;for(let d=r-1;d>0;d-=2)for(d===6&&d--;;){for(let f=0;f<2;f++)if(!e.isReserved(l,d-f)){let g=!1;u>>s&1)===1),e.set(l,d-f,g),s--,s===-1&&(u++,s=7)}if(l+=a,l<0||r<=l){l-=a,a=-a;break}}}function vS(e,t,r){const a=new iS;r.forEach(function(f){a.put(f.mode.bit,4),a.put(f.getLength(),cS.getCharCountIndicator(f.mode,e)),f.write(a)});const l=Eo.getSymbolTotalCodewords(e),s=Ou.getTotalCodewordsCount(e,t),u=(l-s)*8;for(a.getLengthInBits()+4<=u&&a.put(0,4);a.getLengthInBits()%8!==0;)a.putBit(0);const d=(u-a.getLengthInBits())/8;for(let f=0;f=7&&gS(f,t),mS(f,u),isNaN(a)&&(a=Ru.getBestMask(f,yu.bind(null,f,r))),Ru.applyMask(a,f),yu(f,r,a),{modules:f,version:t,errorCorrectionLevel:r,maskPattern:a,segments:l}}ig.create=function(t,r){if(typeof t=="undefined"||t==="")throw new Error("No input text");let a=vu.M,l,s;return typeof r!="undefined"&&(a=vu.from(r.errorCorrectionLevel,vu.M),l=bo.from(r.version),s=Ru.from(r.maskPattern),r.toSJISFunc&&Eo.setToSJISFunction(r.toSJISFunc)),yS(t,l,a,s)};var pg={},oc={};(function(e){function t(r){if(typeof r=="number"&&(r=r.toString()),typeof r!="string")throw new Error("Color should be defined as hex string");let a=r.slice().replace("#","").split("");if(a.length<3||a.length===5||a.length>8)throw new Error("Invalid hex color: "+r);(a.length===3||a.length===4)&&(a=Array.prototype.concat.apply([],a.map(function(s){return[s,s]}))),a.length===6&&a.push("F","F");const l=parseInt(a.join(""),16);return{r:l>>24&255,g:l>>16&255,b:l>>8&255,a:l&255,hex:"#"+a.slice(0,6).join("")}}e.getOptions=function(a){a||(a={}),a.color||(a.color={});const l=typeof a.margin=="undefined"||a.margin===null||a.margin<0?4:a.margin,s=a.width&&a.width>=21?a.width:void 0,u=a.scale||4;return{width:s,scale:s?4:u,margin:l,color:{dark:t(a.color.dark||"#000000ff"),light:t(a.color.light||"#ffffffff")},type:a.type,rendererOpts:a.rendererOpts||{}}},e.getScale=function(a,l){return l.width&&l.width>=a+l.margin*2?l.width/(a+l.margin*2):l.scale},e.getImageWidth=function(a,l){const s=e.getScale(a,l);return Math.floor((a+l.margin*2)*s)},e.qrToImageData=function(a,l,s){const u=l.modules.size,d=l.modules.data,f=e.getScale(u,s),g=Math.floor((u+s.margin*2)*f),v=s.margin*f,T=[s.color.light,s.color.dark];for(let M=0;M=v&&b>=v&&M0&&f>0&&e[d-1]||(a+=s?_u("M",f+r,.5+g+r):_u("m",l,0),l=0,s=!1),f+1':"",g="',v='viewBox="0 0 '+d+" "+d+'"',T=l.width?'width="'+l.width+'" height="'+l.width+'" ':"",M=''+f+g+` +`;return typeof a=="function"&&a(null,M),M};const wS=Rw,Lu=ig,_g=pg,SS=yg;function sc(e,t,r,a,l){const s=[].slice.call(arguments,1),u=s.length,d=typeof s[u-1]=="function";if(!d&&!wS())throw new Error("Callback required as last argument");if(d){if(u<2)throw new Error("Too few arguments provided");u===2?(l=r,r=t,t=a=void 0):u===3&&(t.getContext&&typeof l=="undefined"?(l=a,a=void 0):(l=a,a=r,r=t,t=void 0))}else{if(u<1)throw new Error("Too few arguments provided");return u===1?(r=t,t=a=void 0):u===2&&!t.getContext&&(a=r,r=t,t=void 0),new Promise(function(f,g){try{const v=Lu.create(r,a);f(e(v,t,a))}catch(v){g(v)}})}try{const f=Lu.create(r,a);l(null,e(f,t,a))}catch(f){l(f)}}Lu.create;var kS=sc.bind(null,_g.render),CS=sc.bind(null,_g.renderToDataURL),TS=sc.bind(null,function(e,t,r){return SS.render(e,r)});/*! vue-qrcode v2.0.0 | (c) 2018-present Chen Fengyuan | MIT */const vh="ready";var MS=un({name:"VueQrcode",props:{value:{type:String,default:void 0},options:{type:Object,default:void 0},tag:{type:String,default:"canvas"}},emits:[vh],watch:{$props:{deep:!0,immediate:!0,handler(){this.$el&&this.generate()}}},mounted(){this.generate()},methods:{generate(){const e=this.options||{},t=String(this.value),r=()=>{this.$emit(vh,this.$el)};switch(this.tag){case"canvas":kS(this.$el,t,e,a=>{if(a)throw a;r()});break;case"img":CS(t,e,(a,l)=>{if(a)throw a;this.$el.src=l,this.$el.onload=r});break;case"svg":TS(t,e,(a,l)=>{if(a)throw a;const s=document.createElement("div");s.innerHTML=l;const u=s.querySelector("svg");if(u){const{attributes:d,childNodes:f}=u;Object.keys(d).forEach(g=>{const v=d[Number(g)];this.$el.setAttribute(v.name,v.value)}),Object.keys(f).forEach(g=>{const v=f[Number(g)];this.$el.appendChild(v.cloneNode(!0))}),r()}});break}}},render(){return E(this.tag,this.$slots.default)}});function DS(e){const t=document.createElement("textarea");t.value=e,t.contentEditable="true",t.style.position="fixed";const r=()=>{};Lh(r),document.body.appendChild(t),t.focus(),t.select();const a=document.execCommand("copy");return t.remove(),Nh(r),a}function qS(e){return navigator.clipboard!==void 0?navigator.clipboard.writeText(e):new Promise((t,r)=>{const a=DS(e);a?t(!0):r(a)})}let PS=0;const xS=["click","keydown"],AS={icon:String,label:[Number,String],alert:[Boolean,String],alertIcon:String,name:{type:[Number,String],default:()=>`t_${PS++}`},noCaps:Boolean,tabindex:[String,Number],disable:Boolean,contentClass:String,ripple:{type:[Boolean,Object],default:!0}};function ES(e,t,r,a){const l=fo(Uh,Cr);if(l===Cr)return console.error("QTab/QRouteTab component needs to be child of QTabs"),Cr;const{proxy:s}=Dt(),u=se(null),d=se(null),f=se(null),g=I(()=>e.disable===!0||e.ripple===!1?!1:Object.assign({keyCodes:[13,32],early:!0},e.ripple===!0?{}:e.ripple)),v=I(()=>l.currentModel.value===e.name),T=I(()=>"q-tab relative-position self-stretch flex flex-center text-center"+(v.value===!0?" q-tab--active"+(l.tabProps.value.activeClass?" "+l.tabProps.value.activeClass:"")+(l.tabProps.value.activeColor?` text-${l.tabProps.value.activeColor}`:"")+(l.tabProps.value.activeBgColor?` bg-${l.tabProps.value.activeBgColor}`:""):" q-tab--inactive")+(e.icon&&e.label&&l.tabProps.value.inlineLabel===!1?" q-tab--full":"")+(e.noCaps===!0||l.tabProps.value.noCaps===!0?" q-tab--no-caps":"")+(e.disable===!0?" disabled":" q-focusable q-hoverable cursor-pointer")+(a!==void 0?a.linkClass.value:"")),M=I(()=>"q-tab__content self-stretch flex-center relative-position q-anchor--skip non-selectable "+(l.tabProps.value.inlineLabel===!0?"row no-wrap q-tab__content--inline":"column")+(e.contentClass!==void 0?` ${e.contentClass}`:"")),b=I(()=>e.disable===!0||l.hasFocus.value===!0||v.value===!1&&l.hasActiveTab.value===!0?-1:e.tabindex||0);function x(D,A){if(A!==!0&&u.value!==null&&u.value.focus(),e.disable===!0){a!==void 0&&a.hasRouterLink.value===!0&&Ft(D);return}if(a===void 0){l.updateModel({name:e.name}),r("click",D);return}if(a.hasRouterLink.value===!0){const N=(J={})=>{let z;const H=J.to===void 0||Yi(J.to,e.to)===!0?l.avoidRouteWatcher=co():null;return a.navigateToRouterLink(D,{...J,returnRouterError:!0}).catch(ye=>{z=ye}).then(ye=>{if(H===l.avoidRouteWatcher&&(l.avoidRouteWatcher=!1,z===void 0&&(ye===void 0||ye.message.startsWith("Avoided redundant navigation")===!0)&&l.updateModel({name:e.name})),J.returnRouterError===!0)return z!==void 0?Promise.reject(z):ye})};r("click",D,N),D.defaultPrevented!==!0&&N();return}r("click",D)}function $(D){Ya(D,[13,32])?x(D,!0):zh(D)!==!0&&D.keyCode>=35&&D.keyCode<=40&&D.altKey!==!0&&D.metaKey!==!0&&l.onKbdNavigate(D.keyCode,s.$el)===!0&&Ft(D),r("keydown",D)}function L(){const D=l.tabProps.value.narrowIndicator,A=[],N=E("div",{ref:f,class:["q-tab__indicator",l.tabProps.value.indicatorClass]});e.icon!==void 0&&A.push(E(Ht,{class:"q-tab__icon",name:e.icon})),e.label!==void 0&&A.push(E("div",{class:"q-tab__label"},e.label)),e.alert!==!1&&A.push(e.alertIcon!==void 0?E(Ht,{class:"q-tab__alert-icon",color:e.alert!==!0?e.alert:void 0,name:e.alertIcon}):E("div",{class:"q-tab__alert"+(e.alert!==!0?` text-${e.alert}`:"")})),D===!0&&A.push(N);const J=[E("div",{class:"q-focus-helper",tabindex:-1,ref:u}),E("div",{class:M.value},bi(t.default,A))];return D===!1&&J.push(N),J}const F={name:I(()=>e.name),rootRef:d,tabIndicatorRef:f,routeData:a};Gt(()=>{l.unregisterTab(F)}),ei(()=>{l.registerTab(F)});function W(D,A){const N={ref:d,class:T.value,tabindex:b.value,role:"tab","aria-selected":v.value===!0?"true":"false","aria-disabled":e.disable===!0?"true":void 0,onClick:x,onKeydown:$,...A};return sn(E(D,N,L()),[[uo,g.value]])}return{renderTab:W,$tabs:l}}var bu=Je({name:"QTab",props:AS,emits:xS,setup(e,{slots:t,emit:r}){const{renderTab:a}=ES(e,t,r);return()=>a("div")}});function IS(e,t,r){const a=r===!0?["left","right"]:["top","bottom"];return`absolute-${t===!0?a[0]:a[1]}${e?` text-${e}`:""}`}const $S=["left","center","right","justify"];var RS=Je({name:"QTabs",props:{modelValue:[Number,String],align:{type:String,default:"center",validator:e=>$S.includes(e)},breakpoint:{type:[String,Number],default:600},vertical:Boolean,shrink:Boolean,stretch:Boolean,activeClass:String,activeColor:String,activeBgColor:String,indicatorColor:String,leftIcon:String,rightIcon:String,outsideArrows:Boolean,mobileArrows:Boolean,switchIndicator:Boolean,narrowIndicator:Boolean,inlineLabel:Boolean,noCaps:Boolean,dense:Boolean,contentClass:String,"onUpdate:modelValue":[Function,Array]},setup(e,{slots:t,emit:r}){const{proxy:a}=Dt(),{$q:l}=a,{registerTick:s}=$a(),{registerTick:u}=$a(),{registerTick:d}=$a(),{registerTimeout:f,removeTimeout:g}=so(),{registerTimeout:v,removeTimeout:T}=so(),M=se(null),b=se(null),x=se(e.modelValue),$=se(!1),L=se(!0),F=se(!1),W=se(!1),D=[],A=se(0),N=se(!1);let J=null,z=null,H;const ye=I(()=>({activeClass:e.activeClass,activeColor:e.activeColor,activeBgColor:e.activeBgColor,indicatorClass:IS(e.indicatorColor,e.switchIndicator,e.vertical),narrowIndicator:e.narrowIndicator,inlineLabel:e.inlineLabel,noCaps:e.noCaps})),_e=I(()=>{const G=A.value,de=x.value;for(let qe=0;qe`q-tabs__content--align-${$.value===!0?"left":W.value===!0?"justify":e.align}`),lt=I(()=>`q-tabs row no-wrap items-center q-tabs--${$.value===!0?"":"not-"}scrollable q-tabs--${e.vertical===!0?"vertical":"horizontal"} q-tabs__arrows--${e.outsideArrows===!0?"outside":"inside"} q-tabs--mobile-with${e.mobileArrows===!0?"":"out"}-arrows`+(e.dense===!0?" q-tabs--dense":"")+(e.shrink===!0?" col-shrink":"")+(e.stretch===!0?" self-stretch":"")),te=I(()=>"q-tabs__content scroll--mobile row no-wrap items-center self-stretch hide-scrollbar relative-position "+Ae.value+(e.contentClass!==void 0?` ${e.contentClass}`:"")),Pe=I(()=>e.vertical===!0?{container:"height",content:"offsetHeight",scroll:"scrollHeight"}:{container:"width",content:"offsetWidth",scroll:"scrollWidth"}),Be=I(()=>e.vertical!==!0&&l.lang.rtl===!0),j=I(()=>Fa===!1&&Be.value===!0);ze(Be,he),ze(()=>e.modelValue,G=>{K({name:G,setCurrent:!0,skipEmit:!0})}),ze(()=>e.outsideArrows,ve);function K({name:G,setCurrent:de,skipEmit:qe}){x.value!==G&&(qe!==!0&&e["onUpdate:modelValue"]!==void 0&&r("update:modelValue",G),(de===!0||e["onUpdate:modelValue"]===void 0)&&(X(x.value,G),x.value=G))}function ve(){s(()=>{rt({width:M.value.offsetWidth,height:M.value.offsetHeight})})}function rt(G){if(Pe.value===void 0||b.value===null)return;const de=G[Pe.value.container],qe=Math.min(b.value[Pe.value.scroll],Array.prototype.reduce.call(b.value.children,(it,Ze)=>it+(Ze[Pe.value.content]||0),0)),gt=de>0&&qe>de;$.value=gt,gt===!0&&u(he),W.value=deit.name.value===G):null,gt=de!=null&&de!==""?D.find(it=>it.name.value===de):null;if(qe&>){const it=qe.tabIndicatorRef.value,Ze=gt.tabIndicatorRef.value;J!==null&&(clearTimeout(J),J=null),it.style.transition="none",it.style.transform="none",Ze.style.transition="none",Ze.style.transform="none";const Fe=it.getBoundingClientRect(),mt=Ze.getBoundingClientRect();Ze.style.transform=e.vertical===!0?`translate3d(0,${Fe.top-mt.top}px,0) scale3d(1,${mt.height?Fe.height/mt.height:1},1)`:`translate3d(${Fe.left-mt.left}px,0,0) scale3d(${mt.width?Fe.width/mt.width:1},1,1)`,d(()=>{J=setTimeout(()=>{J=null,Ze.style.transition="transform .25s cubic-bezier(.4, 0, .2, 1)",Ze.style.transform="none"},70)})}gt&&$.value===!0&&Z(gt.rootRef.value)}function Z(G){const{left:de,width:qe,top:gt,height:it}=b.value.getBoundingClientRect(),Ze=G.getBoundingClientRect();let Fe=e.vertical===!0?Ze.top-gt:Ze.left-de;if(Fe<0){b.value[e.vertical===!0?"scrollTop":"scrollLeft"]+=Math.floor(Fe),he();return}Fe+=e.vertical===!0?Ze.height-it:Ze.width-qe,Fe>0&&(b.value[e.vertical===!0?"scrollTop":"scrollLeft"]+=Math.ceil(Fe),he())}function he(){const G=b.value;if(G===null)return;const de=G.getBoundingClientRect(),qe=e.vertical===!0?G.scrollTop:Math.abs(G.scrollLeft);Be.value===!0?(L.value=Math.ceil(qe+de.width)0):(L.value=qe>0,F.value=e.vertical===!0?Math.ceil(qe+de.height){ee(G)===!0&&we()},5)}function Ke(){fe(j.value===!0?Number.MAX_SAFE_INTEGER:0)}function Ue(){fe(j.value===!0?0:Number.MAX_SAFE_INTEGER)}function we(){z!==null&&(clearInterval(z),z=null)}function Me(G,de){const qe=Array.prototype.filter.call(b.value.children,mt=>mt===de||mt.matches&&mt.matches(".q-tab.q-focusable")===!0),gt=qe.length;if(gt===0)return;if(G===36)return Z(qe[0]),qe[0].focus(),!0;if(G===35)return Z(qe[gt-1]),qe[gt-1].focus(),!0;const it=G===(e.vertical===!0?38:37),Ze=G===(e.vertical===!0?40:39),Fe=it===!0?-1:Ze===!0?1:void 0;if(Fe!==void 0){const mt=Be.value===!0?-1:1,Pt=qe.indexOf(de)+Fe*mt;return Pt>=0&&Ptj.value===!0?{get:G=>Math.abs(G.scrollLeft),set:(G,de)=>{G.scrollLeft=-de}}:e.vertical===!0?{get:G=>G.scrollTop,set:(G,de)=>{G.scrollTop=de}}:{get:G=>G.scrollLeft,set:(G,de)=>{G.scrollLeft=de}});function ee(G){const de=b.value,{get:qe,set:gt}=ft.value;let it=!1,Ze=qe(de);const Fe=G=G)&&(it=!0,Ze=G),gt(de,Ze),he(),it}function wt(G,de){for(const qe in G)if(G[qe]!==de[qe])return!1;return!0}function nn(){let G=null,de={matchedLen:0,queryDiff:9999,hrefLen:0};const qe=D.filter(Fe=>Fe.routeData!==void 0&&Fe.routeData.hasRouterLink.value===!0),{hash:gt,query:it}=a.$route,Ze=Object.keys(it).length;for(const Fe of qe){const mt=Fe.routeData.exact.value===!0;if(Fe.routeData[mt===!0?"linkIsExactActive":"linkIsActive"].value!==!0)continue;const{hash:Pt,query:dn,matched:Jn,href:ni}=Fe.routeData.resolvedLink.value,Vn=Object.keys(dn).length;if(mt===!0){if(Pt!==gt||Vn!==Ze||wt(it,dn)===!1)continue;G=Fe.name.value;break}if(Pt!==""&&Pt!==gt||Vn!==0&&wt(dn,it)===!1)continue;const jt={matchedLen:Jn.length,queryDiff:Ze-Vn,hrefLen:ni.length-Pt.length};if(jt.matchedLen>de.matchedLen){G=Fe.name.value,de=jt;continue}else if(jt.matchedLen!==de.matchedLen)continue;if(jt.queryDiffde.hrefLen&&(G=Fe.name.value,de=jt)}G===null&&D.some(Fe=>Fe.routeData===void 0&&Fe.name.value===x.value)===!0||K({name:G,setCurrent:!0})}function cn(G){if(g(),N.value!==!0&&M.value!==null&&G.target&&typeof G.target.closest=="function"){const de=G.target.closest(".q-tab");de&&M.value.contains(de)===!0&&(N.value=!0,$.value===!0&&Z(de))}}function rn(){f(()=>{N.value=!1},30)}function qt(){Fn.avoidRouteWatcher===!1?v(nn):T()}function Kt(){if(H===void 0){const G=ze(()=>a.$route.fullPath,qt);H=()=>{G(),H=void 0}}}function Zn(G){D.push(G),A.value++,ve(),G.routeData===void 0||a.$route===void 0?v(()=>{if($.value===!0){const de=x.value,qe=de!=null&&de!==""?D.find(gt=>gt.name.value===de):null;qe&&Z(qe.rootRef.value)}}):(Kt(),G.routeData.hasRouterLink.value===!0&&qt())}function Qt(G){D.splice(D.indexOf(G),1),A.value--,ve(),H!==void 0&&G.routeData!==void 0&&(D.every(de=>de.routeData===void 0)===!0&&H(),qt())}const Fn={currentModel:x,tabProps:ye,hasFocus:N,hasActiveTab:_e,registerTab:Zn,unregisterTab:Qt,verifyRouteModel:qt,updateModel:K,onKbdNavigate:Me,avoidRouteWatcher:!1};Wh(Uh,Fn);function Ar(){J!==null&&clearTimeout(J),we(),H!==void 0&&H()}let St;return Gt(Ar),ia(()=>{St=H!==void 0,Ar()}),aa(()=>{St===!0&&Kt(),ve()}),()=>E("div",{ref:M,class:lt.value,role:"tablist",onFocusin:cn,onFocusout:rn},[E(xu,{onResize:rt}),E("div",{ref:b,class:te.value,onScroll:he},Mt(t.default)),E(Ht,{class:"q-tabs__arrow q-tabs__arrow--left absolute q-tab__icon"+(L.value===!0?"":" q-tabs__arrow--faded"),name:e.leftIcon||l.iconSet.tabs[e.vertical===!0?"up":"left"],onMousedownPassive:Ke,onTouchstartPassive:Ke,onMouseupPassive:we,onMouseleavePassive:we,onTouchendPassive:we}),E(Ht,{class:"q-tabs__arrow q-tabs__arrow--right absolute q-tab__icon"+(F.value===!0?"":" q-tabs__arrow--faded"),name:e.rightIcon||l.iconSet.tabs[e.vertical===!0?"down":"right"],onMousedownPassive:Ue,onTouchstartPassive:Ue,onMouseupPassive:we,onMouseleavePassive:we,onTouchendPassive:we})])}}),OS=Je({name:"QField",inheritAttrs:!1,props:ec,emits:Yh,setup(){return Hh(Gh())}});const ph=e=>["add","add-unique","toggle"].includes(e),LS=".*+?^${}()|[]\\",NS=Object.keys(ec);var Aa=Je({name:"QSelect",inheritAttrs:!1,props:{...tg,...Wb,...ec,modelValue:{required:!0},multiple:Boolean,displayValue:[String,Number],displayValueHtml:Boolean,dropdownIcon:String,options:{type:Array,default:()=>[]},optionValue:[Function,String],optionLabel:[Function,String],optionDisable:[Function,String],hideSelected:Boolean,hideDropdownIcon:Boolean,fillInput:Boolean,maxValues:[Number,String],optionsDense:Boolean,optionsDark:{type:Boolean,default:null},optionsSelectedClass:String,optionsHtml:Boolean,optionsCover:Boolean,menuShrink:Boolean,menuAnchor:String,menuSelf:String,menuOffset:Array,popupContentClass:String,popupContentStyle:[String,Array,Object],useInput:Boolean,useChips:Boolean,newValueMode:{type:String,validator:ph},mapOptions:Boolean,emitValue:Boolean,inputDebounce:{type:[Number,String],default:500},inputClass:[Array,String,Object],inputStyle:[Array,String,Object],tabindex:{type:[String,Number],default:0},autocomplete:String,transitionShow:String,transitionHide:String,transitionDuration:[String,Number],behavior:{type:String,validator:e=>["default","menu","dialog"].includes(e),default:"default"},virtualScrollItemSize:{type:[Number,String],default:void 0},onNewValue:Function,onFilter:Function},emits:[...Yh,"add","remove","inputValue","newValue","keyup","keypress","keydown","filterAbort"],setup(e,{slots:t,emit:r}){const{proxy:a}=Dt(),{$q:l}=a,s=se(!1),u=se(!1),d=se(-1),f=se(""),g=se(!1),v=se(!1);let T=null,M,b,x,$=null,L,F,W,D;const A=se(null),N=se(null),J=se(null),z=se(null),H=se(null),ye=Yb(e),_e=Kb(ll),Ae=I(()=>Array.isArray(e.options)?e.options.length:0),lt=I(()=>e.virtualScrollItemSize===void 0?e.optionsDense===!0?24:48:e.virtualScrollItemSize),{virtualScrollSliceRange:te,virtualScrollSliceSizeComputed:Pe,localResetVirtualScroll:Be,padVirtualScroll:j,onVirtualScrollEvt:K,scrollTo:ve,setVirtualScrollSize:rt}=ng({virtualScrollLength:Ae,getVirtualScrollTarget:rl,getVirtualScrollEl:nl,virtualScrollItemSizeComputed:lt}),X=Gh(),Z=I(()=>{const C=e.mapOptions===!0&&e.multiple!==!0,le=e.modelValue!==void 0&&(e.modelValue!==null||C===!0)?e.multiple===!0&&Array.isArray(e.modelValue)?e.modelValue:[e.modelValue]:[];if(e.mapOptions===!0&&Array.isArray(e.options)===!0){const ie=e.mapOptions===!0&&M!==void 0?M:[],De=le.map(st=>ni(st,ie));return e.modelValue===null&&C===!0?De.filter(st=>st!==null):De}return le}),he=I(()=>{const C={};return NS.forEach(le=>{const ie=e[le];ie!==void 0&&(C[le]=ie)}),C}),fe=I(()=>e.optionsDark===null?X.isDark.value:e.optionsDark),Ke=I(()=>th(Z.value)),Ue=I(()=>{let C="q-field__input q-placeholder col";return e.hideSelected===!0||Z.value.length===0?[C,e.inputClass]:(C+=" q-field__input--padding",e.inputClass===void 0?C:[C,e.inputClass])}),we=I(()=>(e.virtualScrollHorizontal===!0?"q-virtual-scroll--horizontal":"")+(e.popupContentClass?" "+e.popupContentClass:"")),Me=I(()=>Ae.value===0),ft=I(()=>Z.value.map(C=>G.value(C)).join(", ")),ee=I(()=>e.displayValue!==void 0?e.displayValue:ft.value),wt=I(()=>e.optionsHtml===!0?()=>!0:C=>C!=null&&C.html===!0),nn=I(()=>e.displayValueHtml===!0||e.displayValue===void 0&&(e.optionsHtml===!0||Z.value.some(wt.value))),cn=I(()=>X.focused.value===!0?e.tabindex:-1),rn=I(()=>{const C={tabindex:e.tabindex,role:"combobox","aria-label":e.label,"aria-readonly":e.readonly===!0?"true":"false","aria-autocomplete":e.useInput===!0?"list":"none","aria-expanded":s.value===!0?"true":"false","aria-controls":`${X.targetUid.value}_lb`};return d.value>=0&&(C["aria-activedescendant"]=`${X.targetUid.value}_${d.value}`),C}),qt=I(()=>({id:`${X.targetUid.value}_lb`,role:"listbox","aria-multiselectable":e.multiple===!0?"true":"false"})),Kt=I(()=>Z.value.map((C,le)=>({index:le,opt:C,html:wt.value(C),selected:!0,removeAtIndex:Fe,toggleOption:Pt,tabindex:cn.value}))),Zn=I(()=>{if(Ae.value===0)return[];const{from:C,to:le}=te.value;return e.options.slice(C,le).map((ie,De)=>{const st=de.value(ie)===!0,tt=C+De,kt={clickable:!0,active:!1,activeClass:Ar.value,manualFocus:!0,focused:!1,disable:st,tabindex:-1,dense:e.optionsDense,dark:fe.value,role:"option",id:`${X.targetUid.value}_${tt}`,onClick:()=>{Pt(ie)}};return st!==!0&&(jt(ie)===!0&&(kt.active=!0),d.value===tt&&(kt.focused=!0),kt["aria-selected"]=kt.active===!0?"true":"false",l.platform.is.desktop===!0&&(kt.onMousemove=()=>{s.value===!0&&dn(tt)})),{index:tt,opt:ie,html:wt.value(ie),label:G.value(ie),selected:kt.active,focused:kt.focused,toggleOption:Pt,setOptionIndex:dn,itemProps:kt}})}),Qt=I(()=>e.dropdownIcon!==void 0?e.dropdownIcon:l.iconSet.arrow.dropdown),Fn=I(()=>e.optionsCover===!1&&e.outlined!==!0&&e.standout!==!0&&e.borderless!==!0&&e.rounded!==!0),Ar=I(()=>e.optionsSelectedClass!==void 0?e.optionsSelectedClass:e.color!==void 0?`text-${e.color}`:""),St=I(()=>Vn(e.optionValue,"value")),G=I(()=>Vn(e.optionLabel,"label")),de=I(()=>Vn(e.optionDisable,"disable")),qe=I(()=>Z.value.map(C=>St.value(C))),gt=I(()=>{const C={onInput:ll,onChange:_e,onKeydown:tl,onKeyup:Ci,onKeypress:el,onFocus:Si,onClick(le){b===!0&&mi(le)}};return C.onCompositionstart=C.onCompositionupdate=C.onCompositionend=_e,C});ze(Z,C=>{M=C,e.useInput===!0&&e.fillInput===!0&&e.multiple!==!0&&X.innerLoading.value!==!0&&(u.value!==!0&&s.value!==!0||Ke.value!==!0)&&(x!==!0&&Or(),(u.value===!0||s.value===!0)&&Ir(""))},{immediate:!0}),ze(()=>e.fillInput,Or),ze(s,Mi),ze(Ae,Xo);function it(C){return e.emitValue===!0?St.value(C):C}function Ze(C){if(C>-1&&C=e.maxValues)return;const De=e.modelValue.slice();r("add",{index:De.length,value:ie}),De.push(ie),r("update:modelValue",De)}function Pt(C,le){if(X.editable.value!==!0||C===void 0||de.value(C)===!0)return;const ie=St.value(C);if(e.multiple!==!0){le!==!0&&(Er(e.fillInput===!0?G.value(C):"",!0,!0),cr()),N.value!==null&&N.value.focus(),(Z.value.length===0||Yi(St.value(Z.value[0]),ie)!==!0)&&r("update:modelValue",e.emitValue===!0?ie:C);return}if((b!==!0||g.value===!0)&&X.focus(),Si(),Z.value.length===0){const tt=e.emitValue===!0?ie:C;r("add",{index:0,value:tt}),r("update:modelValue",e.multiple===!0?[tt]:tt);return}const De=e.modelValue.slice(),st=qe.value.findIndex(tt=>Yi(tt,ie));if(st>-1)r("remove",{index:st,value:De.splice(st,1)[0]});else{if(e.maxValues!==void 0&&De.length>=e.maxValues)return;const tt=e.emitValue===!0?ie:C;r("add",{index:De.length,value:tt}),De.push(tt)}r("update:modelValue",De)}function dn(C){if(l.platform.is.desktop!==!0)return;const le=C>-1&&C=0?G.value(e.options[ie]):L))}}function ni(C,le){const ie=De=>Yi(St.value(De),C);return e.options.find(ie)||le.find(ie)||C}function Vn(C,le){const ie=C!==void 0?C:le;return typeof ie=="function"?ie:De=>De!==null&&typeof De=="object"&&ie in De?De[ie]:De}function jt(C){const le=St.value(C);return qe.value.find(ie=>Yi(ie,le))!==void 0}function Si(C){e.useInput===!0&&N.value!==null&&(C===void 0||N.value===C.target&&C.target.value===ft.value)&&N.value.select()}function ki(C){Ya(C,27)===!0&&s.value===!0&&(mi(C),cr(),Or()),r("keyup",C)}function Ci(C){const{value:le}=C.target;if(C.keyCode!==void 0){ki(C);return}if(C.target.value="",T!==null&&(clearTimeout(T),T=null),Or(),typeof le=="string"&&le.length!==0){const ie=le.toLocaleLowerCase(),De=tt=>{const kt=e.options.find(Nt=>tt.value(Nt).toLocaleLowerCase()===ie);return kt===void 0?!1:(Z.value.indexOf(kt)===-1?Pt(kt):cr(),!0)},st=tt=>{De(St)!==!0&&(De(G)===!0||tt===!0||Ir(le,!0,()=>st(!0)))};st()}else X.clearValue(C)}function el(C){r("keypress",C)}function tl(C){if(r("keydown",C),zh(C)===!0)return;const le=f.value.length!==0&&(e.newValueMode!==void 0||e.onNewValue!==void 0),ie=C.shiftKey!==!0&&e.multiple!==!0&&(d.value>-1||le===!0);if(C.keyCode===27){Ia(C);return}if(C.keyCode===9&&ie===!1){$r();return}if(C.target===void 0||C.target.id!==X.targetUid.value||X.editable.value!==!0)return;if(C.keyCode===40&&X.innerLoading.value!==!0&&s.value===!1){Ft(C),Rr();return}if(C.keyCode===8&&e.hideSelected!==!0&&f.value.length===0){e.multiple===!0&&Array.isArray(e.modelValue)===!0?Ze(e.modelValue.length-1):e.multiple!==!0&&e.modelValue!==null&&r("update:modelValue",null);return}(C.keyCode===35||C.keyCode===36)&&(typeof f.value!="string"||f.value.length===0)&&(Ft(C),d.value=-1,Jn(C.keyCode===36?1:-1,e.multiple)),(C.keyCode===33||C.keyCode===34)&&Pe.value!==void 0&&(Ft(C),d.value=Math.max(-1,Math.min(Ae.value,d.value+(C.keyCode===33?-1:1)*Pe.value.view)),Jn(C.keyCode===33?1:-1,e.multiple)),(C.keyCode===38||C.keyCode===40)&&(Ft(C),Jn(C.keyCode===38?-1:1,e.multiple));const De=Ae.value;if((W===void 0||D0&&e.useInput!==!0&&C.key!==void 0&&C.key.length===1&&C.altKey===!1&&C.ctrlKey===!1&&C.metaKey===!1&&(C.keyCode!==32||W.length!==0)){s.value!==!0&&Rr(C);const st=C.key.toLocaleLowerCase(),tt=W.length===1&&W[0]===st;D=Date.now()+1500,tt===!1&&(Ft(C),W+=st);const kt=new RegExp("^"+W.split("").map(Di=>LS.indexOf(Di)>-1?"\\"+Di:Di).join(".*"),"i");let Nt=d.value;if(tt===!0||Nt<0||kt.test(G.value(e.options[Nt]))!==!0)do Nt=ih(Nt+1,-1,De-1);while(Nt!==d.value&&(de.value(e.options[Nt])===!0||kt.test(G.value(e.options[Nt]))!==!0));d.value!==Nt&&kn(()=>{dn(Nt),ve(Nt),Nt>=0&&e.useInput===!0&&e.fillInput===!0&&Ti(G.value(e.options[Nt]))});return}if(!(C.keyCode!==13&&(C.keyCode!==32||e.useInput===!0||W!=="")&&(C.keyCode!==9||ie===!1))){if(C.keyCode!==9&&Ft(C),d.value>-1&&d.value{if(kt){if(ph(kt)!==!0)return}else kt=e.newValueMode;if(Er("",e.multiple!==!0,!0),tt==null)return;(kt==="toggle"?Pt:mt)(tt,kt==="add-unique"),e.multiple!==!0&&(N.value!==null&&N.value.focus(),cr())};if(e.onNewValue!==void 0?r("newValue",f.value,st):st(f.value),e.multiple!==!0)return}s.value===!0?$r():X.innerLoading.value!==!0&&Rr()}}function nl(){return b===!0?H.value:J.value!==null&&J.value.contentEl!==null?J.value.contentEl:void 0}function rl(){return nl()}function il(){return e.hideSelected===!0?[]:t["selected-item"]!==void 0?Kt.value.map(C=>t["selected-item"](C)).slice():t.selected!==void 0?[].concat(t.selected()):e.useChips===!0?Kt.value.map((C,le)=>E(Ga,{key:"option-"+le,removable:X.editable.value===!0&&de.value(C.opt)!==!0,dense:!0,textColor:e.color,tabindex:cn.value,onRemove(){C.removeAtIndex(le)}},()=>E("span",{class:"ellipsis",[C.html===!0?"innerHTML":"textContent"]:G.value(C.opt)}))):[E("span",{[nn.value===!0?"innerHTML":"textContent"]:ee.value})]}function al(){if(Me.value===!0)return t["no-option"]!==void 0?t["no-option"]({inputValue:f.value}):void 0;const C=t.option!==void 0?t.option:ie=>E(Vt,{key:ie.index,...ie.itemProps},()=>E(xe,()=>E(He,()=>E("span",{[ie.html===!0?"innerHTML":"textContent"]:ie.label}))));let le=j("div",Zn.value.map(C));return t["before-options"]!==void 0&&(le=t["before-options"]().concat(le)),bi(t["after-options"],le)}function Yo(C,le){const ie=le===!0?{...rn.value,...X.splitAttrs.attributes.value}:void 0,De={ref:le===!0?N:void 0,key:"i_t",class:Ue.value,style:e.inputStyle,value:f.value!==void 0?f.value:"",type:"search",...ie,id:le===!0?X.targetUid.value:void 0,maxlength:e.maxlength,autocomplete:e.autocomplete,"data-autofocus":C===!0||e.autofocus===!0||void 0,disabled:e.disable===!0,readonly:e.readonly===!0,...gt.value};return C!==!0&&b===!0&&(Array.isArray(De.class)===!0?De.class=[...De.class,"no-pointer-events"]:De.class+=" no-pointer-events"),E("input",De)}function ll(C){T!==null&&(clearTimeout(T),T=null),!(C&&C.target&&C.target.qComposing===!0)&&(Ti(C.target.value||""),x=!0,L=f.value,X.focused.value!==!0&&(b!==!0||g.value===!0)&&X.focus(),e.onFilter!==void 0&&(T=setTimeout(()=>{T=null,Ir(f.value)},e.inputDebounce)))}function Ti(C){f.value!==C&&(f.value=C,r("inputValue",C))}function Er(C,le,ie){x=ie!==!0,e.useInput===!0&&(Ti(C),(le===!0||ie!==!0)&&(L=C),le!==!0&&Ir(C))}function Ir(C,le,ie){if(e.onFilter===void 0||le!==!0&&X.focused.value!==!0)return;X.innerLoading.value===!0?r("filterAbort"):(X.innerLoading.value=!0,v.value=!0),C!==""&&e.multiple!==!0&&Z.value.length!==0&&x!==!0&&C===G.value(Z.value[0])&&(C="");const De=setTimeout(()=>{s.value===!0&&(s.value=!1)},10);$!==null&&clearTimeout($),$=De,r("filter",C,(st,tt)=>{(le===!0||X.focused.value===!0)&&$===De&&(clearTimeout($),typeof st=="function"&&st(),v.value=!1,kn(()=>{X.innerLoading.value=!1,X.editable.value===!0&&(le===!0?s.value===!0&&cr():s.value===!0?Mi(!0):s.value=!0),typeof tt=="function"&&kn(()=>{tt(a)}),typeof ie=="function"&&kn(()=>{ie(a)})}))},()=>{X.focused.value===!0&&$===De&&(clearTimeout($),X.innerLoading.value=!1,v.value=!1),s.value===!0&&(s.value=!1)})}function Ho(){return E(rg,{ref:J,class:we.value,style:e.popupContentStyle,modelValue:s.value,fit:e.menuShrink!==!0,cover:e.optionsCover===!0&&Me.value!==!0&&e.useInput!==!0,anchor:e.menuAnchor,self:e.menuSelf,offset:e.menuOffset,dark:fe.value,noParentEvent:!0,noRefocus:!0,noFocus:!0,square:Fn.value,transitionShow:e.transitionShow,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,separateClosePopup:!0,...qt.value,onScrollPassive:K,onBeforeShow:sl,onBeforeHide:Go,onShow:sa},al)}function Go(C){ul(C),$r()}function sa(){rt()}function Ko(C){mi(C),N.value!==null&&N.value.focus(),g.value=!0,window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,0)}function ua(C){mi(C),kn(()=>{g.value=!1})}function Qo(){const C=[E(OS,{class:`col-auto ${X.fieldClass.value}`,...he.value,for:X.targetUid.value,dark:fe.value,square:!0,loading:v.value,itemAligned:!1,filled:!0,stackLabel:f.value.length!==0,...X.splitAttrs.listeners.value,onFocus:Ko,onBlur:ua},{...t,rawControl:()=>X.getControl(!0),before:void 0,after:void 0})];return s.value===!0&&C.push(E("div",{ref:H,class:we.value+" scroll",style:e.popupContentStyle,...qt.value,onClick:Ia,onScrollPassive:K},al())),E(Ra,{ref:z,modelValue:u.value,position:e.useInput===!0?"top":void 0,transitionShow:F,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,onBeforeShow:sl,onBeforeHide:jo,onHide:Zo,onShow:Jo},()=>E("div",{class:"q-select__dialog"+(fe.value===!0?" q-select__dialog--dark q-dark":"")+(g.value===!0?" q-select__dialog--focused":"")},C))}function jo(C){ul(C),z.value!==null&&z.value.__updateRefocusTarget(X.rootRef.value.querySelector(".q-field__native > [tabindex]:last-child")),X.focused.value=!1}function Zo(C){cr(),X.focused.value===!1&&r("blur",C),Or()}function Jo(){const C=document.activeElement;(C===null||C.id!==X.targetUid.value)&&N.value!==null&&N.value!==C&&N.value.focus(),rt()}function $r(){u.value!==!0&&(d.value=-1,s.value===!0&&(s.value=!1),X.focused.value===!1&&($!==null&&(clearTimeout($),$=null),X.innerLoading.value===!0&&(r("filterAbort"),X.innerLoading.value=!1,v.value=!1)))}function Rr(C){X.editable.value===!0&&(b===!0?(X.onControlFocusin(C),u.value=!0,kn(()=>{X.focus()})):X.focus(),e.onFilter!==void 0?Ir(f.value):(Me.value!==!0||t["no-option"]!==void 0)&&(s.value=!0))}function cr(){u.value=!1,$r()}function Or(){e.useInput===!0&&Er(e.multiple!==!0&&e.fillInput===!0&&Z.value.length!==0&&G.value(Z.value[0])||"",!0,!0)}function Mi(C){let le=-1;if(C===!0){if(Z.value.length!==0){const ie=St.value(Z.value[0]);le=e.options.findIndex(De=>Yi(St.value(De),ie))}Be(le)}dn(le)}function Xo(C,le){s.value===!0&&X.innerLoading.value===!1&&(Be(-1,!0),kn(()=>{s.value===!0&&X.innerLoading.value===!1&&(C>le?Be():Mi(!0))}))}function ol(){u.value===!1&&J.value!==null&&J.value.updatePosition()}function sl(C){C!==void 0&&mi(C),r("popupShow",C),X.hasPopupOpen=!0,X.onControlFocusin(C)}function ul(C){C!==void 0&&mi(C),r("popupHide",C),X.hasPopupOpen=!1,X.onControlFocusout(C)}function cl(){b=l.platform.is.mobile!==!0&&e.behavior!=="dialog"?!1:e.behavior!=="menu"&&(e.useInput===!0?t["no-option"]!==void 0||e.onFilter!==void 0||Me.value===!1:!0),F=l.platform.is.ios===!0&&b===!0&&e.useInput===!0?"fade":e.transitionShow}return Hb(cl),Gb(ol),cl(),Gt(()=>{T!==null&&clearTimeout(T)}),Object.assign(a,{showPopup:Rr,hidePopup:cr,removeAtIndex:Ze,add:mt,toggleOption:Pt,getOptionIndex:()=>d.value,setOptionIndex:dn,moveOptionSelection:Jn,filter:Ir,updateMenuPosition:ol,updateInputValue:Er,isOptionSelected:jt,getEmittingOptionValue:it,isOptionDisabled:(...C)=>de.value.apply(null,C)===!0,getOptionValue:(...C)=>St.value.apply(null,C),getOptionLabel:(...C)=>G.value.apply(null,C)}),Object.assign(X,{innerValue:Z,fieldClass:I(()=>`q-select q-field--auto-height q-select--with${e.useInput!==!0?"out":""}-input q-select--with${e.useChips!==!0?"out":""}-chips q-select--${e.multiple===!0?"multiple":"single"}`),inputRef:A,targetRef:N,hasValue:Ke,showPopup:Rr,floatingLabel:I(()=>e.hideSelected!==!0&&Ke.value===!0||typeof f.value=="number"||f.value.length!==0||th(e.displayValue)),getControlChild:()=>{if(X.editable.value!==!1&&(u.value===!0||Me.value!==!0||t["no-option"]!==void 0))return b===!0?Qo():Ho();X.hasPopupOpen===!0&&(X.hasPopupOpen=!1)},controlEvents:{onFocusin(C){X.onControlFocusin(C)},onFocusout(C){X.onControlFocusout(C,()=>{Or(),$r()})},onClick(C){if(Ia(C),b!==!0&&s.value===!0){$r(),N.value!==null&&N.value.focus();return}Rr(C)}},getControl:C=>{const le=il(),ie=C===!0||u.value!==!0||b!==!0;if(e.useInput===!0)le.push(Yo(C,ie));else if(X.editable.value===!0){const st=ie===!0?rn.value:void 0;le.push(E("input",{ref:ie===!0?N:void 0,key:"d_t",class:"q-select__focus-target",id:ie===!0?X.targetUid.value:void 0,value:ee.value,readonly:!0,"data-autofocus":C===!0||e.autofocus===!0||void 0,...st,onKeydown:tl,onKeyup:ki,onKeypress:el})),ie===!0&&typeof e.autocomplete=="string"&&e.autocomplete.length!==0&&le.push(E("input",{class:"q-select__autocomplete-input",autocomplete:e.autocomplete,tabindex:-1,onKeyup:Ci}))}if(ye.value!==void 0&&e.disable!==!0&&qe.value.length!==0){const st=qe.value.map(tt=>E("option",{value:tt,selected:!0}));le.push(E("select",{class:"hidden",name:ye.value,multiple:e.multiple},st))}const De=e.useInput===!0||ie!==!0?void 0:X.splitAttrs.attributes.value;return E("div",{class:"q-field__native row items-center",...De,...X.splitAttrs.listeners.value},le)},getInnerAppend:()=>e.loading!==!0&&v.value!==!0&&e.hideDropdownIcon!==!0?[E(Ht,{class:"q-select__dropdown-icon"+(s.value===!0?" rotate-180":""),name:Qt.value})]:null}),Hh(X)}});function BS(e){const t=[.06,6,50];return typeof e=="string"&&e.length&&e.split(":").forEach((r,a)=>{const l=parseFloat(r);l&&(t[a]=l)}),t}var FS=Vh({name:"touch-swipe",beforeMount(e,{value:t,arg:r,modifiers:a}){if(a.mouse!==!0&&Wi.has.touch!==!0)return;const l=a.mouseCapture===!0?"Capture":"",s={handler:t,sensitivity:BS(r),direction:ah(a),noop:Ih,mouseStart(u){lh(u,s)&&Qb(u)&&(Gr(s,"temp",[[document,"mousemove","move",`notPassive${l}`],[document,"mouseup","end","notPassiveCapture"]]),s.start(u,!0))},touchStart(u){if(lh(u,s)){const d=u.target;Gr(s,"temp",[[d,"touchmove","move","notPassiveCapture"],[d,"touchcancel","end","notPassiveCapture"],[d,"touchend","end","notPassiveCapture"]]),s.start(u)}},start(u,d){Wi.is.firefox===!0&&cu(e,!0);const f=qu(u);s.event={x:f.left,y:f.top,time:Date.now(),mouse:d===!0,dir:!1}},move(u){if(s.event===void 0)return;if(s.event.dir!==!1){Ft(u);return}const d=Date.now()-s.event.time;if(d===0)return;const f=qu(u),g=f.left-s.event.x,v=Math.abs(g),T=f.top-s.event.y,M=Math.abs(T);if(s.event.mouse!==!0){if(vs.sensitivity[0]&&(s.event.dir=T<0?"up":"down"),s.direction.horizontal===!0&&v>M&&M<100&&b>s.sensitivity[0]&&(s.event.dir=g<0?"left":"right"),s.direction.up===!0&&vs.sensitivity[0]&&(s.event.dir="up"),s.direction.down===!0&&v0&&v<100&&x>s.sensitivity[0]&&(s.event.dir="down"),s.direction.left===!0&&v>M&&g<0&&M<100&&b>s.sensitivity[0]&&(s.event.dir="left"),s.direction.right===!0&&v>M&&g>0&&M<100&&b>s.sensitivity[0]&&(s.event.dir="right"),s.event.dir!==!1?(Ft(u),s.event.mouse===!0&&(document.body.classList.add("no-pointer-events--children"),document.body.classList.add("non-selectable"),ho(),s.styleCleanup=$=>{s.styleCleanup=void 0,document.body.classList.remove("non-selectable");const L=()=>{document.body.classList.remove("no-pointer-events--children")};$===!0?setTimeout(L,50):L()}),s.handler({evt:u,touch:s.event.mouse!==!0,mouse:s.event.mouse,direction:s.event.dir,duration:d,distance:{x:v,y:M}})):s.end(u)},end(u){s.event!==void 0&&(Ki(s,"temp"),Wi.is.firefox===!0&&cu(e,!1),s.styleCleanup!==void 0&&s.styleCleanup(!0),u!==void 0&&s.event.dir!==!1&&Ft(u),s.event=void 0)}};if(e.__qtouchswipe=s,a.mouse===!0){const u=a.mouseCapture===!0||a.mousecapture===!0?"Capture":"";Gr(s,"main",[[e,"mousedown","mouseStart",`passive${u}`]])}Wi.has.touch===!0&&Gr(s,"main",[[e,"touchstart","touchStart",`passive${a.capture===!0?"Capture":""}`],[e,"touchmove","noop","notPassiveCapture"]])},updated(e,t){const r=e.__qtouchswipe;r!==void 0&&(t.oldValue!==t.value&&(typeof t.value!="function"&&r.end(),r.handler=t.value),r.direction=ah(t.modifiers))},beforeUnmount(e){const t=e.__qtouchswipe;t!==void 0&&(Ki(t,"main"),Ki(t,"temp"),Wi.is.firefox===!0&&cu(e,!1),t.styleCleanup!==void 0&&t.styleCleanup(),delete e.__qtouchswipe)}});function VS(){const e=new Map;return{getCache:function(t,r){return e[t]===void 0?e[t]=r:e[t]},getCacheWithFn:function(t,r){return e[t]===void 0?e[t]=r():e[t]}}}const bg={name:{required:!0},disable:Boolean},yh={setup(e,{slots:t}){return()=>E("div",{class:"q-panel scroll",role:"tabpanel"},Mt(t.default))}},wg={modelValue:{required:!0},animated:Boolean,infinite:Boolean,swipeable:Boolean,vertical:Boolean,transitionPrev:String,transitionNext:String,transitionDuration:{type:[String,Number],default:300},keepAlive:Boolean,keepAliveInclude:[String,Array,RegExp],keepAliveExclude:[String,Array,RegExp],keepAliveMax:Number},Sg=["update:modelValue","beforeTransition","transition"];function kg(){const{props:e,emit:t,proxy:r}=Dt(),{getCacheWithFn:a}=VS();let l,s;const u=se(null),d=se(null);function f(te){const Pe=e.vertical===!0?"up":"left";z((r.$q.lang.rtl===!0?-1:1)*(te.direction===Pe?1:-1))}const g=I(()=>[[FS,f,void 0,{horizontal:e.vertical!==!0,vertical:e.vertical,mouse:!0}]]),v=I(()=>e.transitionPrev||`slide-${e.vertical===!0?"down":"right"}`),T=I(()=>e.transitionNext||`slide-${e.vertical===!0?"up":"left"}`),M=I(()=>`--q-transition-duration: ${e.transitionDuration}ms`),b=I(()=>typeof e.modelValue=="string"||typeof e.modelValue=="number"?e.modelValue:String(e.modelValue)),x=I(()=>({include:e.keepAliveInclude,exclude:e.keepAliveExclude,max:e.keepAliveMax})),$=I(()=>e.keepAliveInclude!==void 0||e.keepAliveExclude!==void 0);ze(()=>e.modelValue,(te,Pe)=>{const Be=D(te)===!0?A(te):-1;s!==!0&&J(Be===-1?0:Be{t("transition",te,Pe)}))});function L(){z(1)}function F(){z(-1)}function W(te){t("update:modelValue",te)}function D(te){return te!=null&&te!==""}function A(te){return l.findIndex(Pe=>Pe.props.name===te&&Pe.props.disable!==""&&Pe.props.disable!==!0)}function N(){return l.filter(te=>te.props.disable!==""&&te.props.disable!==!0)}function J(te){const Pe=te!==0&&e.animated===!0&&u.value!==-1?"q-transition--"+(te===-1?v.value:T.value):null;d.value!==Pe&&(d.value=Pe)}function z(te,Pe=u.value){let Be=Pe+te;for(;Be>-1&&Be{s=!1});return}Be+=te}e.infinite===!0&&l.length!==0&&Pe!==-1&&Pe!==l.length&&z(te,te===-1?l.length:-1)}function H(){const te=A(e.modelValue);return u.value!==te&&(u.value=te),!0}function ye(){const te=D(e.modelValue)===!0&&H()&&l[u.value];return e.keepAlive===!0?[E(jb,x.value,[E($.value===!0?a(b.value,()=>({...yh,name:b.value})):yh,{key:b.value,style:M.value},()=>te)])]:[E("div",{class:"q-panel scroll",style:M.value,key:b.value,role:"tabpanel"},[te])]}function _e(){if(l.length!==0)return e.animated===!0?[E(Ha,{name:d.value},ye)]:ye()}function Ae(te){return l=Xu(Mt(te.default,[])).filter(Pe=>Pe.props!==null&&Pe.props.slot===void 0&&D(Pe.props.name)===!0),l.length}function lt(){return l}return Object.assign(r,{next:L,previous:F,goTo:W}),{panelIndex:u,panelDirectives:g,updatePanelsList:Ae,updatePanelIndex:H,getPanelContent:_e,getEnabledPanels:N,getPanels:lt,isValidPanelName:D,keepAliveProps:x,needsUniqueKeepAliveWrapper:$,goToPanelByOffset:z,goToPanel:W,nextPanel:L,previousPanel:F}}var wu=Je({name:"QTabPanel",props:bg,setup(e,{slots:t}){return()=>E("div",{class:"q-tab-panel",role:"tabpanel"},Mt(t.default))}}),US=Je({name:"QTabPanels",props:{...wg,...ar},emits:Sg,setup(e,{slots:t}){const r=Dt(),a=lr(e,r.proxy.$q),{updatePanelsList:l,getPanelContent:s,panelDirectives:u}=kg(),d=I(()=>"q-tab-panels q-panel-parent"+(a.value===!0?" q-tab-panels--dark q-dark":""));return()=>(l(t),ju("div",{class:d.value},s(),"pan",e.swipeable,()=>u.value))}});const _h=e=>{e=1831565813+(e|=0)|0;let t=Math.imul(e^e>>>15,1|e);return t=t+Math.imul(t^t>>>7,61|t)^t,((t^t>>>14)>>>0)/4294967296};class zS{constructor(t){this.dictionaries=void 0,this.length=void 0,this.separator=void 0,this.style=void 0,this.seed=void 0;const{length:r,separator:a,dictionaries:l,style:s,seed:u}=t;this.dictionaries=l,this.separator=a,this.length=r,this.style=s,this.seed=u}generate(){if(!this.dictionaries)throw new Error('Cannot find any dictionary. Please provide at least one, or leave the "dictionary" field empty in the config object');if(this.length<=0)throw new Error("Invalid length provided");if(this.length>this.dictionaries.length)throw new Error(`The length cannot be bigger than the number of dictionaries. +Length provided: ${this.length}. Number of dictionaries provided: ${this.dictionaries.length}`);let t=this.seed;return this.dictionaries.slice(0,this.length).reduce((r,a)=>{let l;t?(l=(u=>{if(typeof u=="string"){const d=u.split("").map(g=>g.charCodeAt(0)).reduce((g,v)=>g+v,1),f=Math.floor(Number(d));return _h(f)}return _h(u)})(t),t=4294967296*l):l=Math.random();let s=a[Math.floor(l*a.length)]||"";if(this.style==="lowerCase")s=s.toLowerCase();else if(this.style==="capital"){const[u,...d]=s.split("");s=u.toUpperCase()+d.join("")}else this.style==="upperCase"&&(s=s.toUpperCase());return r?`${r}${this.separator}${s}`:`${s}`},"")}}const bh={separator:"_",dictionaries:[]},Cg=e=>{const t=[...e&&e.dictionaries||bh.dictionaries],r={...bh,...e,length:e&&e.length||t.length,dictionaries:t};if(!e||!e.dictionaries||!e.dictionaries.length)throw new Error('A "dictionaries" array must be provided. This is a breaking change introduced starting from Unique Name Generator v4. Read more about the breaking change here: https://github.com/andreasonny83/unique-names-generator#migration-guide');return new zS(r).generate()};var Tg=["able","above","absent","absolute","abstract","abundant","academic","acceptable","accepted","accessible","accurate","accused","active","actual","acute","added","additional","adequate","adjacent","administrative","adorable","advanced","adverse","advisory","aesthetic","afraid","aggregate","aggressive","agreeable","agreed","agricultural","alert","alive","alleged","allied","alone","alright","alternative","amateur","amazing","ambitious","amused","ancient","angry","annoyed","annual","anonymous","anxious","appalling","apparent","applicable","appropriate","arbitrary","architectural","armed","arrogant","artificial","artistic","ashamed","asleep","assistant","associated","atomic","attractive","automatic","autonomous","available","average","awake","aware","awful","awkward","back","bad","balanced","bare","basic","beautiful","beneficial","better","bewildered","big","binding","biological","bitter","bizarre","blank","blind","blonde","bloody","blushing","boiling","bold","bored","boring","bottom","brainy","brave","breakable","breezy","brief","bright","brilliant","broad","broken","bumpy","burning","busy","calm","capable","capitalist","careful","casual","causal","cautious","central","certain","changing","characteristic","charming","cheap","cheerful","chemical","chief","chilly","chosen","christian","chronic","chubby","circular","civic","civil","civilian","classic","classical","clean","clear","clever","clinical","close","closed","cloudy","clumsy","coastal","cognitive","coherent","cold","collective","colonial","colorful","colossal","coloured","colourful","combative","combined","comfortable","coming","commercial","common","communist","compact","comparable","comparative","compatible","competent","competitive","complete","complex","complicated","comprehensive","compulsory","conceptual","concerned","concrete","condemned","confident","confidential","confused","conscious","conservation","conservative","considerable","consistent","constant","constitutional","contemporary","content","continental","continued","continuing","continuous","controlled","controversial","convenient","conventional","convinced","convincing","cooing","cool","cooperative","corporate","correct","corresponding","costly","courageous","crazy","creative","creepy","criminal","critical","crooked","crowded","crucial","crude","cruel","cuddly","cultural","curious","curly","current","curved","cute","daily","damaged","damp","dangerous","dark","dead","deaf","deafening","dear","decent","decisive","deep","defeated","defensive","defiant","definite","deliberate","delicate","delicious","delighted","delightful","democratic","dependent","depressed","desirable","desperate","detailed","determined","developed","developing","devoted","different","difficult","digital","diplomatic","direct","dirty","disabled","disappointed","disastrous","disciplinary","disgusted","distant","distinct","distinctive","distinguished","disturbed","disturbing","diverse","divine","dizzy","domestic","dominant","double","doubtful","drab","dramatic","dreadful","driving","drunk","dry","dual","due","dull","dusty","dutch","dying","dynamic","eager","early","eastern","easy","economic","educational","eerie","effective","efficient","elaborate","elated","elderly","eldest","electoral","electric","electrical","electronic","elegant","eligible","embarrassed","embarrassing","emotional","empirical","empty","enchanting","encouraging","endless","energetic","enormous","enthusiastic","entire","entitled","envious","environmental","equal","equivalent","essential","established","estimated","ethical","ethnic","eventual","everyday","evident","evil","evolutionary","exact","excellent","exceptional","excess","excessive","excited","exciting","exclusive","existing","exotic","expected","expensive","experienced","experimental","explicit","extended","extensive","external","extra","extraordinary","extreme","exuberant","faint","fair","faithful","familiar","famous","fancy","fantastic","far","fascinating","fashionable","fast","fat","fatal","favourable","favourite","federal","fellow","female","feminist","few","fierce","filthy","final","financial","fine","firm","fiscal","fit","fixed","flaky","flat","flexible","fluffy","fluttering","flying","following","fond","foolish","foreign","formal","formidable","forthcoming","fortunate","forward","fragile","frail","frantic","free","frequent","fresh","friendly","frightened","front","frozen","full","fun","functional","fundamental","funny","furious","future","fuzzy","gastric","gay","general","generous","genetic","gentle","genuine","geographical","giant","gigantic","given","glad","glamorous","gleaming","global","glorious","golden","good","gorgeous","gothic","governing","graceful","gradual","grand","grateful","greasy","great","grieving","grim","gross","grotesque","growing","grubby","grumpy","guilty","handicapped","handsome","happy","hard","harsh","head","healthy","heavy","helpful","helpless","hidden","high","hilarious","hissing","historic","historical","hollow","holy","homeless","homely","hon","honest","horizontal","horrible","hostile","hot","huge","human","hungry","hurt","hushed","husky","icy","ideal","identical","ideological","ill","illegal","imaginative","immediate","immense","imperial","implicit","important","impossible","impressed","impressive","improved","inadequate","inappropriate","inc","inclined","increased","increasing","incredible","independent","indirect","individual","industrial","inevitable","influential","informal","inherent","initial","injured","inland","inner","innocent","innovative","inquisitive","instant","institutional","insufficient","intact","integral","integrated","intellectual","intelligent","intense","intensive","interested","interesting","interim","interior","intermediate","internal","international","intimate","invisible","involved","irrelevant","isolated","itchy","jealous","jittery","joint","jolly","joyous","judicial","juicy","junior","just","keen","key","kind","known","labour","large","late","latin","lazy","leading","left","legal","legislative","legitimate","lengthy","lesser","level","lexical","liable","liberal","light","like","likely","limited","linear","linguistic","liquid","literary","little","live","lively","living","local","logical","lonely","long","loose","lost","loud","lovely","low","loyal","ltd","lucky","mad","magic","magnetic","magnificent","main","major","male","mammoth","managerial","managing","manual","many","marginal","marine","marked","married","marvellous","marxist","mass","massive","mathematical","mature","maximum","mean","meaningful","mechanical","medical","medieval","melodic","melted","mental","mere","metropolitan","mid","middle","mighty","mild","military","miniature","minimal","minimum","ministerial","minor","miserable","misleading","missing","misty","mixed","moaning","mobile","moderate","modern","modest","molecular","monetary","monthly","moral","motionless","muddy","multiple","mushy","musical","mute","mutual","mysterious","naked","narrow","nasty","national","native","natural","naughty","naval","near","nearby","neat","necessary","negative","neighbouring","nervous","net","neutral","new","nice","noble","noisy","normal","northern","nosy","notable","novel","nuclear","numerous","nursing","nutritious","nutty","obedient","objective","obliged","obnoxious","obvious","occasional","occupational","odd","official","ok","okay","old","olympic","only","open","operational","opposite","optimistic","oral","ordinary","organic","organisational","original","orthodox","other","outdoor","outer","outrageous","outside","outstanding","overall","overseas","overwhelming","painful","pale","panicky","parallel","parental","parliamentary","partial","particular","passing","passive","past","patient","payable","peaceful","peculiar","perfect","permanent","persistent","personal","petite","philosophical","physical","plain","planned","plastic","pleasant","pleased","poised","polite","political","poor","popular","positive","possible","potential","powerful","practical","precious","precise","preferred","pregnant","preliminary","premier","prepared","present","presidential","pretty","previous","prickly","primary","prime","primitive","principal","printed","prior","private","probable","productive","professional","profitable","profound","progressive","prominent","promising","proper","proposed","prospective","protective","protestant","proud","provincial","psychiatric","psychological","public","puny","pure","purring","puzzled","quaint","qualified","quarrelsome","querulous","quick","quickest","quiet","quintessential","quixotic","racial","radical","rainy","random","rapid","rare","raspy","rational","ratty","raw","ready","real","realistic","rear","reasonable","recent","reduced","redundant","regional","registered","regular","regulatory","related","relative","relaxed","relevant","reliable","relieved","religious","reluctant","remaining","remarkable","remote","renewed","representative","repulsive","required","resident","residential","resonant","respectable","respective","responsible","resulting","retail","retired","revolutionary","rich","ridiculous","right","rigid","ripe","rising","rival","roasted","robust","rolling","romantic","rotten","rough","round","royal","rubber","rude","ruling","running","rural","sacred","sad","safe","salty","satisfactory","satisfied","scared","scary","scattered","scientific","scornful","scrawny","screeching","secondary","secret","secure","select","selected","selective","selfish","semantic","senior","sensible","sensitive","separate","serious","severe","sexual","shaggy","shaky","shallow","shared","sharp","sheer","shiny","shivering","shocked","short","shrill","shy","sick","significant","silent","silky","silly","similar","simple","single","skilled","skinny","sleepy","slight","slim","slimy","slippery","slow","small","smart","smiling","smoggy","smooth","social","socialist","soft","solar","sole","solid","sophisticated","sore","sorry","sound","sour","southern","soviet","spare","sparkling","spatial","special","specific","specified","spectacular","spicy","spiritual","splendid","spontaneous","sporting","spotless","spotty","square","squealing","stable","stale","standard","static","statistical","statutory","steady","steep","sticky","stiff","still","stingy","stormy","straight","straightforward","strange","strategic","strict","striking","striped","strong","structural","stuck","stupid","subjective","subsequent","substantial","subtle","successful","successive","sudden","sufficient","suitable","sunny","super","superb","superior","supporting","supposed","supreme","sure","surprised","surprising","surrounding","surviving","suspicious","sweet","swift","symbolic","sympathetic","systematic","tall","tame","tart","tasteless","tasty","technical","technological","teenage","temporary","tender","tense","terrible","territorial","testy","then","theoretical","thick","thin","thirsty","thorough","thoughtful","thoughtless","thundering","tight","tiny","tired","top","tory","total","tough","toxic","traditional","tragic","tremendous","tricky","tropical","troubled","typical","ugliest","ugly","ultimate","unable","unacceptable","unaware","uncertain","unchanged","uncomfortable","unconscious","underground","underlying","unemployed","uneven","unexpected","unfair","unfortunate","unhappy","uniform","uninterested","unique","united","universal","unknown","unlikely","unnecessary","unpleasant","unsightly","unusual","unwilling","upper","upset","uptight","urban","urgent","used","useful","useless","usual","vague","valid","valuable","variable","varied","various","varying","vast","verbal","vertical","very","vicarious","vicious","victorious","violent","visible","visiting","visual","vital","vitreous","vivacious","vivid","vocal","vocational","voiceless","voluminous","voluntary","vulnerable","wandering","warm","wasteful","watery","weak","wealthy","weary","wee","weekly","weird","welcome","well","western","wet","whispering","whole","wicked","wide","widespread","wild","wilful","willing","willowy","wily","wise","wispy","wittering","witty","wonderful","wooden","working","worldwide","worried","worrying","worthwhile","worthy","written","wrong","xenacious","xenial","xenogeneic","xenophobic","xeric","xerothermic","yabbering","yammering","yappiest","yappy","yawning","yearling","yearning","yeasty","yelling","yelping","yielding","yodelling","young","youngest","youthful","ytterbic","yucky","yummy","zany","zealous","zeroth","zestful","zesty","zippy","zonal","zoophagous","zygomorphic","zygotic"],Mg=["aardvark","aardwolf","albatross","alligator","alpaca","amphibian","anaconda","angelfish","anglerfish","ant","anteater","antelope","antlion","ape","aphid","armadillo","asp","baboon","badger","bandicoot","barnacle","barracuda","basilisk","bass","bat","bear","beaver","bedbug","bee","beetle","bird","bison","blackbird","boa","boar","bobcat","bobolink","bonobo","booby","bovid","bug","butterfly","buzzard","camel","canid","canidae","capybara","cardinal","caribou","carp","cat","caterpillar","catfish","catshark","cattle","centipede","cephalopod","chameleon","cheetah","chickadee","chicken","chimpanzee","chinchilla","chipmunk","cicada","clam","clownfish","cobra","cockroach","cod","condor","constrictor","coral","cougar","cow","coyote","crab","crane","crawdad","crayfish","cricket","crocodile","crow","cuckoo","damselfly","deer","dingo","dinosaur","dog","dolphin","donkey","dormouse","dove","dragon","dragonfly","duck","eagle","earthworm","earwig","echidna","eel","egret","elephant","elk","emu","ermine","falcon","felidae","ferret","finch","firefly","fish","flamingo","flea","fly","flyingfish","fowl","fox","frog","galliform","gamefowl","gayal","gazelle","gecko","gerbil","gibbon","giraffe","goat","goldfish","goose","gopher","gorilla","grasshopper","grouse","guan","guanaco","guineafowl","gull","guppy","haddock","halibut","hamster","hare","harrier","hawk","hedgehog","heron","herring","hippopotamus","hookworm","hornet","horse","hoverfly","hummingbird","hyena","iguana","impala","jackal","jaguar","jay","jellyfish","junglefowl","kangaroo","kingfisher","kite","kiwi","koala","koi","krill","ladybug","lamprey","landfowl","lark","leech","lemming","lemur","leopard","leopon","limpet","lion","lizard","llama","lobster","locust","loon","louse","lungfish","lynx","macaw","mackerel","magpie","mammal","manatee","mandrill","marlin","marmoset","marmot","marsupial","marten","mastodon","meadowlark","meerkat","mink","minnow","mite","mockingbird","mole","mollusk","mongoose","monkey","moose","mosquito","moth","mouse","mule","muskox","narwhal","newt","nightingale","ocelot","octopus","opossum","orangutan","orca","ostrich","otter","owl","ox","panda","panther","parakeet","parrot","parrotfish","partridge","peacock","peafowl","pelican","penguin","perch","pheasant","pig","pigeon","pike","pinniped","piranha","planarian","platypus","pony","porcupine","porpoise","possum","prawn","primate","ptarmigan","puffin","puma","python","quail","quelea","quokka","rabbit","raccoon","rat","rattlesnake","raven","reindeer","reptile","rhinoceros","roadrunner","rodent","rook","rooster","roundworm","sailfish","salamander","salmon","sawfish","scallop","scorpion","seahorse","shark","sheep","shrew","shrimp","silkworm","silverfish","skink","skunk","sloth","slug","smelt","snail","snake","snipe","sole","sparrow","spider","spoonbill","squid","squirrel","starfish","stingray","stoat","stork","sturgeon","swallow","swan","swift","swordfish","swordtail","tahr","takin","tapir","tarantula","tarsier","termite","tern","thrush","tick","tiger","tiglon","toad","tortoise","toucan","trout","tuna","turkey","turtle","tyrannosaurus","unicorn","urial","vicuna","viper","vole","vulture","wallaby","walrus","warbler","wasp","weasel","whale","whippet","whitefish","wildcat","wildebeest","wildfowl","wolf","wolverine","wombat","woodpecker","worm","wren","xerinae","yak","zebra"],Dg=["amaranth","amber","amethyst","apricot","aqua","aquamarine","azure","beige","black","blue","blush","bronze","brown","chocolate","coffee","copper","coral","crimson","cyan","emerald","fuchsia","gold","gray","green","harlequin","indigo","ivory","jade","lavender","lime","magenta","maroon","moccasin","olive","orange","peach","pink","plum","purple","red","rose","salmon","sapphire","scarlet","silver","tan","teal","tomato","turquoise","violet","white","yellow"];function Ea(e,t,r){return parseInt(e.substr(t,r),16)}function qg(e){return e|=0,e<0?"00":e<16?"0"+e.toString(16):e<256?e.toString(16):"ff"}function Su(e,t,r){return r=r<0?r+6:r>6?r-6:r,qg(255*(r<1?e+(t-e)*r:r<3?t:r<4?e+(t-e)*(4-r):e))}function WS(e){if(/^#[0-9a-f]{3,8}$/i.test(e)){let t;const r=e.length;if(r<6){const a=e[1],l=e[2],s=e[3],u=e[4]||"";t="#"+a+a+l+l+s+s+u+u}return(r==7||r>8)&&(t=e),t}}function YS(e,t,r){let a;if(t==0){const l=qg(r*255);a=l+l+l}else{const l=r<=.5?r*(t+1):r+t-r*t,s=r*2-l;a=Su(s,l,e*6+2)+Su(s,l,e*6)+Su(s,l,e*6-2)}return"#"+a}function Da(e,t,r){const a=[.55,.5,.5,.46,.6,.55,.55],l=a[e*6+.5|0];return r=r<.5?r*l*2:l+(r-.5)*(1-l)*2,YS(e,t,r)}const HS=typeof window!="undefined"?window:typeof self!="undefined"?self:typeof global!="undefined"?global:{},wh={V:"jdenticon_config",n:"config"};var GS={};function KS(e,t){const r=typeof e=="object"&&e||GS[wh.n]||HS[wh.V]||{},a=r.lightness||{},l=r.saturation||{},s="color"in l?l.color:l,u=l.grayscale,d=r.backColor,f=r.padding;function g(T,M){let b=a[T];return b&&b.length>1||(b=M),function(x){return x=b[0]+x*(b[1]-b[0]),x<0?0:x>1?1:x}}function v(T){const M=r.hues;let b;return M&&M.length>0&&(b=M[0|.999*T*M.length]),typeof b=="number"?(b/360%1+1)%1:T}return{W:v,o:typeof s=="number"?s:.5,D:typeof u=="number"?u:0,p:g("color",[.4,.8]),F:g("grayscale",[.3,.9]),G:WS(d),X:typeof e=="number"?e:typeof f=="number"?f:t}}class to{constructor(t,r){this.x=t,this.y=r}}class Pg{constructor(t,r,a,l){this.q=t,this.t=r,this.H=a,this.Y=l}I(t,r,a,l){const s=this.q+this.H,u=this.t+this.H,d=this.Y;return d===1?new to(s-r-(l||0),this.t+t):d===2?new to(s-t-(a||0),u-r-(l||0)):d===3?new to(this.q+r,u-t-(a||0)):new to(this.q+t,this.t+r)}}const QS=new Pg(0,0,0,0);class jS{constructor(t){this.J=t,this.u=QS}g(t,r){const a=r?-2:2,l=[];for(let s=r?t.length-2:0;s=0;s+=a)l.push(this.u.I(t[s],t[s+1]));this.J.g(l)}h(t,r,a,l){const s=this.u.I(t,r,a,a);this.J.h(s,a,l)}i(t,r,a,l,s){this.g([t,r,t+a,r,t+a,r+l,t,r+l],s)}j(t,r,a,l,s,u){const d=[t+a,r,t+a,r+l,t,r+l,t,r];d.splice((s||0)%4*2,2),this.g(d,u)}K(t,r,a,l,s){this.g([t+a/2,r,t+a,r+l/2,t+a/2,r+l,t,r+l/2],s)}}function ZS(e,t,r,a){e=e%14;let l,s,u,d,f,g;e?e==1?(u=0|r*.5,d=0|r*.8,t.j(r-u,0,u,d,2)):e==2?(u=0|r/3,t.i(u,u,r-u,r-u)):e==3?(f=r*.1,g=r<6?1:r<8?2:0|r*.25,f=f>1?0|f:f>.5?1:f,t.i(g,g,r-f-g,r-f-g)):e==4?(s=0|r*.15,u=0|r*.5,t.h(r-u-s,r-u-s,u)):e==5?(f=r*.1,g=f*4,g>3&&(g=0|g),t.i(0,0,r,r),t.g([g,g,r-f,g,g+(r-g-f)/2,r-f],!0)):e==6?t.g([0,0,r,0,r,r*.7,r*.4,r*.4,r*.7,r,0,r]):e==7?t.j(r/2,r/2,r/2,r/2,3):e==8?(t.i(0,0,r,r/2),t.i(0,r/2,r/2,r/2),t.j(r/2,r/2,r/2,r/2,1)):e==9?(f=r*.14,g=r<4?1:r<6?2:0|r*.35,f=r<8?f:0|f,t.i(0,0,r,r),t.i(g,g,r-g-f,r-g-f,!0)):e==10?(f=r*.12,g=f*3,t.i(0,0,r,r),t.h(g,g,r-f-g,!0)):e==11?t.j(r/2,r/2,r/2,r/2,3):e==12?(s=r*.25,t.i(0,0,r,r),t.K(s,s,r-s,r-s,!0)):!a&&(s=r*.4,u=r*1.2,t.h(s,s,u)):(l=r*.42,t.g([0,0,r,0,r,r-l*2,r-l,r,0,r]))}function Sh(e,t,r){e=e%4;let a;e?e==1?t.j(0,r/2,r,r/2,0):e==2?t.K(0,0,r,r):(a=r/6,t.h(a,a,r-2*a)):t.j(0,0,r,r,0)}function JS(e,t){return e=t.W(e),[Da(e,t.D,t.F(0)),Da(e,t.o,t.p(.5)),Da(e,t.D,t.F(1)),Da(e,t.o,t.p(1)),Da(e,t.o,t.p(0))]}function XS(e,t,r){const a=KS(r,.08);a.G&&e.m(a.G);let l=e.k;const s=.5+l*a.X|0;l-=s*2;const u=new jS(e),d=0|l/4,f=0|s+l/2-d*2,g=0|s+l/2-d*2;function v(L,F,W,D,A){const N=Ea(t,W,1);let J=D?Ea(t,D,1):0;e.L(M[b[L]]);for(let z=0;z=0){for(let F=0;F=0)return!0}}for(let L=0;L<3;L++)x=Ea(t,8+L,1)%M.length,($([0,4])||$([2,3]))&&(x=1),b.push(x);v(0,Sh,2,3,[[1,0],[2,0],[2,3],[1,3],[0,1],[3,1],[3,2],[0,2]]),v(1,Sh,4,5,[[0,0],[3,0],[3,3],[0,3]]),v(2,ZS,1,null,[[1,1],[2,1],[2,2],[1,2]]),e.finish()}function ek(e){var a=0,l=0,s=encodeURI(e)+"%80",u=[],d,f=[],g=1732584193,v=4023233417,T=~g,M=~v,b=3285377520,x=[g,v,T,M,b],$=0,L="";function F(W,D){return W<>>32-D}for(;a>2]=u[l>>2]|(s[a]=="%"?parseInt(s.substring(a+1,a+=3),16):s.charCodeAt(a++))<<(3-(l&3))*8;for(d=((l+7>>6)+1)*16,u[d-1]=l*8-8;$>3]>>>(7-(a&7))*4&15).toString(16);return L}function tk(e){return/^[0-9a-f]{11,}$/i.test(e)&&e}function nk(e){return ek(e==null?"":""+e)}function Ui(e){return(e*10+.5|0)/10}class rk{constructor(){this.v=""}g(t){let r="";for(let a=0;a'}m(t,r){r&&(this.C+='')}O(t,r){this.C+=''}toString(){return this.C+""}}function ok(e,t,r){const a=new lk(t);return XS(new ik(a),tk(e)||nk(e),r),a.toString()}typeof document!="undefined"&&document.querySelectorAll.bind(document);const sk=un({name:"UserProfile",props:["pubkey","profiles","description"],data:function(){return{}},methods:{merchantProfile(e){var t;return(t=this.profiles)==null?void 0:t.find(r=>r.pubkey===e)},pubkeyAlias(e){return Cg({dictionaries:[Tg,Mg,Dg],length:2,separator:" ",style:"capital",seed:e})},pubkeyAvatar(e){return ok(e,100)}},created:async function(){}}),uk=["src"],ck=["innerHTML"],dk={class:"text-caption text-grey ellipsis-2-lines"};function fk(e,t,r,a,l,s){return R(),ne($t,null,[y(xe,{avatar:""},{default:_(()=>[y(Zr,null,{default:_(()=>{var u;return[(u=e.merchantProfile(e.pubkey))!=null&&u.picture?(R(),ne("img",{key:0,src:e.merchantProfile(e.pubkey).picture},null,8,uk)):(R(),ne("div",{key:1,innerHTML:e.pubkeyAvatar(e.pubkey)},null,8,ck))]}),_:1})]),_:1}),y(xe,{class:"q-mt-sm"},{default:_(()=>[y(He,null,{default:_(()=>{var u,d;return[S("strong",null,me(((u=e.merchantProfile(e.pubkey))==null?void 0:u.name)||((d=e.merchantProfile(e.pubkey))==null?void 0:d.display_name)||e.pubkeyAlias(e.pubkey)),1)]}),_:1}),y(He,{class:"gt-sm"},{default:_(()=>[S("div",dk,[S("p",null,me(e.description||e.pubkey),1)])]),_:1}),y(Hr,null,{default:_(()=>[ke(me(e.pubkey),1)]),_:1})]),_:1})],64)}var Qa=Mn(sk,[["render",fk]]);const hk=un({name:"EssentialLink",props:["market","profiles","relays-data","read-notes"],components:{UserProfile:Qa},data:function(){return{tab:"marketplace",merchantPubkey:null,relayUrl:null,marketData:{pubkey:null,relays:[],opts:{identifier:null,name:null,about:null,merchants:[],ui:{picture:null,banner:null,theme:null,darkMode:!1}}},themeOptions:["classic","bitcoin","flamingo","cyber","freedom","mint","autumn","monochrome","salvador"]}},methods:{addMerchant:async function(){if(!isValidKey(this.merchantPubkey,"npub")){$q.notify({message:"Invalid Public Key!",type:"warning"});return}const e=isValidKeyHex(this.merchantPubkey)?this.merchantPubkey:NostrTools.nip19.decode(this.merchantPubkey).data;this.marketData.opts.merchants.push(e),this.updateMarketData(),this.merchantPubkey=null},removeMerchant:async function(e){console.log("### removeMerchant",e),this.marketData.opts.merchants=this.marketData.opts.merchants.filter(t=>t!==e),this.updateMarketData()},addRelay:async function(){const e=(this.relayUrl||"").trim();if(!e.startsWith("wss://")&&!e.startsWith("ws://")){this.relayUrl=null,$q.notify({timeout:5e3,type:"warning",message:"Invalid relay URL.",caption:"Should start with 'wss://'' or 'ws://'"});return}try{new URL(e),this.marketData.relays.push(e),this.updateMarketData()}catch(t){$q.notify({timeout:5e3,type:"warning",message:"Invalid relay URL.",caption:`Error: ${t}`})}this.relayUrl=null},removeRelay:async function(e){this.marketData.relays=this.marketData.relays.filter(t=>t!==e),this.updateMarketData()},updateMarketData:function(){this.$emit("market-update",this.cloneMarketData())},publishNaddr(){this.$emit("publish-naddr",this.cloneMarketData())},deleteMarket(){this.$emit("delete-market",this.cloneMarketData())},applyLookAndFeel(){this.$emit("apply-ui",this.cloneMarketData())},markNoteAsRead(e){this.$emit("note-read",e)},cloneMarketData(){return JSON.parse(JSON.stringify(this.marketData))},relayData(e){return(this.relaysData||[]).find(t=>t.relayUrl===e)||{connected:!1,error:null}}},created:async function(){var e;this.marketData={...this.marketData,...JSON.parse(JSON.stringify(this.market||{}))},(e=this.readNotes)!=null&&e.merchants||(this.tab="merchants")}}),gk={class:"q-pt-md"},mk={class:"q-gutter-y-md"},vk={class:"q-pa-md"},pk={class:"q-gutter-y-md"},yk=S("strong",null,"Note",-1),_k=S("div",{class:"text-caption"},[S("ul",null,[S("li",null,[S("span",{class:"text-subtitle1"}," Here one can customize the look and feel of the Market. ")]),S("li",null,[S("span",{class:"text-subtitle1"},[ke(" When the Market Profile is shared (via "),S("code",null,"naddr"),ke(" ) these customisations will be available to the customers. ")])])])],-1),bk=S("div",{class:"q-mb-md"},[S("strong",null,"Information")],-1),wk=S("div",{class:"q-mb-md q-mt-lg"},[S("strong",null,"UI Configurations")],-1),Sk=S("div",{class:"lt-md q-mt-lg"},null,-1),kk=S("strong",null,"Note",-1),Ck=S("div",{class:"text-caption"},[S("ul",null,[S("li",null,[S("span",{class:"text-subtitle1"}," Here all the mercants of the marketplace are listed. ")]),S("li",null,[S("span",{class:"text-subtitle1"}," You can easily add a new merchant by entering its public key in the input below. ")]),S("li",null,[S("span",{class:"text-subtitle1"}," When a merchant is added all its products and stalls will be available in the Market page. ")])])],-1),Tk={key:0,class:"text-caption text-grey ellipsis-2-lines"},Mk={class:"float-right"};function Dk(e,t,r,a,l,s){const u=Xr("user-profile");return R(),oe(Yt,null,{default:_(()=>[y(Ne,null,{default:_(()=>[S("div",gk,[S("div",mk,[y(RS,{modelValue:e.tab,"onUpdate:modelValue":t[3]||(t[3]=d=>e.tab=d),"active-color":"primary",align:"justify"},{default:_(()=>[y(bu,{name:"marketplace",label:"Look And Feel",onUpdate:t[0]||(t[0]=d=>e.tab=d.name)}),y(bu,{name:"merchants",label:"Merchants",onUpdate:t[1]||(t[1]=d=>e.tab=d.name)}),y(bu,{name:"relays",label:"Relays",onUpdate:t[2]||(t[2]=d=>e.tab=d.name)})]),_:1},8,["modelValue"])])])]),_:1}),y(ut),y(Ne,null,{default:_(()=>[S("div",vk,[S("div",pk,[y(US,{modelValue:e.tab,"onUpdate:modelValue":t[14]||(t[14]=d=>e.tab=d)},{default:_(()=>[y(wu,{name:"marketplace"},{default:_(()=>{var d;return[(d=e.readNotes)!=null&&d.marketUi?$e("",!0):(R(),oe(rr,{key:0,class:"q-mb-lg gt-sm",bordered:""},{default:_(()=>[y(Vt,null,{default:_(()=>[y(xe,{avatar:""},{default:_(()=>[y(Zr,null,{default:_(()=>[y(Ht,{color:"primary",name:"info",size:"xl"})]),_:1})]),_:1}),y(xe,{class:"q-mt-sm q-ml-lg"},{default:_(()=>[y(He,null,{default:_(()=>[yk]),_:1}),y(He,null,{default:_(()=>[_k]),_:1})]),_:1}),y(xe,{side:""},{default:_(()=>[y(ge,{onClick:t[4]||(t[4]=f=>e.markNoteAsRead("marketUi")),size:"lg",outline:"",color:"primary",label:"Got it!",icon:"check_small"})]),_:1})]),_:1})]),_:1})),bk,y(It,{onChange:e.updateMarketData,outlined:"",modelValue:e.marketData.opts.name,"onUpdate:modelValue":t[5]||(t[5]=f=>e.marketData.opts.name=f),type:"text",label:"Market Name",hint:"Short name for the market",class:"q-mb-md"},null,8,["onChange","modelValue"]),y(It,{onChange:e.updateMarketData,outlined:"",modelValue:e.marketData.opts.about,"onUpdate:modelValue":t[6]||(t[6]=f=>e.marketData.opts.about=f),type:"textarea",rows:"3",label:"Marketplace Description",hint:"It will be displayed on top of the banner image. Can be a longer text.",class:"q-mb-lg"},null,8,["onChange","modelValue"]),wk,y(It,{onChange:e.updateMarketData,outlined:"",modelValue:e.marketData.opts.ui.picture,"onUpdate:modelValue":t[7]||(t[7]=f=>e.marketData.opts.ui.picture=f),type:"text",label:"Logo",hint:"It will be displayed next to the search input. Can be png, jpg, ico, gif, svg.",class:"q-mb-md"},null,8,["onChange","modelValue"]),y(It,{onChange:e.updateMarketData,outlined:"",modelValue:e.marketData.opts.ui.banner,"onUpdate:modelValue":t[8]||(t[8]=f=>e.marketData.opts.ui.banner=f),type:"text",label:"Banner",hint:"It represents the visual identity of the market. Can be png, jpg, ico, gif, svg.",class:"q-mb-md"},null,8,["onChange","modelValue"]),y(Aa,{onInput:e.updateMarketData,"onUpdate:modelValue":[e.updateMarketData,t[9]||(t[9]=f=>e.marketData.opts.ui.theme=f)],filled:"",modelValue:e.marketData.opts.ui.theme,hint:"The colors of the market will vary based on the theme. It applies to all components (buttons, labels, inputs, etc)",options:e.themeOptions,label:"Marketplace Theme"},null,8,["onInput","onUpdate:modelValue","modelValue","options"]),Sk,y(io,{onInput:e.updateMarketData,onClick:e.updateMarketData,modelValue:e.marketData.opts.ui.darkMode,"onUpdate:modelValue":t[10]||(t[10]=f=>e.marketData.opts.ui.darkMode=f),label:"Dark Mode",size:"sm",class:"q-mt-sm"},null,8,["onInput","onClick","modelValue"])]}),_:1}),y(wu,{name:"merchants"},{default:_(()=>{var d;return[(d=e.readNotes)!=null&&d.merchants?$e("",!0):(R(),oe(rr,{key:0,class:"q-mb-lg gt-sm",bordered:""},{default:_(()=>[y(Vt,null,{default:_(()=>[y(xe,{avatar:""},{default:_(()=>[y(Zr,null,{default:_(()=>[y(Ht,{color:"primary",name:"info",size:"xl"})]),_:1})]),_:1}),y(xe,{class:"q-mt-sm q-ml-lg"},{default:_(()=>[y(He,null,{default:_(()=>[kk]),_:1}),y(He,null,{default:_(()=>[Ck]),_:1})]),_:1}),y(xe,{side:""},{default:_(()=>[y(ge,{onClick:t[11]||(t[11]=f=>e.markNoteAsRead("merchants")),size:"lg",outline:"",color:"primary",label:"Got it!",icon:"check_small"})]),_:1})]),_:1})]),_:1})),S("div",null,[y(It,{outlined:"",modelValue:e.merchantPubkey,"onUpdate:modelValue":t[12]||(t[12]=f=>e.merchantPubkey=f),onKeydown:Pu(e.addMerchant,["enter"]),type:"text",label:"Pubkey/Npub",hint:"Add merchants"},{default:_(()=>[y(ge,{onClick:e.addMerchant,dense:"",flat:"",icon:"add"},null,8,["onClick"])]),_:1},8,["modelValue","onKeydown"]),y(rr,{class:"q-mt-md"},{default:_(()=>[(R(!0),ne($t,null,Ut(e.marketData.opts.merchants,f=>(R(),oe(Vt,{key:f},{default:_(()=>[y(u,{pubkey:f,profiles:e.profiles},null,8,["pubkey","profiles"]),y(xe,{side:""},{default:_(()=>[y(ge,{size:"12px",flat:"",dense:"",round:"",icon:"delete",onClick:g=>e.removeMerchant(f)},null,8,["onClick"])]),_:2},1024)]),_:2},1024))),128))]),_:1})])]}),_:1}),y(wu,{name:"relays"},{default:_(()=>[S("div",null,[S("div",null,[y(It,{outlined:"",modelValue:e.relayUrl,"onUpdate:modelValue":t[13]||(t[13]=d=>e.relayUrl=d),onKeydown:Pu(e.addRelay,["enter"]),type:"text",label:"wss://",hint:"Add realays"},{default:_(()=>[y(ge,{onClick:e.addRelay,dense:"",flat:"",icon:"add"},null,8,["onClick"])]),_:1},8,["modelValue","onKeydown"]),y(rr,{class:"q-mt-md"},{default:_(()=>[(R(!0),ne($t,null,Ut(e.marketData.relays,d=>(R(),oe(Vt,{key:d},{default:_(()=>[y(xe,{avatar:""},{default:_(()=>[y(Zr,null,{default:_(()=>[y(Ht,{name:"router",color:e.relayData(d).connected?"green":"pink"},null,8,["color"])]),_:2},1024)]),_:2},1024),y(xe,{class:"q-mt-sm"},{default:_(()=>[y(He,null,{default:_(()=>[S("strong",null,me(d),1),e.relayData(d).error?(R(),ne("div",Tk,[S("p",null,"Error: "+me(e.relayData(d).error),1)])):$e("",!0)]),_:2},1024)]),_:2},1024),y(xe,{side:""},{default:_(()=>[y(ge,{size:"12px",flat:"",dense:"",round:"",icon:"delete",onClick:f=>e.removeRelay(d)},null,8,["onClick"])]),_:2},1024)]),_:2},1024))),128))]),_:1})])])]),_:1})]),_:1},8,["modelValue"])])])]),_:1}),y(ut),y(Ne,{class:"q-pb-xl"},{default:_(()=>[S("div",Mk,[y(ge,{onClick:e.deleteMarket,flat:"",label:"Delete Market",icon:"delete",class:"q-ml-lg",color:"negative"},null,8,["onClick"]),y(ge,{onClick:e.applyLookAndFeel,flat:"",label:"Apply Look and Feel",icon:"palette",class:"q-ml-lg",color:"secondary"},null,8,["onClick"]),y(ge,{onClick:e.publishNaddr,flat:"",label:"Share Market Profile",icon:"share",class:"q-ml-lg",color:"primary"},null,8,["onClick"])])]),_:1}),y(Ne,{class:"lt-md"})]),_:1})}var xg=Mn(hk,[["render",Dk]]);const qk=un({name:"UserConfig",props:["account"],data:function(){return{accountData:null}},watch:{account(){this.accountData=this.account&&JSON.parse(JSON.stringify(this.account))}},methods:{logout:async function(){this.$q.dialog(confirm("Please make sure you save your private key! You will not be able to recover it later!")).onOk(async()=>{this.$emit("logout")})},copyText(e){this.$emit("copy-text",e)},clearAllData(){this.$emit("clear-all-data")}},created:async function(){this.accountData=this.account&&JSON.parse(JSON.stringify(this.account))}}),Pk={class:"row"},xk={class:"col-10"},Ak={class:"col-2 auto-width"},Ek={class:"row"},Ik={class:"col-10"},$k={class:"col-2 auto-width"},Rk=S("div",null,[S("strong",null,"No Account")],-1),Ok={class:"float-right"};function Lk(e,t,r,a,l,s){return R(),oe(Yt,null,{default:_(()=>[e.accountData?(R(),oe(Ne,{key:0},{default:_(()=>[S("div",Pk,[S("div",xk,[y(It,{modelValue:e.accountData.npub,"onUpdate:modelValue":t[1]||(t[1]=u=>e.accountData.npub=u),readonly:"",disbled:"",outlined:"",hint:e.accountData.pubkey,type:"text",label:"Public Key",class:"q-mb-md"},{append:_(()=>[y(ge,{onClick:t[0]||(t[0]=u=>e.copyText(e.accountData.npub)),icon:"content_copy",label:"Npub",flat:"",color:"gray float-right q-mt-sm"})]),_:1},8,["modelValue","hint"])]),S("div",Ak,[y(ge,{onClick:t[2]||(t[2]=u=>e.copyText(e.accountData.pubkey)),icon:"content_copy",label:"Hex",flat:"",color:"gray float-right q-mt-sm"})])]),S("div",Ek,[S("div",Ik,[y(It,{modelValue:e.accountData.nsec,"onUpdate:modelValue":t[4]||(t[4]=u=>e.accountData.nsec=u),readonly:"",disbled:"",outlined:"",type:"password",label:"Private Key",class:"q-mb-md"},{append:_(()=>[y(ge,{onClick:t[3]||(t[3]=u=>e.copyText(e.accountData.nsec)),icon:"content_copy",label:"Nsec",flat:"",color:"gray float-right q-mt-sm"})]),_:1},8,["modelValue"])]),S("div",$k,[y(ge,{onClick:t[5]||(t[5]=u=>e.copyText(e.accountData.privkey)),icon:"content_copy",label:"Hex",flat:"",color:"gray float-right q-mt-sm"})])])]),_:1})):(R(),oe(Ne,{key:1},{default:_(()=>[Rk]),_:1})),y(ut),y(Ne,null,{default:_(()=>[S("div",Ok,[y(ge,{onClick:e.clearAllData,flat:"",label:"Clear All Data",icon:"delete",class:"q-ml-lg",color:"negative"},null,8,["onClick"]),e.accountData?(R(),oe(ge,{key:0,onClick:e.logout,flat:"",label:"Logout",icon:"logout",class:"q-ml-lg",color:"primary"},null,8,["onClick"])):(R(),oe(ge,{key:1,onClick:t[6]||(t[6]=u=>e.$emit("login")),flat:"",label:"Login",icon:"login",class:"q-ml-lg",color:"primary"}))])]),_:1}),y(Ne)]),_:1})}var Nk=Mn(qk,[["render",Lk]]),Bk=Je({name:"QChatMessage",props:{sent:Boolean,label:String,bgColor:String,textColor:String,name:String,avatar:String,text:Array,stamp:String,size:String,labelHtml:Boolean,nameHtml:Boolean,textHtml:Boolean,stampHtml:Boolean},setup(e,{slots:t}){const r=I(()=>e.sent===!0?"sent":"received"),a=I(()=>`q-message-text-content q-message-text-content--${r.value}`+(e.textColor!==void 0?` text-${e.textColor}`:"")),l=I(()=>`q-message-text q-message-text--${r.value}`+(e.bgColor!==void 0?` text-${e.bgColor}`:"")),s=I(()=>"q-message-container row items-end no-wrap"+(e.sent===!0?" reverse":"")),u=I(()=>e.size!==void 0?`col-${e.size}`:""),d=I(()=>({msg:e.textHtml===!0?"innerHTML":"textContent",stamp:e.stampHtml===!0?"innerHTML":"textContent",name:e.nameHtml===!0?"innerHTML":"textContent",label:e.labelHtml===!0?"innerHTML":"textContent"}));function f(v){return t.stamp!==void 0?[v,E("div",{class:"q-message-stamp"},t.stamp())]:e.stamp?[v,E("div",{class:"q-message-stamp",[d.value.stamp]:e.stamp})]:[v]}function g(v,T){const M=T===!0?v.length>1?b=>b:b=>E("div",[b]):b=>E("div",{[d.value.msg]:b});return v.map((b,x)=>E("div",{key:x,class:l.value},[E("div",{class:a.value},f(M(b)))]))}return()=>{const v=[];t.avatar!==void 0?v.push(t.avatar()):e.avatar!==void 0&&v.push(E("img",{class:`q-message-avatar q-message-avatar--${r.value}`,src:e.avatar,"aria-hidden":"true"}));const T=[];t.name!==void 0?T.push(E("div",{class:`q-message-name q-message-name--${r.value}`},t.name())):e.name!==void 0&&T.push(E("div",{class:`q-message-name q-message-name--${r.value}`,[d.value.name]:e.name})),t.default!==void 0?T.push(g(Xu(t.default()),!0)):e.text!==void 0&&T.push(g(e.text)),v.push(E("div",{class:u.value},T));const M=[];return t.label!==void 0?M.push(E("div",{class:"q-message-label"},t.label())):e.label!==void 0&&M.push(E("div",{class:"q-message-label",[d.value.label]:e.label})),M.push(E("div",{class:s.value},v)),E("div",{class:`q-message q-message-${r.value}`},M)}}});const kh=["vertical","horizontal"],ku={vertical:{offset:"offsetY",scroll:"scrollTop",dir:"down",dist:"y"},horizontal:{offset:"offsetX",scroll:"scrollLeft",dir:"right",dist:"x"}},Ch={prevent:!0,mouse:!0,mouseAllDir:!0},Th=e=>e>=250?50:Math.ceil(e/5);var Fk=Je({name:"QScrollArea",props:{...ar,thumbStyle:Object,verticalThumbStyle:Object,horizontalThumbStyle:Object,barStyle:[Array,String,Object],verticalBarStyle:[Array,String,Object],horizontalBarStyle:[Array,String,Object],contentStyle:[Array,String,Object],contentActiveStyle:[Array,String,Object],delay:{type:[String,Number],default:1e3},visible:{type:Boolean,default:null},tabindex:[String,Number],onScroll:Function},setup(e,{slots:t,emit:r}){const a=se(!1),l=se(!1),s=se(!1),u={vertical:se(0),horizontal:se(0)},d={vertical:{ref:se(null),position:se(0),size:se(0)},horizontal:{ref:se(null),position:se(0),size:se(0)}},{proxy:f}=Dt(),g=lr(e,f.$q);let v=null,T;const M=se(null),b=I(()=>"q-scrollarea"+(g.value===!0?" q-scrollarea--dark":""));d.vertical.percentage=I(()=>{const j=d.vertical.size.value-u.vertical.value;if(j<=0)return 0;const K=Jl(d.vertical.position.value/j,0,1);return Math.round(K*1e4)/1e4}),d.vertical.thumbHidden=I(()=>(e.visible===null?s.value:e.visible)!==!0&&a.value===!1&&l.value===!1||d.vertical.size.value<=u.vertical.value+1),d.vertical.thumbStart=I(()=>d.vertical.percentage.value*(u.vertical.value-d.vertical.thumbSize.value)),d.vertical.thumbSize=I(()=>Math.round(Jl(u.vertical.value*u.vertical.value/d.vertical.size.value,Th(u.vertical.value),u.vertical.value))),d.vertical.style=I(()=>({...e.thumbStyle,...e.verticalThumbStyle,top:`${d.vertical.thumbStart.value}px`,height:`${d.vertical.thumbSize.value}px`})),d.vertical.thumbClass=I(()=>"q-scrollarea__thumb q-scrollarea__thumb--v absolute-right"+(d.vertical.thumbHidden.value===!0?" q-scrollarea__thumb--invisible":"")),d.vertical.barClass=I(()=>"q-scrollarea__bar q-scrollarea__bar--v absolute-right"+(d.vertical.thumbHidden.value===!0?" q-scrollarea__bar--invisible":"")),d.horizontal.percentage=I(()=>{const j=d.horizontal.size.value-u.horizontal.value;if(j<=0)return 0;const K=Jl(Math.abs(d.horizontal.position.value)/j,0,1);return Math.round(K*1e4)/1e4}),d.horizontal.thumbHidden=I(()=>(e.visible===null?s.value:e.visible)!==!0&&a.value===!1&&l.value===!1||d.horizontal.size.value<=u.horizontal.value+1),d.horizontal.thumbStart=I(()=>d.horizontal.percentage.value*(u.horizontal.value-d.horizontal.thumbSize.value)),d.horizontal.thumbSize=I(()=>Math.round(Jl(u.horizontal.value*u.horizontal.value/d.horizontal.size.value,Th(u.horizontal.value),u.horizontal.value))),d.horizontal.style=I(()=>({...e.thumbStyle,...e.horizontalThumbStyle,[f.$q.lang.rtl===!0?"right":"left"]:`${d.horizontal.thumbStart.value}px`,width:`${d.horizontal.thumbSize.value}px`})),d.horizontal.thumbClass=I(()=>"q-scrollarea__thumb q-scrollarea__thumb--h absolute-bottom"+(d.horizontal.thumbHidden.value===!0?" q-scrollarea__thumb--invisible":"")),d.horizontal.barClass=I(()=>"q-scrollarea__bar q-scrollarea__bar--h absolute-bottom"+(d.horizontal.thumbHidden.value===!0?" q-scrollarea__bar--invisible":""));const x=I(()=>d.vertical.thumbHidden.value===!0&&d.horizontal.thumbHidden.value===!0?e.contentStyle:e.contentActiveStyle),$=[[oh,j=>{z(j,"vertical")},void 0,{vertical:!0,...Ch}]],L=[[oh,j=>{z(j,"horizontal")},void 0,{horizontal:!0,...Ch}]];function F(){const j={};return kh.forEach(K=>{const ve=d[K];j[K+"Position"]=ve.position.value,j[K+"Percentage"]=ve.percentage.value,j[K+"Size"]=ve.size.value,j[K+"ContainerSize"]=u[K].value}),j}const W=Zu(()=>{const j=F();j.ref=f,r("scroll",j)},0);function D(j,K,ve){if(kh.includes(j)===!1){console.error("[QScrollArea]: wrong first param of setScrollPosition (vertical/horizontal)");return}(j==="vertical"?Oa:du)(M.value,K,ve)}function A({height:j,width:K}){let ve=!1;u.vertical.value!==j&&(u.vertical.value=j,ve=!0),u.horizontal.value!==K&&(u.horizontal.value=K,ve=!0),ve===!0&&Ae()}function N({position:j}){let K=!1;d.vertical.position.value!==j.top&&(d.vertical.position.value=j.top,K=!0),d.horizontal.position.value!==j.left&&(d.horizontal.position.value=j.left,K=!0),K===!0&&Ae()}function J({height:j,width:K}){d.horizontal.size.value!==K&&(d.horizontal.size.value=K,Ae()),d.vertical.size.value!==j&&(d.vertical.size.value=j,Ae())}function z(j,K){const ve=d[K];if(j.isFirst===!0){if(ve.thumbHidden.value===!0)return;T=ve.position.value,l.value=!0}else if(l.value!==!0)return;j.isFinal===!0&&(l.value=!1);const rt=ku[K],X=u[K].value,Z=(ve.size.value-X)/(X-ve.thumbSize.value),he=j.distance[rt.dist],fe=T+(j.direction===rt.dir?1:-1)*he*Z;lt(fe,K)}function H(j,K){const ve=d[K];if(ve.thumbHidden.value!==!0){const rt=j[ku[K].offset];if(rtve.thumbStart.value+ve.thumbSize.value){const X=rt-ve.thumbSize.value/2;lt(X/u[K].value*ve.size.value,K)}ve.ref.value!==null&&ve.ref.value.dispatchEvent(new MouseEvent(j.type,j))}}function ye(j){H(j,"vertical")}function _e(j){H(j,"horizontal")}function Ae(){a.value=!0,v!==null&&clearTimeout(v),v=setTimeout(()=>{v=null,a.value=!1},e.delay),e.onScroll!==void 0&&W()}function lt(j,K){M.value[ku[K].scroll]=j}function te(){s.value=!0}function Pe(){s.value=!1}let Be=null;return ze(()=>f.$q.lang.rtl,j=>{M.value!==null&&du(M.value,Math.abs(d.horizontal.position.value)*(j===!0?-1:1))}),ia(()=>{Be={top:d.vertical.position.value,left:d.horizontal.position.value}}),aa(()=>{if(Be===null)return;const j=M.value;j!==null&&(du(j,Be.left),Oa(j,Be.top))}),Gt(W.cancel),Object.assign(f,{getScrollTarget:()=>M.value,getScroll:F,getScrollPosition:()=>({top:d.vertical.position.value,left:d.horizontal.position.value}),getScrollPercentage:()=>({top:d.vertical.percentage.value,left:d.horizontal.percentage.value}),setScrollPosition:D,setScrollPercentage(j,K,ve){D(j,K*(d[j].size.value-u[j].value)*(j==="horizontal"&&f.$q.lang.rtl===!0?-1:1),ve)}}),()=>E("div",{class:b.value,onMouseenter:te,onMouseleave:Pe},[E("div",{ref:M,class:"q-scrollarea__container scroll relative-position fit hide-scrollbar",tabindex:e.tabindex!==void 0?e.tabindex:void 0},[E("div",{class:"q-scrollarea__content absolute",style:x.value},bi(t.default,[E(xu,{debounce:0,onResize:J})])),E(ow,{axis:"both",onScroll:N})]),E(xu,{debounce:0,onResize:A}),E("div",{class:d.vertical.barClass.value,style:[e.barStyle,e.verticalBarStyle],"aria-hidden":"true",onMousedown:ye}),E("div",{class:d.horizontal.barClass.value,style:[e.barStyle,e.horizontalBarStyle],"aria-hidden":"true",onMousedown:_e}),sn(E("div",{ref:d.vertical.ref,class:d.vertical.thumbClass.value,style:d.vertical.style.value,"aria-hidden":"true"}),$),sn(E("div",{ref:d.horizontal.ref,class:d.horizontal.thumbClass.value,style:d.horizontal.style.value,"aria-hidden":"true"}),L)])}}),Vk=Je({name:"QForm",props:{autofocus:Boolean,noErrorFocus:Boolean,noResetFocus:Boolean,greedy:Boolean,onSubmit:Function},emits:["reset","validationSuccess","validationError"],setup(e,{slots:t,emit:r}){const a=Dt(),l=se(null);let s=0;const u=[];function d(b){const x=typeof b=="boolean"?b:e.noErrorFocus!==!0,$=++s,L=(D,A)=>{r("validation"+(D===!0?"Success":"Error"),A)},F=D=>{const A=D.validate();return typeof A.then=="function"?A.then(N=>({valid:N,comp:D}),N=>({valid:!1,comp:D,err:N})):Promise.resolve({valid:A,comp:D})};return(e.greedy===!0?Promise.all(u.map(F)).then(D=>D.filter(A=>A.valid!==!0)):u.reduce((D,A)=>D.then(()=>F(A).then(N=>{if(N.valid===!1)return Promise.reject(N)})),Promise.resolve()).catch(D=>[D])).then(D=>{if(D===void 0||D.length===0)return $===s&&L(!0),!0;if($===s){const{comp:A,err:N}=D[0];if(N!==void 0&&console.error(N),L(!1,A),x===!0){const J=D.find(({comp:z})=>typeof z.focus=="function"&&Zb(z.$)===!1);J!==void 0&&J.comp.focus()}}return!1})}function f(){s++,u.forEach(b=>{typeof b.resetValidation=="function"&&b.resetValidation()})}function g(b){b!==void 0&&Ft(b);const x=s+1;d().then($=>{x===s&&$===!0&&(e.onSubmit!==void 0?r("submit",b):b!==void 0&&b.target!==void 0&&typeof b.target.submit=="function"&&b.target.submit())})}function v(b){b!==void 0&&Ft(b),r("reset"),kn(()=>{f(),e.autofocus===!0&&e.noResetFocus!==!0&&T()})}function T(){Bh(()=>{if(l.value===null)return;const b=l.value.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||l.value.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||l.value.querySelector("[autofocus], [data-autofocus]")||Array.prototype.find.call(l.value.querySelectorAll("[tabindex]"),x=>x.tabIndex>-1);b!=null&&b.focus({preventScroll:!0})})}Wh(Jb,{bindComponent(b){u.push(b)},unbindComponent(b){const x=u.indexOf(b);x>-1&&u.splice(x,1)}});let M=!1;return ia(()=>{M=!0}),aa(()=>{M===!0&&e.autofocus===!0&&T()}),ei(()=>{e.autofocus===!0&&T()}),Object.assign(a.proxy,{validate:d,resetValidation:f,submit:g,reset:v,focus:T,getValidationComponents:()=>u}),()=>E("form",{class:"q-form",ref:l,onSubmit:g,onReset:v},Mt(t.default))}});//! moment.js +//! version : 2.29.4 +//! authors : Tim Wood, Iskren Chernev, Moment.js contributors +//! license : MIT +//! momentjs.com +var Ag;function ae(){return Ag.apply(null,arguments)}function Uk(e){Ag=e}function Kn(e){return e instanceof Array||Object.prototype.toString.call(e)==="[object Array]"}function yi(e){return e!=null&&Object.prototype.toString.call(e)==="[object Object]"}function Xe(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function uc(e){if(Object.getOwnPropertyNames)return Object.getOwnPropertyNames(e).length===0;var t;for(t in e)if(Xe(e,t))return!1;return!0}function vn(e){return e===void 0}function qr(e){return typeof e=="number"||Object.prototype.toString.call(e)==="[object Number]"}function ja(e){return e instanceof Date||Object.prototype.toString.call(e)==="[object Date]"}function Eg(e,t){var r=[],a,l=e.length;for(a=0;a>>0,a;for(a=0;a0)for(r=0;r=0;return(s?r?"+":"":"-")+Math.pow(10,Math.max(0,l)).toString().substr(1)+a}var hc=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,no=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,Tu={},ji={};function be(e,t,r,a){var l=a;typeof a=="string"&&(l=function(){return this[a]()}),e&&(ji[e]=l),t&&(ji[t[0]]=function(){return ir(l.apply(this,arguments),t[1],t[2])}),r&&(ji[r]=function(){return this.localeData().ordinal(l.apply(this,arguments),e)})}function Gk(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,""):e.replace(/\\/g,"")}function Kk(e){var t=e.match(hc),r,a;for(r=0,a=t.length;r=0&&no.test(e);)e=e.replace(no,a),no.lastIndex=0,r-=1;return e}var Qk={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};function jk(e){var t=this._longDateFormat[e],r=this._longDateFormat[e.toUpperCase()];return t||!r?t:(this._longDateFormat[e]=r.match(hc).map(function(a){return a==="MMMM"||a==="MM"||a==="DD"||a==="dddd"?a.slice(1):a}).join(""),this._longDateFormat[e])}var Zk="Invalid date";function Jk(){return this._invalidDate}var Xk="%d",eC=/\d{1,2}/;function tC(e){return this._ordinal.replace("%d",e)}var nC={future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function rC(e,t,r,a){var l=this._relativeTime[r];return ur(l)?l(e,t,r,a):l.replace(/%d/i,e)}function iC(e,t){var r=this._relativeTime[e>0?"future":"past"];return ur(r)?r(t):r.replace(/%s/i,t)}var Na={};function en(e,t){var r=e.toLowerCase();Na[r]=Na[r+"s"]=Na[t]=e}function Bn(e){return typeof e=="string"?Na[e]||Na[e.toLowerCase()]:void 0}function gc(e){var t={},r,a;for(a in e)Xe(e,a)&&(r=Bn(a),r&&(t[r]=e[a]));return t}var Og={};function tn(e,t){Og[e]=t}function aC(e){var t=[],r;for(r in e)Xe(e,r)&&t.push({unit:r,priority:Og[r]});return t.sort(function(a,l){return a.priority-l.priority}),t}function $o(e){return e%4===0&&e%100!==0||e%400===0}function Ln(e){return e<0?Math.ceil(e)||0:Math.floor(e)}function We(e){var t=+e,r=0;return t!==0&&isFinite(t)&&(r=Ln(t)),r}function la(e,t){return function(r){return r!=null?(Lg(this,e,r),ae.updateOffset(this,t),this):wo(this,e)}}function wo(e,t){return e.isValid()?e._d["get"+(e._isUTC?"UTC":"")+t]():NaN}function Lg(e,t,r){e.isValid()&&!isNaN(r)&&(t==="FullYear"&&$o(e.year())&&e.month()===1&&e.date()===29?(r=We(r),e._d["set"+(e._isUTC?"UTC":"")+t](r,e.month(),Fo(r,e.month()))):e._d["set"+(e._isUTC?"UTC":"")+t](r))}function lC(e){return e=Bn(e),ur(this[e])?this[e]():this}function oC(e,t){if(typeof e=="object"){e=gc(e);var r=aC(e),a,l=r.length;for(a=0;a68?1900:2e3)};var Gg=la("FullYear",!0);function MC(){return $o(this.year())}function DC(e,t,r,a,l,s,u){var d;return e<100&&e>=0?(d=new Date(e+400,t,r,a,l,s,u),isFinite(d.getFullYear())&&d.setFullYear(e)):d=new Date(e,t,r,a,l,s,u),d}function Ua(e){var t,r;return e<100&&e>=0?(r=Array.prototype.slice.call(arguments),r[0]=e+400,t=new Date(Date.UTC.apply(null,r)),isFinite(t.getUTCFullYear())&&t.setUTCFullYear(e)):t=new Date(Date.UTC.apply(null,arguments)),t}function ko(e,t,r){var a=7+t-r,l=(7+Ua(e,0,a).getUTCDay()-t)%7;return-l+a-1}function Kg(e,t,r,a,l){var s=(7+r-a)%7,u=ko(e,a,l),d=1+7*(t-1)+s+u,f,g;return d<=0?(f=e-1,g=Ba(f)+d):d>Ba(e)?(f=e+1,g=d-Ba(e)):(f=e,g=d),{year:f,dayOfYear:g}}function za(e,t,r){var a=ko(e.year(),t,r),l=Math.floor((e.dayOfYear()-a-1)/7)+1,s,u;return l<1?(u=e.year()-1,s=l+Dr(u,t,r)):l>Dr(e.year(),t,r)?(s=l-Dr(e.year(),t,r),u=e.year()+1):(u=e.year(),s=l),{week:s,year:u}}function Dr(e,t,r){var a=ko(e,t,r),l=ko(e+1,t,r);return(Ba(e)-a+l)/7}be("w",["ww",2],"wo","week");be("W",["WW",2],"Wo","isoWeek");en("week","w");en("isoWeek","W");tn("week",5);tn("isoWeek",5);ce("w",yt);ce("ww",yt,qn);ce("W",yt);ce("WW",yt,qn);Xa(["w","ww","W","WW"],function(e,t,r,a){t[a.substr(0,1)]=We(e)});function qC(e){return za(e,this._week.dow,this._week.doy).week}var PC={dow:0,doy:6};function xC(){return this._week.dow}function AC(){return this._week.doy}function EC(e){var t=this.localeData().week(this);return e==null?t:this.add((e-t)*7,"d")}function IC(e){var t=za(this,1,4).week;return e==null?t:this.add((e-t)*7,"d")}be("d",0,"do","day");be("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)});be("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)});be("dddd",0,0,function(e){return this.localeData().weekdays(this,e)});be("e",0,0,"weekday");be("E",0,0,"isoWeekday");en("day","d");en("weekday","e");en("isoWeekday","E");tn("day",11);tn("weekday",11);tn("isoWeekday",11);ce("d",yt);ce("e",yt);ce("E",yt);ce("dd",function(e,t){return t.weekdaysMinRegex(e)});ce("ddd",function(e,t){return t.weekdaysShortRegex(e)});ce("dddd",function(e,t){return t.weekdaysRegex(e)});Xa(["dd","ddd","dddd"],function(e,t,r,a){var l=r._locale.weekdaysParse(e,a,r._strict);l!=null?t.d=l:Oe(r).invalidWeekday=e});Xa(["d","e","E"],function(e,t,r,a){t[a]=We(e)});function $C(e,t){return typeof e!="string"?e:isNaN(e)?(e=t.weekdaysParse(e),typeof e=="number"?e:null):parseInt(e,10)}function RC(e,t){return typeof e=="string"?t.weekdaysParse(e)%7||7:isNaN(e)?null:e}function pc(e,t){return e.slice(t,7).concat(e.slice(0,t))}var OC="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Qg="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),LC="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),NC=Ja,BC=Ja,FC=Ja;function VC(e,t){var r=Kn(this._weekdays)?this._weekdays:this._weekdays[e&&e!==!0&&this._weekdays.isFormat.test(t)?"format":"standalone"];return e===!0?pc(r,this._week.dow):e?r[e.day()]:r}function UC(e){return e===!0?pc(this._weekdaysShort,this._week.dow):e?this._weekdaysShort[e.day()]:this._weekdaysShort}function zC(e){return e===!0?pc(this._weekdaysMin,this._week.dow):e?this._weekdaysMin[e.day()]:this._weekdaysMin}function WC(e,t,r){var a,l,s,u=e.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],a=0;a<7;++a)s=sr([2e3,1]).day(a),this._minWeekdaysParse[a]=this.weekdaysMin(s,"").toLocaleLowerCase(),this._shortWeekdaysParse[a]=this.weekdaysShort(s,"").toLocaleLowerCase(),this._weekdaysParse[a]=this.weekdays(s,"").toLocaleLowerCase();return r?t==="dddd"?(l=Et.call(this._weekdaysParse,u),l!==-1?l:null):t==="ddd"?(l=Et.call(this._shortWeekdaysParse,u),l!==-1?l:null):(l=Et.call(this._minWeekdaysParse,u),l!==-1?l:null):t==="dddd"?(l=Et.call(this._weekdaysParse,u),l!==-1||(l=Et.call(this._shortWeekdaysParse,u),l!==-1)?l:(l=Et.call(this._minWeekdaysParse,u),l!==-1?l:null)):t==="ddd"?(l=Et.call(this._shortWeekdaysParse,u),l!==-1||(l=Et.call(this._weekdaysParse,u),l!==-1)?l:(l=Et.call(this._minWeekdaysParse,u),l!==-1?l:null)):(l=Et.call(this._minWeekdaysParse,u),l!==-1||(l=Et.call(this._weekdaysParse,u),l!==-1)?l:(l=Et.call(this._shortWeekdaysParse,u),l!==-1?l:null))}function YC(e,t,r){var a,l,s;if(this._weekdaysParseExact)return WC.call(this,e,t,r);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),a=0;a<7;a++){if(l=sr([2e3,1]).day(a),r&&!this._fullWeekdaysParse[a]&&(this._fullWeekdaysParse[a]=new RegExp("^"+this.weekdays(l,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[a]=new RegExp("^"+this.weekdaysShort(l,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[a]=new RegExp("^"+this.weekdaysMin(l,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[a]||(s="^"+this.weekdays(l,"")+"|^"+this.weekdaysShort(l,"")+"|^"+this.weekdaysMin(l,""),this._weekdaysParse[a]=new RegExp(s.replace(".",""),"i")),r&&t==="dddd"&&this._fullWeekdaysParse[a].test(e))return a;if(r&&t==="ddd"&&this._shortWeekdaysParse[a].test(e))return a;if(r&&t==="dd"&&this._minWeekdaysParse[a].test(e))return a;if(!r&&this._weekdaysParse[a].test(e))return a}}function HC(e){if(!this.isValid())return e!=null?this:NaN;var t=this._isUTC?this._d.getUTCDay():this._d.getDay();return e!=null?(e=$C(e,this.localeData()),this.add(e-t,"d")):t}function GC(e){if(!this.isValid())return e!=null?this:NaN;var t=(this.day()+7-this.localeData()._week.dow)%7;return e==null?t:this.add(e-t,"d")}function KC(e){if(!this.isValid())return e!=null?this:NaN;if(e!=null){var t=RC(e,this.localeData());return this.day(this.day()%7?t:t-7)}else return this.day()||7}function QC(e){return this._weekdaysParseExact?(Xe(this,"_weekdaysRegex")||yc.call(this),e?this._weekdaysStrictRegex:this._weekdaysRegex):(Xe(this,"_weekdaysRegex")||(this._weekdaysRegex=NC),this._weekdaysStrictRegex&&e?this._weekdaysStrictRegex:this._weekdaysRegex)}function jC(e){return this._weekdaysParseExact?(Xe(this,"_weekdaysRegex")||yc.call(this),e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(Xe(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=BC),this._weekdaysShortStrictRegex&&e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function ZC(e){return this._weekdaysParseExact?(Xe(this,"_weekdaysRegex")||yc.call(this),e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(Xe(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=FC),this._weekdaysMinStrictRegex&&e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function yc(){function e(v,T){return T.length-v.length}var t=[],r=[],a=[],l=[],s,u,d,f,g;for(s=0;s<7;s++)u=sr([2e3,1]).day(s),d=Cn(this.weekdaysMin(u,"")),f=Cn(this.weekdaysShort(u,"")),g=Cn(this.weekdays(u,"")),t.push(d),r.push(f),a.push(g),l.push(d),l.push(f),l.push(g);t.sort(e),r.sort(e),a.sort(e),l.sort(e),this._weekdaysRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+a.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+r.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+t.join("|")+")","i")}function _c(){return this.hours()%12||12}function JC(){return this.hours()||24}be("H",["HH",2],0,"hour");be("h",["hh",2],0,_c);be("k",["kk",2],0,JC);be("hmm",0,0,function(){return""+_c.apply(this)+ir(this.minutes(),2)});be("hmmss",0,0,function(){return""+_c.apply(this)+ir(this.minutes(),2)+ir(this.seconds(),2)});be("Hmm",0,0,function(){return""+this.hours()+ir(this.minutes(),2)});be("Hmmss",0,0,function(){return""+this.hours()+ir(this.minutes(),2)+ir(this.seconds(),2)});function jg(e,t){be(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}jg("a",!0);jg("A",!1);en("hour","h");tn("hour",13);function Zg(e,t){return t._meridiemParse}ce("a",Zg);ce("A",Zg);ce("H",yt);ce("h",yt);ce("k",yt);ce("HH",yt,qn);ce("hh",yt,qn);ce("kk",yt,qn);ce("hmm",Fg);ce("hmmss",Vg);ce("Hmm",Fg);ce("Hmmss",Vg);ct(["H","HH"],Lt);ct(["k","kk"],function(e,t,r){var a=We(e);t[Lt]=a===24?0:a});ct(["a","A"],function(e,t,r){r._isPm=r._locale.isPM(e),r._meridiem=e});ct(["h","hh"],function(e,t,r){t[Lt]=We(e),Oe(r).bigHour=!0});ct("hmm",function(e,t,r){var a=e.length-2;t[Lt]=We(e.substr(0,a)),t[Gn]=We(e.substr(a)),Oe(r).bigHour=!0});ct("hmmss",function(e,t,r){var a=e.length-4,l=e.length-2;t[Lt]=We(e.substr(0,a)),t[Gn]=We(e.substr(a,2)),t[Mr]=We(e.substr(l)),Oe(r).bigHour=!0});ct("Hmm",function(e,t,r){var a=e.length-2;t[Lt]=We(e.substr(0,a)),t[Gn]=We(e.substr(a))});ct("Hmmss",function(e,t,r){var a=e.length-4,l=e.length-2;t[Lt]=We(e.substr(0,a)),t[Gn]=We(e.substr(a,2)),t[Mr]=We(e.substr(l))});function XC(e){return(e+"").toLowerCase().charAt(0)==="p"}var e2=/[ap]\.?m?\.?/i,t2=la("Hours",!0);function n2(e,t,r){return e>11?r?"pm":"PM":r?"am":"AM"}var Jg={calendar:Yk,longDateFormat:Qk,invalidDate:Zk,ordinal:Xk,dayOfMonthOrdinalParse:eC,relativeTime:nC,months:vC,monthsShort:Ug,week:PC,weekdays:OC,weekdaysMin:LC,weekdaysShort:Qg,meridiemParse:e2},bt={},qa={},Wa;function r2(e,t){var r,a=Math.min(e.length,t.length);for(r=0;r0;){if(l=Vo(s.slice(0,r).join("-")),l)return l;if(a&&a.length>=r&&r2(s,a)>=r-1)break;r--}t++}return Wa}function a2(e){return e.match("^[^/\\\\]*$")!=null}function Vo(e){var t=null,r;if(bt[e]===void 0&&typeof module!="undefined"&&module&&module.exports&&a2(e))try{t=Wa._abbr,r=require,r("./locale/"+e),Jr(t)}catch{bt[e]=null}return bt[e]}function Jr(e,t){var r;return e&&(vn(t)?r=Pr(e):r=bc(e,t),r?Wa=r:typeof console!="undefined"&&console.warn&&console.warn("Locale "+e+" not found. Did you forget to load it?")),Wa._abbr}function bc(e,t){if(t!==null){var r,a=Jg;if(t.abbr=e,bt[e]!=null)$g("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),a=bt[e]._config;else if(t.parentLocale!=null)if(bt[t.parentLocale]!=null)a=bt[t.parentLocale]._config;else if(r=Vo(t.parentLocale),r!=null)a=r._config;else return qa[t.parentLocale]||(qa[t.parentLocale]=[]),qa[t.parentLocale].push({name:e,config:t}),null;return bt[e]=new fc(Bu(a,t)),qa[e]&&qa[e].forEach(function(l){bc(l.name,l.config)}),Jr(e),bt[e]}else return delete bt[e],null}function l2(e,t){if(t!=null){var r,a,l=Jg;bt[e]!=null&&bt[e].parentLocale!=null?bt[e].set(Bu(bt[e]._config,t)):(a=Vo(e),a!=null&&(l=a._config),t=Bu(l,t),a==null&&(t.abbr=e),r=new fc(t),r.parentLocale=bt[e],bt[e]=r),Jr(e)}else bt[e]!=null&&(bt[e].parentLocale!=null?(bt[e]=bt[e].parentLocale,e===Jr()&&Jr(e)):bt[e]!=null&&delete bt[e]);return bt[e]}function Pr(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return Wa;if(!Kn(e)){if(t=Vo(e),t)return t;e=[e]}return i2(e)}function o2(){return Fu(bt)}function wc(e){var t,r=e._a;return r&&Oe(e).overflow===-2&&(t=r[Tr]<0||r[Tr]>11?Tr:r[nr]<1||r[nr]>Fo(r[Xt],r[Tr])?nr:r[Lt]<0||r[Lt]>24||r[Lt]===24&&(r[Gn]!==0||r[Mr]!==0||r[vi]!==0)?Lt:r[Gn]<0||r[Gn]>59?Gn:r[Mr]<0||r[Mr]>59?Mr:r[vi]<0||r[vi]>999?vi:-1,Oe(e)._overflowDayOfYear&&(tnr)&&(t=nr),Oe(e)._overflowWeeks&&t===-1&&(t=hC),Oe(e)._overflowWeekday&&t===-1&&(t=gC),Oe(e).overflow=t),e}var s2=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,u2=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,c2=/Z|[+-]\d\d(?::?\d\d)?/,ro=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],Mu=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],d2=/^\/?Date\((-?\d+)/i,f2=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,h2={UT:0,GMT:0,EDT:-4*60,EST:-5*60,CDT:-5*60,CST:-6*60,MDT:-6*60,MST:-7*60,PDT:-7*60,PST:-8*60};function Xg(e){var t,r,a=e._i,l=s2.exec(a)||u2.exec(a),s,u,d,f,g=ro.length,v=Mu.length;if(l){for(Oe(e).iso=!0,t=0,r=g;tBa(u)||e._dayOfYear===0)&&(Oe(e)._overflowDayOfYear=!0),r=Ua(u,0,e._dayOfYear),e._a[Tr]=r.getUTCMonth(),e._a[nr]=r.getUTCDate()),t=0;t<3&&e._a[t]==null;++t)e._a[t]=a[t]=l[t];for(;t<7;t++)e._a[t]=a[t]=e._a[t]==null?t===2?1:0:e._a[t];e._a[Lt]===24&&e._a[Gn]===0&&e._a[Mr]===0&&e._a[vi]===0&&(e._nextDay=!0,e._a[Lt]=0),e._d=(e._useUTC?Ua:DC).apply(null,a),s=e._useUTC?e._d.getUTCDay():e._d.getDay(),e._tzm!=null&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[Lt]=24),e._w&&typeof e._w.d!="undefined"&&e._w.d!==s&&(Oe(e).weekdayMismatch=!0)}}function w2(e){var t,r,a,l,s,u,d,f,g;t=e._w,t.GG!=null||t.W!=null||t.E!=null?(s=1,u=4,r=Hi(t.GG,e._a[Xt],za(pt(),1,4).year),a=Hi(t.W,1),l=Hi(t.E,1),(l<1||l>7)&&(f=!0)):(s=e._locale._week.dow,u=e._locale._week.doy,g=za(pt(),s,u),r=Hi(t.gg,e._a[Xt],g.year),a=Hi(t.w,g.week),t.d!=null?(l=t.d,(l<0||l>6)&&(f=!0)):t.e!=null?(l=t.e+s,(t.e<0||t.e>6)&&(f=!0)):l=s),a<1||a>Dr(r,s,u)?Oe(e)._overflowWeeks=!0:f!=null?Oe(e)._overflowWeekday=!0:(d=Kg(r,a,l,s,u),e._a[Xt]=d.year,e._dayOfYear=d.dayOfYear)}ae.ISO_8601=function(){};ae.RFC_2822=function(){};function kc(e){if(e._f===ae.ISO_8601){Xg(e);return}if(e._f===ae.RFC_2822){em(e);return}e._a=[],Oe(e).empty=!0;var t=""+e._i,r,a,l,s,u,d=t.length,f=0,g,v;for(l=Rg(e._f,e._locale).match(hc)||[],v=l.length,r=0;r0&&Oe(e).unusedInput.push(u),t=t.slice(t.indexOf(a)+a.length),f+=a.length),ji[s]?(a?Oe(e).empty=!1:Oe(e).unusedTokens.push(s),fC(s,a,e)):e._strict&&!a&&Oe(e).unusedTokens.push(s);Oe(e).charsLeftOver=d-f,t.length>0&&Oe(e).unusedInput.push(t),e._a[Lt]<=12&&Oe(e).bigHour===!0&&e._a[Lt]>0&&(Oe(e).bigHour=void 0),Oe(e).parsedDateParts=e._a.slice(0),Oe(e).meridiem=e._meridiem,e._a[Lt]=S2(e._locale,e._a[Lt],e._meridiem),g=Oe(e).era,g!==null&&(e._a[Xt]=e._locale.erasConvertYear(g,e._a[Xt])),Sc(e),wc(e)}function S2(e,t,r){var a;return r==null?t:e.meridiemHour!=null?e.meridiemHour(t,r):(e.isPM!=null&&(a=e.isPM(r),a&&t<12&&(t+=12),!a&&t===12&&(t=0)),t)}function k2(e){var t,r,a,l,s,u,d=!1,f=e._f.length;if(f===0){Oe(e).invalidFormat=!0,e._d=new Date(NaN);return}for(l=0;lthis?this:e:Io()});function rm(e,t){var r,a;if(t.length===1&&Kn(t[0])&&(t=t[0]),!t.length)return pt();for(r=t[0],a=1;athis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function W2(){if(!vn(this._isDSTShifted))return this._isDSTShifted;var e={},t;return dc(e,this),e=tm(e),e._a?(t=e._isUTC?sr(e._a):pt(e._a),this._isDSTShifted=this.isValid()&&R2(e._a,t.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}function Y2(){return this.isValid()?!this._isUTC:!1}function H2(){return this.isValid()?this._isUTC:!1}function am(){return this.isValid()?this._isUTC&&this._offset===0:!1}var G2=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,K2=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function jn(e,t){var r=e,a=null,l,s,u;return lo(e)?r={ms:e._milliseconds,d:e._days,M:e._months}:qr(e)||!isNaN(+e)?(r={},t?r[t]=+e:r.milliseconds=+e):(a=G2.exec(e))?(l=a[1]==="-"?-1:1,r={y:0,d:We(a[nr])*l,h:We(a[Lt])*l,m:We(a[Gn])*l,s:We(a[Mr])*l,ms:We(Uu(a[vi]*1e3))*l}):(a=K2.exec(e))?(l=a[1]==="-"?-1:1,r={y:fi(a[2],l),M:fi(a[3],l),w:fi(a[4],l),d:fi(a[5],l),h:fi(a[6],l),m:fi(a[7],l),s:fi(a[8],l)}):r==null?r={}:typeof r=="object"&&("from"in r||"to"in r)&&(u=Q2(pt(r.from),pt(r.to)),r={},r.ms=u.milliseconds,r.M=u.months),s=new Uo(r),lo(e)&&Xe(e,"_locale")&&(s._locale=e._locale),lo(e)&&Xe(e,"_isValid")&&(s._isValid=e._isValid),s}jn.fn=Uo.prototype;jn.invalid=$2;function fi(e,t){var r=e&&parseFloat(e.replace(",","."));return(isNaN(r)?0:r)*t}function Ph(e,t){var r={};return r.months=t.month()-e.month()+(t.year()-e.year())*12,e.clone().add(r.months,"M").isAfter(t)&&--r.months,r.milliseconds=+t-+e.clone().add(r.months,"M"),r}function Q2(e,t){var r;return e.isValid()&&t.isValid()?(t=Tc(t,e),e.isBefore(t)?r=Ph(e,t):(r=Ph(t,e),r.milliseconds=-r.milliseconds,r.months=-r.months),r):{milliseconds:0,months:0}}function lm(e,t){return function(r,a){var l,s;return a!==null&&!isNaN(+a)&&($g(t,"moment()."+t+"(period, number) is deprecated. Please use moment()."+t+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),s=r,r=a,a=s),l=jn(r,a),om(this,l,e),this}}function om(e,t,r,a){var l=t._milliseconds,s=Uu(t._days),u=Uu(t._months);!e.isValid()||(a=a==null?!0:a,u&&Wg(e,wo(e,"Month")+u*r),s&&Lg(e,"Date",wo(e,"Date")+s*r),l&&e._d.setTime(e._d.valueOf()+l*r),a&&ae.updateOffset(e,s||u))}var j2=lm(1,"add"),Z2=lm(-1,"subtract");function sm(e){return typeof e=="string"||e instanceof String}function J2(e){return Qn(e)||ja(e)||sm(e)||qr(e)||eT(e)||X2(e)||e===null||e===void 0}function X2(e){var t=yi(e)&&!uc(e),r=!1,a=["years","year","y","months","month","M","days","day","d","dates","date","D","hours","hour","h","minutes","minute","m","seconds","second","s","milliseconds","millisecond","ms"],l,s,u=a.length;for(l=0;lr.valueOf():r.valueOf()9999?ao(r,t?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):ur(Date.prototype.toISOString)?t?this.toDate().toISOString():new Date(this.valueOf()+this.utcOffset()*60*1e3).toISOString().replace("Z",ao(r,"Z")):ao(r,t?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")}function gT(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var e="moment",t="",r,a,l,s;return this.isLocal()||(e=this.utcOffset()===0?"moment.utc":"moment.parseZone",t="Z"),r="["+e+'("]',a=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",l="-MM-DD[T]HH:mm:ss.SSS",s=t+'[")]',this.format(r+a+l+s)}function mT(e){e||(e=this.isUtc()?ae.defaultFormatUtc:ae.defaultFormat);var t=ao(this,e);return this.localeData().postformat(t)}function vT(e,t){return this.isValid()&&(Qn(e)&&e.isValid()||pt(e).isValid())?jn({to:this,from:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function pT(e){return this.from(pt(),e)}function yT(e,t){return this.isValid()&&(Qn(e)&&e.isValid()||pt(e).isValid())?jn({from:this,to:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function _T(e){return this.to(pt(),e)}function um(e){var t;return e===void 0?this._locale._abbr:(t=Pr(e),t!=null&&(this._locale=t),this)}var cm=Nn("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(e){return e===void 0?this.localeData():this.locale(e)});function dm(){return this._locale}var Co=1e3,Zi=60*Co,To=60*Zi,fm=(365*400+97)*24*To;function Ji(e,t){return(e%t+t)%t}function hm(e,t,r){return e<100&&e>=0?new Date(e+400,t,r)-fm:new Date(e,t,r).valueOf()}function gm(e,t,r){return e<100&&e>=0?Date.UTC(e+400,t,r)-fm:Date.UTC(e,t,r)}function bT(e){var t,r;if(e=Bn(e),e===void 0||e==="millisecond"||!this.isValid())return this;switch(r=this._isUTC?gm:hm,e){case"year":t=r(this.year(),0,1);break;case"quarter":t=r(this.year(),this.month()-this.month()%3,1);break;case"month":t=r(this.year(),this.month(),1);break;case"week":t=r(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":t=r(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":t=r(this.year(),this.month(),this.date());break;case"hour":t=this._d.valueOf(),t-=Ji(t+(this._isUTC?0:this.utcOffset()*Zi),To);break;case"minute":t=this._d.valueOf(),t-=Ji(t,Zi);break;case"second":t=this._d.valueOf(),t-=Ji(t,Co);break}return this._d.setTime(t),ae.updateOffset(this,!0),this}function wT(e){var t,r;if(e=Bn(e),e===void 0||e==="millisecond"||!this.isValid())return this;switch(r=this._isUTC?gm:hm,e){case"year":t=r(this.year()+1,0,1)-1;break;case"quarter":t=r(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":t=r(this.year(),this.month()+1,1)-1;break;case"week":t=r(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":t=r(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":t=r(this.year(),this.month(),this.date()+1)-1;break;case"hour":t=this._d.valueOf(),t+=To-Ji(t+(this._isUTC?0:this.utcOffset()*Zi),To)-1;break;case"minute":t=this._d.valueOf(),t+=Zi-Ji(t,Zi)-1;break;case"second":t=this._d.valueOf(),t+=Co-Ji(t,Co)-1;break}return this._d.setTime(t),ae.updateOffset(this,!0),this}function ST(){return this._d.valueOf()-(this._offset||0)*6e4}function kT(){return Math.floor(this.valueOf()/1e3)}function CT(){return new Date(this.valueOf())}function TT(){var e=this;return[e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second(),e.millisecond()]}function MT(){var e=this;return{years:e.year(),months:e.month(),date:e.date(),hours:e.hours(),minutes:e.minutes(),seconds:e.seconds(),milliseconds:e.milliseconds()}}function DT(){return this.isValid()?this.toISOString():null}function qT(){return cc(this)}function PT(){return Qr({},Oe(this))}function xT(){return Oe(this).overflow}function AT(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}be("N",0,0,"eraAbbr");be("NN",0,0,"eraAbbr");be("NNN",0,0,"eraAbbr");be("NNNN",0,0,"eraName");be("NNNNN",0,0,"eraNarrow");be("y",["y",1],"yo","eraYear");be("y",["yy",2],0,"eraYear");be("y",["yyy",3],0,"eraYear");be("y",["yyyy",4],0,"eraYear");ce("N",Mc);ce("NN",Mc);ce("NNN",Mc);ce("NNNN",UT);ce("NNNNN",zT);ct(["N","NN","NNN","NNNN","NNNNN"],function(e,t,r,a){var l=r._locale.erasParse(e,a,r._strict);l?Oe(r).era=l:Oe(r).invalidEra=e});ce("y",oa);ce("yy",oa);ce("yyy",oa);ce("yyyy",oa);ce("yo",WT);ct(["y","yy","yyy","yyyy"],Xt);ct(["yo"],function(e,t,r,a){var l;r._locale._eraYearOrdinalRegex&&(l=e.match(r._locale._eraYearOrdinalRegex)),r._locale.eraYearOrdinalParse?t[Xt]=r._locale.eraYearOrdinalParse(e,l):t[Xt]=parseInt(e,10)});function ET(e,t){var r,a,l,s=this._eras||Pr("en")._eras;for(r=0,a=s.length;r=0)return s[a]}function $T(e,t){var r=e.since<=e.until?1:-1;return t===void 0?ae(e.since).year():ae(e.since).year()+(t-e.offset)*r}function RT(){var e,t,r,a=this.localeData().eras();for(e=0,t=a.length;es&&(t=s),ZT.call(this,e,t,r,a,l))}function ZT(e,t,r,a,l){var s=Kg(e,t,r,a,l),u=Ua(s.year,0,s.dayOfYear);return this.year(u.getUTCFullYear()),this.month(u.getUTCMonth()),this.date(u.getUTCDate()),this}be("Q",0,"Qo","quarter");en("quarter","Q");tn("quarter",7);ce("Q",Ng);ct("Q",function(e,t){t[Tr]=(We(e)-1)*3});function JT(e){return e==null?Math.ceil((this.month()+1)/3):this.month((e-1)*3+this.month()%3)}be("D",["DD",2],"Do","date");en("date","D");tn("date",9);ce("D",yt);ce("DD",yt,qn);ce("Do",function(e,t){return e?t._dayOfMonthOrdinalParse||t._ordinalParse:t._dayOfMonthOrdinalParseLenient});ct(["D","DD"],nr);ct("Do",function(e,t){t[nr]=We(e.match(yt)[0])});var vm=la("Date",!0);be("DDD",["DDDD",3],"DDDo","dayOfYear");en("dayOfYear","DDD");tn("dayOfYear",4);ce("DDD",Oo);ce("DDDD",Bg);ct(["DDD","DDDD"],function(e,t,r){r._dayOfYear=We(e)});function XT(e){var t=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return e==null?t:this.add(e-t,"d")}be("m",["mm",2],0,"minute");en("minute","m");tn("minute",14);ce("m",yt);ce("mm",yt,qn);ct(["m","mm"],Gn);var eM=la("Minutes",!1);be("s",["ss",2],0,"second");en("second","s");tn("second",15);ce("s",yt);ce("ss",yt,qn);ct(["s","ss"],Mr);var tM=la("Seconds",!1);be("S",0,0,function(){return~~(this.millisecond()/100)});be(0,["SS",2],0,function(){return~~(this.millisecond()/10)});be(0,["SSS",3],0,"millisecond");be(0,["SSSS",4],0,function(){return this.millisecond()*10});be(0,["SSSSS",5],0,function(){return this.millisecond()*100});be(0,["SSSSSS",6],0,function(){return this.millisecond()*1e3});be(0,["SSSSSSS",7],0,function(){return this.millisecond()*1e4});be(0,["SSSSSSSS",8],0,function(){return this.millisecond()*1e5});be(0,["SSSSSSSSS",9],0,function(){return this.millisecond()*1e6});en("millisecond","ms");tn("millisecond",16);ce("S",Oo,Ng);ce("SS",Oo,qn);ce("SSS",Oo,Bg);var jr,pm;for(jr="SSSS";jr.length<=9;jr+="S")ce(jr,oa);function nM(e,t){t[vi]=We(("0."+e)*1e3)}for(jr="S";jr.length<=9;jr+="S")ct(jr,nM);pm=la("Milliseconds",!1);be("z",0,0,"zoneAbbr");be("zz",0,0,"zoneName");function rM(){return this._isUTC?"UTC":""}function iM(){return this._isUTC?"Coordinated Universal Time":""}var Q=Za.prototype;Q.add=j2;Q.calendar=rT;Q.clone=iT;Q.diff=dT;Q.endOf=wT;Q.format=mT;Q.from=vT;Q.fromNow=pT;Q.to=yT;Q.toNow=_T;Q.get=lC;Q.invalidAt=xT;Q.isAfter=aT;Q.isBefore=lT;Q.isBetween=oT;Q.isSame=sT;Q.isSameOrAfter=uT;Q.isSameOrBefore=cT;Q.isValid=qT;Q.lang=cm;Q.locale=um;Q.localeData=dm;Q.max=q2;Q.min=D2;Q.parsingFlags=PT;Q.set=oC;Q.startOf=bT;Q.subtract=Z2;Q.toArray=TT;Q.toObject=MT;Q.toDate=CT;Q.toISOString=hT;Q.inspect=gT;typeof Symbol!="undefined"&&Symbol.for!=null&&(Q[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"});Q.toJSON=DT;Q.toString=fT;Q.unix=kT;Q.valueOf=ST;Q.creationData=AT;Q.eraName=RT;Q.eraNarrow=OT;Q.eraAbbr=LT;Q.eraYear=NT;Q.year=Gg;Q.isLeapYear=MC;Q.weekYear=YT;Q.isoWeekYear=HT;Q.quarter=Q.quarters=JT;Q.month=Yg;Q.daysInMonth=kC;Q.week=Q.weeks=EC;Q.isoWeek=Q.isoWeeks=IC;Q.weeksInYear=QT;Q.weeksInWeekYear=jT;Q.isoWeeksInYear=GT;Q.isoWeeksInISOWeekYear=KT;Q.date=vm;Q.day=Q.days=HC;Q.weekday=GC;Q.isoWeekday=KC;Q.dayOfYear=XT;Q.hour=Q.hours=t2;Q.minute=Q.minutes=eM;Q.second=Q.seconds=tM;Q.millisecond=Q.milliseconds=pm;Q.utcOffset=L2;Q.utc=B2;Q.local=F2;Q.parseZone=V2;Q.hasAlignedHourOffset=U2;Q.isDST=z2;Q.isLocal=Y2;Q.isUtcOffset=H2;Q.isUtc=am;Q.isUTC=am;Q.zoneAbbr=rM;Q.zoneName=iM;Q.dates=Nn("dates accessor is deprecated. Use date instead.",vm);Q.months=Nn("months accessor is deprecated. Use month instead",Yg);Q.years=Nn("years accessor is deprecated. Use year instead",Gg);Q.zone=Nn("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",N2);Q.isDSTShifted=Nn("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",W2);function aM(e){return pt(e*1e3)}function lM(){return pt.apply(null,arguments).parseZone()}function ym(e){return e}var et=fc.prototype;et.calendar=Hk;et.longDateFormat=jk;et.invalidDate=Jk;et.ordinal=tC;et.preparse=ym;et.postformat=ym;et.relativeTime=rC;et.pastFuture=iC;et.set=Wk;et.eras=ET;et.erasParse=IT;et.erasConvertYear=$T;et.erasAbbrRegex=FT;et.erasNameRegex=BT;et.erasNarrowRegex=VT;et.months=_C;et.monthsShort=bC;et.monthsParse=SC;et.monthsRegex=TC;et.monthsShortRegex=CC;et.week=qC;et.firstDayOfYear=AC;et.firstDayOfWeek=xC;et.weekdays=VC;et.weekdaysMin=zC;et.weekdaysShort=UC;et.weekdaysParse=YC;et.weekdaysRegex=QC;et.weekdaysShortRegex=jC;et.weekdaysMinRegex=ZC;et.isPM=XC;et.meridiem=n2;function Mo(e,t,r,a){var l=Pr(),s=sr().set(a,t);return l[r](s,e)}function _m(e,t,r){if(qr(e)&&(t=e,e=void 0),e=e||"",t!=null)return Mo(e,t,r,"month");var a,l=[];for(a=0;a<12;a++)l[a]=Mo(e,a,r,"month");return l}function qc(e,t,r,a){typeof e=="boolean"?(qr(t)&&(r=t,t=void 0),t=t||""):(t=e,r=t,e=!1,qr(t)&&(r=t,t=void 0),t=t||"");var l=Pr(),s=e?l._week.dow:0,u,d=[];if(r!=null)return Mo(t,(r+s)%7,a,"day");for(u=0;u<7;u++)d[u]=Mo(t,(u+s)%7,a,"day");return d}function oM(e,t){return _m(e,t,"months")}function sM(e,t){return _m(e,t,"monthsShort")}function uM(e,t,r){return qc(e,t,r,"weekdays")}function cM(e,t,r){return qc(e,t,r,"weekdaysShort")}function dM(e,t,r){return qc(e,t,r,"weekdaysMin")}Jr("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10,r=We(e%100/10)===1?"th":t===1?"st":t===2?"nd":t===3?"rd":"th";return e+r}});ae.lang=Nn("moment.lang is deprecated. Use moment.locale instead.",Jr);ae.langData=Nn("moment.langData is deprecated. Use moment.localeData instead.",Pr);var wr=Math.abs;function fM(){var e=this._data;return this._milliseconds=wr(this._milliseconds),this._days=wr(this._days),this._months=wr(this._months),e.milliseconds=wr(e.milliseconds),e.seconds=wr(e.seconds),e.minutes=wr(e.minutes),e.hours=wr(e.hours),e.months=wr(e.months),e.years=wr(e.years),this}function bm(e,t,r,a){var l=jn(t,r);return e._milliseconds+=a*l._milliseconds,e._days+=a*l._days,e._months+=a*l._months,e._bubble()}function hM(e,t){return bm(this,e,t,1)}function gM(e,t){return bm(this,e,t,-1)}function xh(e){return e<0?Math.floor(e):Math.ceil(e)}function mM(){var e=this._milliseconds,t=this._days,r=this._months,a=this._data,l,s,u,d,f;return e>=0&&t>=0&&r>=0||e<=0&&t<=0&&r<=0||(e+=xh(Wu(r)+t)*864e5,t=0,r=0),a.milliseconds=e%1e3,l=Ln(e/1e3),a.seconds=l%60,s=Ln(l/60),a.minutes=s%60,u=Ln(s/60),a.hours=u%24,t+=Ln(u/24),f=Ln(wm(t)),r+=f,t-=xh(Wu(f)),d=Ln(r/12),r%=12,a.days=t,a.months=r,a.years=d,this}function wm(e){return e*4800/146097}function Wu(e){return e*146097/4800}function vM(e){if(!this.isValid())return NaN;var t,r,a=this._milliseconds;if(e=Bn(e),e==="month"||e==="quarter"||e==="year")switch(t=this._days+a/864e5,r=this._months+wm(t),e){case"month":return r;case"quarter":return r/3;case"year":return r/12}else switch(t=this._days+Math.round(Wu(this._months)),e){case"week":return t/7+a/6048e5;case"day":return t+a/864e5;case"hour":return t*24+a/36e5;case"minute":return t*1440+a/6e4;case"second":return t*86400+a/1e3;case"millisecond":return Math.floor(t*864e5)+a;default:throw new Error("Unknown unit "+e)}}function pM(){return this.isValid()?this._milliseconds+this._days*864e5+this._months%12*2592e6+We(this._months/12)*31536e6:NaN}function xr(e){return function(){return this.as(e)}}var yM=xr("ms"),_M=xr("s"),bM=xr("m"),wM=xr("h"),SM=xr("d"),kM=xr("w"),CM=xr("M"),TM=xr("Q"),MM=xr("y");function DM(){return jn(this)}function qM(e){return e=Bn(e),this.isValid()?this[e+"s"]():NaN}function wi(e){return function(){return this.isValid()?this._data[e]:NaN}}var PM=wi("milliseconds"),xM=wi("seconds"),AM=wi("minutes"),EM=wi("hours"),IM=wi("days"),$M=wi("months"),RM=wi("years");function OM(){return Ln(this.days()/7)}var kr=Math.round,Gi={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function LM(e,t,r,a,l){return l.relativeTime(t||1,!!r,e,a)}function NM(e,t,r,a){var l=jn(e).abs(),s=kr(l.as("s")),u=kr(l.as("m")),d=kr(l.as("h")),f=kr(l.as("d")),g=kr(l.as("M")),v=kr(l.as("w")),T=kr(l.as("y")),M=s<=r.ss&&["s",s]||s0,M[4]=a,LM.apply(null,M)}function BM(e){return e===void 0?kr:typeof e=="function"?(kr=e,!0):!1}function FM(e,t){return Gi[e]===void 0?!1:t===void 0?Gi[e]:(Gi[e]=t,e==="s"&&(Gi.ss=t-1),!0)}function VM(e,t){if(!this.isValid())return this.localeData().invalidDate();var r=!1,a=Gi,l,s;return typeof e=="object"&&(t=e,e=!1),typeof e=="boolean"&&(r=e),typeof t=="object"&&(a=Object.assign({},Gi,t),t.s!=null&&t.ss==null&&(a.ss=t.s-1)),l=this.localeData(),s=NM(this,!r,a,l),r&&(s=l.pastFuture(+this,s)),l.postformat(s)}var Du=Math.abs;function zi(e){return(e>0)-(e<0)||+e}function Wo(){if(!this.isValid())return this.localeData().invalidDate();var e=Du(this._milliseconds)/1e3,t=Du(this._days),r=Du(this._months),a,l,s,u,d=this.asSeconds(),f,g,v,T;return d?(a=Ln(e/60),l=Ln(a/60),e%=60,a%=60,s=Ln(r/12),r%=12,u=e?e.toFixed(3).replace(/\.?0+$/,""):"",f=d<0?"-":"",g=zi(this._months)!==zi(d)?"-":"",v=zi(this._days)!==zi(d)?"-":"",T=zi(this._milliseconds)!==zi(d)?"-":"",f+"P"+(s?g+s+"Y":"")+(r?g+r+"M":"")+(t?v+t+"D":"")+(l||a||e?"T":"")+(l?T+l+"H":"")+(a?T+a+"M":"")+(e?T+u+"S":"")):"P0D"}var je=Uo.prototype;je.isValid=I2;je.abs=fM;je.add=hM;je.subtract=gM;je.as=vM;je.asMilliseconds=yM;je.asSeconds=_M;je.asMinutes=bM;je.asHours=wM;je.asDays=SM;je.asWeeks=kM;je.asMonths=CM;je.asQuarters=TM;je.asYears=MM;je.valueOf=pM;je._bubble=mM;je.clone=DM;je.get=qM;je.milliseconds=PM;je.seconds=xM;je.minutes=AM;je.hours=EM;je.days=IM;je.weeks=OM;je.months=$M;je.years=RM;je.humanize=VM;je.toISOString=Wo;je.toString=Wo;je.toJSON=Wo;je.locale=um;je.localeData=dm;je.toIsoString=Nn("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Wo);je.lang=cm;be("X",0,0,"unix");be("x",0,0,"valueOf");ce("x",No);ce("X",uC);ct("X",function(e,t,r){r._d=new Date(parseFloat(e)*1e3)});ct("x",function(e,t,r){r._d=new Date(We(e))});//! moment.js +ae.version="2.29.4";Uk(pt);ae.fn=Q;ae.min=P2;ae.max=x2;ae.now=A2;ae.utc=sr;ae.unix=aM;ae.months=oM;ae.isDate=ja;ae.locale=Jr;ae.invalid=Io;ae.duration=jn;ae.isMoment=Qn;ae.weekdays=uM;ae.parseZone=lM;ae.localeData=Pr;ae.isDuration=lo;ae.monthsShort=sM;ae.weekdaysMin=dM;ae.defineLocale=bc;ae.updateLocale=l2;ae.locales=o2;ae.weekdaysShort=cM;ae.normalizeUnits=Bn;ae.relativeTimeRounding=BM;ae.relativeTimeThreshold=FM;ae.calendarFormat=nT;ae.prototype=Q;ae.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"};const UM=un({name:"UserChat",props:["account-pubkey","peer-pubkeys","profiles","events"],components:{UserProfile:Qa},data:function(){return{selectedPubkey:null,selectedProfile:null,dmEvents:[],newMessage:null,rawMessage:null,showRawMessage:!1}},watch:{events(e){this.dmEvents=((e==null?void 0:e.events)||[]).map(t=>{var l;const r=this.accountPubkey===t.pubkey,a={isJson:!1,message:t.content,sent:r,avatar:r?$q.config.staticPath+"/images/blank-avatar.webp":((l=this.selectedProfile)==null?void 0:l.picture)||$q.config.staticPath+"/images/blank-avatar.webp",dateFrom:ae(t.created_at*1e3).fromNow()};return isNaN(t.content)&&isJson(t.content)&&(a.isJson=!0,a.message=JSON.parse(t.content)),a}),setTimeout(()=>{document.getElementById("bottom-user-chat").scrollIntoView()},0)}},methods:{pubkeySelected(e){this.selectedPubkey=e,this.selectedProfile=this.profiles.find(t=>t.pubkey===e),this.$emit("chat-selected",e),setTimeout(()=>{document.getElementById("bottom-user-chat").scrollIntoView()},100)},async sendDirectMesage(){this.$emit("send-dm",{to:this.selectedPubkey,message:this.newMessage}),this.newMessage=null},pubkeyAlias(e){return Cg({dictionaries:[Tg,Mg,Dg],length:2,separator:" ",style:"capital",seed:e})},showMessageRawData:function(e){var t;this.rawMessage=JSON.stringify((t=this.dmEvents[e])==null?void 0:t.message,null,2),this.showRawMessage=!0}},created:async function(){}}),zM={style:{width:"100%"},class:"q-pa-md row justify-center"},WM={style:{width:"100%"}},YM={key:0},HM={key:0},GM={key:0},KM=S("strong",null,"New order:",-1),QM=[KM],jM={key:1},ZM=S("strong",null,"Reply sent for order: ",-1),JM=[ZM],XM={key:2},eD=["textContent"],tD=["textContent","onClick"],nD={key:1},rD=["textContent"],iD=S("div",{id:"bottom-user-chat"},null,-1),aD={class:"row q-mt-lg"};function lD(e,t,r,a,l,s){const u=Xr("user-profile");return R(),ne("div",null,[y(Yt,{bordered:"",class:"q-mb-md"},{default:_(()=>[y(Ne,{horizontal:""},{default:_(()=>[y(Ne,{class:"col-sm-2 col-md-4"},{default:_(()=>[(R(!0),ne($t,null,Ut(e.peerPubkeys,d=>(R(),oe(Vt,{key:d,clickable:"",onClick:f=>e.pubkeySelected(d),active:e.selectedPubkey===d,class:"cursor-pointer"},{default:_(()=>[y(u,{pubkey:d,profiles:e.profiles},null,8,["pubkey","profiles"])]),_:2},1032,["onClick","active"]))),128))]),_:1}),y(ut,{vertical:""}),y(Ne,{style:{width:"100%"}},{default:_(()=>[S("div",zM,[S("div",WM,[y(Fk,{style:{height:"500px"}},{default:_(()=>[e.dmEvents?(R(),ne("div",YM,[(R(!0),ne($t,null,Ut(e.dmEvents,(d,f)=>{var g;return R(),oe(Bk,{key:f,name:d.sent?"me":((g=e.selectedProfile)==null?void 0:g.name)||e.pubkeyAlias(e.selectedPubkey),sent:d.sent,avatar:d.avatar,stamp:d.dateFrom},{default:_(()=>[d.isJson?(R(),ne("div",HM,[d.message.type===0?(R(),ne("div",GM,QM)):d.message.type===1?(R(),ne("div",jM,JM)):d.message.type===2?(R(),ne("div",XM,[d.message.paid?(R(),oe(Tn,{key:0,color:"green"},{default:_(()=>[ke("Paid ")]),_:1})):$e("",!0),d.message.shipped?(R(),oe(Tn,{key:1,color:"green"},{default:_(()=>[ke("Shipped ")]),_:1})):$e("",!0)])):$e("",!0),S("div",null,[S("span",{textContent:me(d.message.message)},null,8,eD),y(Tn,{class:"gt-sm",color:"orange"},{default:_(()=>[S("span",{textContent:me(d.message.id),onClick:v=>e.showOrderDetails(d.message.id),class:"cursor-pointer"},null,8,tD)]),_:2},1024)]),y(Tn,{onClick:v=>e.showMessageRawData(f),class:"cursor-pointer"},{default:_(()=>[ke("...")]),_:2},1032,["onClick"])])):(R(),ne("div",nD,[S("span",{textContent:me(d.message)},null,8,rD)]))]),_:2},1032,["name","sent","avatar","stamp"])}),128))])):$e("",!0),iD]),_:1})])])]),_:1})]),_:1}),y(ut),y(Ne,{horizontal:""},{default:_(()=>[y(Ne,{class:"col-sm-2 col-md-4"}),y(Ne,{style:{width:"100%"}},{default:_(()=>[y(Vk,{onSubmit:e.sendDirectMesage,class:"auto-width"},{default:_(()=>[y(It,{class:"rounded-pill",style:{width:"100%"},rounded:"",outlined:"",clearable:"",modelValue:e.newMessage,"onUpdate:modelValue":t[0]||(t[0]=d=>e.newMessage=d),modelModifiers:{trim:!0},label:"Write a message"},{append:_(()=>[y(Ht,{name:"send",class:"cursor-pointer",color:"secondary",onClick:e.sendDirectMesage},null,8,["onClick"])]),_:1},8,["modelValue"])]),_:1},8,["onSubmit"])]),_:1})]),_:1})]),_:1}),y(Ra,{modelValue:e.showRawMessage,"onUpdate:modelValue":t[2]||(t[2]=d=>e.showRawMessage=d),position:"top"},{default:_(()=>[y(Yt,{class:"q-pa-lg q-pt-xl",style:{width:"500px"}},{default:_(()=>[y(It,{filled:"",dense:"",type:"textarea",rows:"20",modelValue:e.rawMessage,"onUpdate:modelValue":t[1]||(t[1]=d=>e.rawMessage=d),modelModifiers:{trim:!0},label:"Raw Data"},null,8,["modelValue"]),S("div",aD,[sn((R(),oe(ge,{flat:"",color:"grey",class:"q-ml-auto"},{default:_(()=>[ke("Close")]),_:1})),[[Sr]])])]),_:1})]),_:1},8,["modelValue"])])}var oD=Mn(UM,[["render",lD]]);const sD=un({name:"ShoppingCartList",props:["carts","profiles"],components:{UserProfile:Qa},data:function(){return{}},computed:{},methods:{formatCurrency:function(e,t){return formatCurrency(e,t)},cartTotalFormatted(e){var r;if(!((r=e.products)!=null&&r.length))return"";const t=e.products.reduce((a,l)=>l.price*l.orderedQuantity+a,0);return formatCurrency(t,e.products[0].currency)},removeProduct:function(e,t){this.$emit("remove-from-cart",{stallId:e,productId:t})},removeCart:function(e){this.$emit("remove-cart",e)},quantityChanged:function(e){this.$emit("add-to-cart",e)},proceedToCheckout:function(e){this.$emit("checkout-cart",e)}},created(){}}),uD=S("strong",null,"No products in cart!",-1),cD=["src"],dD=["src"],fD={class:"text-caption text-grey ellipsis-2-lines"},hD={class:"q-ma-md"};function gD(e,t,r,a,l,s){var d;const u=Xr("user-profile");return R(),ne("div",null,[(d=e.carts)!=null&&d.length?$e("",!0):(R(),oe(Yt,{key:0,bordered:"",class:"q-mb-md"},{default:_(()=>[y(Ne,null,{default:_(()=>[uD]),_:1})]),_:1})),(R(!0),ne($t,null,Ut(e.carts,f=>(R(),ne("div",{key:f.id},[y(Yt,{bordered:"",class:"q-mb-md"},{default:_(()=>[y(Vt,null,{default:_(()=>{var g;return[y(u,{pubkey:f.merchant,profiles:e.profiles,description:(g=f.products[0])==null?void 0:g.stallName},null,8,["pubkey","profiles","description"]),y(xe,{side:""},{default:_(()=>[S("div",null,[y(ge,{onClick:v=>e.removeCart(f.id),flat:"",color:"pink"},{default:_(()=>[ke(" Clear Cart ")]),_:2},1032,["onClick"])])]),_:2},1024)]}),_:2},1024),y(ut),y(Ne,{horizontal:""},{default:_(()=>[y(Ne,{class:"col-12"},{default:_(()=>[y(rr,{class:"q-mt-md"},{default:_(()=>[(R(!0),ne($t,null,Ut(f.products,g=>(R(),oe(Vt,{key:g.id},{default:_(()=>[y(xe,{avatar:""},{default:_(()=>[y(Zr,null,{default:_(()=>[g.images[0]||g.image?(R(),ne("img",{key:0,src:g.images[0]||g.image},null,8,cD)):(R(),ne("img",{key:1,src:e.$q.config.staticPath+"/images/placeholder.png"},null,8,dD))]),_:2},1024)]),_:2},1024),y(xe,{class:"q-mt-sm"},{default:_(()=>[y(He,null,{default:_(()=>[ke(me(g.name),1)]),_:2},1024),y(He,{class:"gt-sm"},{default:_(()=>[S("div",fD,[S("p",null,me(g.description),1)])]),_:2},1024)]),_:2},1024),y(xe,{class:"q-mt-sm gt-sm"},{default:_(()=>[y(He,null,{default:_(()=>[S("strong",null,me(e.formatCurrency(g.price,g.currency)),1)]),_:2},1024),y(He)]),_:2},1024),y(xe,{class:"q-ma-sm"},{default:_(()=>[y(It,{modelValue:g.orderedQuantity,"onUpdate:modelValue":v=>g.orderedQuantity=v,modelModifiers:{number:!0},onChange:v=>e.quantityChanged(g),type:"number",rounded:"",outlined:"",min:"1",max:g.quantity},null,8,["modelValue","onUpdate:modelValue","onChange","max"])]),_:2},1024),y(xe,null,{default:_(()=>[y(He,null,{default:_(()=>[S("strong",null,me(e.formatCurrency(g.price*g.orderedQuantity,g.currency)),1)]),_:2},1024)]),_:2},1024),y(xe,{side:""},{default:_(()=>[S("div",null,[y(ge,{flat:"",dense:"",round:"",icon:"delete",onClick:v=>e.removeProduct(g.stall_id,g.id)},null,8,["onClick"])])]),_:2},1024)]),_:2},1024))),128))]),_:2},1024)]),_:2},1024)]),_:2},1024),y(ut),y(_i,{align:"right"},{default:_(()=>[ke(" Total: "),S("strong",hD,me(e.cartTotalFormatted(f)),1),y(ge,{onClick:g=>e.proceedToCheckout(f),flat:"",color:"primary"},{default:_(()=>[ke(" Proceed to Checkout ")]),_:2},1032,["onClick"])]),_:2},1024)]),_:2},1024)]))),128))])}var mD=Mn(sD,[["render",gD]]);const vD=un({name:"ShoppingCartCheckout",props:["cart","stall","customer-pubkey","profiles"],components:{UserProfile:Qa},data:function(){return{orderConfirmed:!1,paymentMethod:"ln",shippingZone:null,contactData:{email:null,npub:null,address:null,message:null},paymentOptions:[{label:"Lightning Network",value:"ln"},{label:"BTC Onchain",value:"btc"},{label:"Cashu",value:"cashu"}]}},computed:{cartTotal(){var e;return(e=this.cart.products)!=null&&e.length?this.cart.products.reduce((t,r)=>r.price*r.orderedQuantity+t,0):0},cartTotalWithShipping(){return this.shippingZone?this.cartTotal+this.shippingZone.cost:this.cartTotal},shippingZoneLabel(){if(!this.shippingZone)return"Shipping Zone";let e=this.shippingZone.name||this.shippingZone.id||"Shipping Zone";return e=e.substring(0,10),e.length<10?e:e+"..."}},methods:{formatCurrency:function(e,t){return formatCurrency(e,t)},selectShippingZone:function(e){this.shippingZone=e},confirmOrder:function(){if(!this.shippingZone){this.$q.notify({timeout:5e3,type:"warning",message:"Please select a shipping zone!"});return}this.orderConfirmed=!0},async placeOrder(){if(!this.shippingZone){this.$q.notify({timeout:5e3,type:"warning",message:"Please select a shipping zone!"});return}if(!this.customerPubkey){this.$emit("login-required");return}const e={address:this.contactData.address,message:this.contactData.message,contact:{nostr:this.contactData.npub,email:this.contactData.email},items:Array.from(this.cart.products,a=>({product_id:a.id,quantity:a.orderedQuantity})),shipping_id:this.shippingZone.id,type:0},t=Math.floor(Date.now()/1e3);e.id=await hash([this.customerPubkey,t,JSON.stringify(e)].join(":"));const r={...await NostrTools.getBlankEvent(),kind:4,created_at:t,tags:[["p",this.stall.pubkey]],pubkey:this.customerPubkey};this.$emit("place-order",{event:r,order:e,cartId:this.cart.id})},goToShoppingCart:function(){this.$emit("change-page","shopping-cart-list")},merchantProfile(e){var t;return(t=this.profiles)==null?void 0:t.find(r=>r.pubkey===e)}},created(){var e;((e=this.stall.shipping)==null?void 0:e.length)===1&&(this.shippingZone=this.stall.shipping[0])}}),pD={class:"row q-mt-md q-ml-md q-pr-md"},yD=S("div",{class:"col-xs-12 col-sm-12 col-md-2 q-mt-md"},[S("strong",null,"Message:")],-1),_D={class:"col-xs-12 col-sm-12 col-md-10"},bD={class:"row q-mt-md q-ml-md q-pr-md"},wD=S("div",{class:"col-xs-12 col-sm-12 col-md-2 q-mt-md"},[S("strong",null,"Address:")],-1),SD={class:"col-xs-12 col-sm-12 col-md-10"},kD={class:"row q-mt-md q-ml-md q-pr-md"},CD=S("div",{class:"col-xs-12 col-sm-12 col-md-2 q-mt-md"},[S("strong",null,"Email:")],-1),TD={class:"col-xs-12 col-sm-12 col-md-10"},MD={class:"row q-mt-md q-ml-md q-pr-md"},DD=S("div",{class:"col-xs-12 col-sm-12 col-md-2 q-mt-md"},[S("strong",null,"Npub:")],-1),qD={class:"col-xs-12 col-sm-12 col-md-10"},PD={class:"row q-mt-md"},xD=S("div",{class:"col-xs-12 col-sm-12 col-md-4"},[S("strong",null,"Subtotal:")],-1),AD={class:"col-xs-12 col-sm-12 col-md-4"},ED=S("div",{class:"col-xs-12 col-sm-12 col-md-4"},null,-1),ID={class:"row q-mt-md"},$D=S("div",{class:"col-xs-12 col-sm-12 col-md-4"},[S("strong",null,"Shipping:")],-1),RD={class:"col-xs-12 col-sm-12 col-md-4"},OD={key:0},LD={class:"col-xs-12 col-sm-12 col-md-4"},ND=["textContent"],BD=["textContent"],FD={class:"row q-mt-md"},VD=S("div",{class:"col-xs-12 col-sm-12 col-md-4"},[S("strong",null,"Total:")],-1),UD={class:"col-xs-12 col-sm-12 col-md-4"},zD=S("div",{class:"col-xs-12 col-sm-12 col-md-4"},null,-1),WD={key:0,class:"row q-mt-md"},YD={class:"col"},HD=S("strong",null,"Payment Method",-1),GD={key:0},KD={key:1};function QD(e,t,r,a,l,s){const u=Xr("user-profile");return R(),ne("div",null,[e.cart&&e.stall?(R(),oe(Yt,{key:0,bordered:"",class:"q-mb-md"},{default:_(()=>[y(Vt,null,{default:_(()=>{var d;return[y(u,{pubkey:e.cart.merchant,profiles:e.profiles,description:(d=e.cart.products[0])==null?void 0:d.stallName},null,8,["pubkey","profiles","description"]),y(xe,{side:""})]}),_:1}),y(ut),e.orderConfirmed?(R(),oe(Ne,{key:0},{default:_(()=>[S("div",pD,[yD,S("div",_D,[y(It,{modelValue:e.contactData.message,"onUpdate:modelValue":t[0]||(t[0]=d=>e.contactData.message=d),modelModifiers:{trim:!0},outlined:"",type:"textarea",rows:"3",label:"Message (optional)",hint:"Message merchant about additional order needs"},null,8,["modelValue"])])]),S("div",bD,[wD,S("div",SD,[y(It,{modelValue:e.contactData.address,"onUpdate:modelValue":t[1]||(t[1]=d=>e.contactData.address=d),modelModifiers:{trim:!0},outlined:"",type:"textarea",rows:"3",label:"Address (optional)",hint:"Must provide for physical shipping"},null,8,["modelValue"])])]),S("div",kD,[CD,S("div",TD,[y(It,{modelValue:e.contactData.email,"onUpdate:modelValue":t[2]||(t[2]=d=>e.contactData.email=d),modelModifiers:{trim:!0},type:"email",outlined:"",label:"Email (optional)",hint:"Merchant may not use email"},null,8,["modelValue"])])]),S("div",MD,[DD,S("div",qD,[y(It,{modelValue:e.contactData.npub,"onUpdate:modelValue":t[3]||(t[3]=d=>e.contactData.npub=d),modelModifiers:{trim:!0},outlined:"",label:"Alternative Npub (optional)",hint:"Use a different Npub to communicate with the merchant"},null,8,["modelValue"])])])]),_:1})):(R(),oe(Ne,{key:1,horizontal:""},{default:_(()=>[y(Ne,{class:"col-7"},{default:_(()=>[S("div",PD,[xD,S("div",AD,[S("strong",null,me(e.formatCurrency(e.cartTotal,e.stall.currency)),1)]),ED]),S("div",ID,[$D,S("div",RD,[e.shippingZone?(R(),ne("strong",OD,me(e.formatCurrency(e.shippingZone.cost,e.stall.currency)),1)):$e("",!0)]),S("div",LD,[y(Iu,{unelevated:"",color:"secondary",rounded:"",label:e.shippingZoneLabel},{default:_(()=>[(R(!0),ne($t,null,Ut(e.stall.shipping,d=>sn((R(),oe(Vt,{onClick:f=>e.selectShippingZone(d),key:d.id,clickable:""},{default:_(()=>[y(xe,null,{default:_(()=>[y(He,null,{default:_(()=>[S("span",{textContent:me(d.name)},null,8,ND)]),_:2},1024),y(He,{caption:""},{default:_(()=>{var f;return[S("span",{textContent:me((f=d.countries)==null?void 0:f.join(", "))},null,8,BD)]}),_:2},1024)]),_:2},1024)]),_:2},1032,["onClick"])),[[Sr]])),128))]),_:1},8,["label"])])]),y(ut,{class:"q-mt-sm"}),S("div",FD,[VD,S("div",UD,[S("strong",null,me(e.formatCurrency(e.cartTotalWithShipping,e.stall.currency)),1)]),zD]),e.shippingZone?(R(),ne("div",WD,[S("div",YD,[y(Tn,{color:"secondary"},{default:_(()=>[ke(" Additional per product shipping costs might apply.")]),_:1})])])):$e("",!0)]),_:1}),y(ut,{vertical:""}),y(Ne,null,{default:_(()=>[HD,y(Xb,{modelValue:e.paymentMethod,"onUpdate:modelValue":t[4]||(t[4]=d=>e.paymentMethod=d),options:e.paymentOptions,color:"green",disable:""},null,8,["modelValue","options"])]),_:1})]),_:1})),y(ut),y(_i,{align:"right"},{default:_(()=>[e.orderConfirmed?(R(),ne("div",GD,[y(ge,{onClick:t[5]||(t[5]=d=>e.orderConfirmed=!1),flat:"",color:"grey"},{default:_(()=>[ke(" Back ")]),_:1}),y(ge,{onClick:t[6]||(t[6]=d=>e.placeOrder()),flat:"",color:"primary"},{default:_(()=>[ke(" Place Order ")]),_:1})])):(R(),ne("div",KD,[y(ge,{onClick:e.goToShoppingCart,flat:"",color:"grey"},{default:_(()=>[ke(" Back ")]),_:1},8,["onClick"]),y(ge,{onClick:e.confirmOrder,flat:"",color:"primary"},{default:_(()=>[ke(" Confirm ")]),_:1},8,["onClick"])]))]),_:1})]),_:1})):$e("",!0)])}var jD=Mn(vD,[["render",QD]]);const{passive:hi}=Xi;var ZD=Je({name:"QInfiniteScroll",props:{offset:{type:Number,default:500},debounce:{type:[String,Number],default:100},scrollTarget:{default:void 0},initialIndex:Number,disable:Boolean,reverse:Boolean},emits:["load"],setup(e,{slots:t,emit:r}){const a=se(!1),l=se(!0),s=se(null),u=se(null);let d=e.initialIndex||0,f,g;const v=I(()=>"q-infinite-scroll__loading"+(a.value===!0?"":" invisible"));function T(){if(e.disable===!0||a.value===!0||l.value===!1)return;const z=Zl(f),H=fu(f),ye=nh(f);e.reverse===!1?Math.round(H+ye+e.offset)>=Math.round(z)&&M():Math.round(H)<=e.offset&&M()}function M(){if(e.disable===!0||a.value===!0||l.value===!1)return;d++,a.value=!0;const z=Zl(f);r("load",d,H=>{l.value===!0&&(a.value=!1,kn(()=>{if(e.reverse===!0){const ye=Zl(f),_e=fu(f),Ae=ye-z;Oa(f,_e+Ae)}H===!0?$():s.value&&s.value.closest("body")&&g()}))})}function b(){d=0}function x(){l.value===!1&&(l.value=!0,f.addEventListener("scroll",g,hi)),T()}function $(){l.value===!0&&(l.value=!1,a.value=!1,f.removeEventListener("scroll",g,hi),g!==void 0&&g.cancel!==void 0&&g.cancel())}function L(){if(f&&l.value===!0&&f.removeEventListener("scroll",g,hi),f=Do(s.value,e.scrollTarget),l.value===!0){if(f.addEventListener("scroll",g,hi),e.reverse===!0){const z=Zl(f),H=nh(f);Oa(f,z-H)}T()}}function F(z){d=z}function W(z){z=parseInt(z,10);const H=g;g=z<=0?T:Zu(T,isNaN(z)===!0?100:z),f&&l.value===!0&&(H!==void 0&&f.removeEventListener("scroll",H,hi),f.addEventListener("scroll",g,hi))}function D(z){if(A.value===!0){if(u.value===null){z!==!0&&kn(()=>{D(!0)});return}const H=`${a.value===!0?"un":""}pauseAnimations`;Array.from(u.value.getElementsByTagName("svg")).forEach(ye=>{ye[H]()})}}const A=I(()=>e.disable!==!0&&l.value===!0);ze([a,A],()=>{D()}),ze(()=>e.disable,z=>{z===!0?$():x()}),ze(()=>e.reverse,()=>{a.value===!1&&l.value===!0&&T()}),ze(()=>e.scrollTarget,L),ze(()=>e.debounce,W);let N=!1;aa(()=>{N!==!1&&f&&Oa(f,N)}),ia(()=>{N=f?fu(f):!1}),Gt(()=>{l.value===!0&&f.removeEventListener("scroll",g,hi)}),ei(()=>{W(e.debounce),L(),a.value===!1&&D()});const J=Dt();return Object.assign(J.proxy,{poll:()=>{g!==void 0&&g()},trigger:M,stop:$,reset:b,resume:x,setIndex:F}),()=>{const z=Oh(t.default,[]);return A.value===!0&&z[e.reverse===!1?"push":"unshift"](E("div",{ref:u,class:v.value},Mt(t.loading))),E("div",{class:"q-infinite-scroll",ref:s},z)}}}),Yu={exports:{}};/** + * @license + * Lodash + * Copyright OpenJS Foundation and other contributors + * Released under MIT license + * Based on Underscore.js 1.8.3 + * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors + */(function(e,t){(function(){var r,a="4.17.21",l=200,s="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",u="Expected a function",d="Invalid `variable` option passed into `_.template`",f="__lodash_hash_undefined__",g=500,v="__lodash_placeholder__",T=1,M=2,b=4,x=1,$=2,L=1,F=2,W=4,D=8,A=16,N=32,J=64,z=128,H=256,ye=512,_e=30,Ae="...",lt=800,te=16,Pe=1,Be=2,j=3,K=1/0,ve=9007199254740991,rt=17976931348623157e292,X=0/0,Z=4294967295,he=Z-1,fe=Z>>>1,Ke=[["ary",z],["bind",L],["bindKey",F],["curry",D],["curryRight",A],["flip",ye],["partial",N],["partialRight",J],["rearg",H]],Ue="[object Arguments]",we="[object Array]",Me="[object AsyncFunction]",ft="[object Boolean]",ee="[object Date]",wt="[object DOMException]",nn="[object Error]",cn="[object Function]",rn="[object GeneratorFunction]",qt="[object Map]",Kt="[object Number]",Zn="[object Null]",Qt="[object Object]",Fn="[object Promise]",Ar="[object Proxy]",St="[object RegExp]",G="[object Set]",de="[object String]",qe="[object Symbol]",gt="[object Undefined]",it="[object WeakMap]",Ze="[object WeakSet]",Fe="[object ArrayBuffer]",mt="[object DataView]",Pt="[object Float32Array]",dn="[object Float64Array]",Jn="[object Int8Array]",ni="[object Int16Array]",Vn="[object Int32Array]",jt="[object Uint8Array]",Si="[object Uint8ClampedArray]",ki="[object Uint16Array]",Ci="[object Uint32Array]",el=/\b__p \+= '';/g,tl=/\b(__p \+=) '' \+/g,nl=/(__e\(.*?\)|\b__t\)) \+\n'';/g,rl=/&(?:amp|lt|gt|quot|#39);/g,il=/[&<>"']/g,al=RegExp(rl.source),Yo=RegExp(il.source),ll=/<%-([\s\S]+?)%>/g,Ti=/<%([\s\S]+?)%>/g,Er=/<%=([\s\S]+?)%>/g,Ir=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Ho=/^\w*$/,Go=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,sa=/[\\^$.*+?()[\]{}|]/g,Ko=RegExp(sa.source),ua=/^\s+/,Qo=/\s/,jo=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Zo=/\{\n\/\* \[wrapped with (.+)\] \*/,Jo=/,? & /,$r=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Rr=/[()=,{}\[\]\/\s]/,cr=/\\(\\)?/g,Or=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Mi=/\w*$/,Xo=/^[-+]0x[0-9a-f]+$/i,ol=/^0b[01]+$/i,sl=/^\[object .+?Constructor\]$/,ul=/^0o[0-7]+$/i,cl=/^(?:0|[1-9]\d*)$/,C=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,le=/($^)/,ie=/['\n\r\u2028\u2029\\]/g,De="\\ud800-\\udfff",st="\\u0300-\\u036f",tt="\\ufe20-\\ufe2f",kt="\\u20d0-\\u20ff",Nt=st+tt+kt,Di="\\u2700-\\u27bf",Pc="a-z\\xdf-\\xf6\\xf8-\\xff",km="\\xac\\xb1\\xd7\\xf7",Cm="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Tm="\\u2000-\\u206f",Mm=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",xc="A-Z\\xc0-\\xd6\\xd8-\\xde",Ac="\\ufe0e\\ufe0f",Ec=km+Cm+Tm+Mm,es="['\u2019]",Dm="["+De+"]",Ic="["+Ec+"]",dl="["+Nt+"]",$c="\\d+",qm="["+Di+"]",Rc="["+Pc+"]",Oc="[^"+De+Ec+$c+Di+Pc+xc+"]",ts="\\ud83c[\\udffb-\\udfff]",Pm="(?:"+dl+"|"+ts+")",Lc="[^"+De+"]",ns="(?:\\ud83c[\\udde6-\\uddff]){2}",rs="[\\ud800-\\udbff][\\udc00-\\udfff]",qi="["+xc+"]",Nc="\\u200d",Bc="(?:"+Rc+"|"+Oc+")",xm="(?:"+qi+"|"+Oc+")",Fc="(?:"+es+"(?:d|ll|m|re|s|t|ve))?",Vc="(?:"+es+"(?:D|LL|M|RE|S|T|VE))?",Uc=Pm+"?",zc="["+Ac+"]?",Am="(?:"+Nc+"(?:"+[Lc,ns,rs].join("|")+")"+zc+Uc+")*",Em="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Im="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Wc=zc+Uc+Am,$m="(?:"+[qm,ns,rs].join("|")+")"+Wc,Rm="(?:"+[Lc+dl+"?",dl,ns,rs,Dm].join("|")+")",Om=RegExp(es,"g"),Lm=RegExp(dl,"g"),is=RegExp(ts+"(?="+ts+")|"+Rm+Wc,"g"),Nm=RegExp([qi+"?"+Rc+"+"+Fc+"(?="+[Ic,qi,"$"].join("|")+")",xm+"+"+Vc+"(?="+[Ic,qi+Bc,"$"].join("|")+")",qi+"?"+Bc+"+"+Fc,qi+"+"+Vc,Im,Em,$c,$m].join("|"),"g"),Bm=RegExp("["+Nc+De+Nt+Ac+"]"),Fm=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Vm=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Um=-1,vt={};vt[Pt]=vt[dn]=vt[Jn]=vt[ni]=vt[Vn]=vt[jt]=vt[Si]=vt[ki]=vt[Ci]=!0,vt[Ue]=vt[we]=vt[Fe]=vt[ft]=vt[mt]=vt[ee]=vt[nn]=vt[cn]=vt[qt]=vt[Kt]=vt[Qt]=vt[St]=vt[G]=vt[de]=vt[it]=!1;var ht={};ht[Ue]=ht[we]=ht[Fe]=ht[mt]=ht[ft]=ht[ee]=ht[Pt]=ht[dn]=ht[Jn]=ht[ni]=ht[Vn]=ht[qt]=ht[Kt]=ht[Qt]=ht[St]=ht[G]=ht[de]=ht[qe]=ht[jt]=ht[Si]=ht[ki]=ht[Ci]=!0,ht[nn]=ht[cn]=ht[it]=!1;var zm={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},Wm={"&":"&","<":"<",">":">",'"':""","'":"'"},Ym={"&":"&","<":"<",">":">",""":'"',"'":"'"},Hm={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Gm=parseFloat,Km=parseInt,Yc=typeof Ma=="object"&&Ma&&Ma.Object===Object&&Ma,Qm=typeof self=="object"&&self&&self.Object===Object&&self,zt=Yc||Qm||Function("return this")(),as=t&&!t.nodeType&&t,ri=as&&!0&&e&&!e.nodeType&&e,Hc=ri&&ri.exports===as,ls=Hc&&Yc.process,Pn=function(){try{var q=ri&&ri.require&&ri.require("util").types;return q||ls&&ls.binding&&ls.binding("util")}catch{}}(),Gc=Pn&&Pn.isArrayBuffer,Kc=Pn&&Pn.isDate,Qc=Pn&&Pn.isMap,jc=Pn&&Pn.isRegExp,Zc=Pn&&Pn.isSet,Jc=Pn&&Pn.isTypedArray;function pn(q,B,O){switch(O.length){case 0:return q.call(B);case 1:return q.call(B,O[0]);case 2:return q.call(B,O[0],O[1]);case 3:return q.call(B,O[0],O[1],O[2])}return q.apply(B,O)}function jm(q,B,O,ue){for(var Ee=-1,nt=q==null?0:q.length;++Ee-1}function os(q,B,O){for(var ue=-1,Ee=q==null?0:q.length;++ue-1;);return O}function ld(q,B){for(var O=q.length;O--&&Pi(B,q[O],0)>-1;);return O}function av(q,B){for(var O=q.length,ue=0;O--;)q[O]===B&&++ue;return ue}var lv=ds(zm),ov=ds(Wm);function sv(q){return"\\"+Hm[q]}function uv(q,B){return q==null?r:q[B]}function xi(q){return Bm.test(q)}function cv(q){return Fm.test(q)}function dv(q){for(var B,O=[];!(B=q.next()).done;)O.push(B.value);return O}function ms(q){var B=-1,O=Array(q.size);return q.forEach(function(ue,Ee){O[++B]=[Ee,ue]}),O}function od(q,B){return function(O){return q(B(O))}}function Br(q,B){for(var O=-1,ue=q.length,Ee=0,nt=[];++O-1}function Jv(n,i){var o=this.__data__,c=Pl(o,n);return c<0?(++this.size,o.push([n,i])):o[c][1]=i,this}dr.prototype.clear=Kv,dr.prototype.delete=Qv,dr.prototype.get=jv,dr.prototype.has=Zv,dr.prototype.set=Jv;function fr(n){var i=-1,o=n==null?0:n.length;for(this.clear();++i=i?n:i)),n}function In(n,i,o,c,h,p){var w,k=i&T,P=i&M,V=i&b;if(o&&(w=h?o(n,c,h,p):o(n)),w!==r)return w;if(!Ct(n))return n;var U=Ie(n);if(U){if(w=n0(n),!k)return fn(n,w)}else{var Y=Jt(n),re=Y==cn||Y==rn;if(Yr(n))return zd(n,k);if(Y==Qt||Y==Ue||re&&!h){if(w=P||re?{}:uf(n),!k)return P?Yp(n,gp(w,n)):Wp(n,_d(w,n))}else{if(!ht[Y])return h?n:{};w=r0(n,Y,k)}}p||(p=new zn);var pe=p.get(n);if(pe)return pe;p.set(n,w),Nf(n)?n.forEach(function(Te){w.add(In(Te,i,o,Te,n,p))}):Of(n)&&n.forEach(function(Te,Ye){w.set(Ye,In(Te,i,o,Ye,n,p))});var Ce=V?P?Vs:Fs:P?gn:Bt,Le=U?r:Ce(n);return xn(Le||n,function(Te,Ye){Le&&(Ye=Te,Te=n[Ye]),va(w,Ye,In(Te,i,o,Ye,n,p))}),w}function mp(n){var i=Bt(n);return function(o){return bd(o,n,i)}}function bd(n,i,o){var c=o.length;if(n==null)return!c;for(n=dt(n);c--;){var h=o[c],p=i[h],w=n[h];if(w===r&&!(h in n)||!p(w))return!1}return!0}function wd(n,i,o){if(typeof n!="function")throw new An(u);return ka(function(){n.apply(r,o)},i)}function pa(n,i,o,c){var h=-1,p=fl,w=!0,k=n.length,P=[],V=i.length;if(!k)return P;o&&(i=_t(i,yn(o))),c?(p=os,w=!1):i.length>=l&&(p=ca,w=!1,i=new li(i));e:for(;++hh?0:h+o),c=c===r||c>h?h:Re(c),c<0&&(c+=h),c=o>c?0:Ff(c);o0&&o(k)?i>1?Wt(k,i-1,o,c,h):Nr(h,k):c||(h[h.length]=k)}return h}var Ss=Qd(),Cd=Qd(!0);function Xn(n,i){return n&&Ss(n,i,Bt)}function ks(n,i){return n&&Cd(n,i,Bt)}function Al(n,i){return Lr(i,function(o){return pr(n[o])})}function si(n,i){i=zr(i,n);for(var o=0,c=i.length;n!=null&&oi}function yp(n,i){return n!=null&&ot.call(n,i)}function _p(n,i){return n!=null&&i in dt(n)}function bp(n,i,o){return n>=Zt(i,o)&&n=120&&U.length>=120)?new li(w&&U):r}U=n[0];var Y=-1,re=k[0];e:for(;++Y-1;)k!==n&&Sl.call(k,P,1),Sl.call(n,P,1);return n}function Rd(n,i){for(var o=n?i.length:0,c=o-1;o--;){var h=i[o];if(o==c||h!==p){var p=h;vr(h)?Sl.call(n,h,1):Is(n,h)}}return n}function xs(n,i){return n+Tl(md()*(i-n+1))}function Ip(n,i,o,c){for(var h=-1,p=Ot(Cl((i-n)/(o||1)),0),w=O(p);p--;)w[c?p:++h]=n,n+=o;return w}function As(n,i){var o="";if(!n||i<1||i>ve)return o;do i%2&&(o+=n),i=Tl(i/2),i&&(n+=n);while(i);return o}function Ve(n,i){return Ks(ff(n,i,mn),n+"")}function $p(n){return yd(Vi(n))}function Rp(n,i){var o=Vi(n);return Ul(o,oi(i,0,o.length))}function ba(n,i,o,c){if(!Ct(n))return n;i=zr(i,n);for(var h=-1,p=i.length,w=p-1,k=n;k!=null&&++hh?0:h+i),o=o>h?h:o,o<0&&(o+=h),h=i>o?0:o-i>>>0,i>>>=0;for(var p=O(h);++c>>1,w=n[p];w!==null&&!bn(w)&&(o?w<=i:w=l){var V=i?null:Qp(n);if(V)return gl(V);w=!1,h=ca,P=new li}else P=i?[]:k;e:for(;++c=c?n:$n(n,i,o)}var Ud=Mv||function(n){return zt.clearTimeout(n)};function zd(n,i){if(i)return n.slice();var o=n.length,c=cd?cd(o):new n.constructor(o);return n.copy(c),c}function Ls(n){var i=new n.constructor(n.byteLength);return new bl(i).set(new bl(n)),i}function Fp(n,i){var o=i?Ls(n.buffer):n.buffer;return new n.constructor(o,n.byteOffset,n.byteLength)}function Vp(n){var i=new n.constructor(n.source,Mi.exec(n));return i.lastIndex=n.lastIndex,i}function Up(n){return ma?dt(ma.call(n)):{}}function Wd(n,i){var o=i?Ls(n.buffer):n.buffer;return new n.constructor(o,n.byteOffset,n.length)}function Yd(n,i){if(n!==i){var o=n!==r,c=n===null,h=n===n,p=bn(n),w=i!==r,k=i===null,P=i===i,V=bn(i);if(!k&&!V&&!p&&n>i||p&&w&&P&&!k&&!V||c&&w&&P||!o&&P||!h)return 1;if(!c&&!p&&!V&&n=k)return P;var V=o[c];return P*(V=="desc"?-1:1)}}return n.index-i.index}function Hd(n,i,o,c){for(var h=-1,p=n.length,w=o.length,k=-1,P=i.length,V=Ot(p-w,0),U=O(P+V),Y=!c;++k1?o[h-1]:r,w=h>2?o[2]:r;for(p=n.length>3&&typeof p=="function"?(h--,p):r,w&&ln(o[0],o[1],w)&&(p=h<3?r:p,h=1),i=dt(i);++c-1?h[p?i[w]:w]:r}}function Jd(n){return mr(function(i){var o=i.length,c=o,h=En.prototype.thru;for(n&&i.reverse();c--;){var p=i[c];if(typeof p!="function")throw new An(u);if(h&&!w&&Fl(p)=="wrapper")var w=new En([],!0)}for(c=w?c:o;++c1&&Qe.reverse(),U&&Pk))return!1;var V=p.get(n),U=p.get(i);if(V&&U)return V==i&&U==n;var Y=-1,re=!0,pe=o&$?new li:r;for(p.set(n,i),p.set(i,n);++Y1?"& ":"")+i[c],i=i.join(o>2?", ":" "),n.replace(jo,`{ +/* [wrapped with `+i+`] */ +`)}function a0(n){return Ie(n)||di(n)||!!(hd&&n&&n[hd])}function vr(n,i){var o=typeof n;return i=i==null?ve:i,!!i&&(o=="number"||o!="symbol"&&cl.test(n))&&n>-1&&n%1==0&&n0){if(++i>=lt)return arguments[0]}else i=0;return n.apply(r,arguments)}}function Ul(n,i){var o=-1,c=n.length,h=c-1;for(i=i===r?c:i;++o1?n[i-1]:r;return o=typeof o=="function"?(n.pop(),o):r,Cf(n,o)});function Tf(n){var i=m(n);return i.__chain__=!0,i}function vy(n,i){return i(n),n}function zl(n,i){return i(n)}var py=mr(function(n){var i=n.length,o=i?n[0]:0,c=this.__wrapped__,h=function(p){return ws(p,n)};return i>1||this.__actions__.length||!(c instanceof Ge)||!vr(o)?this.thru(h):(c=c.slice(o,+o+(i?1:0)),c.__actions__.push({func:zl,args:[h],thisArg:r}),new En(c,this.__chain__).thru(function(p){return i&&!p.length&&p.push(r),p}))});function yy(){return Tf(this)}function _y(){return new En(this.value(),this.__chain__)}function by(){this.__values__===r&&(this.__values__=Bf(this.value()));var n=this.__index__>=this.__values__.length,i=n?r:this.__values__[this.__index__++];return{done:n,value:i}}function wy(){return this}function Sy(n){for(var i,o=this;o instanceof ql;){var c=yf(o);c.__index__=0,c.__values__=r,i?h.__wrapped__=c:i=c;var h=c;o=o.__wrapped__}return h.__wrapped__=n,i}function ky(){var n=this.__wrapped__;if(n instanceof Ge){var i=n;return this.__actions__.length&&(i=new Ge(this)),i=i.reverse(),i.__actions__.push({func:zl,args:[Qs],thisArg:r}),new En(i,this.__chain__)}return this.thru(Qs)}function Cy(){return Fd(this.__wrapped__,this.__actions__)}var Ty=Rl(function(n,i,o){ot.call(n,o)?++n[o]:hr(n,o,1)});function My(n,i,o){var c=Ie(n)?Xc:vp;return o&&ln(n,i,o)&&(i=r),c(n,Se(i,3))}function Dy(n,i){var o=Ie(n)?Lr:kd;return o(n,Se(i,3))}var qy=Zd(_f),Py=Zd(bf);function xy(n,i){return Wt(Wl(n,i),1)}function Ay(n,i){return Wt(Wl(n,i),K)}function Ey(n,i,o){return o=o===r?1:Re(o),Wt(Wl(n,i),o)}function Mf(n,i){var o=Ie(n)?xn:Vr;return o(n,Se(i,3))}function Df(n,i){var o=Ie(n)?Zm:Sd;return o(n,Se(i,3))}var Iy=Rl(function(n,i,o){ot.call(n,o)?n[o].push(i):hr(n,o,[i])});function $y(n,i,o,c){n=hn(n)?n:Vi(n),o=o&&!c?Re(o):0;var h=n.length;return o<0&&(o=Ot(h+o,0)),Ql(n)?o<=h&&n.indexOf(i,o)>-1:!!h&&Pi(n,i,o)>-1}var Ry=Ve(function(n,i,o){var c=-1,h=typeof i=="function",p=hn(n)?O(n.length):[];return Vr(n,function(w){p[++c]=h?pn(i,w,o):ya(w,i,o)}),p}),Oy=Rl(function(n,i,o){hr(n,o,i)});function Wl(n,i){var o=Ie(n)?_t:Pd;return o(n,Se(i,3))}function Ly(n,i,o,c){return n==null?[]:(Ie(i)||(i=i==null?[]:[i]),o=c?r:o,Ie(o)||(o=o==null?[]:[o]),Id(n,i,o))}var Ny=Rl(function(n,i,o){n[o?0:1].push(i)},function(){return[[],[]]});function By(n,i,o){var c=Ie(n)?ss:rd,h=arguments.length<3;return c(n,Se(i,4),o,h,Vr)}function Fy(n,i,o){var c=Ie(n)?Jm:rd,h=arguments.length<3;return c(n,Se(i,4),o,h,Sd)}function Vy(n,i){var o=Ie(n)?Lr:kd;return o(n,Gl(Se(i,3)))}function Uy(n){var i=Ie(n)?yd:$p;return i(n)}function zy(n,i,o){(o?ln(n,i,o):i===r)?i=1:i=Re(i);var c=Ie(n)?dp:Rp;return c(n,i)}function Wy(n){var i=Ie(n)?fp:Lp;return i(n)}function Yy(n){if(n==null)return 0;if(hn(n))return Ql(n)?Ai(n):n.length;var i=Jt(n);return i==qt||i==G?n.size:Ds(n).length}function Hy(n,i,o){var c=Ie(n)?us:Np;return o&&ln(n,i,o)&&(i=r),c(n,Se(i,3))}var Gy=Ve(function(n,i){if(n==null)return[];var o=i.length;return o>1&&ln(n,i[0],i[1])?i=[]:o>2&&ln(i[0],i[1],i[2])&&(i=[i[0]]),Id(n,Wt(i,1),[])}),Yl=Dv||function(){return zt.Date.now()};function Ky(n,i){if(typeof i!="function")throw new An(u);return n=Re(n),function(){if(--n<1)return i.apply(this,arguments)}}function qf(n,i,o){return i=o?r:i,i=n&&i==null?n.length:i,gr(n,z,r,r,r,r,i)}function Pf(n,i){var o;if(typeof i!="function")throw new An(u);return n=Re(n),function(){return--n>0&&(o=i.apply(this,arguments)),n<=1&&(i=r),o}}var Zs=Ve(function(n,i,o){var c=L;if(o.length){var h=Br(o,Bi(Zs));c|=N}return gr(n,c,i,o,h)}),xf=Ve(function(n,i,o){var c=L|F;if(o.length){var h=Br(o,Bi(xf));c|=N}return gr(i,c,n,o,h)});function Af(n,i,o){i=o?r:i;var c=gr(n,D,r,r,r,r,r,i);return c.placeholder=Af.placeholder,c}function Ef(n,i,o){i=o?r:i;var c=gr(n,A,r,r,r,r,r,i);return c.placeholder=Ef.placeholder,c}function If(n,i,o){var c,h,p,w,k,P,V=0,U=!1,Y=!1,re=!0;if(typeof n!="function")throw new An(u);i=On(i)||0,Ct(o)&&(U=!!o.leading,Y="maxWait"in o,p=Y?Ot(On(o.maxWait)||0,i):p,re="trailing"in o?!!o.trailing:re);function pe(At){var Yn=c,_r=h;return c=h=r,V=At,w=n.apply(_r,Yn),w}function Ce(At){return V=At,k=ka(Ye,i),U?pe(At):w}function Le(At){var Yn=At-P,_r=At-V,Jf=i-Yn;return Y?Zt(Jf,p-_r):Jf}function Te(At){var Yn=At-P,_r=At-V;return P===r||Yn>=i||Yn<0||Y&&_r>=p}function Ye(){var At=Yl();if(Te(At))return Qe(At);k=ka(Ye,Le(At))}function Qe(At){return k=r,re&&c?pe(At):(c=h=r,w)}function wn(){k!==r&&Ud(k),V=0,c=P=h=k=r}function on(){return k===r?w:Qe(Yl())}function Sn(){var At=Yl(),Yn=Te(At);if(c=arguments,h=this,P=At,Yn){if(k===r)return Ce(P);if(Y)return Ud(k),k=ka(Ye,i),pe(P)}return k===r&&(k=ka(Ye,i)),w}return Sn.cancel=wn,Sn.flush=on,Sn}var Qy=Ve(function(n,i){return wd(n,1,i)}),jy=Ve(function(n,i,o){return wd(n,On(i)||0,o)});function Zy(n){return gr(n,ye)}function Hl(n,i){if(typeof n!="function"||i!=null&&typeof i!="function")throw new An(u);var o=function(){var c=arguments,h=i?i.apply(this,c):c[0],p=o.cache;if(p.has(h))return p.get(h);var w=n.apply(this,c);return o.cache=p.set(h,w)||p,w};return o.cache=new(Hl.Cache||fr),o}Hl.Cache=fr;function Gl(n){if(typeof n!="function")throw new An(u);return function(){var i=arguments;switch(i.length){case 0:return!n.call(this);case 1:return!n.call(this,i[0]);case 2:return!n.call(this,i[0],i[1]);case 3:return!n.call(this,i[0],i[1],i[2])}return!n.apply(this,i)}}function Jy(n){return Pf(2,n)}var Xy=Bp(function(n,i){i=i.length==1&&Ie(i[0])?_t(i[0],yn(Se())):_t(Wt(i,1),yn(Se()));var o=i.length;return Ve(function(c){for(var h=-1,p=Zt(c.length,o);++h=i}),di=Md(function(){return arguments}())?Md:function(n){return Tt(n)&&ot.call(n,"callee")&&!fd.call(n,"callee")},Ie=O.isArray,g1=Gc?yn(Gc):Sp;function hn(n){return n!=null&&Kl(n.length)&&!pr(n)}function xt(n){return Tt(n)&&hn(n)}function m1(n){return n===!0||n===!1||Tt(n)&&an(n)==ft}var Yr=Pv||uu,v1=Kc?yn(Kc):kp;function p1(n){return Tt(n)&&n.nodeType===1&&!Ca(n)}function y1(n){if(n==null)return!0;if(hn(n)&&(Ie(n)||typeof n=="string"||typeof n.splice=="function"||Yr(n)||Fi(n)||di(n)))return!n.length;var i=Jt(n);if(i==qt||i==G)return!n.size;if(Sa(n))return!Ds(n).length;for(var o in n)if(ot.call(n,o))return!1;return!0}function _1(n,i){return _a(n,i)}function b1(n,i,o){o=typeof o=="function"?o:r;var c=o?o(n,i):r;return c===r?_a(n,i,r,o):!!c}function Xs(n){if(!Tt(n))return!1;var i=an(n);return i==nn||i==wt||typeof n.message=="string"&&typeof n.name=="string"&&!Ca(n)}function w1(n){return typeof n=="number"&&gd(n)}function pr(n){if(!Ct(n))return!1;var i=an(n);return i==cn||i==rn||i==Me||i==Ar}function Rf(n){return typeof n=="number"&&n==Re(n)}function Kl(n){return typeof n=="number"&&n>-1&&n%1==0&&n<=ve}function Ct(n){var i=typeof n;return n!=null&&(i=="object"||i=="function")}function Tt(n){return n!=null&&typeof n=="object"}var Of=Qc?yn(Qc):Tp;function S1(n,i){return n===i||Ms(n,i,zs(i))}function k1(n,i,o){return o=typeof o=="function"?o:r,Ms(n,i,zs(i),o)}function C1(n){return Lf(n)&&n!=+n}function T1(n){if(s0(n))throw new Ee(s);return Dd(n)}function M1(n){return n===null}function D1(n){return n==null}function Lf(n){return typeof n=="number"||Tt(n)&&an(n)==Kt}function Ca(n){if(!Tt(n)||an(n)!=Qt)return!1;var i=wl(n);if(i===null)return!0;var o=ot.call(i,"constructor")&&i.constructor;return typeof o=="function"&&o instanceof o&&pl.call(o)==kv}var eu=jc?yn(jc):Mp;function q1(n){return Rf(n)&&n>=-ve&&n<=ve}var Nf=Zc?yn(Zc):Dp;function Ql(n){return typeof n=="string"||!Ie(n)&&Tt(n)&&an(n)==de}function bn(n){return typeof n=="symbol"||Tt(n)&&an(n)==qe}var Fi=Jc?yn(Jc):qp;function P1(n){return n===r}function x1(n){return Tt(n)&&Jt(n)==it}function A1(n){return Tt(n)&&an(n)==Ze}var E1=Bl(qs),I1=Bl(function(n,i){return n<=i});function Bf(n){if(!n)return[];if(hn(n))return Ql(n)?Un(n):fn(n);if(da&&n[da])return dv(n[da]());var i=Jt(n),o=i==qt?ms:i==G?gl:Vi;return o(n)}function yr(n){if(!n)return n===0?n:0;if(n=On(n),n===K||n===-K){var i=n<0?-1:1;return i*rt}return n===n?n:0}function Re(n){var i=yr(n),o=i%1;return i===i?o?i-o:i:0}function Ff(n){return n?oi(Re(n),0,Z):0}function On(n){if(typeof n=="number")return n;if(bn(n))return X;if(Ct(n)){var i=typeof n.valueOf=="function"?n.valueOf():n;n=Ct(i)?i+"":i}if(typeof n!="string")return n===0?n:+n;n=id(n);var o=ol.test(n);return o||ul.test(n)?Km(n.slice(2),o?2:8):Xo.test(n)?X:+n}function Vf(n){return er(n,gn(n))}function $1(n){return n?oi(Re(n),-ve,ve):n===0?n:0}function at(n){return n==null?"":_n(n)}var R1=Li(function(n,i){if(Sa(i)||hn(i)){er(i,Bt(i),n);return}for(var o in i)ot.call(i,o)&&va(n,o,i[o])}),Uf=Li(function(n,i){er(i,gn(i),n)}),jl=Li(function(n,i,o,c){er(i,gn(i),n,c)}),O1=Li(function(n,i,o,c){er(i,Bt(i),n,c)}),L1=mr(ws);function N1(n,i){var o=Oi(n);return i==null?o:_d(o,i)}var B1=Ve(function(n,i){n=dt(n);var o=-1,c=i.length,h=c>2?i[2]:r;for(h&&ln(i[0],i[1],h)&&(c=1);++o1),p}),er(n,Vs(n),o),c&&(o=In(o,T|M|b,jp));for(var h=i.length;h--;)Is(o,i[h]);return o});function r_(n,i){return Wf(n,Gl(Se(i)))}var i_=mr(function(n,i){return n==null?{}:Ap(n,i)});function Wf(n,i){if(n==null)return{};var o=_t(Vs(n),function(c){return[c]});return i=Se(i),$d(n,o,function(c,h){return i(c,h[0])})}function a_(n,i,o){i=zr(i,n);var c=-1,h=i.length;for(h||(h=1,n=r);++ci){var c=n;n=i,i=c}if(o||n%1||i%1){var h=md();return Zt(n+h*(i-n+Gm("1e-"+((h+"").length-1))),i)}return xs(n,i)}var v_=Ni(function(n,i,o){return i=i.toLowerCase(),n+(o?Gf(i):i)});function Gf(n){return ru(at(n).toLowerCase())}function Kf(n){return n=at(n),n&&n.replace(C,lv).replace(Lm,"")}function p_(n,i,o){n=at(n),i=_n(i);var c=n.length;o=o===r?c:oi(Re(o),0,c);var h=o;return o-=i.length,o>=0&&n.slice(o,h)==i}function y_(n){return n=at(n),n&&Yo.test(n)?n.replace(il,ov):n}function __(n){return n=at(n),n&&Ko.test(n)?n.replace(sa,"\\$&"):n}var b_=Ni(function(n,i,o){return n+(o?"-":"")+i.toLowerCase()}),w_=Ni(function(n,i,o){return n+(o?" ":"")+i.toLowerCase()}),S_=jd("toLowerCase");function k_(n,i,o){n=at(n),i=Re(i);var c=i?Ai(n):0;if(!i||c>=i)return n;var h=(i-c)/2;return Nl(Tl(h),o)+n+Nl(Cl(h),o)}function C_(n,i,o){n=at(n),i=Re(i);var c=i?Ai(n):0;return i&&c>>0,o?(n=at(n),n&&(typeof i=="string"||i!=null&&!eu(i))&&(i=_n(i),!i&&xi(n))?Wr(Un(n),0,o):n.split(i,o)):[]}var A_=Ni(function(n,i,o){return n+(o?" ":"")+ru(i)});function E_(n,i,o){return n=at(n),o=o==null?0:oi(Re(o),0,n.length),i=_n(i),n.slice(o,o+i.length)==i}function I_(n,i,o){var c=m.templateSettings;o&&ln(n,i,o)&&(i=r),n=at(n),i=jl({},i,c,rf);var h=jl({},i.imports,c.imports,rf),p=Bt(h),w=gs(h,p),k,P,V=0,U=i.interpolate||le,Y="__p += '",re=vs((i.escape||le).source+"|"+U.source+"|"+(U===Er?Or:le).source+"|"+(i.evaluate||le).source+"|$","g"),pe="//# sourceURL="+(ot.call(i,"sourceURL")?(i.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Um+"]")+` +`;n.replace(re,function(Te,Ye,Qe,wn,on,Sn){return Qe||(Qe=wn),Y+=n.slice(V,Sn).replace(ie,sv),Ye&&(k=!0,Y+=`' + +__e(`+Ye+`) + +'`),on&&(P=!0,Y+=`'; +`+on+`; +__p += '`),Qe&&(Y+=`' + +((__t = (`+Qe+`)) == null ? '' : __t) + +'`),V=Sn+Te.length,Te}),Y+=`'; +`;var Ce=ot.call(i,"variable")&&i.variable;if(!Ce)Y=`with (obj) { +`+Y+` +} +`;else if(Rr.test(Ce))throw new Ee(d);Y=(P?Y.replace(el,""):Y).replace(tl,"$1").replace(nl,"$1;"),Y="function("+(Ce||"obj")+`) { +`+(Ce?"":`obj || (obj = {}); +`)+"var __t, __p = ''"+(k?", __e = _.escape":"")+(P?`, __j = Array.prototype.join; +function print() { __p += __j.call(arguments, '') } +`:`; +`)+Y+`return __p +}`;var Le=jf(function(){return nt(p,pe+"return "+Y).apply(r,w)});if(Le.source=Y,Xs(Le))throw Le;return Le}function $_(n){return at(n).toLowerCase()}function R_(n){return at(n).toUpperCase()}function O_(n,i,o){if(n=at(n),n&&(o||i===r))return id(n);if(!n||!(i=_n(i)))return n;var c=Un(n),h=Un(i),p=ad(c,h),w=ld(c,h)+1;return Wr(c,p,w).join("")}function L_(n,i,o){if(n=at(n),n&&(o||i===r))return n.slice(0,sd(n)+1);if(!n||!(i=_n(i)))return n;var c=Un(n),h=ld(c,Un(i))+1;return Wr(c,0,h).join("")}function N_(n,i,o){if(n=at(n),n&&(o||i===r))return n.replace(ua,"");if(!n||!(i=_n(i)))return n;var c=Un(n),h=ad(c,Un(i));return Wr(c,h).join("")}function B_(n,i){var o=_e,c=Ae;if(Ct(i)){var h="separator"in i?i.separator:h;o="length"in i?Re(i.length):o,c="omission"in i?_n(i.omission):c}n=at(n);var p=n.length;if(xi(n)){var w=Un(n);p=w.length}if(o>=p)return n;var k=o-Ai(c);if(k<1)return c;var P=w?Wr(w,0,k).join(""):n.slice(0,k);if(h===r)return P+c;if(w&&(k+=P.length-k),eu(h)){if(n.slice(k).search(h)){var V,U=P;for(h.global||(h=vs(h.source,at(Mi.exec(h))+"g")),h.lastIndex=0;V=h.exec(U);)var Y=V.index;P=P.slice(0,Y===r?k:Y)}}else if(n.indexOf(_n(h),k)!=k){var re=P.lastIndexOf(h);re>-1&&(P=P.slice(0,re))}return P+c}function F_(n){return n=at(n),n&&al.test(n)?n.replace(rl,mv):n}var V_=Ni(function(n,i,o){return n+(o?" ":"")+i.toUpperCase()}),ru=jd("toUpperCase");function Qf(n,i,o){return n=at(n),i=o?r:i,i===r?cv(n)?yv(n):tv(n):n.match(i)||[]}var jf=Ve(function(n,i){try{return pn(n,r,i)}catch(o){return Xs(o)?o:new Ee(o)}}),U_=mr(function(n,i){return xn(i,function(o){o=tr(o),hr(n,o,Zs(n[o],n))}),n});function z_(n){var i=n==null?0:n.length,o=Se();return n=i?_t(n,function(c){if(typeof c[1]!="function")throw new An(u);return[o(c[0]),c[1]]}):[],Ve(function(c){for(var h=-1;++hve)return[];var o=Z,c=Zt(n,Z);i=Se(i),n-=Z;for(var h=hs(c,i);++o0||i<0)?new Ge(o):(n<0?o=o.takeRight(-n):n&&(o=o.drop(n)),i!==r&&(i=Re(i),o=i<0?o.dropRight(-i):o.take(i-n)),o)},Ge.prototype.takeRightWhile=function(n){return this.reverse().takeWhile(n).reverse()},Ge.prototype.toArray=function(){return this.take(Z)},Xn(Ge.prototype,function(n,i){var o=/^(?:filter|find|map|reject)|While$/.test(i),c=/^(?:head|last)$/.test(i),h=m[c?"take"+(i=="last"?"Right":""):i],p=c||/^find/.test(i);!h||(m.prototype[i]=function(){var w=this.__wrapped__,k=c?[1]:arguments,P=w instanceof Ge,V=k[0],U=P||Ie(w),Y=function(Ye){var Qe=h.apply(m,Nr([Ye],k));return c&&re?Qe[0]:Qe};U&&o&&typeof V=="function"&&V.length!=1&&(P=U=!1);var re=this.__chain__,pe=!!this.__actions__.length,Ce=p&&!re,Le=P&&!pe;if(!p&&U){w=Le?w:new Ge(this);var Te=n.apply(w,k);return Te.__actions__.push({func:zl,args:[Y],thisArg:r}),new En(Te,re)}return Ce&&Le?n.apply(this,k):(Te=this.thru(Y),Ce?c?Te.value()[0]:Te.value():Te)})}),xn(["pop","push","shift","sort","splice","unshift"],function(n){var i=ml[n],o=/^(?:push|sort|unshift)$/.test(n)?"tap":"thru",c=/^(?:pop|shift)$/.test(n);m.prototype[n]=function(){var h=arguments;if(c&&!this.__chain__){var p=this.value();return i.apply(Ie(p)?p:[],h)}return this[o](function(w){return i.apply(Ie(w)?w:[],h)})}}),Xn(Ge.prototype,function(n,i){var o=m[i];if(o){var c=o.name+"";ot.call(Ri,c)||(Ri[c]=[]),Ri[c].push({name:i,func:o})}}),Ri[Ol(r,F).name]=[{name:"wrapper",func:r}],Ge.prototype.clone=Fv,Ge.prototype.reverse=Vv,Ge.prototype.value=Uv,m.prototype.at=py,m.prototype.chain=yy,m.prototype.commit=_y,m.prototype.next=by,m.prototype.plant=Sy,m.prototype.reverse=ky,m.prototype.toJSON=m.prototype.valueOf=m.prototype.value=Cy,m.prototype.first=m.prototype.head,da&&(m.prototype[da]=wy),m},Ei=_v();ri?((ri.exports=Ei)._=Ei,as._=Ei):zt._=Ei}).call(Ma)})(Yu,Yu.exports);var JD=Yu.exports;const XD=un({name:"ProductCard",props:["product","is-stall"],data:function(){return{}},methods:{},created(){}}),eq={class:"row no-wrap items-center"},tq={class:"col text-subtitle2 ellipsis-2-lines"},nq={key:0},rq={class:"text-h6"},iq={key:1},aq={class:"text-h6"},lq={class:"q-ml-md text-caption text-green-8 text-weight-bolder q-mt-md"},oq={key:0,class:"text-subtitle1"},sq=["textContent"],uq={key:1,class:"text-subtitle1"},cq={class:"text-caption text-grey ellipsis-2-lines",style:{"min-height":"40px"}},dq={key:0},fq={class:"text-caption text-weight-bolder"},hq={class:"q-ml-auto"};function gq(e,t,r,a,l,s){return R(),oe(Yt,{class:"card--product"},{default:_(()=>[y(rc,{src:e.product.images&&e.product.images.length>0&&e.product.images[0]?e.product.images[0]:e.$q.config.staticPath+"/images/placeholder.png",alt:"Product Image",loading:"lazy","spinner-color":"white",fit:"contain",height:"300px"},null,8,["src"]),y(Ne,{class:"q-pb-xs q-pt-md"},{default:_(()=>[y(ge,{round:"",disabled:e.product.quantity<1,color:"primary",rounded:"",icon:"shopping_cart",size:"lg",style:{position:"absolute",top:"0",right:"0",transform:"translate(-50%, -50%)"},onClick:t[0]||(t[0]=u=>e.$emit("add-to-cart",e.product))},{default:_(()=>[y(Hr,null,{default:_(()=>[ke(" Add to cart ")]),_:1})]),_:1},8,["disabled"]),S("div",eq,[S("div",tq,me(e.product.name),1)])]),_:1}),y(Ne,{class:"q-py-sm"},{default:_(()=>[S("div",null,[e.product.currency=="sat"?(R(),ne("span",nq,[S("span",rq,me(e.product.price)+" sats",1),y(Hr,null,{default:_(()=>[ke(" BTC "+me((e.product.price/1e8).toFixed(8)),1)]),_:1})])):(R(),ne("span",iq,[S("span",aq,me(e.product.formatedPrice),1)])),S("span",lq,me(e.product.quantity)+" left",1)]),e.product.categories?(R(),ne("div",oq,[y(nc,{items:e.product.categories||[],"virtual-scroll-horizontal":""},{default:_(({item:u,index:d})=>[(R(),oe(Ga,{key:d,dense:""},{default:_(()=>[S("span",{textContent:me(u)},null,8,sq)]),_:2},1024))]),_:1},8,["items"])])):(R(),ne("div",uq,"\xA0")),S("div",cq,[e.product.description?(R(),ne("p",dq,me(e.product.description),1)):$e("",!0)])]),_:1}),y(ut),y(_i,null,{default:_(()=>[S("div",fq,me(e.product.stallName),1)]),_:1}),y(ut),y(_i,null,{default:_(()=>[S("div",hq,[e.isStall?$e("",!0):(R(),oe(ge,{key:0,flat:"",class:"text-weight-bold text-capitalize q-ml-auto float-left",dense:"",color:"primary",onClick:t[1]||(t[1]=u=>e.$emit("change-page","stall",{stall:e.product.stall_id}))},{default:_(()=>[ke(" Visit Stall ")]),_:1})),y(ge,{flat:"",class:"text-weight-bold text-capitalize q-ml-auto",dense:"",color:"primary",onClick:t[2]||(t[2]=u=>e.$emit("change-page","stall",{stall:e.product.stall_id,product:e.product.id}))},{default:_(()=>[ke(" View details ")]),_:1})])]),_:1})]),_:1})}var Sm=Mn(XD,[["render",gq]]);const mq=un({name:"CustomerMarket",components:{ProductCard:Sm},props:["filtered-products","search-text","filter-categories"],data:function(){return{search:null,partialProducts:[],productsPerPage:12,startIndex:0,lastProductIndex:0,showProducts:!0,debounceRefreshProducts:null}},watch:{searchText:function(){this.debounceRefreshProducts()},filteredProducts:function(){this.debounceRefreshProducts()},filterCategories:function(){this.debounceRefreshProducts()}},methods:{refreshProducts:function(){this.showProducts=!1,this.partialProducts=[],this.startIndex=0,this.lastProductIndex=Math.min(this.filteredProducts.length,this.productsPerPage),this.partialProducts.push(...this.filteredProducts.slice(0,this.lastProductIndex)),setTimeout(()=>{this.showProducts=!0},0)},addToCart(e){this.$emit("add-to-cart",e)},changePageM(e,t){this.$emit("change-page",e,t)},onLoad(e,t){setTimeout(()=>{if(this.startIndex>=this.filteredProducts.length){t();return}this.startIndex=this.lastProductIndex,this.lastProductIndex=Math.min(this.filteredProducts.length,this.lastProductIndex+this.productsPerPage),this.partialProducts.push(...this.filteredProducts.slice(this.startIndex,this.lastProductIndex)),t()},100)}},created(){this.debounceRefreshProducts=JD.debounce(this.refreshProducts,100),this.lastProductIndex=Math.min(this.filteredProducts.length,24),this.partialProducts.push(...this.filteredProducts.slice(0,this.lastProductIndex))}}),vq={class:"row q-col-gutter-md"},pq={class:"row justify-center q-my-md"};function yq(e,t,r,a,l,s){const u=Xr("product-card");return R(),ne("div",null,[e.showProducts?(R(),oe(ZD,{key:0,onLoad:e.onLoad,offset:250},Kh({default:_(()=>[S("div",vq,[(R(!0),ne($t,null,Ut(e.partialProducts,(d,f)=>(R(),ne("div",{class:"col-xs-12 col-sm-6 col-md-4 col-lg-3",key:f},[y(u,{product:d,onChangePage:e.changePageM,onAddToCart:e.addToCart},null,8,["product","onChangePage","onAddToCart"])]))),128))])]),_:2},[e.lastProductIndex[S("div",pq,[y(Eu,{color:"primary",size:"40px"})])]),key:"0"}:void 0]),1032,["onLoad"])):$e("",!0)])}var _q=Mn(mq,[["render",yq]]),bq=Je({name:"QSlideTransition",props:{appear:Boolean,duration:{type:Number,default:300}},emits:["show","hide"],setup(e,{slots:t,emit:r}){let a=!1,l,s,u=null,d=null,f,g;function v(){l&&l(),l=null,a=!1,u!==null&&(clearTimeout(u),u=null),d!==null&&(clearTimeout(d),d=null),s!==void 0&&s.removeEventListener("transitionend",f),f=null}function T($,L,F){L!==void 0&&($.style.height=`${L}px`),$.style.transition=`height ${e.duration}ms cubic-bezier(.25, .8, .50, 1)`,a=!0,l=F}function M($,L){$.style.overflowY=null,$.style.height=null,$.style.transition=null,v(),L!==g&&r(L)}function b($,L){let F=0;s=$,a===!0?(v(),F=$.offsetHeight===$.scrollHeight?0:void 0):(g="hide",$.style.overflowY="hidden"),T($,F,L),u=setTimeout(()=>{u=null,$.style.height=`${$.scrollHeight}px`,f=W=>{d=null,(Object(W)!==W||W.target===$)&&M($,"show")},$.addEventListener("transitionend",f),d=setTimeout(f,e.duration*1.1)},100)}function x($,L){let F;s=$,a===!0?v():(g="show",$.style.overflowY="hidden",F=$.scrollHeight),T($,F,L),u=setTimeout(()=>{u=null,$.style.height=0,f=W=>{d=null,(Object(W)!==W||W.target===$)&&M($,"hide")},$.addEventListener("transitionend",f),d=setTimeout(f,e.duration*1.1)},100)}return Gt(()=>{a===!0&&v()}),()=>E(Ha,{css:!1,appear:e.appear,onEnter:b,onLeave:x},t.default)}});const gi=ew({}),wq=Object.keys(qo);var Sq=Je({name:"QExpansionItem",props:{...qo,...Hu,...ar,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:[...Ku,"click","afterShow","afterHide"],setup(e,{slots:t,emit:r}){const{proxy:{$q:a}}=Dt(),l=lr(e,a),s=se(e.modelValue!==null?e.modelValue:e.defaultOpened),u=se(null),d=co(),{show:f,hide:g,toggle:v}=Qu({showing:s});let T,M;const b=I(()=>`q-expansion-item q-item-type q-expansion-item--${s.value===!0?"expanded":"collapsed"} q-expansion-item--${e.popup===!0?"popup":"standard"}`),x=I(()=>{if(e.contentInsetLevel===void 0)return null;const K=a.lang.rtl===!0?"Right":"Left";return{["padding"+K]:e.contentInsetLevel*56+"px"}}),$=I(()=>e.disable!==!0&&(e.href!==void 0||e.to!==void 0&&e.to!==null&&e.to!=="")),L=I(()=>{const K={};return wq.forEach(ve=>{K[ve]=e[ve]}),K}),F=I(()=>$.value===!0||e.expandIconToggle!==!0),W=I(()=>e.expandedIcon!==void 0&&s.value===!0?e.expandedIcon:e.expandIcon||a.iconSet.expansionItem[e.denseToggle===!0?"denseIcon":"icon"]),D=I(()=>e.disable!==!0&&($.value===!0||e.expandIconToggle===!0)),A=I(()=>({expanded:s.value===!0,detailsId:e.targetUid,toggle:v,show:f,hide:g})),N=I(()=>{const K=e.toggleAriaLabel!==void 0?e.toggleAriaLabel:a.lang.label[s.value===!0?"collapse":"expand"](e.label);return{role:"button","aria-expanded":s.value===!0?"true":"false","aria-controls":d,"aria-label":K}});ze(()=>e.group,K=>{M!==void 0&&M(),K!==void 0&&Ae()});function J(K){$.value!==!0&&v(K),r("click",K)}function z(K){K.keyCode===13&&H(K,!0)}function H(K,ve){ve!==!0&&u.value!==null&&u.value.focus(),v(K),Ft(K)}function ye(){r("afterShow")}function _e(){r("afterHide")}function Ae(){T===void 0&&(T=co()),s.value===!0&&(gi[e.group]=T);const K=ze(s,rt=>{rt===!0?gi[e.group]=T:gi[e.group]===T&&delete gi[e.group]}),ve=ze(()=>gi[e.group],(rt,X)=>{X===T&&rt!==void 0&&rt!==T&&g()});M=()=>{K(),ve(),gi[e.group]===T&&delete gi[e.group],M=void 0}}function lt(){const K={class:[`q-focusable relative-position cursor-pointer${e.denseToggle===!0&&e.switchToggleSide===!0?" items-end":""}`,e.expandIconClass],side:e.switchToggleSide!==!0,avatar:e.switchToggleSide},ve=[E(Ht,{class:"q-expansion-item__toggle-icon"+(e.expandedIcon===void 0&&s.value===!0?" q-expansion-item__toggle-icon--rotated":""),name:W.value})];return D.value===!0&&(Object.assign(K,{tabindex:0,...N.value,onClick:H,onKeyup:z}),ve.unshift(E("div",{ref:u,class:"q-expansion-item__toggle-focus q-icon q-focus-helper q-focus-helper--rounded",tabindex:-1}))),E(xe,K,()=>ve)}function te(){let K;return t.header!==void 0?K=[].concat(t.header(A.value)):(K=[E(xe,()=>[E(He,{lines:e.labelLines},()=>e.label||""),e.caption?E(He,{lines:e.captionLines,caption:!0},()=>e.caption):null])],e.icon&&K[e.switchToggleSide===!0?"push":"unshift"](E(xe,{side:e.switchToggleSide===!0,avatar:e.switchToggleSide!==!0},()=>E(Ht,{name:e.icon})))),e.disable!==!0&&e.hideExpandIcon!==!0&&K[e.switchToggleSide===!0?"unshift":"push"](lt()),K}function Pe(){const K={ref:"item",style:e.headerStyle,class:e.headerClass,dark:l.value,disable:e.disable,dense:e.dense,insetLevel:e.headerInsetLevel};return F.value===!0&&(K.clickable=!0,K.onClick=J,Object.assign(K,$.value===!0?L.value:N.value)),E(Vt,K,te)}function Be(){return sn(E("div",{key:"e-content",class:"q-expansion-item__content relative-position",style:x.value,id:d},Mt(t.default)),[[tw,s.value]])}function j(){const K=[Pe(),E(bq,{duration:e.duration,onShow:ye,onHide:_e},Be)];return e.expandSeparator===!0&&K.push(E(ut,{class:"q-expansion-item__border q-expansion-item__border--top absolute-top",dark:l.value}),E(ut,{class:"q-expansion-item__border q-expansion-item__border--bottom absolute-bottom",dark:l.value})),K}return e.group!==void 0&&Ae(),Gt(()=>{M!==void 0&&M()}),()=>E("div",{class:b.value},[E("div",{class:"q-expansion-item__container relative-position"},j())])}});const kq=un({name:"CustomerOrders",props:["orders","products","stalls","profiles"],components:{UserProfile:Qa},data:function(){return{}},computed:{merchantOrders:function(){return Object.keys(this.orders).map(e=>({pubkey:e,orders:this.orders[e].map(this.enrichOrder)}))}},methods:{enrichOrder:function(e){var r;const t=this.stallForOrder(e);return{...e,stallName:(t==null?void 0:t.name)||"Stall",shippingZone:((r=t==null?void 0:t.shipping)==null?void 0:r.find(a=>a.id===e.shipping_id))||{id:e.shipping_id,name:e.shipping_id},invoice:this.invoiceForOrder(e),products:this.getProductsForOrder(e)}},stallForOrder:function(e){var t;try{const r=e.items&&((t=e.items[0])==null?void 0:t.product_id);if(!r)return;const a=this.products.find(s=>s.id===r);if(!a)return;const l=this.stalls.find(s=>s.id===a.stall_id);return l||void 0}catch(r){console.log(r)}},invoiceForOrder:function(e){var t;try{const r=(t=e==null?void 0:e.payment_options)==null?void 0:t.find(a=>a.type==="ln");return r!=null&&r.link?decode(r.link):void 0}catch(r){console.warn(r)}},getProductsForOrder:function(e){var t;return(t=e==null?void 0:e.items)!=null&&t.length?e.items.map(r=>({...this.products.find(l=>l.id===r.product_id)||{id:r.product_id,name:r.product_id},orderedQuantity:r.quantity})):[]},showInvoice:function(e){var r;if(e.paid)return;const t=(r=e==null?void 0:e.payment_options)==null?void 0:r.find(a=>a.type==="ln").link;!t||this.$emit("show-invoice",t)},formatCurrency:function(e,t){return formatCurrency(e,t)},fromNow:function(e){return e?ae(e*1e3).fromNow():""}},created(){}}),Cq=S("strong",null,"No Orders",-1),Tq=["textContent"],Mq=["textContent"],Dq={class:"text-caption text-grey ellipsis-2-lines"},qq={key:0},Pq=["textContent"],xq=["textContent"],Aq=["textContent"],Eq={class:"text-caption text-grey ellipsis-2-lines"},Iq=["textContent"],Rq=["textContent"],Oq=S("strong",null,"Order ID: ",-1),Lq=["textContent"],Nq=S("strong",null,"Products",-1),Bq=["src"],Fq=["src"],Vq={class:"text-caption text-grey ellipsis-2-lines"},Uq=S("strong",null,"Shipping Zone: ",-1),zq=["textContent"],Wq=S("strong",null,"Message: ",-1),Yq=["textContent"],Hq=S("strong",null,"Invoice: ",-1),Gq=["textContent"];function Kq(e,t,r,a,l,s){var d;const u=Xr("user-profile");return R(),ne("div",null,[(d=e.merchantOrders)!=null&&d.length?$e("",!0):(R(),oe(Yt,{key:0,bordered:"",class:"q-mb-md"},{default:_(()=>[y(Ne,null,{default:_(()=>[Cq]),_:1})]),_:1})),(R(!0),ne($t,null,Ut(e.merchantOrders,f=>(R(),ne("div",{key:f.id},[y(Yt,{bordered:"",class:"q-mb-md"},{default:_(()=>[y(Vt,null,{default:_(()=>[y(u,{pubkey:f.pubkey,profiles:e.profiles},null,8,["pubkey","profiles"])]),_:2},1024),y(ut),y(Ne,{class:"col-12"},{default:_(()=>[y(rr,null,{default:_(()=>[(R(!0),ne($t,null,Ut(f.orders,g=>(R(),ne("div",{key:g.id,class:"q-mb-md"},[y(Sq,{dense:"","expand-separator":""},{header:_(()=>[y(xe,{class:"q-mt-sm"},{default:_(()=>[y(He,null,{default:_(()=>{var v,T;return[S("strong",null,[S("span",{textContent:me(g.stallName)},null,8,Tq)]),(T=(v=g.invoice)==null?void 0:v.human_readable_part)!=null&&T.amount?(R(),oe(Tn,{key:0,onClick:M=>e.showInvoice(g),color:"orange",class:"q-ml-lg gt-sm"},{default:_(()=>{var M,b;return[S("span",{textContent:me(e.formatCurrency(((b=(M=g.invoice)==null?void 0:M.human_readable_part)==null?void 0:b.amount)/1e3,"sat"))},null,8,Mq)]}),_:2},1032,["onClick"])):$e("",!0)]}),_:2},1024),y(He,null,{default:_(()=>[S("div",Dq,[g.createdAt?(R(),ne("p",qq,[S("span",{textContent:me(e.fromNow(g.createdAt))},null,8,Pq)])):$e("",!0)])]),_:2},1024)]),_:2},1024),y(xe,{side:""},{default:_(()=>[y(He,null,{default:_(()=>[y(Tn,{color:g.paid?"green":"grey"},{default:_(()=>[S("span",{textContent:me(g.paid?"Paid":"Not Paid")},null,8,xq)]),_:2},1032,["color"]),y(Tn,{color:g.shipped?"green":"grey",class:"q-ml-md"},{default:_(()=>[S("span",{textContent:me(g.shipped?"Shipped":"Not Shipped")},null,8,Aq)]),_:2},1032,["color"])]),_:2},1024),y(He,null,{default:_(()=>{var v,T;return[S("div",Eq,[S("p",null,[S("span",{textContent:me((v=g.items)==null?void 0:v.length)},null,8,Iq),S("span",{textContent:me(((T=g.items)==null?void 0:T.length)===1?"product":"products")},null,8,Rq)])])]}),_:2},1024)]),_:2},1024)]),default:_(()=>[y(ut),y(Ne,{class:"col-12"},{default:_(()=>[y(xe,null,{default:_(()=>[y(He,null,{default:_(()=>[Oq,S("span",{class:"ellipsis-2-lines text-wrap",textContent:me(g.id)},null,8,Lq)]),_:2},1024)]),_:2},1024)]),_:2},1024),y(ut),y(Ne,{horizontal:""},{default:_(()=>[y(Ne,{class:"col-7"},{default:_(()=>[y(xe,{class:"q-mt-sm"},{default:_(()=>[y(He,null,{default:_(()=>[Nq]),_:1})]),_:1}),(R(!0),ne($t,null,Ut(g.products,v=>(R(),oe(Vt,{key:v.id},{default:_(()=>[y(xe,{avatar:""},{default:_(()=>[y(Zr,null,{default:_(()=>[v.images&&v.images[0]||v.image?(R(),ne("img",{key:0,src:v.images[0]||v.image},null,8,Bq)):(R(),ne("img",{key:1,src:e.$q.config.staticPath+"/images/placeholder.png"},null,8,Fq))]),_:2},1024)]),_:2},1024),y(xe,{class:"q-mt-sm"},{default:_(()=>[y(He),y(He,null,{default:_(()=>[S("strong",null,me(v.orderedQuantity)+" x "+me(v.name),1)]),_:2},1024),y(He,null,{default:_(()=>[S("div",Vq,[S("p",null,me(v.description),1)])]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))]),_:2},1024),y(ut,{vertical:""}),y(Ne,null,{default:_(()=>[y(xe,{class:"q-mt-md q-ml-sm"},{default:_(()=>[y(He,null,{default:_(()=>{var v;return[Uq,S("span",{textContent:me(((v=g.shippingZone)==null?void 0:v.name)||"")},null,8,zq)]}),_:2},1024)]),_:2},1024),g.message?(R(),oe(xe,{key:0,class:"q-mt-md q-ml-sm"},{default:_(()=>[y(He,null,{default:_(()=>[Wq,S("span",{textContent:me(g.message)},null,8,Yq)]),_:2},1024)]),_:2},1024)):$e("",!0),y(xe,{class:"q-mt-md q-ml-sm"},{default:_(()=>[y(He,null,{default:_(()=>{var v,T;return[Hq,(T=(v=g.invoice)==null?void 0:v.human_readable_part)!=null&&T.amount?(R(),oe(Tn,{key:0,onClick:M=>e.showInvoice(g),color:"orange",class:"cursor-pointer"},{default:_(()=>{var M,b;return[S("span",{textContent:me(e.formatCurrency(((b=(M=g.invoice)==null?void 0:M.human_readable_part)==null?void 0:b.amount)/1e3,"sat"))},null,8,Gq)]}),_:2},1032,["onClick"])):$e("",!0)]}),_:2},1024)]),_:2},1024)]),_:2},1024)]),_:2},1024),y(ut,{class:"q-mb-xl"})]),_:2},1024),y(ut)]))),128))]),_:2},1024)]),_:2},1024)]),_:2},1024)]))),128))])}var Qq=Mn(kq,[["render",Kq]]),jq=Je({name:"QCarouselSlide",props:{...bg,imgSrc:String},setup(e,{slots:t}){const r=I(()=>e.imgSrc?{backgroundImage:`url("${e.imgSrc}")`}:{});return()=>E("div",{class:"q-carousel__slide",style:r.value},Mt(t.default))}});let xa=0;const Zq={fullscreen:Boolean,noRouteFullscreenExit:Boolean},Jq=["update:fullscreen","fullscreen"];function Xq(){const e=Dt(),{props:t,emit:r,proxy:a}=e;let l,s,u;const d=se(!1);nw(e)===!0&&ze(()=>a.$route.fullPath,()=>{t.noRouteFullscreenExit!==!0&&v()}),ze(()=>t.fullscreen,T=>{d.value!==T&&f()}),ze(d,T=>{r("update:fullscreen",T),r("fullscreen",T)});function f(){d.value===!0?v():g()}function g(){d.value!==!0&&(d.value=!0,u=a.$el.parentNode,u.replaceChild(s,a.$el),document.body.appendChild(a.$el),xa++,xa===1&&document.body.classList.add("q-body--fullscreen-mixin"),l={handler:v},rh.add(l))}function v(){d.value===!0&&(l!==void 0&&(rh.remove(l),l=void 0),u.replaceChild(a.$el,s),d.value=!1,xa=Math.max(0,xa-1),xa===0&&(document.body.classList.remove("q-body--fullscreen-mixin"),a.$el.scrollIntoView!==void 0&&setTimeout(()=>{a.$el.scrollIntoView()})))}return Ju(()=>{s=document.createElement("span")}),ei(()=>{t.fullscreen===!0&&g()}),Gt(v),Object.assign(a,{toggleFullscreen:f,setFullscreen:g,exitFullscreen:v}),{inFullscreen:d,toggleFullscreen:f}}const eP=["top","right","bottom","left"],tP=["regular","flat","outline","push","unelevated"];var nP=Je({name:"QCarousel",props:{...ar,...wg,...Zq,transitionPrev:{type:String,default:"fade"},transitionNext:{type:String,default:"fade"},height:String,padding:Boolean,controlColor:String,controlTextColor:String,controlType:{type:String,validator:e=>tP.includes(e),default:"flat"},autoplay:[Number,Boolean],arrows:Boolean,prevIcon:String,nextIcon:String,navigation:Boolean,navigationPosition:{type:String,validator:e=>eP.includes(e)},navigationIcon:String,navigationActiveIcon:String,thumbnails:Boolean},emits:[...Jq,...Sg],setup(e,{slots:t}){const{proxy:{$q:r}}=Dt(),a=lr(e,r);let l=null,s;const{updatePanelsList:u,getPanelContent:d,panelDirectives:f,goToPanel:g,previousPanel:v,nextPanel:T,getEnabledPanels:M,panelIndex:b}=kg(),{inFullscreen:x}=Xq(),$=I(()=>x.value!==!0&&e.height!==void 0?{height:e.height}:{}),L=I(()=>e.vertical===!0?"vertical":"horizontal"),F=I(()=>`q-carousel q-panel-parent q-carousel--with${e.padding===!0?"":"out"}-padding`+(x.value===!0?" fullscreen":"")+(a.value===!0?" q-carousel--dark q-dark":"")+(e.arrows===!0?` q-carousel--arrows-${L.value}`:"")+(e.navigation===!0?` q-carousel--navigation-${N.value}`:"")),W=I(()=>{const _e=[e.prevIcon||r.iconSet.carousel[e.vertical===!0?"up":"left"],e.nextIcon||r.iconSet.carousel[e.vertical===!0?"down":"right"]];return e.vertical===!1&&r.lang.rtl===!0?_e.reverse():_e}),D=I(()=>e.navigationIcon||r.iconSet.carousel.navigationIcon),A=I(()=>e.navigationActiveIcon||D.value),N=I(()=>e.navigationPosition||(e.vertical===!0?"right":"bottom")),J=I(()=>({color:e.controlColor,textColor:e.controlTextColor,round:!0,[e.controlType]:!0,dense:!0}));ze(()=>e.modelValue,()=>{e.autoplay&&z()}),ze(()=>e.autoplay,_e=>{_e?z():l!==null&&(clearTimeout(l),l=null)});function z(){const _e=rw(e.autoplay)===!0?Math.abs(e.autoplay):5e3;l!==null&&clearTimeout(l),l=setTimeout(()=>{l=null,_e>=0?T():v()},_e)}ei(()=>{e.autoplay&&z()}),Gt(()=>{l!==null&&clearTimeout(l)});function H(_e,Ae){return E("div",{class:`q-carousel__control q-carousel__navigation no-wrap absolute flex q-carousel__navigation--${_e} q-carousel__navigation--${N.value}`+(e.controlColor!==void 0?` text-${e.controlColor}`:"")},[E("div",{class:"q-carousel__navigation-inner flex flex-center no-wrap"},M().map(Ae))])}function ye(){const _e=[];if(e.navigation===!0){const Ae=t["navigation-icon"]!==void 0?t["navigation-icon"]:te=>E(ge,{key:"nav"+te.name,class:`q-carousel__navigation-icon q-carousel__navigation-icon--${te.active===!0?"":"in"}active`,...te.btnProps,onClick:te.onClick}),lt=s-1;_e.push(H("buttons",(te,Pe)=>{const Be=te.props.name,j=b.value===Pe;return Ae({index:Pe,maxIndex:lt,name:Be,active:j,btnProps:{icon:j===!0?A.value:D.value,size:"sm",...J.value},onClick:()=>{g(Be)}})}))}else if(e.thumbnails===!0){const Ae=e.controlColor!==void 0?` text-${e.controlColor}`:"";_e.push(H("thumbnails",lt=>{const te=lt.props;return E("img",{key:"tmb#"+te.name,class:`q-carousel__thumbnail q-carousel__thumbnail--${te.name===e.modelValue?"":"in"}active`+Ae,src:te.imgSrc||te["img-src"],onClick:()=>{g(te.name)}})}))}return e.arrows===!0&&b.value>=0&&((e.infinite===!0||b.value>0)&&_e.push(E("div",{key:"prev",class:`q-carousel__control q-carousel__arrow q-carousel__prev-arrow q-carousel__prev-arrow--${L.value} absolute flex flex-center`},[E(ge,{icon:W.value[0],...J.value,onClick:v})])),(e.infinite===!0||b.value(s=u(t),E("div",{class:F.value,style:$.value},[ju("div",{class:"q-carousel__slides-container"},d(),"sl-cont",e.swipeable,()=>f.value)].concat(ye())))}});const rP=un({name:"ProductDetail",props:["product","add-to-cart"],data:function(){return{slide:1}},computed:{},methods:{},created(){}}),iP={class:"row"},aP={class:"col-lg-5 col-md-5 col-sm-12 col-xs-12 q-mt-sm"},lP={key:0,class:"q-pr-md"},oP={key:1,class:"q-pr-md"},sP={class:"col-lg-7 col-md-7 col-sm-12 col-xs-12 q-mt-sm"},uP={class:"row"},cP={class:"text-subtitle1 q-mt-sm q-pt-xs"},dP={key:0,class:"text-subtitle1"},fP={class:"q-mt-sm text-weight-bold"},hP={key:0},gP={class:"text-h6"},mP={class:"q-ml-sm text-grey-6"},vP={key:1},pP={class:"text-h6"},yP={class:"q-ml-md text-caption text-green-8 text-weight-bolder q-mt-md"},_P={class:"q-mt-md"};function bP(e,t,r,a,l,s){return R(),ne("div",iP,[S("div",aP,[e.product.images&&e.product.images[0]?(R(),ne("div",lP,[y(nP,{swipeable:"",animated:"",modelValue:e.slide,"onUpdate:modelValue":t[0]||(t[0]=u=>e.slide=u),thumbnails:"",infinite:"",arrows:"","transition-prev":"slide-right","transition-next":"slide-left","navigation-icon":"radio_button_unchecked","control-type":"regular","control-color":"secondary","control-text-color":"white"},{default:_(()=>[(R(!0),ne($t,null,Ut(e.product.images,(u,d)=>(R(),oe(jq,{name:d+1,key:d,"img-src":u},null,8,["name","img-src"]))),128))]),_:1},8,["modelValue"])])):(R(),ne("div",oP,[y(rc,{src:e.$q.config.staticPath+"/images/placeholder.png",ratio:16/9},null,8,["src"])]))]),S("div",sP,[y(Yt,null,{default:_(()=>[y(Ne,null,{default:_(()=>[S("div",uP,[S("div",{class:iw(["col-12",e.$q.platform.is.desktop?"":"q-px-md"])},[S("div",cP,me(e.product.name),1),e.product.categories?(R(),ne("div",dP,[(R(!0),ne($t,null,Ut(e.product.categories,(u,d)=>(R(),oe(Ga,{key:d,dense:""},{default:_(()=>[ke(me(u),1)]),_:2},1024))),128))])):$e("",!0),S("div",fP,me(e.product.description),1),S("div",null,[e.product.currency=="sat"?(R(),ne("span",hP,[S("span",gP,me(e.product.price)+" sats",1),S("span",mP,"BTC "+me((e.product.price/1e8).toFixed(8)),1)])):(R(),ne("span",vP,[S("span",pP,me(e.product.formatedPrice),1)])),S("span",yP,me(e.product.quantity>0?`In + stock. ${e.product.quantity} left.`:"Out of stock."),1)]),S("div",_P,[y(ge,{class:"q-mt-md",color:"primary",rounded:"",icon:"shopping_cart",label:"Add to cart",onClick:t[1]||(t[1]=u=>e.$emit("add-to-cart",e.product))})])],2)])]),_:1})]),_:1})])])}var wP=Mn(rP,[["render",bP]]);const SP=un({name:"CustomerStall",components:{ProductCard:Sm,ProductDetail:wP},props:["stall","products","product-detail"],data:function(){return{}},computed:{product(){if(this.productDetail)return this.products.find(e=>e.id==this.productDetail)}},methods:{changePageS(e,t){var r;e==="stall"&&(t==null?void 0:t.product)&&((r=document.getElementById("product-focus-area"))==null||r.scrollIntoView()),this.$emit("change-page",e,t)},addToCart(e){this.$emit("add-to-cart",e)}}}),kP=S("div",{id:"product-focus-area"},null,-1),CP={key:0,class:"row"},TP={class:"col-12 auto-width"},MP={class:"col-12 q-my-lg"},DP={class:"row q-col-gutter-md"};function qP(e,t,r,a,l,s){const u=Xr("product-detail"),d=Xr("product-card");return R(),ne("div",null,[kP,e.productDetail&&e.product?(R(),ne("div",CP,[S("div",TP,[y(u,{product:e.product,onAddToCart:e.addToCart},null,8,["product","onAddToCart"])]),S("div",MP,[y(ut)])])):$e("",!0),S("div",DP,[(R(!0),ne($t,null,Ut(e.products,(f,g)=>(R(),ne("div",{class:"col-xs-12 col-sm-6 col-md-4 col-lg-3",key:g},[y(d,{product:f,onChangePage:e.changePageS,onAddToCart:e.addToCart,"is-stall":!0},null,8,["product","onChangePage","onAddToCart"])]))),128))])])}var PP=Mn(SP,[["render",qP]]);const xP=un({name:"CustomerStallList",props:["stalls"],data:function(){return{showStalls:!0}},watch:{stalls(){this.showProducts=!1,setTimeout(()=>{this.showProducts=!0},0)}},computed:{},methods:{},created(){}}),AP={key:0,class:"row q-col-gutter-md"},EP={class:"q-pa-md q-gutter-sm",style:{height:"80px"}},IP=["src"],$P={class:"row no-wrap items-center"},RP={class:"col text-subtitle2 ellipsis-2-lines"},OP={class:"text-caption text-green-8 text-weight-bolder q-mt-md"},LP=["textContent"],NP=["textContent"],BP={key:0,class:"text-subtitle1"},FP=["textContent"],VP={key:1,class:"text-subtitle1"},UP={class:"text-caption text-grey ellipsis-2-lines",style:{"min-height":"40px"}},zP={class:"q-ml-auto"};function WP(e,t,r,a,l,s){return e.showStalls?(R(),ne("div",AP,[(R(!0),ne($t,null,Ut(e.stalls,u=>(R(),ne("div",{key:u.id,class:"col-xs-12 col-sm-6 col-md-4 col-lg-3"},[y(Yt,{class:"card--product"},{default:_(()=>[y(Ne,{class:"q-pb-xs q-pt-md"},{default:_(()=>[S("div",EP,[(R(!0),ne($t,null,Ut(u.images,(d,f)=>(R(),oe(Zr,{key:f,size:"40px",class:"overlapping",style:aw(`left: ${f*25}px; border: 2px solid white; position: absolute`)},{default:_(()=>[S("img",{src:d},null,8,IP)]),_:2},1032,["style"]))),128))])]),_:2},1024),y(Ne,{class:"q-pb-xs q-pt-md"},{default:_(()=>[S("div",$P,[S("div",RP,me(u.name),1)])]),_:2},1024),y(ut),y(Ne,{class:"q-pl-sm"},{default:_(()=>[S("div",null,[S("span",OP,[S("span",{textContent:me(u.productCount)},null,8,LP),ke(" products")]),S("span",{textContent:me(u.currency),class:"float-right"},null,8,NP)])]),_:2},1024),y(Ne,{class:"q-pl-sm gt-sm"},{default:_(()=>[u.categories?(R(),ne("div",BP,[y(nc,{items:u.categories||[],"virtual-scroll-horizontal":""},{default:_(({item:d,index:f})=>[(R(),oe(Ga,{key:f,dense:""},{default:_(()=>[S("span",{textContent:me(d)},null,8,FP)]),_:2},1024))]),_:2},1032,["items"])])):(R(),ne("div",VP,"\xA0")),S("div",UP,[S("p",null,me(u.description||""),1)])]),_:2},1024),y(ut),y(_i,null,{default:_(()=>[S("div",zP,[y(ge,{flat:"",class:"text-weight-bold text-capitalize q-ml-auto float-left",dense:"",color:"primary",onClick:d=>e.$emit("change-page","stall",{stall:u.id})},{default:_(()=>[ke(" Visit Stall ")]),_:2},1032,["onClick"])])]),_:2},1024)]),_:2},1024)]))),128))])):$e("",!0)}var YP=Mn(xP,[["render",WP]]);const HP=un({name:"ProductFilter",props:["filter","currencies","categories","merchants","profiles","stalls"],data:function(){return{merchantProfiles:[],filterData:{currency:null,priceFrom:0,priceTo:null,categories:[],merchants:[],stalls:[]}}},watch:{categories(e,t){this.filterData.categories=(e||[]).filter(r=>r.selected).map(r=>r.category)}},methods:{clear:function(){this.filterData={currency:null,priceFrom:0,priceTo:null,categories:[],merchants:[],stalls:[]},this.$emit("filter-update",this.filterData)},clearPrice(){this.filterData.currency=null,this.filterData.priceFrom=0,this.filterData.priceTo=null},clearMerchants(){this.filterData.merchants=[]},clearCategories(){this.filterData.categories=[]},clearStalls(){this.filterData.stalls=[]},search:function(){const e={...this.filterData,merchants:this.filterData.merchants.map(t=>t.value),stalls:this.filterData.stalls.map(t=>t.value)};this.$emit("filter-update",e)},mapMerchantProfile(e){const t=this.profiles.find(r=>r.pubkey===e);return t?{label:t.name+` (${e.substring(0,10)}...${e.substring(e.length-10)})`,value:e}:{label:e,value:e}}},created:async function(){this.filterData={...this.filterData,...JSON.parse(JSON.stringify(this.filter||{}))},this.filterData.categories=[...new Set((this.filterData.categories||[]).concat((this.categories||[]).filter(e=>e.selected).map(e=>e.category)))],this.filterData.merchants=(this.filterData.merchants||[]).map(this.mapMerchantProfile),this.filterData.stalls=(this.filterData.stalls||[]).map(e=>{const t=this.stalls.find(r=>r.id===e)||{label:e,value:e};return{label:t.name,value:t.id}}),this.merchantProfiles=this.merchants.map(this.mapMerchantProfile)}}),GP={class:"row q-mt-md q-ml-md q-pr-md"},KP={class:"col-md-3 col-sm-12 col-xs-12 q-pt-sm"},QP={class:"col-md-3 col-sm-12 col-xs-12 q-pt-sm q-pl-md"},jP={class:"col-md-3 col-sm-12 col-xs-12 q-pt-sm q-pl-lg"},ZP={class:"col-md-3 col-sm-12 col-xs-12"},JP={class:"row q-mt-md q-ml-md q-pr-md"},XP={class:"col-9"},ex={class:"col-3"},tx={class:"row q-mt-md q-ml-md q-pr-md"},nx={class:"col-9"},rx={class:"col-3"},ix={class:"row q-mt-md q-ml-md q-pr-md"},ax={class:"col-9"},lx={class:"col-3"};function ox(e,t,r,a,l,s){return R(),oe(Yt,null,{default:_(()=>[y(Ne,null,{default:_(()=>[S("div",GP,[S("div",KP,[y(Aa,{options:[...e.currencies].sort(),modelValue:e.filterData.currency,"onUpdate:modelValue":t[0]||(t[0]=u=>e.filterData.currency=u),filled:"",hint:"Only this Currency",label:"Currency"},null,8,["options","modelValue"])]),S("div",QP,[y(It,{modelValue:e.filterData.priceFrom,"onUpdate:modelValue":t[1]||(t[1]=u=>e.filterData.priceFrom=u),type:"number",label:"Price From",hint:"Price Starting At"},null,8,["modelValue"])]),S("div",jP,[y(It,{modelValue:e.filterData.priceTo,"onUpdate:modelValue":t[2]||(t[2]=u=>e.filterData.priceTo=u),type:"number",label:"Price To",hint:"Maximum Price"},null,8,["modelValue"])]),S("div",ZP,[y(ge,{onClick:t[3]||(t[3]=u=>e.clearPrice()),flat:"",color:"grey",class:"float-right q-mt-sm"},{default:_(()=>[ke(" Clear")]),_:1})])])]),_:1}),y(Ne,null,{default:_(()=>[S("div",JP,[S("div",XP,[y(Aa,{options:[...e.categories.map(u=>u.category).sort()],modelValue:e.filterData.categories,"onUpdate:modelValue":t[4]||(t[4]=u=>e.filterData.categories=u),filled:"",multiple:"","use-chips":"","stack-label":"",hint:"Any of these Categories",label:"Categories"},null,8,["options","modelValue"])]),S("div",ex,[y(ge,{onClick:t[5]||(t[5]=u=>e.clearCategories()),flat:"",color:"grey",class:"float-right q-mt-sm"},{default:_(()=>[ke(" Clear")]),_:1})])]),S("div",tx,[S("div",nx,[y(Aa,{options:e.merchantProfiles,modelValue:e.filterData.merchants,"onUpdate:modelValue":t[6]||(t[6]=u=>e.filterData.merchants=u),filled:"",multiple:"","use-chips":"","stack-label":"",hint:"Only these Merchant",label:"Merchants"},null,8,["options","modelValue"])]),S("div",rx,[y(ge,{onClick:t[7]||(t[7]=u=>e.clearMerchants()),flat:"",color:"grey",class:"float-right q-mt-sm"},{default:_(()=>[ke(" Clear")]),_:1})])]),S("div",ix,[S("div",ax,[y(Aa,{options:e.stalls.map(u=>({label:u.name,value:u.id})),modelValue:e.filterData.stalls,"onUpdate:modelValue":t[8]||(t[8]=u=>e.filterData.stalls=u),filled:"",multiple:"","use-chips":"","stack-label":"",hint:"Only these Stalls",label:"Stalls"},null,8,["options","modelValue"])]),S("div",lx,[y(ge,{onClick:t[9]||(t[9]=u=>e.clearStalls()),flat:"",color:"grey",class:"float-right q-mt-sm"},{default:_(()=>[ke(" Clear")]),_:1})])])]),_:1}),y(ut),y(_i,{align:"right"},{default:_(()=>[y(ge,{onClick:t[10]||(t[10]=u=>e.clear()),flat:"",color:"grey"},{default:_(()=>[ke(" Clear All Filters")]),_:1}),y(ge,{onClick:t[11]||(t[11]=u=>e.search()),flat:"",icon:"search",color:"primary",class:"q-mr-md"},{default:_(()=>[ke(" Search ")]),_:1})]),_:1})]),_:1})}var sx=Mn(HP,[["render",ox]]);const ux={class:"row q-mb-md"},cx={class:"col-lg-1 col-md-1 gt-sm"},dx=["src"],fx={class:"col-lg-7 col-md-5 col-12 auto-width"},hx=S("div",{id:"search-text"},null,-1),gx={class:"col-lg-4 col-md-6 col-12"},mx={class:"float-right"},vx=["textContent"],px=["textContent"],yx={key:0,class:"gt-sm"},_x=["textContent","onClick"],bx=["textContent"],wx=S("div",{class:"text-h6"}," There are no relays configured at this moment. ",-1),Sx=S("div",{class:"text-subtitle2"}," Start by creating or importing a market. ",-1),kx={key:2,class:"row q-mb-sm"},Cx={class:"col-12 text-center"},Tx={key:0,class:"absolute-bottom text-subtitle1 text-center"},Mx=["textContent"],Dx={class:"row q-mb-sm"},qx={class:"col-md-8 col-sm-7 auto-width"},Px=["textContent"],xx=S("strong",null,"All markets",-1),Ax=["textContent"],Ex=["textContent"],Ix={class:"col-md-4 col-sm-5"},$x={class:"float-right"},Rx=["textContent"],Ox={key:3,class:"row q-mb-sm"},Lx={class:"col-12 text-center"},Nx={key:12},Bx=S("strong",{class:"text-h4"},"Welcome to the Nostr Market!",-1),Fx=S("strong",{class:"text-h5 q-mt-lg"},"In order to start you can:",-1),Vx={class:"text-h6"},Ux={class:"text-h6"},zx={class:"text-h6"},Wx=S("code",null,"naddr",-1),Yx={key:13},Hx=S("div",{class:"text-h6"},"Account Setup",-1),Gx=S("p",null,"Enter your Nostr private key or generate a new one.",-1),Kx={class:"text-center q-mb-lg"},Qx={key:0,class:"q-my-lg"},jx=["textContent"],Zx=["href"],Jx={key:0,ratio:1},Xx={key:1},eA={class:"row q-mt-lg"},tA={class:"row q-mt-lg"},nA=un({name:"MarketPage",components:{MarketConfig:xg},data:function(){return{account:null,accountMetadata:null,accountDialog:{show:!1,data:{watchOnly:!1,key:null}},relaysData:{},markets:[],shoppingCarts:[],checkoutCart:null,checkoutStall:null,activePage:"market",activeOrderId:null,dmSubscriptions:{},allMarketsSelected:!1,qrCodeDialog:{data:{payment_request:null,message:null},dismissMsg:null,show:!1},naddrDialog:{show:!1,publishedNaddr:""},groupByStall:!1,relays:new Set,stalls:[],products:[],orders:{},profiles:[],bannerImage:null,logoImage:null,isLoading:!1,showFilterDetails:!1,searchText:null,filterData:{categories:[],merchants:[],stalls:[],currency:null,priceFrom:null,priceTo:null},sort:{options:[{field:"categories",label:"Categories"},{field:"name",label:"Name"},{field:"description",label:"Description"},{field:"stallName",label:"Stall"},{field:"price",label:"Price"},{field:"currency",label:"Currency"},{field:"createdAt",label:"Changed"}],by:"name",order:"asc"},dmEvents:null,activeMarket:null,activeStall:null,activeProduct:null,pool:null,config:{opts:null},defaultBanner:this.$q.config.staticPath+"images/nostr-cover.png",defaultLogo:this.$q.config.staticPath+"images/nostr-avatar.png",defaultMarketNaddr:"naddr1qqjr2e34v3jrzd3e95ensdfn956rywps94snwcmr95crvepexc6kxcfcxqmnvqg5waehxw309aex2mrp0yhxgctdw4eju6t0qyv8wumn8ghj7un9d3shjtnndehhyapwwdhkx6tpdsq36amnwvaz7tmwdaehgu3dwp6kytnhv4kxcmmjv3jhytnwv46qzxthwden5te0dehhxarj9eax2cn9v3jk2tnrd3hh2eqprfmhxue69uhhyetvv9ujummjv9hxwetsd9kxctnyv4mqzrthwden5te0dehhxtnvdakqz9rhwden5te0wfjkccte9ehx7um5wghxyecpzpmhxue69uhkummnw3ezuamfdejsz9thwden5te0v4jx2m3wdehhxarj9ekxzmnyqgstle9w09rt8y7xdlqs33v23vqvdtqx6j6j2wa4984g9n77tppx2tqrqsqqqa2ruusd5z",readNotes:{merchants:!1,marketUi:!1}}},watch:{config(e,t){var r,a,l,s;(a=(r=e==null?void 0:e.opts)==null?void 0:r.ui)!=null&&a.banner?(this.bannerImage=null,setTimeout(()=>{var u,d;this.bannerImage=this.sanitizeImageSrc((d=(u=e==null?void 0:e.opts)==null?void 0:u.ui)==null?void 0:d.banner,this.defaultBanner)})):this.bannerImage=this.defaultBanner,(s=(l=e==null?void 0:e.opts)==null?void 0:l.ui)!=null&&s.picture?(this.logoImage=null,setTimeout(()=>{var u,d;this.logoImage=this.sanitizeImageSrc((d=(u=e==null?void 0:e.opts)==null?void 0:u.ui)==null?void 0:d.picture,this.defaultLogo)})):this.logoImage=this.defaultLogo},searchText(e,t){if(!!e&&e.toLowerCase().startsWith("naddr"))try{const{type:r,data:a}=NostrTools.nip19.decode(e);if(r!=="naddr"||a.kind!==30019)return;this.$q.dialog(confirm("Do you want to import this market profile?")).onOk(async()=>{this.searchText="",await this.addMarket(e)})}catch{}}},computed:{selectedMarketsMerchants(){return[...new Set(this.markets.filter(e=>e.selected).map(e=>e.opts.merchants).flat())]},filteredProducts(){const e=g=>{var v;return!((v=this.filterData.merchants)!=null&&v.length)||this.filterData.merchants.includes(g)},t=g=>this.selectedMarketsMerchants.includes(g),r=g=>{var v;return!((v=this.filterData.stalls)!=null&&v.length)||this.filterData.stalls.includes(g)},a=g=>!this.filterData.currency||this.filterData.currency.toLowerCase()===g.toLowerCase(),l=g=>!this.filterData.priceFrom||g>=this.filterData.priceFrom,s=g=>!this.filterData.priceTo||g<=this.filterData.priceTo,u=g=>!this.activeStall||g==this.activeStall;let d=this.products.filter(g=>this.hasCategory(g.categories)&&u(g.stall_id)&&e(g.pubkey)&&t(g.pubkey)&&r(g.stall_id)&&a(g.currency)&&l(g.price)&&s(g.price));if(d.sort((g,v)=>productCompare(g,v,this.sort.by,this.sort.order)),!this.searchText||this.searchText.length<2)return d;const f=this.searchText.toLowerCase();return d.filter(g=>g.name.toLowerCase().includes(f)||g.description&&g.description.toLowerCase().includes(f)||g.categories&&g.categories.toString().toLowerCase().includes(f))},filterCount(){let e=0;return this.filterData.currency&&e++,this.filterData.priceFrom&&e++,this.filterData.priceTo&&e++,this.filterData.categories&&(e+=this.filterData.categories.length),this.filterData.merchants&&(e+=this.filterData.merchants.length),this.filterData.stalls&&(e+=this.filterData.stalls.length),e},filterStalls(){const e=this.stalls.map(r=>({...r,categories:this.allStallCatgories(r.id),images:this.allStallImages(r.id).slice(0,8),productCount:this.products.filter(a=>a.stall_id===r.id).length})).filter(r=>this.hasCategory(r.categories));if(!this.searchText||this.searchText.length<2)return e;const t=this.searchText.toLowerCase();return this.stalls.filter(r=>r.name.toLowerCase().includes(t)||r.description&&r.description.toLowerCase().includes(t)||r.categories&&r.categories.toString().toLowerCase().includes(t))},marketsName(){var t,r;if(this.activeMarket)return((t=this.activeMarket.opts)==null?void 0:t.name)||"Market";const e=this.markets.filter(a=>a.selected);return e.length===0?"No Market":e.length===1?((r=e[0].opts)==null?void 0:r.name)||"Market":e.length+" Markets"},stallName(){var e;return((e=this.stalls.find(t=>t.id==this.activeStall))==null?void 0:e.name)||"Stall"},productName(){var e;return((e=this.products.find(t=>t.id==this.activeProduct))==null?void 0:e.name)||"Product"},isValidAccountKey(){return isValidKey(this.accountDialog.data.key)},allCartsItemCount(){return this.shoppingCarts.map(e=>e.products).flat().reduce((e,t)=>e+t.orderedQuantity,0)},allCategories(){const t=this.products.map(r=>r.categories).flat().filter(r=>!!r).map(r=>r.toLowerCase()).reduce((r,a)=>(r[a]=(r[a]||0)+1,r),{});return Object.keys(t).map(r=>({category:r,count:t[r],selected:this.filterData.categories.indexOf(r)!==-1})).sort((r,a)=>a.count-r.count)},allCurrencies(){const e=this.products.map(t=>t.currency.toUpperCase());return[...new Set(e)]},allMerchants(){return[...new Set(this.markets.map(e=>e.opts.merchants).flat())]},allRelays(){return[...new Set(this.markets.map(e=>e.relays).flat())]},processedEventIds(){const e=this.stalls.map(r=>r.eventId),t=this.products.map(r=>r.eventId);return e.concat(t)},activeMarketRelaysData(){return this.activeMarket?Object.values(this.relaysData).filter(e=>e&&this.activeMarket.relays.includes(e.relayUrl)):[]},dmPeers(){this.dmEvents;const e="nostrmarket.dm.";return this.$q.localStorage.getAllKeys().filter(r=>r.startsWith(e)).map(r=>r.substring(e.length))}},async created(){this.bannerImage=this.defaultBanner,this.logoImage=this.defaultLogo,this._restoreFromStorage();const e=new URLSearchParams(window.location.search);await this.addMarket(e.get("naddr")),await this._handleQueryParams(e),this.isLoading=!1,this._loadRelaysData(),this._startRelaysHealtCheck()},methods:{async _handleQueryParams(e){const t=e.get("merchant");console.log("### merchantPubkey",t);const r=e.get("stall"),a=e.get("product");r&&(this.setActivePage("customer-stall"),a&&(this.activeProduct=a),this.activeStall=r),t&&(isValidKey(t)?this.allMerchants.includes(t)?console.log(`Request (URL) merchant (${t}) already exists!`):this.$q.dialog(confirm("We found a merchant pubkey in your request. Do you want to add it to the merchants list?")).onOk(async()=>{this.createMarket(!1,[t])}):this.$q.notify({message:"Invalid merchant public key!",icon:"warning"}))},_applyUiConfigs(e={}){const{name:t,about:r,ui:a}=e;this.$q.localStorage.set("nostrmarket.marketplaceConfig",{name:t,about:r,ui:a}),a!=null&&a.theme&&document.body.setAttribute("data-theme",a.theme),this.$q.dark.set(!!(a!=null&&a.darkMode))},handleFilterData(e){console.log("### handleFilterData",e),this.filterData=e,this.setActivePage("market")},async updateUiConfig(e={opts:{}}){var l;const{name:t,about:r,ui:a}=e.opts;this.config={...this.config,opts:{...this.config.opts,name:t,about:r,ui:a}},this._applyUiConfigs((l=this.config)==null?void 0:l.opts)},generateKeyPair(){this.accountDialog.data.key=NostrTools.generatePrivateKey(),this.accountDialog.data.watchOnly=!1},openAccountDialog(){this.accountDialog.show=!0},async createAccount(){if(isValidKey(this.accountDialog.data.key,"nsec")){let{key:e,watchOnly:t}=this.accountDialog.data;if(e.startsWith("n")){let{type:l,data:s}=NostrTools.nip19.decode(e);e=s}const r=t?null:e,a=t?e:NostrTools.getPublicKey(e);this.$q.localStorage.set("nostrmarket.account",{privkey:r,pubkey:a,nsec:NostrTools.nip19.nsecEncode(e),npub:NostrTools.nip19.npubEncode(a),useExtension:!1}),this.accountDialog.data={watchOnly:!1,key:null},this.accountDialog.show=!1,this.account=this.$q.localStorage.getItem("nostrmarket.account"),await this._requeryAllRelays()}this.accountDialog.show=!1},logout(){window.localStorage.removeItem("nostrmarket.account"),this._clearNonAccountData(),window.location.href=window.location.origin+window.location.pathname,this.account=null,this.accountMetadata=null},clearAllData(){this.$q.dialog(confirm("This will remove all information about merchants, products, relays and others. You will NOT be logged out. Do you want to proceed?")).onOk(async()=>{this._clearNonAccountData(),window.location.href=window.location.origin+window.location.pathname})},_clearNonAccountData(){this.$q.localStorage.getAllKeys().filter(e=>e!=="nostrmarket.account").forEach(e=>window.localStorage.removeItem(e)),this.orders=[],this.config={opts:null},this.shoppingCarts=[],this.checkoutCart=null},_startRelaysHealtCheck(){setInterval(()=>{Object.keys(this.relaysData).forEach(e=>{this.relaysData[e].relay.status===WebSocket.CLOSED&&this._connectToRelay(e)})},30*1e3)},async _toRelayKey(e){return"relay_"+await hash(e)},async _loadRelaysData(){for(const e of this.markets)for(const t of e.relays)await this._loadRelayData(t,e.opts.merchants);Object.keys(this.relaysData).forEach(this._connectToRelay)},async _loadRelayData(e,t){const r=await this._toRelayKey(e);this.relaysData[r]=this.relaysData[r]||{relayUrl:e,connected:!1,error:null,merchants:[],lastEventAt:this.getLastEventDateForRelay(e)};const a=this.relaysData[r];a.merchants=[...new Set(a.merchants.concat(t))]},getLastEventDateForRelay(e){const t=(this.$q.localStorage.getItem("nostrmarket.relays")||[]).find(r=>r.relayUrl===e);return console.log("### getLastEventForRelay",e,t),(t==null?void 0:t.lastEventAt)||0},async _connectToRelay(e){const t=this.relaysData[e];try{console.log(`Trying to connect to relay ${t.relayUrl}`),t.relay=NostrTools.relayInit(t.relayUrl),t.relay.on("connect",()=>{t.connected=!0,t.error=null,console.log(`Connected to relay ${t.relayUrl}`),this._queryRelay(e)}),t.relay.on("error",r=>{console.warn(`Error by relay ${t.relayUrl}`),t.connected=!1,t.error=r}),await t.relay.connect()}catch(r){t.connected=!1,t.error=`${r}`,console.warn(`Failed to connect to ${t.relayUrl}`)}},async _requeryAllRelays(){Object.keys(this.relaysData).forEach(async e=>{await this._requeryRelay(e)})},async _requeryRelay(e){var r;const t=this.relaysData[e];t.connected&&((r=t.sub)==null||r.unsub(),this._queryRelay(e))},_buildRelayFilters(e){var a;const t=e.merchants,r=[{kinds:[30017,30018],authors:t,since:e.lastEventAt+1}];if((a=this.account)!=null&&a.pubkey){const l=this._noDmEvents()?0:e.lastEventAt+1;r.push({kinds:[4],"#p":[this.account.pubkey],since:l},{kinds:[4],authors:[this.account.pubkey],since:l})}return r},async _queryRelay(e){const t=this.relaysData[e],r=this._buildRelayFilters(t),a=await t.relay.list(r);console.log("### _queryRelay.filters",t.relayUrl,r),console.log("### _queryRelay.events",t.relayUrl,a),a!=null&&a.length&&await this._processEvents(a,t),t.sub=t.relay.sub(r),t.sub.on("event",l=>{this._processEvents([l],t)},{id:"masterSub"})},async _publishEventToRelays(e,t){let r=0;for(const a of t)await this._publishEventToRelay(e,a)&&r++;return r},async _publishEventToRelay(e,t){try{const r=await this._toRelayKey(t),a=this.relaysData[r];return a!=null&&a.connected&&await a.relay.publish(e),!0}catch(r){return console.warn(r),!1}},_findRelaysForMerchant(e){const t=this.markets.filter(r=>r.opts.merchants.includes(e)).map(r=>r.relays).flat();return[...new Set(t)]},_processEvents(e,t){if(!(e!=null&&e.length))return;console.log("### _processEvents",t.relayUrl,e);const r=e.sort((a,l)=>l.created_at-a.created_at)[0].created_at;t.lastEventAt=Math.max(r,t.lastEventAt),e=e.filter(a=>!this.processedEventIds.includes(a.id)).map(a=>({...a,relayUrl:t.relayUrl})).map(eventToObj),e.filter(a=>a.kind===0).forEach(this._processProfileEvents),e.filter(a=>a.kind===4).forEach(this._processDmEvents),e.filter(a=>a.kind===5).forEach(this._processDeleteEvents),e.filter(a=>a.kind===30017).forEach(this._processStallEvents),e.filter(a=>a.kind===30018).forEach(this._processProductEvents),this._persistStallsAndProducts(),this._persistRelaysData()},_processProfileEvents(e){try{this.profiles=this.profiles.filter(t=>t.pubkey!==e.pubkey),this.profiles.push({pubkey:e.pubkey,...e.content}),this.$q.localStorage.set("nostrmarket.profiles",this.profiles)}catch(t){console.warn(t)}},_processStallEvents(e){this._processStall({...e.content,id:e.d,pubkey:e.pubkey,createdAt:e.created_at,eventId:e.id,relayUrls:[e.relayUrl]})},_processStall(e){const t=this.stalls.findIndex(a=>a.id===e.id&&a.pubkey===e.pubkey);if(t===-1){this.stalls.push(e);return}this.stalls[t].createdAta.pubkey===e.pubkey&&a.stall_id===e.id).forEach(a=>a.stallName=e.name))},_processProductEvents(e){const t={...e.content},r=this.stalls.find(a=>a.id==t.stall_id);!r||(t.currency!="sat"&&(t.formatedPrice=this.getAmountFormated(t.price,t.currency)),this._processProduct({...t,stallName:r.name,images:t.images||[t.image],pubkey:e.pubkey,id:e.d,categories:e.t,eventId:e.id,createdAt:e.created_at,relayUrls:[e.relayUrl]}))},_processProduct(e){const t=this.products.findIndex(a=>a.id===e.id&&a.pubkey===e.pubkey);if(t===-1){this.products.push(e);return}const r=this.products[t];r.relayUrls=[...new Set(e.relayUrls.concat(r.relayUrls))],r.createdAts==="p"&&u&&u!=="")[1],r=e.pubkey===this.account.pubkey;if(t!==this.account.pubkey&&!r){console.warn("Unexpected DM. Dropped!");return}const a=r?t:e.pubkey;e.content=await NostrTools.nip04.decrypt(this.account.privkey,a,e.content),this._persistDMEvent(e,a),isJson(e.content)&&await this._handleStructuredDm(e,a)},async _processDeleteEvents(e){const t=(e.tags||[]).filter(s=>s[0]==="e").map(s=>s[1]),r=this.stalls.filter(s=>s.pubkey===e.pubkey&&t.includes(s.eventId)).map(s=>s.id),a=s=>s.pubkey===e.pubkey&&(t.includes(s.eventId)||r.includes(s.stall_id));this.products=this.products.filter(s=>!a(s));const l=s=>s.pubkey===e.pubkey&&t.includes(s.eventId);this.stalls=this.stalls.filter(s=>!l(s))},async createMarket(e,t){var r;try{this.setActivePage("loading");const a={d:crypto.randomUUID(),pubkey:((r=this.account)==null?void 0:r.pubkey)||"",relays:[...defaultRelays],selected:!0,opts:{name:"New Market",merchants:t||[],ui:{}}};this.markets.unshift(a),this.$q.localStorage.set("nostrmarket.markets",this.markets);for(const l of a.relays)this._handleNewRelay(l,a);e===!0&&this.showMarketConfig(0)}catch(a){console.warn(a)}finally{this.setActivePage("market-config")}},async addMarket(e){if(!!e)try{this.setActivePage("loading");const{type:t,data:r}=NostrTools.nip19.decode(e);if(t!=="naddr"||r.kind!==30019)return;const a={d:r.identifier,pubkey:r.pubkey,relays:r.relays,selected:!0},s=await new NostrTools.SimplePool().get(a.relays,{kinds:[30019],limit:1,authors:[a.pubkey],"#d":[a.d]});if(!s)return;isJson(s.content)&&(a.opts=JSON.parse(s.content),this.$q.dialog(confirm(`Do you want to use the look and feel of the '${a.opts.name}' market?`)).onOk(async()=>{this.config={...this.config,opts:a.opts},this._applyUiConfigs(a==null?void 0:a.opts)})),this.markets=this.markets.filter(u=>u.d!==a.d||u.pubkey!==a.pubkey),this.markets.unshift(a),this.$q.localStorage.set("nostrmarket.markets",this.markets);for(const u of a.relays)await this._handleNewRelay(u,a)}catch(t){console.warn(t)}finally{this.setActivePage("market")}},updateMarket(e){var t,r;try{this.isLoading=!0;const{d:a,pubkey:l}=e,s=this.markets.find(v=>v.d===a&&v.pubkey===l)||{},u=(t=e.opts)==null?void 0:t.merchants.filter(v=>{var T;return!((T=s.opts)!=null&&T.merchants.includes(v))}),d=(r=s.opts)==null?void 0:r.merchants.filter(v=>{var T;return!((T=e.opts)!=null&&T.merchants.includes(v))}),f=e.relays.filter(v=>!s.relays.includes(v)),g=s.relays.filter(v=>!e.relays.includes(v));this.markets=this.markets.filter(v=>v.d!==a||v.pubkey!==l),this.markets.unshift(e),this.$q.localStorage.set("nostrmarket.markets",this.markets),d==null||d.forEach(this._handleRemoveMerchant),u==null||u.forEach(v=>this._handleNewMerchant(e,v)),console.log("### newRelays",f),console.log("### removedRelays",g),f==null||f.forEach(v=>this._handleNewRelay(v,e)),g==null||g.forEach(this._handleRemovedRelay),this._persistStallsAndProducts(),this._persistRelaysData()}catch(a){console.warn(a)}finally{this.isLoading=!1}},deleteMarket(e){var t,r;try{this.isLoading=!0;const{d:a,pubkey:l}=e;this.markets=this.markets.filter(s=>s.d!==a||s.pubkey!==l),this.$q.localStorage.set("nostrmarket.markets",this.markets),this.activeMarket&&this.activeMarket.d===a&&this.activeMarket.pubkey===l&&(this.activeMarket=null,this.navigateTo("market"),this.updateUiConfig(this.markets[0])),(t=e.opts.merchants)==null||t.forEach(this._handleRemoveMerchant),(r=e.relays)==null||r.forEach(this._handleRemovedRelay),this._persistStallsAndProducts(),this._persistRelaysData()}catch(a){console.warn(a)}finally{this.isLoading=!1}},toggleMarket(){this.allMarketsSelected=!this.markets.find(e=>!e.selected),this.$q.localStorage.set("nostrmarket.markets",this.markets)},toggleAllMarkets(){this.markets.forEach(e=>e.selected=this.allMarketsSelected),this.$q.localStorage.set("nostrmarket.markets",this.markets)},showMarketConfig(e){this.activeMarket=this.markets[e],this.transitToPage("market-config")},async publishNaddr(e){var l,s;if(!((l=this.account)!=null&&l.privkey)){this.openAccountDialog(),this.$q.notify({message:"Login Required!",icon:"warning"});return}console.log("### marketData",e);const t=(s=e.d)!=null?s:crypto.randomUUID(),r={...await NostrTools.getBlankEvent(),kind:30019,content:JSON.stringify(e.opts),created_at:Math.floor(Date.now()/1e3),tags:[["d",t]],pubkey:this.account.pubkey};r.id=NostrTools.getEventHash(r);try{r.sig=await NostrTools.signEvent(r,this.account.privkey);const u=await this._publishEventToRelays(r,e.relays);this.$q.notify({type:u?"positive":"warning",message:u?`The market profile has been published tp (${u} relays)!`:"The market profile could not be published"})}catch(u){console.error(u),this.$q.notify({message:"Cannot publish market profile",caption:`Error: ${u}`,color:"negative"});return}const a=NostrTools.nip19.naddrEncode({pubkey:r.pubkey,kind:30019,identifier:t,relays:e.relays});this.naddrDialog.publishedNaddr=a,this.naddrDialog.show=!0},_handleNewMerchant(e,t){Object.keys(this.relaysData).forEach(async r=>{const a=this.relaysData[r];if(!e.relays.includes(a.relayUrl)||a.merchants.includes(t))return;const l=await a.relay.list([{kinds:[30017,30018],authors:[t]}]);await this._processEvents(l,a),a.merchants.push(t),await this._requeryRelay(r)})},async _handleNewRelay(e,t){const r=await this._toRelayKey(e);if(this.relaysData[r]){const a=this.relaysData[r],l=await a.relay.list([{kinds:[30017,30018],authors:t.opts.merchants}]);await this._processEvents(l,a),a.merchants=[...new Set(a.merchants.concat(t.opts.merchants))],await this._requeryRelay(r)}else await this._loadRelayData(e,t.opts.merchants),await this._connectToRelay(r)},_handleRemoveMerchant(e){this.markets.find(r=>r.opts.merchants.find(a=>a===e))||(this.products=this.products.filter(r=>r.pubkey!==e),this.stalls=this.stalls.filter(r=>r.pubkey!==e),this._removeSubscriptionsForMerchant(e))},_removeSubscriptionsForMerchant(e){Object.keys(this.relaysData).forEach(async t=>{const r=this.relaysData[t];!r.merchants.includes(e)||(r.merchants=r.merchants.filter(a=>a!==e),await this._requeryRelay(t))})},async _handleRemovedRelay(e){if(!this.markets.find(r=>r.relays.find(a=>a===e))){const r=await this._toRelayKey(e);delete this.relaysData[r],this._persistRelaysData()}},addProductToCart(e){let t=this.shoppingCarts.find(a=>a.id===e.stall_id);t||(t={id:e.stall_id,products:[]},this.shoppingCarts.push(t)),t.merchant=e.pubkey;let r=t.products.find(a=>a.id===e.id);r||(r={...e,orderedQuantity:0},t.products.push(r)),r.orderedQuantity=Math.min(r.quantity,e.orderedQuantity||r.orderedQuantity+1),this.$q.localStorage.set("nostrmarket.shoppingCarts",this.shoppingCarts),this.$q.notify({type:"positive",message:"Product added to cart!"})},removeProductFromCart(e){const t=this.shoppingCarts.find(r=>r.id===e.stallId);t&&(t.products=t.products.filter(r=>r.id!==e.productId),t.products.length||(this.shoppingCarts=this.shoppingCarts.filter(r=>r.id!==e.stallId)),this.$q.localStorage.set("nostrmarket.shoppingCarts",this.shoppingCarts))},removeCart(e){this.shoppingCarts=this.shoppingCarts.filter(t=>t.id!==e),this.$q.localStorage.set("nostrmarket.shoppingCarts",this.shoppingCarts)},checkoutStallCart(e){this.checkoutCart=e,this.checkoutStall=this.stalls.find(t=>t.id===e.id),this.setActivePage("shopping-cart-checkout")},handleDmChatSelected(e){this.dmEvents=this.$q.localStorage.getItem(`nostrmarket.dm.${e}`)||{}},async sendDirectMessage(e){var t;if(!((t=this.account)!=null&&t.pubkey)){this.$q.notify({type:"warning",message:"Cannot send message. No user logged in!"});return}try{const r={...await NostrTools.getBlankEvent(),kind:4,created_at:Math.floor(Date.now()/1e3),tags:[["p",e.to]],pubkey:this.account.pubkey};r.content=await NostrTools.nip04.encrypt(this.account.privkey,e.to,e.message),r.id=NostrTools.getEventHash(r),r.sig=await NostrTools.signEvent(r,this.account.privkey),await this._sendDmEvent(r),r.content=e.message,this._persistDMEvent(r,e.to)}catch{this.$q.notify({type:"warning",message:"Failed to send message!"})}},async _sendDmEvent(e){const t=e.tags.filter(a=>a[0]==="p").map(a=>a[1]);let r=this._findRelaysForMerchant(t[0]);r!=null&&r.length||(r=[...defaultRelays]),await this._publishEventToRelays(e,r)},_noDmEvents(){return this.$q.localStorage.getAllKeys().filter(t=>t.startsWith("nostrmarket.dm")).length===0},async placeOrder({event:e,order:t,cartId:r}){var a;if(!((a=this.account)!=null&&a.privkey)){this.openAccountDialog();return}try{this.activeOrderId=t.id,e.content=await NostrTools.nip04.encrypt(this.account.privkey,this.checkoutStall.pubkey,JSON.stringify(t)),e.id=NostrTools.getEventHash(e),e.sig=await NostrTools.signEvent(e,this.account.privkey),await this._sendOrderEvent(e),this._persistOrderUpdate(this.checkoutStall.pubkey,e.created_at,t),this.removeCart(r),this.setActivePage("shopping-cart-list")}catch(l){console.warn(l),this.$q.notify({type:"warning",message:"Failed to place order!"})}},async _sendOrderEvent(e){const t=e.tags.filter(l=>l[0]==="p").map(l=>l[1]),r=this._findRelaysForMerchant(t[0]),a=await this._publishEventToRelays(e,r);this.$q.notify({type:a?"positive":"warning",message:a?`The order has been placed (${a} relays)!`:"Order could not be placed"}),this.qrCodeDialog={data:{payment_request:null,message:null},dismissMsg:null,show:!!a}},_handlePaymentRequest(e){var r;if(e.id&&e.id!==this.activeOrderId)return;if(!((r=e.payment_options)!=null&&r.length)){this.qrCodeDialog.data.message=e.message||"Unexpected error";return}const t=e.payment_options.find(a=>a.type=="ln").link;!t||(this.qrCodeDialog.data.payment_request=t,this.qrCodeDialog.dismissMsg=this.$q.notify({timeout:1e4,message:"Waiting for payment..."}))},_handleOrderStatusUpdate(e){if(e.id&&e.id!==this.activeOrderId)return;this.qrCodeDialog.dismissMsg&&this.qrCodeDialog.dismissMsg(),this.qrCodeDialog.show=!1;const t=e.shipped?"Order shipped":e.paid?"Order paid":"Order notification";this.$q.notify({type:"positive",message:t,caption:e.message||""})},async _handleStructuredDm(e,t){try{const r=JSON.parse(e.content);[0,1,2].indexOf(r.type)!==-1&&this._persistOrderUpdate(t,e.created_at,r),r.type===1?this._handlePaymentRequest(r):r.type===2&&this._handleOrderStatusUpdate(r)}catch(r){console.warn("Unable to handle incomming DM",r)}},_restoreFromStorage(){this.markets=this.$q.localStorage.getItem("nostrmarket.markets")||[],this.allMarketsSelected=!this.markets.find(s=>!s.selected),this.shoppingCarts=this.$q.localStorage.getItem("nostrmarket.shoppingCarts")||[],this.profiles=this.$q.localStorage.getItem("nostrmarket.profiles")||[],this.account=this.$q.localStorage.getItem("nostrmarket.account")||null,this.stalls=this.$q.localStorage.getItem("nostrmarket.stalls")||[],this.products=this.$q.localStorage.getItem("nostrmarket.products")||[];const e=this.$q.localStorage.getItem("nostrmarket.marketplaceConfig")||{ui:{darkMode:!1}},t=this.$q.localStorage.getItem("nostrmarket.sort")||{};this.sort.by=t.by||this.sort.by,this.sort.order=t.order||this.sort.order,this.config={...this.config,opts:{...this.config.opts,...e}},this._applyUiConfigs(this.config.opts);const r="nostrmarket.orders.";this.$q.localStorage.getAllKeys().filter(s=>s.startsWith(r)).forEach(s=>{const u=s.substring(r.length);this.orders[u]=this.$q.localStorage.getItem(s)});const l=this.$q.localStorage.getItem("nostrmarket.readNotes")||{};this.readNotes={...this.readNotes,...l}},_persistStallsAndProducts(){this.$q.localStorage.set("nostrmarket.stalls",this.stalls),this.$q.localStorage.set("nostrmarket.products",this.products)},_persistRelaysData(){this.$q.localStorage.set("nostrmarket.relays",Object.values(this.relaysData).filter(e=>!!e).map(e=>({lastEventAt:e.lastEventAt,relayUrl:e.relayUrl})))},_persistDMEvent(e,t){var l;const r=this.$q.localStorage.getItem(`nostrmarket.dm.${t}`)||{events:[],lastCreatedAt:0};r.events.find(s=>s.id===e.id)||(r.events.push(e),r.events.sort((s,u)=>s.created_at-u.created_at),r.lastCreatedAt=r.events[r.events.length-1].created_at,r.peerPubkey=t,this.$q.localStorage.set(`nostrmarket.dm.${t}`,r),((l=this.dmEvents)==null?void 0:l.peerPubkey)===t?this.dmEvents=this.$q.localStorage.getItem(`nostrmarket.dm.${t}`)||{}:this.dmEvents={...this.dmEvents})},_persistOrderUpdate(e,t,r){let a=this.$q.localStorage.getItem(`nostrmarket.orders.${e}`)||[];const l=a.findIndex(u=>u.id===r.id);if(l===-1){a.unshift({...r,eventCreatedAt:t,createdAt:t}),this.orders[e]=a,this.orders={...this.orders},this.$q.localStorage.set(`nostrmarket.orders.${e}`,a);return}let s=a[l];r.type===0?(s.createdAt=t,s={...s,...r,message:s.message||r.message}):s=s.eventCreatedAtf.id==r))==null?void 0:d.pubkey);s.searchParams.set("merchant",u),e==="stall"||e==="product"?r&&(this.activeStall=r,this.setActivePage("customer-stall"),s.searchParams.set("stall",r),this.activeProduct=a,a?s.searchParams.set("product",a):s.searchParams.delete("product")):(this.activeMarket=null,this.activeStall=null,this.activeProduct=null,s.searchParams.delete("merchant"),s.searchParams.delete("stall"),s.searchParams.delete("product"),this.setActivePage(e)),window.history.pushState({},"",s)},copyUrl:function(){this.copyText(window.location)},copyText:function(e){var t=this.$q.notify;qS(e).then(function(){t({message:"Copied to clipboard!",position:"bottom"})})},getAmountFormated(e,t="USD"){return formatCurrency(e,t)},setActivePage(e="market"){this.activePage=e},transitToPage(e){this.activePage="loading",setTimeout(()=>this.setActivePage(e),100)},showInvoiceQr(e){!e||(this.qrCodeDialog={data:{payment_request:e},dismissMsg:null,show:!0})},toggleCategoryFilter(e){const t=this.filterData.categories.indexOf(e);t===-1?this.filterData.categories.push(e):this.filterData.categories.splice(t,1)},hasCategory(e=[]){var t;if(!((t=this.filterData.categories)!=null&&t.length))return!0;for(const r of e)if(this.filterData.categories.indexOf(r.toLowerCase())!==-1)return!0;return!1},allStallCatgories(e){const t=this.products.filter(r=>r.stall_id===e).map(r=>r.categories).flat().filter(r=>!!r);return Array.from(new Set(t))},allStallImages(e){const t=this.products.filter(r=>r.stall_id===e).map(r=>r.images&&r.images[0]).filter(r=>!!r);return Array.from(new Set(t))},sanitizeImageSrc(e,t){try{if(e)return new URL(e),e}catch{}return t},markNoteAsRead(e){this.readNotes[e]=!0,this.$q.localStorage.set("nostrmarket.readNotes",this.readNotes)},focusOnElement(e){var t;(t=document.getElementById(e))==null||t.scrollIntoView(),this.showFilterDetails=!0},sortProducts(e,t="asc"){this.sort.by=e,this.sort.order=t,this.$q.localStorage.set("nostrmarket.sort",{by:e,order:t})}}}),aA=Object.assign(nA,{setup(e){return window.$q=$w(),(t,r)=>(R(),ne($t,null,[y(Aw,{class:"q-pa-sm"},{default:_(()=>{var a,l,s,u,d;return[S("div",ux,[S("div",cx,[y(Zr,{onClick:r[0]||(r[0]=f=>t.navigateTo("market")),rounded:"",size:"64px",class:"q-ma-none q-pa-none gt-sm cursor-pointer"},{default:_(()=>[t.logoImage?(R(),ne("img",{key:0,src:t.logoImage},null,8,dx)):$e("",!0)]),_:1})]),S("div",fx,[hx,y(It,{class:"rounded-pill",style:{width:"100%"},rounded:"",outlined:"",clearable:"",modelValue:t.searchText,"onUpdate:modelValue":r[1]||(r[1]=f=>t.searchText=f),modelModifiers:{trim:!0},label:"Filter products, load market profile..."},Kh({append:_(()=>[t.searchText?$e("",!0):(R(),oe(Ht,{key:0,name:"search"}))]),_:2},[t.showFilterDetails?{name:"label",fn:_(()=>[ke(" Filter or paste a "),y(Tn,{class:"q-px-sm text-subtitle1",color:"secondary"},{default:_(()=>[ke("naddr")]),_:1}),ke(" here ")]),key:"0"}:void 0]),1032,["modelValue"])]),S("div",gx,[S("div",mx,[y(ge,{color:"gray",icon:"travel_explore",flat:"",size:"lg",onClick:r[2]||(r[2]=f=>t.navigateTo("product-filter"))},{default:_(()=>[y(Hr,null,{default:_(()=>[ke("Search for products on Nostr")]),_:1}),t.filterCount?(R(),oe(Tn,{key:0,color:"secondary",floating:""},{default:_(()=>[S("span",{textContent:me(t.filterCount)},null,8,vx)]),_:1})):$e("",!0)]),_:1}),y(ge,{onClick:r[3]||(r[3]=f=>t.navigateTo("user-config")),color:"gray",icon:t.account?"perm_identity":"person_add",flat:"",size:"lg"},{default:_(()=>[y(Hr,null,{default:_(()=>[ke("User Config")]),_:1})]),_:1},8,["icon"]),y(ge,{onClick:r[4]||(r[4]=f=>t.navigateTo("user-chat")),color:"gray",icon:"chat",flat:"",size:"lg"},{default:_(()=>[y(Hr,null,{default:_(()=>[ke("Chat")]),_:1})]),_:1}),y(ge,{onClick:r[5]||(r[5]=f=>t.navigateTo("customer-orders")),color:"gray",icon:"receipt_long",flat:"",size:"lg"},{default:_(()=>[y(Hr,null,{default:_(()=>[ke("Orders")]),_:1})]),_:1}),y(ge,{color:"gray",icon:"shopping_cart",dense:"",round:"",flat:"",size:"lg",onClick:r[6]||(r[6]=f=>t.navigateTo("shopping-cart-list"))},{default:_(()=>[y(Hr,null,{default:_(()=>[ke("Shopping Cart")]),_:1}),t.allCartsItemCount?(R(),oe(Tn,{key:0,color:"secondary",floating:""},{default:_(()=>[S("span",{textContent:me(t.allCartsItemCount)},null,8,px)]),_:1})):$e("",!0)]),_:1})])])]),(a=t.products)!=null&&a.length?(R(),ne("div",yx,[y(nc,{items:t.allCategories,"virtual-scroll-horizontal":""},{default:_(({item:f,index:g})=>[(R(),oe(Ga,{key:g,color:f.selected?"grey":"",class:"cursor-pointer q-mb-md"},{default:_(()=>[S("span",{textContent:me(f.category),onClick:v=>t.toggleCategoryFilter(f.category)},null,8,_x),y(Tn,{onClick:v=>t.toggleCategoryFilter(f.category),rounded:"",class:"q-ml-sm",color:"secondary"},{default:_(()=>[S("span",{textContent:me(f.count)},null,8,bx)]),_:2},1032,["onClick"])]),_:2},1032,["color"]))]),_:1},8,["items"])])):$e("",!0),t.markets.length?$e("",!0):(R(),oe(Yt,{key:1,class:"q-mb-sm"},{default:_(()=>[y(Ne,{class:"bg-secondary text-white"},{default:_(()=>[wx,Sx]),_:1})]),_:1})),t.isLoading?(R(),ne("div",kx,[S("div",Cx,[y(Eu,{color:"primary",size:"xl"})])])):$e("",!0),y(Tw,{class:"row q-pa-none q-mb-lg gt-sm shadow-2"},{default:_(()=>[t.bannerImage?(R(),oe(rc,{key:0,src:t.bannerImage,onClick:r[7]||(r[7]=f=>t.navigateTo("market")),class:"rounded-borders cursor-pointer",style:{width:"100%",height:"250px"},cover:""},{default:_(()=>{var f,g;return[(g=(f=t.config)==null?void 0:f.opts)!=null&&g.about?(R(),ne("div",Tx,[S("span",{textContent:me(t.config.opts.about)},null,8,Mx)])):$e("",!0)]}),_:1},8,["src"])):$e("",!0)]),_:1}),S("div",Dx,[S("div",qx,[y(xw,{class:"cursor q-mt-sm q-mr-sm"},{default:_(()=>[y(br,null,{default:_(()=>[y(ge,{onClick:r[8]||(r[8]=f=>t.navigateTo("market")),icon:"home",flat:"",class:"q-pa-none"},{default:_(()=>[S("span",{textContent:me(t.marketsName),class:"q-ml-sm"},null,8,Px)]),_:1}),y(Iu,{flat:"",class:"q-pl-xs"},{default:_(()=>[y(rr,null,{default:_(()=>[sn((R(),oe(Vt,null,{default:_(()=>[y(xe,{side:"",top:""},{default:_(()=>[y(io,{modelValue:t.allMarketsSelected,"onUpdate:modelValue":r[9]||(r[9]=f=>t.allMarketsSelected=f),onClick:t.toggleAllMarkets},null,8,["modelValue","onClick"])]),_:1}),y(xe,null,{default:_(()=>[y(He,null,{default:_(()=>[xx]),_:1}),y(He,{caption:""},{default:_(()=>[ke("Aggregate all markets into one view")]),_:1})]),_:1}),y(xe,{side:"",top:""},{default:_(()=>[sn((R(),oe(ge,{onClick:r[10]||(r[10]=f=>t.createMarket(!0)),color:"green",outline:""},{default:_(()=>[ke("New")]),_:1})),[[Sr]])]),_:1})]),_:1})),[[uo]]),y(ut),(R(!0),ne($t,null,Ut(t.markets,(f,g)=>(R(),oe(Vt,{key:g},{default:_(()=>[y(xe,{side:"",top:""},{default:_(()=>[y(io,{modelValue:f.selected,"onUpdate:modelValue":v=>f.selected=v,onClick:r[11]||(r[11]=v=>t.toggleMarket())},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),y(xe,null,{default:_(()=>[y(He,null,{default:_(()=>{var v;return[S("span",{textContent:me(((v=f.opts)==null?void 0:v.name)||"Market")},null,8,Ax)]}),_:2},1024),y(He,{caption:""},{default:_(()=>{var v;return[S("span",{textContent:me((v=f.opts)==null?void 0:v.about),class:"ellipsis-2-lines text-wrap"},null,8,Ex)]}),_:2},1024)]),_:2},1024),y(xe,{side:"",top:""},{default:_(()=>[sn(y(ge,{color:"secondary",flat:"",icon:"settings",onClick:v=>t.showMarketConfig(g)},null,8,["onClick"]),[[Sr]])]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})]),_:1}),t.activePage==="customer-stall"?(R(),oe(br,{key:0,label:t.stallName,onClick:r[12]||(r[12]=f=>t.navigateTo("stall",{stall:t.activeStall})),icon:"storefront",class:"cursor-pointer"},null,8,["label"])):$e("",!0),t.activePage==="customer-stall"&&t.activeProduct?(R(),oe(br,{key:1,label:t.productName,class:"cursor-pointer",icon:"widgets"},null,8,["label"])):$e("",!0),t.activePage==="shopping-cart-list"?(R(),oe(br,{key:2,label:"Shoping Cart",icon:"shopping_cart"})):$e("",!0),t.activePage==="customer-orders"?(R(),oe(br,{key:3,label:"Orders",icon:"receipt_long"})):$e("",!0),t.activePage==="market-config"?(R(),oe(br,{key:4,label:"Settings",icon:"settings"})):$e("",!0),t.activePage==="product-filter"?(R(),oe(br,{key:5,label:"Filter",icon:"travel_explore"})):$e("",!0),t.activePage==="user-config"?(R(),oe(br,{key:6,label:"User Config",icon:"perm_identity"})):$e("",!0),t.activePage==="user-chat"?(R(),oe(br,{key:7,label:"User Chat",icon:"chat"})):$e("",!0)]),_:1})]),S("div",Ix,[S("div",$x,[t.activePage==="market"&&((l=t.stalls)==null?void 0:l.length)?(R(),oe(io,{key:0,modelValue:t.groupByStall,"onUpdate:modelValue":r[13]||(r[13]=f=>t.groupByStall=f),class:"q-pl-md q-mt-sm",size:"xs",val:"xs",label:"Group by stalls"},null,8,["modelValue"])):$e("",!0),t.activePage==="customer-stall"?(R(),oe(ge,{key:1,flat:"",color:"grey",icon:"content_copy",onClick:r[14]||(r[14]=f=>t.copyUrl())})):$e("",!0),y(Iu,{flat:"",color:"grey",icon:"sort"},{default:_(()=>[y(rr,null,{default:_(()=>[(R(!0),ne($t,null,Ut(t.sort.options,f=>sn((R(),oe(Vt,{key:f.field,active:t.sort.by===f.field},{default:_(()=>[y(xe,{side:"",top:""},{default:_(()=>[sn(y(ge,{onClick:g=>t.sortProducts(f.field,"asc"),color:t.sort.by===f.field&&t.sort.order==="asc"?"primary":"",flat:"",class:"rotate-180",icon:"filter_list"},null,8,["onClick","color"]),[[Sr]])]),_:2},1024),y(xe,null,{default:_(()=>[y(He,null,{default:_(()=>[S("strong",null,[S("span",{textContent:me(f.label)},null,8,Rx)])]),_:2},1024)]),_:2},1024),y(xe,{side:"",top:""},{default:_(()=>[sn(y(ge,{onClick:g=>t.sortProducts(f.field,"desc"),color:t.sort.by===f.field&&t.sort.order==="desc"?"primary":"",flat:"",icon:"filter_list"},null,8,["onClick","color"]),[[Sr]])]),_:2},1024)]),_:2},1032,["active"])),[[uo]])),128))]),_:1})]),_:1})])])]),y(ut,{class:"q-mt-sm q-mb-md"}),t.activePage==="loading"?(R(),ne("div",Ox,[S("div",Lx,[y(Eu,{color:"primary",size:"xl"})])])):$e("",!0),t.activePage==="product-filter"?(R(),oe(sx,{key:4,filter:t.filterData,categories:t.allCategories,currencies:t.allCurrencies,merchants:t.allMerchants,stalls:t.stalls,profiles:t.profiles,onFilterUpdate:t.handleFilterData,class:"q-mb-md"},null,8,["filter","categories","currencies","merchants","stalls","profiles","onFilterUpdate"])):t.activeMarket&&t.activePage==="market-config"?(R(),oe(xg,{key:5,market:t.activeMarket,profiles:t.profiles,"relays-data":t.activeMarketRelaysData,"read-notes":t.readNotes,onApplyUi:t.updateUiConfig,onMarketUpdate:t.updateMarket,onDeleteMarket:t.deleteMarket,onPublishNaddr:t.publishNaddr,onNoteRead:t.markNoteAsRead},null,8,["market","profiles","relays-data","read-notes","onApplyUi","onMarketUpdate","onDeleteMarket","onPublishNaddr","onNoteRead"])):t.activePage==="user-config"?(R(),oe(Nk,{key:6,account:t.account,onLogin:r[15]||(r[15]=f=>t.accountDialog.show=!0),onLogout:t.logout,onClearAllData:t.clearAllData,onCopyText:t.copyText},null,8,["account","onLogout","onClearAllData","onCopyText"])):t.activePage==="user-chat"?(R(),oe(oD,{key:7,"account-pubkey":(s=t.account)==null?void 0:s.pubkey,"peer-pubkeys":t.dmPeers,profiles:t.profiles,events:t.dmEvents,onChatSelected:t.handleDmChatSelected,onSendDm:t.sendDirectMessage},null,8,["account-pubkey","peer-pubkeys","profiles","events","onChatSelected","onSendDm"])):t.activePage==="shopping-cart-list"?(R(),oe(mD,{key:8,carts:t.shoppingCarts,profiles:t.profiles,onAddToCart:t.addProductToCart,onRemoveFromCart:t.removeProductFromCart,onRemoveCart:t.removeCart,onCheckoutCart:t.checkoutStallCart},null,8,["carts","profiles","onAddToCart","onRemoveFromCart","onRemoveCart","onCheckoutCart"])):t.activePage==="shopping-cart-checkout"?(R(),oe(jD,{key:9,cart:t.checkoutCart,stall:t.checkoutStall,"customer-pubkey":(u=t.account)==null?void 0:u.pubkey,profiles:t.profiles,onLoginRequired:t.openAccountDialog,onPlaceOrder:t.placeOrder,onChangePage:t.navigateTo},null,8,["cart","stall","customer-pubkey","profiles","onLoginRequired","onPlaceOrder","onChangePage"])):t.activePage==="customer-orders"?(R(),oe(Qq,{key:10,orders:t.orders,products:t.products,stalls:t.stalls,profiles:t.profiles,onShowInvoice:t.showInvoiceQr},null,8,["orders","products","stalls","profiles","onShowInvoice"])):t.activePage==="customer-stall"?(R(),oe(PP,{key:11,stall:t.stalls.find(f=>f.id==t.activeStall),products:t.filteredProducts,"product-detail":t.activeProduct,onChangePage:t.navigateTo,onAddToCart:t.addProductToCart},null,8,["stall","products","product-detail","onChangePage","onAddToCart"])):(d=t.markets)!=null&&d.length?(R(),ne("div",Yx,[t.groupByStall?(R(),oe(YP,{key:0,stalls:t.filterStalls,onChangePage:t.navigateTo},null,8,["stalls","onChangePage"])):(R(),oe(_q,{key:1,"filtered-products":t.filteredProducts,"search-text":t.searchText,"filter-categories":t.filterData.categories,onChangePage:t.navigateTo,onAddToCart:t.addProductToCart},null,8,["filtered-products","search-text","filter-categories","onChangePage","onAddToCart"]))])):(R(),ne("div",Nx,[y(rr,{class:"q-mt-md",bordered:""},{default:_(()=>[y(Vt,null,{default:_(()=>[y(xe,{class:"q-mt-sm q-ml-lg"},{default:_(()=>[y(He,null,{default:_(()=>[Bx]),_:1}),y(ut,{class:"q-mb-xl q-mt-md"}),y(He,null,{default:_(()=>[Fx]),_:1})]),_:1})]),_:1}),y(Vt,null,{default:_(()=>[y(xe,{class:"q-mt-sm q-ml-lg"},{default:_(()=>[y(He,null,{default:_(()=>[S("ul",null,[S("li",null,[S("span",Vx,[y(ge,{onClick:r[16]||(r[16]=f=>t.addMarket(t.defaultMarketNaddr)),size:"xl",flat:"",color:"secondary",class:"q-mb-xs"},{default:_(()=>[ke("Import")]),_:1}),ke(" a list of popular merchants, or ")])]),S("li",null,[S("span",Ux,[y(ge,{onClick:r[17]||(r[17]=f=>t.createMarket(!0)),flat:"",size:"xl",color:"secondary",class:"q-mb-xs"},{default:_(()=>[ke("Add a merchant")]),_:1}),ke(" using its public key, or ")])]),S("li",null,[S("span",zx,[y(ge,{onClick:r[18]||(r[18]=f=>t.focusOnElement("search-text")),flat:"",size:"xl",color:"secondary",class:"q-mb-xs"},{default:_(()=>[ke("Add a market profile")]),_:1}),ke(" using a shareable "),Wx,ke(" identifier ")]),y(It,{class:"rounded-pill",style:{width:"100%"},rounded:"",outlined:"",clearable:"",modelValue:t.searchText,"onUpdate:modelValue":r[19]||(r[19]=f=>t.searchText=f),modelModifiers:{trim:!0},label:"Load market profile (naddr)..."},null,8,["modelValue"])])])]),_:1})]),_:1}),y(xe,{side:""})]),_:1})]),_:1})]))]}),_:1}),y(Ra,{modelValue:t.accountDialog.show,"onUpdate:modelValue":r[22]||(r[22]=a=>t.accountDialog.show=a),position:"top"},{default:_(()=>[y(Yt,null,{default:_(()=>[y(Ne,{class:"row"},{default:_(()=>[Hx,y(Iw)]),_:1}),y(Ne,null,{default:_(()=>[Gx]),_:1}),y(Ne,{class:"q-pt-none"},{default:_(()=>[y(It,{dense:"",label:"Nsec/Hex",modelValue:t.accountDialog.data.key,"onUpdate:modelValue":r[20]||(r[20]=a=>t.accountDialog.data.key=a),autofocus:"",onKeyup:Pu(t.createAccount,["enter"]),error:t.accountDialog.data.key&&!t.isValidAccountKey,hint:"Enter you private key"},null,8,["modelValue","onKeyup","error"])]),_:1}),y(_i,{align:"right",class:"text-primary"},{default:_(()=>[t.isValidAccountKey?(R(),oe(ge,{key:0,label:"Login",color:"primary",onClick:r[21]||(r[21]=()=>t.createAccount())})):(R(),oe(ge,{key:1,flat:"",label:"Generate",onClick:t.generateKeyPair},null,8,["onClick"])),sn((R(),oe(ge,{flat:"",color:"grey",class:"q-ml-auto"},{default:_(()=>[ke("Close")]),_:1})),[[Sr]])]),_:1})]),_:1})]),_:1},8,["modelValue"]),y(Ra,{modelValue:t.qrCodeDialog.show,"onUpdate:modelValue":r[24]||(r[24]=a=>t.qrCodeDialog.show=a),position:"top"},{default:_(()=>[y(Yt,{class:"q-pa-md q-pt-xl"},{default:_(()=>{var a;return[S("div",Kx,[t.qrCodeDialog.data.message?(R(),ne("div",Qx,[S("strong",null,[S("span",{textContent:me(t.qrCodeDialog.data.message)},null,8,jx)])])):(R(),ne("a",{key:1,href:"lightning:"+((a=t.qrCodeDialog.data)==null?void 0:a.payment_request)},[t.qrCodeDialog.data.payment_request?(R(),ne("div",Jx,[y(lw(MS),{value:t.qrCodeDialog.data.payment_request,options:{width:340},class:"rounded-borders"},null,8,["value"])])):(R(),ne("div",Xx,[y($h,{color:"primary",size:"2.55em"})]))],8,Zx))]),S("div",eA,[t.qrCodeDialog.data.payment_request?(R(),oe(ge,{key:0,outline:"",color:"primary",onClick:r[23]||(r[23]=l=>t.copyText(t.qrCodeDialog.data.payment_request))},{default:_(()=>[ke("Copy invoice")]),_:1})):$e("",!0),sn((R(),oe(ge,{flat:"",color:"grey",class:"q-ml-auto"},{default:_(()=>[ke("Close")]),_:1})),[[Sr]])])]}),_:1})]),_:1},8,["modelValue"]),y(Ra,{modelValue:t.naddrDialog.show,"onUpdate:modelValue":r[27]||(r[27]=a=>t.naddrDialog.show=a),position:"top"},{default:_(()=>[y(Yt,{class:"q-pa-lg q-pt-xl",style:{width:"500px"}},{default:_(()=>[y(It,{filled:"",dense:"",type:"textarea",rows:"30",readonly:"",modelValue:t.naddrDialog.publishedNaddr,"onUpdate:modelValue":r[25]||(r[25]=a=>t.naddrDialog.publishedNaddr=a),modelModifiers:{trim:!0},label:"Market Naddr"},null,8,["modelValue"]),S("div",tA,[y(ge,{outline:"",color:"primary",icon:"content_copy",onClick:r[26]||(r[26]=a=>t.copyText(t.naddrDialog.publishedNaddr))},{default:_(()=>[ke("Copy Naddr")]),_:1}),sn((R(),oe(ge,{flat:"",color:"grey",class:"q-ml-auto"},{default:_(()=>[ke("Close")]),_:1})),[[Sr]])])]),_:1})]),_:1},8,["modelValue"])],64))}});export{aA as default}; diff --git a/static/market/assets/MarketPage.e81dd906.js b/static/market/assets/MarketPage.e81dd906.js deleted file mode 100644 index 96245d3..0000000 --- a/static/market/assets/MarketPage.e81dd906.js +++ /dev/null @@ -1,45 +0,0 @@ -import{c as Je,a as $,h as E,m as Si,P as xb,r as se,G as Ka,H as yi,F as Sn,I as Ln,w as Ve,y as ni,z as Ht,g as Dt,J as Pr,C as ta,K as ih,L as Kn,j as Ab,M as Ku,N as Gu,O as Qu,Q as Ra,R as co,S as $h,T as ju,U as Oh,B as xo,V as Ga,b as Mt,W as Rt,X as or,Y as Eb,Z as sr,$ as Ib,a0 as Zu,a1 as Yt,a2 as $b,a3 as Ju,A as Xu,a4 as ec,a5 as tc,a6 as oa,a7 as sa,a8 as Ob,a9 as Rb,aa as Rh,ab as Ao,ac as Lh,ad as Nh,ae as Bh,af as na,ag as Fh,ah,ai as Lb,aj as Nb,ak as Uh,al as Bb,am as zh,an as fo,ao as Fb,ap as ye,aq as ir,ar as Ub,as as zb,at as nc,i as ho,e as Tr,l as Vb,d as Yb,au as rc,av as Wb,aw as Hb,ax as Kb,n as sn,ay as Vh,az as Gn,aA as Yh,aB as Hi,p as Wh,aC as ic,aD as Hh,aE as Kh,aF as Gh,aG as Gb,aH as Qb,aI as lh,aJ as jb,aK as Zb,aL as Jb,aM as go,aN as Qh,aO as ji,aP as Xb,_ as Tn,s as O,aQ as re,x as y,u as b,aR as Xr,v as S,aS as ge,aT as Te,aU as Nt,q as ti,t as oe,aV as Ne,aW as ut,aX as $e,aY as It,aZ as lo,a_ as Au,a$ as Wt,b0 as Jt,b1 as hu,b2 as La,b3 as ew,b4 as tw,b5 as wi,b6 as nw,b7 as Xl,D as gu,b8 as oh,b9 as jh,ba as rw,bb as iw,bc as aw,bd as sh,be as lw,bf as ow,bg as sw,bh as uw}from"./index.923cbbf9.js";import{a as Eu,Q as cw}from"./QResizeObserver.1ffe80c2.js";const dw=["top","middle","bottom"];var Cn=Je({name:"QBadge",props:{color:String,textColor:String,floating:Boolean,transparent:Boolean,multiLine:Boolean,outline:Boolean,rounded:Boolean,label:[Number,String],align:{type:String,validator:e=>dw.includes(e)}},setup(e,{slots:t}){const r=$(()=>e.align!==void 0?{verticalAlign:e.align}:null),a=$(()=>{const l=e.outline===!0&&e.color||e.textColor;return`q-badge flex inline items-center no-wrap q-badge--${e.multiLine===!0?"multi":"single"}-line`+(e.outline===!0?" q-badge--outline":e.color!==void 0?` bg-${e.color}`:"")+(l!==void 0?` text-${l}`:"")+(e.floating===!0?" q-badge--floating":"")+(e.rounded===!0?" q-badge--rounded":"")+(e.transparent===!0?" q-badge--transparent":"")});return()=>E("div",{class:a.value,style:r.value,role:"status","aria-label":e.label},Si(t.default,e.label!==void 0?[e.label]:[]))}});function Ua(){if(window.getSelection!==void 0){const e=window.getSelection();e.empty!==void 0?e.empty():e.removeAllRanges!==void 0&&(e.removeAllRanges(),xb.is.mobile!==!0&&e.addRange(document.createRange()))}else document.selection!==void 0&&document.selection.empty()}const Zh={target:{default:!0},noParentEvent:Boolean,contextMenu:Boolean};function Jh({showing:e,avoidEmit:t,configureAnchorEl:r}){const{props:a,proxy:l,emit:s}=Dt(),u=se(null);let d=null;function f(_){return u.value===null?!1:_===void 0||_.touches===void 0||_.touches.length<=1}const g={};r===void 0&&(Object.assign(g,{hide(_){l.hide(_)},toggle(_){l.toggle(_),_.qAnchorHandled=!0},toggleKey(_){Ka(_,13)===!0&&g.toggle(_)},contextClick(_){l.hide(_),yi(_),Sn(()=>{l.show(_),_.qAnchorHandled=!0})},prevent:yi,mobileTouch(_){if(g.mobileCleanup(_),f(_)!==!0)return;l.hide(_),u.value.classList.add("non-selectable");const x=_.target;Ln(g,"anchor",[[x,"touchmove","mobileCleanup","passive"],[x,"touchend","mobileCleanup","passive"],[x,"touchcancel","mobileCleanup","passive"],[u.value,"contextmenu","prevent","notPassive"]]),d=setTimeout(()=>{d=null,l.show(_),_.qAnchorHandled=!0},300)},mobileCleanup(_){u.value.classList.remove("non-selectable"),d!==null&&(clearTimeout(d),d=null),e.value===!0&&_!==void 0&&Ua()}}),r=function(_=a.contextMenu){if(a.noParentEvent===!0||u.value===null)return;let x;_===!0?l.$q.platform.is.mobile===!0?x=[[u.value,"touchstart","mobileTouch","passive"]]:x=[[u.value,"mousedown","hide","passive"],[u.value,"contextmenu","contextClick","notPassive"]]:x=[[u.value,"click","toggle","passive"],[u.value,"keyup","toggleKey","passive"]],Ln(g,"anchor",x)});function v(){Pr(g,"anchor")}function C(_){for(u.value=_;u.value.classList.contains("q-anchor--skip");)u.value=u.value.parentNode;r()}function M(){if(a.target===!1||a.target===""||l.$el.parentNode===null)u.value=null;else if(a.target===!0)C(l.$el.parentNode);else{let _=a.target;if(typeof a.target=="string")try{_=document.querySelector(a.target)}catch{_=void 0}_!=null?(u.value=_.$el||_,r()):(u.value=null,console.error(`Anchor: target "${a.target}" not found`))}}return Ve(()=>a.contextMenu,_=>{u.value!==null&&(v(),r(_))}),Ve(()=>a.target,()=>{u.value!==null&&v(),M()}),Ve(()=>a.noParentEvent,_=>{u.value!==null&&(_===!0?v():r())}),ni(()=>{M(),t!==!0&&a.modelValue===!0&&u.value===null&&s("update:modelValue",!1)}),Ht(()=>{d!==null&&clearTimeout(d),v()}),{anchorEl:u,canShow:f,anchorEvents:g}}function Xh(e,t){const r=se(null);let a;function l(d,f){const g=`${f!==void 0?"add":"remove"}EventListener`,v=f!==void 0?f:a;d!==window&&d[g]("scroll",v,ta.passive),window[g]("scroll",v,ta.passive),a=f}function s(){r.value!==null&&(l(r.value),r.value=null)}const u=Ve(()=>e.noParentEvent,()=>{r.value!==null&&(s(),t())});return Ht(u),{localScrollTarget:r,unconfigureScrollTarget:s,changeScrollEvent:l}}const{notPassiveCapture:mo}=ta,_i=[];function vo(e){const t=e.target;if(t===void 0||t.nodeType===8||t.classList.contains("no-pointer-events")===!0)return;let r=ih.length-1;for(;r>=0;){const a=ih[r].$;if(a.type.name==="QTooltip"){r--;continue}if(a.type.name!=="QDialog")break;if(a.props.seamless!==!0)return;r--}for(let a=_i.length-1;a>=0;a--){const l=_i[a];if((l.anchorEl.value===null||l.anchorEl.value.contains(t)===!1)&&(t===document.body||l.innerRef.value!==null&&l.innerRef.value.contains(t)===!1))e.qClickOutside=!0,l.onClickOutside(e);else return}}function eg(e){_i.push(e),_i.length===1&&(document.addEventListener("mousedown",vo,mo),document.addEventListener("touchstart",vo,mo))}function po(e){const t=_i.findIndex(r=>r===e);t>-1&&(_i.splice(t,1),_i.length===0&&(document.removeEventListener("mousedown",vo,mo),document.removeEventListener("touchstart",vo,mo)))}let uh,ch;function yo(e){const t=e.split(" ");return t.length!==2?!1:["top","center","bottom"].includes(t[0])!==!0?(console.error("Anchor/Self position must start with one of top/center/bottom"),!1):["left","middle","right","start","end"].includes(t[1])!==!0?(console.error("Anchor/Self position must end with one of left/middle/right/start/end"),!1):!0}function tg(e){return e?!(e.length!==2||typeof e[0]!="number"||typeof e[1]!="number"):!0}const Iu={"start#ltr":"left","start#rtl":"right","end#ltr":"right","end#rtl":"left"};["left","middle","right"].forEach(e=>{Iu[`${e}#ltr`]=e,Iu[`${e}#rtl`]=e});function _o(e,t){const r=e.split(" ");return{vertical:r[0],horizontal:Iu[`${r[1]}#${t===!0?"rtl":"ltr"}`]}}function fw(e,t){let{top:r,left:a,right:l,bottom:s,width:u,height:d}=e.getBoundingClientRect();return t!==void 0&&(r-=t[1],a-=t[0],s+=t[1],l+=t[0],u+=t[0],d+=t[1]),{top:r,bottom:s,height:d,left:a,right:l,width:u,middle:a+(l-a)/2,center:r+(s-r)/2}}function hw(e,t,r){let{top:a,left:l}=e.getBoundingClientRect();return a+=t.top,l+=t.left,r!==void 0&&(a+=r[1],l+=r[0]),{top:a,bottom:a+1,height:1,left:l,right:l+1,width:1,middle:l,center:a}}function gw(e,t){return{top:0,center:t/2,bottom:t,left:0,middle:e/2,right:e}}function dh(e,t,r,a){return{top:e[r.vertical]-t[a.vertical],left:e[r.horizontal]-t[a.horizontal]}}function ac(e,t=0){if(e.targetEl===null||e.anchorEl===null||t>5)return;if(e.targetEl.offsetHeight===0||e.targetEl.offsetWidth===0){setTimeout(()=>{ac(e,t+1)},10);return}const{targetEl:r,offset:a,anchorEl:l,anchorOrigin:s,selfOrigin:u,absoluteOffset:d,fit:f,cover:g,maxHeight:v,maxWidth:C}=e;if(Kn.is.ios===!0&&window.visualViewport!==void 0){const J=document.body.style,{offsetLeft:V,offsetTop:H}=window.visualViewport;V!==uh&&(J.setProperty("--q-pe-left",V+"px"),uh=V),H!==ch&&(J.setProperty("--q-pe-top",H+"px"),ch=H)}const{scrollLeft:M,scrollTop:_}=r,x=d===void 0?fw(l,g===!0?[0,0]:a):hw(l,d,a);Object.assign(r.style,{top:0,left:0,minWidth:null,minHeight:null,maxWidth:C||"100vw",maxHeight:v||"100vh",visibility:"visible"});const{offsetWidth:I,offsetHeight:L}=r,{elWidth:F,elHeight:Y}=f===!0||g===!0?{elWidth:Math.max(x.width,I),elHeight:g===!0?Math.max(x.height,L):L}:{elWidth:I,elHeight:L};let D={maxWidth:C,maxHeight:v};(f===!0||g===!0)&&(D.minWidth=x.width+"px",g===!0&&(D.minHeight=x.height+"px")),Object.assign(r.style,D);const A=gw(F,Y);let N=dh(x,A,s,u);if(d===void 0||a===void 0)mu(N,x,A,s,u);else{const{top:J,left:V}=N;mu(N,x,A,s,u);let H=!1;if(N.top!==J){H=!0;const pe=2*a[1];x.center=x.top-=pe,x.bottom-=pe+2}if(N.left!==V){H=!0;const pe=2*a[0];x.middle=x.left-=pe,x.right-=pe+2}H===!0&&(N=dh(x,A,s,u),mu(N,x,A,s,u))}D={top:N.top+"px",left:N.left+"px"},N.maxHeight!==void 0&&(D.maxHeight=N.maxHeight+"px",x.height>N.maxHeight&&(D.minHeight=D.maxHeight)),N.maxWidth!==void 0&&(D.maxWidth=N.maxWidth+"px",x.width>N.maxWidth&&(D.minWidth=D.maxWidth)),Object.assign(r.style,D),r.scrollTop!==_&&(r.scrollTop=_),r.scrollLeft!==M&&(r.scrollLeft=M)}function mu(e,t,r,a,l){const s=r.bottom,u=r.right,d=Ab(),f=window.innerHeight-d,g=document.body.clientWidth;if(e.top<0||e.top+s>f)if(l.vertical==="center")e.top=t[a.vertical]>f/2?Math.max(0,f-s):0,e.maxHeight=Math.min(s,f);else if(t[a.vertical]>f/2){const v=Math.min(f,a.vertical==="center"?t.center:a.vertical===l.vertical?t.bottom:t.top);e.maxHeight=Math.min(s,v),e.top=Math.max(0,v-s)}else e.top=Math.max(0,a.vertical==="center"?t.center:a.vertical===l.vertical?t.top:t.bottom),e.maxHeight=Math.min(s,f-e.top);if(e.left<0||e.left+u>g)if(e.maxWidth=Math.min(u,g),l.horizontal==="middle")e.left=t[a.horizontal]>g/2?Math.max(0,g-u):0;else if(t[a.horizontal]>g/2){const v=Math.min(g,a.horizontal==="middle"?t.middle:a.horizontal===l.horizontal?t.right:t.left);e.maxWidth=Math.min(u,v),e.left=Math.max(0,v-e.maxWidth)}else e.left=Math.max(0,a.horizontal==="middle"?t.middle:a.horizontal===l.horizontal?t.left:t.right),e.maxWidth=Math.min(u,g-e.left)}var Qr=Je({name:"QTooltip",inheritAttrs:!1,props:{...Zh,...Ku,...Gu,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null},transitionShow:{default:"jump-down"},transitionHide:{default:"jump-up"},anchor:{type:String,default:"bottom middle",validator:yo},self:{type:String,default:"top middle",validator:yo},offset:{type:Array,default:()=>[14,14],validator:tg},scrollTarget:{default:void 0},delay:{type:Number,default:0},hideDelay:{type:Number,default:0}},emits:[...Qu],setup(e,{slots:t,emit:r,attrs:a}){let l,s;const u=Dt(),{proxy:{$q:d}}=u,f=se(null),g=se(!1),v=$(()=>_o(e.anchor,d.lang.rtl)),C=$(()=>_o(e.self,d.lang.rtl)),M=$(()=>e.persistent!==!0),{registerTick:_,removeTick:x}=Ra(),{registerTimeout:I}=co(),{transitionProps:L,transitionStyle:F}=$h(e),{localScrollTarget:Y,changeScrollEvent:D,unconfigureScrollTarget:A}=Xh(e,X),{anchorEl:N,canShow:J,anchorEvents:V}=Jh({showing:g,configureAnchorEl:rt}),{show:H,hide:pe}=ju({showing:g,canShow:J,handleShow:te,handleHide:Pe,hideOnRouteChange:M,processOnMount:!0});Object.assign(V,{delayShow:G,delayHide:me});const{showPortal:_e,hidePortal:xe,renderPortal:lt}=Oh(u,f,he,"tooltip");if(d.platform.is.mobile===!0){const fe={anchorEl:N,innerRef:f,onClickOutside(ze){return pe(ze),ze.target.classList.contains("q-dialog__backdrop")&&Rt(ze),!0}},Ge=$(()=>e.modelValue===null&&e.persistent!==!0&&g.value===!0);Ve(Ge,ze=>{(ze===!0?eg:po)(fe)}),Ht(()=>{po(fe)})}function te(fe){_e(),_(()=>{s=new MutationObserver(()=>j()),s.observe(f.value,{attributes:!1,childList:!0,characterData:!0,subtree:!0}),j(),X()}),l===void 0&&(l=Ve(()=>d.screen.width+"|"+d.screen.height+"|"+e.self+"|"+e.anchor+"|"+d.lang.rtl,j)),I(()=>{_e(!0),r("show",fe)},e.transitionDuration)}function Pe(fe){x(),xe(),Be(),I(()=>{xe(!0),r("hide",fe)},e.transitionDuration)}function Be(){s!==void 0&&(s.disconnect(),s=void 0),l!==void 0&&(l(),l=void 0),A(),Pr(V,"tooltipTemp")}function j(){ac({targetEl:f.value,offset:e.offset,anchorEl:N.value,anchorOrigin:v.value,selfOrigin:C.value,maxHeight:e.maxHeight,maxWidth:e.maxWidth})}function G(fe){if(d.platform.is.mobile===!0){Ua(),document.body.classList.add("non-selectable");const Ge=N.value,ze=["touchmove","touchcancel","touchend","click"].map(we=>[Ge,we,"delayHide","passiveCapture"]);Ln(V,"tooltipTemp",ze)}I(()=>{H(fe)},e.delay)}function me(fe){d.platform.is.mobile===!0&&(Pr(V,"tooltipTemp"),Ua(),setTimeout(()=>{document.body.classList.remove("non-selectable")},10)),I(()=>{pe(fe)},e.hideDelay)}function rt(){if(e.noParentEvent===!0||N.value===null)return;const fe=d.platform.is.mobile===!0?[[N.value,"touchstart","delayShow","passive"]]:[[N.value,"mouseenter","delayShow","passive"],[N.value,"mouseleave","delayHide","passive"]];Ln(V,"anchor",fe)}function X(){if(N.value!==null||e.scrollTarget!==void 0){Y.value=xo(N.value,e.scrollTarget);const fe=e.noParentEvent===!0?j:pe;D(Y.value,fe)}}function Z(){return g.value===!0?E("div",{...a,ref:f,class:["q-tooltip q-tooltip--style q-position-engine no-pointer-events",a.class],style:[a.style,F.value],role:"tooltip"},Mt(t.default)):null}function he(){return E(Ga,L.value,Z)}return Ht(Be),Object.assign(u.proxy,{updatePosition:j}),lt}});const mw={xs:8,sm:10,md:14,lg:20,xl:24};var Qa=Je({name:"QChip",props:{...or,...Eb,dense:Boolean,icon:String,iconRight:String,iconRemove:String,iconSelected:String,label:[String,Number],color:String,textColor:String,modelValue:{type:Boolean,default:!0},selected:{type:Boolean,default:null},square:Boolean,outline:Boolean,clickable:Boolean,removable:Boolean,removeAriaLabel:String,tabindex:[String,Number],disable:Boolean,ripple:{type:[Boolean,Object],default:!0}},emits:["update:modelValue","update:selected","remove","click"],setup(e,{slots:t,emit:r}){const{proxy:{$q:a}}=Dt(),l=sr(e,a),s=Ib(e,mw),u=$(()=>e.selected===!0||e.icon!==void 0),d=$(()=>e.selected===!0?e.iconSelected||a.iconSet.chip.selected:e.icon),f=$(()=>e.iconRemove||a.iconSet.chip.remove),g=$(()=>e.disable===!1&&(e.clickable===!0||e.selected!==null)),v=$(()=>{const L=e.outline===!0&&e.color||e.textColor;return"q-chip row inline no-wrap items-center"+(e.outline===!1&&e.color!==void 0?` bg-${e.color}`:"")+(L?` text-${L} q-chip--colored`:"")+(e.disable===!0?" disabled":"")+(e.dense===!0?" q-chip--dense":"")+(e.outline===!0?" q-chip--outline":"")+(e.selected===!0?" q-chip--selected":"")+(g.value===!0?" q-chip--clickable cursor-pointer non-selectable q-hoverable":"")+(e.square===!0?" q-chip--square":"")+(l.value===!0?" q-chip--dark q-dark":"")}),C=$(()=>{const L=e.disable===!0?{tabindex:-1,"aria-disabled":"true"}:{tabindex:e.tabindex||0},F={...L,role:"button","aria-hidden":"false","aria-label":e.removeAriaLabel||a.lang.label.remove};return{chip:L,remove:F}});function M(L){L.keyCode===13&&_(L)}function _(L){e.disable||(r("update:selected",!e.selected),r("click",L))}function x(L){(L.keyCode===void 0||L.keyCode===13)&&(Rt(L),e.disable===!1&&(r("update:modelValue",!1),r("remove")))}function I(){const L=[];g.value===!0&&L.push(E("div",{class:"q-focus-helper"})),u.value===!0&&L.push(E(Yt,{class:"q-chip__icon q-chip__icon--left",name:d.value}));const F=e.label!==void 0?[E("div",{class:"ellipsis"},[e.label])]:void 0;return L.push(E("div",{class:"q-chip__content col row no-wrap items-center q-anchor--skip"},$b(t.default,F))),e.iconRight&&L.push(E(Yt,{class:"q-chip__icon q-chip__icon--right",name:e.iconRight})),e.removable===!0&&L.push(E(Yt,{class:"q-chip__icon q-chip__icon--remove cursor-pointer",name:f.value,...C.value.remove,onClick:x,onKeyup:x})),L}return()=>{if(e.modelValue===!1)return;const L={class:v.value,style:s.value};return g.value===!0&&Object.assign(L,C.value.chip,{onClick:_,onKeyup:M}),Zu("div",L,I(),"ripple",e.ripple!==!1&&e.disable!==!0,()=>[[Ju,e.ripple]])}}}),Mr=Je({name:"QList",props:{...or,bordered:Boolean,dense:Boolean,separator:Boolean,padding:Boolean,tag:{type:String,default:"div"}},setup(e,{slots:t}){const r=Dt(),a=sr(e,r.proxy.$q),l=$(()=>"q-list"+(e.bordered===!0?" q-list--bordered":"")+(e.dense===!0?" q-list--dense":"")+(e.separator===!0?" q-list--separator":"")+(a.value===!0?" q-list--dark":"")+(e.padding===!0?" q-list--padding":""));return()=>E(e.tag,{class:l.value},Mt(t.default))}});const vw=["horizontal","vertical","cell","none"];var pw=Je({name:"QMarkupTable",props:{...or,dense:Boolean,flat:Boolean,bordered:Boolean,square:Boolean,wrapCells:Boolean,separator:{type:String,default:"horizontal",validator:e=>vw.includes(e)}},setup(e,{slots:t}){const r=Dt(),a=sr(e,r.proxy.$q),l=$(()=>`q-markup-table q-table__container q-table__card q-table--${e.separator}-separator`+(a.value===!0?" q-table--dark q-table__card--dark q-dark":"")+(e.dense===!0?" q-table--dense":"")+(e.flat===!0?" q-table--flat":"")+(e.bordered===!0?" q-table--bordered":"")+(e.square===!0?" q-table--square":"")+(e.wrapCells===!1?" q-table--no-wrap":""));return()=>E("div",{class:l.value},[E("table",{class:"q-table"},Mt(t.default))])}});function yw(e,t){return E("div",e,[E("table",{class:"q-table"},t)])}let za=!1;{const e=document.createElement("div");e.setAttribute("dir","rtl"),Object.assign(e.style,{width:"1px",height:"1px",overflow:"auto"});const t=document.createElement("div");Object.assign(t.style,{width:"1000px",height:"1px"}),document.body.appendChild(e),e.appendChild(t),e.scrollLeft=-1e3,za=e.scrollLeft>=0,e.remove()}const Hn=1e3,_w=["start","center","end","start-force","center-force","end-force"],ng=Array.prototype.filter,bw=window.getComputedStyle(document.body).overflowAnchor===void 0?Xu:function(e,t){e!==null&&(e._qOverflowAnimationFrame!==void 0&&cancelAnimationFrame(e._qOverflowAnimationFrame),e._qOverflowAnimationFrame=requestAnimationFrame(()=>{if(e===null)return;e._qOverflowAnimationFrame=void 0;const r=e.children||[];ng.call(r,l=>l.dataset&&l.dataset.qVsAnchor!==void 0).forEach(l=>{delete l.dataset.qVsAnchor});const a=r[t];a&&a.dataset&&(a.dataset.qVsAnchor="")}))};function Zi(e,t){return e+t}function vu(e,t,r,a,l,s,u,d){const f=e===window?document.scrollingElement||document.documentElement:e,g=l===!0?"offsetWidth":"offsetHeight",v={scrollStart:0,scrollViewSize:-u-d,scrollMaxSize:0,offsetStart:-u,offsetEnd:-d};if(l===!0?(e===window?(v.scrollStart=window.pageXOffset||window.scrollX||document.body.scrollLeft||0,v.scrollViewSize+=document.documentElement.clientWidth):(v.scrollStart=f.scrollLeft,v.scrollViewSize+=f.clientWidth),v.scrollMaxSize=f.scrollWidth,s===!0&&(v.scrollStart=(za===!0?v.scrollMaxSize-v.scrollViewSize:0)-v.scrollStart)):(e===window?(v.scrollStart=window.pageYOffset||window.scrollY||document.body.scrollTop||0,v.scrollViewSize+=document.documentElement.clientHeight):(v.scrollStart=f.scrollTop,v.scrollViewSize+=f.clientHeight),v.scrollMaxSize=f.scrollHeight),r!==null)for(let C=r.previousElementSibling;C!==null;C=C.previousElementSibling)C.classList.contains("q-virtual-scroll--skip")===!1&&(v.offsetStart+=C[g]);if(a!==null)for(let C=a.nextElementSibling;C!==null;C=C.nextElementSibling)C.classList.contains("q-virtual-scroll--skip")===!1&&(v.offsetEnd+=C[g]);if(t!==e){const C=f.getBoundingClientRect(),M=t.getBoundingClientRect();l===!0?(v.offsetStart+=M.left-C.left,v.offsetEnd-=M.width):(v.offsetStart+=M.top-C.top,v.offsetEnd-=M.height),e!==window&&(v.offsetStart+=v.scrollStart),v.offsetEnd+=v.scrollMaxSize-v.offsetStart}return v}function fh(e,t,r,a){t==="end"&&(t=(e===window?document.body:e)[r===!0?"scrollWidth":"scrollHeight"]),e===window?r===!0?(a===!0&&(t=(za===!0?document.body.scrollWidth-document.documentElement.clientWidth:0)-t),window.scrollTo(t,window.pageYOffset||window.scrollY||document.body.scrollTop||0)):window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,t):r===!0?(a===!0&&(t=(za===!0?e.scrollWidth-e.offsetWidth:0)-t),e.scrollLeft=t):e.scrollTop=t}function qa(e,t,r,a){if(r>=a)return 0;const l=t.length,s=Math.floor(r/Hn),u=Math.floor((a-1)/Hn)+1;let d=e.slice(s,u).reduce(Zi,0);return r%Hn!==0&&(d-=t.slice(s*Hn,r).reduce(Zi,0)),a%Hn!==0&&a!==l&&(d-=t.slice(a,u*Hn).reduce(Zi,0)),d}const ww={virtualScrollSliceSize:{type:[Number,String],default:null},virtualScrollSliceRatioBefore:{type:[Number,String],default:1},virtualScrollSliceRatioAfter:{type:[Number,String],default:1},virtualScrollItemSize:{type:[Number,String],default:24},virtualScrollStickySizeStart:{type:[Number,String],default:0},virtualScrollStickySizeEnd:{type:[Number,String],default:0},tableColspan:[Number,String]},rg={virtualScrollHorizontal:Boolean,onVirtualScroll:Function,...ww};function ig({virtualScrollLength:e,getVirtualScrollTarget:t,getVirtualScrollEl:r,virtualScrollItemSizeComputed:a}){const l=Dt(),{props:s,emit:u,proxy:d}=l,{$q:f}=d;let g,v,C,M=[],_;const x=se(0),I=se(0),L=se({}),F=se(null),Y=se(null),D=se(null),A=se({from:0,to:0}),N=$(()=>s.tableColspan!==void 0?s.tableColspan:100);a===void 0&&(a=$(()=>s.virtualScrollItemSize));const J=$(()=>a.value+";"+s.virtualScrollHorizontal),V=$(()=>J.value+";"+s.virtualScrollSliceRatioBefore+";"+s.virtualScrollSliceRatioAfter);Ve(V,()=>{j()}),Ve(J,H);function H(){Be(v,!0)}function pe(Z){Be(Z===void 0?v:Z)}function _e(Z,he){const fe=t();if(fe==null||fe.nodeType===8)return;const Ge=vu(fe,r(),F.value,Y.value,s.virtualScrollHorizontal,f.lang.rtl,s.virtualScrollStickySizeStart,s.virtualScrollStickySizeEnd);C!==Ge.scrollViewSize&&j(Ge.scrollViewSize),lt(fe,Ge,Math.min(e.value-1,Math.max(0,parseInt(Z,10)||0)),0,_w.indexOf(he)>-1?he:v>-1&&Z>v?"end":"start")}function xe(){const Z=t();if(Z==null||Z.nodeType===8)return;const he=vu(Z,r(),F.value,Y.value,s.virtualScrollHorizontal,f.lang.rtl,s.virtualScrollStickySizeStart,s.virtualScrollStickySizeEnd),fe=e.value-1,Ge=he.scrollMaxSize-he.offsetStart-he.offsetEnd-I.value;if(g===he.scrollStart)return;if(he.scrollMaxSize<=0){lt(Z,he,0,0);return}C!==he.scrollViewSize&&j(he.scrollViewSize),te(A.value.from);const ze=Math.floor(he.scrollMaxSize-Math.max(he.scrollViewSize,he.offsetEnd)-Math.min(_[fe],he.scrollViewSize/2));if(ze>0&&Math.ceil(he.scrollStart)>=ze){lt(Z,he,fe,he.scrollMaxSize-he.offsetEnd-M.reduce(Zi,0));return}let we=0,Me=he.scrollStart-he.offsetStart,ft=Me;if(Me<=Ge&&Me+he.scrollViewSize>=x.value)Me-=x.value,we=A.value.from,ft=Me;else for(let ee=0;Me>=M[ee]&&we0&&we-he.scrollViewSize?(we++,ft=Me):ft=_[we]+Me;lt(Z,he,we,ft)}function lt(Z,he,fe,Ge,ze){const we=typeof ze=="string"&&ze.indexOf("-force")>-1,Me=we===!0?ze.replace("-force",""):ze,ft=Me!==void 0?Me:"start";let ee=Math.max(0,fe-L.value[ft]),wt=ee+L.value.total;wt>e.value&&(wt=e.value,ee=Math.max(0,wt-L.value.total)),g=he.scrollStart;const nn=ee!==A.value.from||wt!==A.value.to;if(nn===!1&&Me===void 0){me(fe);return}const{activeElement:un}=document,rn=D.value;nn===!0&&rn!==null&&rn!==un&&rn.contains(un)===!0&&(rn.addEventListener("focusout",Pe),setTimeout(()=>{rn!==null&&rn.removeEventListener("focusout",Pe)})),bw(rn,fe-ee);const qt=Me!==void 0?_.slice(ee,fe).reduce(Zi,0):0;if(nn===!0){const Kt=wt>=A.value.from&&ee<=A.value.to?A.value.to:wt;A.value={from:ee,to:Kt},x.value=qa(M,_,0,ee),I.value=qa(M,_,wt,e.value),requestAnimationFrame(()=>{A.value.to!==wt&&g===he.scrollStart&&(A.value={from:A.value.from,to:wt},I.value=qa(M,_,wt,e.value))})}requestAnimationFrame(()=>{if(g!==he.scrollStart)return;nn===!0&&te(ee);const Kt=_.slice(ee,fe).reduce(Zi,0),Xn=Kt+he.offsetStart+x.value,Gt=Xn+_[fe];let Fn=Xn+Ge;if(Me!==void 0){const $r=Kt-qt,St=he.scrollStart+$r;Fn=we!==!0&&Stee.classList&&ee.classList.contains("q-virtual-scroll--skip")===!1),Ge=fe.length,ze=s.virtualScrollHorizontal===!0?ee=>ee.getBoundingClientRect().width:ee=>ee.offsetHeight;let we=Z,Me,ft;for(let ee=0;ee=Ge;we--)_[we]=fe;const ze=Math.floor((e.value-1)/Hn);M=[];for(let we=0;we<=ze;we++){let Me=0;const ft=Math.min((we+1)*Hn,e.value);for(let ee=we*Hn;ee=0?(te(A.value.from),Sn(()=>{_e(Z)})):rt()}function j(Z){if(Z===void 0&&typeof window!="undefined"){const Me=t();Me!=null&&Me.nodeType!==8&&(Z=vu(Me,r(),F.value,Y.value,s.virtualScrollHorizontal,f.lang.rtl,s.virtualScrollStickySizeStart,s.virtualScrollStickySizeEnd).scrollViewSize)}C=Z;const he=parseFloat(s.virtualScrollSliceRatioBefore)||0,fe=parseFloat(s.virtualScrollSliceRatioAfter)||0,Ge=1+he+fe,ze=Z===void 0||Z<=0?1:Math.ceil(Z/a.value),we=Math.max(1,ze,Math.ceil((s.virtualScrollSliceSize>0?s.virtualScrollSliceSize:10)/Ge));L.value={total:Math.ceil(we*Ge),start:Math.ceil(we*he),center:Math.ceil(we*(.5+he)),end:Math.ceil(we*(1+he)),view:ze}}function G(Z,he){const fe=s.virtualScrollHorizontal===!0?"width":"height",Ge={["--q-virtual-scroll-item-"+fe]:a.value+"px"};return[Z==="tbody"?E(Z,{class:"q-virtual-scroll__padding",key:"before",ref:F},[E("tr",[E("td",{style:{[fe]:`${x.value}px`,...Ge},colspan:N.value})])]):E(Z,{class:"q-virtual-scroll__padding",key:"before",ref:F,style:{[fe]:`${x.value}px`,...Ge}}),E(Z,{class:"q-virtual-scroll__content",key:"content",ref:D,tabindex:-1},he.flat()),Z==="tbody"?E(Z,{class:"q-virtual-scroll__padding",key:"after",ref:Y},[E("tr",[E("td",{style:{[fe]:`${I.value}px`,...Ge},colspan:N.value})])]):E(Z,{class:"q-virtual-scroll__padding",key:"after",ref:Y,style:{[fe]:`${I.value}px`,...Ge}})]}function me(Z){v!==Z&&(s.onVirtualScroll!==void 0&&u("virtualScroll",{index:Z,from:A.value.from,to:A.value.to-1,direction:Z{j()});let X=!1;return oa(()=>{X=!0}),sa(()=>{if(X!==!0)return;const Z=t();g!==void 0&&Z!==void 0&&Z!==null&&Z.nodeType!==8?fh(Z,g,s.virtualScrollHorizontal,f.lang.rtl):_e(v)}),Ht(()=>{rt.cancel()}),Object.assign(d,{scrollTo:_e,reset:H,refresh:pe}),{virtualScrollSliceRange:A,virtualScrollSliceSizeComputed:L,setVirtualScrollSize:j,onVirtualScrollEvt:rt,localResetVirtualScroll:Be,padVirtualScroll:G,scrollTo:_e,reset:H,refresh:pe}}const Sw={list:Mr,table:pw},kw=["list","table","__qtable"];var lc=Je({name:"QVirtualScroll",props:{...rg,type:{type:String,default:"list",validator:e=>kw.includes(e)},items:{type:Array,default:()=>[]},itemsFn:Function,itemsSize:Number,scrollTarget:{default:void 0}},setup(e,{slots:t,attrs:r}){let a;const l=se(null),s=$(()=>e.itemsSize>=0&&e.itemsFn!==void 0?parseInt(e.itemsSize,10):Array.isArray(e.items)?e.items.length:0),{virtualScrollSliceRange:u,localResetVirtualScroll:d,padVirtualScroll:f,onVirtualScrollEvt:g}=ig({virtualScrollLength:s,getVirtualScrollTarget:x,getVirtualScrollEl:_}),v=$(()=>{if(s.value===0)return[];const Y=(D,A)=>({index:u.value.from+A,item:D});return e.itemsFn===void 0?e.items.slice(u.value.from,u.value.to).map(Y):e.itemsFn(u.value.from,u.value.to-u.value.from).map(Y)}),C=$(()=>"q-virtual-scroll q-virtual-scroll"+(e.virtualScrollHorizontal===!0?"--horizontal":"--vertical")+(e.scrollTarget!==void 0?"":" scroll")),M=$(()=>e.scrollTarget!==void 0?{}:{tabindex:0});Ve(s,()=>{d()}),Ve(()=>e.scrollTarget,()=>{L(),I()});function _(){return l.value.$el||l.value}function x(){return a}function I(){a=xo(_(),e.scrollTarget),a.addEventListener("scroll",g,ta.passive)}function L(){a!==void 0&&(a.removeEventListener("scroll",g,ta.passive),a=void 0)}function F(){let Y=f(e.type==="list"?"div":"tbody",v.value.map(t.default));return t.before!==void 0&&(Y=t.before().concat(Y)),Si(t.after,Y)}return tc(()=>{d()}),ni(()=>{I()}),sa(()=>{I()}),oa(()=>{L()}),Ht(()=>{L()}),()=>{if(t.default===void 0){console.error("QVirtualScroll: default scoped slot is required for rendering");return}return e.type==="__qtable"?yw({ref:l,class:"q-table__middle "+C.value},F()):E(Sw[e.type],{...r,ref:l,class:[r.class,C.value],...M.value},F)}}});const Cw=[E("circle",{cx:"15",cy:"15",r:"15"},[E("animate",{attributeName:"r",from:"15",to:"15",begin:"0s",dur:"0.8s",values:"15;9;15",calcMode:"linear",repeatCount:"indefinite"}),E("animate",{attributeName:"fill-opacity",from:"1",to:"1",begin:"0s",dur:"0.8s",values:"1;.5;1",calcMode:"linear",repeatCount:"indefinite"})]),E("circle",{cx:"60",cy:"15",r:"9","fill-opacity":".3"},[E("animate",{attributeName:"r",from:"9",to:"9",begin:"0s",dur:"0.8s",values:"9;15;9",calcMode:"linear",repeatCount:"indefinite"}),E("animate",{attributeName:"fill-opacity",from:".5",to:".5",begin:"0s",dur:"0.8s",values:".5;1;.5",calcMode:"linear",repeatCount:"indefinite"})]),E("circle",{cx:"105",cy:"15",r:"15"},[E("animate",{attributeName:"r",from:"15",to:"15",begin:"0s",dur:"0.8s",values:"15;9;15",calcMode:"linear",repeatCount:"indefinite"}),E("animate",{attributeName:"fill-opacity",from:"1",to:"1",begin:"0s",dur:"0.8s",values:"1;.5;1",calcMode:"linear",repeatCount:"indefinite"})])];var $u=Je({name:"QSpinnerDots",props:Ob,setup(e){const{cSize:t,classes:r}=Rb(e);return()=>E("svg",{class:r.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 120 30",xmlns:"http://www.w3.org/2000/svg"},Cw)}});const Tw={ratio:[String,Number]};function Mw(e,t){return $(()=>{const r=Number(e.ratio||(t!==void 0?t.value:void 0));return isNaN(r)!==!0&&r>0?{paddingBottom:`${100/r}%`}:null})}const Dw=16/9;var oc=Je({name:"QImg",props:{...Tw,src:String,srcset:String,sizes:String,alt:String,crossorigin:String,decoding:String,referrerpolicy:String,draggable:Boolean,loading:{type:String,default:"lazy"},fetchpriority:{type:String,default:"auto"},width:String,height:String,initialRatio:{type:[Number,String],default:Dw},placeholderSrc:String,fit:{type:String,default:"cover"},position:{type:String,default:"50% 50%"},imgClass:String,imgStyle:Object,noSpinner:Boolean,noNativeMenu:Boolean,noTransition:Boolean,spinnerColor:String,spinnerSize:String},emits:["load","error"],setup(e,{slots:t,emit:r}){const a=se(e.initialRatio),l=Mw(e,a);let s=null,u=!1;const d=[se(null),se(L())],f=se(0),g=se(!1),v=se(!1),C=$(()=>`q-img q-img--${e.noNativeMenu===!0?"no-":""}menu`),M=$(()=>({width:e.width,height:e.height})),_=$(()=>`q-img__image ${e.imgClass!==void 0?e.imgClass+" ":""}q-img__image--with${e.noTransition===!0?"out":""}-transition`),x=$(()=>({...e.imgStyle,objectFit:e.fit,objectPosition:e.position}));Ve(()=>I(),F);function I(){return e.src||e.srcset||e.sizes?{src:e.src,srcset:e.srcset,sizes:e.sizes}:null}function L(){return e.placeholderSrc!==void 0?{src:e.placeholderSrc}:null}function F(H){s!==null&&(clearTimeout(s),s=null),v.value=!1,H===null?(g.value=!1,d[f.value^1].value=L()):g.value=!0,d[f.value].value=H}function Y({target:H}){u!==!0&&(s!==null&&(clearTimeout(s),s=null),a.value=H.naturalHeight===0?.5:H.naturalWidth/H.naturalHeight,D(H,1))}function D(H,pe){u===!0||pe===1e3||(H.complete===!0?A(H):s=setTimeout(()=>{s=null,D(H,pe+1)},50))}function A(H){u!==!0&&(f.value=f.value^1,d[f.value].value=null,g.value=!1,v.value=!1,r("load",H.currentSrc||H.src))}function N(H){s!==null&&(clearTimeout(s),s=null),g.value=!1,v.value=!0,d[f.value].value=null,d[f.value^1].value=L(),r("error",H)}function J(H){const pe=d[H].value,_e={key:"img_"+H,class:_.value,style:x.value,crossorigin:e.crossorigin,decoding:e.decoding,referrerpolicy:e.referrerpolicy,height:e.height,width:e.width,loading:e.loading,fetchpriority:e.fetchpriority,"aria-hidden":"true",draggable:e.draggable,...pe};return f.value===H?(_e.class+=" q-img__image--waiting",Object.assign(_e,{onLoad:Y,onError:N})):_e.class+=" q-img__image--loaded",E("div",{class:"q-img__container absolute-full",key:"img"+H},E("img",_e))}function V(){return g.value!==!0?E("div",{key:"content",class:"q-img__content absolute-full q-anchor--skip"},Mt(t[v.value===!0?"error":"default"])):E("div",{key:"loading",class:"q-img__loading absolute-full flex flex-center"},t.loading!==void 0?t.loading():e.noSpinner===!0?void 0:[E(Rh,{color:e.spinnerColor,size:e.spinnerSize})])}return F(I()),Ht(()=>{u=!0,s!==null&&(clearTimeout(s),s=null)}),()=>{const H=[];return l.value!==null&&H.push(E("div",{key:"filler",style:l.value})),v.value!==!0&&(d[0].value!==null&&H.push(J(0)),d[1].value!==null&&H.push(J(1))),H.push(E(Ga,{name:"q-transition--fade"},V)),E("div",{class:C.value,style:M.value,role:"img","aria-label":e.alt},H)}}}),qw=Je({name:"QBanner",props:{...or,inlineActions:Boolean,dense:Boolean,rounded:Boolean},setup(e,{slots:t}){const{proxy:{$q:r}}=Dt(),a=sr(e,r),l=$(()=>"q-banner row items-center"+(e.dense===!0?" q-banner--dense":"")+(a.value===!0?" q-banner--dark q-dark":"")+(e.rounded===!0?" rounded-borders":"")),s=$(()=>`q-banner__actions row items-center justify-end col-${e.inlineActions===!0?"auto":"all"}`);return()=>{const u=[E("div",{class:"q-banner__avatar col-auto row items-center self-start"},Mt(t.avatar)),E("div",{class:"q-banner__content col text-body2"},Mt(t.default))],d=Mt(t.action);return d!==void 0&&u.push(E("div",{class:s.value},d)),E("div",{class:l.value+(e.inlineActions===!1&&d!==void 0?" q-banner--top-padding":""),role:"alert"},u)}}}),Ie=Je({name:"QItemSection",props:{avatar:Boolean,thumbnail:Boolean,side:Boolean,top:Boolean,noWrap:Boolean},setup(e,{slots:t}){const r=$(()=>`q-item__section column q-item__section--${e.avatar===!0||e.side===!0||e.thumbnail===!0?"side":"main"}`+(e.top===!0?" q-item__section--top justify-start":" justify-center")+(e.avatar===!0?" q-item__section--avatar":"")+(e.thumbnail===!0?" q-item__section--thumbnail":"")+(e.noWrap===!0?" q-item__section--nowrap":""));return()=>E("div",{class:r.value},Mt(t.default))}}),Ke=Je({name:"QItemLabel",props:{overline:Boolean,caption:Boolean,header:Boolean,lines:[Number,String]},setup(e,{slots:t}){const r=$(()=>parseInt(e.lines,10)),a=$(()=>"q-item__label"+(e.overline===!0?" q-item__label--overline text-overline":"")+(e.caption===!0?" q-item__label--caption text-caption":"")+(e.header===!0?" q-item__label--header":"")+(r.value===1?" ellipsis":"")),l=$(()=>e.lines!==void 0&&r.value>1?{overflow:"hidden",display:"-webkit-box","-webkit-box-orient":"vertical","-webkit-line-clamp":r.value}:null);return()=>E("div",{style:l.value,class:a.value},Mt(t.default))}}),Vt=Je({name:"QItem",props:{...or,...Ao,tag:{type:String,default:"div"},active:{type:Boolean,default:null},clickable:Boolean,dense:Boolean,insetLevel:Number,tabindex:[String,Number],focused:Boolean,manualFocus:Boolean},emits:["click","keyup"],setup(e,{slots:t,emit:r}){const{proxy:{$q:a}}=Dt(),l=sr(e,a),{hasLink:s,linkAttrs:u,linkClass:d,linkTag:f,navigateOnClick:g}=Lh(),v=se(null),C=se(null),M=$(()=>e.clickable===!0||s.value===!0||e.tag==="label"),_=$(()=>e.disable!==!0&&M.value===!0),x=$(()=>"q-item q-item-type row no-wrap"+(e.dense===!0?" q-item--dense":"")+(l.value===!0?" q-item--dark":"")+(s.value===!0&&e.active===null?d.value:e.active===!0?` q-item--active${e.activeClass!==void 0?` ${e.activeClass}`:""}`:"")+(e.disable===!0?" disabled":"")+(_.value===!0?" q-item--clickable q-link cursor-pointer "+(e.manualFocus===!0?"q-manual-focusable":"q-focusable q-hoverable")+(e.focused===!0?" q-manual-focusable--focused":""):"")),I=$(()=>{if(e.insetLevel===void 0)return null;const D=a.lang.rtl===!0?"Right":"Left";return{["padding"+D]:16+e.insetLevel*56+"px"}});function L(D){_.value===!0&&(C.value!==null&&(D.qKeyEvent!==!0&&document.activeElement===v.value?C.value.focus():document.activeElement===C.value&&v.value.focus()),g(D))}function F(D){if(_.value===!0&&Ka(D,13)===!0){Rt(D),D.qKeyEvent=!0;const A=new MouseEvent("click",D);A.qKeyEvent=!0,v.value.dispatchEvent(A)}r("keyup",D)}function Y(){const D=Nh(t.default,[]);return _.value===!0&&D.unshift(E("div",{class:"q-focus-helper",tabindex:-1,ref:C})),D}return()=>{const D={ref:v,class:x.value,style:I.value,role:"listitem",onClick:L,onKeyup:F};return _.value===!0?(D.tabindex=e.tabindex||"0",Object.assign(D,u.value)):M.value===!0&&(D["aria-disabled"]="true"),E(f.value,D,Y())}}}),Pw=Je({name:"QBtnGroup",props:{unelevated:Boolean,outline:Boolean,flat:Boolean,rounded:Boolean,square:Boolean,push:Boolean,stretch:Boolean,glossy:Boolean,spread:Boolean},setup(e,{slots:t}){const r=$(()=>{const a=["unelevated","outline","flat","rounded","square","push","stretch","glossy"].filter(l=>e[l]===!0).map(l=>`q-btn-group--${l}`).join(" ");return`q-btn-group row no-wrap${a.length!==0?" "+a:""}`+(e.spread===!0?" q-btn-group--spread":" inline")});return()=>E("div",{class:r.value},Mt(t.default))}}),ag=Je({name:"QMenu",inheritAttrs:!1,props:{...Zh,...Ku,...or,...Gu,persistent:Boolean,autoClose:Boolean,separateClosePopup:Boolean,noRouteDismiss:Boolean,noRefocus:Boolean,noFocus:Boolean,fit:Boolean,cover:Boolean,square:Boolean,anchor:{type:String,validator:yo},self:{type:String,validator:yo},offset:{type:Array,validator:tg},scrollTarget:{default:void 0},touchPosition:Boolean,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null}},emits:[...Qu,"click","escapeKey"],setup(e,{slots:t,emit:r,attrs:a}){let l=null,s,u,d;const f=Dt(),{proxy:g}=f,{$q:v}=g,C=se(null),M=se(!1),_=$(()=>e.persistent!==!0&&e.noRouteDismiss!==!0),x=sr(e,v),{registerTick:I,removeTick:L}=Ra(),{registerTimeout:F}=co(),{transitionProps:Y,transitionStyle:D}=$h(e),{localScrollTarget:A,changeScrollEvent:N,unconfigureScrollTarget:J}=Xh(e,fe),{anchorEl:V,canShow:H}=Jh({showing:M}),{hide:pe}=ju({showing:M,canShow:H,handleShow:X,handleHide:Z,hideOnRouteChange:_,processOnMount:!0}),{showPortal:_e,hidePortal:xe,renderPortal:lt}=Oh(f,C,ft,"menu"),te={anchorEl:V,innerRef:C,onClickOutside(ee){if(e.persistent!==!0&&M.value===!0)return pe(ee),(ee.type==="touchstart"||ee.target.classList.contains("q-dialog__backdrop"))&&Rt(ee),!0}},Pe=$(()=>_o(e.anchor||(e.cover===!0?"center middle":"bottom start"),v.lang.rtl)),Be=$(()=>e.cover===!0?Pe.value:_o(e.self||"top start",v.lang.rtl)),j=$(()=>(e.square===!0?" q-menu--square":"")+(x.value===!0?" q-menu--dark q-dark":"")),G=$(()=>e.autoClose===!0?{onClick:Ge}:{}),me=$(()=>M.value===!0&&e.persistent!==!0);Ve(me,ee=>{ee===!0?(Nb(we),eg(te)):(ah(we),po(te))});function rt(){Uh(()=>{let ee=C.value;ee&&ee.contains(document.activeElement)!==!0&&(ee=ee.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||ee.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||ee.querySelector("[autofocus], [data-autofocus]")||ee,ee.focus({preventScroll:!0}))})}function X(ee){if(l=e.noRefocus===!1?document.activeElement:null,Bh(ze),_e(),fe(),s=void 0,ee!==void 0&&(e.touchPosition||e.contextMenu)){const wt=na(ee);if(wt.left!==void 0){const{top:nn,left:un}=V.value.getBoundingClientRect();s={left:wt.left-un,top:wt.top-nn}}}u===void 0&&(u=Ve(()=>v.screen.width+"|"+v.screen.height+"|"+e.self+"|"+e.anchor+"|"+v.lang.rtl,Me)),e.noFocus!==!0&&document.activeElement.blur(),I(()=>{Me(),e.noFocus!==!0&&rt()}),F(()=>{v.platform.is.ios===!0&&(d=e.autoClose,C.value.click()),Me(),_e(!0),r("show",ee)},e.transitionDuration)}function Z(ee){L(),xe(),he(!0),l!==null&&(ee===void 0||ee.qClickOutside!==!0)&&(((ee&&ee.type.indexOf("key")===0?l.closest('[tabindex]:not([tabindex^="-"])'):void 0)||l).focus(),l=null),F(()=>{xe(!0),r("hide",ee)},e.transitionDuration)}function he(ee){s=void 0,u!==void 0&&(u(),u=void 0),(ee===!0||M.value===!0)&&(Fh(ze),J(),po(te),ah(we)),ee!==!0&&(l=null)}function fe(){(V.value!==null||e.scrollTarget!==void 0)&&(A.value=xo(V.value,e.scrollTarget),N(A.value,Me))}function Ge(ee){d!==!0?(Lb(g,ee),r("click",ee)):d=!1}function ze(ee){me.value===!0&&e.noFocus!==!0&&Bb(C.value,ee.target)!==!0&&rt()}function we(ee){r("escapeKey"),pe(ee)}function Me(){ac({targetEl:C.value,offset:e.offset,anchorEl:V.value,anchorOrigin:Pe.value,selfOrigin:Be.value,absoluteOffset:s,fit:e.fit,cover:e.cover,maxHeight:e.maxHeight,maxWidth:e.maxWidth})}function ft(){return E(Ga,Y.value,()=>M.value===!0?E("div",{role:"menu",...a,ref:C,tabindex:-1,class:["q-menu q-position-engine scroll"+j.value,a.class],style:[a.style,D.value],...G.value},Mt(t.default)):null)}return Ht(he),Object.assign(g,{focus:rt,updatePosition:Me}),lt}});const xw=Object.keys(zh),Aw=e=>xw.reduce((t,r)=>{const a=e[r];return a!==void 0&&(t[r]=a),t},{});var lg=Je({name:"QBtnDropdown",props:{...zh,...Gu,modelValue:Boolean,split:Boolean,dropdownIcon:String,contentClass:[Array,String,Object],contentStyle:[Array,String,Object],cover:Boolean,persistent:Boolean,noRouteDismiss:Boolean,autoClose:Boolean,menuAnchor:{type:String,default:"bottom end"},menuSelf:{type:String,default:"top end"},menuOffset:Array,disableMainBtn:Boolean,disableDropdown:Boolean,noIconAnimation:Boolean,toggleAriaLabel:String},emits:["update:modelValue","click","beforeShow","show","beforeHide","hide"],setup(e,{slots:t,emit:r}){const{proxy:a}=Dt(),l=se(e.modelValue),s=se(null),u=fo(),d=$(()=>{const A={"aria-expanded":l.value===!0?"true":"false","aria-haspopup":"true","aria-controls":u,"aria-label":e.toggleAriaLabel||a.$q.lang.label[l.value===!0?"collapse":"expand"](e.label)};return(e.disable===!0||e.split===!1&&e.disableMainBtn===!0||e.disableDropdown===!0)&&(A["aria-disabled"]="true"),A}),f=$(()=>"q-btn-dropdown__arrow"+(l.value===!0&&e.noIconAnimation===!1?" rotate-180":"")+(e.split===!1?" q-btn-dropdown__arrow-container":"")),g=$(()=>Fb(e)),v=$(()=>Aw(e));Ve(()=>e.modelValue,A=>{s.value!==null&&s.value[A?"show":"hide"]()}),Ve(()=>e.split,D);function C(A){l.value=!0,r("beforeShow",A)}function M(A){r("show",A),r("update:modelValue",!0)}function _(A){l.value=!1,r("beforeHide",A)}function x(A){r("hide",A),r("update:modelValue",!1)}function I(A){r("click",A)}function L(A){ir(A),D(),r("click",A)}function F(A){s.value!==null&&s.value.toggle(A)}function Y(A){s.value!==null&&s.value.show(A)}function D(A){s.value!==null&&s.value.hide(A)}return Object.assign(a,{show:Y,hide:D,toggle:F}),ni(()=>{e.modelValue===!0&&Y()}),()=>{const A=[E(Yt,{class:f.value,name:e.dropdownIcon||a.$q.iconSet.arrow.dropdown})];return e.disableDropdown!==!0&&A.push(E(ag,{ref:s,id:u,class:e.contentClass,style:e.contentStyle,cover:e.cover,fit:!0,persistent:e.persistent,noRouteDismiss:e.noRouteDismiss,autoClose:e.autoClose,anchor:e.menuAnchor,self:e.menuSelf,offset:e.menuOffset,separateClosePopup:!0,transitionShow:e.transitionShow,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,onBeforeShow:C,onShow:M,onBeforeHide:_,onHide:x},t.default)),e.split===!1?E(ye,{class:"q-btn-dropdown q-btn-dropdown--simple",...v.value,...d.value,disable:e.disable===!0||e.disableMainBtn===!0,noWrap:!0,round:!1,onClick:I},{default:()=>Mt(t.label,[]).concat(A),loading:t.loading}):E(Pw,{class:"q-btn-dropdown q-btn-dropdown--split no-wrap q-btn-item",rounded:e.rounded,square:e.square,...g.value,glossy:e.glossy,stretch:e.stretch},()=>[E(ye,{class:"q-btn-dropdown--current",...v.value,disable:e.disable===!0||e.disableMainBtn===!0,noWrap:!0,round:!1,onClick:L},{default:t.label,loading:t.loading}),E(ye,{class:"q-btn-dropdown__arrow-container q-anchor--skip",...d.value,...g.value,disable:e.disable===!0||e.disableDropdown===!0,rounded:e.rounded,color:e.color,textColor:e.textColor,dense:e.dense,size:e.size,padding:e.padding,ripple:e.ripple},()=>A)])}}}),Sr=Je({name:"QBreadcrumbsEl",props:{...Ao,label:String,icon:String,tag:{type:String,default:"span"}},emits:["click"],setup(e,{slots:t}){const{linkTag:r,linkAttrs:a,linkClass:l,navigateOnClick:s}=Lh(),u=$(()=>({class:"q-breadcrumbs__el q-link flex inline items-center relative-position "+(e.disable!==!0?"q-link--focusable"+l.value:"q-breadcrumbs__el--disable"),...a.value,onClick:s})),d=$(()=>"q-breadcrumbs__el-icon"+(e.label!==void 0?" q-breadcrumbs__el-icon--with-label":""));return()=>{const f=[];return e.icon!==void 0&&f.push(E(Yt,{class:d.value,name:e.icon})),e.label!==void 0&&f.push(e.label),E(r.value,{...u.value},Si(t.default,f))}}});const Ew=["",!0];var Iw=Je({name:"QBreadcrumbs",props:{...Ub,separator:{type:String,default:"/"},separatorColor:String,activeColor:{type:String,default:"primary"},gutter:{type:String,validator:e=>["none","xs","sm","md","lg","xl"].includes(e),default:"sm"}},setup(e,{slots:t}){const r=zb(e),a=$(()=>`flex items-center ${r.value}${e.gutter==="none"?"":` q-gutter-${e.gutter}`}`),l=$(()=>e.separatorColor?` text-${e.separatorColor}`:""),s=$(()=>` text-${e.activeColor}`);return()=>{const u=nc(Mt(t.default));if(u.length===0)return;let d=1;const f=[],g=u.filter(C=>C.type!==void 0&&C.type.name==="QBreadcrumbsEl").length,v=t.separator!==void 0?t.separator:()=>e.separator;return u.forEach(C=>{if(C.type!==void 0&&C.type.name==="QBreadcrumbsEl"){const M=d{const d=(a.header.space===!0?a.header.size:0)+(a.footer.space===!0?a.footer.size:0);if(typeof e.styleFn=="function"){const f=a.isContainer.value===!0?a.containerHeight.value:r.screen.height;return e.styleFn(d,f)}return{minHeight:a.isContainer.value===!0?a.containerHeight.value-d+"px":r.screen.height===0?d!==0?`calc(100vh - ${d}px)`:"100vh":r.screen.height-d+"px"}}),u=$(()=>`q-page${e.padding===!0?" q-layout-padding":""}`);return()=>E("main",{class:u.value,style:s.value},Mt(t.default))}});const Ow=E("div",{class:"q-space"});var Rw=Je({name:"QSpace",setup(){return()=>Ow}});function hh(e){if(e===!1)return 0;if(e===!0||e===void 0)return 1;const t=parseInt(e,10);return isNaN(t)?0:t}var Gi=rc({name:"close-popup",beforeMount(e,{value:t}){const r={depth:hh(t),handler(a){r.depth!==0&&setTimeout(()=>{const l=Wb(e);l!==void 0&&Hb(l,a,r.depth)})},handlerKey(a){Ka(a,13)===!0&&r.handler(a)}};e.__qclosepopup=r,e.addEventListener("click",r.handler),e.addEventListener("keyup",r.handlerKey)},updated(e,{value:t,oldValue:r}){t!==r&&(e.__qclosepopup.depth=hh(t))},beforeUnmount(e){const t=e.__qclosepopup;e.removeEventListener("click",t.handler),e.removeEventListener("keyup",t.handlerKey),delete e.__qclosepopup}});function Lw(){return ho(Kb)}var Pa=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{},Nw=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then},og={},Mn={};let sc;const Bw=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];Mn.getSymbolSize=function(t){if(!t)throw new Error('"version" cannot be null or undefined');if(t<1||t>40)throw new Error('"version" should be in range from 1 to 40');return t*4+17};Mn.getSymbolTotalCodewords=function(t){return Bw[t]};Mn.getBCHDigit=function(e){let t=0;for(;e!==0;)t++,e>>>=1;return t};Mn.setToSJISFunction=function(t){if(typeof t!="function")throw new Error('"toSJISFunc" is not a valid function.');sc=t};Mn.isKanjiModeEnabled=function(){return typeof sc!="undefined"};Mn.toSJIS=function(t){return sc(t)};var Eo={};(function(e){e.L={bit:1},e.M={bit:0},e.Q={bit:3},e.H={bit:2};function t(r){if(typeof r!="string")throw new Error("Param is not a string");switch(r.toLowerCase()){case"l":case"low":return e.L;case"m":case"medium":return e.M;case"q":case"quartile":return e.Q;case"h":case"high":return e.H;default:throw new Error("Unknown EC Level: "+r)}}e.isValid=function(a){return a&&typeof a.bit!="undefined"&&a.bit>=0&&a.bit<4},e.from=function(a,l){if(e.isValid(a))return a;try{return t(a)}catch{return l}}})(Eo);function sg(){this.buffer=[],this.length=0}sg.prototype={get:function(e){const t=Math.floor(e/8);return(this.buffer[t]>>>7-e%8&1)===1},put:function(e,t){for(let r=0;r>>t-r-1&1)===1)},getLengthInBits:function(){return this.length},putBit:function(e){const t=Math.floor(this.length/8);this.buffer.length<=t&&this.buffer.push(0),e&&(this.buffer[t]|=128>>>this.length%8),this.length++}};var Fw=sg;function ja(e){if(!e||e<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=e,this.data=new Uint8Array(e*e),this.reservedBit=new Uint8Array(e*e)}ja.prototype.set=function(e,t,r,a){const l=e*this.size+t;this.data[l]=r,a&&(this.reservedBit[l]=!0)};ja.prototype.get=function(e,t){return this.data[e*this.size+t]};ja.prototype.xor=function(e,t,r){this.data[e*this.size+t]^=r};ja.prototype.isReserved=function(e,t){return this.reservedBit[e*this.size+t]};var Uw=ja,ug={};(function(e){const t=Mn.getSymbolSize;e.getRowColCoords=function(a){if(a===1)return[];const l=Math.floor(a/7)+2,s=t(a),u=s===145?26:Math.ceil((s-13)/(2*l-2))*2,d=[s-7];for(let f=1;f=0&&l<=7},e.from=function(l){return e.isValid(l)?parseInt(l,10):void 0},e.getPenaltyN1=function(l){const s=l.size;let u=0,d=0,f=0,g=null,v=null;for(let C=0;C=5&&(u+=t.N1+(d-5)),g=_,d=1),_=l.get(M,C),_===v?f++:(f>=5&&(u+=t.N1+(f-5)),v=_,f=1)}d>=5&&(u+=t.N1+(d-5)),f>=5&&(u+=t.N1+(f-5))}return u},e.getPenaltyN2=function(l){const s=l.size;let u=0;for(let d=0;d=10&&(d===1488||d===93)&&u++,f=f<<1&2047|l.get(v,g),v>=10&&(f===1488||f===93)&&u++}return u*t.N3},e.getPenaltyN4=function(l){let s=0;const u=l.data.length;for(let f=0;f=0;){const u=s[0];for(let f=0;f0){const s=new Uint8Array(this.degree);return s.set(a,l),s}return a};var Vw=uc,gg={},ri={},cc={};cc.isValid=function(t){return!isNaN(t)&&t>=1&&t<=40};var ur={};const mg="[0-9]+",Yw="[A-Z $%*+\\-./:]+";let Va="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";Va=Va.replace(/u/g,"\\u");const Ww="(?:(?![A-Z0-9 $%*+\\-./:]|"+Va+`)(?:.|[\r -]))+`;ur.KANJI=new RegExp(Va,"g");ur.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g");ur.BYTE=new RegExp(Ww,"g");ur.NUMERIC=new RegExp(mg,"g");ur.ALPHANUMERIC=new RegExp(Yw,"g");const Hw=new RegExp("^"+Va+"$"),Kw=new RegExp("^"+mg+"$"),Gw=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");ur.testKanji=function(t){return Hw.test(t)};ur.testNumeric=function(t){return Kw.test(t)};ur.testAlphanumeric=function(t){return Gw.test(t)};(function(e){const t=cc,r=ur;e.NUMERIC={id:"Numeric",bit:1<<0,ccBits:[10,12,14]},e.ALPHANUMERIC={id:"Alphanumeric",bit:1<<1,ccBits:[9,11,13]},e.BYTE={id:"Byte",bit:1<<2,ccBits:[8,16,16]},e.KANJI={id:"Kanji",bit:1<<3,ccBits:[8,10,12]},e.MIXED={bit:-1},e.getCharCountIndicator=function(s,u){if(!s.ccBits)throw new Error("Invalid mode: "+s);if(!t.isValid(u))throw new Error("Invalid version: "+u);return u>=1&&u<10?s.ccBits[0]:u<27?s.ccBits[1]:s.ccBits[2]},e.getBestModeForData=function(s){return r.testNumeric(s)?e.NUMERIC:r.testAlphanumeric(s)?e.ALPHANUMERIC:r.testKanji(s)?e.KANJI:e.BYTE},e.toString=function(s){if(s&&s.id)return s.id;throw new Error("Invalid mode")},e.isValid=function(s){return s&&s.bit&&s.ccBits};function a(l){if(typeof l!="string")throw new Error("Param is not a string");switch(l.toLowerCase()){case"numeric":return e.NUMERIC;case"alphanumeric":return e.ALPHANUMERIC;case"kanji":return e.KANJI;case"byte":return e.BYTE;default:throw new Error("Unknown mode: "+l)}}e.from=function(s,u){if(e.isValid(s))return s;try{return a(s)}catch{return u}}})(ri);(function(e){const t=Mn,r=Io,a=Eo,l=ri,s=cc,u=1<<12|1<<11|1<<10|1<<9|1<<8|1<<5|1<<2|1<<0,d=t.getBCHDigit(u);function f(M,_,x){for(let I=1;I<=40;I++)if(_<=e.getCapacity(I,x,M))return I}function g(M,_){return l.getCharCountIndicator(M,_)+4}function v(M,_){let x=0;return M.forEach(function(I){x+=g(I.mode,_)+I.getBitsLength()}),x}function C(M,_){for(let x=1;x<=40;x++)if(v(M,x)<=e.getCapacity(x,_,l.MIXED))return x}e.from=function(_,x){return s.isValid(_)?parseInt(_,10):x},e.getCapacity=function(_,x,I){if(!s.isValid(_))throw new Error("Invalid QR Code version");typeof I=="undefined"&&(I=l.BYTE);const L=t.getSymbolTotalCodewords(_),F=r.getTotalCodewordsCount(_,x),Y=(L-F)*8;if(I===l.MIXED)return Y;const D=Y-g(I,_);switch(I){case l.NUMERIC:return Math.floor(D/10*3);case l.ALPHANUMERIC:return Math.floor(D/11*2);case l.KANJI:return Math.floor(D/13);case l.BYTE:default:return Math.floor(D/8)}},e.getBestVersionForData=function(_,x){let I;const L=a.from(x,a.M);if(Array.isArray(_)){if(_.length>1)return C(_,L);if(_.length===0)return 1;I=_[0]}else I=_;return f(I.mode,I.getLength(),L)},e.getEncodedBits=function(_){if(!s.isValid(_)||_<7)throw new Error("Invalid QR Code version");let x=_<<12;for(;t.getBCHDigit(x)-d>=0;)x^=u<=0;)l^=pg<0&&(a=this.data.substr(r),l=parseInt(a,10),t.put(l,s*3+1))};var Zw=ra;const Jw=ri,pu=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function ia(e){this.mode=Jw.ALPHANUMERIC,this.data=e}ia.getBitsLength=function(t){return 11*Math.floor(t/2)+6*(t%2)};ia.prototype.getLength=function(){return this.data.length};ia.prototype.getBitsLength=function(){return ia.getBitsLength(this.data.length)};ia.prototype.write=function(t){let r;for(r=0;r+2<=this.data.length;r+=2){let a=pu.indexOf(this.data[r])*45;a+=pu.indexOf(this.data[r+1]),t.put(a,11)}this.data.length%2&&t.put(pu.indexOf(this.data[r]),6)};var Xw=ia,eS=function(t){for(var r=[],a=t.length,l=0;l=55296&&s<=56319&&a>l+1){var u=t.charCodeAt(l+1);u>=56320&&u<=57343&&(s=(s-55296)*1024+u-56320+65536,l+=1)}if(s<128){r.push(s);continue}if(s<2048){r.push(s>>6|192),r.push(s&63|128);continue}if(s<55296||s>=57344&&s<65536){r.push(s>>12|224),r.push(s>>6&63|128),r.push(s&63|128);continue}if(s>=65536&&s<=1114111){r.push(s>>18|240),r.push(s>>12&63|128),r.push(s>>6&63|128),r.push(s&63|128);continue}r.push(239,191,189)}return new Uint8Array(r).buffer};const tS=eS,nS=ri;function aa(e){this.mode=nS.BYTE,typeof e=="string"&&(e=tS(e)),this.data=new Uint8Array(e)}aa.getBitsLength=function(t){return t*8};aa.prototype.getLength=function(){return this.data.length};aa.prototype.getBitsLength=function(){return aa.getBitsLength(this.data.length)};aa.prototype.write=function(e){for(let t=0,r=this.data.length;t=33088&&r<=40956)r-=33088;else if(r>=57408&&r<=60351)r-=49472;else throw new Error("Invalid SJIS character: "+this.data[t]+` -Make sure your charset is UTF-8`);r=(r>>>8&255)*192+(r&255),e.put(r,13)}};var lS=la,_g={exports:{}};(function(e){var t={single_source_shortest_paths:function(r,a,l){var s={},u={};u[a]=0;var d=t.PriorityQueue.make();d.push(a,0);for(var f,g,v,C,M,_,x,I,L;!d.empty();){f=d.pop(),g=f.value,C=f.cost,M=r[g]||{};for(v in M)M.hasOwnProperty(v)&&(_=M[v],x=C+_,I=u[v],L=typeof u[v]=="undefined",(L||I>x)&&(u[v]=x,d.push(v,x),s[v]=g))}if(typeof l!="undefined"&&typeof u[l]=="undefined"){var F=["Could not find a path from ",a," to ",l,"."].join("");throw new Error(F)}return s},extract_shortest_path_from_predecessor_list:function(r,a){for(var l=[],s=a;s;)l.push(s),r[s],s=r[s];return l.reverse(),l},find_path:function(r,a,l){var s=t.single_source_shortest_paths(r,a,l);return t.extract_shortest_path_from_predecessor_list(s,l)},PriorityQueue:{make:function(r){var a=t.PriorityQueue,l={},s;r=r||{};for(s in a)a.hasOwnProperty(s)&&(l[s]=a[s]);return l.queue=[],l.sorter=r.sorter||a.default_sorter,l},default_sorter:function(r,a){return r.cost-a.cost},push:function(r,a){var l={value:r,cost:a};this.queue.push(l),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};e.exports=t})(_g);(function(e){const t=ri,r=Zw,a=Xw,l=rS,s=lS,u=ur,d=Mn,f=_g.exports;function g(F){return unescape(encodeURIComponent(F)).length}function v(F,Y,D){const A=[];let N;for(;(N=F.exec(D))!==null;)A.push({data:N[0],index:N.index,mode:Y,length:N[0].length});return A}function C(F){const Y=v(u.NUMERIC,t.NUMERIC,F),D=v(u.ALPHANUMERIC,t.ALPHANUMERIC,F);let A,N;return d.isKanjiModeEnabled()?(A=v(u.BYTE,t.BYTE,F),N=v(u.KANJI,t.KANJI,F)):(A=v(u.BYTE_KANJI,t.BYTE,F),N=[]),Y.concat(D,A,N).sort(function(V,H){return V.index-H.index}).map(function(V){return{data:V.data,mode:V.mode,length:V.length}})}function M(F,Y){switch(Y){case t.NUMERIC:return r.getBitsLength(F);case t.ALPHANUMERIC:return a.getBitsLength(F);case t.KANJI:return s.getBitsLength(F);case t.BYTE:return l.getBitsLength(F)}}function _(F){return F.reduce(function(Y,D){const A=Y.length-1>=0?Y[Y.length-1]:null;return A&&A.mode===D.mode?(Y[Y.length-1].data+=D.data,Y):(Y.push(D),Y)},[])}function x(F){const Y=[];for(let D=0;D=0&&d<=6&&(f===0||f===6)||f>=0&&f<=6&&(d===0||d===6)||d>=2&&d<=4&&f>=2&&f<=4?e.set(s+d,u+f,!0,!0):e.set(s+d,u+f,!1,!0))}}function mS(e){const t=e.size;for(let r=8;r>d&1)===1,e.set(l,s,u,!0),e.set(s,l,u,!0)}function bu(e,t,r){const a=e.size,l=fS.getEncodedBits(t,r);let s,u;for(s=0;s<15;s++)u=(l>>s&1)===1,s<6?e.set(s,8,u,!0):s<8?e.set(s+1,8,u,!0):e.set(a-15+s,8,u,!0),s<8?e.set(8,a-s-1,u,!0):s<9?e.set(8,15-s-1+1,u,!0):e.set(8,15-s-1,u,!0);e.set(a-8,8,1,!0)}function yS(e,t){const r=e.size;let a=-1,l=r-1,s=7,u=0;for(let d=r-1;d>0;d-=2)for(d===6&&d--;;){for(let f=0;f<2;f++)if(!e.isReserved(l,d-f)){let g=!1;u>>s&1)===1),e.set(l,d-f,g),s--,s===-1&&(u++,s=7)}if(l+=a,l<0||r<=l){l-=a,a=-a;break}}}function _S(e,t,r){const a=new oS;r.forEach(function(f){a.put(f.mode.bit,4),a.put(f.getLength(),hS.getCharCountIndicator(f.mode,e)),f.write(a)});const l=Oo.getSymbolTotalCodewords(e),s=Lu.getTotalCodewordsCount(e,t),u=(l-s)*8;for(a.getLengthInBits()+4<=u&&a.put(0,4);a.getLengthInBits()%8!==0;)a.putBit(0);const d=(u-a.getLengthInBits())/8;for(let f=0;f=7&&pS(f,t),yS(f,u),isNaN(a)&&(a=Ru.getBestMask(f,bu.bind(null,f,r))),Ru.applyMask(a,f),bu(f,r,a),{modules:f,version:t,errorCorrectionLevel:r,maskPattern:a,segments:l}}og.create=function(t,r){if(typeof t=="undefined"||t==="")throw new Error("No input text");let a=yu.M,l,s;return typeof r!="undefined"&&(a=yu.from(r.errorCorrectionLevel,yu.M),l=wo.from(r.version),s=Ru.from(r.maskPattern),r.toSJISFunc&&Oo.setToSJISFunction(r.toSJISFunc)),wS(t,l,a,s)};var bg={},dc={};(function(e){function t(r){if(typeof r=="number"&&(r=r.toString()),typeof r!="string")throw new Error("Color should be defined as hex string");let a=r.slice().replace("#","").split("");if(a.length<3||a.length===5||a.length>8)throw new Error("Invalid hex color: "+r);(a.length===3||a.length===4)&&(a=Array.prototype.concat.apply([],a.map(function(s){return[s,s]}))),a.length===6&&a.push("F","F");const l=parseInt(a.join(""),16);return{r:l>>24&255,g:l>>16&255,b:l>>8&255,a:l&255,hex:"#"+a.slice(0,6).join("")}}e.getOptions=function(a){a||(a={}),a.color||(a.color={});const l=typeof a.margin=="undefined"||a.margin===null||a.margin<0?4:a.margin,s=a.width&&a.width>=21?a.width:void 0,u=a.scale||4;return{width:s,scale:s?4:u,margin:l,color:{dark:t(a.color.dark||"#000000ff"),light:t(a.color.light||"#ffffffff")},type:a.type,rendererOpts:a.rendererOpts||{}}},e.getScale=function(a,l){return l.width&&l.width>=a+l.margin*2?l.width/(a+l.margin*2):l.scale},e.getImageWidth=function(a,l){const s=e.getScale(a,l);return Math.floor((a+l.margin*2)*s)},e.qrToImageData=function(a,l,s){const u=l.modules.size,d=l.modules.data,f=e.getScale(u,s),g=Math.floor((u+s.margin*2)*f),v=s.margin*f,C=[s.color.light,s.color.dark];for(let M=0;M=v&&_>=v&&M0&&f>0&&e[d-1]||(a+=s?wu("M",f+r,.5+g+r):wu("m",l,0),l=0,s=!1),f+1':"",g="',v='viewBox="0 0 '+d+" "+d+'"',C=l.width?'width="'+l.width+'" height="'+l.width+'" ':"",M=''+f+g+` -`;return typeof a=="function"&&a(null,M),M};const CS=Nw,Nu=og,Sg=bg,TS=wg;function fc(e,t,r,a,l){const s=[].slice.call(arguments,1),u=s.length,d=typeof s[u-1]=="function";if(!d&&!CS())throw new Error("Callback required as last argument");if(d){if(u<2)throw new Error("Too few arguments provided");u===2?(l=r,r=t,t=a=void 0):u===3&&(t.getContext&&typeof l=="undefined"?(l=a,a=void 0):(l=a,a=r,r=t,t=void 0))}else{if(u<1)throw new Error("Too few arguments provided");return u===1?(r=t,t=a=void 0):u===2&&!t.getContext&&(a=r,r=t,t=void 0),new Promise(function(f,g){try{const v=Nu.create(r,a);f(e(v,t,a))}catch(v){g(v)}})}try{const f=Nu.create(r,a);l(null,e(f,t,a))}catch(f){l(f)}}Nu.create;var MS=fc.bind(null,Sg.render),DS=fc.bind(null,Sg.renderToDataURL),qS=fc.bind(null,function(e,t,r){return TS.render(e,r)});/*! vue-qrcode v2.0.0 | (c) 2018-present Chen Fengyuan | MIT */const ph="ready";var PS=sn({name:"VueQrcode",props:{value:{type:String,default:void 0},options:{type:Object,default:void 0},tag:{type:String,default:"canvas"}},emits:[ph],watch:{$props:{deep:!0,immediate:!0,handler(){this.$el&&this.generate()}}},mounted(){this.generate()},methods:{generate(){const e=this.options||{},t=String(this.value),r=()=>{this.$emit(ph,this.$el)};switch(this.tag){case"canvas":MS(this.$el,t,e,a=>{if(a)throw a;r()});break;case"img":DS(t,e,(a,l)=>{if(a)throw a;this.$el.src=l,this.$el.onload=r});break;case"svg":qS(t,e,(a,l)=>{if(a)throw a;const s=document.createElement("div");s.innerHTML=l;const u=s.querySelector("svg");if(u){const{attributes:d,childNodes:f}=u;Object.keys(d).forEach(g=>{const v=d[Number(g)];this.$el.setAttribute(v.name,v.value)}),Object.keys(f).forEach(g=>{const v=f[Number(g)];this.$el.appendChild(v.cloneNode(!0))}),r()}});break}}},render(){return E(this.tag,this.$slots.default)}});function xS(e){const t=document.createElement("textarea");t.value=e,t.contentEditable="true",t.style.position="fixed";const r=()=>{};Bh(r),document.body.appendChild(t),t.focus(),t.select();const a=document.execCommand("copy");return t.remove(),Fh(r),a}function AS(e){return navigator.clipboard!==void 0?navigator.clipboard.writeText(e):new Promise((t,r)=>{const a=xS(e);a?t(!0):r(a)})}let ES=0;const IS=["click","keydown"],$S={icon:String,label:[Number,String],alert:[Boolean,String],alertIcon:String,name:{type:[Number,String],default:()=>`t_${ES++}`},noCaps:Boolean,tabindex:[String,Number],disable:Boolean,contentClass:String,ripple:{type:[Boolean,Object],default:!0}};function OS(e,t,r,a){const l=ho(Vh,Tr);if(l===Tr)return console.error("QTab/QRouteTab component needs to be child of QTabs"),Tr;const{proxy:s}=Dt(),u=se(null),d=se(null),f=se(null),g=$(()=>e.disable===!0||e.ripple===!1?!1:Object.assign({keyCodes:[13,32],early:!0},e.ripple===!0?{}:e.ripple)),v=$(()=>l.currentModel.value===e.name),C=$(()=>"q-tab relative-position self-stretch flex flex-center text-center"+(v.value===!0?" q-tab--active"+(l.tabProps.value.activeClass?" "+l.tabProps.value.activeClass:"")+(l.tabProps.value.activeColor?` text-${l.tabProps.value.activeColor}`:"")+(l.tabProps.value.activeBgColor?` bg-${l.tabProps.value.activeBgColor}`:""):" q-tab--inactive")+(e.icon&&e.label&&l.tabProps.value.inlineLabel===!1?" q-tab--full":"")+(e.noCaps===!0||l.tabProps.value.noCaps===!0?" q-tab--no-caps":"")+(e.disable===!0?" disabled":" q-focusable q-hoverable cursor-pointer")+(a!==void 0?a.linkClass.value:"")),M=$(()=>"q-tab__content self-stretch flex-center relative-position q-anchor--skip non-selectable "+(l.tabProps.value.inlineLabel===!0?"row no-wrap q-tab__content--inline":"column")+(e.contentClass!==void 0?` ${e.contentClass}`:"")),_=$(()=>e.disable===!0||l.hasFocus.value===!0||v.value===!1&&l.hasActiveTab.value===!0?-1:e.tabindex||0);function x(D,A){if(A!==!0&&u.value!==null&&u.value.focus(),e.disable===!0){a!==void 0&&a.hasRouterLink.value===!0&&Rt(D);return}if(a===void 0){l.updateModel({name:e.name}),r("click",D);return}if(a.hasRouterLink.value===!0){const N=(J={})=>{let V;const H=J.to===void 0||Hi(J.to,e.to)===!0?l.avoidRouteWatcher=fo():null;return a.navigateToRouterLink(D,{...J,returnRouterError:!0}).catch(pe=>{V=pe}).then(pe=>{if(H===l.avoidRouteWatcher&&(l.avoidRouteWatcher=!1,V===void 0&&(pe===void 0||pe.message.startsWith("Avoided redundant navigation")===!0)&&l.updateModel({name:e.name})),J.returnRouterError===!0)return V!==void 0?Promise.reject(V):pe})};r("click",D,N),D.defaultPrevented!==!0&&N();return}r("click",D)}function I(D){Ka(D,[13,32])?x(D,!0):Yh(D)!==!0&&D.keyCode>=35&&D.keyCode<=40&&D.altKey!==!0&&D.metaKey!==!0&&l.onKbdNavigate(D.keyCode,s.$el)===!0&&Rt(D),r("keydown",D)}function L(){const D=l.tabProps.value.narrowIndicator,A=[],N=E("div",{ref:f,class:["q-tab__indicator",l.tabProps.value.indicatorClass]});e.icon!==void 0&&A.push(E(Yt,{class:"q-tab__icon",name:e.icon})),e.label!==void 0&&A.push(E("div",{class:"q-tab__label"},e.label)),e.alert!==!1&&A.push(e.alertIcon!==void 0?E(Yt,{class:"q-tab__alert-icon",color:e.alert!==!0?e.alert:void 0,name:e.alertIcon}):E("div",{class:"q-tab__alert"+(e.alert!==!0?` text-${e.alert}`:"")})),D===!0&&A.push(N);const J=[E("div",{class:"q-focus-helper",tabindex:-1,ref:u}),E("div",{class:M.value},Si(t.default,A))];return D===!1&&J.push(N),J}const F={name:$(()=>e.name),rootRef:d,tabIndicatorRef:f,routeData:a};Ht(()=>{l.unregisterTab(F)}),ni(()=>{l.registerTab(F)});function Y(D,A){const N={ref:d,class:C.value,tabindex:_.value,role:"tab","aria-selected":v.value===!0?"true":"false","aria-disabled":e.disable===!0?"true":void 0,onClick:x,onKeydown:I,...A};return Gn(E(D,N,L()),[[Ju,g.value]])}return{renderTab:Y,$tabs:l}}var Su=Je({name:"QTab",props:$S,emits:IS,setup(e,{slots:t,emit:r}){const{renderTab:a}=OS(e,t,r);return()=>a("div")}});function RS(e,t,r){const a=r===!0?["left","right"]:["top","bottom"];return`absolute-${t===!0?a[0]:a[1]}${e?` text-${e}`:""}`}const LS=["left","center","right","justify"];var NS=Je({name:"QTabs",props:{modelValue:[Number,String],align:{type:String,default:"center",validator:e=>LS.includes(e)},breakpoint:{type:[String,Number],default:600},vertical:Boolean,shrink:Boolean,stretch:Boolean,activeClass:String,activeColor:String,activeBgColor:String,indicatorColor:String,leftIcon:String,rightIcon:String,outsideArrows:Boolean,mobileArrows:Boolean,switchIndicator:Boolean,narrowIndicator:Boolean,inlineLabel:Boolean,noCaps:Boolean,dense:Boolean,contentClass:String,"onUpdate:modelValue":[Function,Array]},setup(e,{slots:t,emit:r}){const{proxy:a}=Dt(),{$q:l}=a,{registerTick:s}=Ra(),{registerTick:u}=Ra(),{registerTick:d}=Ra(),{registerTimeout:f,removeTimeout:g}=co(),{registerTimeout:v,removeTimeout:C}=co(),M=se(null),_=se(null),x=se(e.modelValue),I=se(!1),L=se(!0),F=se(!1),Y=se(!1),D=[],A=se(0),N=se(!1);let J=null,V=null,H;const pe=$(()=>({activeClass:e.activeClass,activeColor:e.activeColor,activeBgColor:e.activeBgColor,indicatorClass:RS(e.indicatorColor,e.switchIndicator,e.vertical),narrowIndicator:e.narrowIndicator,inlineLabel:e.inlineLabel,noCaps:e.noCaps})),_e=$(()=>{const K=A.value,de=x.value;for(let qe=0;qe`q-tabs__content--align-${I.value===!0?"left":Y.value===!0?"justify":e.align}`),lt=$(()=>`q-tabs row no-wrap items-center q-tabs--${I.value===!0?"":"not-"}scrollable q-tabs--${e.vertical===!0?"vertical":"horizontal"} q-tabs__arrows--${e.outsideArrows===!0?"outside":"inside"} q-tabs--mobile-with${e.mobileArrows===!0?"":"out"}-arrows`+(e.dense===!0?" q-tabs--dense":"")+(e.shrink===!0?" col-shrink":"")+(e.stretch===!0?" self-stretch":"")),te=$(()=>"q-tabs__content scroll--mobile row no-wrap items-center self-stretch hide-scrollbar relative-position "+xe.value+(e.contentClass!==void 0?` ${e.contentClass}`:"")),Pe=$(()=>e.vertical===!0?{container:"height",content:"offsetHeight",scroll:"scrollHeight"}:{container:"width",content:"offsetWidth",scroll:"scrollWidth"}),Be=$(()=>e.vertical!==!0&&l.lang.rtl===!0),j=$(()=>za===!1&&Be.value===!0);Ve(Be,he),Ve(()=>e.modelValue,K=>{G({name:K,setCurrent:!0,skipEmit:!0})}),Ve(()=>e.outsideArrows,me);function G({name:K,setCurrent:de,skipEmit:qe}){x.value!==K&&(qe!==!0&&e["onUpdate:modelValue"]!==void 0&&r("update:modelValue",K),(de===!0||e["onUpdate:modelValue"]===void 0)&&(X(x.value,K),x.value=K))}function me(){s(()=>{rt({width:M.value.offsetWidth,height:M.value.offsetHeight})})}function rt(K){if(Pe.value===void 0||_.value===null)return;const de=K[Pe.value.container],qe=Math.min(_.value[Pe.value.scroll],Array.prototype.reduce.call(_.value.children,(it,Ze)=>it+(Ze[Pe.value.content]||0),0)),gt=de>0&&qe>de;I.value=gt,gt===!0&&u(he),Y.value=deit.name.value===K):null,gt=de!=null&&de!==""?D.find(it=>it.name.value===de):null;if(qe&>){const it=qe.tabIndicatorRef.value,Ze=gt.tabIndicatorRef.value;J!==null&&(clearTimeout(J),J=null),it.style.transition="none",it.style.transform="none",Ze.style.transition="none",Ze.style.transform="none";const Fe=it.getBoundingClientRect(),mt=Ze.getBoundingClientRect();Ze.style.transform=e.vertical===!0?`translate3d(0,${Fe.top-mt.top}px,0) scale3d(1,${mt.height?Fe.height/mt.height:1},1)`:`translate3d(${Fe.left-mt.left}px,0,0) scale3d(${mt.width?Fe.width/mt.width:1},1,1)`,d(()=>{J=setTimeout(()=>{J=null,Ze.style.transition="transform .25s cubic-bezier(.4, 0, .2, 1)",Ze.style.transform="none"},70)})}gt&&I.value===!0&&Z(gt.rootRef.value)}function Z(K){const{left:de,width:qe,top:gt,height:it}=_.value.getBoundingClientRect(),Ze=K.getBoundingClientRect();let Fe=e.vertical===!0?Ze.top-gt:Ze.left-de;if(Fe<0){_.value[e.vertical===!0?"scrollTop":"scrollLeft"]+=Math.floor(Fe),he();return}Fe+=e.vertical===!0?Ze.height-it:Ze.width-qe,Fe>0&&(_.value[e.vertical===!0?"scrollTop":"scrollLeft"]+=Math.ceil(Fe),he())}function he(){const K=_.value;if(K===null)return;const de=K.getBoundingClientRect(),qe=e.vertical===!0?K.scrollTop:Math.abs(K.scrollLeft);Be.value===!0?(L.value=Math.ceil(qe+de.width)0):(L.value=qe>0,F.value=e.vertical===!0?Math.ceil(qe+de.height){ee(K)===!0&&we()},5)}function Ge(){fe(j.value===!0?Number.MAX_SAFE_INTEGER:0)}function ze(){fe(j.value===!0?0:Number.MAX_SAFE_INTEGER)}function we(){V!==null&&(clearInterval(V),V=null)}function Me(K,de){const qe=Array.prototype.filter.call(_.value.children,mt=>mt===de||mt.matches&&mt.matches(".q-tab.q-focusable")===!0),gt=qe.length;if(gt===0)return;if(K===36)return Z(qe[0]),qe[0].focus(),!0;if(K===35)return Z(qe[gt-1]),qe[gt-1].focus(),!0;const it=K===(e.vertical===!0?38:37),Ze=K===(e.vertical===!0?40:39),Fe=it===!0?-1:Ze===!0?1:void 0;if(Fe!==void 0){const mt=Be.value===!0?-1:1,Pt=qe.indexOf(de)+Fe*mt;return Pt>=0&&Ptj.value===!0?{get:K=>Math.abs(K.scrollLeft),set:(K,de)=>{K.scrollLeft=-de}}:e.vertical===!0?{get:K=>K.scrollTop,set:(K,de)=>{K.scrollTop=de}}:{get:K=>K.scrollLeft,set:(K,de)=>{K.scrollLeft=de}});function ee(K){const de=_.value,{get:qe,set:gt}=ft.value;let it=!1,Ze=qe(de);const Fe=K=K)&&(it=!0,Ze=K),gt(de,Ze),he(),it}function wt(K,de){for(const qe in K)if(K[qe]!==de[qe])return!1;return!0}function nn(){let K=null,de={matchedLen:0,queryDiff:9999,hrefLen:0};const qe=D.filter(Fe=>Fe.routeData!==void 0&&Fe.routeData.hasRouterLink.value===!0),{hash:gt,query:it}=a.$route,Ze=Object.keys(it).length;for(const Fe of qe){const mt=Fe.routeData.exact.value===!0;if(Fe.routeData[mt===!0?"linkIsExactActive":"linkIsActive"].value!==!0)continue;const{hash:Pt,query:cn,matched:er,href:ii}=Fe.routeData.resolvedLink.value,Un=Object.keys(cn).length;if(mt===!0){if(Pt!==gt||Un!==Ze||wt(it,cn)===!1)continue;K=Fe.name.value;break}if(Pt!==""&&Pt!==gt||Un!==0&&wt(cn,it)===!1)continue;const Qt={matchedLen:er.length,queryDiff:Ze-Un,hrefLen:ii.length-Pt.length};if(Qt.matchedLen>de.matchedLen){K=Fe.name.value,de=Qt;continue}else if(Qt.matchedLen!==de.matchedLen)continue;if(Qt.queryDiffde.hrefLen&&(K=Fe.name.value,de=Qt)}K===null&&D.some(Fe=>Fe.routeData===void 0&&Fe.name.value===x.value)===!0||G({name:K,setCurrent:!0})}function un(K){if(g(),N.value!==!0&&M.value!==null&&K.target&&typeof K.target.closest=="function"){const de=K.target.closest(".q-tab");de&&M.value.contains(de)===!0&&(N.value=!0,I.value===!0&&Z(de))}}function rn(){f(()=>{N.value=!1},30)}function qt(){Fn.avoidRouteWatcher===!1?v(nn):C()}function Kt(){if(H===void 0){const K=Ve(()=>a.$route.fullPath,qt);H=()=>{K(),H=void 0}}}function Xn(K){D.push(K),A.value++,me(),K.routeData===void 0||a.$route===void 0?v(()=>{if(I.value===!0){const de=x.value,qe=de!=null&&de!==""?D.find(gt=>gt.name.value===de):null;qe&&Z(qe.rootRef.value)}}):(Kt(),K.routeData.hasRouterLink.value===!0&&qt())}function Gt(K){D.splice(D.indexOf(K),1),A.value--,me(),H!==void 0&&K.routeData!==void 0&&(D.every(de=>de.routeData===void 0)===!0&&H(),qt())}const Fn={currentModel:x,tabProps:pe,hasFocus:N,hasActiveTab:_e,registerTab:Xn,unregisterTab:Gt,verifyRouteModel:qt,updateModel:G,onKbdNavigate:Me,avoidRouteWatcher:!1};Wh(Vh,Fn);function $r(){J!==null&&clearTimeout(J),we(),H!==void 0&&H()}let St;return Ht($r),oa(()=>{St=H!==void 0,$r()}),sa(()=>{St===!0&&Kt(),me()}),()=>E("div",{ref:M,class:lt.value,role:"tablist",onFocusin:un,onFocusout:rn},[E(Eu,{onResize:rt}),E("div",{ref:_,class:te.value,onScroll:he},Mt(t.default)),E(Yt,{class:"q-tabs__arrow q-tabs__arrow--left absolute q-tab__icon"+(L.value===!0?"":" q-tabs__arrow--faded"),name:e.leftIcon||l.iconSet.tabs[e.vertical===!0?"up":"left"],onMousedownPassive:Ge,onTouchstartPassive:Ge,onMouseupPassive:we,onMouseleavePassive:we,onTouchendPassive:we}),E(Yt,{class:"q-tabs__arrow q-tabs__arrow--right absolute q-tab__icon"+(F.value===!0?"":" q-tabs__arrow--faded"),name:e.rightIcon||l.iconSet.tabs[e.vertical===!0?"down":"right"],onMousedownPassive:ze,onTouchstartPassive:ze,onMouseupPassive:we,onMouseleavePassive:we,onTouchendPassive:we})])}}),BS=Je({name:"QField",inheritAttrs:!1,props:ic,emits:Hh,setup(){return Kh(Gh())}});function no(e,t,r){return r<=t?t:Math.min(r,Math.max(t,e))}function yh(e,t,r){if(r<=t)return t;const a=r-t+1;let l=t+(e-t)%a;return l["add","add-unique","toggle"].includes(e),FS=".*+?^${}()|[]\\",US=Object.keys(ic);var $a=Je({name:"QSelect",inheritAttrs:!1,props:{...rg,...Gb,...ic,modelValue:{required:!0},multiple:Boolean,displayValue:[String,Number],displayValueHtml:Boolean,dropdownIcon:String,options:{type:Array,default:()=>[]},optionValue:[Function,String],optionLabel:[Function,String],optionDisable:[Function,String],hideSelected:Boolean,hideDropdownIcon:Boolean,fillInput:Boolean,maxValues:[Number,String],optionsDense:Boolean,optionsDark:{type:Boolean,default:null},optionsSelectedClass:String,optionsHtml:Boolean,optionsCover:Boolean,menuShrink:Boolean,menuAnchor:String,menuSelf:String,menuOffset:Array,popupContentClass:String,popupContentStyle:[String,Array,Object],useInput:Boolean,useChips:Boolean,newValueMode:{type:String,validator:_h},mapOptions:Boolean,emitValue:Boolean,inputDebounce:{type:[Number,String],default:500},inputClass:[Array,String,Object],inputStyle:[Array,String,Object],tabindex:{type:[String,Number],default:0},autocomplete:String,transitionShow:String,transitionHide:String,transitionDuration:[String,Number],behavior:{type:String,validator:e=>["default","menu","dialog"].includes(e),default:"default"},virtualScrollItemSize:{type:[Number,String],default:void 0},onNewValue:Function,onFilter:Function},emits:[...Hh,"add","remove","inputValue","newValue","keyup","keypress","keydown","filterAbort"],setup(e,{slots:t,emit:r}){const{proxy:a}=Dt(),{$q:l}=a,s=se(!1),u=se(!1),d=se(-1),f=se(""),g=se(!1),v=se(!1);let C=null,M,_,x,I=null,L,F,Y,D;const A=se(null),N=se(null),J=se(null),V=se(null),H=se(null),pe=Qb(e),_e=Jb(sl),xe=$(()=>Array.isArray(e.options)?e.options.length:0),lt=$(()=>e.virtualScrollItemSize===void 0?e.optionsDense===!0?24:48:e.virtualScrollItemSize),{virtualScrollSliceRange:te,virtualScrollSliceSizeComputed:Pe,localResetVirtualScroll:Be,padVirtualScroll:j,onVirtualScrollEvt:G,scrollTo:me,setVirtualScrollSize:rt}=ig({virtualScrollLength:xe,getVirtualScrollTarget:al,getVirtualScrollEl:il,virtualScrollItemSizeComputed:lt}),X=Gh(),Z=$(()=>{const T=e.mapOptions===!0&&e.multiple!==!0,le=e.modelValue!==void 0&&(e.modelValue!==null||T===!0)?e.multiple===!0&&Array.isArray(e.modelValue)?e.modelValue:[e.modelValue]:[];if(e.mapOptions===!0&&Array.isArray(e.options)===!0){const ie=e.mapOptions===!0&&M!==void 0?M:[],De=le.map(st=>ii(st,ie));return e.modelValue===null&&T===!0?De.filter(st=>st!==null):De}return le}),he=$(()=>{const T={};return US.forEach(le=>{const ie=e[le];ie!==void 0&&(T[le]=ie)}),T}),fe=$(()=>e.optionsDark===null?X.isDark.value:e.optionsDark),Ge=$(()=>lh(Z.value)),ze=$(()=>{let T="q-field__input q-placeholder col";return e.hideSelected===!0||Z.value.length===0?[T,e.inputClass]:(T+=" q-field__input--padding",e.inputClass===void 0?T:[T,e.inputClass])}),we=$(()=>(e.virtualScrollHorizontal===!0?"q-virtual-scroll--horizontal":"")+(e.popupContentClass?" "+e.popupContentClass:"")),Me=$(()=>xe.value===0),ft=$(()=>Z.value.map(T=>K.value(T)).join(", ")),ee=$(()=>e.displayValue!==void 0?e.displayValue:ft.value),wt=$(()=>e.optionsHtml===!0?()=>!0:T=>T!=null&&T.html===!0),nn=$(()=>e.displayValueHtml===!0||e.displayValue===void 0&&(e.optionsHtml===!0||Z.value.some(wt.value))),un=$(()=>X.focused.value===!0?e.tabindex:-1),rn=$(()=>{const T={tabindex:e.tabindex,role:"combobox","aria-label":e.label,"aria-readonly":e.readonly===!0?"true":"false","aria-autocomplete":e.useInput===!0?"list":"none","aria-expanded":s.value===!0?"true":"false","aria-controls":`${X.targetUid.value}_lb`};return d.value>=0&&(T["aria-activedescendant"]=`${X.targetUid.value}_${d.value}`),T}),qt=$(()=>({id:`${X.targetUid.value}_lb`,role:"listbox","aria-multiselectable":e.multiple===!0?"true":"false"})),Kt=$(()=>Z.value.map((T,le)=>({index:le,opt:T,html:wt.value(T),selected:!0,removeAtIndex:Fe,toggleOption:Pt,tabindex:un.value}))),Xn=$(()=>{if(xe.value===0)return[];const{from:T,to:le}=te.value;return e.options.slice(T,le).map((ie,De)=>{const st=de.value(ie)===!0,tt=T+De,kt={clickable:!0,active:!1,activeClass:$r.value,manualFocus:!0,focused:!1,disable:st,tabindex:-1,dense:e.optionsDense,dark:fe.value,role:"option",id:`${X.targetUid.value}_${tt}`,onClick:()=>{Pt(ie)}};return st!==!0&&(Qt(ie)===!0&&(kt.active=!0),d.value===tt&&(kt.focused=!0),kt["aria-selected"]=kt.active===!0?"true":"false",l.platform.is.desktop===!0&&(kt.onMousemove=()=>{s.value===!0&&cn(tt)})),{index:tt,opt:ie,html:wt.value(ie),label:K.value(ie),selected:kt.active,focused:kt.focused,toggleOption:Pt,setOptionIndex:cn,itemProps:kt}})}),Gt=$(()=>e.dropdownIcon!==void 0?e.dropdownIcon:l.iconSet.arrow.dropdown),Fn=$(()=>e.optionsCover===!1&&e.outlined!==!0&&e.standout!==!0&&e.borderless!==!0&&e.rounded!==!0),$r=$(()=>e.optionsSelectedClass!==void 0?e.optionsSelectedClass:e.color!==void 0?`text-${e.color}`:""),St=$(()=>Un(e.optionValue,"value")),K=$(()=>Un(e.optionLabel,"label")),de=$(()=>Un(e.optionDisable,"disable")),qe=$(()=>Z.value.map(T=>St.value(T))),gt=$(()=>{const T={onInput:sl,onChange:_e,onKeydown:rl,onKeyup:Mi,onKeypress:nl,onFocus:Ci,onClick(le){_===!0&&ir(le)}};return T.onCompositionstart=T.onCompositionupdate=T.onCompositionend=_e,T});Ve(Z,T=>{M=T,e.useInput===!0&&e.fillInput===!0&&e.multiple!==!0&&X.innerLoading.value!==!0&&(u.value!==!0&&s.value!==!0||Ge.value!==!0)&&(x!==!0&&Br(),(u.value===!0||s.value===!0)&&Rr(""))},{immediate:!0}),Ve(()=>e.fillInput,Br),Ve(s,qi),Ve(xe,ns);function it(T){return e.emitValue===!0?St.value(T):T}function Ze(T){if(T>-1&&T=e.maxValues)return;const De=e.modelValue.slice();r("add",{index:De.length,value:ie}),De.push(ie),r("update:modelValue",De)}function Pt(T,le){if(X.editable.value!==!0||T===void 0||de.value(T)===!0)return;const ie=St.value(T);if(e.multiple!==!0){le!==!0&&(Or(e.fillInput===!0?K.value(T):"",!0,!0),fr()),N.value!==null&&N.value.focus(),(Z.value.length===0||Hi(St.value(Z.value[0]),ie)!==!0)&&r("update:modelValue",e.emitValue===!0?ie:T);return}if((_!==!0||g.value===!0)&&X.focus(),Ci(),Z.value.length===0){const tt=e.emitValue===!0?ie:T;r("add",{index:0,value:tt}),r("update:modelValue",e.multiple===!0?[tt]:tt);return}const De=e.modelValue.slice(),st=qe.value.findIndex(tt=>Hi(tt,ie));if(st>-1)r("remove",{index:st,value:De.splice(st,1)[0]});else{if(e.maxValues!==void 0&&De.length>=e.maxValues)return;const tt=e.emitValue===!0?ie:T;r("add",{index:De.length,value:tt}),De.push(tt)}r("update:modelValue",De)}function cn(T){if(l.platform.is.desktop!==!0)return;const le=T>-1&&T=0?K.value(e.options[ie]):L))}}function ii(T,le){const ie=De=>Hi(St.value(De),T);return e.options.find(ie)||le.find(ie)||T}function Un(T,le){const ie=T!==void 0?T:le;return typeof ie=="function"?ie:De=>De!==null&&typeof De=="object"&&ie in De?De[ie]:De}function Qt(T){const le=St.value(T);return qe.value.find(ie=>Hi(ie,le))!==void 0}function Ci(T){e.useInput===!0&&N.value!==null&&(T===void 0||N.value===T.target&&T.target.value===ft.value)&&N.value.select()}function Ti(T){Ka(T,27)===!0&&s.value===!0&&(ir(T),fr(),Br()),r("keyup",T)}function Mi(T){const{value:le}=T.target;if(T.keyCode!==void 0){Ti(T);return}if(T.target.value="",C!==null&&(clearTimeout(C),C=null),Br(),typeof le=="string"&&le.length!==0){const ie=le.toLocaleLowerCase(),De=tt=>{const kt=e.options.find(Bt=>tt.value(Bt).toLocaleLowerCase()===ie);return kt===void 0?!1:(Z.value.indexOf(kt)===-1?Pt(kt):fr(),!0)},st=tt=>{De(St)!==!0&&(De(K)===!0||tt===!0||Rr(le,!0,()=>st(!0)))};st()}else X.clearValue(T)}function nl(T){r("keypress",T)}function rl(T){if(r("keydown",T),Yh(T)===!0)return;const le=f.value.length!==0&&(e.newValueMode!==void 0||e.onNewValue!==void 0),ie=T.shiftKey!==!0&&e.multiple!==!0&&(d.value>-1||le===!0);if(T.keyCode===27){yi(T);return}if(T.keyCode===9&&ie===!1){Lr();return}if(T.target===void 0||T.target.id!==X.targetUid.value||X.editable.value!==!0)return;if(T.keyCode===40&&X.innerLoading.value!==!0&&s.value===!1){Rt(T),Nr();return}if(T.keyCode===8&&e.hideSelected!==!0&&f.value.length===0){e.multiple===!0&&Array.isArray(e.modelValue)===!0?Ze(e.modelValue.length-1):e.multiple!==!0&&e.modelValue!==null&&r("update:modelValue",null);return}(T.keyCode===35||T.keyCode===36)&&(typeof f.value!="string"||f.value.length===0)&&(Rt(T),d.value=-1,er(T.keyCode===36?1:-1,e.multiple)),(T.keyCode===33||T.keyCode===34)&&Pe.value!==void 0&&(Rt(T),d.value=Math.max(-1,Math.min(xe.value,d.value+(T.keyCode===33?-1:1)*Pe.value.view)),er(T.keyCode===33?1:-1,e.multiple)),(T.keyCode===38||T.keyCode===40)&&(Rt(T),er(T.keyCode===38?-1:1,e.multiple));const De=xe.value;if((Y===void 0||D0&&e.useInput!==!0&&T.key!==void 0&&T.key.length===1&&T.altKey===!1&&T.ctrlKey===!1&&T.metaKey===!1&&(T.keyCode!==32||Y.length!==0)){s.value!==!0&&Nr(T);const st=T.key.toLocaleLowerCase(),tt=Y.length===1&&Y[0]===st;D=Date.now()+1500,tt===!1&&(Rt(T),Y+=st);const kt=new RegExp("^"+Y.split("").map(Pi=>FS.indexOf(Pi)>-1?"\\"+Pi:Pi).join(".*"),"i");let Bt=d.value;if(tt===!0||Bt<0||kt.test(K.value(e.options[Bt]))!==!0)do Bt=yh(Bt+1,-1,De-1);while(Bt!==d.value&&(de.value(e.options[Bt])===!0||kt.test(K.value(e.options[Bt]))!==!0));d.value!==Bt&&Sn(()=>{cn(Bt),me(Bt),Bt>=0&&e.useInput===!0&&e.fillInput===!0&&Di(K.value(e.options[Bt]))});return}if(!(T.keyCode!==13&&(T.keyCode!==32||e.useInput===!0||Y!=="")&&(T.keyCode!==9||ie===!1))){if(T.keyCode!==9&&Rt(T),d.value>-1&&d.value{if(kt){if(_h(kt)!==!0)return}else kt=e.newValueMode;if(Or("",e.multiple!==!0,!0),tt==null)return;(kt==="toggle"?Pt:mt)(tt,kt==="add-unique"),e.multiple!==!0&&(N.value!==null&&N.value.focus(),fr())};if(e.onNewValue!==void 0?r("newValue",f.value,st):st(f.value),e.multiple!==!0)return}s.value===!0?Lr():X.innerLoading.value!==!0&&Nr()}}function il(){return _===!0?H.value:J.value!==null&&J.value.contentEl!==null?J.value.contentEl:void 0}function al(){return il()}function ll(){return e.hideSelected===!0?[]:t["selected-item"]!==void 0?Kt.value.map(T=>t["selected-item"](T)).slice():t.selected!==void 0?[].concat(t.selected()):e.useChips===!0?Kt.value.map((T,le)=>E(Qa,{key:"option-"+le,removable:X.editable.value===!0&&de.value(T.opt)!==!0,dense:!0,textColor:e.color,tabindex:un.value,onRemove(){T.removeAtIndex(le)}},()=>E("span",{class:"ellipsis",[T.html===!0?"innerHTML":"textContent"]:K.value(T.opt)}))):[E("span",{[nn.value===!0?"innerHTML":"textContent"]:ee.value})]}function ol(){if(Me.value===!0)return t["no-option"]!==void 0?t["no-option"]({inputValue:f.value}):void 0;const T=t.option!==void 0?t.option:ie=>E(Vt,{key:ie.index,...ie.itemProps},()=>E(Ie,()=>E(Ke,()=>E("span",{[ie.html===!0?"innerHTML":"textContent"]:ie.label}))));let le=j("div",Xn.value.map(T));return t["before-options"]!==void 0&&(le=t["before-options"]().concat(le)),Si(t["after-options"],le)}function Go(T,le){const ie=le===!0?{...rn.value,...X.splitAttrs.attributes.value}:void 0,De={ref:le===!0?N:void 0,key:"i_t",class:ze.value,style:e.inputStyle,value:f.value!==void 0?f.value:"",type:"search",...ie,id:le===!0?X.targetUid.value:void 0,maxlength:e.maxlength,autocomplete:e.autocomplete,"data-autofocus":T===!0||e.autofocus===!0||void 0,disabled:e.disable===!0,readonly:e.readonly===!0,...gt.value};return T!==!0&&_===!0&&(Array.isArray(De.class)===!0?De.class=[...De.class,"no-pointer-events"]:De.class+=" no-pointer-events"),E("input",De)}function sl(T){C!==null&&(clearTimeout(C),C=null),!(T&&T.target&&T.target.qComposing===!0)&&(Di(T.target.value||""),x=!0,L=f.value,X.focused.value!==!0&&(_!==!0||g.value===!0)&&X.focus(),e.onFilter!==void 0&&(C=setTimeout(()=>{C=null,Rr(f.value)},e.inputDebounce)))}function Di(T){f.value!==T&&(f.value=T,r("inputValue",T))}function Or(T,le,ie){x=ie!==!0,e.useInput===!0&&(Di(T),(le===!0||ie!==!0)&&(L=T),le!==!0&&Rr(T))}function Rr(T,le,ie){if(e.onFilter===void 0||le!==!0&&X.focused.value!==!0)return;X.innerLoading.value===!0?r("filterAbort"):(X.innerLoading.value=!0,v.value=!0),T!==""&&e.multiple!==!0&&Z.value.length!==0&&x!==!0&&T===K.value(Z.value[0])&&(T="");const De=setTimeout(()=>{s.value===!0&&(s.value=!1)},10);I!==null&&clearTimeout(I),I=De,r("filter",T,(st,tt)=>{(le===!0||X.focused.value===!0)&&I===De&&(clearTimeout(I),typeof st=="function"&&st(),v.value=!1,Sn(()=>{X.innerLoading.value=!1,X.editable.value===!0&&(le===!0?s.value===!0&&fr():s.value===!0?qi(!0):s.value=!0),typeof tt=="function"&&Sn(()=>{tt(a)}),typeof ie=="function"&&Sn(()=>{ie(a)})}))},()=>{X.focused.value===!0&&I===De&&(clearTimeout(I),X.innerLoading.value=!1,v.value=!1),s.value===!0&&(s.value=!1)})}function Qo(){return E(ag,{ref:J,class:we.value,style:e.popupContentStyle,modelValue:s.value,fit:e.menuShrink!==!0,cover:e.optionsCover===!0&&Me.value!==!0&&e.useInput!==!0,anchor:e.menuAnchor,self:e.menuSelf,offset:e.menuOffset,dark:fe.value,noParentEvent:!0,noRefocus:!0,noFocus:!0,square:Fn.value,transitionShow:e.transitionShow,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,separateClosePopup:!0,...qt.value,onScrollPassive:G,onBeforeShow:cl,onBeforeHide:jo,onShow:da},ol)}function jo(T){dl(T),Lr()}function da(){rt()}function Zo(T){ir(T),N.value!==null&&N.value.focus(),g.value=!0,window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,0)}function fa(T){ir(T),Sn(()=>{g.value=!1})}function Jo(){const T=[E(BS,{class:`col-auto ${X.fieldClass.value}`,...he.value,for:X.targetUid.value,dark:fe.value,square:!0,loading:v.value,itemAligned:!1,filled:!0,stackLabel:f.value.length!==0,...X.splitAttrs.listeners.value,onFocus:Zo,onBlur:fa},{...t,rawControl:()=>X.getControl(!0),before:void 0,after:void 0})];return s.value===!0&&T.push(E("div",{ref:H,class:we.value+" scroll",style:e.popupContentStyle,...qt.value,onClick:yi,onScrollPassive:G},ol())),E(go,{ref:V,modelValue:u.value,position:e.useInput===!0?"top":void 0,transitionShow:F,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,onBeforeShow:cl,onBeforeHide:Xo,onHide:es,onShow:ts},()=>E("div",{class:"q-select__dialog"+(fe.value===!0?" q-select__dialog--dark q-dark":"")+(g.value===!0?" q-select__dialog--focused":"")},T))}function Xo(T){dl(T),V.value!==null&&V.value.__updateRefocusTarget(X.rootRef.value.querySelector(".q-field__native > [tabindex]:last-child")),X.focused.value=!1}function es(T){fr(),X.focused.value===!1&&r("blur",T),Br()}function ts(){const T=document.activeElement;(T===null||T.id!==X.targetUid.value)&&N.value!==null&&N.value!==T&&N.value.focus(),rt()}function Lr(){u.value!==!0&&(d.value=-1,s.value===!0&&(s.value=!1),X.focused.value===!1&&(I!==null&&(clearTimeout(I),I=null),X.innerLoading.value===!0&&(r("filterAbort"),X.innerLoading.value=!1,v.value=!1)))}function Nr(T){X.editable.value===!0&&(_===!0?(X.onControlFocusin(T),u.value=!0,Sn(()=>{X.focus()})):X.focus(),e.onFilter!==void 0?Rr(f.value):(Me.value!==!0||t["no-option"]!==void 0)&&(s.value=!0))}function fr(){u.value=!1,Lr()}function Br(){e.useInput===!0&&Or(e.multiple!==!0&&e.fillInput===!0&&Z.value.length!==0&&K.value(Z.value[0])||"",!0,!0)}function qi(T){let le=-1;if(T===!0){if(Z.value.length!==0){const ie=St.value(Z.value[0]);le=e.options.findIndex(De=>Hi(St.value(De),ie))}Be(le)}cn(le)}function ns(T,le){s.value===!0&&X.innerLoading.value===!1&&(Be(-1,!0),Sn(()=>{s.value===!0&&X.innerLoading.value===!1&&(T>le?Be():qi(!0))}))}function ul(){u.value===!1&&J.value!==null&&J.value.updatePosition()}function cl(T){T!==void 0&&ir(T),r("popupShow",T),X.hasPopupOpen=!0,X.onControlFocusin(T)}function dl(T){T!==void 0&&ir(T),r("popupHide",T),X.hasPopupOpen=!1,X.onControlFocusout(T)}function fl(){_=l.platform.is.mobile!==!0&&e.behavior!=="dialog"?!1:e.behavior!=="menu"&&(e.useInput===!0?t["no-option"]!==void 0||e.onFilter!==void 0||Me.value===!1:!0),F=l.platform.is.ios===!0&&_===!0&&e.useInput===!0?"fade":e.transitionShow}return jb(fl),Zb(ul),fl(),Ht(()=>{C!==null&&clearTimeout(C)}),Object.assign(a,{showPopup:Nr,hidePopup:fr,removeAtIndex:Ze,add:mt,toggleOption:Pt,getOptionIndex:()=>d.value,setOptionIndex:cn,moveOptionSelection:er,filter:Rr,updateMenuPosition:ul,updateInputValue:Or,isOptionSelected:Qt,getEmittingOptionValue:it,isOptionDisabled:(...T)=>de.value.apply(null,T)===!0,getOptionValue:(...T)=>St.value.apply(null,T),getOptionLabel:(...T)=>K.value.apply(null,T)}),Object.assign(X,{innerValue:Z,fieldClass:$(()=>`q-select q-field--auto-height q-select--with${e.useInput!==!0?"out":""}-input q-select--with${e.useChips!==!0?"out":""}-chips q-select--${e.multiple===!0?"multiple":"single"}`),inputRef:A,targetRef:N,hasValue:Ge,showPopup:Nr,floatingLabel:$(()=>e.hideSelected!==!0&&Ge.value===!0||typeof f.value=="number"||f.value.length!==0||lh(e.displayValue)),getControlChild:()=>{if(X.editable.value!==!1&&(u.value===!0||Me.value!==!0||t["no-option"]!==void 0))return _===!0?Jo():Qo();X.hasPopupOpen===!0&&(X.hasPopupOpen=!1)},controlEvents:{onFocusin(T){X.onControlFocusin(T)},onFocusout(T){X.onControlFocusout(T,()=>{Br(),Lr()})},onClick(T){if(yi(T),_!==!0&&s.value===!0){Lr(),N.value!==null&&N.value.focus();return}Nr(T)}},getControl:T=>{const le=ll(),ie=T===!0||u.value!==!0||_!==!0;if(e.useInput===!0)le.push(Go(T,ie));else if(X.editable.value===!0){const st=ie===!0?rn.value:void 0;le.push(E("input",{ref:ie===!0?N:void 0,key:"d_t",class:"q-select__focus-target",id:ie===!0?X.targetUid.value:void 0,value:ee.value,readonly:!0,"data-autofocus":T===!0||e.autofocus===!0||void 0,...st,onKeydown:rl,onKeyup:Ti,onKeypress:nl})),ie===!0&&typeof e.autocomplete=="string"&&e.autocomplete.length!==0&&le.push(E("input",{class:"q-select__autocomplete-input",autocomplete:e.autocomplete,tabindex:-1,onKeyup:Mi}))}if(pe.value!==void 0&&e.disable!==!0&&qe.value.length!==0){const st=qe.value.map(tt=>E("option",{value:tt,selected:!0}));le.push(E("select",{class:"hidden",name:pe.value,multiple:e.multiple},st))}const De=e.useInput===!0||ie!==!0?void 0:X.splitAttrs.attributes.value;return E("div",{class:"q-field__native row items-center",...De,...X.splitAttrs.listeners.value},le)},getInnerAppend:()=>e.loading!==!0&&v.value!==!0&&e.hideDropdownIcon!==!0?[E(Yt,{class:"q-select__dropdown-icon"+(s.value===!0?" rotate-180":""),name:Gt.value})]:null}),Kh(X)}});const hc={left:!0,right:!0,up:!0,down:!0,horizontal:!0,vertical:!0},zS=Object.keys(hc);hc.all=!0;function So(e){const t={};for(const r of zS)e[r]===!0&&(t[r]=!0);return Object.keys(t).length===0?hc:(t.horizontal===!0?t.left=t.right=!0:t.left===!0&&t.right===!0&&(t.horizontal=!0),t.vertical===!0?t.up=t.down=!0:t.up===!0&&t.down===!0&&(t.vertical=!0),t.horizontal===!0&&t.vertical===!0&&(t.all=!0),t)}const VS=["INPUT","TEXTAREA"];function ko(e,t){return t.event===void 0&&e.target!==void 0&&e.target.draggable!==!0&&typeof t.handler=="function"&&VS.includes(e.target.nodeName.toUpperCase())===!1&&(e.qClonedBy===void 0||e.qClonedBy.indexOf(t.uid)===-1)}function YS(e){const t=[.06,6,50];return typeof e=="string"&&e.length&&e.split(":").forEach((r,a)=>{const l=parseFloat(r);l&&(t[a]=l)}),t}var WS=rc({name:"touch-swipe",beforeMount(e,{value:t,arg:r,modifiers:a}){if(a.mouse!==!0&&Kn.has.touch!==!0)return;const l=a.mouseCapture===!0?"Capture":"",s={handler:t,sensitivity:YS(r),direction:So(a),noop:Xu,mouseStart(u){ko(u,s)&&Qh(u)&&(Ln(s,"temp",[[document,"mousemove","move",`notPassive${l}`],[document,"mouseup","end","notPassiveCapture"]]),s.start(u,!0))},touchStart(u){if(ko(u,s)){const d=u.target;Ln(s,"temp",[[d,"touchmove","move","notPassiveCapture"],[d,"touchcancel","end","notPassiveCapture"],[d,"touchend","end","notPassiveCapture"]]),s.start(u)}},start(u,d){Kn.is.firefox===!0&&ji(e,!0);const f=na(u);s.event={x:f.left,y:f.top,time:Date.now(),mouse:d===!0,dir:!1}},move(u){if(s.event===void 0)return;if(s.event.dir!==!1){Rt(u);return}const d=Date.now()-s.event.time;if(d===0)return;const f=na(u),g=f.left-s.event.x,v=Math.abs(g),C=f.top-s.event.y,M=Math.abs(C);if(s.event.mouse!==!0){if(vs.sensitivity[0]&&(s.event.dir=C<0?"up":"down"),s.direction.horizontal===!0&&v>M&&M<100&&_>s.sensitivity[0]&&(s.event.dir=g<0?"left":"right"),s.direction.up===!0&&vs.sensitivity[0]&&(s.event.dir="up"),s.direction.down===!0&&v0&&v<100&&x>s.sensitivity[0]&&(s.event.dir="down"),s.direction.left===!0&&v>M&&g<0&&M<100&&_>s.sensitivity[0]&&(s.event.dir="left"),s.direction.right===!0&&v>M&&g>0&&M<100&&_>s.sensitivity[0]&&(s.event.dir="right"),s.event.dir!==!1?(Rt(u),s.event.mouse===!0&&(document.body.classList.add("no-pointer-events--children"),document.body.classList.add("non-selectable"),Ua(),s.styleCleanup=I=>{s.styleCleanup=void 0,document.body.classList.remove("non-selectable");const L=()=>{document.body.classList.remove("no-pointer-events--children")};I===!0?setTimeout(L,50):L()}),s.handler({evt:u,touch:s.event.mouse!==!0,mouse:s.event.mouse,direction:s.event.dir,duration:d,distance:{x:v,y:M}})):s.end(u)},end(u){s.event!==void 0&&(Pr(s,"temp"),Kn.is.firefox===!0&&ji(e,!1),s.styleCleanup!==void 0&&s.styleCleanup(!0),u!==void 0&&s.event.dir!==!1&&Rt(u),s.event=void 0)}};if(e.__qtouchswipe=s,a.mouse===!0){const u=a.mouseCapture===!0||a.mousecapture===!0?"Capture":"";Ln(s,"main",[[e,"mousedown","mouseStart",`passive${u}`]])}Kn.has.touch===!0&&Ln(s,"main",[[e,"touchstart","touchStart",`passive${a.capture===!0?"Capture":""}`],[e,"touchmove","noop","notPassiveCapture"]])},updated(e,t){const r=e.__qtouchswipe;r!==void 0&&(t.oldValue!==t.value&&(typeof t.value!="function"&&r.end(),r.handler=t.value),r.direction=So(t.modifiers))},beforeUnmount(e){const t=e.__qtouchswipe;t!==void 0&&(Pr(t,"main"),Pr(t,"temp"),Kn.is.firefox===!0&&ji(e,!1),t.styleCleanup!==void 0&&t.styleCleanup(),delete e.__qtouchswipe)}});function HS(){const e=new Map;return{getCache:function(t,r){return e[t]===void 0?e[t]=r:e[t]},getCacheWithFn:function(t,r){return e[t]===void 0?e[t]=r():e[t]}}}const kg={name:{required:!0},disable:Boolean},bh={setup(e,{slots:t}){return()=>E("div",{class:"q-panel scroll",role:"tabpanel"},Mt(t.default))}},Cg={modelValue:{required:!0},animated:Boolean,infinite:Boolean,swipeable:Boolean,vertical:Boolean,transitionPrev:String,transitionNext:String,transitionDuration:{type:[String,Number],default:300},keepAlive:Boolean,keepAliveInclude:[String,Array,RegExp],keepAliveExclude:[String,Array,RegExp],keepAliveMax:Number},Tg=["update:modelValue","beforeTransition","transition"];function Mg(){const{props:e,emit:t,proxy:r}=Dt(),{getCacheWithFn:a}=HS();let l,s;const u=se(null),d=se(null);function f(te){const Pe=e.vertical===!0?"up":"left";V((r.$q.lang.rtl===!0?-1:1)*(te.direction===Pe?1:-1))}const g=$(()=>[[WS,f,void 0,{horizontal:e.vertical!==!0,vertical:e.vertical,mouse:!0}]]),v=$(()=>e.transitionPrev||`slide-${e.vertical===!0?"down":"right"}`),C=$(()=>e.transitionNext||`slide-${e.vertical===!0?"up":"left"}`),M=$(()=>`--q-transition-duration: ${e.transitionDuration}ms`),_=$(()=>typeof e.modelValue=="string"||typeof e.modelValue=="number"?e.modelValue:String(e.modelValue)),x=$(()=>({include:e.keepAliveInclude,exclude:e.keepAliveExclude,max:e.keepAliveMax})),I=$(()=>e.keepAliveInclude!==void 0||e.keepAliveExclude!==void 0);Ve(()=>e.modelValue,(te,Pe)=>{const Be=D(te)===!0?A(te):-1;s!==!0&&J(Be===-1?0:Be{t("transition",te,Pe)}))});function L(){V(1)}function F(){V(-1)}function Y(te){t("update:modelValue",te)}function D(te){return te!=null&&te!==""}function A(te){return l.findIndex(Pe=>Pe.props.name===te&&Pe.props.disable!==""&&Pe.props.disable!==!0)}function N(){return l.filter(te=>te.props.disable!==""&&te.props.disable!==!0)}function J(te){const Pe=te!==0&&e.animated===!0&&u.value!==-1?"q-transition--"+(te===-1?v.value:C.value):null;d.value!==Pe&&(d.value=Pe)}function V(te,Pe=u.value){let Be=Pe+te;for(;Be>-1&&Be{s=!1});return}Be+=te}e.infinite===!0&&l.length!==0&&Pe!==-1&&Pe!==l.length&&V(te,te===-1?l.length:-1)}function H(){const te=A(e.modelValue);return u.value!==te&&(u.value=te),!0}function pe(){const te=D(e.modelValue)===!0&&H()&&l[u.value];return e.keepAlive===!0?[E(Xb,x.value,[E(I.value===!0?a(_.value,()=>({...bh,name:_.value})):bh,{key:_.value,style:M.value},()=>te)])]:[E("div",{class:"q-panel scroll",style:M.value,key:_.value,role:"tabpanel"},[te])]}function _e(){if(l.length!==0)return e.animated===!0?[E(Ga,{name:d.value},pe)]:pe()}function xe(te){return l=nc(Mt(te.default,[])).filter(Pe=>Pe.props!==null&&Pe.props.slot===void 0&&D(Pe.props.name)===!0),l.length}function lt(){return l}return Object.assign(r,{next:L,previous:F,goTo:Y}),{panelIndex:u,panelDirectives:g,updatePanelsList:xe,updatePanelIndex:H,getPanelContent:_e,getEnabledPanels:N,getPanels:lt,isValidPanelName:D,keepAliveProps:x,needsUniqueKeepAliveWrapper:I,goToPanelByOffset:V,goToPanel:Y,nextPanel:L,previousPanel:F}}var ku=Je({name:"QTabPanel",props:kg,setup(e,{slots:t}){return()=>E("div",{class:"q-tab-panel",role:"tabpanel"},Mt(t.default))}}),KS=Je({name:"QTabPanels",props:{...Cg,...or},emits:Tg,setup(e,{slots:t}){const r=Dt(),a=sr(e,r.proxy.$q),{updatePanelsList:l,getPanelContent:s,panelDirectives:u}=Mg(),d=$(()=>"q-tab-panels q-panel-parent"+(a.value===!0?" q-tab-panels--dark q-dark":""));return()=>(l(t),Zu("div",{class:d.value},s(),"pan",e.swipeable,()=>u.value))}});const wh=e=>{e=1831565813+(e|=0)|0;let t=Math.imul(e^e>>>15,1|e);return t=t+Math.imul(t^t>>>7,61|t)^t,((t^t>>>14)>>>0)/4294967296};class GS{constructor(t){this.dictionaries=void 0,this.length=void 0,this.separator=void 0,this.style=void 0,this.seed=void 0;const{length:r,separator:a,dictionaries:l,style:s,seed:u}=t;this.dictionaries=l,this.separator=a,this.length=r,this.style=s,this.seed=u}generate(){if(!this.dictionaries)throw new Error('Cannot find any dictionary. Please provide at least one, or leave the "dictionary" field empty in the config object');if(this.length<=0)throw new Error("Invalid length provided");if(this.length>this.dictionaries.length)throw new Error(`The length cannot be bigger than the number of dictionaries. -Length provided: ${this.length}. Number of dictionaries provided: ${this.dictionaries.length}`);let t=this.seed;return this.dictionaries.slice(0,this.length).reduce((r,a)=>{let l;t?(l=(u=>{if(typeof u=="string"){const d=u.split("").map(g=>g.charCodeAt(0)).reduce((g,v)=>g+v,1),f=Math.floor(Number(d));return wh(f)}return wh(u)})(t),t=4294967296*l):l=Math.random();let s=a[Math.floor(l*a.length)]||"";if(this.style==="lowerCase")s=s.toLowerCase();else if(this.style==="capital"){const[u,...d]=s.split("");s=u.toUpperCase()+d.join("")}else this.style==="upperCase"&&(s=s.toUpperCase());return r?`${r}${this.separator}${s}`:`${s}`},"")}}const Sh={separator:"_",dictionaries:[]},Dg=e=>{const t=[...e&&e.dictionaries||Sh.dictionaries],r={...Sh,...e,length:e&&e.length||t.length,dictionaries:t};if(!e||!e.dictionaries||!e.dictionaries.length)throw new Error('A "dictionaries" array must be provided. This is a breaking change introduced starting from Unique Name Generator v4. Read more about the breaking change here: https://github.com/andreasonny83/unique-names-generator#migration-guide');return new GS(r).generate()};var qg=["able","above","absent","absolute","abstract","abundant","academic","acceptable","accepted","accessible","accurate","accused","active","actual","acute","added","additional","adequate","adjacent","administrative","adorable","advanced","adverse","advisory","aesthetic","afraid","aggregate","aggressive","agreeable","agreed","agricultural","alert","alive","alleged","allied","alone","alright","alternative","amateur","amazing","ambitious","amused","ancient","angry","annoyed","annual","anonymous","anxious","appalling","apparent","applicable","appropriate","arbitrary","architectural","armed","arrogant","artificial","artistic","ashamed","asleep","assistant","associated","atomic","attractive","automatic","autonomous","available","average","awake","aware","awful","awkward","back","bad","balanced","bare","basic","beautiful","beneficial","better","bewildered","big","binding","biological","bitter","bizarre","blank","blind","blonde","bloody","blushing","boiling","bold","bored","boring","bottom","brainy","brave","breakable","breezy","brief","bright","brilliant","broad","broken","bumpy","burning","busy","calm","capable","capitalist","careful","casual","causal","cautious","central","certain","changing","characteristic","charming","cheap","cheerful","chemical","chief","chilly","chosen","christian","chronic","chubby","circular","civic","civil","civilian","classic","classical","clean","clear","clever","clinical","close","closed","cloudy","clumsy","coastal","cognitive","coherent","cold","collective","colonial","colorful","colossal","coloured","colourful","combative","combined","comfortable","coming","commercial","common","communist","compact","comparable","comparative","compatible","competent","competitive","complete","complex","complicated","comprehensive","compulsory","conceptual","concerned","concrete","condemned","confident","confidential","confused","conscious","conservation","conservative","considerable","consistent","constant","constitutional","contemporary","content","continental","continued","continuing","continuous","controlled","controversial","convenient","conventional","convinced","convincing","cooing","cool","cooperative","corporate","correct","corresponding","costly","courageous","crazy","creative","creepy","criminal","critical","crooked","crowded","crucial","crude","cruel","cuddly","cultural","curious","curly","current","curved","cute","daily","damaged","damp","dangerous","dark","dead","deaf","deafening","dear","decent","decisive","deep","defeated","defensive","defiant","definite","deliberate","delicate","delicious","delighted","delightful","democratic","dependent","depressed","desirable","desperate","detailed","determined","developed","developing","devoted","different","difficult","digital","diplomatic","direct","dirty","disabled","disappointed","disastrous","disciplinary","disgusted","distant","distinct","distinctive","distinguished","disturbed","disturbing","diverse","divine","dizzy","domestic","dominant","double","doubtful","drab","dramatic","dreadful","driving","drunk","dry","dual","due","dull","dusty","dutch","dying","dynamic","eager","early","eastern","easy","economic","educational","eerie","effective","efficient","elaborate","elated","elderly","eldest","electoral","electric","electrical","electronic","elegant","eligible","embarrassed","embarrassing","emotional","empirical","empty","enchanting","encouraging","endless","energetic","enormous","enthusiastic","entire","entitled","envious","environmental","equal","equivalent","essential","established","estimated","ethical","ethnic","eventual","everyday","evident","evil","evolutionary","exact","excellent","exceptional","excess","excessive","excited","exciting","exclusive","existing","exotic","expected","expensive","experienced","experimental","explicit","extended","extensive","external","extra","extraordinary","extreme","exuberant","faint","fair","faithful","familiar","famous","fancy","fantastic","far","fascinating","fashionable","fast","fat","fatal","favourable","favourite","federal","fellow","female","feminist","few","fierce","filthy","final","financial","fine","firm","fiscal","fit","fixed","flaky","flat","flexible","fluffy","fluttering","flying","following","fond","foolish","foreign","formal","formidable","forthcoming","fortunate","forward","fragile","frail","frantic","free","frequent","fresh","friendly","frightened","front","frozen","full","fun","functional","fundamental","funny","furious","future","fuzzy","gastric","gay","general","generous","genetic","gentle","genuine","geographical","giant","gigantic","given","glad","glamorous","gleaming","global","glorious","golden","good","gorgeous","gothic","governing","graceful","gradual","grand","grateful","greasy","great","grieving","grim","gross","grotesque","growing","grubby","grumpy","guilty","handicapped","handsome","happy","hard","harsh","head","healthy","heavy","helpful","helpless","hidden","high","hilarious","hissing","historic","historical","hollow","holy","homeless","homely","hon","honest","horizontal","horrible","hostile","hot","huge","human","hungry","hurt","hushed","husky","icy","ideal","identical","ideological","ill","illegal","imaginative","immediate","immense","imperial","implicit","important","impossible","impressed","impressive","improved","inadequate","inappropriate","inc","inclined","increased","increasing","incredible","independent","indirect","individual","industrial","inevitable","influential","informal","inherent","initial","injured","inland","inner","innocent","innovative","inquisitive","instant","institutional","insufficient","intact","integral","integrated","intellectual","intelligent","intense","intensive","interested","interesting","interim","interior","intermediate","internal","international","intimate","invisible","involved","irrelevant","isolated","itchy","jealous","jittery","joint","jolly","joyous","judicial","juicy","junior","just","keen","key","kind","known","labour","large","late","latin","lazy","leading","left","legal","legislative","legitimate","lengthy","lesser","level","lexical","liable","liberal","light","like","likely","limited","linear","linguistic","liquid","literary","little","live","lively","living","local","logical","lonely","long","loose","lost","loud","lovely","low","loyal","ltd","lucky","mad","magic","magnetic","magnificent","main","major","male","mammoth","managerial","managing","manual","many","marginal","marine","marked","married","marvellous","marxist","mass","massive","mathematical","mature","maximum","mean","meaningful","mechanical","medical","medieval","melodic","melted","mental","mere","metropolitan","mid","middle","mighty","mild","military","miniature","minimal","minimum","ministerial","minor","miserable","misleading","missing","misty","mixed","moaning","mobile","moderate","modern","modest","molecular","monetary","monthly","moral","motionless","muddy","multiple","mushy","musical","mute","mutual","mysterious","naked","narrow","nasty","national","native","natural","naughty","naval","near","nearby","neat","necessary","negative","neighbouring","nervous","net","neutral","new","nice","noble","noisy","normal","northern","nosy","notable","novel","nuclear","numerous","nursing","nutritious","nutty","obedient","objective","obliged","obnoxious","obvious","occasional","occupational","odd","official","ok","okay","old","olympic","only","open","operational","opposite","optimistic","oral","ordinary","organic","organisational","original","orthodox","other","outdoor","outer","outrageous","outside","outstanding","overall","overseas","overwhelming","painful","pale","panicky","parallel","parental","parliamentary","partial","particular","passing","passive","past","patient","payable","peaceful","peculiar","perfect","permanent","persistent","personal","petite","philosophical","physical","plain","planned","plastic","pleasant","pleased","poised","polite","political","poor","popular","positive","possible","potential","powerful","practical","precious","precise","preferred","pregnant","preliminary","premier","prepared","present","presidential","pretty","previous","prickly","primary","prime","primitive","principal","printed","prior","private","probable","productive","professional","profitable","profound","progressive","prominent","promising","proper","proposed","prospective","protective","protestant","proud","provincial","psychiatric","psychological","public","puny","pure","purring","puzzled","quaint","qualified","quarrelsome","querulous","quick","quickest","quiet","quintessential","quixotic","racial","radical","rainy","random","rapid","rare","raspy","rational","ratty","raw","ready","real","realistic","rear","reasonable","recent","reduced","redundant","regional","registered","regular","regulatory","related","relative","relaxed","relevant","reliable","relieved","religious","reluctant","remaining","remarkable","remote","renewed","representative","repulsive","required","resident","residential","resonant","respectable","respective","responsible","resulting","retail","retired","revolutionary","rich","ridiculous","right","rigid","ripe","rising","rival","roasted","robust","rolling","romantic","rotten","rough","round","royal","rubber","rude","ruling","running","rural","sacred","sad","safe","salty","satisfactory","satisfied","scared","scary","scattered","scientific","scornful","scrawny","screeching","secondary","secret","secure","select","selected","selective","selfish","semantic","senior","sensible","sensitive","separate","serious","severe","sexual","shaggy","shaky","shallow","shared","sharp","sheer","shiny","shivering","shocked","short","shrill","shy","sick","significant","silent","silky","silly","similar","simple","single","skilled","skinny","sleepy","slight","slim","slimy","slippery","slow","small","smart","smiling","smoggy","smooth","social","socialist","soft","solar","sole","solid","sophisticated","sore","sorry","sound","sour","southern","soviet","spare","sparkling","spatial","special","specific","specified","spectacular","spicy","spiritual","splendid","spontaneous","sporting","spotless","spotty","square","squealing","stable","stale","standard","static","statistical","statutory","steady","steep","sticky","stiff","still","stingy","stormy","straight","straightforward","strange","strategic","strict","striking","striped","strong","structural","stuck","stupid","subjective","subsequent","substantial","subtle","successful","successive","sudden","sufficient","suitable","sunny","super","superb","superior","supporting","supposed","supreme","sure","surprised","surprising","surrounding","surviving","suspicious","sweet","swift","symbolic","sympathetic","systematic","tall","tame","tart","tasteless","tasty","technical","technological","teenage","temporary","tender","tense","terrible","territorial","testy","then","theoretical","thick","thin","thirsty","thorough","thoughtful","thoughtless","thundering","tight","tiny","tired","top","tory","total","tough","toxic","traditional","tragic","tremendous","tricky","tropical","troubled","typical","ugliest","ugly","ultimate","unable","unacceptable","unaware","uncertain","unchanged","uncomfortable","unconscious","underground","underlying","unemployed","uneven","unexpected","unfair","unfortunate","unhappy","uniform","uninterested","unique","united","universal","unknown","unlikely","unnecessary","unpleasant","unsightly","unusual","unwilling","upper","upset","uptight","urban","urgent","used","useful","useless","usual","vague","valid","valuable","variable","varied","various","varying","vast","verbal","vertical","very","vicarious","vicious","victorious","violent","visible","visiting","visual","vital","vitreous","vivacious","vivid","vocal","vocational","voiceless","voluminous","voluntary","vulnerable","wandering","warm","wasteful","watery","weak","wealthy","weary","wee","weekly","weird","welcome","well","western","wet","whispering","whole","wicked","wide","widespread","wild","wilful","willing","willowy","wily","wise","wispy","wittering","witty","wonderful","wooden","working","worldwide","worried","worrying","worthwhile","worthy","written","wrong","xenacious","xenial","xenogeneic","xenophobic","xeric","xerothermic","yabbering","yammering","yappiest","yappy","yawning","yearling","yearning","yeasty","yelling","yelping","yielding","yodelling","young","youngest","youthful","ytterbic","yucky","yummy","zany","zealous","zeroth","zestful","zesty","zippy","zonal","zoophagous","zygomorphic","zygotic"],Pg=["aardvark","aardwolf","albatross","alligator","alpaca","amphibian","anaconda","angelfish","anglerfish","ant","anteater","antelope","antlion","ape","aphid","armadillo","asp","baboon","badger","bandicoot","barnacle","barracuda","basilisk","bass","bat","bear","beaver","bedbug","bee","beetle","bird","bison","blackbird","boa","boar","bobcat","bobolink","bonobo","booby","bovid","bug","butterfly","buzzard","camel","canid","canidae","capybara","cardinal","caribou","carp","cat","caterpillar","catfish","catshark","cattle","centipede","cephalopod","chameleon","cheetah","chickadee","chicken","chimpanzee","chinchilla","chipmunk","cicada","clam","clownfish","cobra","cockroach","cod","condor","constrictor","coral","cougar","cow","coyote","crab","crane","crawdad","crayfish","cricket","crocodile","crow","cuckoo","damselfly","deer","dingo","dinosaur","dog","dolphin","donkey","dormouse","dove","dragon","dragonfly","duck","eagle","earthworm","earwig","echidna","eel","egret","elephant","elk","emu","ermine","falcon","felidae","ferret","finch","firefly","fish","flamingo","flea","fly","flyingfish","fowl","fox","frog","galliform","gamefowl","gayal","gazelle","gecko","gerbil","gibbon","giraffe","goat","goldfish","goose","gopher","gorilla","grasshopper","grouse","guan","guanaco","guineafowl","gull","guppy","haddock","halibut","hamster","hare","harrier","hawk","hedgehog","heron","herring","hippopotamus","hookworm","hornet","horse","hoverfly","hummingbird","hyena","iguana","impala","jackal","jaguar","jay","jellyfish","junglefowl","kangaroo","kingfisher","kite","kiwi","koala","koi","krill","ladybug","lamprey","landfowl","lark","leech","lemming","lemur","leopard","leopon","limpet","lion","lizard","llama","lobster","locust","loon","louse","lungfish","lynx","macaw","mackerel","magpie","mammal","manatee","mandrill","marlin","marmoset","marmot","marsupial","marten","mastodon","meadowlark","meerkat","mink","minnow","mite","mockingbird","mole","mollusk","mongoose","monkey","moose","mosquito","moth","mouse","mule","muskox","narwhal","newt","nightingale","ocelot","octopus","opossum","orangutan","orca","ostrich","otter","owl","ox","panda","panther","parakeet","parrot","parrotfish","partridge","peacock","peafowl","pelican","penguin","perch","pheasant","pig","pigeon","pike","pinniped","piranha","planarian","platypus","pony","porcupine","porpoise","possum","prawn","primate","ptarmigan","puffin","puma","python","quail","quelea","quokka","rabbit","raccoon","rat","rattlesnake","raven","reindeer","reptile","rhinoceros","roadrunner","rodent","rook","rooster","roundworm","sailfish","salamander","salmon","sawfish","scallop","scorpion","seahorse","shark","sheep","shrew","shrimp","silkworm","silverfish","skink","skunk","sloth","slug","smelt","snail","snake","snipe","sole","sparrow","spider","spoonbill","squid","squirrel","starfish","stingray","stoat","stork","sturgeon","swallow","swan","swift","swordfish","swordtail","tahr","takin","tapir","tarantula","tarsier","termite","tern","thrush","tick","tiger","tiglon","toad","tortoise","toucan","trout","tuna","turkey","turtle","tyrannosaurus","unicorn","urial","vicuna","viper","vole","vulture","wallaby","walrus","warbler","wasp","weasel","whale","whippet","whitefish","wildcat","wildebeest","wildfowl","wolf","wolverine","wombat","woodpecker","worm","wren","xerinae","yak","zebra"],xg=["amaranth","amber","amethyst","apricot","aqua","aquamarine","azure","beige","black","blue","blush","bronze","brown","chocolate","coffee","copper","coral","crimson","cyan","emerald","fuchsia","gold","gray","green","harlequin","indigo","ivory","jade","lavender","lime","magenta","maroon","moccasin","olive","orange","peach","pink","plum","purple","red","rose","salmon","sapphire","scarlet","silver","tan","teal","tomato","turquoise","violet","white","yellow"];function Oa(e,t,r){return parseInt(e.substr(t,r),16)}function Ag(e){return e|=0,e<0?"00":e<16?"0"+e.toString(16):e<256?e.toString(16):"ff"}function Cu(e,t,r){return r=r<0?r+6:r>6?r-6:r,Ag(255*(r<1?e+(t-e)*r:r<3?t:r<4?e+(t-e)*(4-r):e))}function QS(e){if(/^#[0-9a-f]{3,8}$/i.test(e)){let t;const r=e.length;if(r<6){const a=e[1],l=e[2],s=e[3],u=e[4]||"";t="#"+a+a+l+l+s+s+u+u}return(r==7||r>8)&&(t=e),t}}function jS(e,t,r){let a;if(t==0){const l=Ag(r*255);a=l+l+l}else{const l=r<=.5?r*(t+1):r+t-r*t,s=r*2-l;a=Cu(s,l,e*6+2)+Cu(s,l,e*6)+Cu(s,l,e*6-2)}return"#"+a}function xa(e,t,r){const a=[.55,.5,.5,.46,.6,.55,.55],l=a[e*6+.5|0];return r=r<.5?r*l*2:l+(r-.5)*(1-l)*2,jS(e,t,r)}const ZS=typeof window!="undefined"?window:typeof self!="undefined"?self:typeof global!="undefined"?global:{},kh={V:"jdenticon_config",n:"config"};var JS={};function XS(e,t){const r=typeof e=="object"&&e||JS[kh.n]||ZS[kh.V]||{},a=r.lightness||{},l=r.saturation||{},s="color"in l?l.color:l,u=l.grayscale,d=r.backColor,f=r.padding;function g(C,M){let _=a[C];return _&&_.length>1||(_=M),function(x){return x=_[0]+x*(_[1]-_[0]),x<0?0:x>1?1:x}}function v(C){const M=r.hues;let _;return M&&M.length>0&&(_=M[0|.999*C*M.length]),typeof _=="number"?(_/360%1+1)%1:C}return{W:v,o:typeof s=="number"?s:.5,D:typeof u=="number"?u:0,p:g("color",[.4,.8]),F:g("grayscale",[.3,.9]),G:QS(d),X:typeof e=="number"?e:typeof f=="number"?f:t}}class ro{constructor(t,r){this.x=t,this.y=r}}class Eg{constructor(t,r,a,l){this.q=t,this.t=r,this.H=a,this.Y=l}I(t,r,a,l){const s=this.q+this.H,u=this.t+this.H,d=this.Y;return d===1?new ro(s-r-(l||0),this.t+t):d===2?new ro(s-t-(a||0),u-r-(l||0)):d===3?new ro(this.q+r,u-t-(a||0)):new ro(this.q+t,this.t+r)}}const ek=new Eg(0,0,0,0);class tk{constructor(t){this.J=t,this.u=ek}g(t,r){const a=r?-2:2,l=[];for(let s=r?t.length-2:0;s=0;s+=a)l.push(this.u.I(t[s],t[s+1]));this.J.g(l)}h(t,r,a,l){const s=this.u.I(t,r,a,a);this.J.h(s,a,l)}i(t,r,a,l,s){this.g([t,r,t+a,r,t+a,r+l,t,r+l],s)}j(t,r,a,l,s,u){const d=[t+a,r,t+a,r+l,t,r+l,t,r];d.splice((s||0)%4*2,2),this.g(d,u)}K(t,r,a,l,s){this.g([t+a/2,r,t+a,r+l/2,t+a/2,r+l,t,r+l/2],s)}}function nk(e,t,r,a){e=e%14;let l,s,u,d,f,g;e?e==1?(u=0|r*.5,d=0|r*.8,t.j(r-u,0,u,d,2)):e==2?(u=0|r/3,t.i(u,u,r-u,r-u)):e==3?(f=r*.1,g=r<6?1:r<8?2:0|r*.25,f=f>1?0|f:f>.5?1:f,t.i(g,g,r-f-g,r-f-g)):e==4?(s=0|r*.15,u=0|r*.5,t.h(r-u-s,r-u-s,u)):e==5?(f=r*.1,g=f*4,g>3&&(g=0|g),t.i(0,0,r,r),t.g([g,g,r-f,g,g+(r-g-f)/2,r-f],!0)):e==6?t.g([0,0,r,0,r,r*.7,r*.4,r*.4,r*.7,r,0,r]):e==7?t.j(r/2,r/2,r/2,r/2,3):e==8?(t.i(0,0,r,r/2),t.i(0,r/2,r/2,r/2),t.j(r/2,r/2,r/2,r/2,1)):e==9?(f=r*.14,g=r<4?1:r<6?2:0|r*.35,f=r<8?f:0|f,t.i(0,0,r,r),t.i(g,g,r-g-f,r-g-f,!0)):e==10?(f=r*.12,g=f*3,t.i(0,0,r,r),t.h(g,g,r-f-g,!0)):e==11?t.j(r/2,r/2,r/2,r/2,3):e==12?(s=r*.25,t.i(0,0,r,r),t.K(s,s,r-s,r-s,!0)):!a&&(s=r*.4,u=r*1.2,t.h(s,s,u)):(l=r*.42,t.g([0,0,r,0,r,r-l*2,r-l,r,0,r]))}function Ch(e,t,r){e=e%4;let a;e?e==1?t.j(0,r/2,r,r/2,0):e==2?t.K(0,0,r,r):(a=r/6,t.h(a,a,r-2*a)):t.j(0,0,r,r,0)}function rk(e,t){return e=t.W(e),[xa(e,t.D,t.F(0)),xa(e,t.o,t.p(.5)),xa(e,t.D,t.F(1)),xa(e,t.o,t.p(1)),xa(e,t.o,t.p(0))]}function ik(e,t,r){const a=XS(r,.08);a.G&&e.m(a.G);let l=e.k;const s=.5+l*a.X|0;l-=s*2;const u=new tk(e),d=0|l/4,f=0|s+l/2-d*2,g=0|s+l/2-d*2;function v(L,F,Y,D,A){const N=Oa(t,Y,1);let J=D?Oa(t,D,1):0;e.L(M[_[L]]);for(let V=0;V=0){for(let F=0;F=0)return!0}}for(let L=0;L<3;L++)x=Oa(t,8+L,1)%M.length,(I([0,4])||I([2,3]))&&(x=1),_.push(x);v(0,Ch,2,3,[[1,0],[2,0],[2,3],[1,3],[0,1],[3,1],[3,2],[0,2]]),v(1,Ch,4,5,[[0,0],[3,0],[3,3],[0,3]]),v(2,nk,1,null,[[1,1],[2,1],[2,2],[1,2]]),e.finish()}function ak(e){var a=0,l=0,s=encodeURI(e)+"%80",u=[],d,f=[],g=1732584193,v=4023233417,C=~g,M=~v,_=3285377520,x=[g,v,C,M,_],I=0,L="";function F(Y,D){return Y<>>32-D}for(;a>2]=u[l>>2]|(s[a]=="%"?parseInt(s.substring(a+1,a+=3),16):s.charCodeAt(a++))<<(3-(l&3))*8;for(d=((l+7>>6)+1)*16,u[d-1]=l*8-8;I>3]>>>(7-(a&7))*4&15).toString(16);return L}function lk(e){return/^[0-9a-f]{11,}$/i.test(e)&&e}function ok(e){return ak(e==null?"":""+e)}function Yi(e){return(e*10+.5|0)/10}class sk{constructor(){this.v=""}g(t){let r="";for(let a=0;a'}m(t,r){r&&(this.C+='')}O(t,r){this.C+=''}toString(){return this.C+""}}function fk(e,t,r){const a=new dk(t);return ik(new uk(a),lk(e)||ok(e),r),a.toString()}typeof document!="undefined"&&document.querySelectorAll.bind(document);const hk=sn({name:"UserProfile",props:["pubkey","profiles","description"],data:function(){return{}},methods:{merchantProfile(e){var t;return(t=this.profiles)==null?void 0:t.find(r=>r.pubkey===e)},pubkeyAlias(e){return Dg({dictionaries:[qg,Pg,xg],length:2,separator:" ",style:"capital",seed:e})},pubkeyAvatar(e){return fk(e,100)}},created:async function(){}}),gk=["src"],mk=["innerHTML"],vk={class:"text-caption text-grey ellipsis-2-lines"};function pk(e,t,r,a,l,s){return O(),re(Nt,null,[y(Ie,{avatar:""},{default:b(()=>[y(Xr,null,{default:b(()=>{var u;return[(u=e.merchantProfile(e.pubkey))!=null&&u.picture?(O(),re("img",{key:0,src:e.merchantProfile(e.pubkey).picture},null,8,gk)):(O(),re("div",{key:1,innerHTML:e.pubkeyAvatar(e.pubkey)},null,8,mk))]}),_:1})]),_:1}),y(Ie,{class:"q-mt-sm"},{default:b(()=>[y(Ke,null,{default:b(()=>{var u,d;return[S("strong",null,ge(((u=e.merchantProfile(e.pubkey))==null?void 0:u.name)||((d=e.merchantProfile(e.pubkey))==null?void 0:d.display_name)||e.pubkeyAlias(e.pubkey)),1)]}),_:1}),y(Ke,{class:"gt-sm"},{default:b(()=>[S("div",vk,[S("p",null,ge(e.description||e.pubkey),1)])]),_:1}),y(Qr,null,{default:b(()=>[Te(ge(e.pubkey),1)]),_:1})]),_:1})],64)}var Za=Tn(hk,[["render",pk]]);const yk=sn({name:"EssentialLink",props:["market","profiles","relays-data","read-notes"],components:{UserProfile:Za},data:function(){return{tab:"marketplace",merchantPubkey:null,relayUrl:null,marketData:{pubkey:null,relays:[],opts:{identifier:null,name:null,about:null,merchants:[],ui:{picture:null,banner:null,theme:null,darkMode:!1}}},themeOptions:["classic","bitcoin","flamingo","cyber","freedom","mint","autumn","monochrome","salvador"]}},methods:{addMerchant:async function(){if(!isValidKey(this.merchantPubkey,"npub")){$q.notify({message:"Invalid Public Key!",type:"warning"});return}const e=isValidKeyHex(this.merchantPubkey)?this.merchantPubkey:NostrTools.nip19.decode(this.merchantPubkey).data;this.marketData.opts.merchants.push(e),this.updateMarketData(),this.merchantPubkey=null},removeMerchant:async function(e){console.log("### removeMerchant",e),this.marketData.opts.merchants=this.marketData.opts.merchants.filter(t=>t!==e),this.updateMarketData()},addRelay:async function(){const e=(this.relayUrl||"").trim();if(!e.startsWith("wss://")&&!e.startsWith("ws://")){this.relayUrl=null,$q.notify({timeout:5e3,type:"warning",message:"Invalid relay URL.",caption:"Should start with 'wss://'' or 'ws://'"});return}try{new URL(e),this.marketData.relays.push(e),this.updateMarketData()}catch(t){$q.notify({timeout:5e3,type:"warning",message:"Invalid relay URL.",caption:`Error: ${t}`})}this.relayUrl=null},removeRelay:async function(e){this.marketData.relays=this.marketData.relays.filter(t=>t!==e),this.updateMarketData()},updateMarketData:function(){this.$emit("market-update",this.cloneMarketData())},publishNaddr(){this.$emit("publish-naddr",this.cloneMarketData())},deleteMarket(){this.$emit("delete-market",this.cloneMarketData())},applyLookAndFeel(){this.$emit("apply-ui",this.cloneMarketData())},markNoteAsRead(e){this.$emit("note-read",e)},cloneMarketData(){return JSON.parse(JSON.stringify(this.marketData))},relayData(e){return(this.relaysData||[]).find(t=>t.relayUrl===e)||{connected:!1,error:null}}},created:async function(){var e;this.marketData={...this.marketData,...JSON.parse(JSON.stringify(this.market||{}))},(e=this.readNotes)!=null&&e.merchants||(this.tab="merchants")}}),_k={class:"q-pt-md"},bk={class:"q-gutter-y-md"},wk={class:"q-pa-md"},Sk={class:"q-gutter-y-md"},kk=S("strong",null,"Note",-1),Ck=S("div",{class:"text-caption"},[S("ul",null,[S("li",null,[S("span",{class:"text-subtitle1"}," Here one can customize the look and feel of the Market. ")]),S("li",null,[S("span",{class:"text-subtitle1"},[Te(" When the Market Profile is shared (via "),S("code",null,"naddr"),Te(" ) these customisations will be available to the customers. ")])])])],-1),Tk=S("div",{class:"q-mb-md"},[S("strong",null,"Information")],-1),Mk=S("div",{class:"q-mb-md q-mt-lg"},[S("strong",null,"UI Configurations")],-1),Dk=S("div",{class:"lt-md q-mt-lg"},null,-1),qk=S("strong",null,"Note",-1),Pk=S("div",{class:"text-caption"},[S("ul",null,[S("li",null,[S("span",{class:"text-subtitle1"}," Here all the mercants of the marketplace are listed. ")]),S("li",null,[S("span",{class:"text-subtitle1"}," You can easily add a new merchant by entering its public key in the input below. ")]),S("li",null,[S("span",{class:"text-subtitle1"}," When a merchant is added all its products and stalls will be available in the Market page. ")])])],-1),xk={key:0,class:"text-caption text-grey ellipsis-2-lines"},Ak={class:"float-right"};function Ek(e,t,r,a,l,s){const u=ti("user-profile");return O(),oe(Jt,null,{default:b(()=>[y(Ne,null,{default:b(()=>[S("div",_k,[S("div",bk,[y(NS,{modelValue:e.tab,"onUpdate:modelValue":t[3]||(t[3]=d=>e.tab=d),"active-color":"primary",align:"justify"},{default:b(()=>[y(Su,{name:"marketplace",label:"Look And Feel",onUpdate:t[0]||(t[0]=d=>e.tab=d.name)}),y(Su,{name:"merchants",label:"Merchants",onUpdate:t[1]||(t[1]=d=>e.tab=d.name)}),y(Su,{name:"relays",label:"Relays",onUpdate:t[2]||(t[2]=d=>e.tab=d.name)})]),_:1},8,["modelValue"])])])]),_:1}),y(ut),y(Ne,null,{default:b(()=>[S("div",wk,[S("div",Sk,[y(KS,{modelValue:e.tab,"onUpdate:modelValue":t[14]||(t[14]=d=>e.tab=d)},{default:b(()=>[y(ku,{name:"marketplace"},{default:b(()=>{var d;return[(d=e.readNotes)!=null&&d.marketUi?$e("",!0):(O(),oe(Mr,{key:0,class:"q-mb-lg gt-sm",bordered:""},{default:b(()=>[y(Vt,null,{default:b(()=>[y(Ie,{avatar:""},{default:b(()=>[y(Xr,null,{default:b(()=>[y(Yt,{color:"primary",name:"info",size:"xl"})]),_:1})]),_:1}),y(Ie,{class:"q-mt-sm q-ml-lg"},{default:b(()=>[y(Ke,null,{default:b(()=>[kk]),_:1}),y(Ke,null,{default:b(()=>[Ck]),_:1})]),_:1}),y(Ie,{side:""},{default:b(()=>[y(ye,{onClick:t[4]||(t[4]=f=>e.markNoteAsRead("marketUi")),size:"lg",outline:"",color:"primary",label:"Got it!",icon:"check_small"})]),_:1})]),_:1})]),_:1})),Tk,y(It,{onChange:e.updateMarketData,outlined:"",modelValue:e.marketData.opts.name,"onUpdate:modelValue":t[5]||(t[5]=f=>e.marketData.opts.name=f),type:"text",label:"Market Name",hint:"Short name for the market",class:"q-mb-md"},null,8,["onChange","modelValue"]),y(It,{onChange:e.updateMarketData,outlined:"",modelValue:e.marketData.opts.about,"onUpdate:modelValue":t[6]||(t[6]=f=>e.marketData.opts.about=f),type:"textarea",rows:"3",label:"Marketplace Description",hint:"It will be displayed on top of the banner image. Can be a longer text.",class:"q-mb-lg"},null,8,["onChange","modelValue"]),Mk,y(It,{onChange:e.updateMarketData,outlined:"",modelValue:e.marketData.opts.ui.picture,"onUpdate:modelValue":t[7]||(t[7]=f=>e.marketData.opts.ui.picture=f),type:"text",label:"Logo",hint:"It will be displayed next to the search input. Can be png, jpg, ico, gif, svg.",class:"q-mb-md"},null,8,["onChange","modelValue"]),y(It,{onChange:e.updateMarketData,outlined:"",modelValue:e.marketData.opts.ui.banner,"onUpdate:modelValue":t[8]||(t[8]=f=>e.marketData.opts.ui.banner=f),type:"text",label:"Banner",hint:"It represents the visual identity of the market. Can be png, jpg, ico, gif, svg.",class:"q-mb-md"},null,8,["onChange","modelValue"]),y($a,{onInput:e.updateMarketData,"onUpdate:modelValue":[e.updateMarketData,t[9]||(t[9]=f=>e.marketData.opts.ui.theme=f)],filled:"",modelValue:e.marketData.opts.ui.theme,hint:"The colors of the market will vary based on the theme. It applies to all components (buttons, labels, inputs, etc)",options:e.themeOptions,label:"Marketplace Theme"},null,8,["onInput","onUpdate:modelValue","modelValue","options"]),Dk,y(lo,{onInput:e.updateMarketData,onClick:e.updateMarketData,modelValue:e.marketData.opts.ui.darkMode,"onUpdate:modelValue":t[10]||(t[10]=f=>e.marketData.opts.ui.darkMode=f),label:"Dark Mode",size:"sm",class:"q-mt-sm"},null,8,["onInput","onClick","modelValue"])]}),_:1}),y(ku,{name:"merchants"},{default:b(()=>{var d;return[(d=e.readNotes)!=null&&d.merchants?$e("",!0):(O(),oe(Mr,{key:0,class:"q-mb-lg gt-sm",bordered:""},{default:b(()=>[y(Vt,null,{default:b(()=>[y(Ie,{avatar:""},{default:b(()=>[y(Xr,null,{default:b(()=>[y(Yt,{color:"primary",name:"info",size:"xl"})]),_:1})]),_:1}),y(Ie,{class:"q-mt-sm q-ml-lg"},{default:b(()=>[y(Ke,null,{default:b(()=>[qk]),_:1}),y(Ke,null,{default:b(()=>[Pk]),_:1})]),_:1}),y(Ie,{side:""},{default:b(()=>[y(ye,{onClick:t[11]||(t[11]=f=>e.markNoteAsRead("merchants")),size:"lg",outline:"",color:"primary",label:"Got it!",icon:"check_small"})]),_:1})]),_:1})]),_:1})),S("div",null,[y(It,{outlined:"",modelValue:e.merchantPubkey,"onUpdate:modelValue":t[12]||(t[12]=f=>e.merchantPubkey=f),onKeydown:Au(e.addMerchant,["enter"]),type:"text",label:"Pubkey/Npub",hint:"Add merchants"},{default:b(()=>[y(ye,{onClick:e.addMerchant,dense:"",flat:"",icon:"add"},null,8,["onClick"])]),_:1},8,["modelValue","onKeydown"]),y(Mr,{class:"q-mt-md"},{default:b(()=>[(O(!0),re(Nt,null,Wt(e.marketData.opts.merchants,f=>(O(),oe(Vt,{key:f},{default:b(()=>[y(u,{pubkey:f,profiles:e.profiles},null,8,["pubkey","profiles"]),y(Ie,{side:""},{default:b(()=>[y(ye,{size:"12px",flat:"",dense:"",round:"",icon:"delete",onClick:g=>e.removeMerchant(f)},null,8,["onClick"])]),_:2},1024)]),_:2},1024))),128))]),_:1})])]}),_:1}),y(ku,{name:"relays"},{default:b(()=>[S("div",null,[S("div",null,[y(It,{outlined:"",modelValue:e.relayUrl,"onUpdate:modelValue":t[13]||(t[13]=d=>e.relayUrl=d),onKeydown:Au(e.addRelay,["enter"]),type:"text",label:"wss://",hint:"Add realays"},{default:b(()=>[y(ye,{onClick:e.addRelay,dense:"",flat:"",icon:"add"},null,8,["onClick"])]),_:1},8,["modelValue","onKeydown"]),y(Mr,{class:"q-mt-md"},{default:b(()=>[(O(!0),re(Nt,null,Wt(e.marketData.relays,d=>(O(),oe(Vt,{key:d},{default:b(()=>[y(Ie,{avatar:""},{default:b(()=>[y(Xr,null,{default:b(()=>[y(Yt,{name:"router",color:e.relayData(d).connected?"green":"pink"},null,8,["color"])]),_:2},1024)]),_:2},1024),y(Ie,{class:"q-mt-sm"},{default:b(()=>[y(Ke,null,{default:b(()=>[S("strong",null,ge(d),1),e.relayData(d).error?(O(),re("div",xk,[S("p",null,"Error: "+ge(e.relayData(d).error),1)])):$e("",!0)]),_:2},1024)]),_:2},1024),y(Ie,{side:""},{default:b(()=>[y(ye,{size:"12px",flat:"",dense:"",round:"",icon:"delete",onClick:f=>e.removeRelay(d)},null,8,["onClick"])]),_:2},1024)]),_:2},1024))),128))]),_:1})])])]),_:1})]),_:1},8,["modelValue"])])])]),_:1}),y(ut),y(Ne,{class:"q-pb-xl"},{default:b(()=>[S("div",Ak,[y(ye,{onClick:e.deleteMarket,flat:"",label:"Delete Market",icon:"delete",class:"q-ml-lg",color:"negative"},null,8,["onClick"]),y(ye,{onClick:e.applyLookAndFeel,flat:"",label:"Apply Look and Feel",icon:"palette",class:"q-ml-lg",color:"secondary"},null,8,["onClick"]),y(ye,{onClick:e.publishNaddr,flat:"",label:"Share Market Profile",icon:"share",class:"q-ml-lg",color:"primary"},null,8,["onClick"])])]),_:1}),y(Ne,{class:"lt-md"})]),_:1})}var Ig=Tn(yk,[["render",Ek]]);const Ik=sn({name:"UserConfig",props:["account"],data:function(){return{accountData:null}},watch:{account(){this.accountData=this.account&&JSON.parse(JSON.stringify(this.account))}},methods:{logout:async function(){this.$q.dialog(confirm("Please make sure you save your private key! You will not be able to recover it later!")).onOk(async()=>{this.$emit("logout")})},copyText(e){this.$emit("copy-text",e)},clearAllData(){this.$emit("clear-all-data")}},created:async function(){this.accountData=this.account&&JSON.parse(JSON.stringify(this.account))}}),$k={class:"row"},Ok={class:"col-10"},Rk={class:"col-2 auto-width"},Lk={class:"row"},Nk={class:"col-10"},Bk={class:"col-2 auto-width"},Fk=S("div",null,[S("strong",null,"No Account")],-1),Uk={class:"float-right"};function zk(e,t,r,a,l,s){return O(),oe(Jt,null,{default:b(()=>[e.accountData?(O(),oe(Ne,{key:0},{default:b(()=>[S("div",$k,[S("div",Ok,[y(It,{modelValue:e.accountData.npub,"onUpdate:modelValue":t[1]||(t[1]=u=>e.accountData.npub=u),readonly:"",disbled:"",outlined:"",hint:e.accountData.pubkey,type:"text",label:"Public Key",class:"q-mb-md"},{append:b(()=>[y(ye,{onClick:t[0]||(t[0]=u=>e.copyText(e.accountData.npub)),icon:"content_copy",label:"Npub",flat:"",color:"gray float-right q-mt-sm"})]),_:1},8,["modelValue","hint"])]),S("div",Rk,[y(ye,{onClick:t[2]||(t[2]=u=>e.copyText(e.accountData.pubkey)),icon:"content_copy",label:"Hex",flat:"",color:"gray float-right q-mt-sm"})])]),S("div",Lk,[S("div",Nk,[y(It,{modelValue:e.accountData.nsec,"onUpdate:modelValue":t[4]||(t[4]=u=>e.accountData.nsec=u),readonly:"",disbled:"",outlined:"",type:"password",label:"Private Key",class:"q-mb-md"},{append:b(()=>[y(ye,{onClick:t[3]||(t[3]=u=>e.copyText(e.accountData.nsec)),icon:"content_copy",label:"Nsec",flat:"",color:"gray float-right q-mt-sm"})]),_:1},8,["modelValue"])]),S("div",Bk,[y(ye,{onClick:t[5]||(t[5]=u=>e.copyText(e.accountData.privkey)),icon:"content_copy",label:"Hex",flat:"",color:"gray float-right q-mt-sm"})])])]),_:1})):(O(),oe(Ne,{key:1},{default:b(()=>[Fk]),_:1})),y(ut),y(Ne,null,{default:b(()=>[S("div",Uk,[y(ye,{onClick:e.clearAllData,flat:"",label:"Clear All Data",icon:"delete",class:"q-ml-lg",color:"negative"},null,8,["onClick"]),e.accountData?(O(),oe(ye,{key:0,onClick:e.logout,flat:"",label:"Logout",icon:"logout",class:"q-ml-lg",color:"primary"},null,8,["onClick"])):(O(),oe(ye,{key:1,onClick:t[6]||(t[6]=u=>e.$emit("login")),flat:"",label:"Login",icon:"login",class:"q-ml-lg",color:"primary"}))])]),_:1}),y(Ne)]),_:1})}var Vk=Tn(Ik,[["render",zk]]),Yk=Je({name:"QChatMessage",props:{sent:Boolean,label:String,bgColor:String,textColor:String,name:String,avatar:String,text:Array,stamp:String,size:String,labelHtml:Boolean,nameHtml:Boolean,textHtml:Boolean,stampHtml:Boolean},setup(e,{slots:t}){const r=$(()=>e.sent===!0?"sent":"received"),a=$(()=>`q-message-text-content q-message-text-content--${r.value}`+(e.textColor!==void 0?` text-${e.textColor}`:"")),l=$(()=>`q-message-text q-message-text--${r.value}`+(e.bgColor!==void 0?` text-${e.bgColor}`:"")),s=$(()=>"q-message-container row items-end no-wrap"+(e.sent===!0?" reverse":"")),u=$(()=>e.size!==void 0?`col-${e.size}`:""),d=$(()=>({msg:e.textHtml===!0?"innerHTML":"textContent",stamp:e.stampHtml===!0?"innerHTML":"textContent",name:e.nameHtml===!0?"innerHTML":"textContent",label:e.labelHtml===!0?"innerHTML":"textContent"}));function f(v){return t.stamp!==void 0?[v,E("div",{class:"q-message-stamp"},t.stamp())]:e.stamp?[v,E("div",{class:"q-message-stamp",[d.value.stamp]:e.stamp})]:[v]}function g(v,C){const M=C===!0?v.length>1?_=>_:_=>E("div",[_]):_=>E("div",{[d.value.msg]:_});return v.map((_,x)=>E("div",{key:x,class:l.value},[E("div",{class:a.value},f(M(_)))]))}return()=>{const v=[];t.avatar!==void 0?v.push(t.avatar()):e.avatar!==void 0&&v.push(E("img",{class:`q-message-avatar q-message-avatar--${r.value}`,src:e.avatar,"aria-hidden":"true"}));const C=[];t.name!==void 0?C.push(E("div",{class:`q-message-name q-message-name--${r.value}`},t.name())):e.name!==void 0&&C.push(E("div",{class:`q-message-name q-message-name--${r.value}`,[d.value.name]:e.name})),t.default!==void 0?C.push(g(nc(t.default()),!0)):e.text!==void 0&&C.push(g(e.text)),v.push(E("div",{class:u.value},C));const M=[];return t.label!==void 0?M.push(E("div",{class:"q-message-label"},t.label())):e.label!==void 0&&M.push(E("div",{class:"q-message-label",[d.value.label]:e.label})),M.push(E("div",{class:s.value},v)),E("div",{class:`q-message q-message-${r.value}`},M)}}});function Tu(e,t,r){const a=na(e);let l,s=a.left-t.event.x,u=a.top-t.event.y,d=Math.abs(s),f=Math.abs(u);const g=t.direction;g.horizontal===!0&&g.vertical!==!0?l=s<0?"left":"right":g.horizontal!==!0&&g.vertical===!0?l=u<0?"up":"down":g.up===!0&&u<0?(l="up",d>f&&(g.left===!0&&s<0?l="left":g.right===!0&&s>0&&(l="right"))):g.down===!0&&u>0?(l="down",d>f&&(g.left===!0&&s<0?l="left":g.right===!0&&s>0&&(l="right"))):g.left===!0&&s<0?(l="left",d0&&(l="down"))):g.right===!0&&s>0&&(l="right",d0&&(l="down")));let v=!1;if(l===void 0&&r===!1){if(t.event.isFirst===!0||t.event.lastDir===void 0)return{};l=t.event.lastDir,v=!0,l==="left"||l==="right"?(a.left-=s,d=0,s=0):(a.top-=u,f=0,u=0)}return{synthetic:v,payload:{evt:e,touch:t.event.mouse!==!0,mouse:t.event.mouse===!0,position:a,direction:l,isFirst:t.event.isFirst,isFinal:r===!0,duration:Date.now()-t.event.time,distance:{x:d,y:f},offset:{x:s,y:u},delta:{x:a.left-t.event.lastX,y:a.top-t.event.lastY}}}}let Wk=0;var Th=rc({name:"touch-pan",beforeMount(e,{value:t,modifiers:r}){if(r.mouse!==!0&&Kn.has.touch!==!0)return;function a(s,u){r.mouse===!0&&u===!0?Rt(s):(r.stop===!0&&ir(s),r.prevent===!0&&yi(s))}const l={uid:"qvtp_"+Wk++,handler:t,modifiers:r,direction:So(r),noop:Xu,mouseStart(s){ko(s,l)&&Qh(s)&&(Ln(l,"temp",[[document,"mousemove","move","notPassiveCapture"],[document,"mouseup","end","passiveCapture"]]),l.start(s,!0))},touchStart(s){if(ko(s,l)){const u=s.target;Ln(l,"temp",[[u,"touchmove","move","notPassiveCapture"],[u,"touchcancel","end","passiveCapture"],[u,"touchend","end","passiveCapture"]]),l.start(s)}},start(s,u){if(Kn.is.firefox===!0&&ji(e,!0),l.lastEvt=s,u===!0||r.stop===!0){if(l.direction.all!==!0&&(u!==!0||l.modifiers.mouseAllDir!==!0&&l.modifiers.mousealldir!==!0)){const g=s.type.indexOf("mouse")>-1?new MouseEvent(s.type,s):new TouchEvent(s.type,s);s.defaultPrevented===!0&&yi(g),s.cancelBubble===!0&&ir(g),Object.assign(g,{qKeyEvent:s.qKeyEvent,qClickOutside:s.qClickOutside,qAnchorHandled:s.qAnchorHandled,qClonedBy:s.qClonedBy===void 0?[l.uid]:s.qClonedBy.concat(l.uid)}),l.initialEvent={target:s.target,event:g}}ir(s)}const{left:d,top:f}=na(s);l.event={x:d,y:f,time:Date.now(),mouse:u===!0,detected:!1,isFirst:!0,isFinal:!1,lastX:d,lastY:f}},move(s){if(l.event===void 0)return;const u=na(s),d=u.left-l.event.x,f=u.top-l.event.y;if(d===0&&f===0)return;l.lastEvt=s;const g=l.event.mouse===!0,v=()=>{a(s,g);let _;r.preserveCursor!==!0&&r.preservecursor!==!0&&(_=document.documentElement.style.cursor||"",document.documentElement.style.cursor="grabbing"),g===!0&&document.body.classList.add("no-pointer-events--children"),document.body.classList.add("non-selectable"),Ua(),l.styleCleanup=x=>{if(l.styleCleanup=void 0,_!==void 0&&(document.documentElement.style.cursor=_),document.body.classList.remove("non-selectable"),g===!0){const I=()=>{document.body.classList.remove("no-pointer-events--children")};x!==void 0?setTimeout(()=>{I(),x()},50):I()}else x!==void 0&&x()}};if(l.event.detected===!0){l.event.isFirst!==!0&&a(s,l.event.mouse);const{payload:_,synthetic:x}=Tu(s,l,!1);_!==void 0&&(l.handler(_)===!1?l.end(s):(l.styleCleanup===void 0&&l.event.isFirst===!0&&v(),l.event.lastX=_.position.left,l.event.lastY=_.position.top,l.event.lastDir=x===!0?void 0:_.direction,l.event.isFirst=!1));return}if(l.direction.all===!0||g===!0&&(l.modifiers.mouseAllDir===!0||l.modifiers.mousealldir===!0)){v(),l.event.detected=!0,l.move(s);return}const C=Math.abs(d),M=Math.abs(f);C!==M&&(l.direction.horizontal===!0&&C>M||l.direction.vertical===!0&&C0||l.direction.left===!0&&C>M&&d<0||l.direction.right===!0&&C>M&&d>0?(l.event.detected=!0,l.move(s)):l.end(s,!0))},end(s,u){if(l.event!==void 0){if(Pr(l,"temp"),Kn.is.firefox===!0&&ji(e,!1),u===!0)l.styleCleanup!==void 0&&l.styleCleanup(),l.event.detected!==!0&&l.initialEvent!==void 0&&l.initialEvent.target.dispatchEvent(l.initialEvent.event);else if(l.event.detected===!0){l.event.isFirst===!0&&l.handler(Tu(s===void 0?l.lastEvt:s,l).payload);const{payload:d}=Tu(s===void 0?l.lastEvt:s,l,!0),f=()=>{l.handler(d)};l.styleCleanup!==void 0?l.styleCleanup(f):f()}l.event=void 0,l.initialEvent=void 0,l.lastEvt=void 0}}};if(e.__qtouchpan=l,r.mouse===!0){const s=r.mouseCapture===!0||r.mousecapture===!0?"Capture":"";Ln(l,"main",[[e,"mousedown","mouseStart",`passive${s}`]])}Kn.has.touch===!0&&Ln(l,"main",[[e,"touchstart","touchStart",`passive${r.capture===!0?"Capture":""}`],[e,"touchmove","noop","notPassiveCapture"]])},updated(e,t){const r=e.__qtouchpan;r!==void 0&&(t.oldValue!==t.value&&(typeof value!="function"&&r.end(),r.handler=t.value),r.direction=So(t.modifiers))},beforeUnmount(e){const t=e.__qtouchpan;t!==void 0&&(t.event!==void 0&&t.end(),Pr(t,"main"),Pr(t,"temp"),Kn.is.firefox===!0&&ji(e,!1),t.styleCleanup!==void 0&&t.styleCleanup(),delete e.__qtouchpan)}});const Mh=["vertical","horizontal"],Mu={vertical:{offset:"offsetY",scroll:"scrollTop",dir:"down",dist:"y"},horizontal:{offset:"offsetX",scroll:"scrollLeft",dir:"right",dist:"x"}},Dh={prevent:!0,mouse:!0,mouseAllDir:!0},qh=e=>e>=250?50:Math.ceil(e/5);var Hk=Je({name:"QScrollArea",props:{...or,thumbStyle:Object,verticalThumbStyle:Object,horizontalThumbStyle:Object,barStyle:[Array,String,Object],verticalBarStyle:[Array,String,Object],horizontalBarStyle:[Array,String,Object],contentStyle:[Array,String,Object],contentActiveStyle:[Array,String,Object],delay:{type:[String,Number],default:1e3},visible:{type:Boolean,default:null},tabindex:[String,Number],onScroll:Function},setup(e,{slots:t,emit:r}){const a=se(!1),l=se(!1),s=se(!1),u={vertical:se(0),horizontal:se(0)},d={vertical:{ref:se(null),position:se(0),size:se(0)},horizontal:{ref:se(null),position:se(0),size:se(0)}},{proxy:f}=Dt(),g=sr(e,f.$q);let v=null,C;const M=se(null),_=$(()=>"q-scrollarea"+(g.value===!0?" q-scrollarea--dark":""));d.vertical.percentage=$(()=>{const j=d.vertical.size.value-u.vertical.value;if(j<=0)return 0;const G=no(d.vertical.position.value/j,0,1);return Math.round(G*1e4)/1e4}),d.vertical.thumbHidden=$(()=>(e.visible===null?s.value:e.visible)!==!0&&a.value===!1&&l.value===!1||d.vertical.size.value<=u.vertical.value+1),d.vertical.thumbStart=$(()=>d.vertical.percentage.value*(u.vertical.value-d.vertical.thumbSize.value)),d.vertical.thumbSize=$(()=>Math.round(no(u.vertical.value*u.vertical.value/d.vertical.size.value,qh(u.vertical.value),u.vertical.value))),d.vertical.style=$(()=>({...e.thumbStyle,...e.verticalThumbStyle,top:`${d.vertical.thumbStart.value}px`,height:`${d.vertical.thumbSize.value}px`})),d.vertical.thumbClass=$(()=>"q-scrollarea__thumb q-scrollarea__thumb--v absolute-right"+(d.vertical.thumbHidden.value===!0?" q-scrollarea__thumb--invisible":"")),d.vertical.barClass=$(()=>"q-scrollarea__bar q-scrollarea__bar--v absolute-right"+(d.vertical.thumbHidden.value===!0?" q-scrollarea__bar--invisible":"")),d.horizontal.percentage=$(()=>{const j=d.horizontal.size.value-u.horizontal.value;if(j<=0)return 0;const G=no(Math.abs(d.horizontal.position.value)/j,0,1);return Math.round(G*1e4)/1e4}),d.horizontal.thumbHidden=$(()=>(e.visible===null?s.value:e.visible)!==!0&&a.value===!1&&l.value===!1||d.horizontal.size.value<=u.horizontal.value+1),d.horizontal.thumbStart=$(()=>d.horizontal.percentage.value*(u.horizontal.value-d.horizontal.thumbSize.value)),d.horizontal.thumbSize=$(()=>Math.round(no(u.horizontal.value*u.horizontal.value/d.horizontal.size.value,qh(u.horizontal.value),u.horizontal.value))),d.horizontal.style=$(()=>({...e.thumbStyle,...e.horizontalThumbStyle,[f.$q.lang.rtl===!0?"right":"left"]:`${d.horizontal.thumbStart.value}px`,width:`${d.horizontal.thumbSize.value}px`})),d.horizontal.thumbClass=$(()=>"q-scrollarea__thumb q-scrollarea__thumb--h absolute-bottom"+(d.horizontal.thumbHidden.value===!0?" q-scrollarea__thumb--invisible":"")),d.horizontal.barClass=$(()=>"q-scrollarea__bar q-scrollarea__bar--h absolute-bottom"+(d.horizontal.thumbHidden.value===!0?" q-scrollarea__bar--invisible":""));const x=$(()=>d.vertical.thumbHidden.value===!0&&d.horizontal.thumbHidden.value===!0?e.contentStyle:e.contentActiveStyle),I=[[Th,j=>{V(j,"vertical")},void 0,{vertical:!0,...Dh}]],L=[[Th,j=>{V(j,"horizontal")},void 0,{horizontal:!0,...Dh}]];function F(){const j={};return Mh.forEach(G=>{const me=d[G];j[G+"Position"]=me.position.value,j[G+"Percentage"]=me.percentage.value,j[G+"Size"]=me.size.value,j[G+"ContainerSize"]=u[G].value}),j}const Y=ec(()=>{const j=F();j.ref=f,r("scroll",j)},0);function D(j,G,me){if(Mh.includes(j)===!1){console.error("[QScrollArea]: wrong first param of setScrollPosition (vertical/horizontal)");return}(j==="vertical"?La:hu)(M.value,G,me)}function A({height:j,width:G}){let me=!1;u.vertical.value!==j&&(u.vertical.value=j,me=!0),u.horizontal.value!==G&&(u.horizontal.value=G,me=!0),me===!0&&xe()}function N({position:j}){let G=!1;d.vertical.position.value!==j.top&&(d.vertical.position.value=j.top,G=!0),d.horizontal.position.value!==j.left&&(d.horizontal.position.value=j.left,G=!0),G===!0&&xe()}function J({height:j,width:G}){d.horizontal.size.value!==G&&(d.horizontal.size.value=G,xe()),d.vertical.size.value!==j&&(d.vertical.size.value=j,xe())}function V(j,G){const me=d[G];if(j.isFirst===!0){if(me.thumbHidden.value===!0)return;C=me.position.value,l.value=!0}else if(l.value!==!0)return;j.isFinal===!0&&(l.value=!1);const rt=Mu[G],X=u[G].value,Z=(me.size.value-X)/(X-me.thumbSize.value),he=j.distance[rt.dist],fe=C+(j.direction===rt.dir?1:-1)*he*Z;lt(fe,G)}function H(j,G){const me=d[G];if(me.thumbHidden.value!==!0){const rt=j[Mu[G].offset];if(rtme.thumbStart.value+me.thumbSize.value){const X=rt-me.thumbSize.value/2;lt(X/u[G].value*me.size.value,G)}me.ref.value!==null&&me.ref.value.dispatchEvent(new MouseEvent(j.type,j))}}function pe(j){H(j,"vertical")}function _e(j){H(j,"horizontal")}function xe(){a.value=!0,v!==null&&clearTimeout(v),v=setTimeout(()=>{v=null,a.value=!1},e.delay),e.onScroll!==void 0&&Y()}function lt(j,G){M.value[Mu[G].scroll]=j}function te(){s.value=!0}function Pe(){s.value=!1}let Be=null;return Ve(()=>f.$q.lang.rtl,j=>{M.value!==null&&hu(M.value,Math.abs(d.horizontal.position.value)*(j===!0?-1:1))}),oa(()=>{Be={top:d.vertical.position.value,left:d.horizontal.position.value}}),sa(()=>{if(Be===null)return;const j=M.value;j!==null&&(hu(j,Be.left),La(j,Be.top))}),Ht(Y.cancel),Object.assign(f,{getScrollTarget:()=>M.value,getScroll:F,getScrollPosition:()=>({top:d.vertical.position.value,left:d.horizontal.position.value}),getScrollPercentage:()=>({top:d.vertical.percentage.value,left:d.horizontal.percentage.value}),setScrollPosition:D,setScrollPercentage(j,G,me){D(j,G*(d[j].size.value-u[j].value)*(j==="horizontal"&&f.$q.lang.rtl===!0?-1:1),me)}}),()=>E("div",{class:_.value,onMouseenter:te,onMouseleave:Pe},[E("div",{ref:M,class:"q-scrollarea__container scroll relative-position fit hide-scrollbar",tabindex:e.tabindex!==void 0?e.tabindex:void 0},[E("div",{class:"q-scrollarea__content absolute",style:x.value},Si(t.default,[E(Eu,{debounce:0,onResize:J})])),E(cw,{axis:"both",onScroll:N})]),E(Eu,{debounce:0,onResize:A}),E("div",{class:d.vertical.barClass.value,style:[e.barStyle,e.verticalBarStyle],"aria-hidden":"true",onMousedown:pe}),E("div",{class:d.horizontal.barClass.value,style:[e.barStyle,e.horizontalBarStyle],"aria-hidden":"true",onMousedown:_e}),Gn(E("div",{ref:d.vertical.ref,class:d.vertical.thumbClass.value,style:d.vertical.style.value,"aria-hidden":"true"}),I),Gn(E("div",{ref:d.horizontal.ref,class:d.horizontal.thumbClass.value,style:d.horizontal.style.value,"aria-hidden":"true"}),L)])}}),Kk=Je({name:"QForm",props:{autofocus:Boolean,noErrorFocus:Boolean,noResetFocus:Boolean,greedy:Boolean,onSubmit:Function},emits:["reset","validationSuccess","validationError"],setup(e,{slots:t,emit:r}){const a=Dt(),l=se(null);let s=0;const u=[];function d(_){const x=typeof _=="boolean"?_:e.noErrorFocus!==!0,I=++s,L=(D,A)=>{r("validation"+(D===!0?"Success":"Error"),A)},F=D=>{const A=D.validate();return typeof A.then=="function"?A.then(N=>({valid:N,comp:D}),N=>({valid:!1,comp:D,err:N})):Promise.resolve({valid:A,comp:D})};return(e.greedy===!0?Promise.all(u.map(F)).then(D=>D.filter(A=>A.valid!==!0)):u.reduce((D,A)=>D.then(()=>F(A).then(N=>{if(N.valid===!1)return Promise.reject(N)})),Promise.resolve()).catch(D=>[D])).then(D=>{if(D===void 0||D.length===0)return I===s&&L(!0),!0;if(I===s){const{comp:A,err:N}=D[0];if(N!==void 0&&console.error(N),L(!1,A),x===!0){const J=D.find(({comp:V})=>typeof V.focus=="function"&&ew(V.$)===!1);J!==void 0&&J.comp.focus()}}return!1})}function f(){s++,u.forEach(_=>{typeof _.resetValidation=="function"&&_.resetValidation()})}function g(_){_!==void 0&&Rt(_);const x=s+1;d().then(I=>{x===s&&I===!0&&(e.onSubmit!==void 0?r("submit",_):_!==void 0&&_.target!==void 0&&typeof _.target.submit=="function"&&_.target.submit())})}function v(_){_!==void 0&&Rt(_),r("reset"),Sn(()=>{f(),e.autofocus===!0&&e.noResetFocus!==!0&&C()})}function C(){Uh(()=>{if(l.value===null)return;const _=l.value.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||l.value.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||l.value.querySelector("[autofocus], [data-autofocus]")||Array.prototype.find.call(l.value.querySelectorAll("[tabindex]"),x=>x.tabIndex>-1);_!=null&&_.focus({preventScroll:!0})})}Wh(tw,{bindComponent(_){u.push(_)},unbindComponent(_){const x=u.indexOf(_);x>-1&&u.splice(x,1)}});let M=!1;return oa(()=>{M=!0}),sa(()=>{M===!0&&e.autofocus===!0&&C()}),ni(()=>{e.autofocus===!0&&C()}),Object.assign(a.proxy,{validate:d,resetValidation:f,submit:g,reset:v,focus:C,getValidationComponents:()=>u}),()=>E("form",{class:"q-form",ref:l,onSubmit:g,onReset:v},Mt(t.default))}});//! moment.js -//! version : 2.29.4 -//! authors : Tim Wood, Iskren Chernev, Moment.js contributors -//! license : MIT -//! momentjs.com -var $g;function ae(){return $g.apply(null,arguments)}function Gk(e){$g=e}function jn(e){return e instanceof Array||Object.prototype.toString.call(e)==="[object Array]"}function bi(e){return e!=null&&Object.prototype.toString.call(e)==="[object Object]"}function Xe(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function gc(e){if(Object.getOwnPropertyNames)return Object.getOwnPropertyNames(e).length===0;var t;for(t in e)if(Xe(e,t))return!1;return!0}function mn(e){return e===void 0}function Ar(e){return typeof e=="number"||Object.prototype.toString.call(e)==="[object Number]"}function Ja(e){return e instanceof Date||Object.prototype.toString.call(e)==="[object Date]"}function Og(e,t){var r=[],a,l=e.length;for(a=0;a>>0,a;for(a=0;a0)for(r=0;r=0;return(s?r?"+":"":"-")+Math.pow(10,Math.max(0,l)).toString().substr(1)+a}var yc=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,io=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,qu={},Ji={};function be(e,t,r,a){var l=a;typeof a=="string"&&(l=function(){return this[a]()}),e&&(Ji[e]=l),t&&(Ji[t[0]]=function(){return lr(l.apply(this,arguments),t[1],t[2])}),r&&(Ji[r]=function(){return this.localeData().ordinal(l.apply(this,arguments),e)})}function Xk(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,""):e.replace(/\\/g,"")}function eC(e){var t=e.match(yc),r,a;for(r=0,a=t.length;r=0&&io.test(e);)e=e.replace(io,a),io.lastIndex=0,r-=1;return e}var tC={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};function nC(e){var t=this._longDateFormat[e],r=this._longDateFormat[e.toUpperCase()];return t||!r?t:(this._longDateFormat[e]=r.match(yc).map(function(a){return a==="MMMM"||a==="MM"||a==="DD"||a==="dddd"?a.slice(1):a}).join(""),this._longDateFormat[e])}var rC="Invalid date";function iC(){return this._invalidDate}var aC="%d",lC=/\d{1,2}/;function oC(e){return this._ordinal.replace("%d",e)}var sC={future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function uC(e,t,r,a){var l=this._relativeTime[r];return dr(l)?l(e,t,r,a):l.replace(/%d/i,e)}function cC(e,t){var r=this._relativeTime[e>0?"future":"past"];return dr(r)?r(t):r.replace(/%s/i,t)}var Ba={};function en(e,t){var r=e.toLowerCase();Ba[r]=Ba[r+"s"]=Ba[t]=e}function Bn(e){return typeof e=="string"?Ba[e]||Ba[e.toLowerCase()]:void 0}function _c(e){var t={},r,a;for(a in e)Xe(e,a)&&(r=Bn(a),r&&(t[r]=e[a]));return t}var Bg={};function tn(e,t){Bg[e]=t}function dC(e){var t=[],r;for(r in e)Xe(e,r)&&t.push({unit:r,priority:Bg[r]});return t.sort(function(a,l){return a.priority-l.priority}),t}function Lo(e){return e%4===0&&e%100!==0||e%400===0}function Rn(e){return e<0?Math.ceil(e)||0:Math.floor(e)}function Ye(e){var t=+e,r=0;return t!==0&&isFinite(t)&&(r=Rn(t)),r}function ua(e,t){return function(r){return r!=null?(Fg(this,e,r),ae.updateOffset(this,t),this):Co(this,e)}}function Co(e,t){return e.isValid()?e._d["get"+(e._isUTC?"UTC":"")+t]():NaN}function Fg(e,t,r){e.isValid()&&!isNaN(r)&&(t==="FullYear"&&Lo(e.year())&&e.month()===1&&e.date()===29?(r=Ye(r),e._d["set"+(e._isUTC?"UTC":"")+t](r,e.month(),Vo(r,e.month()))):e._d["set"+(e._isUTC?"UTC":"")+t](r))}function fC(e){return e=Bn(e),dr(this[e])?this[e]():this}function hC(e,t){if(typeof e=="object"){e=_c(e);var r=dC(e),a,l=r.length;for(a=0;a68?1900:2e3)};var jg=ua("FullYear",!0);function EC(){return Lo(this.year())}function IC(e,t,r,a,l,s,u){var d;return e<100&&e>=0?(d=new Date(e+400,t,r,a,l,s,u),isFinite(d.getFullYear())&&d.setFullYear(e)):d=new Date(e,t,r,a,l,s,u),d}function Ya(e){var t,r;return e<100&&e>=0?(r=Array.prototype.slice.call(arguments),r[0]=e+400,t=new Date(Date.UTC.apply(null,r)),isFinite(t.getUTCFullYear())&&t.setUTCFullYear(e)):t=new Date(Date.UTC.apply(null,arguments)),t}function Mo(e,t,r){var a=7+t-r,l=(7+Ya(e,0,a).getUTCDay()-t)%7;return-l+a-1}function Zg(e,t,r,a,l){var s=(7+r-a)%7,u=Mo(e,a,l),d=1+7*(t-1)+s+u,f,g;return d<=0?(f=e-1,g=Fa(f)+d):d>Fa(e)?(f=e+1,g=d-Fa(e)):(f=e,g=d),{year:f,dayOfYear:g}}function Wa(e,t,r){var a=Mo(e.year(),t,r),l=Math.floor((e.dayOfYear()-a-1)/7)+1,s,u;return l<1?(u=e.year()-1,s=l+xr(u,t,r)):l>xr(e.year(),t,r)?(s=l-xr(e.year(),t,r),u=e.year()+1):(u=e.year(),s=l),{week:s,year:u}}function xr(e,t,r){var a=Mo(e,t,r),l=Mo(e+1,t,r);return(Fa(e)-a+l)/7}be("w",["ww",2],"wo","week");be("W",["WW",2],"Wo","isoWeek");en("week","w");en("isoWeek","W");tn("week",5);tn("isoWeek",5);ce("w",yt);ce("ww",yt,Dn);ce("W",yt);ce("WW",yt,Dn);tl(["w","ww","W","WW"],function(e,t,r,a){t[a.substr(0,1)]=Ye(e)});function $C(e){return Wa(e,this._week.dow,this._week.doy).week}var OC={dow:0,doy:6};function RC(){return this._week.dow}function LC(){return this._week.doy}function NC(e){var t=this.localeData().week(this);return e==null?t:this.add((e-t)*7,"d")}function BC(e){var t=Wa(this,1,4).week;return e==null?t:this.add((e-t)*7,"d")}be("d",0,"do","day");be("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)});be("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)});be("dddd",0,0,function(e){return this.localeData().weekdays(this,e)});be("e",0,0,"weekday");be("E",0,0,"isoWeekday");en("day","d");en("weekday","e");en("isoWeekday","E");tn("day",11);tn("weekday",11);tn("isoWeekday",11);ce("d",yt);ce("e",yt);ce("E",yt);ce("dd",function(e,t){return t.weekdaysMinRegex(e)});ce("ddd",function(e,t){return t.weekdaysShortRegex(e)});ce("dddd",function(e,t){return t.weekdaysRegex(e)});tl(["dd","ddd","dddd"],function(e,t,r,a){var l=r._locale.weekdaysParse(e,a,r._strict);l!=null?t.d=l:Re(r).invalidWeekday=e});tl(["d","e","E"],function(e,t,r,a){t[a]=Ye(e)});function FC(e,t){return typeof e!="string"?e:isNaN(e)?(e=t.weekdaysParse(e),typeof e=="number"?e:null):parseInt(e,10)}function UC(e,t){return typeof e=="string"?t.weekdaysParse(e)%7||7:isNaN(e)?null:e}function Sc(e,t){return e.slice(t,7).concat(e.slice(0,t))}var zC="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Jg="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),VC="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),YC=el,WC=el,HC=el;function KC(e,t){var r=jn(this._weekdays)?this._weekdays:this._weekdays[e&&e!==!0&&this._weekdays.isFormat.test(t)?"format":"standalone"];return e===!0?Sc(r,this._week.dow):e?r[e.day()]:r}function GC(e){return e===!0?Sc(this._weekdaysShort,this._week.dow):e?this._weekdaysShort[e.day()]:this._weekdaysShort}function QC(e){return e===!0?Sc(this._weekdaysMin,this._week.dow):e?this._weekdaysMin[e.day()]:this._weekdaysMin}function jC(e,t,r){var a,l,s,u=e.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],a=0;a<7;++a)s=cr([2e3,1]).day(a),this._minWeekdaysParse[a]=this.weekdaysMin(s,"").toLocaleLowerCase(),this._shortWeekdaysParse[a]=this.weekdaysShort(s,"").toLocaleLowerCase(),this._weekdaysParse[a]=this.weekdays(s,"").toLocaleLowerCase();return r?t==="dddd"?(l=Et.call(this._weekdaysParse,u),l!==-1?l:null):t==="ddd"?(l=Et.call(this._shortWeekdaysParse,u),l!==-1?l:null):(l=Et.call(this._minWeekdaysParse,u),l!==-1?l:null):t==="dddd"?(l=Et.call(this._weekdaysParse,u),l!==-1||(l=Et.call(this._shortWeekdaysParse,u),l!==-1)?l:(l=Et.call(this._minWeekdaysParse,u),l!==-1?l:null)):t==="ddd"?(l=Et.call(this._shortWeekdaysParse,u),l!==-1||(l=Et.call(this._weekdaysParse,u),l!==-1)?l:(l=Et.call(this._minWeekdaysParse,u),l!==-1?l:null)):(l=Et.call(this._minWeekdaysParse,u),l!==-1||(l=Et.call(this._weekdaysParse,u),l!==-1)?l:(l=Et.call(this._shortWeekdaysParse,u),l!==-1?l:null))}function ZC(e,t,r){var a,l,s;if(this._weekdaysParseExact)return jC.call(this,e,t,r);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),a=0;a<7;a++){if(l=cr([2e3,1]).day(a),r&&!this._fullWeekdaysParse[a]&&(this._fullWeekdaysParse[a]=new RegExp("^"+this.weekdays(l,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[a]=new RegExp("^"+this.weekdaysShort(l,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[a]=new RegExp("^"+this.weekdaysMin(l,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[a]||(s="^"+this.weekdays(l,"")+"|^"+this.weekdaysShort(l,"")+"|^"+this.weekdaysMin(l,""),this._weekdaysParse[a]=new RegExp(s.replace(".",""),"i")),r&&t==="dddd"&&this._fullWeekdaysParse[a].test(e))return a;if(r&&t==="ddd"&&this._shortWeekdaysParse[a].test(e))return a;if(r&&t==="dd"&&this._minWeekdaysParse[a].test(e))return a;if(!r&&this._weekdaysParse[a].test(e))return a}}function JC(e){if(!this.isValid())return e!=null?this:NaN;var t=this._isUTC?this._d.getUTCDay():this._d.getDay();return e!=null?(e=FC(e,this.localeData()),this.add(e-t,"d")):t}function XC(e){if(!this.isValid())return e!=null?this:NaN;var t=(this.day()+7-this.localeData()._week.dow)%7;return e==null?t:this.add(e-t,"d")}function e2(e){if(!this.isValid())return e!=null?this:NaN;if(e!=null){var t=UC(e,this.localeData());return this.day(this.day()%7?t:t-7)}else return this.day()||7}function t2(e){return this._weekdaysParseExact?(Xe(this,"_weekdaysRegex")||kc.call(this),e?this._weekdaysStrictRegex:this._weekdaysRegex):(Xe(this,"_weekdaysRegex")||(this._weekdaysRegex=YC),this._weekdaysStrictRegex&&e?this._weekdaysStrictRegex:this._weekdaysRegex)}function n2(e){return this._weekdaysParseExact?(Xe(this,"_weekdaysRegex")||kc.call(this),e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(Xe(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=WC),this._weekdaysShortStrictRegex&&e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function r2(e){return this._weekdaysParseExact?(Xe(this,"_weekdaysRegex")||kc.call(this),e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(Xe(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=HC),this._weekdaysMinStrictRegex&&e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function kc(){function e(v,C){return C.length-v.length}var t=[],r=[],a=[],l=[],s,u,d,f,g;for(s=0;s<7;s++)u=cr([2e3,1]).day(s),d=kn(this.weekdaysMin(u,"")),f=kn(this.weekdaysShort(u,"")),g=kn(this.weekdays(u,"")),t.push(d),r.push(f),a.push(g),l.push(d),l.push(f),l.push(g);t.sort(e),r.sort(e),a.sort(e),l.sort(e),this._weekdaysRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+a.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+r.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+t.join("|")+")","i")}function Cc(){return this.hours()%12||12}function i2(){return this.hours()||24}be("H",["HH",2],0,"hour");be("h",["hh",2],0,Cc);be("k",["kk",2],0,i2);be("hmm",0,0,function(){return""+Cc.apply(this)+lr(this.minutes(),2)});be("hmmss",0,0,function(){return""+Cc.apply(this)+lr(this.minutes(),2)+lr(this.seconds(),2)});be("Hmm",0,0,function(){return""+this.hours()+lr(this.minutes(),2)});be("Hmmss",0,0,function(){return""+this.hours()+lr(this.minutes(),2)+lr(this.seconds(),2)});function Xg(e,t){be(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}Xg("a",!0);Xg("A",!1);en("hour","h");tn("hour",13);function em(e,t){return t._meridiemParse}ce("a",em);ce("A",em);ce("H",yt);ce("h",yt);ce("k",yt);ce("HH",yt,Dn);ce("hh",yt,Dn);ce("kk",yt,Dn);ce("hmm",Vg);ce("hmmss",Yg);ce("Hmm",Vg);ce("Hmmss",Yg);ct(["H","HH"],Lt);ct(["k","kk"],function(e,t,r){var a=Ye(e);t[Lt]=a===24?0:a});ct(["a","A"],function(e,t,r){r._isPm=r._locale.isPM(e),r._meridiem=e});ct(["h","hh"],function(e,t,r){t[Lt]=Ye(e),Re(r).bigHour=!0});ct("hmm",function(e,t,r){var a=e.length-2;t[Lt]=Ye(e.substr(0,a)),t[Qn]=Ye(e.substr(a)),Re(r).bigHour=!0});ct("hmmss",function(e,t,r){var a=e.length-4,l=e.length-2;t[Lt]=Ye(e.substr(0,a)),t[Qn]=Ye(e.substr(a,2)),t[qr]=Ye(e.substr(l)),Re(r).bigHour=!0});ct("Hmm",function(e,t,r){var a=e.length-2;t[Lt]=Ye(e.substr(0,a)),t[Qn]=Ye(e.substr(a))});ct("Hmmss",function(e,t,r){var a=e.length-4,l=e.length-2;t[Lt]=Ye(e.substr(0,a)),t[Qn]=Ye(e.substr(a,2)),t[qr]=Ye(e.substr(l))});function a2(e){return(e+"").toLowerCase().charAt(0)==="p"}var l2=/[ap]\.?m?\.?/i,o2=ua("Hours",!0);function s2(e,t,r){return e>11?r?"pm":"PM":r?"am":"AM"}var tm={calendar:Zk,longDateFormat:tC,invalidDate:rC,ordinal:aC,dayOfMonthOrdinalParse:lC,relativeTime:sC,months:SC,monthsShort:Wg,week:OC,weekdays:zC,weekdaysMin:VC,weekdaysShort:Jg,meridiemParse:l2},bt={},Aa={},Ha;function u2(e,t){var r,a=Math.min(e.length,t.length);for(r=0;r0;){if(l=Yo(s.slice(0,r).join("-")),l)return l;if(a&&a.length>=r&&u2(s,a)>=r-1)break;r--}t++}return Ha}function d2(e){return e.match("^[^/\\\\]*$")!=null}function Yo(e){var t=null,r;if(bt[e]===void 0&&typeof module!="undefined"&&module&&module.exports&&d2(e))try{t=Ha._abbr,r=require,r("./locale/"+e),ei(t)}catch{bt[e]=null}return bt[e]}function ei(e,t){var r;return e&&(mn(t)?r=Er(e):r=Tc(e,t),r?Ha=r:typeof console!="undefined"&&console.warn&&console.warn("Locale "+e+" not found. Did you forget to load it?")),Ha._abbr}function Tc(e,t){if(t!==null){var r,a=tm;if(t.abbr=e,bt[e]!=null)Lg("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),a=bt[e]._config;else if(t.parentLocale!=null)if(bt[t.parentLocale]!=null)a=bt[t.parentLocale]._config;else if(r=Yo(t.parentLocale),r!=null)a=r._config;else return Aa[t.parentLocale]||(Aa[t.parentLocale]=[]),Aa[t.parentLocale].push({name:e,config:t}),null;return bt[e]=new pc(Fu(a,t)),Aa[e]&&Aa[e].forEach(function(l){Tc(l.name,l.config)}),ei(e),bt[e]}else return delete bt[e],null}function f2(e,t){if(t!=null){var r,a,l=tm;bt[e]!=null&&bt[e].parentLocale!=null?bt[e].set(Fu(bt[e]._config,t)):(a=Yo(e),a!=null&&(l=a._config),t=Fu(l,t),a==null&&(t.abbr=e),r=new pc(t),r.parentLocale=bt[e],bt[e]=r),ei(e)}else bt[e]!=null&&(bt[e].parentLocale!=null?(bt[e]=bt[e].parentLocale,e===ei()&&ei(e)):bt[e]!=null&&delete bt[e]);return bt[e]}function Er(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return Ha;if(!jn(e)){if(t=Yo(e),t)return t;e=[e]}return c2(e)}function h2(){return Uu(bt)}function Mc(e){var t,r=e._a;return r&&Re(e).overflow===-2&&(t=r[Dr]<0||r[Dr]>11?Dr:r[ar]<1||r[ar]>Vo(r[Xt],r[Dr])?ar:r[Lt]<0||r[Lt]>24||r[Lt]===24&&(r[Qn]!==0||r[qr]!==0||r[pi]!==0)?Lt:r[Qn]<0||r[Qn]>59?Qn:r[qr]<0||r[qr]>59?qr:r[pi]<0||r[pi]>999?pi:-1,Re(e)._overflowDayOfYear&&(tar)&&(t=ar),Re(e)._overflowWeeks&&t===-1&&(t=_C),Re(e)._overflowWeekday&&t===-1&&(t=bC),Re(e).overflow=t),e}var g2=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,m2=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,v2=/Z|[+-]\d\d(?::?\d\d)?/,ao=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],Pu=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],p2=/^\/?Date\((-?\d+)/i,y2=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,_2={UT:0,GMT:0,EDT:-4*60,EST:-5*60,CDT:-5*60,CST:-6*60,MDT:-6*60,MST:-7*60,PDT:-7*60,PST:-8*60};function nm(e){var t,r,a=e._i,l=g2.exec(a)||m2.exec(a),s,u,d,f,g=ao.length,v=Pu.length;if(l){for(Re(e).iso=!0,t=0,r=g;tFa(u)||e._dayOfYear===0)&&(Re(e)._overflowDayOfYear=!0),r=Ya(u,0,e._dayOfYear),e._a[Dr]=r.getUTCMonth(),e._a[ar]=r.getUTCDate()),t=0;t<3&&e._a[t]==null;++t)e._a[t]=a[t]=l[t];for(;t<7;t++)e._a[t]=a[t]=e._a[t]==null?t===2?1:0:e._a[t];e._a[Lt]===24&&e._a[Qn]===0&&e._a[qr]===0&&e._a[pi]===0&&(e._nextDay=!0,e._a[Lt]=0),e._d=(e._useUTC?Ya:IC).apply(null,a),s=e._useUTC?e._d.getUTCDay():e._d.getDay(),e._tzm!=null&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[Lt]=24),e._w&&typeof e._w.d!="undefined"&&e._w.d!==s&&(Re(e).weekdayMismatch=!0)}}function D2(e){var t,r,a,l,s,u,d,f,g;t=e._w,t.GG!=null||t.W!=null||t.E!=null?(s=1,u=4,r=Ki(t.GG,e._a[Xt],Wa(pt(),1,4).year),a=Ki(t.W,1),l=Ki(t.E,1),(l<1||l>7)&&(f=!0)):(s=e._locale._week.dow,u=e._locale._week.doy,g=Wa(pt(),s,u),r=Ki(t.gg,e._a[Xt],g.year),a=Ki(t.w,g.week),t.d!=null?(l=t.d,(l<0||l>6)&&(f=!0)):t.e!=null?(l=t.e+s,(t.e<0||t.e>6)&&(f=!0)):l=s),a<1||a>xr(r,s,u)?Re(e)._overflowWeeks=!0:f!=null?Re(e)._overflowWeekday=!0:(d=Zg(r,a,l,s,u),e._a[Xt]=d.year,e._dayOfYear=d.dayOfYear)}ae.ISO_8601=function(){};ae.RFC_2822=function(){};function qc(e){if(e._f===ae.ISO_8601){nm(e);return}if(e._f===ae.RFC_2822){rm(e);return}e._a=[],Re(e).empty=!0;var t=""+e._i,r,a,l,s,u,d=t.length,f=0,g,v;for(l=Ng(e._f,e._locale).match(yc)||[],v=l.length,r=0;r0&&Re(e).unusedInput.push(u),t=t.slice(t.indexOf(a)+a.length),f+=a.length),Ji[s]?(a?Re(e).empty=!1:Re(e).unusedTokens.push(s),yC(s,a,e)):e._strict&&!a&&Re(e).unusedTokens.push(s);Re(e).charsLeftOver=d-f,t.length>0&&Re(e).unusedInput.push(t),e._a[Lt]<=12&&Re(e).bigHour===!0&&e._a[Lt]>0&&(Re(e).bigHour=void 0),Re(e).parsedDateParts=e._a.slice(0),Re(e).meridiem=e._meridiem,e._a[Lt]=q2(e._locale,e._a[Lt],e._meridiem),g=Re(e).era,g!==null&&(e._a[Xt]=e._locale.erasConvertYear(g,e._a[Xt])),Dc(e),Mc(e)}function q2(e,t,r){var a;return r==null?t:e.meridiemHour!=null?e.meridiemHour(t,r):(e.isPM!=null&&(a=e.isPM(r),a&&t<12&&(t+=12),!a&&t===12&&(t=0)),t)}function P2(e){var t,r,a,l,s,u,d=!1,f=e._f.length;if(f===0){Re(e).invalidFormat=!0,e._d=new Date(NaN);return}for(l=0;lthis?this:e:Ro()});function lm(e,t){var r,a;if(t.length===1&&jn(t[0])&&(t=t[0]),!t.length)return pt();for(r=t[0],a=1;athis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function j2(){if(!mn(this._isDSTShifted))return this._isDSTShifted;var e={},t;return vc(e,this),e=im(e),e._a?(t=e._isUTC?cr(e._a):pt(e._a),this._isDSTShifted=this.isValid()&&U2(e._a,t.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}function Z2(){return this.isValid()?!this._isUTC:!1}function J2(){return this.isValid()?this._isUTC:!1}function sm(){return this.isValid()?this._isUTC&&this._offset===0:!1}var X2=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,eT=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function Jn(e,t){var r=e,a=null,l,s,u;return so(e)?r={ms:e._milliseconds,d:e._days,M:e._months}:Ar(e)||!isNaN(+e)?(r={},t?r[t]=+e:r.milliseconds=+e):(a=X2.exec(e))?(l=a[1]==="-"?-1:1,r={y:0,d:Ye(a[ar])*l,h:Ye(a[Lt])*l,m:Ye(a[Qn])*l,s:Ye(a[qr])*l,ms:Ye(Vu(a[pi]*1e3))*l}):(a=eT.exec(e))?(l=a[1]==="-"?-1:1,r={y:gi(a[2],l),M:gi(a[3],l),w:gi(a[4],l),d:gi(a[5],l),h:gi(a[6],l),m:gi(a[7],l),s:gi(a[8],l)}):r==null?r={}:typeof r=="object"&&("from"in r||"to"in r)&&(u=tT(pt(r.from),pt(r.to)),r={},r.ms=u.milliseconds,r.M=u.months),s=new Wo(r),so(e)&&Xe(e,"_locale")&&(s._locale=e._locale),so(e)&&Xe(e,"_isValid")&&(s._isValid=e._isValid),s}Jn.fn=Wo.prototype;Jn.invalid=F2;function gi(e,t){var r=e&&parseFloat(e.replace(",","."));return(isNaN(r)?0:r)*t}function Eh(e,t){var r={};return r.months=t.month()-e.month()+(t.year()-e.year())*12,e.clone().add(r.months,"M").isAfter(t)&&--r.months,r.milliseconds=+t-+e.clone().add(r.months,"M"),r}function tT(e,t){var r;return e.isValid()&&t.isValid()?(t=xc(t,e),e.isBefore(t)?r=Eh(e,t):(r=Eh(t,e),r.milliseconds=-r.milliseconds,r.months=-r.months),r):{milliseconds:0,months:0}}function um(e,t){return function(r,a){var l,s;return a!==null&&!isNaN(+a)&&(Lg(t,"moment()."+t+"(period, number) is deprecated. Please use moment()."+t+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),s=r,r=a,a=s),l=Jn(r,a),cm(this,l,e),this}}function cm(e,t,r,a){var l=t._milliseconds,s=Vu(t._days),u=Vu(t._months);!e.isValid()||(a=a==null?!0:a,u&&Kg(e,Co(e,"Month")+u*r),s&&Fg(e,"Date",Co(e,"Date")+s*r),l&&e._d.setTime(e._d.valueOf()+l*r),a&&ae.updateOffset(e,s||u))}var nT=um(1,"add"),rT=um(-1,"subtract");function dm(e){return typeof e=="string"||e instanceof String}function iT(e){return Zn(e)||Ja(e)||dm(e)||Ar(e)||lT(e)||aT(e)||e===null||e===void 0}function aT(e){var t=bi(e)&&!gc(e),r=!1,a=["years","year","y","months","month","M","days","day","d","dates","date","D","hours","hour","h","minutes","minute","m","seconds","second","s","milliseconds","millisecond","ms"],l,s,u=a.length;for(l=0;lr.valueOf():r.valueOf()9999?oo(r,t?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):dr(Date.prototype.toISOString)?t?this.toDate().toISOString():new Date(this.valueOf()+this.utcOffset()*60*1e3).toISOString().replace("Z",oo(r,"Z")):oo(r,t?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")}function bT(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var e="moment",t="",r,a,l,s;return this.isLocal()||(e=this.utcOffset()===0?"moment.utc":"moment.parseZone",t="Z"),r="["+e+'("]',a=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",l="-MM-DD[T]HH:mm:ss.SSS",s=t+'[")]',this.format(r+a+l+s)}function wT(e){e||(e=this.isUtc()?ae.defaultFormatUtc:ae.defaultFormat);var t=oo(this,e);return this.localeData().postformat(t)}function ST(e,t){return this.isValid()&&(Zn(e)&&e.isValid()||pt(e).isValid())?Jn({to:this,from:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function kT(e){return this.from(pt(),e)}function CT(e,t){return this.isValid()&&(Zn(e)&&e.isValid()||pt(e).isValid())?Jn({from:this,to:e}).locale(this.locale()).humanize(!t):this.localeData().invalidDate()}function TT(e){return this.to(pt(),e)}function fm(e){var t;return e===void 0?this._locale._abbr:(t=Er(e),t!=null&&(this._locale=t),this)}var hm=Nn("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(e){return e===void 0?this.localeData():this.locale(e)});function gm(){return this._locale}var Do=1e3,Xi=60*Do,qo=60*Xi,mm=(365*400+97)*24*qo;function ea(e,t){return(e%t+t)%t}function vm(e,t,r){return e<100&&e>=0?new Date(e+400,t,r)-mm:new Date(e,t,r).valueOf()}function pm(e,t,r){return e<100&&e>=0?Date.UTC(e+400,t,r)-mm:Date.UTC(e,t,r)}function MT(e){var t,r;if(e=Bn(e),e===void 0||e==="millisecond"||!this.isValid())return this;switch(r=this._isUTC?pm:vm,e){case"year":t=r(this.year(),0,1);break;case"quarter":t=r(this.year(),this.month()-this.month()%3,1);break;case"month":t=r(this.year(),this.month(),1);break;case"week":t=r(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":t=r(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":t=r(this.year(),this.month(),this.date());break;case"hour":t=this._d.valueOf(),t-=ea(t+(this._isUTC?0:this.utcOffset()*Xi),qo);break;case"minute":t=this._d.valueOf(),t-=ea(t,Xi);break;case"second":t=this._d.valueOf(),t-=ea(t,Do);break}return this._d.setTime(t),ae.updateOffset(this,!0),this}function DT(e){var t,r;if(e=Bn(e),e===void 0||e==="millisecond"||!this.isValid())return this;switch(r=this._isUTC?pm:vm,e){case"year":t=r(this.year()+1,0,1)-1;break;case"quarter":t=r(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":t=r(this.year(),this.month()+1,1)-1;break;case"week":t=r(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":t=r(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":t=r(this.year(),this.month(),this.date()+1)-1;break;case"hour":t=this._d.valueOf(),t+=qo-ea(t+(this._isUTC?0:this.utcOffset()*Xi),qo)-1;break;case"minute":t=this._d.valueOf(),t+=Xi-ea(t,Xi)-1;break;case"second":t=this._d.valueOf(),t+=Do-ea(t,Do)-1;break}return this._d.setTime(t),ae.updateOffset(this,!0),this}function qT(){return this._d.valueOf()-(this._offset||0)*6e4}function PT(){return Math.floor(this.valueOf()/1e3)}function xT(){return new Date(this.valueOf())}function AT(){var e=this;return[e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second(),e.millisecond()]}function ET(){var e=this;return{years:e.year(),months:e.month(),date:e.date(),hours:e.hours(),minutes:e.minutes(),seconds:e.seconds(),milliseconds:e.milliseconds()}}function IT(){return this.isValid()?this.toISOString():null}function $T(){return mc(this)}function OT(){return Zr({},Re(this))}function RT(){return Re(this).overflow}function LT(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}be("N",0,0,"eraAbbr");be("NN",0,0,"eraAbbr");be("NNN",0,0,"eraAbbr");be("NNNN",0,0,"eraName");be("NNNNN",0,0,"eraNarrow");be("y",["y",1],"yo","eraYear");be("y",["yy",2],0,"eraYear");be("y",["yyy",3],0,"eraYear");be("y",["yyyy",4],0,"eraYear");ce("N",Ac);ce("NN",Ac);ce("NNN",Ac);ce("NNNN",GT);ce("NNNNN",QT);ct(["N","NN","NNN","NNNN","NNNNN"],function(e,t,r,a){var l=r._locale.erasParse(e,a,r._strict);l?Re(r).era=l:Re(r).invalidEra=e});ce("y",ca);ce("yy",ca);ce("yyy",ca);ce("yyyy",ca);ce("yo",jT);ct(["y","yy","yyy","yyyy"],Xt);ct(["yo"],function(e,t,r,a){var l;r._locale._eraYearOrdinalRegex&&(l=e.match(r._locale._eraYearOrdinalRegex)),r._locale.eraYearOrdinalParse?t[Xt]=r._locale.eraYearOrdinalParse(e,l):t[Xt]=parseInt(e,10)});function NT(e,t){var r,a,l,s=this._eras||Er("en")._eras;for(r=0,a=s.length;r=0)return s[a]}function FT(e,t){var r=e.since<=e.until?1:-1;return t===void 0?ae(e.since).year():ae(e.since).year()+(t-e.offset)*r}function UT(){var e,t,r,a=this.localeData().eras();for(e=0,t=a.length;es&&(t=s),rM.call(this,e,t,r,a,l))}function rM(e,t,r,a,l){var s=Zg(e,t,r,a,l),u=Ya(s.year,0,s.dayOfYear);return this.year(u.getUTCFullYear()),this.month(u.getUTCMonth()),this.date(u.getUTCDate()),this}be("Q",0,"Qo","quarter");en("quarter","Q");tn("quarter",7);ce("Q",Ug);ct("Q",function(e,t){t[Dr]=(Ye(e)-1)*3});function iM(e){return e==null?Math.ceil((this.month()+1)/3):this.month((e-1)*3+this.month()%3)}be("D",["DD",2],"Do","date");en("date","D");tn("date",9);ce("D",yt);ce("DD",yt,Dn);ce("Do",function(e,t){return e?t._dayOfMonthOrdinalParse||t._ordinalParse:t._dayOfMonthOrdinalParseLenient});ct(["D","DD"],ar);ct("Do",function(e,t){t[ar]=Ye(e.match(yt)[0])});var _m=ua("Date",!0);be("DDD",["DDDD",3],"DDDo","dayOfYear");en("dayOfYear","DDD");tn("dayOfYear",4);ce("DDD",Bo);ce("DDDD",zg);ct(["DDD","DDDD"],function(e,t,r){r._dayOfYear=Ye(e)});function aM(e){var t=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return e==null?t:this.add(e-t,"d")}be("m",["mm",2],0,"minute");en("minute","m");tn("minute",14);ce("m",yt);ce("mm",yt,Dn);ct(["m","mm"],Qn);var lM=ua("Minutes",!1);be("s",["ss",2],0,"second");en("second","s");tn("second",15);ce("s",yt);ce("ss",yt,Dn);ct(["s","ss"],qr);var oM=ua("Seconds",!1);be("S",0,0,function(){return~~(this.millisecond()/100)});be(0,["SS",2],0,function(){return~~(this.millisecond()/10)});be(0,["SSS",3],0,"millisecond");be(0,["SSSS",4],0,function(){return this.millisecond()*10});be(0,["SSSSS",5],0,function(){return this.millisecond()*100});be(0,["SSSSSS",6],0,function(){return this.millisecond()*1e3});be(0,["SSSSSSS",7],0,function(){return this.millisecond()*1e4});be(0,["SSSSSSSS",8],0,function(){return this.millisecond()*1e5});be(0,["SSSSSSSSS",9],0,function(){return this.millisecond()*1e6});en("millisecond","ms");tn("millisecond",16);ce("S",Bo,Ug);ce("SS",Bo,Dn);ce("SSS",Bo,zg);var Jr,bm;for(Jr="SSSS";Jr.length<=9;Jr+="S")ce(Jr,ca);function sM(e,t){t[pi]=Ye(("0."+e)*1e3)}for(Jr="S";Jr.length<=9;Jr+="S")ct(Jr,sM);bm=ua("Milliseconds",!1);be("z",0,0,"zoneAbbr");be("zz",0,0,"zoneName");function uM(){return this._isUTC?"UTC":""}function cM(){return this._isUTC?"Coordinated Universal Time":""}var Q=Xa.prototype;Q.add=nT;Q.calendar=uT;Q.clone=cT;Q.diff=pT;Q.endOf=DT;Q.format=wT;Q.from=ST;Q.fromNow=kT;Q.to=CT;Q.toNow=TT;Q.get=fC;Q.invalidAt=RT;Q.isAfter=dT;Q.isBefore=fT;Q.isBetween=hT;Q.isSame=gT;Q.isSameOrAfter=mT;Q.isSameOrBefore=vT;Q.isValid=$T;Q.lang=hm;Q.locale=fm;Q.localeData=gm;Q.max=$2;Q.min=I2;Q.parsingFlags=OT;Q.set=hC;Q.startOf=MT;Q.subtract=rT;Q.toArray=AT;Q.toObject=ET;Q.toDate=xT;Q.toISOString=_T;Q.inspect=bT;typeof Symbol!="undefined"&&Symbol.for!=null&&(Q[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"});Q.toJSON=IT;Q.toString=yT;Q.unix=PT;Q.valueOf=qT;Q.creationData=LT;Q.eraName=UT;Q.eraNarrow=zT;Q.eraAbbr=VT;Q.eraYear=YT;Q.year=jg;Q.isLeapYear=EC;Q.weekYear=ZT;Q.isoWeekYear=JT;Q.quarter=Q.quarters=iM;Q.month=Gg;Q.daysInMonth=PC;Q.week=Q.weeks=NC;Q.isoWeek=Q.isoWeeks=BC;Q.weeksInYear=tM;Q.weeksInWeekYear=nM;Q.isoWeeksInYear=XT;Q.isoWeeksInISOWeekYear=eM;Q.date=_m;Q.day=Q.days=JC;Q.weekday=XC;Q.isoWeekday=e2;Q.dayOfYear=aM;Q.hour=Q.hours=o2;Q.minute=Q.minutes=lM;Q.second=Q.seconds=oM;Q.millisecond=Q.milliseconds=bm;Q.utcOffset=V2;Q.utc=W2;Q.local=H2;Q.parseZone=K2;Q.hasAlignedHourOffset=G2;Q.isDST=Q2;Q.isLocal=Z2;Q.isUtcOffset=J2;Q.isUtc=sm;Q.isUTC=sm;Q.zoneAbbr=uM;Q.zoneName=cM;Q.dates=Nn("dates accessor is deprecated. Use date instead.",_m);Q.months=Nn("months accessor is deprecated. Use month instead",Gg);Q.years=Nn("years accessor is deprecated. Use year instead",jg);Q.zone=Nn("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",Y2);Q.isDSTShifted=Nn("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",j2);function dM(e){return pt(e*1e3)}function fM(){return pt.apply(null,arguments).parseZone()}function wm(e){return e}var et=pc.prototype;et.calendar=Jk;et.longDateFormat=nC;et.invalidDate=iC;et.ordinal=oC;et.preparse=wm;et.postformat=wm;et.relativeTime=uC;et.pastFuture=cC;et.set=jk;et.eras=NT;et.erasParse=BT;et.erasConvertYear=FT;et.erasAbbrRegex=HT;et.erasNameRegex=WT;et.erasNarrowRegex=KT;et.months=TC;et.monthsShort=MC;et.monthsParse=qC;et.monthsRegex=AC;et.monthsShortRegex=xC;et.week=$C;et.firstDayOfYear=LC;et.firstDayOfWeek=RC;et.weekdays=KC;et.weekdaysMin=QC;et.weekdaysShort=GC;et.weekdaysParse=ZC;et.weekdaysRegex=t2;et.weekdaysShortRegex=n2;et.weekdaysMinRegex=r2;et.isPM=a2;et.meridiem=s2;function Po(e,t,r,a){var l=Er(),s=cr().set(a,t);return l[r](s,e)}function Sm(e,t,r){if(Ar(e)&&(t=e,e=void 0),e=e||"",t!=null)return Po(e,t,r,"month");var a,l=[];for(a=0;a<12;a++)l[a]=Po(e,a,r,"month");return l}function Ic(e,t,r,a){typeof e=="boolean"?(Ar(t)&&(r=t,t=void 0),t=t||""):(t=e,r=t,e=!1,Ar(t)&&(r=t,t=void 0),t=t||"");var l=Er(),s=e?l._week.dow:0,u,d=[];if(r!=null)return Po(t,(r+s)%7,a,"day");for(u=0;u<7;u++)d[u]=Po(t,(u+s)%7,a,"day");return d}function hM(e,t){return Sm(e,t,"months")}function gM(e,t){return Sm(e,t,"monthsShort")}function mM(e,t,r){return Ic(e,t,r,"weekdays")}function vM(e,t,r){return Ic(e,t,r,"weekdaysShort")}function pM(e,t,r){return Ic(e,t,r,"weekdaysMin")}ei("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10,r=Ye(e%100/10)===1?"th":t===1?"st":t===2?"nd":t===3?"rd":"th";return e+r}});ae.lang=Nn("moment.lang is deprecated. Use moment.locale instead.",ei);ae.langData=Nn("moment.langData is deprecated. Use moment.localeData instead.",Er);var kr=Math.abs;function yM(){var e=this._data;return this._milliseconds=kr(this._milliseconds),this._days=kr(this._days),this._months=kr(this._months),e.milliseconds=kr(e.milliseconds),e.seconds=kr(e.seconds),e.minutes=kr(e.minutes),e.hours=kr(e.hours),e.months=kr(e.months),e.years=kr(e.years),this}function km(e,t,r,a){var l=Jn(t,r);return e._milliseconds+=a*l._milliseconds,e._days+=a*l._days,e._months+=a*l._months,e._bubble()}function _M(e,t){return km(this,e,t,1)}function bM(e,t){return km(this,e,t,-1)}function Ih(e){return e<0?Math.floor(e):Math.ceil(e)}function wM(){var e=this._milliseconds,t=this._days,r=this._months,a=this._data,l,s,u,d,f;return e>=0&&t>=0&&r>=0||e<=0&&t<=0&&r<=0||(e+=Ih(Wu(r)+t)*864e5,t=0,r=0),a.milliseconds=e%1e3,l=Rn(e/1e3),a.seconds=l%60,s=Rn(l/60),a.minutes=s%60,u=Rn(s/60),a.hours=u%24,t+=Rn(u/24),f=Rn(Cm(t)),r+=f,t-=Ih(Wu(f)),d=Rn(r/12),r%=12,a.days=t,a.months=r,a.years=d,this}function Cm(e){return e*4800/146097}function Wu(e){return e*146097/4800}function SM(e){if(!this.isValid())return NaN;var t,r,a=this._milliseconds;if(e=Bn(e),e==="month"||e==="quarter"||e==="year")switch(t=this._days+a/864e5,r=this._months+Cm(t),e){case"month":return r;case"quarter":return r/3;case"year":return r/12}else switch(t=this._days+Math.round(Wu(this._months)),e){case"week":return t/7+a/6048e5;case"day":return t+a/864e5;case"hour":return t*24+a/36e5;case"minute":return t*1440+a/6e4;case"second":return t*86400+a/1e3;case"millisecond":return Math.floor(t*864e5)+a;default:throw new Error("Unknown unit "+e)}}function kM(){return this.isValid()?this._milliseconds+this._days*864e5+this._months%12*2592e6+Ye(this._months/12)*31536e6:NaN}function Ir(e){return function(){return this.as(e)}}var CM=Ir("ms"),TM=Ir("s"),MM=Ir("m"),DM=Ir("h"),qM=Ir("d"),PM=Ir("w"),xM=Ir("M"),AM=Ir("Q"),EM=Ir("y");function IM(){return Jn(this)}function $M(e){return e=Bn(e),this.isValid()?this[e+"s"]():NaN}function ki(e){return function(){return this.isValid()?this._data[e]:NaN}}var OM=ki("milliseconds"),RM=ki("seconds"),LM=ki("minutes"),NM=ki("hours"),BM=ki("days"),FM=ki("months"),UM=ki("years");function zM(){return Rn(this.days()/7)}var Cr=Math.round,Qi={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function VM(e,t,r,a,l){return l.relativeTime(t||1,!!r,e,a)}function YM(e,t,r,a){var l=Jn(e).abs(),s=Cr(l.as("s")),u=Cr(l.as("m")),d=Cr(l.as("h")),f=Cr(l.as("d")),g=Cr(l.as("M")),v=Cr(l.as("w")),C=Cr(l.as("y")),M=s<=r.ss&&["s",s]||s0,M[4]=a,VM.apply(null,M)}function WM(e){return e===void 0?Cr:typeof e=="function"?(Cr=e,!0):!1}function HM(e,t){return Qi[e]===void 0?!1:t===void 0?Qi[e]:(Qi[e]=t,e==="s"&&(Qi.ss=t-1),!0)}function KM(e,t){if(!this.isValid())return this.localeData().invalidDate();var r=!1,a=Qi,l,s;return typeof e=="object"&&(t=e,e=!1),typeof e=="boolean"&&(r=e),typeof t=="object"&&(a=Object.assign({},Qi,t),t.s!=null&&t.ss==null&&(a.ss=t.s-1)),l=this.localeData(),s=YM(this,!r,a,l),r&&(s=l.pastFuture(+this,s)),l.postformat(s)}var xu=Math.abs;function Wi(e){return(e>0)-(e<0)||+e}function Ko(){if(!this.isValid())return this.localeData().invalidDate();var e=xu(this._milliseconds)/1e3,t=xu(this._days),r=xu(this._months),a,l,s,u,d=this.asSeconds(),f,g,v,C;return d?(a=Rn(e/60),l=Rn(a/60),e%=60,a%=60,s=Rn(r/12),r%=12,u=e?e.toFixed(3).replace(/\.?0+$/,""):"",f=d<0?"-":"",g=Wi(this._months)!==Wi(d)?"-":"",v=Wi(this._days)!==Wi(d)?"-":"",C=Wi(this._milliseconds)!==Wi(d)?"-":"",f+"P"+(s?g+s+"Y":"")+(r?g+r+"M":"")+(t?v+t+"D":"")+(l||a||e?"T":"")+(l?C+l+"H":"")+(a?C+a+"M":"")+(e?C+u+"S":"")):"P0D"}var je=Wo.prototype;je.isValid=B2;je.abs=yM;je.add=_M;je.subtract=bM;je.as=SM;je.asMilliseconds=CM;je.asSeconds=TM;je.asMinutes=MM;je.asHours=DM;je.asDays=qM;je.asWeeks=PM;je.asMonths=xM;je.asQuarters=AM;je.asYears=EM;je.valueOf=kM;je._bubble=wM;je.clone=IM;je.get=$M;je.milliseconds=OM;je.seconds=RM;je.minutes=LM;je.hours=NM;je.days=BM;je.weeks=zM;je.months=FM;je.years=UM;je.humanize=KM;je.toISOString=Ko;je.toString=Ko;je.toJSON=Ko;je.locale=fm;je.localeData=gm;je.toIsoString=Nn("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Ko);je.lang=hm;be("X",0,0,"unix");be("x",0,0,"valueOf");ce("x",Uo);ce("X",mC);ct("X",function(e,t,r){r._d=new Date(parseFloat(e)*1e3)});ct("x",function(e,t,r){r._d=new Date(Ye(e))});//! moment.js -ae.version="2.29.4";Gk(pt);ae.fn=Q;ae.min=O2;ae.max=R2;ae.now=L2;ae.utc=cr;ae.unix=dM;ae.months=hM;ae.isDate=Ja;ae.locale=ei;ae.invalid=Ro;ae.duration=Jn;ae.isMoment=Zn;ae.weekdays=mM;ae.parseZone=fM;ae.localeData=Er;ae.isDuration=so;ae.monthsShort=gM;ae.weekdaysMin=pM;ae.defineLocale=Tc;ae.updateLocale=f2;ae.locales=h2;ae.weekdaysShort=vM;ae.normalizeUnits=Bn;ae.relativeTimeRounding=WM;ae.relativeTimeThreshold=HM;ae.calendarFormat=sT;ae.prototype=Q;ae.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"};const GM=sn({name:"UserChat",props:["account-pubkey","peer-pubkeys","profiles","events"],components:{UserProfile:Za},data:function(){return{selectedPubkey:null,selectedProfile:null,dmEvents:[],newMessage:null,rawMessage:null,showRawMessage:!1}},watch:{events(e){this.dmEvents=((e==null?void 0:e.events)||[]).map(t=>{var l;const r=this.accountPubkey===t.pubkey,a={isJson:!1,message:t.content,sent:r,avatar:r?$q.config.staticPath+"/images/blank-avatar.webp":((l=this.selectedProfile)==null?void 0:l.picture)||$q.config.staticPath+"/images/blank-avatar.webp",dateFrom:ae(t.created_at*1e3).fromNow()};return isNaN(t.content)&&isJson(t.content)&&(a.isJson=!0,a.message=JSON.parse(t.content)),a}),setTimeout(()=>{document.getElementById("bottom-user-chat").scrollIntoView()},0)}},methods:{pubkeySelected(e){this.selectedPubkey=e,this.selectedProfile=this.profiles.find(t=>t.pubkey===e),this.$emit("chat-selected",e),setTimeout(()=>{document.getElementById("bottom-user-chat").scrollIntoView()},100)},async sendDirectMesage(){this.$emit("send-dm",{to:this.selectedPubkey,message:this.newMessage}),this.newMessage=null},pubkeyAlias(e){return Dg({dictionaries:[qg,Pg,xg],length:2,separator:" ",style:"capital",seed:e})},showMessageRawData:function(e){var t;this.rawMessage=JSON.stringify((t=this.dmEvents[e])==null?void 0:t.message,null,2),this.showRawMessage=!0}},created:async function(){}}),QM={style:{width:"100%"},class:"q-pa-md row justify-center"},jM={style:{width:"100%"}},ZM={key:0},JM={key:0},XM={key:0},eD=S("strong",null,"New order:",-1),tD=[eD],nD={key:1},rD=S("strong",null,"Reply sent for order: ",-1),iD=[rD],aD={key:2},lD=["textContent"],oD=["textContent","onClick"],sD={key:1},uD=["textContent"],cD=S("div",{id:"bottom-user-chat"},null,-1),dD={class:"row q-mt-lg"};function fD(e,t,r,a,l,s){const u=ti("user-profile");return O(),re("div",null,[y(Jt,{bordered:"",class:"q-mb-md"},{default:b(()=>[y(Ne,{horizontal:""},{default:b(()=>[y(Ne,{class:"col-sm-2 col-md-4"},{default:b(()=>[(O(!0),re(Nt,null,Wt(e.peerPubkeys,d=>(O(),oe(Vt,{key:d,clickable:"",onClick:f=>e.pubkeySelected(d),active:e.selectedPubkey===d,class:"cursor-pointer"},{default:b(()=>[y(u,{pubkey:d,profiles:e.profiles},null,8,["pubkey","profiles"])]),_:2},1032,["onClick","active"]))),128))]),_:1}),y(ut,{vertical:""}),y(Ne,{style:{width:"100%"}},{default:b(()=>[S("div",QM,[S("div",jM,[y(Hk,{style:{height:"500px"}},{default:b(()=>[e.dmEvents?(O(),re("div",ZM,[(O(!0),re(Nt,null,Wt(e.dmEvents,(d,f)=>{var g;return O(),oe(Yk,{key:f,name:d.sent?"me":((g=e.selectedProfile)==null?void 0:g.name)||e.pubkeyAlias(e.selectedPubkey),sent:d.sent,avatar:d.avatar,stamp:d.dateFrom},{default:b(()=>[d.isJson?(O(),re("div",JM,[d.message.type===0?(O(),re("div",XM,tD)):d.message.type===1?(O(),re("div",nD,iD)):d.message.type===2?(O(),re("div",aD,[d.message.paid?(O(),oe(Cn,{key:0,color:"green"},{default:b(()=>[Te("Paid ")]),_:1})):$e("",!0),d.message.shipped?(O(),oe(Cn,{key:1,color:"green"},{default:b(()=>[Te("Shipped ")]),_:1})):$e("",!0)])):$e("",!0),S("div",null,[S("span",{textContent:ge(d.message.message)},null,8,lD),y(Cn,{class:"gt-sm",color:"orange"},{default:b(()=>[S("span",{textContent:ge(d.message.id),onClick:v=>e.showOrderDetails(d.message.id),class:"cursor-pointer"},null,8,oD)]),_:2},1024)]),y(Cn,{onClick:v=>e.showMessageRawData(f),class:"cursor-pointer"},{default:b(()=>[Te("...")]),_:2},1032,["onClick"])])):(O(),re("div",sD,[S("span",{textContent:ge(d.message)},null,8,uD)]))]),_:2},1032,["name","sent","avatar","stamp"])}),128))])):$e("",!0),cD]),_:1})])])]),_:1})]),_:1}),y(ut),y(Ne,{horizontal:""},{default:b(()=>[y(Ne,{class:"col-sm-2 col-md-4"}),y(Ne,{style:{width:"100%"}},{default:b(()=>[y(Kk,{onSubmit:e.sendDirectMesage,class:"auto-width"},{default:b(()=>[y(It,{class:"rounded-pill",style:{width:"100%"},rounded:"",outlined:"",clearable:"",modelValue:e.newMessage,"onUpdate:modelValue":t[0]||(t[0]=d=>e.newMessage=d),modelModifiers:{trim:!0},label:"Write a message"},{append:b(()=>[y(Yt,{name:"send",class:"cursor-pointer",color:"secondary",onClick:e.sendDirectMesage},null,8,["onClick"])]),_:1},8,["modelValue"])]),_:1},8,["onSubmit"])]),_:1})]),_:1})]),_:1}),y(go,{modelValue:e.showRawMessage,"onUpdate:modelValue":t[2]||(t[2]=d=>e.showRawMessage=d),position:"top"},{default:b(()=>[y(Jt,{class:"q-pa-lg q-pt-xl",style:{width:"500px"}},{default:b(()=>[y(It,{filled:"",dense:"",type:"textarea",rows:"20",modelValue:e.rawMessage,"onUpdate:modelValue":t[1]||(t[1]=d=>e.rawMessage=d),modelModifiers:{trim:!0},label:"Raw Data"},null,8,["modelValue"]),S("div",dD,[Gn((O(),oe(ye,{flat:"",color:"grey",class:"q-ml-auto"},{default:b(()=>[Te("Close")]),_:1})),[[Gi]])])]),_:1})]),_:1},8,["modelValue"])])}var hD=Tn(GM,[["render",fD]]);const gD=sn({name:"ShoppingCartList",props:["carts","profiles"],components:{UserProfile:Za},data:function(){return{}},computed:{},methods:{formatCurrency:function(e,t){return formatCurrency(e,t)},cartTotalFormatted(e){var r;if(!((r=e.products)!=null&&r.length))return"";const t=e.products.reduce((a,l)=>l.price+a,0);return formatCurrency(t,e.products[0].currency)},removeProduct:function(e,t){this.$emit("remove-from-cart",{stallId:e,productId:t})},removeCart:function(e){this.$emit("remove-cart",e)},quantityChanged:function(e){this.$emit("add-to-cart",e)},proceedToCheckout:function(e){this.$emit("checkout-cart",e)}},created(){}}),mD=S("strong",null,"No products in cart!",-1),vD=["src"],pD=["src"],yD={class:"text-caption text-grey ellipsis-2-lines"},_D={class:"q-ma-md"};function bD(e,t,r,a,l,s){var d;const u=ti("user-profile");return O(),re("div",null,[(d=e.carts)!=null&&d.length?$e("",!0):(O(),oe(Jt,{key:0,bordered:"",class:"q-mb-md"},{default:b(()=>[y(Ne,null,{default:b(()=>[mD]),_:1})]),_:1})),(O(!0),re(Nt,null,Wt(e.carts,f=>(O(),re("div",{key:f.id},[y(Jt,{bordered:"",class:"q-mb-md"},{default:b(()=>[y(Vt,null,{default:b(()=>{var g;return[y(u,{pubkey:f.merchant,profiles:e.profiles,description:(g=f.products[0])==null?void 0:g.stallName},null,8,["pubkey","profiles","description"]),y(Ie,{side:""},{default:b(()=>[S("div",null,[y(ye,{onClick:v=>e.removeCart(f.id),flat:"",color:"pink"},{default:b(()=>[Te(" Clear Cart ")]),_:2},1032,["onClick"])])]),_:2},1024)]}),_:2},1024),y(ut),y(Ne,{horizontal:""},{default:b(()=>[y(Ne,{class:"col-12"},{default:b(()=>[y(Mr,{class:"q-mt-md"},{default:b(()=>[(O(!0),re(Nt,null,Wt(f.products,g=>(O(),oe(Vt,{key:g.id},{default:b(()=>[y(Ie,{avatar:""},{default:b(()=>[y(Xr,null,{default:b(()=>[g.images[0]||g.image?(O(),re("img",{key:0,src:g.images[0]||g.image},null,8,vD)):(O(),re("img",{key:1,src:e.$q.config.staticPath+"/images/placeholder.png"},null,8,pD))]),_:2},1024)]),_:2},1024),y(Ie,{class:"q-mt-sm"},{default:b(()=>[y(Ke,null,{default:b(()=>[Te(ge(g.name),1)]),_:2},1024),y(Ke,{class:"gt-sm"},{default:b(()=>[S("div",yD,[S("p",null,ge(g.description),1)])]),_:2},1024)]),_:2},1024),y(Ie,{class:"q-mt-sm gt-sm"},{default:b(()=>[y(Ke,null,{default:b(()=>[S("strong",null,ge(e.formatCurrency(g.price,g.currency)),1)]),_:2},1024),y(Ke)]),_:2},1024),y(Ie,{class:"q-ma-sm"},{default:b(()=>[y(It,{modelValue:g.orderedQuantity,"onUpdate:modelValue":v=>g.orderedQuantity=v,modelModifiers:{number:!0},onChange:v=>e.quantityChanged(g),type:"number",rounded:"",outlined:"",min:"1",max:g.quantity},null,8,["modelValue","onUpdate:modelValue","onChange","max"])]),_:2},1024),y(Ie,null,{default:b(()=>[y(Ke,null,{default:b(()=>[S("strong",null,ge(e.formatCurrency(g.price*g.orderedQuantity,g.currency)),1)]),_:2},1024)]),_:2},1024),y(Ie,{side:""},{default:b(()=>[S("div",null,[y(ye,{flat:"",dense:"",round:"",icon:"delete",onClick:v=>e.removeProduct(g.stall_id,g.id)},null,8,["onClick"])])]),_:2},1024)]),_:2},1024))),128))]),_:2},1024)]),_:2},1024)]),_:2},1024),y(ut),y(wi,{align:"right"},{default:b(()=>[Te(" Total: "),S("strong",_D,ge(e.cartTotalFormatted(f)),1),y(ye,{onClick:g=>e.proceedToCheckout(f),flat:"",color:"primary"},{default:b(()=>[Te(" Proceed to Checkout ")]),_:2},1032,["onClick"])]),_:2},1024)]),_:2},1024)]))),128))])}var wD=Tn(gD,[["render",bD]]);const SD=sn({name:"ShoppingCartCheckout",props:["cart","stall","customer-pubkey","profiles"],components:{UserProfile:Za},data:function(){return{orderConfirmed:!1,paymentMethod:"ln",shippingZone:null,contactData:{email:null,npub:null,address:null,message:null},paymentOptions:[{label:"Lightning Network",value:"ln"},{label:"BTC Onchain",value:"btc"},{label:"Cashu",value:"cashu"}]}},computed:{cartTotal(){var e;return(e=this.cart.products)!=null&&e.length?this.cart.products.reduce((t,r)=>r.price+t,0):0},cartTotalWithShipping(){return this.shippingZone?this.cartTotal+this.shippingZone.cost:this.cartTotal},shippingZoneLabel(){if(!this.shippingZone)return"Shipping Zone";let e=this.shippingZone.name||this.shippingZone.id||"Shipping Zone";return e=e.substring(0,10),e.length<10?e:e+"..."}},methods:{formatCurrency:function(e,t){return formatCurrency(e,t)},selectShippingZone:function(e){this.shippingZone=e},confirmOrder:function(){if(!this.shippingZone){this.$q.notify({timeout:5e3,type:"warning",message:"Please select a shipping zone!"});return}this.orderConfirmed=!0},async placeOrder(){if(!this.shippingZone){this.$q.notify({timeout:5e3,type:"warning",message:"Please select a shipping zone!"});return}if(!this.customerPubkey){this.$emit("login-required");return}const e={address:this.contactData.address,message:this.contactData.message,contact:{nostr:this.contactData.npub,email:this.contactData.email},items:Array.from(this.cart.products,a=>({product_id:a.id,quantity:a.orderedQuantity})),shipping_id:this.shippingZone.id,type:0},t=Math.floor(Date.now()/1e3);e.id=await hash([this.customerPubkey,t,JSON.stringify(e)].join(":"));const r={...await NostrTools.getBlankEvent(),kind:4,created_at:t,tags:[["p",this.stall.pubkey]],pubkey:this.customerPubkey};this.$emit("place-order",{event:r,order:e,cartId:this.cart.id})},goToShoppingCart:function(){this.$emit("change-page","shopping-cart-list")},merchantProfile(e){var t;return(t=this.profiles)==null?void 0:t.find(r=>r.pubkey===e)}},created(){var e;((e=this.stall.shipping)==null?void 0:e.length)===1&&(this.shippingZone=this.stall.shipping[0])}}),kD={class:"row q-mt-md q-ml-md q-pr-md"},CD=S("div",{class:"col-xs-12 col-sm-12 col-md-2 q-mt-md"},[S("strong",null,"Message:")],-1),TD={class:"col-xs-12 col-sm-12 col-md-10"},MD={class:"row q-mt-md q-ml-md q-pr-md"},DD=S("div",{class:"col-xs-12 col-sm-12 col-md-2 q-mt-md"},[S("strong",null,"Address:")],-1),qD={class:"col-xs-12 col-sm-12 col-md-10"},PD={class:"row q-mt-md q-ml-md q-pr-md"},xD=S("div",{class:"col-xs-12 col-sm-12 col-md-2 q-mt-md"},[S("strong",null,"Email:")],-1),AD={class:"col-xs-12 col-sm-12 col-md-10"},ED={class:"row q-mt-md q-ml-md q-pr-md"},ID=S("div",{class:"col-xs-12 col-sm-12 col-md-2 q-mt-md"},[S("strong",null,"Npub:")],-1),$D={class:"col-xs-12 col-sm-12 col-md-10"},OD={class:"row q-mt-md"},RD=S("div",{class:"col-xs-12 col-sm-12 col-md-4"},[S("strong",null,"Subtotal:")],-1),LD={class:"col-xs-12 col-sm-12 col-md-4"},ND=S("div",{class:"col-xs-12 col-sm-12 col-md-4"},null,-1),BD={class:"row q-mt-md"},FD=S("div",{class:"col-xs-12 col-sm-12 col-md-4"},[S("strong",null,"Shipping:")],-1),UD={class:"col-xs-12 col-sm-12 col-md-4"},zD={key:0},VD={class:"col-xs-12 col-sm-12 col-md-4"},YD=["textContent"],WD=["textContent"],HD={class:"row q-mt-md"},KD=S("div",{class:"col-xs-12 col-sm-12 col-md-4"},[S("strong",null,"Total:")],-1),GD={class:"col-xs-12 col-sm-12 col-md-4"},QD=S("div",{class:"col-xs-12 col-sm-12 col-md-4"},null,-1),jD={key:0,class:"row q-mt-md"},ZD={class:"col"},JD=S("strong",null,"Payment Method",-1),XD={key:0},eq={key:1};function tq(e,t,r,a,l,s){const u=ti("user-profile");return O(),re("div",null,[e.cart&&e.stall?(O(),oe(Jt,{key:0,bordered:"",class:"q-mb-md"},{default:b(()=>[y(Vt,null,{default:b(()=>{var d;return[y(u,{pubkey:e.cart.merchant,profiles:e.profiles,description:(d=e.cart.products[0])==null?void 0:d.stallName},null,8,["pubkey","profiles","description"]),y(Ie,{side:""})]}),_:1}),y(ut),e.orderConfirmed?(O(),oe(Ne,{key:0},{default:b(()=>[S("div",kD,[CD,S("div",TD,[y(It,{modelValue:e.contactData.message,"onUpdate:modelValue":t[0]||(t[0]=d=>e.contactData.message=d),modelModifiers:{trim:!0},outlined:"",type:"textarea",rows:"3",label:"Message (optional)",hint:"Message merchant about additional order needs"},null,8,["modelValue"])])]),S("div",MD,[DD,S("div",qD,[y(It,{modelValue:e.contactData.address,"onUpdate:modelValue":t[1]||(t[1]=d=>e.contactData.address=d),modelModifiers:{trim:!0},outlined:"",type:"textarea",rows:"3",label:"Address (optional)",hint:"Must provide for physical shipping"},null,8,["modelValue"])])]),S("div",PD,[xD,S("div",AD,[y(It,{modelValue:e.contactData.email,"onUpdate:modelValue":t[2]||(t[2]=d=>e.contactData.email=d),modelModifiers:{trim:!0},type:"email",outlined:"",label:"Email (optional)",hint:"Merchant may not use email"},null,8,["modelValue"])])]),S("div",ED,[ID,S("div",$D,[y(It,{modelValue:e.contactData.npub,"onUpdate:modelValue":t[3]||(t[3]=d=>e.contactData.npub=d),modelModifiers:{trim:!0},outlined:"",label:"Alternative Npub (optional)",hint:"Use a different Npub to communicate with the merchant"},null,8,["modelValue"])])])]),_:1})):(O(),oe(Ne,{key:1,horizontal:""},{default:b(()=>[y(Ne,{class:"col-7"},{default:b(()=>[S("div",OD,[RD,S("div",LD,[S("strong",null,ge(e.formatCurrency(e.cartTotal,e.stall.currency)),1)]),ND]),S("div",BD,[FD,S("div",UD,[e.shippingZone?(O(),re("strong",zD,ge(e.formatCurrency(e.shippingZone.cost,e.stall.currency)),1)):$e("",!0)]),S("div",VD,[y(lg,{unelevated:"",color:"secondary",rounded:"",label:e.shippingZoneLabel},{default:b(()=>[(O(!0),re(Nt,null,Wt(e.stall.shipping,d=>Gn((O(),oe(Vt,{onClick:f=>e.selectShippingZone(d),key:d.id,clickable:""},{default:b(()=>[y(Ie,null,{default:b(()=>[y(Ke,null,{default:b(()=>[S("span",{textContent:ge(d.name)},null,8,YD)]),_:2},1024),y(Ke,{caption:""},{default:b(()=>{var f;return[S("span",{textContent:ge((f=d.countries)==null?void 0:f.join(", "))},null,8,WD)]}),_:2},1024)]),_:2},1024)]),_:2},1032,["onClick"])),[[Gi]])),128))]),_:1},8,["label"])])]),y(ut,{class:"q-mt-sm"}),S("div",HD,[KD,S("div",GD,[S("strong",null,ge(e.formatCurrency(e.cartTotalWithShipping,e.stall.currency)),1)]),QD]),e.shippingZone?(O(),re("div",jD,[S("div",ZD,[y(Cn,{color:"secondary"},{default:b(()=>[Te(" Additional per product shipping costs might apply.")]),_:1})])])):$e("",!0)]),_:1}),y(ut,{vertical:""}),y(Ne,null,{default:b(()=>[JD,y(nw,{modelValue:e.paymentMethod,"onUpdate:modelValue":t[4]||(t[4]=d=>e.paymentMethod=d),options:e.paymentOptions,color:"green",disable:""},null,8,["modelValue","options"])]),_:1})]),_:1})),y(ut),y(wi,{align:"right"},{default:b(()=>[e.orderConfirmed?(O(),re("div",XD,[y(ye,{onClick:t[5]||(t[5]=d=>e.orderConfirmed=!1),flat:"",color:"grey"},{default:b(()=>[Te(" Back ")]),_:1}),y(ye,{onClick:t[6]||(t[6]=d=>e.placeOrder()),flat:"",color:"primary"},{default:b(()=>[Te(" Place Order ")]),_:1})])):(O(),re("div",eq,[y(ye,{onClick:e.goToShoppingCart,flat:"",color:"grey"},{default:b(()=>[Te(" Back ")]),_:1},8,["onClick"]),y(ye,{onClick:e.confirmOrder,flat:"",color:"primary"},{default:b(()=>[Te(" Confirm ")]),_:1},8,["onClick"])]))]),_:1})]),_:1})):$e("",!0)])}var nq=Tn(SD,[["render",tq]]);const{passive:mi}=ta;var rq=Je({name:"QInfiniteScroll",props:{offset:{type:Number,default:500},debounce:{type:[String,Number],default:100},scrollTarget:{default:void 0},initialIndex:Number,disable:Boolean,reverse:Boolean},emits:["load"],setup(e,{slots:t,emit:r}){const a=se(!1),l=se(!0),s=se(null),u=se(null);let d=e.initialIndex||0,f,g;const v=$(()=>"q-infinite-scroll__loading"+(a.value===!0?"":" invisible"));function C(){if(e.disable===!0||a.value===!0||l.value===!1)return;const V=Xl(f),H=gu(f),pe=oh(f);e.reverse===!1?Math.round(H+pe+e.offset)>=Math.round(V)&&M():Math.round(H)<=e.offset&&M()}function M(){if(e.disable===!0||a.value===!0||l.value===!1)return;d++,a.value=!0;const V=Xl(f);r("load",d,H=>{l.value===!0&&(a.value=!1,Sn(()=>{if(e.reverse===!0){const pe=Xl(f),_e=gu(f),xe=pe-V;La(f,_e+xe)}H===!0?I():s.value&&s.value.closest("body")&&g()}))})}function _(){d=0}function x(){l.value===!1&&(l.value=!0,f.addEventListener("scroll",g,mi)),C()}function I(){l.value===!0&&(l.value=!1,a.value=!1,f.removeEventListener("scroll",g,mi),g!==void 0&&g.cancel!==void 0&&g.cancel())}function L(){if(f&&l.value===!0&&f.removeEventListener("scroll",g,mi),f=xo(s.value,e.scrollTarget),l.value===!0){if(f.addEventListener("scroll",g,mi),e.reverse===!0){const V=Xl(f),H=oh(f);La(f,V-H)}C()}}function F(V){d=V}function Y(V){V=parseInt(V,10);const H=g;g=V<=0?C:ec(C,isNaN(V)===!0?100:V),f&&l.value===!0&&(H!==void 0&&f.removeEventListener("scroll",H,mi),f.addEventListener("scroll",g,mi))}function D(V){if(A.value===!0){if(u.value===null){V!==!0&&Sn(()=>{D(!0)});return}const H=`${a.value===!0?"un":""}pauseAnimations`;Array.from(u.value.getElementsByTagName("svg")).forEach(pe=>{pe[H]()})}}const A=$(()=>e.disable!==!0&&l.value===!0);Ve([a,A],()=>{D()}),Ve(()=>e.disable,V=>{V===!0?I():x()}),Ve(()=>e.reverse,()=>{a.value===!1&&l.value===!0&&C()}),Ve(()=>e.scrollTarget,L),Ve(()=>e.debounce,Y);let N=!1;sa(()=>{N!==!1&&f&&La(f,N)}),oa(()=>{N=f?gu(f):!1}),Ht(()=>{l.value===!0&&f.removeEventListener("scroll",g,mi)}),ni(()=>{Y(e.debounce),L(),a.value===!1&&D()});const J=Dt();return Object.assign(J.proxy,{poll:()=>{g!==void 0&&g()},trigger:M,stop:I,reset:_,resume:x,setIndex:F}),()=>{const V=Nh(t.default,[]);return A.value===!0&&V[e.reverse===!1?"push":"unshift"](E("div",{ref:u,class:v.value},Mt(t.loading))),E("div",{class:"q-infinite-scroll",ref:s},V)}}}),Hu={exports:{}};/** - * @license - * Lodash - * Copyright OpenJS Foundation and other contributors - * Released under MIT license - * Based on Underscore.js 1.8.3 - * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors - */(function(e,t){(function(){var r,a="4.17.21",l=200,s="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",u="Expected a function",d="Invalid `variable` option passed into `_.template`",f="__lodash_hash_undefined__",g=500,v="__lodash_placeholder__",C=1,M=2,_=4,x=1,I=2,L=1,F=2,Y=4,D=8,A=16,N=32,J=64,V=128,H=256,pe=512,_e=30,xe="...",lt=800,te=16,Pe=1,Be=2,j=3,G=1/0,me=9007199254740991,rt=17976931348623157e292,X=0/0,Z=4294967295,he=Z-1,fe=Z>>>1,Ge=[["ary",V],["bind",L],["bindKey",F],["curry",D],["curryRight",A],["flip",pe],["partial",N],["partialRight",J],["rearg",H]],ze="[object Arguments]",we="[object Array]",Me="[object AsyncFunction]",ft="[object Boolean]",ee="[object Date]",wt="[object DOMException]",nn="[object Error]",un="[object Function]",rn="[object GeneratorFunction]",qt="[object Map]",Kt="[object Number]",Xn="[object Null]",Gt="[object Object]",Fn="[object Promise]",$r="[object Proxy]",St="[object RegExp]",K="[object Set]",de="[object String]",qe="[object Symbol]",gt="[object Undefined]",it="[object WeakMap]",Ze="[object WeakSet]",Fe="[object ArrayBuffer]",mt="[object DataView]",Pt="[object Float32Array]",cn="[object Float64Array]",er="[object Int8Array]",ii="[object Int16Array]",Un="[object Int32Array]",Qt="[object Uint8Array]",Ci="[object Uint8ClampedArray]",Ti="[object Uint16Array]",Mi="[object Uint32Array]",nl=/\b__p \+= '';/g,rl=/\b(__p \+=) '' \+/g,il=/(__e\(.*?\)|\b__t\)) \+\n'';/g,al=/&(?:amp|lt|gt|quot|#39);/g,ll=/[&<>"']/g,ol=RegExp(al.source),Go=RegExp(ll.source),sl=/<%-([\s\S]+?)%>/g,Di=/<%([\s\S]+?)%>/g,Or=/<%=([\s\S]+?)%>/g,Rr=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Qo=/^\w*$/,jo=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,da=/[\\^$.*+?()[\]{}|]/g,Zo=RegExp(da.source),fa=/^\s+/,Jo=/\s/,Xo=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,es=/\{\n\/\* \[wrapped with (.+)\] \*/,ts=/,? & /,Lr=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Nr=/[()=,{}\[\]\/\s]/,fr=/\\(\\)?/g,Br=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,qi=/\w*$/,ns=/^[-+]0x[0-9a-f]+$/i,ul=/^0b[01]+$/i,cl=/^\[object .+?Constructor\]$/,dl=/^0o[0-7]+$/i,fl=/^(?:0|[1-9]\d*)$/,T=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,le=/($^)/,ie=/['\n\r\u2028\u2029\\]/g,De="\\ud800-\\udfff",st="\\u0300-\\u036f",tt="\\ufe20-\\ufe2f",kt="\\u20d0-\\u20ff",Bt=st+tt+kt,Pi="\\u2700-\\u27bf",$c="a-z\\xdf-\\xf6\\xf8-\\xff",Mm="\\xac\\xb1\\xd7\\xf7",Dm="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",qm="\\u2000-\\u206f",Pm=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Oc="A-Z\\xc0-\\xd6\\xd8-\\xde",Rc="\\ufe0e\\ufe0f",Lc=Mm+Dm+qm+Pm,rs="['\u2019]",xm="["+De+"]",Nc="["+Lc+"]",hl="["+Bt+"]",Bc="\\d+",Am="["+Pi+"]",Fc="["+$c+"]",Uc="[^"+De+Lc+Bc+Pi+$c+Oc+"]",is="\\ud83c[\\udffb-\\udfff]",Em="(?:"+hl+"|"+is+")",zc="[^"+De+"]",as="(?:\\ud83c[\\udde6-\\uddff]){2}",ls="[\\ud800-\\udbff][\\udc00-\\udfff]",xi="["+Oc+"]",Vc="\\u200d",Yc="(?:"+Fc+"|"+Uc+")",Im="(?:"+xi+"|"+Uc+")",Wc="(?:"+rs+"(?:d|ll|m|re|s|t|ve))?",Hc="(?:"+rs+"(?:D|LL|M|RE|S|T|VE))?",Kc=Em+"?",Gc="["+Rc+"]?",$m="(?:"+Vc+"(?:"+[zc,as,ls].join("|")+")"+Gc+Kc+")*",Om="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Rm="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Qc=Gc+Kc+$m,Lm="(?:"+[Am,as,ls].join("|")+")"+Qc,Nm="(?:"+[zc+hl+"?",hl,as,ls,xm].join("|")+")",Bm=RegExp(rs,"g"),Fm=RegExp(hl,"g"),os=RegExp(is+"(?="+is+")|"+Nm+Qc,"g"),Um=RegExp([xi+"?"+Fc+"+"+Wc+"(?="+[Nc,xi,"$"].join("|")+")",Im+"+"+Hc+"(?="+[Nc,xi+Yc,"$"].join("|")+")",xi+"?"+Yc+"+"+Wc,xi+"+"+Hc,Rm,Om,Bc,Lm].join("|"),"g"),zm=RegExp("["+Vc+De+Bt+Rc+"]"),Vm=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Ym=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Wm=-1,vt={};vt[Pt]=vt[cn]=vt[er]=vt[ii]=vt[Un]=vt[Qt]=vt[Ci]=vt[Ti]=vt[Mi]=!0,vt[ze]=vt[we]=vt[Fe]=vt[ft]=vt[mt]=vt[ee]=vt[nn]=vt[un]=vt[qt]=vt[Kt]=vt[Gt]=vt[St]=vt[K]=vt[de]=vt[it]=!1;var ht={};ht[ze]=ht[we]=ht[Fe]=ht[mt]=ht[ft]=ht[ee]=ht[Pt]=ht[cn]=ht[er]=ht[ii]=ht[Un]=ht[qt]=ht[Kt]=ht[Gt]=ht[St]=ht[K]=ht[de]=ht[qe]=ht[Qt]=ht[Ci]=ht[Ti]=ht[Mi]=!0,ht[nn]=ht[un]=ht[it]=!1;var Hm={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},Km={"&":"&","<":"<",">":">",'"':""","'":"'"},Gm={"&":"&","<":"<",">":">",""":'"',"'":"'"},Qm={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},jm=parseFloat,Zm=parseInt,jc=typeof Pa=="object"&&Pa&&Pa.Object===Object&&Pa,Jm=typeof self=="object"&&self&&self.Object===Object&&self,Ut=jc||Jm||Function("return this")(),ss=t&&!t.nodeType&&t,ai=ss&&!0&&e&&!e.nodeType&&e,Zc=ai&&ai.exports===ss,us=Zc&&jc.process,qn=function(){try{var q=ai&&ai.require&&ai.require("util").types;return q||us&&us.binding&&us.binding("util")}catch{}}(),Jc=qn&&qn.isArrayBuffer,Xc=qn&&qn.isDate,ed=qn&&qn.isMap,td=qn&&qn.isRegExp,nd=qn&&qn.isSet,rd=qn&&qn.isTypedArray;function vn(q,B,R){switch(R.length){case 0:return q.call(B);case 1:return q.call(B,R[0]);case 2:return q.call(B,R[0],R[1]);case 3:return q.call(B,R[0],R[1],R[2])}return q.apply(B,R)}function Xm(q,B,R,ue){for(var Ae=-1,nt=q==null?0:q.length;++Ae-1}function cs(q,B,R){for(var ue=-1,Ae=q==null?0:q.length;++ue-1;);return R}function dd(q,B){for(var R=q.length;R--&&Ai(B,q[R],0)>-1;);return R}function sv(q,B){for(var R=q.length,ue=0;R--;)q[R]===B&&++ue;return ue}var uv=gs(Hm),cv=gs(Km);function dv(q){return"\\"+Qm[q]}function fv(q,B){return q==null?r:q[B]}function Ei(q){return zm.test(q)}function hv(q){return Vm.test(q)}function gv(q){for(var B,R=[];!(B=q.next()).done;)R.push(B.value);return R}function ys(q){var B=-1,R=Array(q.size);return q.forEach(function(ue,Ae){R[++B]=[Ae,ue]}),R}function fd(q,B){return function(R){return q(B(R))}}function zr(q,B){for(var R=-1,ue=q.length,Ae=0,nt=[];++R-1}function tp(n,i){var o=this.__data__,c=Al(o,n);return c<0?(++this.size,o.push([n,i])):o[c][1]=i,this}hr.prototype.clear=Zv,hr.prototype.delete=Jv,hr.prototype.get=Xv,hr.prototype.has=ep,hr.prototype.set=tp;function gr(n){var i=-1,o=n==null?0:n.length;for(this.clear();++i=i?n:i)),n}function En(n,i,o,c,h,p){var w,k=i&C,P=i&M,U=i&_;if(o&&(w=h?o(n,c,h,p):o(n)),w!==r)return w;if(!Ct(n))return n;var z=Ee(n);if(z){if(w=a0(n),!k)return dn(n,w)}else{var W=Zt(n),ne=W==un||W==rn;if(Gr(n))return Gd(n,k);if(W==Gt||W==ze||ne&&!h){if(w=P||ne?{}:gf(n),!k)return P?Gp(n,pp(w,n)):Kp(n,Cd(w,n))}else{if(!ht[W])return h?n:{};w=l0(n,W,k)}}p||(p=new Vn);var ve=p.get(n);if(ve)return ve;p.set(n,w),Vf(n)?n.forEach(function(Ce){w.add(En(Ce,i,o,Ce,n,p))}):Uf(n)&&n.forEach(function(Ce,We){w.set(We,En(Ce,i,o,We,n,p))});var ke=U?P?Ys:Vs:P?hn:Ft,Le=z?r:ke(n);return Pn(Le||n,function(Ce,We){Le&&(We=Ce,Ce=n[We]),_a(w,We,En(Ce,i,o,We,n,p))}),w}function yp(n){var i=Ft(n);return function(o){return Td(o,n,i)}}function Td(n,i,o){var c=o.length;if(n==null)return!c;for(n=dt(n);c--;){var h=o[c],p=i[h],w=n[h];if(w===r&&!(h in n)||!p(w))return!1}return!0}function Md(n,i,o){if(typeof n!="function")throw new xn(u);return Ma(function(){n.apply(r,o)},i)}function ba(n,i,o,c){var h=-1,p=gl,w=!0,k=n.length,P=[],U=i.length;if(!k)return P;o&&(i=_t(i,pn(o))),c?(p=cs,w=!1):i.length>=l&&(p=ha,w=!1,i=new si(i));e:for(;++hh?0:h+o),c=c===r||c>h?h:Oe(c),c<0&&(c+=h),c=o>c?0:Wf(c);o0&&o(k)?i>1?zt(k,i-1,o,c,h):Ur(h,k):c||(h[h.length]=k)}return h}var Ts=ef(),Pd=ef(!0);function tr(n,i){return n&&Ts(n,i,Ft)}function Ms(n,i){return n&&Pd(n,i,Ft)}function Il(n,i){return Fr(i,function(o){return _r(n[o])})}function ci(n,i){i=Hr(i,n);for(var o=0,c=i.length;n!=null&&oi}function wp(n,i){return n!=null&&ot.call(n,i)}function Sp(n,i){return n!=null&&i in dt(n)}function kp(n,i,o){return n>=jt(i,o)&&n=120&&z.length>=120)?new si(w&&z):r}z=n[0];var W=-1,ne=k[0];e:for(;++W-1;)k!==n&&Cl.call(k,P,1),Cl.call(n,P,1);return n}function Fd(n,i){for(var o=n?i.length:0,c=o-1;o--;){var h=i[o];if(o==c||h!==p){var p=h;yr(h)?Cl.call(n,h,1):Rs(n,h)}}return n}function Is(n,i){return n+Dl(bd()*(i-n+1))}function Rp(n,i,o,c){for(var h=-1,p=Ot(Ml((i-n)/(o||1)),0),w=R(p);p--;)w[c?p:++h]=n,n+=o;return w}function $s(n,i){var o="";if(!n||i<1||i>me)return o;do i%2&&(o+=n),i=Dl(i/2),i&&(n+=n);while(i);return o}function Ue(n,i){return Zs(pf(n,i,gn),n+"")}function Lp(n){return kd(Vi(n))}function Np(n,i){var o=Vi(n);return Yl(o,ui(i,0,o.length))}function ka(n,i,o,c){if(!Ct(n))return n;i=Hr(i,n);for(var h=-1,p=i.length,w=p-1,k=n;k!=null&&++hh?0:h+i),o=o>h?h:o,o<0&&(o+=h),h=i>o?0:o-i>>>0,i>>>=0;for(var p=R(h);++c>>1,w=n[p];w!==null&&!_n(w)&&(o?w<=i:w=l){var U=i?null:Jp(n);if(U)return vl(U);w=!1,h=ha,P=new si}else P=i?[]:k;e:for(;++c=c?n:In(n,i,o)}var Kd=Pv||function(n){return Ut.clearTimeout(n)};function Gd(n,i){if(i)return n.slice();var o=n.length,c=md?md(o):new n.constructor(o);return n.copy(c),c}function Fs(n){var i=new n.constructor(n.byteLength);return new Sl(i).set(new Sl(n)),i}function Vp(n,i){var o=i?Fs(n.buffer):n.buffer;return new n.constructor(o,n.byteOffset,n.byteLength)}function Yp(n){var i=new n.constructor(n.source,qi.exec(n));return i.lastIndex=n.lastIndex,i}function Wp(n){return ya?dt(ya.call(n)):{}}function Qd(n,i){var o=i?Fs(n.buffer):n.buffer;return new n.constructor(o,n.byteOffset,n.length)}function jd(n,i){if(n!==i){var o=n!==r,c=n===null,h=n===n,p=_n(n),w=i!==r,k=i===null,P=i===i,U=_n(i);if(!k&&!U&&!p&&n>i||p&&w&&P&&!k&&!U||c&&w&&P||!o&&P||!h)return 1;if(!c&&!p&&!U&&n=k)return P;var U=o[c];return P*(U=="desc"?-1:1)}}return n.index-i.index}function Zd(n,i,o,c){for(var h=-1,p=n.length,w=o.length,k=-1,P=i.length,U=Ot(p-w,0),z=R(P+U),W=!c;++k1?o[h-1]:r,w=h>2?o[2]:r;for(p=n.length>3&&typeof p=="function"?(h--,p):r,w&&ln(o[0],o[1],w)&&(p=h<3?r:p,h=1),i=dt(i);++c-1?h[p?i[w]:w]:r}}function rf(n){return pr(function(i){var o=i.length,c=o,h=An.prototype.thru;for(n&&i.reverse();c--;){var p=i[c];if(typeof p!="function")throw new xn(u);if(h&&!w&&zl(p)=="wrapper")var w=new An([],!0)}for(c=w?c:o;++c1&&Qe.reverse(),z&&Pk))return!1;var U=p.get(n),z=p.get(i);if(U&&z)return U==i&&z==n;var W=-1,ne=!0,ve=o&I?new si:r;for(p.set(n,i),p.set(i,n);++W1?"& ":"")+i[c],i=i.join(o>2?", ":" "),n.replace(Xo,`{ -/* [wrapped with `+i+`] */ -`)}function s0(n){return Ee(n)||hi(n)||!!(yd&&n&&n[yd])}function yr(n,i){var o=typeof n;return i=i==null?me:i,!!i&&(o=="number"||o!="symbol"&&fl.test(n))&&n>-1&&n%1==0&&n0){if(++i>=lt)return arguments[0]}else i=0;return n.apply(r,arguments)}}function Yl(n,i){var o=-1,c=n.length,h=c-1;for(i=i===r?c:i;++o1?n[i-1]:r;return o=typeof o=="function"?(n.pop(),o):r,Pf(n,o)});function xf(n){var i=m(n);return i.__chain__=!0,i}function _y(n,i){return i(n),n}function Wl(n,i){return i(n)}var by=pr(function(n){var i=n.length,o=i?n[0]:0,c=this.__wrapped__,h=function(p){return Cs(p,n)};return i>1||this.__actions__.length||!(c instanceof He)||!yr(o)?this.thru(h):(c=c.slice(o,+o+(i?1:0)),c.__actions__.push({func:Wl,args:[h],thisArg:r}),new An(c,this.__chain__).thru(function(p){return i&&!p.length&&p.push(r),p}))});function wy(){return xf(this)}function Sy(){return new An(this.value(),this.__chain__)}function ky(){this.__values__===r&&(this.__values__=Yf(this.value()));var n=this.__index__>=this.__values__.length,i=n?r:this.__values__[this.__index__++];return{done:n,value:i}}function Cy(){return this}function Ty(n){for(var i,o=this;o instanceof xl;){var c=kf(o);c.__index__=0,c.__values__=r,i?h.__wrapped__=c:i=c;var h=c;o=o.__wrapped__}return h.__wrapped__=n,i}function My(){var n=this.__wrapped__;if(n instanceof He){var i=n;return this.__actions__.length&&(i=new He(this)),i=i.reverse(),i.__actions__.push({func:Wl,args:[Js],thisArg:r}),new An(i,this.__chain__)}return this.thru(Js)}function Dy(){return Wd(this.__wrapped__,this.__actions__)}var qy=Ll(function(n,i,o){ot.call(n,o)?++n[o]:mr(n,o,1)});function Py(n,i,o){var c=Ee(n)?id:_p;return o&&ln(n,i,o)&&(i=r),c(n,Se(i,3))}function xy(n,i){var o=Ee(n)?Fr:qd;return o(n,Se(i,3))}var Ay=nf(Cf),Ey=nf(Tf);function Iy(n,i){return zt(Hl(n,i),1)}function $y(n,i){return zt(Hl(n,i),G)}function Oy(n,i,o){return o=o===r?1:Oe(o),zt(Hl(n,i),o)}function Af(n,i){var o=Ee(n)?Pn:Yr;return o(n,Se(i,3))}function Ef(n,i){var o=Ee(n)?ev:Dd;return o(n,Se(i,3))}var Ry=Ll(function(n,i,o){ot.call(n,o)?n[o].push(i):mr(n,o,[i])});function Ly(n,i,o,c){n=fn(n)?n:Vi(n),o=o&&!c?Oe(o):0;var h=n.length;return o<0&&(o=Ot(h+o,0)),Zl(n)?o<=h&&n.indexOf(i,o)>-1:!!h&&Ai(n,i,o)>-1}var Ny=Ue(function(n,i,o){var c=-1,h=typeof i=="function",p=fn(n)?R(n.length):[];return Yr(n,function(w){p[++c]=h?vn(i,w,o):wa(w,i,o)}),p}),By=Ll(function(n,i,o){mr(n,o,i)});function Hl(n,i){var o=Ee(n)?_t:$d;return o(n,Se(i,3))}function Fy(n,i,o,c){return n==null?[]:(Ee(i)||(i=i==null?[]:[i]),o=c?r:o,Ee(o)||(o=o==null?[]:[o]),Nd(n,i,o))}var Uy=Ll(function(n,i,o){n[o?0:1].push(i)},function(){return[[],[]]});function zy(n,i,o){var c=Ee(n)?ds:sd,h=arguments.length<3;return c(n,Se(i,4),o,h,Yr)}function Vy(n,i,o){var c=Ee(n)?tv:sd,h=arguments.length<3;return c(n,Se(i,4),o,h,Dd)}function Yy(n,i){var o=Ee(n)?Fr:qd;return o(n,Ql(Se(i,3)))}function Wy(n){var i=Ee(n)?kd:Lp;return i(n)}function Hy(n,i,o){(o?ln(n,i,o):i===r)?i=1:i=Oe(i);var c=Ee(n)?gp:Np;return c(n,i)}function Ky(n){var i=Ee(n)?mp:Fp;return i(n)}function Gy(n){if(n==null)return 0;if(fn(n))return Zl(n)?Ii(n):n.length;var i=Zt(n);return i==qt||i==K?n.size:xs(n).length}function Qy(n,i,o){var c=Ee(n)?fs:Up;return o&&ln(n,i,o)&&(i=r),c(n,Se(i,3))}var jy=Ue(function(n,i){if(n==null)return[];var o=i.length;return o>1&&ln(n,i[0],i[1])?i=[]:o>2&&ln(i[0],i[1],i[2])&&(i=[i[0]]),Nd(n,zt(i,1),[])}),Kl=xv||function(){return Ut.Date.now()};function Zy(n,i){if(typeof i!="function")throw new xn(u);return n=Oe(n),function(){if(--n<1)return i.apply(this,arguments)}}function If(n,i,o){return i=o?r:i,i=n&&i==null?n.length:i,vr(n,V,r,r,r,r,i)}function $f(n,i){var o;if(typeof i!="function")throw new xn(u);return n=Oe(n),function(){return--n>0&&(o=i.apply(this,arguments)),n<=1&&(i=r),o}}var eu=Ue(function(n,i,o){var c=L;if(o.length){var h=zr(o,Ui(eu));c|=N}return vr(n,c,i,o,h)}),Of=Ue(function(n,i,o){var c=L|F;if(o.length){var h=zr(o,Ui(Of));c|=N}return vr(i,c,n,o,h)});function Rf(n,i,o){i=o?r:i;var c=vr(n,D,r,r,r,r,r,i);return c.placeholder=Rf.placeholder,c}function Lf(n,i,o){i=o?r:i;var c=vr(n,A,r,r,r,r,r,i);return c.placeholder=Lf.placeholder,c}function Nf(n,i,o){var c,h,p,w,k,P,U=0,z=!1,W=!1,ne=!0;if(typeof n!="function")throw new xn(u);i=On(i)||0,Ct(o)&&(z=!!o.leading,W="maxWait"in o,p=W?Ot(On(o.maxWait)||0,i):p,ne="trailing"in o?!!o.trailing:ne);function ve(At){var Wn=c,wr=h;return c=h=r,U=At,w=n.apply(wr,Wn),w}function ke(At){return U=At,k=Ma(We,i),z?ve(At):w}function Le(At){var Wn=At-P,wr=At-U,rh=i-Wn;return W?jt(rh,p-wr):rh}function Ce(At){var Wn=At-P,wr=At-U;return P===r||Wn>=i||Wn<0||W&&wr>=p}function We(){var At=Kl();if(Ce(At))return Qe(At);k=Ma(We,Le(At))}function Qe(At){return k=r,ne&&c?ve(At):(c=h=r,w)}function bn(){k!==r&&Kd(k),U=0,c=P=h=k=r}function on(){return k===r?w:Qe(Kl())}function wn(){var At=Kl(),Wn=Ce(At);if(c=arguments,h=this,P=At,Wn){if(k===r)return ke(P);if(W)return Kd(k),k=Ma(We,i),ve(P)}return k===r&&(k=Ma(We,i)),w}return wn.cancel=bn,wn.flush=on,wn}var Jy=Ue(function(n,i){return Md(n,1,i)}),Xy=Ue(function(n,i,o){return Md(n,On(i)||0,o)});function e1(n){return vr(n,pe)}function Gl(n,i){if(typeof n!="function"||i!=null&&typeof i!="function")throw new xn(u);var o=function(){var c=arguments,h=i?i.apply(this,c):c[0],p=o.cache;if(p.has(h))return p.get(h);var w=n.apply(this,c);return o.cache=p.set(h,w)||p,w};return o.cache=new(Gl.Cache||gr),o}Gl.Cache=gr;function Ql(n){if(typeof n!="function")throw new xn(u);return function(){var i=arguments;switch(i.length){case 0:return!n.call(this);case 1:return!n.call(this,i[0]);case 2:return!n.call(this,i[0],i[1]);case 3:return!n.call(this,i[0],i[1],i[2])}return!n.apply(this,i)}}function t1(n){return $f(2,n)}var n1=zp(function(n,i){i=i.length==1&&Ee(i[0])?_t(i[0],pn(Se())):_t(zt(i,1),pn(Se()));var o=i.length;return Ue(function(c){for(var h=-1,p=jt(c.length,o);++h=i}),hi=Ad(function(){return arguments}())?Ad:function(n){return Tt(n)&&ot.call(n,"callee")&&!pd.call(n,"callee")},Ee=R.isArray,p1=Jc?pn(Jc):Tp;function fn(n){return n!=null&&jl(n.length)&&!_r(n)}function xt(n){return Tt(n)&&fn(n)}function y1(n){return n===!0||n===!1||Tt(n)&&an(n)==ft}var Gr=Ev||fu,_1=Xc?pn(Xc):Mp;function b1(n){return Tt(n)&&n.nodeType===1&&!Da(n)}function w1(n){if(n==null)return!0;if(fn(n)&&(Ee(n)||typeof n=="string"||typeof n.splice=="function"||Gr(n)||zi(n)||hi(n)))return!n.length;var i=Zt(n);if(i==qt||i==K)return!n.size;if(Ta(n))return!xs(n).length;for(var o in n)if(ot.call(n,o))return!1;return!0}function S1(n,i){return Sa(n,i)}function k1(n,i,o){o=typeof o=="function"?o:r;var c=o?o(n,i):r;return c===r?Sa(n,i,r,o):!!c}function nu(n){if(!Tt(n))return!1;var i=an(n);return i==nn||i==wt||typeof n.message=="string"&&typeof n.name=="string"&&!Da(n)}function C1(n){return typeof n=="number"&&_d(n)}function _r(n){if(!Ct(n))return!1;var i=an(n);return i==un||i==rn||i==Me||i==$r}function Ff(n){return typeof n=="number"&&n==Oe(n)}function jl(n){return typeof n=="number"&&n>-1&&n%1==0&&n<=me}function Ct(n){var i=typeof n;return n!=null&&(i=="object"||i=="function")}function Tt(n){return n!=null&&typeof n=="object"}var Uf=ed?pn(ed):qp;function T1(n,i){return n===i||Ps(n,i,Hs(i))}function M1(n,i,o){return o=typeof o=="function"?o:r,Ps(n,i,Hs(i),o)}function D1(n){return zf(n)&&n!=+n}function q1(n){if(d0(n))throw new Ae(s);return Ed(n)}function P1(n){return n===null}function x1(n){return n==null}function zf(n){return typeof n=="number"||Tt(n)&&an(n)==Kt}function Da(n){if(!Tt(n)||an(n)!=Gt)return!1;var i=kl(n);if(i===null)return!0;var o=ot.call(i,"constructor")&&i.constructor;return typeof o=="function"&&o instanceof o&&_l.call(o)==Mv}var ru=td?pn(td):Pp;function A1(n){return Ff(n)&&n>=-me&&n<=me}var Vf=nd?pn(nd):xp;function Zl(n){return typeof n=="string"||!Ee(n)&&Tt(n)&&an(n)==de}function _n(n){return typeof n=="symbol"||Tt(n)&&an(n)==qe}var zi=rd?pn(rd):Ap;function E1(n){return n===r}function I1(n){return Tt(n)&&Zt(n)==it}function $1(n){return Tt(n)&&an(n)==Ze}var O1=Ul(As),R1=Ul(function(n,i){return n<=i});function Yf(n){if(!n)return[];if(fn(n))return Zl(n)?zn(n):dn(n);if(ga&&n[ga])return gv(n[ga]());var i=Zt(n),o=i==qt?ys:i==K?vl:Vi;return o(n)}function br(n){if(!n)return n===0?n:0;if(n=On(n),n===G||n===-G){var i=n<0?-1:1;return i*rt}return n===n?n:0}function Oe(n){var i=br(n),o=i%1;return i===i?o?i-o:i:0}function Wf(n){return n?ui(Oe(n),0,Z):0}function On(n){if(typeof n=="number")return n;if(_n(n))return X;if(Ct(n)){var i=typeof n.valueOf=="function"?n.valueOf():n;n=Ct(i)?i+"":i}if(typeof n!="string")return n===0?n:+n;n=ud(n);var o=ul.test(n);return o||dl.test(n)?Zm(n.slice(2),o?2:8):ns.test(n)?X:+n}function Hf(n){return nr(n,hn(n))}function L1(n){return n?ui(Oe(n),-me,me):n===0?n:0}function at(n){return n==null?"":yn(n)}var N1=Bi(function(n,i){if(Ta(i)||fn(i)){nr(i,Ft(i),n);return}for(var o in i)ot.call(i,o)&&_a(n,o,i[o])}),Kf=Bi(function(n,i){nr(i,hn(i),n)}),Jl=Bi(function(n,i,o,c){nr(i,hn(i),n,c)}),B1=Bi(function(n,i,o,c){nr(i,Ft(i),n,c)}),F1=pr(Cs);function U1(n,i){var o=Ni(n);return i==null?o:Cd(o,i)}var z1=Ue(function(n,i){n=dt(n);var o=-1,c=i.length,h=c>2?i[2]:r;for(h&&ln(i[0],i[1],h)&&(c=1);++o1),p}),nr(n,Ys(n),o),c&&(o=En(o,C|M|_,Xp));for(var h=i.length;h--;)Rs(o,i[h]);return o});function l_(n,i){return Qf(n,Ql(Se(i)))}var o_=pr(function(n,i){return n==null?{}:$p(n,i)});function Qf(n,i){if(n==null)return{};var o=_t(Ys(n),function(c){return[c]});return i=Se(i),Bd(n,o,function(c,h){return i(c,h[0])})}function s_(n,i,o){i=Hr(i,n);var c=-1,h=i.length;for(h||(h=1,n=r);++ci){var c=n;n=i,i=c}if(o||n%1||i%1){var h=bd();return jt(n+h*(i-n+jm("1e-"+((h+"").length-1))),i)}return Is(n,i)}var __=Fi(function(n,i,o){return i=i.toLowerCase(),n+(o?Jf(i):i)});function Jf(n){return lu(at(n).toLowerCase())}function Xf(n){return n=at(n),n&&n.replace(T,uv).replace(Fm,"")}function b_(n,i,o){n=at(n),i=yn(i);var c=n.length;o=o===r?c:ui(Oe(o),0,c);var h=o;return o-=i.length,o>=0&&n.slice(o,h)==i}function w_(n){return n=at(n),n&&Go.test(n)?n.replace(ll,cv):n}function S_(n){return n=at(n),n&&Zo.test(n)?n.replace(da,"\\$&"):n}var k_=Fi(function(n,i,o){return n+(o?"-":"")+i.toLowerCase()}),C_=Fi(function(n,i,o){return n+(o?" ":"")+i.toLowerCase()}),T_=tf("toLowerCase");function M_(n,i,o){n=at(n),i=Oe(i);var c=i?Ii(n):0;if(!i||c>=i)return n;var h=(i-c)/2;return Fl(Dl(h),o)+n+Fl(Ml(h),o)}function D_(n,i,o){n=at(n),i=Oe(i);var c=i?Ii(n):0;return i&&c>>0,o?(n=at(n),n&&(typeof i=="string"||i!=null&&!ru(i))&&(i=yn(i),!i&&Ei(n))?Kr(zn(n),0,o):n.split(i,o)):[]}var $_=Fi(function(n,i,o){return n+(o?" ":"")+lu(i)});function O_(n,i,o){return n=at(n),o=o==null?0:ui(Oe(o),0,n.length),i=yn(i),n.slice(o,o+i.length)==i}function R_(n,i,o){var c=m.templateSettings;o&&ln(n,i,o)&&(i=r),n=at(n),i=Jl({},i,c,uf);var h=Jl({},i.imports,c.imports,uf),p=Ft(h),w=ps(h,p),k,P,U=0,z=i.interpolate||le,W="__p += '",ne=_s((i.escape||le).source+"|"+z.source+"|"+(z===Or?Br:le).source+"|"+(i.evaluate||le).source+"|$","g"),ve="//# sourceURL="+(ot.call(i,"sourceURL")?(i.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Wm+"]")+` -`;n.replace(ne,function(Ce,We,Qe,bn,on,wn){return Qe||(Qe=bn),W+=n.slice(U,wn).replace(ie,dv),We&&(k=!0,W+=`' + -__e(`+We+`) + -'`),on&&(P=!0,W+=`'; -`+on+`; -__p += '`),Qe&&(W+=`' + -((__t = (`+Qe+`)) == null ? '' : __t) + -'`),U=wn+Ce.length,Ce}),W+=`'; -`;var ke=ot.call(i,"variable")&&i.variable;if(!ke)W=`with (obj) { -`+W+` -} -`;else if(Nr.test(ke))throw new Ae(d);W=(P?W.replace(nl,""):W).replace(rl,"$1").replace(il,"$1;"),W="function("+(ke||"obj")+`) { -`+(ke?"":`obj || (obj = {}); -`)+"var __t, __p = ''"+(k?", __e = _.escape":"")+(P?`, __j = Array.prototype.join; -function print() { __p += __j.call(arguments, '') } -`:`; -`)+W+`return __p -}`;var Le=th(function(){return nt(p,ve+"return "+W).apply(r,w)});if(Le.source=W,nu(Le))throw Le;return Le}function L_(n){return at(n).toLowerCase()}function N_(n){return at(n).toUpperCase()}function B_(n,i,o){if(n=at(n),n&&(o||i===r))return ud(n);if(!n||!(i=yn(i)))return n;var c=zn(n),h=zn(i),p=cd(c,h),w=dd(c,h)+1;return Kr(c,p,w).join("")}function F_(n,i,o){if(n=at(n),n&&(o||i===r))return n.slice(0,hd(n)+1);if(!n||!(i=yn(i)))return n;var c=zn(n),h=dd(c,zn(i))+1;return Kr(c,0,h).join("")}function U_(n,i,o){if(n=at(n),n&&(o||i===r))return n.replace(fa,"");if(!n||!(i=yn(i)))return n;var c=zn(n),h=cd(c,zn(i));return Kr(c,h).join("")}function z_(n,i){var o=_e,c=xe;if(Ct(i)){var h="separator"in i?i.separator:h;o="length"in i?Oe(i.length):o,c="omission"in i?yn(i.omission):c}n=at(n);var p=n.length;if(Ei(n)){var w=zn(n);p=w.length}if(o>=p)return n;var k=o-Ii(c);if(k<1)return c;var P=w?Kr(w,0,k).join(""):n.slice(0,k);if(h===r)return P+c;if(w&&(k+=P.length-k),ru(h)){if(n.slice(k).search(h)){var U,z=P;for(h.global||(h=_s(h.source,at(qi.exec(h))+"g")),h.lastIndex=0;U=h.exec(z);)var W=U.index;P=P.slice(0,W===r?k:W)}}else if(n.indexOf(yn(h),k)!=k){var ne=P.lastIndexOf(h);ne>-1&&(P=P.slice(0,ne))}return P+c}function V_(n){return n=at(n),n&&ol.test(n)?n.replace(al,yv):n}var Y_=Fi(function(n,i,o){return n+(o?" ":"")+i.toUpperCase()}),lu=tf("toUpperCase");function eh(n,i,o){return n=at(n),i=o?r:i,i===r?hv(n)?wv(n):iv(n):n.match(i)||[]}var th=Ue(function(n,i){try{return vn(n,r,i)}catch(o){return nu(o)?o:new Ae(o)}}),W_=pr(function(n,i){return Pn(i,function(o){o=rr(o),mr(n,o,eu(n[o],n))}),n});function H_(n){var i=n==null?0:n.length,o=Se();return n=i?_t(n,function(c){if(typeof c[1]!="function")throw new xn(u);return[o(c[0]),c[1]]}):[],Ue(function(c){for(var h=-1;++hme)return[];var o=Z,c=jt(n,Z);i=Se(i),n-=Z;for(var h=vs(c,i);++o0||i<0)?new He(o):(n<0?o=o.takeRight(-n):n&&(o=o.drop(n)),i!==r&&(i=Oe(i),o=i<0?o.dropRight(-i):o.take(i-n)),o)},He.prototype.takeRightWhile=function(n){return this.reverse().takeWhile(n).reverse()},He.prototype.toArray=function(){return this.take(Z)},tr(He.prototype,function(n,i){var o=/^(?:filter|find|map|reject)|While$/.test(i),c=/^(?:head|last)$/.test(i),h=m[c?"take"+(i=="last"?"Right":""):i],p=c||/^find/.test(i);!h||(m.prototype[i]=function(){var w=this.__wrapped__,k=c?[1]:arguments,P=w instanceof He,U=k[0],z=P||Ee(w),W=function(We){var Qe=h.apply(m,Ur([We],k));return c&&ne?Qe[0]:Qe};z&&o&&typeof U=="function"&&U.length!=1&&(P=z=!1);var ne=this.__chain__,ve=!!this.__actions__.length,ke=p&&!ne,Le=P&&!ve;if(!p&&z){w=Le?w:new He(this);var Ce=n.apply(w,k);return Ce.__actions__.push({func:Wl,args:[W],thisArg:r}),new An(Ce,ne)}return ke&&Le?n.apply(this,k):(Ce=this.thru(W),ke?c?Ce.value()[0]:Ce.value():Ce)})}),Pn(["pop","push","shift","sort","splice","unshift"],function(n){var i=pl[n],o=/^(?:push|sort|unshift)$/.test(n)?"tap":"thru",c=/^(?:pop|shift)$/.test(n);m.prototype[n]=function(){var h=arguments;if(c&&!this.__chain__){var p=this.value();return i.apply(Ee(p)?p:[],h)}return this[o](function(w){return i.apply(Ee(w)?w:[],h)})}}),tr(He.prototype,function(n,i){var o=m[i];if(o){var c=o.name+"";ot.call(Li,c)||(Li[c]=[]),Li[c].push({name:i,func:o})}}),Li[Nl(r,F).name]=[{name:"wrapper",func:r}],He.prototype.clone=Vv,He.prototype.reverse=Yv,He.prototype.value=Wv,m.prototype.at=by,m.prototype.chain=wy,m.prototype.commit=Sy,m.prototype.next=ky,m.prototype.plant=Ty,m.prototype.reverse=My,m.prototype.toJSON=m.prototype.valueOf=m.prototype.value=Dy,m.prototype.first=m.prototype.head,ga&&(m.prototype[ga]=Cy),m},$i=Sv();ai?((ai.exports=$i)._=$i,ss._=$i):Ut._=$i}).call(Pa)})(Hu,Hu.exports);var iq=Hu.exports;const aq=sn({name:"ProductCard",props:["product","is-stall"],data:function(){return{}},methods:{},created(){}}),lq={class:"row no-wrap items-center"},oq={class:"col text-subtitle2 ellipsis-2-lines"},sq={key:0},uq={class:"text-h6"},cq={key:1},dq={class:"text-h6"},fq={class:"q-ml-md text-caption text-green-8 text-weight-bolder q-mt-md"},hq={key:0,class:"text-subtitle1"},gq=["textContent"],mq={key:1,class:"text-subtitle1"},vq={class:"text-caption text-grey ellipsis-2-lines",style:{"min-height":"40px"}},pq={key:0},yq={class:"text-caption text-weight-bolder"},_q={class:"q-ml-auto"};function bq(e,t,r,a,l,s){return O(),oe(Jt,{class:"card--product"},{default:b(()=>[y(oc,{src:e.product.images&&e.product.images.length>0&&e.product.images[0]?e.product.images[0]:e.$q.config.staticPath+"/images/placeholder.png",alt:"Product Image",loading:"lazy","spinner-color":"white",fit:"contain",height:"300px"},null,8,["src"]),y(Ne,{class:"q-pb-xs q-pt-md"},{default:b(()=>[y(ye,{round:"",disabled:e.product.quantity<1,color:"primary",rounded:"",icon:"shopping_cart",size:"lg",style:{position:"absolute",top:"0",right:"0",transform:"translate(-50%, -50%)"},onClick:t[0]||(t[0]=u=>e.$emit("add-to-cart",e.product))},{default:b(()=>[y(Qr,null,{default:b(()=>[Te(" Add to cart ")]),_:1})]),_:1},8,["disabled"]),S("div",lq,[S("div",oq,ge(e.product.name),1)])]),_:1}),y(Ne,{class:"q-py-sm"},{default:b(()=>[S("div",null,[e.product.currency=="sat"?(O(),re("span",sq,[S("span",uq,ge(e.product.price)+" sats",1),y(Qr,null,{default:b(()=>[Te(" BTC "+ge((e.product.price/1e8).toFixed(8)),1)]),_:1})])):(O(),re("span",cq,[S("span",dq,ge(e.product.formatedPrice),1)])),S("span",fq,ge(e.product.quantity)+" left",1)]),e.product.categories?(O(),re("div",hq,[y(lc,{items:e.product.categories||[],"virtual-scroll-horizontal":""},{default:b(({item:u,index:d})=>[(O(),oe(Qa,{key:d,dense:""},{default:b(()=>[S("span",{textContent:ge(u)},null,8,gq)]),_:2},1024))]),_:1},8,["items"])])):(O(),re("div",mq," \xA0 ")),S("div",vq,[e.product.description?(O(),re("p",pq,ge(e.product.description),1)):$e("",!0)])]),_:1}),y(ut),y(wi,null,{default:b(()=>[S("div",yq,ge(e.product.stallName),1)]),_:1}),y(ut),y(wi,null,{default:b(()=>[S("div",_q,[e.isStall?$e("",!0):(O(),oe(ye,{key:0,flat:"",class:"text-weight-bold text-capitalize q-ml-auto float-left",dense:"",color:"primary",onClick:t[1]||(t[1]=u=>e.$emit("change-page","stall",{stall:e.product.stall_id}))},{default:b(()=>[Te(" Visit Stall ")]),_:1})),y(ye,{flat:"",class:"text-weight-bold text-capitalize q-ml-auto",dense:"",color:"primary",onClick:t[2]||(t[2]=u=>e.$emit("change-page","stall",{stall:e.product.stall_id,product:e.product.id}))},{default:b(()=>[Te(" View details ")]),_:1})])]),_:1})]),_:1})}var Tm=Tn(aq,[["render",bq]]);const wq=sn({name:"CustomerMarket",components:{ProductCard:Tm},props:["filtered-products","search-text","filter-categories"],data:function(){return{search:null,partialProducts:[],productsPerPage:12,startIndex:0,lastProductIndex:0,showProducts:!0,debounceRefreshProducts:null}},watch:{searchText:function(){this.debounceRefreshProducts()},filteredProducts:function(){this.debounceRefreshProducts()},filterCategories:function(){this.debounceRefreshProducts()}},methods:{refreshProducts:function(){this.showProducts=!1,this.partialProducts=[],this.startIndex=0,this.lastProductIndex=Math.min(this.filteredProducts.length,this.productsPerPage),this.partialProducts.push(...this.filteredProducts.slice(0,this.lastProductIndex)),setTimeout(()=>{this.showProducts=!0},0)},addToCart(e){this.$emit("add-to-cart",e)},changePageM(e,t){this.$emit("change-page",e,t)},onLoad(e,t){setTimeout(()=>{if(this.startIndex>=this.filteredProducts.length){t();return}this.startIndex=this.lastProductIndex,this.lastProductIndex=Math.min(this.filteredProducts.length,this.lastProductIndex+this.productsPerPage),this.partialProducts.push(...this.filteredProducts.slice(this.startIndex,this.lastProductIndex)),t()},100)}},created(){this.debounceRefreshProducts=iq.debounce(this.refreshProducts,100),this.lastProductIndex=Math.min(this.filteredProducts.length,24),this.partialProducts.push(...this.filteredProducts.slice(0,this.lastProductIndex))}}),Sq={class:"row q-col-gutter-md"},kq={class:"row justify-center q-my-md"};function Cq(e,t,r,a,l,s){const u=ti("product-card");return O(),re("div",null,[e.showProducts?(O(),oe(rq,{key:0,onLoad:e.onLoad,offset:250},jh({default:b(()=>[S("div",Sq,[(O(!0),re(Nt,null,Wt(e.partialProducts,(d,f)=>(O(),re("div",{class:"col-xs-12 col-sm-6 col-md-4 col-lg-3",key:f},[y(u,{product:d,onChangePage:e.changePageM,onAddToCart:e.addToCart},null,8,["product","onChangePage","onAddToCart"])]))),128))])]),_:2},[e.lastProductIndex[S("div",kq,[y($u,{color:"primary",size:"40px"})])]),key:"0"}:void 0]),1032,["onLoad"])):$e("",!0)])}var Tq=Tn(wq,[["render",Cq]]),Mq=Je({name:"QSlideTransition",props:{appear:Boolean,duration:{type:Number,default:300}},emits:["show","hide"],setup(e,{slots:t,emit:r}){let a=!1,l,s,u=null,d=null,f,g;function v(){l&&l(),l=null,a=!1,u!==null&&(clearTimeout(u),u=null),d!==null&&(clearTimeout(d),d=null),s!==void 0&&s.removeEventListener("transitionend",f),f=null}function C(I,L,F){L!==void 0&&(I.style.height=`${L}px`),I.style.transition=`height ${e.duration}ms cubic-bezier(.25, .8, .50, 1)`,a=!0,l=F}function M(I,L){I.style.overflowY=null,I.style.height=null,I.style.transition=null,v(),L!==g&&r(L)}function _(I,L){let F=0;s=I,a===!0?(v(),F=I.offsetHeight===I.scrollHeight?0:void 0):(g="hide",I.style.overflowY="hidden"),C(I,F,L),u=setTimeout(()=>{u=null,I.style.height=`${I.scrollHeight}px`,f=Y=>{d=null,(Object(Y)!==Y||Y.target===I)&&M(I,"show")},I.addEventListener("transitionend",f),d=setTimeout(f,e.duration*1.1)},100)}function x(I,L){let F;s=I,a===!0?v():(g="show",I.style.overflowY="hidden",F=I.scrollHeight),C(I,F,L),u=setTimeout(()=>{u=null,I.style.height=0,f=Y=>{d=null,(Object(Y)!==Y||Y.target===I)&&M(I,"hide")},I.addEventListener("transitionend",f),d=setTimeout(f,e.duration*1.1)},100)}return Ht(()=>{a===!0&&v()}),()=>E(Ga,{css:!1,appear:e.appear,onEnter:_,onLeave:x},t.default)}});const vi=rw({}),Dq=Object.keys(Ao);var qq=Je({name:"QExpansionItem",props:{...Ao,...Ku,...or,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:[...Qu,"click","afterShow","afterHide"],setup(e,{slots:t,emit:r}){const{proxy:{$q:a}}=Dt(),l=sr(e,a),s=se(e.modelValue!==null?e.modelValue:e.defaultOpened),u=se(null),d=fo(),{show:f,hide:g,toggle:v}=ju({showing:s});let C,M;const _=$(()=>`q-expansion-item q-item-type q-expansion-item--${s.value===!0?"expanded":"collapsed"} q-expansion-item--${e.popup===!0?"popup":"standard"}`),x=$(()=>{if(e.contentInsetLevel===void 0)return null;const G=a.lang.rtl===!0?"Right":"Left";return{["padding"+G]:e.contentInsetLevel*56+"px"}}),I=$(()=>e.disable!==!0&&(e.href!==void 0||e.to!==void 0&&e.to!==null&&e.to!=="")),L=$(()=>{const G={};return Dq.forEach(me=>{G[me]=e[me]}),G}),F=$(()=>I.value===!0||e.expandIconToggle!==!0),Y=$(()=>e.expandedIcon!==void 0&&s.value===!0?e.expandedIcon:e.expandIcon||a.iconSet.expansionItem[e.denseToggle===!0?"denseIcon":"icon"]),D=$(()=>e.disable!==!0&&(I.value===!0||e.expandIconToggle===!0)),A=$(()=>({expanded:s.value===!0,detailsId:e.targetUid,toggle:v,show:f,hide:g})),N=$(()=>{const G=e.toggleAriaLabel!==void 0?e.toggleAriaLabel:a.lang.label[s.value===!0?"collapse":"expand"](e.label);return{role:"button","aria-expanded":s.value===!0?"true":"false","aria-controls":d,"aria-label":G}});Ve(()=>e.group,G=>{M!==void 0&&M(),G!==void 0&&xe()});function J(G){I.value!==!0&&v(G),r("click",G)}function V(G){G.keyCode===13&&H(G,!0)}function H(G,me){me!==!0&&u.value!==null&&u.value.focus(),v(G),Rt(G)}function pe(){r("afterShow")}function _e(){r("afterHide")}function xe(){C===void 0&&(C=fo()),s.value===!0&&(vi[e.group]=C);const G=Ve(s,rt=>{rt===!0?vi[e.group]=C:vi[e.group]===C&&delete vi[e.group]}),me=Ve(()=>vi[e.group],(rt,X)=>{X===C&&rt!==void 0&&rt!==C&&g()});M=()=>{G(),me(),vi[e.group]===C&&delete vi[e.group],M=void 0}}function lt(){const G={class:[`q-focusable relative-position cursor-pointer${e.denseToggle===!0&&e.switchToggleSide===!0?" items-end":""}`,e.expandIconClass],side:e.switchToggleSide!==!0,avatar:e.switchToggleSide},me=[E(Yt,{class:"q-expansion-item__toggle-icon"+(e.expandedIcon===void 0&&s.value===!0?" q-expansion-item__toggle-icon--rotated":""),name:Y.value})];return D.value===!0&&(Object.assign(G,{tabindex:0,...N.value,onClick:H,onKeyup:V}),me.unshift(E("div",{ref:u,class:"q-expansion-item__toggle-focus q-icon q-focus-helper q-focus-helper--rounded",tabindex:-1}))),E(Ie,G,()=>me)}function te(){let G;return t.header!==void 0?G=[].concat(t.header(A.value)):(G=[E(Ie,()=>[E(Ke,{lines:e.labelLines},()=>e.label||""),e.caption?E(Ke,{lines:e.captionLines,caption:!0},()=>e.caption):null])],e.icon&&G[e.switchToggleSide===!0?"push":"unshift"](E(Ie,{side:e.switchToggleSide===!0,avatar:e.switchToggleSide!==!0},()=>E(Yt,{name:e.icon})))),e.disable!==!0&&e.hideExpandIcon!==!0&&G[e.switchToggleSide===!0?"unshift":"push"](lt()),G}function Pe(){const G={ref:"item",style:e.headerStyle,class:e.headerClass,dark:l.value,disable:e.disable,dense:e.dense,insetLevel:e.headerInsetLevel};return F.value===!0&&(G.clickable=!0,G.onClick=J,Object.assign(G,I.value===!0?L.value:N.value)),E(Vt,G,te)}function Be(){return Gn(E("div",{key:"e-content",class:"q-expansion-item__content relative-position",style:x.value,id:d},Mt(t.default)),[[iw,s.value]])}function j(){const G=[Pe(),E(Mq,{duration:e.duration,onShow:pe,onHide:_e},Be)];return e.expandSeparator===!0&&G.push(E(ut,{class:"q-expansion-item__border q-expansion-item__border--top absolute-top",dark:l.value}),E(ut,{class:"q-expansion-item__border q-expansion-item__border--bottom absolute-bottom",dark:l.value})),G}return e.group!==void 0&&xe(),Ht(()=>{M!==void 0&&M()}),()=>E("div",{class:_.value},[E("div",{class:"q-expansion-item__container relative-position"},j())])}});const Pq=sn({name:"CustomerOrders",props:["orders","products","stalls","profiles"],components:{UserProfile:Za},data:function(){return{}},computed:{merchantOrders:function(){return Object.keys(this.orders).map(e=>({pubkey:e,orders:this.orders[e].map(this.enrichOrder)}))}},methods:{enrichOrder:function(e){var r;const t=this.stallForOrder(e);return{...e,stallName:(t==null?void 0:t.name)||"Stall",shippingZone:((r=t==null?void 0:t.shipping)==null?void 0:r.find(a=>a.id===e.shipping_id))||{id:e.shipping_id,name:e.shipping_id},invoice:this.invoiceForOrder(e),products:this.getProductsForOrder(e)}},stallForOrder:function(e){var t;try{const r=e.items&&((t=e.items[0])==null?void 0:t.product_id);if(!r)return;const a=this.products.find(s=>s.id===r);if(!a)return;const l=this.stalls.find(s=>s.id===a.stall_id);return l||void 0}catch(r){console.log(r)}},invoiceForOrder:function(e){var t;try{const r=(t=e==null?void 0:e.payment_options)==null?void 0:t.find(a=>a.type==="ln");return r!=null&&r.link?decode(r.link):void 0}catch(r){console.warn(r)}},getProductsForOrder:function(e){var t;return(t=e==null?void 0:e.items)!=null&&t.length?e.items.map(r=>({...this.products.find(l=>l.id===r.product_id)||{id:r.product_id,name:r.product_id},orderedQuantity:r.quantity})):[]},showInvoice:function(e){var r;if(e.paid)return;const t=(r=e==null?void 0:e.payment_options)==null?void 0:r.find(a=>a.type==="ln").link;!t||this.$emit("show-invoice",t)},formatCurrency:function(e,t){return formatCurrency(e,t)},fromNow:function(e){return e?ae(e*1e3).fromNow():""}},created(){}}),xq=S("strong",null,"No Orders",-1),Aq=["textContent"],Eq=["textContent"],Iq={class:"text-caption text-grey ellipsis-2-lines"},Oq={key:0},Rq=["textContent"],Lq=["textContent"],Nq=["textContent"],Bq={class:"text-caption text-grey ellipsis-2-lines"},Fq=["textContent"],Uq=["textContent"],zq=S("strong",null,"Order ID: ",-1),Vq=["textContent"],Yq=S("strong",null,"Products",-1),Wq=["src"],Hq=["src"],Kq={class:"text-caption text-grey ellipsis-2-lines"},Gq=S("strong",null,"Shipping Zone: ",-1),Qq=["textContent"],jq=S("strong",null,"Message: ",-1),Zq=["textContent"],Jq=S("strong",null,"Invoice: ",-1),Xq=["textContent"];function eP(e,t,r,a,l,s){var d;const u=ti("user-profile");return O(),re("div",null,[(d=e.merchantOrders)!=null&&d.length?$e("",!0):(O(),oe(Jt,{key:0,bordered:"",class:"q-mb-md"},{default:b(()=>[y(Ne,null,{default:b(()=>[xq]),_:1})]),_:1})),(O(!0),re(Nt,null,Wt(e.merchantOrders,f=>(O(),re("div",{key:f.id},[y(Jt,{bordered:"",class:"q-mb-md"},{default:b(()=>[y(Vt,null,{default:b(()=>[y(u,{pubkey:f.pubkey,profiles:e.profiles},null,8,["pubkey","profiles"])]),_:2},1024),y(ut),y(Ne,{class:"col-12"},{default:b(()=>[y(Mr,null,{default:b(()=>[(O(!0),re(Nt,null,Wt(f.orders,g=>(O(),re("div",{key:g.id,class:"q-mb-md"},[y(qq,{dense:"","expand-separator":""},{header:b(()=>[y(Ie,{class:"q-mt-sm"},{default:b(()=>[y(Ke,null,{default:b(()=>{var v,C;return[S("strong",null,[S("span",{textContent:ge(g.stallName)},null,8,Aq)]),(C=(v=g.invoice)==null?void 0:v.human_readable_part)!=null&&C.amount?(O(),oe(Cn,{key:0,onClick:M=>e.showInvoice(g),color:"orange",class:"q-ml-lg gt-sm"},{default:b(()=>{var M,_;return[S("span",{textContent:ge(e.formatCurrency(((_=(M=g.invoice)==null?void 0:M.human_readable_part)==null?void 0:_.amount)/1e3,"sat"))},null,8,Eq)]}),_:2},1032,["onClick"])):$e("",!0)]}),_:2},1024),y(Ke,null,{default:b(()=>[S("div",Iq,[g.createdAt?(O(),re("p",Oq,[S("span",{textContent:ge(e.fromNow(g.createdAt))},null,8,Rq)])):$e("",!0)])]),_:2},1024)]),_:2},1024),y(Ie,{side:""},{default:b(()=>[y(Ke,null,{default:b(()=>[y(Cn,{color:g.paid?"green":"grey"},{default:b(()=>[S("span",{textContent:ge(g.paid?"Paid":"Not Paid")},null,8,Lq)]),_:2},1032,["color"]),y(Cn,{color:g.shipped?"green":"grey",class:"q-ml-md"},{default:b(()=>[S("span",{textContent:ge(g.shipped?"Shipped":"Not Shipped")},null,8,Nq)]),_:2},1032,["color"])]),_:2},1024),y(Ke,null,{default:b(()=>{var v,C;return[S("div",Bq,[S("p",null,[S("span",{textContent:ge((v=g.items)==null?void 0:v.length)},null,8,Fq),S("span",{textContent:ge(((C=g.items)==null?void 0:C.length)===1?"product":"products")},null,8,Uq)])])]}),_:2},1024)]),_:2},1024)]),default:b(()=>[y(ut),y(Ne,{class:"col-12"},{default:b(()=>[y(Ie,null,{default:b(()=>[y(Ke,null,{default:b(()=>[zq,S("span",{class:"ellipsis-2-lines text-wrap",textContent:ge(g.id)},null,8,Vq)]),_:2},1024)]),_:2},1024)]),_:2},1024),y(ut),y(Ne,{horizontal:""},{default:b(()=>[y(Ne,{class:"col-7"},{default:b(()=>[y(Ie,{class:"q-mt-sm"},{default:b(()=>[y(Ke,null,{default:b(()=>[Yq]),_:1})]),_:1}),(O(!0),re(Nt,null,Wt(g.products,v=>(O(),oe(Vt,{key:v.id},{default:b(()=>[y(Ie,{avatar:""},{default:b(()=>[y(Xr,null,{default:b(()=>[v.images&&v.images[0]||v.image?(O(),re("img",{key:0,src:v.images[0]||v.image},null,8,Wq)):(O(),re("img",{key:1,src:e.$q.config.staticPath+"/images/placeholder.png"},null,8,Hq))]),_:2},1024)]),_:2},1024),y(Ie,{class:"q-mt-sm"},{default:b(()=>[y(Ke),y(Ke,null,{default:b(()=>[S("strong",null,ge(v.orderedQuantity)+" x "+ge(v.name),1)]),_:2},1024),y(Ke,null,{default:b(()=>[S("div",Kq,[S("p",null,ge(v.description),1)])]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))]),_:2},1024),y(ut,{vertical:""}),y(Ne,null,{default:b(()=>[y(Ie,{class:"q-mt-md q-ml-sm"},{default:b(()=>[y(Ke,null,{default:b(()=>{var v;return[Gq,S("span",{textContent:ge(((v=g.shippingZone)==null?void 0:v.name)||"")},null,8,Qq)]}),_:2},1024)]),_:2},1024),g.message?(O(),oe(Ie,{key:0,class:"q-mt-md q-ml-sm"},{default:b(()=>[y(Ke,null,{default:b(()=>[jq,S("span",{textContent:ge(g.message)},null,8,Zq)]),_:2},1024)]),_:2},1024)):$e("",!0),y(Ie,{class:"q-mt-md q-ml-sm"},{default:b(()=>[y(Ke,null,{default:b(()=>{var v,C;return[Jq,(C=(v=g.invoice)==null?void 0:v.human_readable_part)!=null&&C.amount?(O(),oe(Cn,{key:0,onClick:M=>e.showInvoice(g),color:"orange",class:"cursor-pointer"},{default:b(()=>{var M,_;return[S("span",{textContent:ge(e.formatCurrency(((_=(M=g.invoice)==null?void 0:M.human_readable_part)==null?void 0:_.amount)/1e3,"sat"))},null,8,Xq)]}),_:2},1032,["onClick"])):$e("",!0)]}),_:2},1024)]),_:2},1024)]),_:2},1024)]),_:2},1024),y(ut,{class:"q-mb-xl"})]),_:2},1024),y(ut)]))),128))]),_:2},1024)]),_:2},1024)]),_:2},1024)]))),128))])}var tP=Tn(Pq,[["render",eP]]),nP=Je({name:"QCarouselSlide",props:{...kg,imgSrc:String},setup(e,{slots:t}){const r=$(()=>e.imgSrc?{backgroundImage:`url("${e.imgSrc}")`}:{});return()=>E("div",{class:"q-carousel__slide",style:r.value},Mt(t.default))}});let Ia=0;const rP={fullscreen:Boolean,noRouteFullscreenExit:Boolean},iP=["update:fullscreen","fullscreen"];function aP(){const e=Dt(),{props:t,emit:r,proxy:a}=e;let l,s,u;const d=se(!1);aw(e)===!0&&Ve(()=>a.$route.fullPath,()=>{t.noRouteFullscreenExit!==!0&&v()}),Ve(()=>t.fullscreen,C=>{d.value!==C&&f()}),Ve(d,C=>{r("update:fullscreen",C),r("fullscreen",C)});function f(){d.value===!0?v():g()}function g(){d.value!==!0&&(d.value=!0,u=a.$el.parentNode,u.replaceChild(s,a.$el),document.body.appendChild(a.$el),Ia++,Ia===1&&document.body.classList.add("q-body--fullscreen-mixin"),l={handler:v},sh.add(l))}function v(){d.value===!0&&(l!==void 0&&(sh.remove(l),l=void 0),u.replaceChild(a.$el,s),d.value=!1,Ia=Math.max(0,Ia-1),Ia===0&&(document.body.classList.remove("q-body--fullscreen-mixin"),a.$el.scrollIntoView!==void 0&&setTimeout(()=>{a.$el.scrollIntoView()})))}return tc(()=>{s=document.createElement("span")}),ni(()=>{t.fullscreen===!0&&g()}),Ht(v),Object.assign(a,{toggleFullscreen:f,setFullscreen:g,exitFullscreen:v}),{inFullscreen:d,toggleFullscreen:f}}const lP=["top","right","bottom","left"],oP=["regular","flat","outline","push","unelevated"];var sP=Je({name:"QCarousel",props:{...or,...Cg,...rP,transitionPrev:{type:String,default:"fade"},transitionNext:{type:String,default:"fade"},height:String,padding:Boolean,controlColor:String,controlTextColor:String,controlType:{type:String,validator:e=>oP.includes(e),default:"flat"},autoplay:[Number,Boolean],arrows:Boolean,prevIcon:String,nextIcon:String,navigation:Boolean,navigationPosition:{type:String,validator:e=>lP.includes(e)},navigationIcon:String,navigationActiveIcon:String,thumbnails:Boolean},emits:[...iP,...Tg],setup(e,{slots:t}){const{proxy:{$q:r}}=Dt(),a=sr(e,r);let l=null,s;const{updatePanelsList:u,getPanelContent:d,panelDirectives:f,goToPanel:g,previousPanel:v,nextPanel:C,getEnabledPanels:M,panelIndex:_}=Mg(),{inFullscreen:x}=aP(),I=$(()=>x.value!==!0&&e.height!==void 0?{height:e.height}:{}),L=$(()=>e.vertical===!0?"vertical":"horizontal"),F=$(()=>`q-carousel q-panel-parent q-carousel--with${e.padding===!0?"":"out"}-padding`+(x.value===!0?" fullscreen":"")+(a.value===!0?" q-carousel--dark q-dark":"")+(e.arrows===!0?` q-carousel--arrows-${L.value}`:"")+(e.navigation===!0?` q-carousel--navigation-${N.value}`:"")),Y=$(()=>{const _e=[e.prevIcon||r.iconSet.carousel[e.vertical===!0?"up":"left"],e.nextIcon||r.iconSet.carousel[e.vertical===!0?"down":"right"]];return e.vertical===!1&&r.lang.rtl===!0?_e.reverse():_e}),D=$(()=>e.navigationIcon||r.iconSet.carousel.navigationIcon),A=$(()=>e.navigationActiveIcon||D.value),N=$(()=>e.navigationPosition||(e.vertical===!0?"right":"bottom")),J=$(()=>({color:e.controlColor,textColor:e.controlTextColor,round:!0,[e.controlType]:!0,dense:!0}));Ve(()=>e.modelValue,()=>{e.autoplay&&V()}),Ve(()=>e.autoplay,_e=>{_e?V():l!==null&&(clearTimeout(l),l=null)});function V(){const _e=lw(e.autoplay)===!0?Math.abs(e.autoplay):5e3;l!==null&&clearTimeout(l),l=setTimeout(()=>{l=null,_e>=0?C():v()},_e)}ni(()=>{e.autoplay&&V()}),Ht(()=>{l!==null&&clearTimeout(l)});function H(_e,xe){return E("div",{class:`q-carousel__control q-carousel__navigation no-wrap absolute flex q-carousel__navigation--${_e} q-carousel__navigation--${N.value}`+(e.controlColor!==void 0?` text-${e.controlColor}`:"")},[E("div",{class:"q-carousel__navigation-inner flex flex-center no-wrap"},M().map(xe))])}function pe(){const _e=[];if(e.navigation===!0){const xe=t["navigation-icon"]!==void 0?t["navigation-icon"]:te=>E(ye,{key:"nav"+te.name,class:`q-carousel__navigation-icon q-carousel__navigation-icon--${te.active===!0?"":"in"}active`,...te.btnProps,onClick:te.onClick}),lt=s-1;_e.push(H("buttons",(te,Pe)=>{const Be=te.props.name,j=_.value===Pe;return xe({index:Pe,maxIndex:lt,name:Be,active:j,btnProps:{icon:j===!0?A.value:D.value,size:"sm",...J.value},onClick:()=>{g(Be)}})}))}else if(e.thumbnails===!0){const xe=e.controlColor!==void 0?` text-${e.controlColor}`:"";_e.push(H("thumbnails",lt=>{const te=lt.props;return E("img",{key:"tmb#"+te.name,class:`q-carousel__thumbnail q-carousel__thumbnail--${te.name===e.modelValue?"":"in"}active`+xe,src:te.imgSrc||te["img-src"],onClick:()=>{g(te.name)}})}))}return e.arrows===!0&&_.value>=0&&((e.infinite===!0||_.value>0)&&_e.push(E("div",{key:"prev",class:`q-carousel__control q-carousel__arrow q-carousel__prev-arrow q-carousel__prev-arrow--${L.value} absolute flex flex-center`},[E(ye,{icon:Y.value[0],...J.value,onClick:v})])),(e.infinite===!0||_.value(s=u(t),E("div",{class:F.value,style:I.value},[Zu("div",{class:"q-carousel__slides-container"},d(),"sl-cont",e.swipeable,()=>f.value)].concat(pe())))}});const uP=sn({name:"ProductDetail",props:["product","add-to-cart"],data:function(){return{slide:1}},computed:{},methods:{},created(){}}),cP={class:"row"},dP={class:"col-lg-5 col-md-5 col-sm-12 col-xs-12 q-mt-sm"},fP={key:0,class:"q-pr-md"},hP={key:1,class:"q-pr-md"},gP={class:"col-lg-7 col-md-7 col-sm-12 col-xs-12 q-mt-sm"},mP={class:"row"},vP={class:"text-subtitle1 q-mt-sm q-pt-xs"},pP={key:0,class:"text-subtitle1"},yP={class:"q-mt-sm text-weight-bold"},_P={key:0},bP={class:"text-h6"},wP={class:"q-ml-sm text-grey-6"},SP={key:1},kP={class:"text-h6"},CP={class:"q-ml-md text-caption text-green-8 text-weight-bolder q-mt-md"},TP={class:"q-mt-md"};function MP(e,t,r,a,l,s){return O(),re("div",cP,[S("div",dP,[e.product.images&&e.product.images[0]?(O(),re("div",fP,[y(sP,{swipeable:"",animated:"",modelValue:e.slide,"onUpdate:modelValue":t[0]||(t[0]=u=>e.slide=u),thumbnails:"",infinite:"",arrows:"","transition-prev":"slide-right","transition-next":"slide-left","navigation-icon":"radio_button_unchecked","control-type":"regular","control-color":"secondary","control-text-color":"white"},{default:b(()=>[(O(!0),re(Nt,null,Wt(e.product.images,(u,d)=>(O(),oe(nP,{name:d+1,key:d,"img-src":u},null,8,["name","img-src"]))),128))]),_:1},8,["modelValue"])])):(O(),re("div",hP,[y(oc,{src:e.$q.config.staticPath+"/images/placeholder.png",ratio:16/9},null,8,["src"])]))]),S("div",gP,[y(Jt,null,{default:b(()=>[y(Ne,null,{default:b(()=>[S("div",mP,[S("div",{class:ow(["col-12",e.$q.platform.is.desktop?"":"q-px-md"])},[S("div",vP,ge(e.product.name),1),e.product.categories?(O(),re("div",pP,[(O(!0),re(Nt,null,Wt(e.product.categories,(u,d)=>(O(),oe(Qa,{key:d,dense:""},{default:b(()=>[Te(ge(u),1)]),_:2},1024))),128))])):$e("",!0),S("div",yP,ge(e.product.description),1),S("div",null,[e.product.currency=="sat"?(O(),re("span",_P,[S("span",bP,ge(e.product.price)+" sats",1),S("span",wP,"BTC "+ge((e.product.price/1e8).toFixed(8)),1)])):(O(),re("span",SP,[S("span",kP,ge(e.product.formatedPrice),1)])),S("span",CP,ge(e.product.quantity>0?`In - stock. ${e.product.quantity} left.`:"Out of stock."),1)]),S("div",TP,[y(ye,{class:"q-mt-md",color:"primary",rounded:"",icon:"shopping_cart",label:"Add to cart",onClick:t[1]||(t[1]=u=>e.$emit("add-to-cart",e.product))})])],2)])]),_:1})]),_:1})])])}var DP=Tn(uP,[["render",MP]]);const qP=sn({name:"CustomerStall",components:{ProductCard:Tm,ProductDetail:DP},props:["stall","products","product-detail"],data:function(){return{}},computed:{product(){if(this.productDetail)return this.products.find(e=>e.id==this.productDetail)}},methods:{changePageS(e,t){var r;e==="stall"&&(t==null?void 0:t.product)&&((r=document.getElementById("product-focus-area"))==null||r.scrollIntoView()),this.$emit("change-page",e,t)},addToCart(e){this.$emit("add-to-cart",e)}}}),PP=S("div",{id:"product-focus-area"},null,-1),xP={key:0,class:"row"},AP={class:"col-12 auto-width"},EP={class:"col-12 q-my-lg"},IP={class:"row q-col-gutter-md"};function $P(e,t,r,a,l,s){const u=ti("product-detail"),d=ti("product-card");return O(),re("div",null,[PP,e.productDetail&&e.product?(O(),re("div",xP,[S("div",AP,[y(u,{product:e.product,onAddToCart:e.addToCart},null,8,["product","onAddToCart"])]),S("div",EP,[y(ut)])])):$e("",!0),S("div",IP,[(O(!0),re(Nt,null,Wt(e.products,(f,g)=>(O(),re("div",{class:"col-xs-12 col-sm-6 col-md-4 col-lg-3",key:g},[y(d,{product:f,onChangePage:e.changePageS,onAddToCart:e.addToCart,"is-stall":!0},null,8,["product","onChangePage","onAddToCart"])]))),128))])])}var OP=Tn(qP,[["render",$P]]);const RP=sn({name:"CustomerStallList",props:["stalls"],data:function(){return{showStalls:!0}},watch:{stalls(){this.showProducts=!1,setTimeout(()=>{this.showProducts=!0},0)}},computed:{},methods:{},created(){}}),LP={key:0,class:"row q-col-gutter-md"},NP={class:"q-pa-md q-gutter-sm",style:{height:"80px"}},BP=["src"],FP={class:"row no-wrap items-center"},UP={class:"col text-subtitle2 ellipsis-2-lines"},zP={class:"text-caption text-green-8 text-weight-bolder q-mt-md"},VP=["textContent"],YP=["textContent"],WP={key:0,class:"text-subtitle1"},HP=["textContent"],KP={key:1,class:"text-subtitle1"},GP={class:"text-caption text-grey ellipsis-2-lines",style:{"min-height":"40px"}},QP={class:"q-ml-auto"};function jP(e,t,r,a,l,s){return e.showStalls?(O(),re("div",LP,[(O(!0),re(Nt,null,Wt(e.stalls,u=>(O(),re("div",{key:u.id,class:"col-xs-12 col-sm-6 col-md-4 col-lg-3"},[y(Jt,{class:"card--product"},{default:b(()=>[y(Ne,{class:"q-pb-xs q-pt-md"},{default:b(()=>[S("div",NP,[(O(!0),re(Nt,null,Wt(u.images,(d,f)=>(O(),oe(Xr,{key:f,size:"40px",class:"overlapping",style:sw(`left: ${f*25}px; border: 2px solid white; position: absolute`)},{default:b(()=>[S("img",{src:d},null,8,BP)]),_:2},1032,["style"]))),128))])]),_:2},1024),y(Ne,{class:"q-pb-xs q-pt-md"},{default:b(()=>[S("div",FP,[S("div",UP,ge(u.name),1)])]),_:2},1024),y(ut),y(Ne,{class:"q-pl-sm"},{default:b(()=>[S("div",null,[S("span",zP,[S("span",{textContent:ge(u.productCount)},null,8,VP),Te(" products")]),S("span",{textContent:ge(u.currency),class:"float-right"},null,8,YP)])]),_:2},1024),y(Ne,{class:"q-pl-sm gt-sm"},{default:b(()=>[u.categories?(O(),re("div",WP,[y(lc,{items:u.categories||[],"virtual-scroll-horizontal":""},{default:b(({item:d,index:f})=>[(O(),oe(Qa,{key:f,dense:""},{default:b(()=>[S("span",{textContent:ge(d)},null,8,HP)]),_:2},1024))]),_:2},1032,["items"])])):(O(),re("div",KP," \xA0 ")),S("div",GP,[S("p",null,ge(u.description||""),1)])]),_:2},1024),y(ut),y(wi,null,{default:b(()=>[S("div",QP,[y(ye,{flat:"",class:"text-weight-bold text-capitalize q-ml-auto float-left",dense:"",color:"primary",onClick:d=>e.$emit("change-page","stall",{stall:u.id})},{default:b(()=>[Te(" Visit Stall ")]),_:2},1032,["onClick"])])]),_:2},1024)]),_:2},1024)]))),128))])):$e("",!0)}var ZP=Tn(RP,[["render",jP]]);const JP=sn({name:"ProductFilter",props:["filter","currencies","categories","merchants","profiles","stalls"],data:function(){return{merchantProfiles:[],filterData:{currency:null,priceFrom:0,priceTo:null,categories:[],merchants:[],stalls:[]}}},watch:{categories(e,t){this.filterData.categories=(e||[]).filter(r=>r.selected).map(r=>r.category)}},methods:{clear:function(){this.filterData={currency:null,priceFrom:0,priceTo:null,categories:[],merchants:[],stalls:[]},this.$emit("filter-update",this.filterData)},clearPrice(){this.filterData.currency=null,this.filterData.priceFrom=0,this.filterData.priceTo=null},clearMerchants(){this.filterData.merchants=[]},clearCategories(){this.filterData.categories=[]},clearStalls(){this.filterData.stalls=[]},search:function(){const e={...this.filterData,merchants:this.filterData.merchants.map(t=>t.value),stalls:this.filterData.stalls.map(t=>t.value)};this.$emit("filter-update",e)},mapMerchantProfile(e){const t=this.profiles.find(r=>r.pubkey===e);return t?{label:t.name+` (${e.substring(0,10)}...${e.substring(e.length-10)})`,value:e}:{label:e,value:e}}},created:async function(){console.log("### this.filter",this.filter),this.filterData={...this.filterData,...JSON.parse(JSON.stringify(this.filter||{}))},this.filterData.categories=[...new Set((this.filterData.categories||[]).concat((this.categories||[]).filter(e=>e.selected).map(e=>e.category)))],this.filterData.merchants=(this.filterData.merchants||[]).map(this.mapMerchantProfile),this.filterData.stalls=(this.filterData.stalls||[]).map(e=>{const t=this.stalls.find(r=>r.id===e)||{label:e,value:e};return{label:t.name,value:t.id}}),this.merchantProfiles=this.merchants.map(this.mapMerchantProfile)}}),XP={class:"row q-mt-md q-ml-md q-pr-md"},ex={class:"col-md-3 col-sm-12 col-xs-12 q-pt-sm"},tx={class:"col-md-3 col-sm-12 col-xs-12 q-pt-sm q-pl-md"},nx={class:"col-md-3 col-sm-12 col-xs-12 q-pt-sm q-pl-lg"},rx={class:"col-md-3 col-sm-12 col-xs-12"},ix={class:"row q-mt-md q-ml-md q-pr-md"},ax={class:"col-9"},lx={class:"col-3"},ox={class:"row q-mt-md q-ml-md q-pr-md"},sx={class:"col-9"},ux={class:"col-3"},cx={class:"row q-mt-md q-ml-md q-pr-md"},dx={class:"col-9"},fx={class:"col-3"};function hx(e,t,r,a,l,s){return O(),oe(Jt,null,{default:b(()=>[y(Ne,null,{default:b(()=>[S("div",XP,[S("div",ex,[y($a,{options:[...e.currencies].sort(),modelValue:e.filterData.currency,"onUpdate:modelValue":t[0]||(t[0]=u=>e.filterData.currency=u),filled:"",hint:"Only this Currency",label:"Currency"},null,8,["options","modelValue"])]),S("div",tx,[y(It,{modelValue:e.filterData.priceFrom,"onUpdate:modelValue":t[1]||(t[1]=u=>e.filterData.priceFrom=u),type:"number",label:"Price From",hint:"Price Starting At"},null,8,["modelValue"])]),S("div",nx,[y(It,{modelValue:e.filterData.priceTo,"onUpdate:modelValue":t[2]||(t[2]=u=>e.filterData.priceTo=u),type:"number",label:"Price To",hint:"Maximum Price"},null,8,["modelValue"])]),S("div",rx,[y(ye,{onClick:t[3]||(t[3]=u=>e.clearPrice()),flat:"",color:"grey",class:"float-right q-mt-sm"},{default:b(()=>[Te(" Clear")]),_:1})])])]),_:1}),y(Ne,null,{default:b(()=>[S("div",ix,[S("div",ax,[y($a,{options:[...e.categories.map(u=>u.category).sort()],modelValue:e.filterData.categories,"onUpdate:modelValue":t[4]||(t[4]=u=>e.filterData.categories=u),filled:"",multiple:"","use-chips":"","stack-label":"",hint:"Any of these Categories",label:"Categories"},null,8,["options","modelValue"])]),S("div",lx,[y(ye,{onClick:t[5]||(t[5]=u=>e.clearCategories()),flat:"",color:"grey",class:"float-right q-mt-sm"},{default:b(()=>[Te(" Clear")]),_:1})])]),S("div",ox,[S("div",sx,[y($a,{options:e.merchantProfiles,modelValue:e.filterData.merchants,"onUpdate:modelValue":t[6]||(t[6]=u=>e.filterData.merchants=u),filled:"",multiple:"","use-chips":"","stack-label":"",hint:"Only these Merchant",label:"Merchants"},null,8,["options","modelValue"])]),S("div",ux,[y(ye,{onClick:t[7]||(t[7]=u=>e.clearMerchants()),flat:"",color:"grey",class:"float-right q-mt-sm"},{default:b(()=>[Te(" Clear")]),_:1})])]),S("div",cx,[S("div",dx,[y($a,{options:e.stalls.map(u=>({label:u.name,value:u.id})),modelValue:e.filterData.stalls,"onUpdate:modelValue":t[8]||(t[8]=u=>e.filterData.stalls=u),filled:"",multiple:"","use-chips":"","stack-label":"",hint:"Only these Stalls",label:"Stalls"},null,8,["options","modelValue"])]),S("div",fx,[y(ye,{onClick:t[9]||(t[9]=u=>e.clearStalls()),flat:"",color:"grey",class:"float-right q-mt-sm"},{default:b(()=>[Te(" Clear")]),_:1})])])]),_:1}),y(ut),y(wi,{align:"right"},{default:b(()=>[y(ye,{onClick:t[10]||(t[10]=u=>e.clear()),flat:"",color:"grey"},{default:b(()=>[Te(" Clear All Filters")]),_:1}),y(ye,{onClick:t[11]||(t[11]=u=>e.search()),flat:"",icon:"search",color:"primary",class:"q-mr-md"},{default:b(()=>[Te(" Search ")]),_:1})]),_:1})]),_:1})}var gx=Tn(JP,[["render",hx]]);const mx={class:"row q-mb-md"},vx={class:"col-lg-1 col-md-1 gt-sm"},px=["src"],yx={class:"col-lg-7 col-md-5 col-12 auto-width"},_x=S("div",{id:"search-text"},null,-1),bx={class:"col-lg-4 col-md-6 col-12"},wx={class:"float-right"},Sx=["textContent"],kx=["textContent"],Cx={key:0,class:"gt-sm"},Tx=["textContent","onClick"],Mx=["textContent"],Dx=S("div",{class:"text-h6"}," There are no relays configured at this moment. ",-1),qx=S("div",{class:"text-subtitle2"}," Start by creating or importing a market. ",-1),Px={key:2,class:"row q-mb-sm"},xx={class:"col-12 text-center"},Ax={key:0,class:"absolute-bottom text-subtitle1 text-center"},Ex=["textContent"],Ix={class:"row q-mb-sm"},$x={class:"col-md-10 col-sm-7 auto-width"},Ox=["textContent"],Rx=S("strong",null,"All markets",-1),Lx=["textContent"],Nx=["textContent"],Bx={class:"col-md-2 col-sm-5"},Fx={key:3,class:"row q-mb-sm"},Ux={class:"col-12 text-center"},zx={key:12},Vx=S("strong",{class:"text-h4"},"Welcome to the Nostr Market!",-1),Yx=S("strong",{class:"text-h5 q-mt-lg"},"In order to start you can:",-1),Wx={class:"text-h6"},Hx={class:"text-h6"},Kx={class:"text-h6"},Gx=S("code",null,"naddr",-1),Qx={key:13},jx=S("div",{class:"text-h6"},"Account Setup",-1),Zx=S("p",null,"Enter your Nostr private key or generate a new one.",-1),Jx={class:"text-center q-mb-lg"},Xx={key:0,class:"q-my-lg"},eA=["textContent"],tA=["href"],nA={key:0,ratio:1},rA={key:1},iA={class:"row q-mt-lg"},aA=sn({name:"MarketPage",components:{MarketConfig:Ig},data:function(){return{account:null,accountMetadata:null,accountDialog:{show:!1,data:{watchOnly:!1,key:null}},relaysData:{},markets:[],shoppingCarts:[],checkoutCart:null,checkoutStall:null,activePage:"market",activeOrderId:null,dmSubscriptions:{},allMarketsSelected:!1,qrCodeDialog:{data:{payment_request:null,message:null},dismissMsg:null,show:!1},groupByStall:!1,relays:new Set,stalls:[],products:[],orders:{},profiles:[],bannerImage:null,logoImage:null,isLoading:!1,showFilterDetails:!1,searchText:null,filterData:{categories:[],merchants:[],stalls:[],currency:null,priceFrom:null,priceTo:null},dmEvents:null,activeMarket:null,activeStall:null,activeProduct:null,pool:null,config:{opts:null},defaultBanner:this.$q.config.staticPath+"images/nostr-cover.png",defaultLogo:this.$q.config.staticPath+"images/nostr-avatar.png",defaultMarketNaddr:"naddr1qqjr2e34v3jrzd3e95ensdfn956rywps94snwcmr95crvepexc6kxcfcxqmnvqg5waehxw309aex2mrp0yhxgctdw4eju6t0qyv8wumn8ghj7un9d3shjtnndehhyapwwdhkx6tpdsq36amnwvaz7tmwdaehgu3dwp6kytnhv4kxcmmjv3jhytnwv46qzxthwden5te0dehhxarj9eax2cn9v3jk2tnrd3hh2eqprfmhxue69uhhyetvv9ujummjv9hxwetsd9kxctnyv4mqzrthwden5te0dehhxtnvdakqz9rhwden5te0wfjkccte9ehx7um5wghxyecpzpmhxue69uhkummnw3ezuamfdejsz9thwden5te0v4jx2m3wdehhxarj9ekxzmnyqgstle9w09rt8y7xdlqs33v23vqvdtqx6j6j2wa4984g9n77tppx2tqrqsqqqa2ruusd5z",readNotes:{merchants:!1,marketUi:!1}}},watch:{config(e,t){var r,a,l,s;(a=(r=e==null?void 0:e.opts)==null?void 0:r.ui)!=null&&a.banner?(this.bannerImage=null,setTimeout(()=>{var u,d;this.bannerImage=this.sanitizeImageSrc((d=(u=e==null?void 0:e.opts)==null?void 0:u.ui)==null?void 0:d.banner,this.defaultBanner)})):this.bannerImage=this.defaultBanner,(s=(l=e==null?void 0:e.opts)==null?void 0:l.ui)!=null&&s.picture?(this.logoImage=null,setTimeout(()=>{var u,d;this.logoImage=this.sanitizeImageSrc((d=(u=e==null?void 0:e.opts)==null?void 0:u.ui)==null?void 0:d.picture,this.defaultLogo)})):this.logoImage=this.defaultLogo},searchText(e,t){if(!!e&&e.toLowerCase().startsWith("naddr"))try{const{type:r,data:a}=NostrTools.nip19.decode(e);if(r!=="naddr"||a.kind!==30019)return;this.$q.dialog(confirm("Do you want to import this market profile?")).onOk(async()=>{this.searchText="",await this.addMarket(e)})}catch{}}},computed:{selectedMarketsMerchants(){return[...new Set(this.markets.filter(e=>e.selected).map(e=>e.opts.merchants).flat())]},filteredProducts(){const e=g=>{var v;return!((v=this.filterData.merchants)!=null&&v.length)||this.filterData.merchants.includes(g)},t=g=>this.selectedMarketsMerchants.includes(g),r=g=>{var v;return!((v=this.filterData.stalls)!=null&&v.length)||this.filterData.stalls.includes(g)},a=g=>!this.filterData.currency||this.filterData.currency.toLowerCase()===g.toLowerCase(),l=g=>!this.filterData.priceFrom||g>=this.filterData.priceFrom,s=g=>!this.filterData.priceTo||g<=this.filterData.priceTo,u=g=>!this.activeStall||g==this.activeStall;let d=this.products.filter(g=>this.hasCategory(g.categories)&&u(g.stall_id)&&e(g.pubkey)&&t(g.pubkey)&&r(g.stall_id)&&a(g.currency)&&l(g.price)&&s(g.price));if(!this.searchText||this.searchText.length<2)return d;const f=this.searchText.toLowerCase();return d.filter(g=>g.name.toLowerCase().includes(f)||g.description&&g.description.toLowerCase().includes(f)||g.categories&&g.categories.toString().toLowerCase().includes(f))},filterCount(){let e=0;return this.filterData.currency&&e++,this.filterData.priceFrom&&e++,this.filterData.priceTo&&e++,this.filterData.categories&&(e+=this.filterData.categories.length),this.filterData.merchants&&(e+=this.filterData.merchants.length),this.filterData.stalls&&(e+=this.filterData.stalls.length),e},filterStalls(){const e=this.stalls.map(r=>({...r,categories:this.allStallCatgories(r.id),images:this.allStallImages(r.id).slice(0,8),productCount:this.products.filter(a=>a.stall_id===r.id).length})).filter(r=>this.hasCategory(r.categories));if(!this.searchText||this.searchText.length<2)return e;const t=this.searchText.toLowerCase();return this.stalls.filter(r=>r.name.toLowerCase().includes(t)||r.description&&r.description.toLowerCase().includes(t)||r.categories&&r.categories.toString().toLowerCase().includes(t))},marketsName(){var t,r;if(this.activeMarket)return((t=this.activeMarket.opts)==null?void 0:t.name)||"Market";const e=this.markets.filter(a=>a.selected);return e.length===0?"No Market":e.length===1?((r=e[0].opts)==null?void 0:r.name)||"Market":e.length+" Markets"},stallName(){var e;return((e=this.stalls.find(t=>t.id==this.activeStall))==null?void 0:e.name)||"Stall"},productName(){var e;return((e=this.products.find(t=>t.id==this.activeProduct))==null?void 0:e.name)||"Product"},isValidAccountKey(){return isValidKey(this.accountDialog.data.key)},allCartsItemCount(){return this.shoppingCarts.map(e=>e.products).flat().reduce((e,t)=>e+t.orderedQuantity,0)},allCategories(){const t=this.products.map(r=>r.categories).flat().filter(r=>!!r).map(r=>r.toLowerCase()).reduce((r,a)=>(r[a]=(r[a]||0)+1,r),{});return Object.keys(t).map(r=>({category:r,count:t[r],selected:this.filterData.categories.indexOf(r)!==-1})).sort((r,a)=>a.count-r.count)},allCurrencies(){const e=this.products.map(t=>t.currency.toUpperCase());return[...new Set(e)]},allMerchants(){return[...new Set(this.markets.map(e=>e.opts.merchants).flat())]},allRelays(){return[...new Set(this.markets.map(e=>e.relays).flat())]},processedEventIds(){const e=this.stalls.map(r=>r.eventId),t=this.products.map(r=>r.eventId);return e.concat(t)},activeMarketRelaysData(){return this.activeMarket?Object.values(this.relaysData).filter(e=>e&&this.activeMarket.relays.includes(e.relayUrl)):[]},dmPeers(){this.dmEvents;const e="nostrmarket.dm.";return this.$q.localStorage.getAllKeys().filter(r=>r.startsWith(e)).map(r=>r.substring(e.length))}},async created(){this.bannerImage=this.defaultBanner,this.logoImage=this.defaultLogo,this._restoreFromStorage();const e=new URLSearchParams(window.location.search);await this.addMarket(e.get("naddr")),await this._handleQueryParams(e),this.isLoading=!1,this._loadRelaysData(),this._startRelaysHealtCheck()},methods:{async _handleQueryParams(e){const t=e.get("merchant");console.log("### merchantPubkey",t);const r=e.get("stall"),a=e.get("product");r&&(this.setActivePage("customer-stall"),a&&(this.activeProduct=a),this.activeStall=r),t&&(isValidKey(t)?this.allMerchants.includes(t)?this.$q.notify({message:"Request (URL) merchant already exists!",type:"positive"}):this.$q.dialog(confirm("We found a merchant pubkey in your request. Do you want to add it to the merchants list?")).onOk(async()=>{this.createMarket(!1,[t])}):this.$q.notify({message:"Invalid merchant public key!",icon:"warning"}))},_applyUiConfigs(e={}){const{name:t,about:r,ui:a}=e;this.$q.localStorage.set("nostrmarket.marketplaceConfig",{name:t,about:r,ui:a}),a!=null&&a.theme&&document.body.setAttribute("data-theme",a.theme),this.$q.dark.set(!!(a!=null&&a.darkMode))},handleFilterData(e){console.log("### handleFilterData",e),this.filterData=e,this.setActivePage("market")},async updateUiConfig(e={opts:{}}){var l;const{name:t,about:r,ui:a}=e.opts;this.config={...this.config,opts:{...this.config.opts,name:t,about:r,ui:a}},this._applyUiConfigs((l=this.config)==null?void 0:l.opts)},generateKeyPair(){this.accountDialog.data.key=NostrTools.generatePrivateKey(),this.accountDialog.data.watchOnly=!1},openAccountDialog(){this.accountDialog.show=!0},async createAccount(){if(isValidKey(this.accountDialog.data.key,"nsec")){let{key:e,watchOnly:t}=this.accountDialog.data;if(e.startsWith("n")){let{type:l,data:s}=NostrTools.nip19.decode(e);e=s}const r=t?null:e,a=t?e:NostrTools.getPublicKey(e);this.$q.localStorage.set("nostrmarket.account",{privkey:r,pubkey:a,nsec:NostrTools.nip19.nsecEncode(e),npub:NostrTools.nip19.npubEncode(a),useExtension:!1}),this.accountDialog.data={watchOnly:!1,key:null},this.accountDialog.show=!1,this.account=this.$q.localStorage.getItem("nostrmarket.account"),await this._requeryAllRelays()}this.accountDialog.show=!1},logout(){window.localStorage.removeItem("nostrmarket.account"),this._clearNonAccountData(),window.location.href=window.location.origin+window.location.pathname,this.account=null,this.accountMetadata=null},clearAllData(){this.$q.dialog(confirm("This will remove all information about merchants, products, relays and others. You will NOT be logged out. Do you want to proceed?")).onOk(async()=>{this._clearNonAccountData(),window.location.href=window.location.origin+window.location.pathname})},_clearNonAccountData(){this.$q.localStorage.getAllKeys().filter(e=>e!=="nostrmarket.account").forEach(e=>window.localStorage.removeItem(e)),this.orders=[],this.config={opts:null},this.shoppingCarts=[],this.checkoutCart=null},_startRelaysHealtCheck(){setInterval(()=>{Object.keys(this.relaysData).forEach(e=>{this.relaysData[e].relay.status===WebSocket.CLOSED&&this._connectToRelay(e)})},30*1e3)},async _toRelayKey(e){return"relay_"+await hash(e)},async _loadRelaysData(){for(const e of this.markets)for(const t of e.relays)await this._loadRelayData(t,e.opts.merchants);Object.keys(this.relaysData).forEach(this._connectToRelay)},async _loadRelayData(e,t){const r=await this._toRelayKey(e);this.relaysData[r]=this.relaysData[r]||{relayUrl:e,connected:!1,error:null,merchants:[],lastEventAt:this.getLastEventDateForRelay(e)};const a=this.relaysData[r];a.merchants=[...new Set(a.merchants.concat(t))]},getLastEventDateForRelay(e){const t=(this.$q.localStorage.getItem("nostrmarket.relays")||[]).find(r=>r.relayUrl===e);return console.log("### getLastEventForRelay",e,t),(t==null?void 0:t.lastEventAt)||0},async _connectToRelay(e){const t=this.relaysData[e];try{console.log(`Trying to connect to relay ${t.relayUrl}`),t.relay=NostrTools.relayInit(t.relayUrl),t.relay.on("connect",()=>{t.connected=!0,t.error=null,console.log(`Connected to relay ${t.relayUrl}`),this._queryRelay(e)}),t.relay.on("error",r=>{console.warn(`Error by relay ${t.relayUrl}`),t.connected=!1,t.error=r}),await t.relay.connect()}catch(r){t.connected=!1,t.error=`${r}`,console.warn(`Failed to connect to ${t.relayUrl}`)}},async _requeryAllRelays(){Object.keys(this.relaysData).forEach(async e=>{await this._requeryRelay(e)})},async _requeryRelay(e){var r;const t=this.relaysData[e];t.connected&&((r=t.sub)==null||r.unsub(),this._queryRelay(e))},_buildRelayFilters(e){var a;const t=e.merchants,r=[{kinds:[0,5,30017,30018],authors:t,since:e.lastEventAt+1}];if((a=this.account)!=null&&a.pubkey){const l=this._noDmEvents()?0:e.lastEventAt+1;r.push({kinds:[4],"#p":[this.account.pubkey],since:l},{kinds:[4],authors:[this.account.pubkey],since:l})}return r},async _queryRelay(e){const t=this.relaysData[e],r=this._buildRelayFilters(t),a=await t.relay.list(r);console.log("### _queryRelay.filters",t.relayUrl,r),console.log("### _queryRelay.events",t.relayUrl,a),a!=null&&a.length&&await this._processEvents(a,t),t.sub=t.relay.sub(r),t.sub.on("event",l=>{this._processEvents([l],t)},{id:"masterSub"})},async _publishEventToRelays(e,t){let r=0;for(const a of t)await this._publishEventToRelay(e,a)&&r++;return r},async _publishEventToRelay(e,t){try{const r=await this._toRelayKey(t),a=this.relaysData[r];return a!=null&&a.connected&&await a.relay.publish(e),!0}catch(r){return console.warn(r),!1}},_findRelaysForMerchant(e){const t=this.markets.filter(r=>r.opts.merchants.includes(e)).map(r=>r.relays).flat();return[...new Set(t)]},_processEvents(e,t){if(!(e!=null&&e.length))return;console.log("### _processEvents",t.relayUrl,e);const r=e.sort((a,l)=>l.created_at-a.created_at)[0].created_at;t.lastEventAt=Math.max(r,t.lastEventAt),e=e.filter(a=>!this.processedEventIds.includes(a.id)).map(a=>({...a,relayUrl:t.relayUrl})).map(eventToObj),e.filter(a=>a.kind===0).forEach(this._processProfileEvents),e.filter(a=>a.kind===4).forEach(this._processDmEvents),e.filter(a=>a.kind===5).forEach(this._processDeleteEvents),e.filter(a=>a.kind===30017).forEach(this._processStallEvents),e.filter(a=>a.kind===30018).forEach(this._processProductEvents),this._persistStallsAndProducts(),this._persistRelaysData()},_processProfileEvents(e){try{this.profiles=this.profiles.filter(t=>t.pubkey!==e.pubkey),this.profiles.push({pubkey:e.pubkey,...e.content}),this.$q.localStorage.set("nostrmarket.profiles",this.profiles)}catch(t){console.warn(t)}},_processStallEvents(e){this._processStall({...e.content,id:e.d,pubkey:e.pubkey,createdAt:e.created_at,eventId:e.id,relayUrls:[e.relayUrl]})},_processStall(e){const t=this.stalls.findIndex(a=>a.id===e.id&&a.pubkey===e.pubkey);if(t===-1){this.stalls.push(e);return}this.stalls[t].createdAta.pubkey===e.pubkey&&a.stall_id===e.id).forEach(a=>a.stallName=e.name))},_processProductEvents(e){const t={...e.content},r=this.stalls.find(a=>a.id==t.stall_id);!r||(t.currency!="sat"&&(t.formatedPrice=this.getAmountFormated(t.price,t.currency)),this._processProduct({...t,stallName:r.name,images:t.images||[t.image],pubkey:e.pubkey,id:e.d,categories:e.t,eventId:e.id,createdAt:e.created_at,relayUrls:[e.relayUrl]}))},_processProduct(e){const t=this.products.findIndex(a=>a.id===e.id&&a.pubkey===e.pubkey);if(t===-1){this.products.push(e);return}const r=this.products[t];r.relayUrls=[...new Set(e.relayUrls.concat(r.relayUrls))],r.createdAts==="p"&&u&&u!=="")[1],r=e.pubkey===this.account.pubkey;if(t!==this.account.pubkey&&!r){console.warn("Unexpected DM. Dropped!");return}const a=r?t:e.pubkey;e.content=await NostrTools.nip04.decrypt(this.account.privkey,a,e.content),this._persistDMEvent(e,a),isJson(e.content)&&await this._handleStructuredDm(e,a)},async _processDeleteEvents(e){const t=(e.tags||[]).filter(s=>s[0]==="e").map(s=>s[1]),r=this.stalls.filter(s=>s.pubkey===e.pubkey&&t.includes(s.eventId)).map(s=>s.id),a=s=>s.pubkey===e.pubkey&&(t.includes(s.eventId)||r.includes(s.stall_id));this.products=this.products.filter(s=>!a(s));const l=s=>s.pubkey===e.pubkey&&t.includes(s.eventId);this.stalls=this.stalls.filter(s=>!l(s))},async createMarket(e,t){var r;try{this.setActivePage("loading");const a={d:crypto.randomUUID(),pubkey:((r=this.account)==null?void 0:r.pubkey)||"",relays:[...defaultRelays],selected:!0,opts:{name:"New Market",merchants:t||[],ui:{}}};this.markets.unshift(a),this.$q.localStorage.set("nostrmarket.markets",this.markets);for(const l of a.relays)this._handleNewRelay(l,a);e===!0&&this.showMarketConfig(0)}catch(a){console.warn(a)}finally{this.setActivePage("market-config")}},async addMarket(e){if(!!e)try{this.setActivePage("loading");const{type:t,data:r}=NostrTools.nip19.decode(e);if(t!=="naddr"||r.kind!==30019)return;const a={d:r.identifier,pubkey:r.pubkey,relays:r.relays,selected:!0},s=await new NostrTools.SimplePool().get(a.relays,{kinds:[30019],limit:1,authors:[a.pubkey],"#d":[a.d]});if(!s)return;isJson(s.content)&&(a.opts=JSON.parse(s.content),this.$q.dialog(confirm(`Do you want to use the look and feel of the '${a.opts.name}' market?`)).onOk(async()=>{this.config={...this.config,opts:a.opts},this._applyUiConfigs(a==null?void 0:a.opts)})),this.markets=this.markets.filter(u=>u.d!==a.d||u.pubkey!==a.pubkey),this.markets.unshift(a),this.$q.localStorage.set("nostrmarket.markets",this.markets);for(const u of a.relays)await this._handleNewRelay(u,a)}catch(t){console.warn(t)}finally{this.setActivePage("market")}},updateMarket(e){var t,r;try{this.isLoading=!0;const{d:a,pubkey:l}=e,s=this.markets.find(v=>v.d===a&&v.pubkey===l)||{},u=(t=e.opts)==null?void 0:t.merchants.filter(v=>{var C;return!((C=s.opts)!=null&&C.merchants.includes(v))}),d=(r=s.opts)==null?void 0:r.merchants.filter(v=>{var C;return!((C=e.opts)!=null&&C.merchants.includes(v))}),f=e.relays.filter(v=>!s.relays.includes(v)),g=s.relays.filter(v=>!e.relays.includes(v));this.markets=this.markets.filter(v=>v.d!==a||v.pubkey!==l),this.markets.unshift(e),this.$q.localStorage.set("nostrmarket.markets",this.markets),d==null||d.forEach(this._handleRemoveMerchant),u==null||u.forEach(v=>this._handleNewMerchant(e,v)),console.log("### newRelays",f),console.log("### removedRelays",g),f==null||f.forEach(v=>this._handleNewRelay(v,e)),g==null||g.forEach(this._handleRemovedRelay),this._persistStallsAndProducts(),this._persistRelaysData()}catch(a){console.warn(a)}finally{this.isLoading=!1}},deleteMarket(e){var t,r;try{this.isLoading=!0;const{d:a,pubkey:l}=e;this.markets=this.markets.filter(s=>s.d!==a||s.pubkey!==l),this.$q.localStorage.set("nostrmarket.markets",this.markets),this.activeMarket&&this.activeMarket.d===a&&this.activeMarket.pubkey===l&&(this.activeMarket=null,this.navigateTo("market"),this.updateUiConfig(this.markets[0])),(t=e.opts.merchants)==null||t.forEach(this._handleRemoveMerchant),(r=e.relays)==null||r.forEach(this._handleRemovedRelay),this._persistStallsAndProducts(),this._persistRelaysData()}catch(a){console.warn(a)}finally{this.isLoading=!1}},toggleMarket(){this.allMarketsSelected=!this.markets.find(e=>!e.selected),this.$q.localStorage.set("nostrmarket.markets",this.markets)},toggleAllMarkets(){this.markets.forEach(e=>e.selected=this.allMarketsSelected),this.$q.localStorage.set("nostrmarket.markets",this.markets)},showMarketConfig(e){this.activeMarket=this.markets[e],this.transitToPage("market-config")},async publishNaddr(e){var l,s;if(!((l=this.account)!=null&&l.privkey)){this.openAccountDialog(),this.$q.notify({message:"Login Required!",icon:"warning"});return}console.log("### marketData",e);const t=(s=e.d)!=null?s:crypto.randomUUID(),r={...await NostrTools.getBlankEvent(),kind:30019,content:JSON.stringify(e.opts),created_at:Math.floor(Date.now()/1e3),tags:[["d",t]],pubkey:this.account.pubkey};r.id=NostrTools.getEventHash(r);try{r.sig=await NostrTools.signEvent(r,this.account.privkey);const u=await this._publishEventToRelays(r,e.relays);this.$q.notify({type:u?"positive":"warning",message:u?`The market profile has been published tp (${u} relays)!`:"The market profile could not be published"})}catch(u){console.error(u),this.$q.notify({message:"Cannot publish market profile",caption:`Error: ${u}`,color:"negative"});return}const a=NostrTools.nip19.naddrEncode({pubkey:r.pubkey,kind:30019,identifier:t,relays:e.relays});this.copyText(a)},_handleNewMerchant(e,t){Object.keys(this.relaysData).forEach(async r=>{const a=this.relaysData[r];if(!e.relays.includes(a.relayUrl)||a.merchants.includes(t))return;const l=await a.relay.list([{kinds:[0,30017,30018],authors:[t]}]);await this._processEvents(l,a),a.merchants.push(t),await this._requeryRelay(r)})},async _handleNewRelay(e,t){const r=await this._toRelayKey(e);if(this.relaysData[r]){const a=this.relaysData[r],l=await a.relay.list([{kinds:[0,30017,30018],authors:t.opts.merchants}]);await this._processEvents(l,a),a.merchants=[...new Set(a.merchants.concat(t.opts.merchants))],await this._requeryRelay(r)}else await this._loadRelayData(e,t.opts.merchants),await this._connectToRelay(r)},_handleRemoveMerchant(e){this.markets.find(r=>r.opts.merchants.find(a=>a===e))||(this.products=this.products.filter(r=>r.pubkey!==e),this.stalls=this.stalls.filter(r=>r.pubkey!==e),this._removeSubscriptionsForMerchant(e))},_removeSubscriptionsForMerchant(e){Object.keys(this.relaysData).forEach(async t=>{const r=this.relaysData[t];!r.merchants.includes(e)||(r.merchants=r.merchants.filter(a=>a!==e),await this._requeryRelay(t))})},async _handleRemovedRelay(e){if(!this.markets.find(r=>r.relays.find(a=>a===e))){const r=await this._toRelayKey(e);delete this.relaysData[r],this._persistRelaysData()}},addProductToCart(e){let t=this.shoppingCarts.find(a=>a.id===e.stall_id);t||(t={id:e.stall_id,products:[]},this.shoppingCarts.push(t)),t.merchant=e.pubkey;let r=t.products.find(a=>a.id===e.id);r||(r={...e,orderedQuantity:0},t.products.push(r)),r.orderedQuantity=Math.min(r.quantity,e.orderedQuantity||r.orderedQuantity+1),this.$q.localStorage.set("nostrmarket.shoppingCarts",this.shoppingCarts),this.$q.notify({type:"positive",message:"Product added to cart!"})},removeProductFromCart(e){const t=this.shoppingCarts.find(r=>r.id===e.stallId);t&&(t.products=t.products.filter(r=>r.id!==e.productId),t.products.length||(this.shoppingCarts=this.shoppingCarts.filter(r=>r.id!==e.stallId)),this.$q.localStorage.set("nostrmarket.shoppingCarts",this.shoppingCarts))},removeCart(e){this.shoppingCarts=this.shoppingCarts.filter(t=>t.id!==e),this.$q.localStorage.set("nostrmarket.shoppingCarts",this.shoppingCarts)},checkoutStallCart(e){this.checkoutCart=e,this.checkoutStall=this.stalls.find(t=>t.id===e.id),this.setActivePage("shopping-cart-checkout")},handleDmChatSelected(e){this.dmEvents=this.$q.localStorage.getItem(`nostrmarket.dm.${e}`)||{}},async sendDirectMessage(e){var t;if(!((t=this.account)!=null&&t.pubkey)){this.$q.notify({type:"warning",message:"Cannot send message. No user logged in!"});return}try{const r={...await NostrTools.getBlankEvent(),kind:4,created_at:Math.floor(Date.now()/1e3),tags:[["p",e.to]],pubkey:this.account.pubkey};r.content=await NostrTools.nip04.encrypt(this.account.privkey,e.to,e.message),r.id=NostrTools.getEventHash(r),r.sig=await NostrTools.signEvent(r,this.account.privkey),await this._sendDmEvent(r),r.content=e.message,this._persistDMEvent(r,e.to)}catch{this.$q.notify({type:"warning",message:"Failed to send message!"})}},async _sendDmEvent(e){const t=e.tags.filter(a=>a[0]==="p").map(a=>a[1]);let r=this._findRelaysForMerchant(t[0]);r!=null&&r.length||(r=[...defaultRelays]),await this._publishEventToRelays(e,r)},_noDmEvents(){return this.$q.localStorage.getAllKeys().filter(t=>t.startsWith("nostrmarket.dm")).length===0},async placeOrder({event:e,order:t,cartId:r}){var a;if(!((a=this.account)!=null&&a.privkey)){this.openAccountDialog();return}try{this.activeOrderId=t.id,e.content=await NostrTools.nip04.encrypt(this.account.privkey,this.checkoutStall.pubkey,JSON.stringify(t)),e.id=NostrTools.getEventHash(e),e.sig=await NostrTools.signEvent(e,this.account.privkey),await this._sendOrderEvent(e),this._persistOrderUpdate(this.checkoutStall.pubkey,e.created_at,t),this.removeCart(r),this.setActivePage("shopping-cart-list")}catch(l){console.warn(l),this.$q.notify({type:"warning",message:"Failed to place order!"})}},async _sendOrderEvent(e){const t=e.tags.filter(l=>l[0]==="p").map(l=>l[1]),r=this._findRelaysForMerchant(t[0]),a=await this._publishEventToRelays(e,r);this.$q.notify({type:a?"positive":"warning",message:a?`The order has been placed (${a} relays)!`:"Order could not be placed"}),this.qrCodeDialog={data:{payment_request:null,message:null},dismissMsg:null,show:!!a}},_handlePaymentRequest(e){var r;if(e.id&&e.id!==this.activeOrderId)return;if(!((r=e.payment_options)!=null&&r.length)){this.qrCodeDialog.data.message=e.message||"Unexpected error";return}const t=e.payment_options.find(a=>a.type=="ln").link;!t||(this.qrCodeDialog.data.payment_request=t,this.qrCodeDialog.dismissMsg=this.$q.notify({timeout:1e4,message:"Waiting for payment..."}))},_handleOrderStatusUpdate(e){if(e.id&&e.id!==this.activeOrderId)return;this.qrCodeDialog.dismissMsg&&this.qrCodeDialog.dismissMsg(),this.qrCodeDialog.show=!1;const t=e.shipped?"Order shipped":e.paid?"Order paid":"Order notification";this.$q.notify({type:"positive",message:t,caption:e.message||""})},async _handleStructuredDm(e,t){try{const r=JSON.parse(e.content);[0,1,2].indexOf(r.type)!==-1&&this._persistOrderUpdate(t,e.created_at,r),r.type===1?this._handlePaymentRequest(r):r.type===2&&this._handleOrderStatusUpdate(r)}catch(r){console.warn("Unable to handle incomming DM",r)}},_restoreFromStorage(){this.markets=this.$q.localStorage.getItem("nostrmarket.markets")||[],this.allMarketsSelected=!this.markets.find(l=>!l.selected),this.shoppingCarts=this.$q.localStorage.getItem("nostrmarket.shoppingCarts")||[],this.profiles=this.$q.localStorage.getItem("nostrmarket.profiles")||[],this.account=this.$q.localStorage.getItem("nostrmarket.account")||null,this.stalls=this.$q.localStorage.getItem("nostrmarket.stalls")||[],this.products=this.$q.localStorage.getItem("nostrmarket.products")||[];const e=this.$q.localStorage.getItem("nostrmarket.marketplaceConfig")||{ui:{darkMode:!1}};this.config={...this.config,opts:{...this.config.opts,...e}},this._applyUiConfigs(this.config.opts);const t="nostrmarket.orders.";this.$q.localStorage.getAllKeys().filter(l=>l.startsWith(t)).forEach(l=>{const s=l.substring(t.length);this.orders[s]=this.$q.localStorage.getItem(l)});const a=this.$q.localStorage.getItem("nostrmarket.readNotes")||{};this.readNotes={...this.readNotes,...a}},_persistStallsAndProducts(){this.$q.localStorage.set("nostrmarket.stalls",this.stalls),this.$q.localStorage.set("nostrmarket.products",this.products)},_persistRelaysData(){this.$q.localStorage.set("nostrmarket.relays",Object.values(this.relaysData).filter(e=>!!e).map(e=>({lastEventAt:e.lastEventAt,relayUrl:e.relayUrl})))},_persistDMEvent(e,t){var l;const r=this.$q.localStorage.getItem(`nostrmarket.dm.${t}`)||{events:[],lastCreatedAt:0};r.events.find(s=>s.id===e.id)||(r.events.push(e),r.events.sort((s,u)=>s.created_at-u.created_at),r.lastCreatedAt=r.events[r.events.length-1].created_at,r.peerPubkey=t,this.$q.localStorage.set(`nostrmarket.dm.${t}`,r),((l=this.dmEvents)==null?void 0:l.peerPubkey)===t?this.dmEvents=this.$q.localStorage.getItem(`nostrmarket.dm.${t}`)||{}:this.dmEvents={...this.dmEvents})},_persistOrderUpdate(e,t,r){let a=this.$q.localStorage.getItem(`nostrmarket.orders.${e}`)||[];const l=a.findIndex(u=>u.id===r.id);if(l===-1){a.unshift({...r,eventCreatedAt:t,createdAt:t}),this.orders[e]=a,this.orders={...this.orders},this.$q.localStorage.set(`nostrmarket.orders.${e}`,a);return}let s=a[l];r.type===0?(s.createdAt=t,s={...s,...r,message:s.message||r.message}):s=s.eventCreatedAtf.id==r))==null?void 0:d.pubkey);s.searchParams.set("merchant",u),e==="stall"||e==="product"?r&&(this.activeStall=r,this.setActivePage("customer-stall"),s.searchParams.set("stall",r),this.activeProduct=a,a?s.searchParams.set("product",a):s.searchParams.delete("product")):(this.activeMarket=null,this.activeStall=null,this.activeProduct=null,s.searchParams.delete("merchant"),s.searchParams.delete("stall"),s.searchParams.delete("product"),this.setActivePage(e)),window.history.pushState({},"",s)},copyUrl:function(){this.copyText(window.location)},copyText:function(e){var t=this.$q.notify;AS(e).then(function(){t({message:"Copied to clipboard!",position:"bottom"})})},getAmountFormated(e,t="USD"){return formatCurrency(e,t)},setActivePage(e="market"){this.activePage=e},transitToPage(e){this.activePage="loading",setTimeout(()=>this.setActivePage(e),100)},showInvoiceQr(e){!e||(this.qrCodeDialog={data:{payment_request:e},dismissMsg:null,show:!0})},toggleCategoryFilter(e){const t=this.filterData.categories.indexOf(e);t===-1?this.filterData.categories.push(e):this.filterData.categories.splice(t,1)},hasCategory(e=[]){var t;if(!((t=this.filterData.categories)!=null&&t.length))return!0;for(const r of e)if(this.filterData.categories.indexOf(r.toLowerCase())!==-1)return!0;return!1},allStallCatgories(e){const t=this.products.filter(r=>r.stall_id===e).map(r=>r.categories).flat().filter(r=>!!r);return Array.from(new Set(t))},allStallImages(e){const t=this.products.filter(r=>r.stall_id===e).map(r=>r.images&&r.images[0]).filter(r=>!!r);return Array.from(new Set(t))},sanitizeImageSrc(e,t){try{if(e)return new URL(e),e}catch{}return t},markNoteAsRead(e){this.readNotes[e]=!0,this.$q.localStorage.set("nostrmarket.readNotes",this.readNotes)},focusOnElement(e){var t;(t=document.getElementById(e))==null||t.scrollIntoView(),this.showFilterDetails=!0}}}),sA=Object.assign(aA,{setup(e){return window.$q=Lw(),(t,r)=>(O(),re(Nt,null,[y($w,null,{default:b(()=>{var a,l,s,u,d;return[S("div",mx,[S("div",vx,[y(Xr,{onClick:r[0]||(r[0]=f=>t.navigateTo("market")),rounded:"",size:"64px",class:"q-ma-none q-pa-none gt-sm cursor-pointer"},{default:b(()=>[t.logoImage?(O(),re("img",{key:0,src:t.logoImage},null,8,px)):$e("",!0)]),_:1})]),S("div",yx,[_x,y(It,{class:"rounded-pill",style:{width:"100%"},rounded:"",outlined:"",clearable:"",modelValue:t.searchText,"onUpdate:modelValue":r[1]||(r[1]=f=>t.searchText=f),modelModifiers:{trim:!0},label:"Filter products, load market profile..."},jh({append:b(()=>[t.searchText?$e("",!0):(O(),oe(Yt,{key:0,name:"search"}))]),_:2},[t.showFilterDetails?{name:"label",fn:b(()=>[Te(" Filter or paste a "),y(Cn,{class:"q-px-sm text-subtitle1",color:"secondary"},{default:b(()=>[Te("naddr")]),_:1}),Te(" here ")]),key:"0"}:void 0]),1032,["modelValue"])]),S("div",bx,[S("div",wx,[y(ye,{color:"gray",icon:"travel_explore",flat:"",size:"lg",onClick:r[2]||(r[2]=f=>t.navigateTo("product-filter"))},{default:b(()=>[y(Qr,null,{default:b(()=>[Te("Search for products on Nostr")]),_:1}),t.filterCount?(O(),oe(Cn,{key:0,color:"secondary",floating:""},{default:b(()=>[S("span",{textContent:ge(t.filterCount)},null,8,Sx)]),_:1})):$e("",!0)]),_:1}),y(ye,{onClick:r[3]||(r[3]=f=>t.navigateTo("user-config")),color:"gray",icon:t.account?"perm_identity":"person_add",flat:"",size:"lg"},{default:b(()=>[y(Qr,null,{default:b(()=>[Te("User Config")]),_:1})]),_:1},8,["icon"]),y(ye,{onClick:r[4]||(r[4]=f=>t.navigateTo("user-chat")),color:"gray",icon:"chat",flat:"",size:"lg"},{default:b(()=>[y(Qr,null,{default:b(()=>[Te("Chat")]),_:1})]),_:1}),y(ye,{onClick:r[5]||(r[5]=f=>t.navigateTo("customer-orders")),color:"gray",icon:"receipt_long",flat:"",size:"lg"},{default:b(()=>[y(Qr,null,{default:b(()=>[Te("Orders")]),_:1})]),_:1}),y(ye,{color:"gray",icon:"shopping_cart",dense:"",round:"",flat:"",size:"lg",onClick:r[6]||(r[6]=f=>t.navigateTo("shopping-cart-list"))},{default:b(()=>[y(Qr,null,{default:b(()=>[Te("Shopping Cart")]),_:1}),t.allCartsItemCount?(O(),oe(Cn,{key:0,color:"secondary",floating:""},{default:b(()=>[S("span",{textContent:ge(t.allCartsItemCount)},null,8,kx)]),_:1})):$e("",!0)]),_:1})])])]),(a=t.products)!=null&&a.length?(O(),re("div",Cx,[y(lc,{items:t.allCategories,"virtual-scroll-horizontal":""},{default:b(({item:f,index:g})=>[(O(),oe(Qa,{key:g,color:f.selected?"grey":"",class:"cursor-pointer q-mb-md"},{default:b(()=>[S("span",{textContent:ge(f.category),onClick:v=>t.toggleCategoryFilter(f.category)},null,8,Tx),y(Cn,{onClick:v=>t.toggleCategoryFilter(f.category),rounded:"",class:"q-ml-sm",color:"secondary"},{default:b(()=>[S("span",{textContent:ge(f.count)},null,8,Mx)]),_:2},1032,["onClick"])]),_:2},1032,["color"]))]),_:1},8,["items"])])):$e("",!0),t.markets.length?$e("",!0):(O(),oe(Jt,{key:1,class:"q-mb-sm"},{default:b(()=>[y(Ne,{class:"bg-secondary text-white"},{default:b(()=>[Dx,qx]),_:1})]),_:1})),t.isLoading?(O(),re("div",Px,[S("div",xx,[y($u,{color:"primary",size:"xl"})])])):$e("",!0),y(qw,{class:"row q-pa-none q-mb-lg gt-sm shadow-2"},{default:b(()=>[t.bannerImage?(O(),oe(oc,{key:0,src:t.bannerImage,onClick:r[7]||(r[7]=f=>t.navigateTo("market")),class:"rounded-borders cursor-pointer",style:{width:"100%",height:"250px"},cover:""},{default:b(()=>{var f,g;return[(g=(f=t.config)==null?void 0:f.opts)!=null&&g.about?(O(),re("div",Ax,[S("span",{textContent:ge(t.config.opts.about)},null,8,Ex)])):$e("",!0)]}),_:1},8,["src"])):$e("",!0)]),_:1}),S("div",Ix,[S("div",$x,[y(Iw,{class:"cursor q-mt-sm q-mr-sm"},{default:b(()=>[y(Sr,null,{default:b(()=>[y(ye,{onClick:r[8]||(r[8]=f=>t.navigateTo("market")),icon:"home",flat:"",class:"q-pa-none"},{default:b(()=>[S("span",{textContent:ge(t.marketsName),class:"q-ml-sm"},null,8,Ox)]),_:1}),y(lg,{flat:"",class:"q-pl-xs"},{default:b(()=>[y(Mr,null,{default:b(()=>[Gn((O(),oe(Vt,null,{default:b(()=>[y(Ie,{side:"",top:""},{default:b(()=>[y(lo,{modelValue:t.allMarketsSelected,"onUpdate:modelValue":r[9]||(r[9]=f=>t.allMarketsSelected=f),onClick:t.toggleAllMarkets},null,8,["modelValue","onClick"])]),_:1}),y(Ie,null,{default:b(()=>[y(Ke,null,{default:b(()=>[Rx]),_:1}),y(Ke,{caption:""},{default:b(()=>[Te("Aggregate all markets into one view")]),_:1})]),_:1}),y(Ie,{side:"",top:""},{default:b(()=>[Gn((O(),oe(ye,{onClick:r[10]||(r[10]=f=>t.createMarket(!0)),color:"green",outline:""},{default:b(()=>[Te("New")]),_:1})),[[Gi]])]),_:1})]),_:1})),[[Ju]]),y(ut),(O(!0),re(Nt,null,Wt(t.markets,(f,g)=>(O(),oe(Vt,{key:g},{default:b(()=>[y(Ie,{side:"",top:""},{default:b(()=>[y(lo,{modelValue:f.selected,"onUpdate:modelValue":v=>f.selected=v,onClick:r[11]||(r[11]=v=>t.toggleMarket())},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),y(Ie,null,{default:b(()=>[y(Ke,null,{default:b(()=>{var v;return[S("span",{textContent:ge(((v=f.opts)==null?void 0:v.name)||"Market")},null,8,Lx)]}),_:2},1024),y(Ke,{caption:""},{default:b(()=>{var v;return[S("span",{textContent:ge((v=f.opts)==null?void 0:v.about),class:"ellipsis-2-lines text-wrap"},null,8,Nx)]}),_:2},1024)]),_:2},1024),y(Ie,{side:"",top:""},{default:b(()=>[Gn(y(ye,{color:"secondary",flat:"",icon:"settings",onClick:v=>t.showMarketConfig(g)},null,8,["onClick"]),[[Gi]])]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})]),_:1}),t.activePage==="customer-stall"?(O(),oe(Sr,{key:0,label:t.stallName,onClick:r[12]||(r[12]=f=>t.navigateTo("stall",{stall:t.activeStall})),icon:"storefront",class:"cursor-pointer"},null,8,["label"])):$e("",!0),t.activePage==="customer-stall"&&t.activeProduct?(O(),oe(Sr,{key:1,label:t.productName,class:"cursor-pointer",icon:"widgets"},null,8,["label"])):$e("",!0),t.activePage==="shopping-cart-list"?(O(),oe(Sr,{key:2,label:"Shoping Cart",icon:"shopping_cart"})):$e("",!0),t.activePage==="customer-orders"?(O(),oe(Sr,{key:3,label:"Orders",icon:"receipt_long"})):$e("",!0),t.activePage==="market-config"?(O(),oe(Sr,{key:4,label:"Settings",icon:"settings"})):$e("",!0),t.activePage==="product-filter"?(O(),oe(Sr,{key:5,label:"Filter",icon:"travel_explore"})):$e("",!0),t.activePage==="user-config"?(O(),oe(Sr,{key:6,label:"User Config",icon:"perm_identity"})):$e("",!0),t.activePage==="user-chat"?(O(),oe(Sr,{key:7,label:"User Chat",icon:"chat"})):$e("",!0)]),_:1})]),S("div",Bx,[t.activePage==="customer-stall"?(O(),oe(ye,{key:0,flat:"",color:"grey",icon:"content_copy",onClick:r[13]||(r[13]=f=>t.copyUrl()),class:"float-right"})):t.activePage==="market"&&((l=t.stalls)==null?void 0:l.length)?(O(),oe(lo,{key:1,modelValue:t.groupByStall,"onUpdate:modelValue":r[14]||(r[14]=f=>t.groupByStall=f),class:"q-pl-md q-mt-sm float-right",size:"xs",val:"xs",label:"Group by stalls"},null,8,["modelValue"])):$e("",!0)])]),y(ut,{class:"q-mt-sm q-mb-md"}),t.activePage==="loading"?(O(),re("div",Fx,[S("div",Ux,[y($u,{color:"primary",size:"xl"})])])):$e("",!0),t.activePage==="product-filter"?(O(),oe(gx,{key:4,filter:t.filterData,categories:t.allCategories,currencies:t.allCurrencies,merchants:t.allMerchants,stalls:t.stalls,profiles:t.profiles,onFilterUpdate:t.handleFilterData,class:"q-mb-md"},null,8,["filter","categories","currencies","merchants","stalls","profiles","onFilterUpdate"])):t.activeMarket&&t.activePage==="market-config"?(O(),oe(Ig,{key:5,market:t.activeMarket,profiles:t.profiles,"relays-data":t.activeMarketRelaysData,"read-notes":t.readNotes,onApplyUi:t.updateUiConfig,onMarketUpdate:t.updateMarket,onDeleteMarket:t.deleteMarket,onPublishNaddr:t.publishNaddr,onNoteRead:t.markNoteAsRead},null,8,["market","profiles","relays-data","read-notes","onApplyUi","onMarketUpdate","onDeleteMarket","onPublishNaddr","onNoteRead"])):t.activePage==="user-config"?(O(),oe(Vk,{key:6,account:t.account,onLogin:r[15]||(r[15]=f=>t.accountDialog.show=!0),onLogout:t.logout,onClearAllData:t.clearAllData,onCopyText:t.copyText},null,8,["account","onLogout","onClearAllData","onCopyText"])):t.activePage==="user-chat"?(O(),oe(hD,{key:7,"account-pubkey":(s=t.account)==null?void 0:s.pubkey,"peer-pubkeys":t.dmPeers,profiles:t.profiles,events:t.dmEvents,onChatSelected:t.handleDmChatSelected,onSendDm:t.sendDirectMessage},null,8,["account-pubkey","peer-pubkeys","profiles","events","onChatSelected","onSendDm"])):t.activePage==="shopping-cart-list"?(O(),oe(wD,{key:8,carts:t.shoppingCarts,profiles:t.profiles,onAddToCart:t.addProductToCart,onRemoveFromCart:t.removeProductFromCart,onRemoveCart:t.removeCart,onCheckoutCart:t.checkoutStallCart},null,8,["carts","profiles","onAddToCart","onRemoveFromCart","onRemoveCart","onCheckoutCart"])):t.activePage==="shopping-cart-checkout"?(O(),oe(nq,{key:9,cart:t.checkoutCart,stall:t.checkoutStall,"customer-pubkey":(u=t.account)==null?void 0:u.pubkey,profiles:t.profiles,onLoginRequired:t.openAccountDialog,onPlaceOrder:t.placeOrder,onChangePage:t.navigateTo},null,8,["cart","stall","customer-pubkey","profiles","onLoginRequired","onPlaceOrder","onChangePage"])):t.activePage==="customer-orders"?(O(),oe(tP,{key:10,orders:t.orders,products:t.products,stalls:t.stalls,profiles:t.profiles,onShowInvoice:t.showInvoiceQr},null,8,["orders","products","stalls","profiles","onShowInvoice"])):t.activePage==="customer-stall"?(O(),oe(OP,{key:11,stall:t.stalls.find(f=>f.id==t.activeStall),products:t.filteredProducts,"product-detail":t.activeProduct,onChangePage:t.navigateTo,onAddToCart:t.addProductToCart},null,8,["stall","products","product-detail","onChangePage","onAddToCart"])):(d=t.markets)!=null&&d.length?(O(),re("div",Qx,[t.groupByStall?(O(),oe(ZP,{key:0,stalls:t.filterStalls,onChangePage:t.navigateTo},null,8,["stalls","onChangePage"])):(O(),oe(Tq,{key:1,"filtered-products":t.filteredProducts,"search-text":t.searchText,"filter-categories":t.filterData.categories,onChangePage:t.navigateTo,onAddToCart:t.addProductToCart},null,8,["filtered-products","search-text","filter-categories","onChangePage","onAddToCart"]))])):(O(),re("div",zx,[y(Mr,{class:"q-mt-md",bordered:""},{default:b(()=>[y(Vt,null,{default:b(()=>[y(Ie,{class:"q-mt-sm q-ml-lg"},{default:b(()=>[y(Ke,null,{default:b(()=>[Vx]),_:1}),y(ut,{class:"q-mb-xl q-mt-md"}),y(Ke,null,{default:b(()=>[Yx]),_:1})]),_:1})]),_:1}),y(Vt,null,{default:b(()=>[y(Ie,{class:"q-mt-sm q-ml-lg"},{default:b(()=>[y(Ke,null,{default:b(()=>[S("ul",null,[S("li",null,[S("span",Wx,[y(ye,{onClick:r[16]||(r[16]=f=>t.addMarket(t.defaultMarketNaddr)),size:"xl",flat:"",color:"secondary",class:"q-mb-xs"},{default:b(()=>[Te("Import")]),_:1}),Te(" a list of popular merchants, or ")])]),S("li",null,[S("span",Hx,[y(ye,{onClick:r[17]||(r[17]=f=>t.createMarket(!0)),flat:"",size:"xl",color:"secondary",class:"q-mb-xs"},{default:b(()=>[Te("Add a merchant")]),_:1}),Te(" using its public key, or ")])]),S("li",null,[S("span",Kx,[y(ye,{onClick:r[18]||(r[18]=f=>t.focusOnElement("search-text")),flat:"",size:"xl",color:"secondary",class:"q-mb-xs"},{default:b(()=>[Te("Add a market profile")]),_:1}),Te(" using a shareable "),Gx,Te(" identifier ")]),y(It,{class:"rounded-pill",style:{width:"100%"},rounded:"",outlined:"",clearable:"",modelValue:t.searchText,"onUpdate:modelValue":r[19]||(r[19]=f=>t.searchText=f),modelModifiers:{trim:!0},label:"Load market profile (naddr)..."},null,8,["modelValue"])])])]),_:1})]),_:1}),y(Ie,{side:""})]),_:1})]),_:1})]))]}),_:1}),y(go,{modelValue:t.accountDialog.show,"onUpdate:modelValue":r[22]||(r[22]=a=>t.accountDialog.show=a),position:"top"},{default:b(()=>[y(Jt,null,{default:b(()=>[y(Ne,{class:"row"},{default:b(()=>[jx,y(Rw)]),_:1}),y(Ne,null,{default:b(()=>[Zx]),_:1}),y(Ne,{class:"q-pt-none"},{default:b(()=>[y(It,{dense:"",label:"Nsec/Hex",modelValue:t.accountDialog.data.key,"onUpdate:modelValue":r[20]||(r[20]=a=>t.accountDialog.data.key=a),autofocus:"",onKeyup:Au(t.createAccount,["enter"]),error:t.accountDialog.data.key&&!t.isValidAccountKey,hint:"Enter you private key"},null,8,["modelValue","onKeyup","error"])]),_:1}),y(wi,{align:"right",class:"text-primary"},{default:b(()=>[t.isValidAccountKey?(O(),oe(ye,{key:0,label:"Login",color:"primary",onClick:r[21]||(r[21]=()=>t.createAccount())})):(O(),oe(ye,{key:1,flat:"",label:"Generate",onClick:t.generateKeyPair},null,8,["onClick"])),Gn((O(),oe(ye,{flat:"",color:"grey",class:"q-ml-auto"},{default:b(()=>[Te("Close")]),_:1})),[[Gi]])]),_:1})]),_:1})]),_:1},8,["modelValue"]),y(go,{modelValue:t.qrCodeDialog.show,"onUpdate:modelValue":r[24]||(r[24]=a=>t.qrCodeDialog.show=a),position:"top"},{default:b(()=>[y(Jt,{class:"q-pa-md q-pt-xl"},{default:b(()=>{var a;return[S("div",Jx,[t.qrCodeDialog.data.message?(O(),re("div",Xx,[S("strong",null,[S("span",{textContent:ge(t.qrCodeDialog.data.message)},null,8,eA)])])):(O(),re("a",{key:1,href:"lightning:"+((a=t.qrCodeDialog.data)==null?void 0:a.payment_request)},[t.qrCodeDialog.data.payment_request?(O(),re("div",nA,[y(uw(PS),{value:t.qrCodeDialog.data.payment_request,options:{width:340},class:"rounded-borders"},null,8,["value"])])):(O(),re("div",rA,[y(Rh,{color:"primary",size:"2.55em"})]))],8,tA))]),S("div",iA,[t.qrCodeDialog.data.payment_request?(O(),oe(ye,{key:0,outline:"",color:"grey",onClick:r[23]||(r[23]=l=>t.copyText(t.qrCodeDialog.data.payment_request))},{default:b(()=>[Te("Copy invoice")]),_:1})):$e("",!0),Gn((O(),oe(ye,{flat:"",color:"grey",class:"q-ml-auto"},{default:b(()=>[Te("Close")]),_:1})),[[Gi]])])]}),_:1})]),_:1},8,["modelValue"])],64))}});export{sA as default}; diff --git a/static/market/assets/QResizeObserver.0b22f089.js b/static/market/assets/QResizeObserver.0b22f089.js new file mode 100644 index 0000000..3373076 --- /dev/null +++ b/static/market/assets/QResizeObserver.0b22f089.js @@ -0,0 +1 @@ +import{P as _,K as F,L as m,M as S,N as Y,O as h,Q as b,R as P,S as y,T as w,U as C,V as B,c as k,w as M,o as g,k as z,W as j,t as N,X as T,Y as Q,Z as V,r as $,z as H,n as L,p as U}from"./index.dfb4e5db.js";const q={left:!0,right:!0,up:!0,down:!0,horizontal:!0,vertical:!0},I=Object.keys(q);q.all=!0;function R(o){const t={};for(const i of I)o[i]===!0&&(t[i]=!0);return Object.keys(t).length===0?q:(t.horizontal===!0?t.left=t.right=!0:t.left===!0&&t.right===!0&&(t.horizontal=!0),t.vertical===!0?t.up=t.down=!0:t.up===!0&&t.down===!0&&(t.vertical=!0),t.horizontal===!0&&t.vertical===!0&&(t.all=!0),t)}const K=["INPUT","TEXTAREA"];function x(o,t){return t.event===void 0&&o.target!==void 0&&o.target.draggable!==!0&&typeof t.handler=="function"&&K.includes(o.target.nodeName.toUpperCase())===!1&&(o.qClonedBy===void 0||o.qClonedBy.indexOf(t.uid)===-1)}function W(){if(window.getSelection!==void 0){const o=window.getSelection();o.empty!==void 0?o.empty():o.removeAllRanges!==void 0&&(o.removeAllRanges(),_.is.mobile!==!0&&o.addRange(document.createRange()))}else document.selection!==void 0&&document.selection.empty()}function E(o,t,i){const u=w(o);let e,n=u.left-t.event.x,s=u.top-t.event.y,a=Math.abs(n),l=Math.abs(s);const r=t.direction;r.horizontal===!0&&r.vertical!==!0?e=n<0?"left":"right":r.horizontal!==!0&&r.vertical===!0?e=s<0?"up":"down":r.up===!0&&s<0?(e="up",a>l&&(r.left===!0&&n<0?e="left":r.right===!0&&n>0&&(e="right"))):r.down===!0&&s>0?(e="down",a>l&&(r.left===!0&&n<0?e="left":r.right===!0&&n>0&&(e="right"))):r.left===!0&&n<0?(e="left",a0&&(e="down"))):r.right===!0&&n>0&&(e="right",a0&&(e="down")));let f=!1;if(e===void 0&&i===!1){if(t.event.isFirst===!0||t.event.lastDir===void 0)return{};e=t.event.lastDir,f=!0,e==="left"||e==="right"?(u.left-=n,a=0,n=0):(u.top-=s,l=0,s=0)}return{synthetic:f,payload:{evt:o,touch:t.event.mouse!==!0,mouse:t.event.mouse===!0,position:u,direction:e,isFirst:t.event.isFirst,isFinal:i===!0,duration:Date.now()-t.event.time,distance:{x:a,y:l},offset:{x:n,y:s},delta:{x:u.left-t.event.lastX,y:u.top-t.event.lastY}}}}let Z=0;var te=F({name:"touch-pan",beforeMount(o,{value:t,modifiers:i}){if(i.mouse!==!0&&m.has.touch!==!0)return;function u(n,s){i.mouse===!0&&s===!0?B(n):(i.stop===!0&&y(n),i.prevent===!0&&P(n))}const e={uid:"qvtp_"+Z++,handler:t,modifiers:i,direction:R(i),noop:S,mouseStart(n){x(n,e)&&Y(n)&&(h(e,"temp",[[document,"mousemove","move","notPassiveCapture"],[document,"mouseup","end","passiveCapture"]]),e.start(n,!0))},touchStart(n){if(x(n,e)){const s=n.target;h(e,"temp",[[s,"touchmove","move","notPassiveCapture"],[s,"touchcancel","end","passiveCapture"],[s,"touchend","end","passiveCapture"]]),e.start(n)}},start(n,s){if(m.is.firefox===!0&&b(o,!0),e.lastEvt=n,s===!0||i.stop===!0){if(e.direction.all!==!0&&(s!==!0||e.modifiers.mouseAllDir!==!0&&e.modifiers.mousealldir!==!0)){const r=n.type.indexOf("mouse")>-1?new MouseEvent(n.type,n):new TouchEvent(n.type,n);n.defaultPrevented===!0&&P(r),n.cancelBubble===!0&&y(r),Object.assign(r,{qKeyEvent:n.qKeyEvent,qClickOutside:n.qClickOutside,qAnchorHandled:n.qAnchorHandled,qClonedBy:n.qClonedBy===void 0?[e.uid]:n.qClonedBy.concat(e.uid)}),e.initialEvent={target:n.target,event:r}}y(n)}const{left:a,top:l}=w(n);e.event={x:a,y:l,time:Date.now(),mouse:s===!0,detected:!1,isFirst:!0,isFinal:!1,lastX:a,lastY:l}},move(n){if(e.event===void 0)return;const s=w(n),a=s.left-e.event.x,l=s.top-e.event.y;if(a===0&&l===0)return;e.lastEvt=n;const r=e.event.mouse===!0,f=()=>{u(n,r);let c;i.preserveCursor!==!0&&i.preservecursor!==!0&&(c=document.documentElement.style.cursor||"",document.documentElement.style.cursor="grabbing"),r===!0&&document.body.classList.add("no-pointer-events--children"),document.body.classList.add("non-selectable"),W(),e.styleCleanup=p=>{if(e.styleCleanup=void 0,c!==void 0&&(document.documentElement.style.cursor=c),document.body.classList.remove("non-selectable"),r===!0){const O=()=>{document.body.classList.remove("no-pointer-events--children")};p!==void 0?setTimeout(()=>{O(),p()},50):O()}else p!==void 0&&p()}};if(e.event.detected===!0){e.event.isFirst!==!0&&u(n,e.event.mouse);const{payload:c,synthetic:p}=E(n,e,!1);c!==void 0&&(e.handler(c)===!1?e.end(n):(e.styleCleanup===void 0&&e.event.isFirst===!0&&f(),e.event.lastX=c.position.left,e.event.lastY=c.position.top,e.event.lastDir=p===!0?void 0:c.direction,e.event.isFirst=!1));return}if(e.direction.all===!0||r===!0&&(e.modifiers.mouseAllDir===!0||e.modifiers.mousealldir===!0)){f(),e.event.detected=!0,e.move(n);return}const d=Math.abs(a),v=Math.abs(l);d!==v&&(e.direction.horizontal===!0&&d>v||e.direction.vertical===!0&&d0||e.direction.left===!0&&d>v&&a<0||e.direction.right===!0&&d>v&&a>0?(e.event.detected=!0,e.move(n)):e.end(n,!0))},end(n,s){if(e.event!==void 0){if(C(e,"temp"),m.is.firefox===!0&&b(o,!1),s===!0)e.styleCleanup!==void 0&&e.styleCleanup(),e.event.detected!==!0&&e.initialEvent!==void 0&&e.initialEvent.target.dispatchEvent(e.initialEvent.event);else if(e.event.detected===!0){e.event.isFirst===!0&&e.handler(E(n===void 0?e.lastEvt:n,e).payload);const{payload:a}=E(n===void 0?e.lastEvt:n,e,!0),l=()=>{e.handler(a)};e.styleCleanup!==void 0?e.styleCleanup(l):l()}e.event=void 0,e.initialEvent=void 0,e.lastEvt=void 0}}};if(o.__qtouchpan=e,i.mouse===!0){const n=i.mouseCapture===!0||i.mousecapture===!0?"Capture":"";h(e,"main",[[o,"mousedown","mouseStart",`passive${n}`]])}m.has.touch===!0&&h(e,"main",[[o,"touchstart","touchStart",`passive${i.capture===!0?"Capture":""}`],[o,"touchmove","noop","notPassiveCapture"]])},updated(o,t){const i=o.__qtouchpan;i!==void 0&&(t.oldValue!==t.value&&(typeof value!="function"&&i.end(),i.handler=t.value),i.direction=R(t.modifiers))},beforeUnmount(o){const t=o.__qtouchpan;t!==void 0&&(t.event!==void 0&&t.end(),C(t,"main"),C(t,"temp"),m.is.firefox===!0&&b(o,!1),t.styleCleanup!==void 0&&t.styleCleanup(),delete o.__qtouchpan)}});function ne(o,t,i){return i<=t?t:Math.min(i,Math.max(t,o))}function ie(o,t,i){if(i<=t)return t;const u=i-t+1;let e=t+(o-t)%u;return eG.includes(o),default:"vertical"},debounce:[String,Number],scrollTarget:{default:void 0}},emits:["scroll"],setup(o,{emit:t}){const i={position:{top:0,left:0},direction:"down",directionChanged:!1,delta:{top:0,left:0},inflectionPoint:{top:0,left:0}};let u=null,e,n;M(()=>o.scrollTarget,()=>{l(),a()});function s(){u!==null&&u();const d=Math.max(0,Q(e)),v=V(e),c={top:d-i.position.top,left:v-i.position.left};if(o.axis==="vertical"&&c.top===0||o.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";i.position={top:d,left:v},i.directionChanged=i.direction!==p,i.delta=c,i.directionChanged===!0&&(i.direction=p,i.inflectionPoint=i.position),t("scroll",{...i})}function a(){e=j(n,o.scrollTarget),e.addEventListener("scroll",r,A),r(!0)}function l(){e!==void 0&&(e.removeEventListener("scroll",r,A),e=void 0)}function r(d){if(d===!0||o.debounce===0||o.debounce==="0")s();else if(u===null){const[v,c]=o.debounce?[setTimeout(s,o.debounce),clearTimeout]:[requestAnimationFrame(s),cancelAnimationFrame];u=()=>{c(v),u=null}}}const{proxy:f}=N();return M(()=>f.$q.lang.rtl,s),g(()=>{n=f.$el.parentNode,a()}),z(()=>{u!==null&&u(),l()}),Object.assign(f,{trigger:r,getPosition:()=>i}),S}});function J(){const o=$(!H.value);return o.value===!1&&g(()=>{o.value=!0}),o}const X=typeof ResizeObserver!="undefined",D=X===!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"};var re=k({name:"QResizeObserver",props:{debounce:{type:[String,Number],default:100}},emits:["resize"],setup(o,{emit:t}){let i=null,u,e={width:-1,height:-1};function n(l){l===!0||o.debounce===0||o.debounce==="0"?s():i===null&&(i=setTimeout(s,o.debounce))}function s(){if(i!==null&&(clearTimeout(i),i=null),u){const{offsetWidth:l,offsetHeight:r}=u;(l!==e.width||r!==e.height)&&(e={width:l,height:r},t("resize",e))}}const{proxy:a}=N();if(X===!0){let l;const r=f=>{u=a.$el.parentNode,u?(l=new ResizeObserver(n),l.observe(u),s()):f!==!0&&L(()=>{r(!0)})};return g(()=>{r()}),z(()=>{i!==null&&clearTimeout(i),l!==void 0&&(l.disconnect!==void 0?l.disconnect():u&&l.unobserve(u))}),S}else{let f=function(){i!==null&&(clearTimeout(i),i=null),r!==void 0&&(r.removeEventListener!==void 0&&r.removeEventListener("resize",n,T.passive),r=void 0)},d=function(){f(),u&&u.contentDocument&&(r=u.contentDocument.defaultView,r.addEventListener("resize",n,T.passive),s())};const l=J();let r;return g(()=>{L(()=>{u=a.$el,u&&d()})}),z(f),a.trigger=n,()=>{if(l.value===!0)return U("object",{style:D.style,tabindex:-1,type:"text/html",data:D.url,"aria-hidden":"true",onLoad:d})}}}});export{oe as Q,te as T,re as a,ne as b,W as c,R as g,ie as n,x as s}; diff --git a/static/market/assets/QResizeObserver.1ffe80c2.js b/static/market/assets/QResizeObserver.1ffe80c2.js deleted file mode 100644 index e0c2e39..0000000 --- a/static/market/assets/QResizeObserver.1ffe80c2.js +++ /dev/null @@ -1 +0,0 @@ -import{c as x,w as p,y as v,z as m,A as y,B as O,g as S,C as b,D as R,E as C,r as L,f as P,F as z,h as D}from"./index.923cbbf9.js";const{passive:T}=b,Q=["both","horizontal","vertical"];var V=x({name:"QScrollObserver",props:{axis:{type:String,validator:n=>Q.includes(n),default:"vertical"},debounce:[String,Number],scrollTarget:{default:void 0}},emits:["scroll"],setup(n,{emit:g}){const e={position:{top:0,left:0},direction:"down",directionChanged:!1,delta:{top:0,left:0},inflectionPoint:{top:0,left:0}};let t=null,r,c;p(()=>n.scrollTarget,()=>{o(),d()});function l(){t!==null&&t();const u=Math.max(0,R(r)),f=C(r),s={top:u-e.position.top,left:f-e.position.left};if(n.axis==="vertical"&&s.top===0||n.axis==="horizontal"&&s.left===0)return;const h=Math.abs(s.top)>=Math.abs(s.left)?s.top<0?"up":"down":s.left<0?"left":"right";e.position={top:u,left:f},e.directionChanged=e.direction!==h,e.delta=s,e.directionChanged===!0&&(e.direction=h,e.inflectionPoint=e.position),g("scroll",{...e})}function d(){r=O(c,n.scrollTarget),r.addEventListener("scroll",i,T),i(!0)}function o(){r!==void 0&&(r.removeEventListener("scroll",i,T),r=void 0)}function i(u){if(u===!0||n.debounce===0||n.debounce==="0")l();else if(t===null){const[f,s]=n.debounce?[setTimeout(l,n.debounce),clearTimeout]:[requestAnimationFrame(l),cancelAnimationFrame];t=()=>{s(f),t=null}}}const{proxy:a}=S();return p(()=>a.$q.lang.rtl,l),v(()=>{c=a.$el.parentNode,d()}),m(()=>{t!==null&&t(),o()}),Object.assign(a,{trigger:i,getPosition:()=>e}),y}});function M(){const n=L(!P.value);return n.value===!1&&v(()=>{n.value=!0}),n}const E=typeof ResizeObserver!="undefined",w=E===!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"};var $=x({name:"QResizeObserver",props:{debounce:{type:[String,Number],default:100}},emits:["resize"],setup(n,{emit:g}){let e=null,t,r={width:-1,height:-1};function c(o){o===!0||n.debounce===0||n.debounce==="0"?l():e===null&&(e=setTimeout(l,n.debounce))}function l(){if(e!==null&&(clearTimeout(e),e=null),t){const{offsetWidth:o,offsetHeight:i}=t;(o!==r.width||i!==r.height)&&(r={width:o,height:i},g("resize",r))}}const{proxy:d}=S();if(E===!0){let o;const i=a=>{t=d.$el.parentNode,t?(o=new ResizeObserver(c),o.observe(t),l()):a!==!0&&z(()=>{i(!0)})};return v(()=>{i()}),m(()=>{e!==null&&clearTimeout(e),o!==void 0&&(o.disconnect!==void 0?o.disconnect():t&&o.unobserve(t))}),y}else{let a=function(){e!==null&&(clearTimeout(e),e=null),i!==void 0&&(i.removeEventListener!==void 0&&i.removeEventListener("resize",c,b.passive),i=void 0)},u=function(){a(),t&&t.contentDocument&&(i=t.contentDocument.defaultView,i.addEventListener("resize",c,b.passive),l())};const o=M();let i;return v(()=>{z(()=>{t=d.$el,t&&u()})}),m(a),d.trigger=c,()=>{if(o.value===!0)return D("object",{style:w.style,tabindex:-1,type:"text/html",data:w.url,"aria-hidden":"true",onLoad:u})}}}});export{V as Q,$ as a}; diff --git a/static/market/assets/index.73d462e5.css b/static/market/assets/index.73d462e5.css deleted file mode 100644 index 3af9c0d..0000000 --- a/static/market/assets/index.73d462e5.css +++ /dev/null @@ -1 +0,0 @@ -@font-face{font-family:Roboto;font-style:normal;font-weight:100;src:url(/nostrmarket/static/market/assets/KFOkCnqEu92Fr1MmgVxIIzQ.34e9582c.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-weight:300;src:url(/nostrmarket/static/market/assets/KFOlCnqEu92Fr1MmSU5fBBc-.bf14c7d7.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-weight:400;src:url(/nostrmarket/static/market/assets/KFOmCnqEu92Fr1Mu4mxM.f2abf7fb.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-weight:500;src:url(/nostrmarket/static/market/assets/KFOlCnqEu92Fr1MmEU9fBBc-.9ce7f3ac.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-weight:700;src:url(/nostrmarket/static/market/assets/KFOlCnqEu92Fr1MmWUlfBBc-.e0fd57c0.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-weight:900;src:url(/nostrmarket/static/market/assets/KFOlCnqEu92Fr1MmYUtfBBc-.f6537e32.woff) format("woff")}@font-face{font-family:Material Icons;font-style:normal;font-weight:400;font-display:block;src:url(/nostrmarket/static/market/assets/flUhRq6tzZclQEJ-Vdg-IuiaDsNcIhQ8tQ.4a4dbc62.woff2) format("woff2"),url(/nostrmarket/static/market/assets/flUhRq6tzZclQEJ-Vdg-IuiaDsNa.fd84f88b.woff) format("woff")}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;display:inline-block;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:"liga"}*,*:before,*:after{box-sizing:inherit;-webkit-tap-highlight-color:transparent;-moz-tap-highlight-color:transparent}html,body,#q-app{width:100%;direction:ltr}body.platform-ios.within-iframe,body.platform-ios.within-iframe #q-app{width:100px;min-width:100%}html,body{margin:0;box-sizing:border-box}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}img{border-style:none}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}hr{box-sizing:content-box;height:0;overflow:visible}button,input,optgroup,select,textarea{font:inherit;font-family:inherit;margin:0}optgroup{font-weight:700}button,input,select{overflow:visible;text-transform:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}button:-moz-focusring,input:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.q-icon{line-height:1;width:1em;height:1em;flex-shrink:0;letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;direction:ltr;text-align:center;position:relative;box-sizing:content-box;fill:currentColor}.q-icon:before,.q-icon:after{width:100%;height:100%;display:flex!important;align-items:center;justify-content:center}.q-icon>svg,.q-icon>img{width:100%;height:100%}.q-icon,.material-icons,.material-icons-outlined,.material-icons-round,.material-icons-sharp,.material-symbols-outlined,.material-symbols-rounded,.material-symbols-sharp{-webkit-user-select:none;user-select:none;cursor:inherit;font-size:inherit;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle}.q-panel{height:100%;width:100%}.q-panel>div{height:100%;width:100%}.q-panel-parent{overflow:hidden;position:relative}.q-loading-bar{position:fixed;z-index:9998;transition:transform .5s cubic-bezier(0,0,.2,1),opacity .5s;background:#f44336}.q-loading-bar--top{left:0;right:0;top:0;width:100%}.q-loading-bar--bottom{left:0;right:0;bottom:0;width:100%}.q-loading-bar--right{top:0;bottom:0;right:0;height:100%}.q-loading-bar--left{top:0;bottom:0;left:0;height:100%}.q-avatar{position:relative;vertical-align:middle;display:inline-block;border-radius:50%;font-size:48px;height:1em;width:1em}.q-avatar__content{font-size:.5em;line-height:.5em}.q-avatar__content,.q-avatar img:not(.q-icon):not(.q-img__image){border-radius:inherit;height:inherit;width:inherit}.q-avatar--square{border-radius:0}.q-badge{background-color:var(--q-primary);color:#fff;padding:2px 6px;border-radius:4px;font-size:12px;line-height:12px;min-height:12px;font-weight:400;vertical-align:baseline}.q-badge--single-line{white-space:nowrap}.q-badge--multi-line{word-break:break-all;word-wrap:break-word}.q-badge--floating{position:absolute;top:-4px;right:-3px;cursor:inherit}.q-badge--transparent{opacity:.8}.q-badge--outline{background-color:transparent;border:1px solid currentColor}.q-badge--rounded{border-radius:1em}.q-banner{min-height:54px;padding:8px 16px;background:#fff}.q-banner--top-padding{padding-top:14px}.q-banner__avatar{min-width:1px!important}.q-banner__avatar>.q-avatar{font-size:46px}.q-banner__avatar>.q-icon{font-size:40px}.q-banner__avatar:not(:empty)+.q-banner__content{padding-left:16px}.q-banner__actions.col-auto{padding-left:16px}.q-banner__actions.col-all .q-btn-item{margin:4px 0 0 4px}.q-banner--dense{min-height:32px;padding:8px}.q-banner--dense.q-banner--top-padding{padding-top:12px}.q-banner--dense .q-banner__avatar>.q-avatar,.q-banner--dense .q-banner__avatar>.q-icon{font-size:28px}.q-banner--dense .q-banner__avatar:not(:empty)+.q-banner__content{padding-left:8px}.q-banner--dense .q-banner__actions.col-auto{padding-left:8px}.q-bar{background:rgba(0,0,0,.2)}.q-bar>.q-icon{margin-left:2px}.q-bar>div,.q-bar>div+.q-icon{margin-left:8px}.q-bar>.q-btn{margin-left:2px}.q-bar>.q-icon:first-child,.q-bar>.q-btn:first-child,.q-bar>div:first-child{margin-left:0}.q-bar--standard{padding:0 12px;height:32px;font-size:18px}.q-bar--standard>div{font-size:16px}.q-bar--standard .q-btn{font-size:11px}.q-bar--dense{padding:0 8px;height:24px;font-size:14px}.q-bar--dense .q-btn{font-size:8px}.q-bar--dark{background:rgba(255,255,255,.15)}.q-breadcrumbs__el{color:inherit}.q-breadcrumbs__el-icon{font-size:125%}.q-breadcrumbs__el-icon--with-label{margin-right:8px}[dir=rtl] .q-breadcrumbs__separator .q-icon{transform:scaleX(-1)}.q-btn{display:inline-flex;flex-direction:column;align-items:stretch;position:relative;outline:0;border:0;vertical-align:middle;font-size:14px;line-height:1.715em;text-decoration:none;color:inherit;background:transparent;font-weight:500;text-transform:uppercase;text-align:center;width:auto;height:auto;cursor:default;padding:4px 16px;min-height:2.572em}.q-btn .q-icon,.q-btn .q-spinner{font-size:1.715em}.q-btn.disabled{opacity:.7!important}.q-btn:before{content:"";display:block;position:absolute;left:0;right:0;top:0;bottom:0;border-radius:inherit;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f}.q-btn--actionable{cursor:pointer}.q-btn--actionable.q-btn--standard:before{transition:box-shadow .3s cubic-bezier(.25,.8,.5,1)}.q-btn--actionable.q-btn--standard:active:before,.q-btn--actionable.q-btn--standard.q-btn--active:before{box-shadow:0 3px 5px -1px #0003,0 5px 8px #00000024,0 1px 14px #0000001f}.q-btn--no-uppercase{text-transform:none}.q-btn--rectangle{border-radius:3px}.q-btn--outline{background:transparent!important}.q-btn--outline:before{border:1px solid currentColor}.q-btn--push{border-radius:7px}.q-btn--push:before{border-bottom:3px solid rgba(0,0,0,.15)}.q-btn--push.q-btn--actionable{transition:transform .3s cubic-bezier(.25,.8,.5,1)}.q-btn--push.q-btn--actionable:before{transition:border-width .3s cubic-bezier(.25,.8,.5,1)}.q-btn--push.q-btn--actionable:active,.q-btn--push.q-btn--actionable.q-btn--active{transform:translateY(2px)}.q-btn--push.q-btn--actionable:active:before,.q-btn--push.q-btn--actionable.q-btn--active:before{border-bottom-width:0}.q-btn--rounded{border-radius:28px}.q-btn--round{border-radius:50%;padding:0;min-width:3em;min-height:3em}.q-btn--square{border-radius:0}.q-btn--flat:before,.q-btn--outline:before,.q-btn--unelevated:before{box-shadow:none}.q-btn--dense{padding:.285em;min-height:2em}.q-btn--dense.q-btn--round{padding:0;min-height:2.4em;min-width:2.4em}.q-btn--dense .on-left{margin-right:6px}.q-btn--dense .on-right{margin-left:6px}.q-btn--fab .q-icon,.q-btn--fab-mini .q-icon{font-size:24px}.q-btn--fab{padding:16px;min-height:56px;min-width:56px}.q-btn--fab .q-icon{margin:auto}.q-btn--fab-mini{padding:8px;min-height:40px;min-width:40px}.q-btn__content{transition:opacity .3s;z-index:0}.q-btn__content--hidden{opacity:0;pointer-events:none}.q-btn__progress{border-radius:inherit;z-index:0}.q-btn__progress-indicator{z-index:-1;transform:translate(-100%);background:rgba(255,255,255,.25)}.q-btn__progress--dark .q-btn__progress-indicator{background:rgba(0,0,0,.2)}.q-btn--flat .q-btn__progress-indicator,.q-btn--outline .q-btn__progress-indicator{opacity:.2;background:currentColor}.q-btn-dropdown--split .q-btn-dropdown__arrow-container{padding:0 4px}.q-btn-dropdown--split .q-btn-dropdown__arrow-container.q-btn--outline{border-left:1px solid currentColor}.q-btn-dropdown--split .q-btn-dropdown__arrow-container:not(.q-btn--outline){border-left:1px solid rgba(255,255,255,.3)}.q-btn-dropdown--simple *+.q-btn-dropdown__arrow{margin-left:8px}.q-btn-dropdown__arrow{transition:transform .28s}.q-btn-dropdown--current{flex-grow:1}.q-btn-group{border-radius:3px;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;vertical-align:middle}.q-btn-group>.q-btn-item{border-radius:inherit;align-self:stretch}.q-btn-group>.q-btn-item:before{box-shadow:none}.q-btn-group>.q-btn-item .q-badge--floating{right:0}.q-btn-group>.q-btn-group{box-shadow:none}.q-btn-group>.q-btn-group:first-child>.q-btn:first-child{border-top-left-radius:inherit;border-bottom-left-radius:inherit}.q-btn-group>.q-btn-group:last-child>.q-btn:last-child{border-top-right-radius:inherit;border-bottom-right-radius:inherit}.q-btn-group>.q-btn-group:not(:first-child)>.q-btn:first-child:before{border-left:0}.q-btn-group>.q-btn-group:not(:last-child)>.q-btn:last-child:before{border-right:0}.q-btn-group>.q-btn-item:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.q-btn-group>.q-btn-item:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.q-btn-group>.q-btn-item.q-btn--standard:before{z-index:-1}.q-btn-group--push{border-radius:7px}.q-btn-group--push>.q-btn--push.q-btn--actionable{transform:none}.q-btn-group--push>.q-btn--push.q-btn--actionable .q-btn__content{transition:margin-top .3s cubic-bezier(.25,.8,.5,1),margin-bottom .3s cubic-bezier(.25,.8,.5,1)}.q-btn-group--push>.q-btn--push.q-btn--actionable:active .q-btn__content,.q-btn-group--push>.q-btn--push.q-btn--actionable.q-btn--active .q-btn__content{margin-top:2px;margin-bottom:-2px}.q-btn-group--rounded{border-radius:28px}.q-btn-group--square{border-radius:0}.q-btn-group--flat,.q-btn-group--outline,.q-btn-group--unelevated{box-shadow:none}.q-btn-group--outline>.q-separator{display:none}.q-btn-group--outline>.q-btn-item+.q-btn-item:before{border-left:0}.q-btn-group--outline>.q-btn-item:not(:last-child):before{border-right:0}.q-btn-group--stretch{align-self:stretch;border-radius:0}.q-btn-group--glossy>.q-btn-item{background-image:linear-gradient(to bottom,rgba(255,255,255,.3),rgba(255,255,255,0) 50%,rgba(0,0,0,.12) 51%,rgba(0,0,0,.04))!important}.q-btn-group--spread>.q-btn-group{display:flex!important}.q-btn-group--spread>.q-btn-item,.q-btn-group--spread>.q-btn-group>.q-btn-item:not(.q-btn-dropdown__arrow-container){width:auto;min-width:0;max-width:100%;flex:10000 1 0%}.q-btn-toggle{position:relative}.q-card{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;vertical-align:top;background:#fff;position:relative}.q-card>div:first-child,.q-card>img:first-child{border-top:0;border-top-left-radius:inherit;border-top-right-radius:inherit}.q-card>div:last-child,.q-card>img:last-child{border-bottom:0;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.q-card>div:not(:first-child),.q-card>img:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.q-card>div:not(:last-child),.q-card>img:not(:last-child){border-bottom-left-radius:0;border-bottom-right-radius:0}.q-card>div{border-left:0;border-right:0;box-shadow:none}.q-card--bordered{border:1px solid rgba(0,0,0,.12)}.q-card--dark{border-color:#ffffff47;box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-card__section{position:relative}.q-card__section--vert{padding:16px}.q-card__section--horiz>div:first-child,.q-card__section--horiz>img:first-child{border-top-left-radius:inherit;border-bottom-left-radius:inherit}.q-card__section--horiz>div:last-child,.q-card__section--horiz>img:last-child{border-top-right-radius:inherit;border-bottom-right-radius:inherit}.q-card__section--horiz>div:not(:first-child),.q-card__section--horiz>img:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.q-card__section--horiz>div:not(:last-child),.q-card__section--horiz>img:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.q-card__section--horiz>div{border-top:0;border-bottom:0;box-shadow:none}.q-card__actions{padding:8px;align-items:center}.q-card__actions .q-btn--rectangle{padding:0 8px}.q-card__actions--horiz>.q-btn-item+.q-btn-item,.q-card__actions--horiz>.q-btn-group+.q-btn-item,.q-card__actions--horiz>.q-btn-item+.q-btn-group{margin-left:8px}.q-card__actions--vert>.q-btn-item.q-btn--round{align-self:center}.q-card__actions--vert>.q-btn-item+.q-btn-item,.q-card__actions--vert>.q-btn-group+.q-btn-item,.q-card__actions--vert>.q-btn-item+.q-btn-group{margin-top:4px}.q-card__actions--vert>.q-btn-group>.q-btn-item{flex-grow:1}.q-card>img{display:block;width:100%;max-width:100%;border:0}.q-carousel{background-color:#fff;height:400px}.q-carousel__slide{min-height:100%;background-size:cover;background-position:50%}.q-carousel__slide,.q-carousel .q-carousel--padding{padding:16px}.q-carousel__slides-container{height:100%}.q-carousel__control{color:#fff}.q-carousel__arrow{pointer-events:none}.q-carousel__arrow .q-icon{font-size:28px}.q-carousel__arrow .q-btn{pointer-events:all}.q-carousel__prev-arrow--horizontal,.q-carousel__next-arrow--horizontal{top:16px;bottom:16px}.q-carousel__prev-arrow--horizontal{left:16px}.q-carousel__next-arrow--horizontal{right:16px}.q-carousel__prev-arrow--vertical,.q-carousel__next-arrow--vertical{left:16px;right:16px}.q-carousel__prev-arrow--vertical{top:16px}.q-carousel__next-arrow--vertical{bottom:16px}.q-carousel__navigation--top,.q-carousel__navigation--bottom{left:16px;right:16px;overflow-x:auto;overflow-y:hidden}.q-carousel__navigation--top{top:16px}.q-carousel__navigation--bottom{bottom:16px}.q-carousel__navigation--left,.q-carousel__navigation--right{top:16px;bottom:16px;overflow-x:hidden;overflow-y:auto}.q-carousel__navigation--left>.q-carousel__navigation-inner,.q-carousel__navigation--right>.q-carousel__navigation-inner{flex-direction:column}.q-carousel__navigation--left{left:16px}.q-carousel__navigation--right{right:16px}.q-carousel__navigation-inner{flex:1 1 auto}.q-carousel__navigation .q-btn{margin:6px 4px;padding:5px}.q-carousel__navigation-icon--inactive{opacity:.7}.q-carousel .q-carousel__thumbnail{margin:2px;height:50px;width:auto;display:inline-block;cursor:pointer;border:1px solid transparent;border-radius:4px;vertical-align:middle;opacity:.7;transition:opacity .3s}.q-carousel .q-carousel__thumbnail:hover,.q-carousel .q-carousel__thumbnail--active{opacity:1}.q-carousel .q-carousel__thumbnail--active{border-color:currentColor;cursor:default}.q-carousel--navigation-top.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-top .q-carousel--padding,.q-carousel--arrows-vertical.q-carousel--with-padding .q-carousel__slide,.q-carousel--arrows-vertical .q-carousel--padding{padding-top:60px}.q-carousel--navigation-bottom.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-bottom .q-carousel--padding,.q-carousel--arrows-vertical.q-carousel--with-padding .q-carousel__slide,.q-carousel--arrows-vertical .q-carousel--padding{padding-bottom:60px}.q-carousel--navigation-left.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-left .q-carousel--padding,.q-carousel--arrows-horizontal.q-carousel--with-padding .q-carousel__slide,.q-carousel--arrows-horizontal .q-carousel--padding{padding-left:60px}.q-carousel--navigation-right.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-right .q-carousel--padding,.q-carousel--arrows-horizontal.q-carousel--with-padding .q-carousel__slide,.q-carousel--arrows-horizontal .q-carousel--padding{padding-right:60px}.q-carousel.fullscreen{height:100%}.q-message-name,.q-message-stamp,.q-message-label{font-size:small}.q-message-label{margin:24px 0;text-align:center}.q-message-stamp{color:inherit;margin-top:4px;opacity:.6;display:none}.q-message-avatar{border-radius:50%;width:48px;height:48px;min-width:48px}.q-message{margin-bottom:8px}.q-message:first-child .q-message-label{margin-top:0}.q-message-avatar--received{margin-right:8px}.q-message-text--received{color:#81c784;border-radius:4px 4px 4px 0}.q-message-text--received:last-child:before{right:100%;border-right:0 solid transparent;border-left:8px solid transparent;border-bottom:8px solid currentColor}.q-message-text-content--received{color:#000}.q-message-name--sent{text-align:right}.q-message-avatar--sent{margin-left:8px}.q-message-container--sent{flex-direction:row-reverse}.q-message-text--sent{color:#e0e0e0;border-radius:4px 4px 0}.q-message-text--sent:last-child:before{left:100%;border-left:0 solid transparent;border-right:8px solid transparent;border-bottom:8px solid currentColor}.q-message-text-content--sent{color:#000}.q-message-text{background:currentColor;padding:8px;line-height:1.2;word-break:break-word;position:relative}.q-message-text+.q-message-text{margin-top:3px}.q-message-text:last-child{min-height:48px}.q-message-text:last-child .q-message-stamp{display:block}.q-message-text:last-child:before{content:"";position:absolute;bottom:0;width:0;height:0}.q-checkbox{vertical-align:middle}.q-checkbox__native{width:1px;height:1px}.q-checkbox__bg,.q-checkbox__icon-container{-webkit-user-select:none;user-select:none}.q-checkbox__bg{top:25%;left:25%;width:50%;height:50%;border:2px solid currentColor;border-radius:2px;transition:background .22s cubic-bezier(0,0,.2,1) 0ms;-webkit-print-color-adjust:exact}.q-checkbox__icon{color:currentColor;font-size:.5em}.q-checkbox__svg{color:#fff}.q-checkbox__truthy{stroke:currentColor;stroke-width:3.12px;stroke-dashoffset:29.78334;stroke-dasharray:29.78334}.q-checkbox__indet{fill:currentColor;transform-origin:50% 50%;transform:rotate(-280deg) scale(0)}.q-checkbox__inner{font-size:40px;width:1em;min-width:1em;height:1em;outline:0;border-radius:50%;color:#0000008a}.q-checkbox__inner--truthy,.q-checkbox__inner--indet{color:var(--q-primary)}.q-checkbox__inner--truthy .q-checkbox__bg,.q-checkbox__inner--indet .q-checkbox__bg{background:currentColor}.q-checkbox__inner--truthy path{stroke-dashoffset:0;transition:stroke-dashoffset .18s cubic-bezier(.4,0,.6,1) 0ms}.q-checkbox__inner--indet .q-checkbox__indet{transform:rotate(0) scale(1);transition:transform .22s cubic-bezier(0,0,.2,1) 0ms}.q-checkbox.disabled{opacity:.75!important}.q-checkbox--dark .q-checkbox__inner{color:#ffffffb3}.q-checkbox--dark .q-checkbox__inner:before{opacity:.32!important}.q-checkbox--dark .q-checkbox__inner--truthy,.q-checkbox--dark .q-checkbox__inner--indet{color:var(--q-primary)}.q-checkbox--dense .q-checkbox__inner{width:.5em;min-width:.5em;height:.5em}.q-checkbox--dense .q-checkbox__bg{left:5%;top:5%;width:90%;height:90%}.q-checkbox--dense .q-checkbox__label{padding-left:.5em}.q-checkbox--dense.reverse .q-checkbox__label{padding-left:0;padding-right:.5em}body.desktop .q-checkbox:not(.disabled) .q-checkbox__inner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:currentColor;opacity:.12;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0,0,.2,1)}body.desktop .q-checkbox:not(.disabled):focus .q-checkbox__inner:before,body.desktop .q-checkbox:not(.disabled):hover .q-checkbox__inner:before{transform:scaleZ(1)}body.desktop .q-checkbox--dense:not(.disabled):focus .q-checkbox__inner:before,body.desktop .q-checkbox--dense:not(.disabled):hover .q-checkbox__inner:before{transform:scale3d(1.4,1.4,1)}.q-chip{vertical-align:middle;border-radius:16px;outline:0;position:relative;height:2em;max-width:100%;margin:4px;background:#e0e0e0;color:#000000de;font-size:14px;padding:.5em .9em}.q-chip--colored .q-chip__icon,.q-chip--dark .q-chip__icon{color:inherit}.q-chip--outline{background:transparent!important;border:1px solid currentColor}.q-chip .q-avatar{font-size:2em;margin-left:-.45em;margin-right:.2em;border-radius:16px}.q-chip--selected .q-avatar{display:none}.q-chip__icon{color:#0000008a;font-size:1.5em;margin:-.2em}.q-chip__icon--left{margin-right:.2em}.q-chip__icon--right{margin-left:.2em}.q-chip__icon--remove{margin-left:.1em;margin-right:-.5em;opacity:.6;outline:0}.q-chip__icon--remove:hover,.q-chip__icon--remove:focus{opacity:1}.q-chip__content{white-space:nowrap}.q-chip--dense{border-radius:12px;padding:0 .4em;height:1.5em}.q-chip--dense .q-avatar{font-size:1.5em;margin-left:-.27em;margin-right:.1em;border-radius:12px}.q-chip--dense .q-chip__icon{font-size:1.25em}.q-chip--dense .q-chip__icon--left{margin-right:.195em}.q-chip--dense .q-chip__icon--remove{margin-right:-.25em}.q-chip--square{border-radius:4px}.q-chip--square .q-avatar{border-radius:3px 0 0 3px}body.desktop .q-chip--clickable:focus{box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f}body.desktop.body--dark .q-chip--clickable:focus{box-shadow:0 1px 3px #fff3,0 1px 1px #ffffff24,0 2px 1px -1px #ffffff1f}.q-circular-progress{display:inline-block;position:relative;vertical-align:middle;width:1em;height:1em;line-height:1}.q-circular-progress.q-focusable{border-radius:50%}.q-circular-progress__svg{width:100%;height:100%}.q-circular-progress__text{font-size:.25em}.q-circular-progress--indeterminate .q-circular-progress__svg{transform-origin:50% 50%;animation:q-spin 2s linear infinite}.q-circular-progress--indeterminate .q-circular-progress__circle{stroke-dasharray:1 400;stroke-dashoffset:0;animation:q-circular-progress-circle 1.5s ease-in-out infinite}@keyframes q-circular-progress-circle{0%{stroke-dasharray:1,400;stroke-dashoffset:0}50%{stroke-dasharray:400,400;stroke-dashoffset:-100}to{stroke-dasharray:400,400;stroke-dashoffset:-300}}.q-color-picker{overflow:hidden;background:#fff;max-width:350px;vertical-align:top;min-width:180px;border-radius:4px;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f}.q-color-picker .q-tab{padding:0!important}.q-color-picker--bordered{border:1px solid rgba(0,0,0,.12)}.q-color-picker__header-tabs{height:32px}.q-color-picker__header input{line-height:24px;border:0}.q-color-picker__header .q-tab{min-height:32px!important;height:32px!important}.q-color-picker__header .q-tab--inactive{background:linear-gradient(to top,rgba(0,0,0,.3) 0%,rgba(0,0,0,.15) 25%,rgba(0,0,0,.1))}.q-color-picker__error-icon{bottom:2px;right:2px;font-size:24px;opacity:0;transition:opacity .3s ease-in}.q-color-picker__header-content{position:relative;background:#fff}.q-color-picker__header-content--light{color:#000}.q-color-picker__header-content--dark{color:#fff}.q-color-picker__header-content--dark .q-tab--inactive:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(255,255,255,.2)}.q-color-picker__header-banner{height:36px}.q-color-picker__header-bg{background:#fff;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAH0lEQVQoU2NkYGAwZkAFZ5G5jPRRgOYEVDeB3EBjBQBOZwTVugIGyAAAAABJRU5ErkJggg==)!important}.q-color-picker__footer{height:36px}.q-color-picker__footer .q-tab{min-height:36px!important;height:36px!important}.q-color-picker__footer .q-tab--inactive{background:linear-gradient(to bottom,rgba(0,0,0,.3) 0%,rgba(0,0,0,.15) 25%,rgba(0,0,0,.1))}.q-color-picker__spectrum{width:100%;height:100%}.q-color-picker__spectrum-tab{padding:0!important}.q-color-picker__spectrum-white{background:linear-gradient(to right,#fff,rgba(255,255,255,0))}.q-color-picker__spectrum-black{background:linear-gradient(to top,#000,rgba(0,0,0,0))}.q-color-picker__spectrum-circle{width:10px;height:10px;box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px #0000004d,0 0 1px 2px #0006;border-radius:50%;transform:translate(-5px,-5px)}.q-color-picker__hue .q-slider__track{background:linear-gradient(to right,#f00 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,#f00 100%)!important;opacity:1}.q-color-picker__alpha .q-slider__track-container{padding-top:0}.q-color-picker__alpha .q-slider__track:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(90deg,rgba(255,255,255,0),#757575)}.q-color-picker__sliders{padding:0 16px}.q-color-picker__sliders .q-slider__thumb{color:#424242}.q-color-picker__sliders .q-slider__thumb path{stroke-width:2px;fill:transparent}.q-color-picker__sliders .q-slider--active path{stroke-width:3px}.q-color-picker__tune-tab .q-slider{margin-left:18px;margin-right:18px}.q-color-picker__tune-tab input{font-size:11px;border:1px solid #e0e0e0;border-radius:4px;width:3.5em}.q-color-picker__palette-tab{padding:0!important}.q-color-picker__palette-rows--editable .q-color-picker__cube{cursor:pointer}.q-color-picker__cube{padding-bottom:10%;width:10%!important}.q-color-picker input{color:inherit;background:transparent;outline:0;text-align:center}.q-color-picker .q-tabs{overflow:hidden}.q-color-picker .q-tab--active{box-shadow:0 0 14px 3px #0003}.q-color-picker .q-tab--active .q-focus-helper,.q-color-picker .q-tab__indicator{display:none}.q-color-picker .q-tab-panels{background:inherit}.q-color-picker--dark{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-color-picker--dark .q-color-picker__tune-tab input{border:1px solid rgba(255,255,255,.3)}.q-color-picker--dark .q-slider__thumb{color:#fafafa}.q-date{display:inline-flex;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;background:#fff;width:290px;min-width:290px;max-width:100%}.q-date--bordered{border:1px solid rgba(0,0,0,.12)}.q-date__header{border-top-left-radius:inherit;color:#fff;background-color:var(--q-primary);padding:16px}.q-date__actions{padding:0 16px 16px}.q-date__content,.q-date__main{outline:0}.q-date__content .q-btn{font-weight:400}.q-date__header-link{opacity:.64;outline:0;transition:opacity .3s ease-out}.q-date__header-link--active,.q-date__header-link:hover,.q-date__header-link:focus{opacity:1}.q-date__header-subtitle{font-size:14px;line-height:1.75;letter-spacing:.00938em}.q-date__header-title-label{font-size:24px;line-height:1.2;letter-spacing:.00735em}.q-date__view{height:100%;width:100%;min-height:290px;padding:16px}.q-date__navigation{height:12.5%}.q-date__navigation>div:first-child{width:8%;min-width:24px;justify-content:flex-end}.q-date__navigation>div:last-child{width:8%;min-width:24px;justify-content:flex-start}.q-date__calendar-weekdays{height:12.5%}.q-date__calendar-weekdays>div{opacity:.38;font-size:12px}.q-date__calendar-item{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;width:14.285%!important;height:12.5%!important;position:relative;padding:1px}.q-date__calendar-item:after{content:"";position:absolute;pointer-events:none;top:1px;right:0;bottom:1px;left:0;border-style:dashed;border-color:transparent;border-width:1px}.q-date__calendar-item>div,.q-date__calendar-item button{width:30px;height:30px;border-radius:50%}.q-date__calendar-item>div{line-height:30px;text-align:center}.q-date__calendar-item>button{line-height:22px}.q-date__calendar-item--out{opacity:.18}.q-date__calendar-item--fill{visibility:hidden}.q-date__range:before,.q-date__range-from:before,.q-date__range-to:before{content:"";background-color:currentColor;position:absolute;top:1px;bottom:1px;left:0;right:0;opacity:.3}.q-date__range:nth-child(7n-6):before,.q-date__range-from:nth-child(7n-6):before,.q-date__range-to:nth-child(7n-6):before{border-top-left-radius:0;border-bottom-left-radius:0}.q-date__range:nth-child(7n):before,.q-date__range-from:nth-child(7n):before,.q-date__range-to:nth-child(7n):before{border-top-right-radius:0;border-bottom-right-radius:0}.q-date__range-from:before{left:50%}.q-date__range-to:before{right:50%}.q-date__edit-range:after{border-color:currentColor transparent}.q-date__edit-range:nth-child(7n-6):after{border-top-left-radius:0;border-bottom-left-radius:0}.q-date__edit-range:nth-child(7n):after{border-top-right-radius:0;border-bottom-right-radius:0}.q-date__edit-range-from:after,.q-date__edit-range-from-to:after{left:4px;border-left-color:currentColor;border-top-color:currentColor;border-bottom-color:currentColor;border-top-left-radius:28px;border-bottom-left-radius:28px}.q-date__edit-range-to:after,.q-date__edit-range-from-to:after{right:4px;border-right-color:currentColor;border-top-color:currentColor;border-bottom-color:currentColor;border-top-right-radius:28px;border-bottom-right-radius:28px}.q-date__calendar-days-container{height:75%;min-height:192px}.q-date__calendar-days>div{height:16.66%!important}.q-date__event{position:absolute;bottom:2px;left:50%;height:5px;width:8px;border-radius:5px;background-color:var(--q-secondary);transform:translate3d(-50%,0,0)}.q-date__today{box-shadow:0 0 1px 0 currentColor}.q-date__years-content{padding:0 8px}.q-date__years-item,.q-date__months-item{flex:0 0 33.3333%}.q-date.disabled .q-date__header,.q-date.disabled .q-date__content,.q-date--readonly .q-date__header,.q-date--readonly .q-date__content{pointer-events:none}.q-date--readonly .q-date__navigation{display:none}.q-date--portrait{flex-direction:column}.q-date--portrait-standard .q-date__content{height:calc(100% - 86px)}.q-date--portrait-standard .q-date__header{border-top-right-radius:inherit;height:86px}.q-date--portrait-standard .q-date__header-title{align-items:center;height:30px}.q-date--portrait-minimal .q-date__content{height:100%}.q-date--landscape{flex-direction:row;align-items:stretch;min-width:420px}.q-date--landscape>div{display:flex;flex-direction:column}.q-date--landscape .q-date__content{height:100%}.q-date--landscape-standard{min-width:420px}.q-date--landscape-standard .q-date__header{border-bottom-left-radius:inherit;min-width:110px;width:110px}.q-date--landscape-standard .q-date__header-title{flex-direction:column}.q-date--landscape-standard .q-date__header-today{margin-top:12px;margin-left:-8px}.q-date--landscape-minimal{width:310px}.q-date--dark{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f;border-color:#ffffff47}.q-dialog__title{font-size:1.25rem;font-weight:500;line-height:2rem;letter-spacing:.0125em}.q-dialog__progress{font-size:4rem}.q-dialog__inner{outline:0}.q-dialog__inner>div{pointer-events:all;overflow:auto;-webkit-overflow-scrolling:touch;will-change:scroll-position;border-radius:4px}.q-dialog__inner--square>div{border-radius:0!important}.q-dialog__inner>.q-card>.q-card__actions .q-btn--rectangle{min-width:64px}.q-dialog__inner--minimized{padding:24px}.q-dialog__inner--minimized>div{max-height:calc(100vh - 48px)}.q-dialog__inner--maximized>div{height:100%;width:100%;max-height:100vh;max-width:100vw;border-radius:0!important;top:0!important;left:0!important}.q-dialog__inner--top,.q-dialog__inner--bottom{padding-top:0!important;padding-bottom:0!important}.q-dialog__inner--right,.q-dialog__inner--left{padding-right:0!important;padding-left:0!important}.q-dialog__inner--left:not(.q-dialog__inner--animating)>div,.q-dialog__inner--top:not(.q-dialog__inner--animating)>div{border-top-left-radius:0}.q-dialog__inner--right:not(.q-dialog__inner--animating)>div,.q-dialog__inner--top:not(.q-dialog__inner--animating)>div{border-top-right-radius:0}.q-dialog__inner--left:not(.q-dialog__inner--animating)>div,.q-dialog__inner--bottom:not(.q-dialog__inner--animating)>div{border-bottom-left-radius:0}.q-dialog__inner--right:not(.q-dialog__inner--animating)>div,.q-dialog__inner--bottom:not(.q-dialog__inner--animating)>div{border-bottom-right-radius:0}.q-dialog__inner--fullwidth>div{width:100%!important;max-width:100%!important}.q-dialog__inner--fullheight>div{height:100%!important;max-height:100%!important}.q-dialog__backdrop{z-index:-1;pointer-events:all;outline:0;background:rgba(0,0,0,.4)}body.platform-ios .q-dialog__inner--minimized>div,body.platform-android:not(.native-mobile) .q-dialog__inner--minimized>div{max-height:calc(100vh - 108px)}body.q-ios-padding .q-dialog__inner{padding-top:20px!important;padding-top:env(safe-area-inset-top)!important;padding-bottom:env(safe-area-inset-bottom)!important}body.q-ios-padding .q-dialog__inner>div{max-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom))!important}@media (max-width: 599.98px){.q-dialog__inner--top,.q-dialog__inner--bottom{padding-left:0;padding-right:0}.q-dialog__inner--top>div,.q-dialog__inner--bottom>div{width:100%!important}}@media (min-width: 600px){.q-dialog__inner--minimized>div{max-width:560px}}.q-body--dialog{overflow:hidden}.q-bottom-sheet{padding-bottom:8px}.q-bottom-sheet__avatar{border-radius:50%}.q-bottom-sheet--list{width:400px}.q-bottom-sheet--list .q-icon,.q-bottom-sheet--list img{font-size:24px;width:24px;height:24px}.q-bottom-sheet--grid{width:700px}.q-bottom-sheet--grid .q-bottom-sheet__item{padding:8px;text-align:center;min-width:100px}.q-bottom-sheet--grid .q-icon,.q-bottom-sheet--grid img,.q-bottom-sheet--grid .q-bottom-sheet__empty-icon{font-size:48px;width:48px;height:48px;margin-bottom:8px}.q-bottom-sheet--grid .q-separator{margin:12px 0}.q-bottom-sheet__item{flex:0 0 33.3333%}@media (min-width: 600px){.q-bottom-sheet__item{flex:0 0 25%}}.q-dialog-plugin{width:400px}.q-dialog-plugin__form{max-height:50vh}.q-dialog-plugin .q-card__section+.q-card__section{padding-top:0}.q-dialog-plugin--progress{text-align:center}.q-editor{border:1px solid rgba(0,0,0,.12);border-radius:4px;background-color:#fff}.q-editor.disabled{border-style:dashed}.q-editor>div:first-child,.q-editor__toolbars-container,.q-editor__toolbars-container>div:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.q-editor__content{outline:0;padding:10px;min-height:10em;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;overflow:auto;max-width:100%}.q-editor__content pre{white-space:pre-wrap}.q-editor__content hr{border:0;outline:0;margin:1px;height:1px;background:rgba(0,0,0,.12)}.q-editor__content:empty:not(:focus):before{content:attr(placeholder);opacity:.7}.q-editor__toolbar{border-bottom:1px solid rgba(0,0,0,.12);min-height:32px}.q-editor__toolbars-container{max-width:100%}.q-editor .q-btn{margin:4px}.q-editor__toolbar-group{position:relative;margin:0 4px}.q-editor__toolbar-group+.q-editor__toolbar-group:before{content:"";position:absolute;left:-4px;top:4px;bottom:4px;width:1px;background:rgba(0,0,0,.12)}.q-editor__link-input{color:inherit;text-decoration:none;text-transform:none;border:none;border-radius:0;background:none;outline:0}.q-editor--flat,.q-editor--flat .q-editor__toolbar{border:0}.q-editor--dense .q-editor__toolbar-group{display:flex;align-items:center;flex-wrap:nowrap}.q-editor--dark{border-color:#ffffff47}.q-editor--dark .q-editor__content hr{background:rgba(255,255,255,.28)}.q-editor--dark .q-editor__toolbar{border-color:#ffffff47}.q-editor--dark .q-editor__toolbar-group+.q-editor__toolbar-group:before{background:rgba(255,255,255,.28)}.q-expansion-item__border{opacity:0}.q-expansion-item__toggle-icon{position:relative;transition:transform .3s}.q-expansion-item__toggle-icon--rotated{transform:rotate(180deg)}.q-expansion-item__toggle-focus{width:1em!important;height:1em!important;position:relative!important}.q-expansion-item__toggle-focus+.q-expansion-item__toggle-icon{margin-top:-1em}.q-expansion-item--standard.q-expansion-item--expanded>div>.q-expansion-item__border{opacity:1}.q-expansion-item--popup{transition:padding .5s}.q-expansion-item--popup>.q-expansion-item__container{border:1px solid rgba(0,0,0,.12)}.q-expansion-item--popup>.q-expansion-item__container>.q-separator{display:none}.q-expansion-item--popup.q-expansion-item--collapsed{padding:0 15px}.q-expansion-item--popup.q-expansion-item--expanded{padding:15px 0}.q-expansion-item--popup.q-expansion-item--expanded+.q-expansion-item--popup.q-expansion-item--expanded{padding-top:0}.q-expansion-item--popup.q-expansion-item--collapsed:not(:first-child)>.q-expansion-item__container{border-top-width:0}.q-expansion-item--popup.q-expansion-item--expanded+.q-expansion-item--popup.q-expansion-item--collapsed>.q-expansion-item__container{border-top-width:1px}.q-expansion-item__content>.q-card{box-shadow:none;border-radius:0}.q-expansion-item:first-child>div>.q-expansion-item__border--top{opacity:0}.q-expansion-item:last-child>div>.q-expansion-item__border--bottom{opacity:0}.q-expansion-item--expanded+.q-expansion-item--expanded>div>.q-expansion-item__border--top{opacity:0}.q-expansion-item--expanded .q-textarea--autogrow textarea{animation:q-expansion-done 0s}@keyframes q-expansion-done{0%{--q-exp-done: 1}}.z-fab{z-index:990}.q-fab{position:relative;vertical-align:middle}.q-fab>.q-btn{width:100%}.q-fab--form-rounded{border-radius:28px}.q-fab--form-square{border-radius:4px}.q-fab__icon,.q-fab__active-icon{transition:opacity .4s,transform .4s}.q-fab__icon{opacity:1;transform:rotate(0)}.q-fab__active-icon{opacity:0;transform:rotate(-180deg)}.q-fab__label--external{position:absolute;padding:0 8px;transition:opacity .18s cubic-bezier(.65,.815,.735,.395)}.q-fab__label--external-hidden{opacity:0;pointer-events:none}.q-fab__label--external-left{top:50%;left:-12px;transform:translate(-100%,-50%)}.q-fab__label--external-right{top:50%;right:-12px;transform:translate(100%,-50%)}.q-fab__label--external-bottom{bottom:-12px;left:50%;transform:translate(-50%,100%)}.q-fab__label--external-top{top:-12px;left:50%;transform:translate(-50%,-100%)}.q-fab__label--internal{padding:0;transition:font-size .12s cubic-bezier(.65,.815,.735,.395),max-height .12s cubic-bezier(.65,.815,.735,.395),opacity .07s cubic-bezier(.65,.815,.735,.395);max-height:30px}.q-fab__label--internal-hidden{font-size:0;opacity:0}.q-fab__label--internal-top{padding-bottom:.12em}.q-fab__label--internal-bottom{padding-top:.12em}.q-fab__label--internal-top.q-fab__label--internal-hidden,.q-fab__label--internal-bottom.q-fab__label--internal-hidden{max-height:0}.q-fab__label--internal-left{padding-left:.285em;padding-right:.571em}.q-fab__label--internal-right{padding-right:.285em;padding-left:.571em}.q-fab__icon-holder{min-width:24px;min-height:24px;position:relative}.q-fab__icon-holder--opened .q-fab__icon{transform:rotate(180deg);opacity:0}.q-fab__icon-holder--opened .q-fab__active-icon{transform:rotate(0);opacity:1}.q-fab__actions{position:absolute;opacity:0;transition:transform .18s ease-in,opacity .18s ease-in;pointer-events:none;align-items:center;justify-content:center;align-self:center;padding:3px}.q-fab__actions .q-btn{margin:5px}.q-fab__actions--right{transform-origin:0 50%;transform:scale(.4) translate(-62px);height:56px;left:100%;margin-left:9px}.q-fab__actions--left{transform-origin:100% 50%;transform:scale(.4) translate(62px);height:56px;right:100%;margin-right:9px;flex-direction:row-reverse}.q-fab__actions--up{transform-origin:50% 100%;transform:scale(.4) translateY(62px);width:56px;bottom:100%;margin-bottom:9px;flex-direction:column-reverse}.q-fab__actions--down{transform-origin:50% 0;transform:scale(.4) translateY(-62px);width:56px;top:100%;margin-top:9px;flex-direction:column}.q-fab__actions--up,.q-fab__actions--down{left:50%;margin-left:-28px}.q-fab__actions--opened{opacity:1;transform:scale(1) translate(.1px);pointer-events:all}.q-fab--align-left>.q-fab__actions--up,.q-fab--align-left>.q-fab__actions--down{align-items:flex-start;left:28px}.q-fab--align-right>.q-fab__actions--up,.q-fab--align-right>.q-fab__actions--down{align-items:flex-end;left:auto;right:0}.q-field{font-size:14px}.q-field ::-ms-clear,.q-field ::-ms-reveal{display:none}.q-field--with-bottom{padding-bottom:20px}.q-field__marginal{height:56px;color:#0000008a;font-size:24px}.q-field__marginal>*+*{margin-left:2px}.q-field__marginal .q-avatar{font-size:32px}.q-field__before,.q-field__prepend{padding-right:12px}.q-field__after,.q-field__append{padding-left:12px}.q-field__after:empty,.q-field__append:empty{display:none}.q-field__append+.q-field__append{padding-left:2px}.q-field__inner{text-align:left}.q-field__bottom{font-size:12px;min-height:20px;line-height:1;color:#0000008a;padding:8px 12px 0;backface-visibility:hidden}.q-field__bottom--animated{transform:translateY(100%);position:absolute;left:0;right:0;bottom:0}.q-field__messages{line-height:1}.q-field__messages>div{word-break:break-word;word-wrap:break-word;overflow-wrap:break-word}.q-field__messages>div+div{margin-top:4px}.q-field__counter{padding-left:8px;line-height:1}.q-field--item-aligned{padding:8px 16px}.q-field--item-aligned .q-field__before{min-width:56px}.q-field__control-container{height:inherit}.q-field__control{color:var(--q-primary);height:56px;max-width:100%;outline:none}.q-field__control:before,.q-field__control:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.q-field__control:before{border-radius:inherit}.q-field__shadow{top:8px;opacity:0;overflow:hidden;white-space:pre-wrap;transition:opacity .36s cubic-bezier(.4,0,.2,1)}.q-field__shadow+.q-field__native::placeholder{transition:opacity .36s cubic-bezier(.4,0,.2,1)}.q-field__shadow+.q-field__native:focus::placeholder{opacity:0}.q-field__native,.q-field__prefix,.q-field__suffix,.q-field__input{font-weight:400;line-height:28px;letter-spacing:.00937em;text-decoration:inherit;text-transform:inherit;border:none;border-radius:0;background:none;color:#000000de;outline:0;padding:6px 0}.q-field__native,.q-field__input{width:100%;min-width:0;outline:0!important;-webkit-user-select:auto;user-select:auto}.q-field__native:-webkit-autofill,.q-field__input:-webkit-autofill{-webkit-animation-name:q-autofill;-webkit-animation-fill-mode:both}.q-field__native:-webkit-autofill+.q-field__label,.q-field__input:-webkit-autofill+.q-field__label{transform:translateY(-40%) scale(.75)}.q-field__native[type=color]+.q-field__label,.q-field__native[type=date]+.q-field__label,.q-field__native[type=datetime-local]+.q-field__label,.q-field__native[type=month]+.q-field__label,.q-field__native[type=time]+.q-field__label,.q-field__native[type=week]+.q-field__label,.q-field__input[type=color]+.q-field__label,.q-field__input[type=date]+.q-field__label,.q-field__input[type=datetime-local]+.q-field__label,.q-field__input[type=month]+.q-field__label,.q-field__input[type=time]+.q-field__label,.q-field__input[type=week]+.q-field__label{transform:translateY(-40%) scale(.75)}.q-field__native:invalid,.q-field__input:invalid{box-shadow:none}.q-field__native[type=file]{line-height:1em}.q-field__input{padding:0;height:0;min-height:24px;line-height:24px}.q-field__prefix,.q-field__suffix{transition:opacity .36s cubic-bezier(.4,0,.2,1);white-space:nowrap}.q-field__prefix{padding-right:4px}.q-field__suffix{padding-left:4px}.q-field--readonly .q-placeholder,.q-field--disabled .q-placeholder{opacity:1!important}.q-field--readonly.q-field--labeled .q-field__native,.q-field--readonly.q-field--labeled .q-field__input{cursor:default}.q-field--readonly.q-field--float .q-field__native,.q-field--readonly.q-field--float .q-field__input{cursor:text}.q-field--disabled .q-field__inner{cursor:not-allowed}.q-field--disabled .q-field__control{pointer-events:none}.q-field--disabled .q-field__control>div{opacity:.6!important}.q-field--disabled .q-field__control>div,.q-field--disabled .q-field__control>div *{outline:0!important}.q-field__label{left:0;top:18px;max-width:100%;color:#0009;font-size:16px;line-height:20px;font-weight:400;letter-spacing:.00937em;text-decoration:inherit;text-transform:inherit;transform-origin:left top;transition:transform .36s cubic-bezier(.4,0,.2,1),max-width .324s cubic-bezier(.4,0,.2,1);backface-visibility:hidden}.q-field--float .q-field__label{max-width:133%;transform:translateY(-40%) scale(.75);transition:transform .36s cubic-bezier(.4,0,.2,1),max-width .396s cubic-bezier(.4,0,.2,1)}.q-field--highlighted .q-field__label{color:currentColor}.q-field--highlighted .q-field__shadow{opacity:.5}.q-field--filled .q-field__control{padding:0 12px;background:rgba(0,0,0,.05);border-radius:4px 4px 0 0}.q-field--filled .q-field__control:before{background:rgba(0,0,0,.05);border-bottom:1px solid rgba(0,0,0,.42);opacity:0;transition:opacity .36s cubic-bezier(.4,0,.2,1),background .36s cubic-bezier(.4,0,.2,1)}.q-field--filled .q-field__control:hover:before{opacity:1}.q-field--filled .q-field__control:after{height:2px;top:auto;transform-origin:center bottom;transform:scale3d(0,1,1);background:currentColor;transition:transform .36s cubic-bezier(.4,0,.2,1)}.q-field--filled.q-field--rounded .q-field__control{border-radius:28px 28px 0 0}.q-field--filled.q-field--highlighted .q-field__control:before{opacity:1;background:rgba(0,0,0,.12)}.q-field--filled.q-field--highlighted .q-field__control:after{transform:scaleZ(1)}.q-field--filled.q-field--dark .q-field__control,.q-field--filled.q-field--dark .q-field__control:before{background:rgba(255,255,255,.07)}.q-field--filled.q-field--dark.q-field--highlighted .q-field__control:before{background:rgba(255,255,255,.1)}.q-field--filled.q-field--readonly .q-field__control:before{opacity:1;background:transparent;border-bottom-style:dashed}.q-field--outlined .q-field__control{border-radius:4px;padding:0 12px}.q-field--outlined .q-field__control:before{border:1px solid rgba(0,0,0,.24);transition:border-color .36s cubic-bezier(.4,0,.2,1)}.q-field--outlined .q-field__control:hover:before{border-color:#000}.q-field--outlined .q-field__control:after{height:inherit;border-radius:inherit;border:2px solid transparent;transition:border-color .36s cubic-bezier(.4,0,.2,1)}.q-field--outlined .q-field__native:-webkit-autofill,.q-field--outlined .q-field__input:-webkit-autofill{margin-top:1px;margin-bottom:1px}.q-field--outlined.q-field--rounded .q-field__control{border-radius:28px}.q-field--outlined.q-field--highlighted .q-field__control:hover:before{border-color:transparent}.q-field--outlined.q-field--highlighted .q-field__control:after{border-color:currentColor;border-width:2px;transform:scaleZ(1)}.q-field--outlined.q-field--readonly .q-field__control:before{border-style:dashed}.q-field--standard .q-field__control:before{border-bottom:1px solid rgba(0,0,0,.24);transition:border-color .36s cubic-bezier(.4,0,.2,1)}.q-field--standard .q-field__control:hover:before{border-color:#000}.q-field--standard .q-field__control:after{height:2px;top:auto;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;transform-origin:center bottom;transform:scale3d(0,1,1);background:currentColor;transition:transform .36s cubic-bezier(.4,0,.2,1)}.q-field--standard.q-field--highlighted .q-field__control:after{transform:scaleZ(1)}.q-field--standard.q-field--readonly .q-field__control:before{border-bottom-style:dashed}.q-field--dark .q-field__control:before{border-color:#fff9}.q-field--dark .q-field__control:hover:before{border-color:#fff}.q-field--dark .q-field__native,.q-field--dark .q-field__prefix,.q-field--dark .q-field__suffix,.q-field--dark .q-field__input{color:#fff}.q-field--dark:not(.q-field--highlighted) .q-field__label,.q-field--dark .q-field__marginal,.q-field--dark .q-field__bottom{color:#ffffffb3}.q-field--standout .q-field__control{padding:0 12px;background:rgba(0,0,0,.05);border-radius:4px;transition:box-shadow .36s cubic-bezier(.4,0,.2,1),background-color .36s cubic-bezier(.4,0,.2,1)}.q-field--standout .q-field__control:before{background:rgba(0,0,0,.07);opacity:0;transition:opacity .36s cubic-bezier(.4,0,.2,1),background .36s cubic-bezier(.4,0,.2,1)}.q-field--standout .q-field__control:hover:before{opacity:1}.q-field--standout.q-field--rounded .q-field__control{border-radius:28px}.q-field--standout.q-field--highlighted .q-field__control{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;background:#000}.q-field--standout.q-field--highlighted .q-field__native,.q-field--standout.q-field--highlighted .q-field__prefix,.q-field--standout.q-field--highlighted .q-field__suffix,.q-field--standout.q-field--highlighted .q-field__prepend,.q-field--standout.q-field--highlighted .q-field__append,.q-field--standout.q-field--highlighted .q-field__input{color:#fff}.q-field--standout.q-field--readonly .q-field__control:before{opacity:1;background:transparent;border:1px dashed rgba(0,0,0,.24)}.q-field--standout.q-field--dark .q-field__control{background:rgba(255,255,255,.07)}.q-field--standout.q-field--dark .q-field__control:before{background:rgba(255,255,255,.07)}.q-field--standout.q-field--dark.q-field--highlighted .q-field__control{background:#fff}.q-field--standout.q-field--dark.q-field--highlighted .q-field__native,.q-field--standout.q-field--dark.q-field--highlighted .q-field__prefix,.q-field--standout.q-field--dark.q-field--highlighted .q-field__suffix,.q-field--standout.q-field--dark.q-field--highlighted .q-field__prepend,.q-field--standout.q-field--dark.q-field--highlighted .q-field__append,.q-field--standout.q-field--dark.q-field--highlighted .q-field__input{color:#000}.q-field--standout.q-field--dark.q-field--readonly .q-field__control:before{border-color:#ffffff3d}.q-field--labeled .q-field__native,.q-field--labeled .q-field__prefix,.q-field--labeled .q-field__suffix{line-height:24px;padding-top:24px;padding-bottom:8px}.q-field--labeled .q-field__shadow{top:0}.q-field--labeled:not(.q-field--float) .q-field__prefix,.q-field--labeled:not(.q-field--float) .q-field__suffix{opacity:0}.q-field--labeled:not(.q-field--float) .q-field__native::placeholder,.q-field--labeled:not(.q-field--float) .q-field__input::placeholder{color:transparent}.q-field--labeled.q-field--dense .q-field__native,.q-field--labeled.q-field--dense .q-field__prefix,.q-field--labeled.q-field--dense .q-field__suffix{padding-top:14px;padding-bottom:2px}.q-field--dense .q-field__shadow{top:0}.q-field--dense .q-field__control,.q-field--dense .q-field__marginal{height:40px}.q-field--dense .q-field__bottom{font-size:11px}.q-field--dense .q-field__label{font-size:14px;top:10px}.q-field--dense .q-field__before,.q-field--dense .q-field__prepend{padding-right:6px}.q-field--dense .q-field__after,.q-field--dense .q-field__append{padding-left:6px}.q-field--dense .q-field__append+.q-field__append{padding-left:2px}.q-field--dense .q-field__marginal .q-avatar{font-size:24px}.q-field--dense.q-field--float .q-field__label{transform:translateY(-30%) scale(.75)}.q-field--dense .q-field__native:-webkit-autofill+.q-field__label,.q-field--dense .q-field__input:-webkit-autofill+.q-field__label{transform:translateY(-30%) scale(.75)}.q-field--dense .q-field__native[type=color]+.q-field__label,.q-field--dense .q-field__native[type=date]+.q-field__label,.q-field--dense .q-field__native[type=datetime-local]+.q-field__label,.q-field--dense .q-field__native[type=month]+.q-field__label,.q-field--dense .q-field__native[type=time]+.q-field__label,.q-field--dense .q-field__native[type=week]+.q-field__label,.q-field--dense .q-field__input[type=color]+.q-field__label,.q-field--dense .q-field__input[type=date]+.q-field__label,.q-field--dense .q-field__input[type=datetime-local]+.q-field__label,.q-field--dense .q-field__input[type=month]+.q-field__label,.q-field--dense .q-field__input[type=time]+.q-field__label,.q-field--dense .q-field__input[type=week]+.q-field__label{transform:translateY(-30%) scale(.75)}.q-field--borderless .q-field__bottom,.q-field--borderless.q-field--dense .q-field__control,.q-field--standard .q-field__bottom,.q-field--standard.q-field--dense .q-field__control{padding-left:0;padding-right:0}.q-field--error .q-field__label{animation:q-field-label .36s}.q-field--error .q-field__bottom{color:var(--q-negative)}.q-field__focusable-action{opacity:.6;cursor:pointer;outline:0!important;border:0;color:inherit;background:transparent;padding:0}.q-field__focusable-action:hover,.q-field__focusable-action:focus{opacity:1}.q-field--auto-height .q-field__control{height:auto}.q-field--auto-height .q-field__control,.q-field--auto-height .q-field__native{min-height:56px}.q-field--auto-height .q-field__native{align-items:center}.q-field--auto-height .q-field__control-container{padding-top:0}.q-field--auto-height .q-field__native,.q-field--auto-height .q-field__prefix,.q-field--auto-height .q-field__suffix{line-height:18px}.q-field--auto-height.q-field--labeled .q-field__control-container{padding-top:24px}.q-field--auto-height.q-field--labeled .q-field__shadow{top:24px}.q-field--auto-height.q-field--labeled .q-field__native,.q-field--auto-height.q-field--labeled .q-field__prefix,.q-field--auto-height.q-field--labeled .q-field__suffix{padding-top:0}.q-field--auto-height.q-field--labeled .q-field__native{min-height:24px}.q-field--auto-height.q-field--dense .q-field__control,.q-field--auto-height.q-field--dense .q-field__native{min-height:40px}.q-field--auto-height.q-field--dense.q-field--labeled .q-field__control-container{padding-top:14px}.q-field--auto-height.q-field--dense.q-field--labeled .q-field__shadow{top:14px}.q-field--auto-height.q-field--dense.q-field--labeled .q-field__native{min-height:24px}.q-field--square .q-field__control{border-radius:0!important}.q-transition--field-message-enter-active,.q-transition--field-message-leave-active{transition:transform .6s cubic-bezier(.86,0,.07,1),opacity .6s cubic-bezier(.86,0,.07,1)}.q-transition--field-message-enter-from,.q-transition--field-message-leave-to{opacity:0;transform:translateY(-10px)}.q-transition--field-message-leave-from,.q-transition--field-message-leave-active{position:absolute}@keyframes q-field-label{40%{margin-left:2px}60%,80%{margin-left:-2px}70%,90%{margin-left:2px}}@keyframes q-autofill{to{background:transparent;color:inherit}}.q-file .q-field__native{word-break:break-all;overflow:hidden}.q-file .q-field__input{opacity:0!important}.q-file .q-field__input::-webkit-file-upload-button{cursor:pointer}.q-file__filler{visibility:hidden;width:100%;border:none;padding:0}.q-file__dnd{outline:1px dashed currentColor;outline-offset:-4px}.q-form{position:relative}.q-img{position:relative;width:100%;display:inline-block;vertical-align:middle;overflow:hidden}.q-img__loading .q-spinner{font-size:50px}.q-img__container{border-radius:inherit;font-size:0}.q-img__image{border-radius:inherit;width:100%;height:100%;opacity:0}.q-img__image--with-transition{transition:opacity .28s ease-in}.q-img__image--loaded{opacity:1}.q-img__content{border-radius:inherit;pointer-events:none}.q-img__content>div{pointer-events:all;position:absolute;padding:16px;color:#fff;background:rgba(0,0,0,.47)}.q-img--no-menu .q-img__image,.q-img--no-menu .q-img__placeholder{pointer-events:none}.q-inner-loading{background:rgba(255,255,255,.6)}.q-inner-loading--dark{background:rgba(0,0,0,.4)}.q-inner-loading__label{margin-top:8px}.q-textarea .q-field__control{min-height:56px;height:auto}.q-textarea .q-field__control-container{padding-top:2px;padding-bottom:2px}.q-textarea .q-field__shadow{top:2px;bottom:2px}.q-textarea .q-field__native,.q-textarea .q-field__prefix,.q-textarea .q-field__suffix{line-height:18px}.q-textarea .q-field__native{resize:vertical;padding-top:17px;min-height:52px}.q-textarea.q-field--labeled .q-field__control-container{padding-top:26px}.q-textarea.q-field--labeled .q-field__shadow{top:26px}.q-textarea.q-field--labeled .q-field__native,.q-textarea.q-field--labeled .q-field__prefix,.q-textarea.q-field--labeled .q-field__suffix{padding-top:0}.q-textarea.q-field--labeled .q-field__native{min-height:26px;padding-top:1px}.q-textarea--autogrow .q-field__native{resize:none}.q-textarea.q-field--dense .q-field__control,.q-textarea.q-field--dense .q-field__native{min-height:36px}.q-textarea.q-field--dense .q-field__native{padding-top:9px}.q-textarea.q-field--dense.q-field--labeled .q-field__control-container{padding-top:14px}.q-textarea.q-field--dense.q-field--labeled .q-field__shadow{top:14px}.q-textarea.q-field--dense.q-field--labeled .q-field__native{min-height:24px;padding-top:3px}.q-textarea.q-field--dense.q-field--labeled .q-field__prefix,.q-textarea.q-field--dense.q-field--labeled .q-field__suffix{padding-top:2px}body.mobile .q-textarea .q-field__native,.q-textarea.disabled .q-field__native{resize:none}.q-intersection{position:relative}.q-item{min-height:48px;padding:8px 16px;color:inherit;transition:color .3s,background-color .3s}.q-item__section--side{color:#757575;align-items:flex-start;padding-right:16px;width:auto;min-width:0;max-width:100%}.q-item__section--side>.q-icon{font-size:24px}.q-item__section--side>.q-avatar{font-size:40px}.q-item__section--avatar{color:inherit;min-width:56px}.q-item__section--thumbnail img{width:100px;height:56px}.q-item__section--nowrap{white-space:nowrap}.q-item>.q-item__section--thumbnail:first-child,.q-item>.q-focus-helper+.q-item__section--thumbnail{margin-left:-16px}.q-item>.q-item__section--thumbnail:last-of-type{margin-right:-16px}.q-item__label{line-height:1.2em!important;max-width:100%}.q-item__label--overline{color:#000000b3}.q-item__label--caption{color:#0000008a}.q-item__label--header{color:#757575;padding:16px;font-size:.875rem;line-height:1.25rem;letter-spacing:.01786em}.q-separator--spaced+.q-item__label--header,.q-list--padding .q-item__label--header{padding-top:8px}.q-item__label+.q-item__label{margin-top:4px}.q-item__section--main{width:auto;min-width:0;max-width:100%;flex:10000 1 0%}.q-item__section--main+.q-item__section--main{margin-left:8px}.q-item__section--main~.q-item__section--side{align-items:flex-end;padding-right:0;padding-left:16px}.q-item__section--main.q-item__section--thumbnail{margin-left:0;margin-right:-16px}.q-list--bordered{border:1px solid rgba(0,0,0,.12)}.q-list--separator>.q-item-type+.q-item-type,.q-list--separator>.q-virtual-scroll__content>.q-item-type+.q-item-type{border-top:1px solid rgba(0,0,0,.12)}.q-list--padding{padding:8px 0}.q-list--dense>.q-item,.q-item--dense{min-height:32px;padding:2px 16px}.q-list--dark.q-list--separator>.q-item-type+.q-item-type,.q-list--dark.q-list--separator>.q-virtual-scroll__content>.q-item-type+.q-item-type{border-top-color:#ffffff47}.q-list--dark,.q-item--dark{color:#fff;border-color:#ffffff47}.q-list--dark .q-item__section--side:not(.q-item__section--avatar),.q-item--dark .q-item__section--side:not(.q-item__section--avatar){color:#ffffffb3}.q-list--dark .q-item__label--header,.q-item--dark .q-item__label--header{color:#ffffffa3}.q-list--dark .q-item__label--overline,.q-list--dark .q-item__label--caption,.q-item--dark .q-item__label--overline,.q-item--dark .q-item__label--caption{color:#fffc}.q-item{position:relative}.q-item.q-router-link--active,.q-item--active{color:var(--q-primary)}.q-knob{font-size:48px}.q-knob--editable{cursor:pointer;outline:0}.q-knob--editable:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;box-shadow:none;transition:box-shadow .24s ease-in-out}.q-knob--editable:focus:before{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f}body.body--dark .q-knob--editable:focus:before{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-layout{width:100%;outline:0}.q-layout-container{position:relative;width:100%;height:100%}.q-layout-container .q-layout{min-height:100%}.q-layout-container>div{transform:translateZ(0)}.q-layout-container>div>div{min-height:0;max-height:100%}.q-layout__shadow{width:100%}.q-layout__shadow:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:0 0 10px 2px #0003,0 0 10px #0000003d}.q-layout__section--marginal{background-color:var(--q-primary);color:#fff}.q-header--hidden{transform:translateY(-110%)}.q-header--bordered{border-bottom:1px solid rgba(0,0,0,.12)}.q-header .q-layout__shadow{bottom:-10px}.q-header .q-layout__shadow:after{bottom:10px}.q-footer--hidden{transform:translateY(110%)}.q-footer--bordered{border-top:1px solid rgba(0,0,0,.12)}.q-footer .q-layout__shadow{top:-10px}.q-footer .q-layout__shadow:after{top:10px}.q-header,.q-footer{z-index:2000}.q-drawer{position:absolute;top:0;bottom:0;background:#fff;z-index:1000}.q-drawer--on-top{z-index:3000}.q-drawer--left{left:0;transform:translate(-100%)}.q-drawer--left.q-drawer--bordered{border-right:1px solid rgba(0,0,0,.12)}.q-drawer--left .q-layout__shadow{left:10px;right:-10px}.q-drawer--left .q-layout__shadow:after{right:10px}.q-drawer--right{right:0;transform:translate(100%)}.q-drawer--right.q-drawer--bordered{border-left:1px solid rgba(0,0,0,.12)}.q-drawer--right .q-layout__shadow{left:-10px}.q-drawer--right .q-layout__shadow:after{left:10px}.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini{padding:0!important}.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item,.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__section{text-align:center;justify-content:center;padding-left:0;padding-right:0;min-width:0}.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__label,.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__section--main,.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__section--side~.q-item__section--side{display:none}.q-drawer--mini .q-mini-drawer-hide,.q-drawer--mini .q-expansion-item__content{display:none}.q-drawer--mini-animate .q-drawer__content{overflow-x:hidden!important;white-space:nowrap}.q-drawer--standard .q-mini-drawer-only,.q-drawer--mobile .q-mini-drawer-only,.q-drawer--mobile .q-mini-drawer-hide{display:none}.q-drawer__backdrop{z-index:2999!important;will-change:background-color}.q-drawer__opener{z-index:2001;height:100%;width:15px;-webkit-user-select:none;user-select:none}.q-layout,.q-header,.q-footer,.q-page{position:relative}.q-page-sticky--shrink{pointer-events:none}.q-page-sticky--shrink>div{display:inline-block;pointer-events:auto}body.q-ios-padding .q-layout--standard .q-header>.q-toolbar:nth-child(1),body.q-ios-padding .q-layout--standard .q-header>.q-tabs:nth-child(1) .q-tabs-head,body.q-ios-padding .q-layout--standard .q-drawer--top-padding .q-drawer__content{padding-top:20px;min-height:70px;padding-top:env(safe-area-inset-top);min-height:calc(env(safe-area-inset-top) + 50px)}body.q-ios-padding .q-layout--standard .q-footer>.q-toolbar:last-child,body.q-ios-padding .q-layout--standard .q-footer>.q-tabs:last-child .q-tabs-head,body.q-ios-padding .q-layout--standard .q-drawer--top-padding .q-drawer__content{padding-bottom:env(safe-area-inset-bottom);min-height:calc(env(safe-area-inset-bottom) + 50px)}.q-body--layout-animate .q-drawer__backdrop{transition:background-color .12s!important}.q-body--layout-animate .q-drawer{transition:transform .12s,width .12s,top .12s,bottom .12s!important}.q-body--layout-animate .q-layout__section--marginal{transition:transform .12s,left .12s,right .12s!important}.q-body--layout-animate .q-page-container{transition:padding-top .12s,padding-right .12s,padding-bottom .12s,padding-left .12s!important}.q-body--layout-animate .q-page-sticky{transition:transform .12s,left .12s,right .12s,top .12s,bottom .12s!important}body:not(.q-body--layout-animate) .q-layout--prevent-focus{visibility:hidden}.q-body--drawer-toggle{overflow-x:hidden!important}@media (max-width: 599.98px){.q-layout-padding{padding:8px}}@media (min-width: 600px) and (max-width: 1439.98px){.q-layout-padding{padding:16px}}@media (min-width: 1440px){.q-layout-padding{padding:24px}}body.body--dark .q-header,body.body--dark .q-footer,body.body--dark .q-drawer{border-color:#ffffff47}body.body--dark .q-layout__shadow:after{box-shadow:0 0 10px 2px #fff3,0 0 10px #ffffff3d}body.platform-ios .q-layout--containerized{position:unset!important}.q-linear-progress{--q-linear-progress-speed: .3s;position:relative;width:100%;overflow:hidden;font-size:4px;height:1em;color:var(--q-primary);transform:scaleZ(1)}.q-linear-progress__model,.q-linear-progress__track{transform-origin:0 0}.q-linear-progress__model--with-transition,.q-linear-progress__track--with-transition{transition:transform var(--q-linear-progress-speed)}.q-linear-progress--reverse .q-linear-progress__model,.q-linear-progress--reverse .q-linear-progress__track{transform-origin:0 100%}.q-linear-progress__model--determinate{background:currentColor}.q-linear-progress__model--indeterminate,.q-linear-progress__model--query{transition:none}.q-linear-progress__model--indeterminate:before,.q-linear-progress__model--indeterminate:after,.q-linear-progress__model--query:before,.q-linear-progress__model--query:after{background:currentColor;content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:0 0}.q-linear-progress__model--indeterminate:before,.q-linear-progress__model--query:before{animation:q-linear-progress--indeterminate 2.1s cubic-bezier(.65,.815,.735,.395) infinite}.q-linear-progress__model--indeterminate:after,.q-linear-progress__model--query:after{transform:translate3d(-101%,0,0) scaleZ(1);animation:q-linear-progress--indeterminate-short 2.1s cubic-bezier(.165,.84,.44,1) infinite;animation-delay:1.15s}.q-linear-progress__track{opacity:.4}.q-linear-progress__track--light{background:rgba(0,0,0,.26)}.q-linear-progress__track--dark{background:rgba(255,255,255,.6)}.q-linear-progress__stripe{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,rgba(255,255,255,0) 25%,rgba(255,255,255,0) 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,rgba(255,255,255,0) 75%,rgba(255,255,255,0))!important;background-size:40px 40px!important}.q-linear-progress__stripe--with-transition{transition:width var(--q-linear-progress-speed)}@keyframes q-linear-progress--indeterminate{0%{transform:translate3d(-35%,0,0) scale3d(.35,1,1)}60%{transform:translate3d(100%,0,0) scale3d(.9,1,1)}to{transform:translate3d(100%,0,0) scale3d(.9,1,1)}}@keyframes q-linear-progress--indeterminate-short{0%{transform:translate3d(-101%,0,0) scaleZ(1)}60%{transform:translate3d(107%,0,0) scale3d(.01,1,1)}to{transform:translate3d(107%,0,0) scale3d(.01,1,1)}}.q-menu{position:fixed!important;display:inline-block;max-width:95vw;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;background:#fff;border-radius:4px;overflow-y:auto;overflow-x:hidden;outline:0;max-height:65vh;z-index:6000}.q-menu--square{border-radius:0}.q-menu--dark{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-option-group--inline>div{display:inline-block}.q-pagination input{text-align:center;-moz-appearance:textfield}.q-pagination input::-webkit-outer-spin-button,.q-pagination input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.q-pagination__content{--q-pagination-gutter-parent: -2px;--q-pagination-gutter-child: 2px;margin-top:var(--q-pagination-gutter-parent);margin-left:var(--q-pagination-gutter-parent)}.q-pagination__content>.q-btn,.q-pagination__content>.q-input,.q-pagination__middle>.q-btn{margin-top:var(--q-pagination-gutter-child);margin-left:var(--q-pagination-gutter-child)}.q-parallax{position:relative;width:100%;overflow:hidden;border-radius:inherit}.q-parallax__media>img,.q-parallax__media>video{position:absolute;left:50%;bottom:0;min-width:100%;min-height:100%;will-change:transform;display:none}.q-popup-edit{padding:8px 16px}.q-popup-edit__buttons{margin-top:8px}.q-popup-edit__buttons .q-btn+.q-btn{margin-left:8px}.q-pull-to-refresh{position:relative}.q-pull-to-refresh__puller{border-radius:50%;width:40px;height:40px;color:var(--q-primary);background:#fff;box-shadow:0 0 4px #0000004d}.q-pull-to-refresh__puller--animating{transition:transform .3s,opacity .3s}.q-radio{vertical-align:middle}.q-radio__native{width:1px;height:1px}.q-radio__bg,.q-radio__icon-container{-webkit-user-select:none;user-select:none}.q-radio__bg{top:25%;left:25%;width:50%;height:50%;-webkit-print-color-adjust:exact}.q-radio__bg path{fill:currentColor}.q-radio__icon{color:currentColor;font-size:.5em}.q-radio__check{transform-origin:50% 50%;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0,0,.2,1) 0ms}.q-radio__inner{font-size:40px;width:1em;min-width:1em;height:1em;outline:0;border-radius:50%;color:#0000008a}.q-radio__inner--truthy{color:var(--q-primary)}.q-radio__inner--truthy .q-radio__check{transform:scaleZ(1)}.q-radio.disabled{opacity:.75!important}.q-radio--dark .q-radio__inner{color:#ffffffb3}.q-radio--dark .q-radio__inner:before{opacity:.32!important}.q-radio--dark .q-radio__inner--truthy{color:var(--q-primary)}.q-radio--dense .q-radio__inner{width:.5em;min-width:.5em;height:.5em}.q-radio--dense .q-radio__bg{left:0;top:0;width:100%;height:100%}.q-radio--dense .q-radio__label{padding-left:.5em}.q-radio--dense.reverse .q-radio__label{padding-left:0;padding-right:.5em}body.desktop .q-radio:not(.disabled) .q-radio__inner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:currentColor;opacity:.12;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0,0,.2,1) 0ms}body.desktop .q-radio:not(.disabled):focus .q-radio__inner:before,body.desktop .q-radio:not(.disabled):hover .q-radio__inner:before{transform:scaleZ(1)}body.desktop .q-radio--dense:not(.disabled):focus .q-radio__inner:before,body.desktop .q-radio--dense:not(.disabled):hover .q-radio__inner:before{transform:scale3d(1.5,1.5,1)}.q-rating{color:#ffeb3b;vertical-align:middle}.q-rating__icon-container{height:1em;outline:0}.q-rating__icon-container+.q-rating__icon-container{margin-left:2px}.q-rating__icon{color:currentColor;text-shadow:0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24);position:relative;opacity:.4;transition:transform .2s ease-in,opacity .2s ease-in}.q-rating__icon--hovered{transform:scale(1.3)}.q-rating__icon--active{opacity:1}.q-rating__icon--exselected{opacity:.7}.q-rating--no-dimming .q-rating__icon{opacity:1}.q-rating--editable .q-rating__icon-container{cursor:pointer}.q-responsive{position:relative;max-width:100%;max-height:100%}.q-responsive__filler{width:inherit;max-width:inherit;height:inherit;max-height:inherit}.q-responsive__content{border-radius:inherit}.q-responsive__content>*{width:100%!important;height:100%!important;max-height:100%!important;max-width:100%!important}.q-scrollarea{position:relative;contain:strict}.q-scrollarea__bar,.q-scrollarea__thumb{opacity:.2;transition:opacity .3s;will-change:opacity;cursor:grab}.q-scrollarea__bar--v,.q-scrollarea__thumb--v{right:0;width:10px}.q-scrollarea__bar--h,.q-scrollarea__thumb--h{bottom:0;height:10px}.q-scrollarea__bar--invisible,.q-scrollarea__thumb--invisible{opacity:0!important;pointer-events:none}.q-scrollarea__thumb{background:#000;border-radius:3px}.q-scrollarea__thumb:hover{opacity:.3}.q-scrollarea__thumb:active{opacity:.5}.q-scrollarea__content{min-height:100%;min-width:100%}.q-scrollarea--dark .q-scrollarea__thumb{background:#fff}.q-select--without-input .q-field__control{cursor:pointer}.q-select--with-input .q-field__control{cursor:text}.q-select .q-field__input{min-width:50px!important;cursor:text}.q-select .q-field__input--padding{padding-left:4px}.q-select__focus-target,.q-select__autocomplete-input{position:absolute;outline:0!important;width:1px;height:1px;padding:0;border:0;opacity:0}.q-select__dropdown-icon{cursor:pointer;transition:transform .28s}.q-select.q-field--readonly .q-field__control,.q-select.q-field--readonly .q-select__dropdown-icon{cursor:default}.q-select__dialog{width:90vw!important;max-width:90vw!important;max-height:calc(100vh - 70px)!important;background:#fff;display:flex;flex-direction:column}.q-select__dialog>.scroll{position:relative;background:inherit}body.mobile:not(.native-mobile) .q-select__dialog{max-height:calc(100vh - 108px)!important}body.platform-android.native-mobile .q-dialog__inner--top .q-select__dialog{max-height:calc(100vh - 24px)!important}body.platform-android:not(.native-mobile) .q-dialog__inner--top .q-select__dialog{max-height:calc(100vh - 80px)!important}body.platform-ios.native-mobile .q-dialog__inner--top>div{border-radius:4px}body.platform-ios.native-mobile .q-dialog__inner--top .q-select__dialog--focused{max-height:47vh!important}body.platform-ios:not(.native-mobile) .q-dialog__inner--top .q-select__dialog--focused{max-height:50vh!important}.q-separator{border:0;background:rgba(0,0,0,.12);margin:0;transition:background .3s,opacity .3s;flex-shrink:0}.q-separator--dark{background:rgba(255,255,255,.28)}.q-separator--horizontal{display:block;height:1px}.q-separator--horizontal-inset{margin-left:16px;margin-right:16px}.q-separator--horizontal-item-inset{margin-left:72px;margin-right:0}.q-separator--horizontal-item-thumbnail-inset{margin-left:116px;margin-right:0}.q-separator--vertical{width:1px;height:auto;align-self:stretch}.q-separator--vertical-inset{margin-top:8px;margin-bottom:8px}.q-skeleton{--q-skeleton-speed: 1.5s;background:rgba(0,0,0,.12);border-radius:4px;box-sizing:border-box}.q-skeleton--anim{cursor:wait}.q-skeleton:before{content:"\a0"}.q-skeleton--type-text{transform:scaleY(.5)}.q-skeleton--type-circle,.q-skeleton--type-QAvatar{height:48px;width:48px;border-radius:50%}.q-skeleton--type-QBtn{width:90px;height:36px}.q-skeleton--type-QBadge{width:70px;height:16px}.q-skeleton--type-QChip{width:90px;height:28px;border-radius:16px}.q-skeleton--type-QToolbar{height:50px}.q-skeleton--type-QCheckbox,.q-skeleton--type-QRadio{width:40px;height:40px;border-radius:50%}.q-skeleton--type-QToggle{width:56px;height:40px;border-radius:7px}.q-skeleton--type-QSlider,.q-skeleton--type-QRange{height:40px}.q-skeleton--type-QInput{height:56px}.q-skeleton--bordered{border:1px solid rgba(0,0,0,.05)}.q-skeleton--square{border-radius:0}.q-skeleton--anim-fade{animation:q-skeleton--fade var(--q-skeleton-speed) linear .5s infinite}.q-skeleton--anim-pulse{animation:q-skeleton--pulse var(--q-skeleton-speed) ease-in-out .5s infinite}.q-skeleton--anim-pulse-x{animation:q-skeleton--pulse-x var(--q-skeleton-speed) ease-in-out .5s infinite}.q-skeleton--anim-pulse-y{animation:q-skeleton--pulse-y var(--q-skeleton-speed) ease-in-out .5s infinite}.q-skeleton--anim-wave,.q-skeleton--anim-blink,.q-skeleton--anim-pop{position:relative;overflow:hidden;z-index:1}.q-skeleton--anim-wave:after,.q-skeleton--anim-blink:after,.q-skeleton--anim-pop:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.q-skeleton--anim-blink:after{background:rgba(255,255,255,.7);animation:q-skeleton--fade var(--q-skeleton-speed) linear .5s infinite}.q-skeleton--anim-wave:after{background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.5),rgba(255,255,255,0));animation:q-skeleton--wave var(--q-skeleton-speed) linear .5s infinite}.q-skeleton--dark{background:rgba(255,255,255,.05)}.q-skeleton--dark.q-skeleton--bordered{border:1px solid rgba(255,255,255,.25)}.q-skeleton--dark.q-skeleton--anim-wave:after{background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.1),rgba(255,255,255,0))}.q-skeleton--dark.q-skeleton--anim-blink:after{background:rgba(255,255,255,.2)}@keyframes q-skeleton--fade{0%{opacity:1}50%{opacity:.4}to{opacity:1}}@keyframes q-skeleton--pulse{0%{transform:scale(1)}50%{transform:scale(.85)}to{transform:scale(1)}}@keyframes q-skeleton--pulse-x{0%{transform:scaleX(1)}50%{transform:scaleX(.75)}to{transform:scaleX(1)}}@keyframes q-skeleton--pulse-y{0%{transform:scaleY(1)}50%{transform:scaleY(.75)}to{transform:scaleY(1)}}@keyframes q-skeleton--wave{0%{transform:translate(-100%)}to{transform:translate(100%)}}.q-slide-item{position:relative;background:white}.q-slide-item__left,.q-slide-item__right,.q-slide-item__top,.q-slide-item__bottom{visibility:hidden;font-size:14px;color:#fff}.q-slide-item__left .q-icon,.q-slide-item__right .q-icon,.q-slide-item__top .q-icon,.q-slide-item__bottom .q-icon{font-size:1.714em}.q-slide-item__left{background:#4caf50;padding:8px 16px}.q-slide-item__left>div{transform-origin:left center}.q-slide-item__right{background:#ff9800;padding:8px 16px}.q-slide-item__right>div{transform-origin:right center}.q-slide-item__top{background:#2196f3;padding:16px 8px}.q-slide-item__top>div{transform-origin:top center}.q-slide-item__bottom{background:#9c27b0;padding:16px 8px}.q-slide-item__bottom>div{transform-origin:bottom center}.q-slide-item__content{background:inherit;transition:transform .2s ease-in;-webkit-user-select:none;user-select:none;cursor:pointer}.q-slider{position:relative}.q-slider--h{width:100%}.q-slider--v{height:200px}.q-slider--editable .q-slider__track-container{cursor:grab}.q-slider__track-container{outline:0}.q-slider__track-container--h{width:100%;padding:12px 0}.q-slider__track-container--h .q-slider__selection{will-change:width,left}.q-slider__track-container--v{height:100%;padding:0 12px}.q-slider__track-container--v .q-slider__selection{will-change:height,top}.q-slider__track{color:var(--q-primary);background:rgba(0,0,0,.1);border-radius:4px;width:inherit;height:inherit}.q-slider__inner{background:rgba(0,0,0,.1);border-radius:inherit;width:100%;height:100%}.q-slider__selection{background:currentColor;border-radius:inherit;width:100%;height:100%}.q-slider__markers{color:#0000004d;border-radius:inherit;width:100%;height:100%}.q-slider__markers:after{content:"";position:absolute;background:currentColor}.q-slider__markers--h{background-image:repeating-linear-gradient(to right,currentColor,currentColor 2px,rgba(255,255,255,0) 0,rgba(255,255,255,0))}.q-slider__markers--h:after{height:100%;width:2px;top:0;right:0}.q-slider__markers--v{background-image:repeating-linear-gradient(to bottom,currentColor,currentColor 2px,rgba(255,255,255,0) 0,rgba(255,255,255,0))}.q-slider__markers--v:after{width:100%;height:2px;left:0;bottom:0}.q-slider__marker-labels-container{position:relative;width:100%;height:100%;min-height:24px;min-width:24px}.q-slider__marker-labels{position:absolute}.q-slider__marker-labels--h-standard{top:0}.q-slider__marker-labels--h-switched{bottom:0}.q-slider__marker-labels--h-ltr{transform:translate(-50%)}.q-slider__marker-labels--h-rtl{transform:translate(50%)}.q-slider__marker-labels--v-standard{left:4px}.q-slider__marker-labels--v-switched{right:4px}.q-slider__marker-labels--v-ltr{transform:translateY(-50%)}.q-slider__marker-labels--v-rtl{transform:translateY(50%)}.q-slider__thumb{z-index:1;outline:0;color:var(--q-primary);transition:transform .18s ease-out,fill .18s ease-out,stroke .18s ease-out}.q-slider__thumb.q-slider--focus{opacity:1!important}.q-slider__thumb--h{top:50%;will-change:left}.q-slider__thumb--h-ltr{transform:scale(1) translate(-50%,-50%)}.q-slider__thumb--h-rtl{transform:scale(1) translate(50%,-50%)}.q-slider__thumb--v{left:50%;will-change:top}.q-slider__thumb--v-ltr{transform:scale(1) translate(-50%,-50%)}.q-slider__thumb--v-rtl{transform:scale(1) translate(-50%,50%)}.q-slider__thumb-shape{top:0;left:0;stroke-width:3.5;stroke:currentColor;transition:transform .28s}.q-slider__thumb-shape path{stroke:currentColor;fill:currentColor}.q-slider__focus-ring{border-radius:50%;opacity:0;transition:transform .26667s ease-out,opacity .26667s ease-out,background-color .26667s ease-out;transition-delay:.14s}.q-slider__pin{opacity:0;white-space:nowrap;transition:opacity .28s ease-out;transition-delay:.14s}.q-slider__pin:before{content:"";width:0;height:0;position:absolute}.q-slider__pin--h:before{border-left:6px solid transparent;border-right:6px solid transparent;left:50%;transform:translate(-50%)}.q-slider__pin--h-standard{bottom:100%}.q-slider__pin--h-standard:before{bottom:2px;border-top:6px solid currentColor}.q-slider__pin--h-switched{top:100%}.q-slider__pin--h-switched:before{top:2px;border-bottom:6px solid currentColor}.q-slider__pin--v{top:0}.q-slider__pin--v:before{top:50%;transform:translateY(-50%);border-top:6px solid transparent;border-bottom:6px solid transparent}.q-slider__pin--v-standard{left:100%}.q-slider__pin--v-standard:before{left:2px;border-right:6px solid currentColor}.q-slider__pin--v-switched{right:100%}.q-slider__pin--v-switched:before{right:2px;border-left:6px solid currentColor}.q-slider__label{z-index:1;white-space:nowrap;position:absolute}.q-slider__label--h{left:50%;transform:translate(-50%)}.q-slider__label--h-standard{bottom:7px}.q-slider__label--h-switched{top:7px}.q-slider__label--v{top:50%;transform:translateY(-50%)}.q-slider__label--v-standard{left:7px}.q-slider__label--v-switched{right:7px}.q-slider__text-container{min-height:25px;padding:2px 8px;border-radius:4px;background:currentColor;position:relative;text-align:center}.q-slider__text{color:#fff;font-size:12px}.q-slider--no-value .q-slider__thumb,.q-slider--no-value .q-slider__inner,.q-slider--no-value .q-slider__selection{opacity:0}.q-slider--focus .q-slider__focus-ring,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__focus-ring{background:currentColor;transform:scale3d(1.55,1.55,1);opacity:.25}.q-slider--focus .q-slider__thumb,.q-slider--focus .q-slider__inner,.q-slider--focus .q-slider__selection,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__thumb,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__inner,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__selection{opacity:1}.q-slider--inactive .q-slider__thumb--h{transition:left .28s,right .28s}.q-slider--inactive .q-slider__thumb--v{transition:top .28s,bottom .28s}.q-slider--inactive .q-slider__selection{transition:width .28s,left .28s,right .28s,height .28s,top .28s,bottom .28s}.q-slider--inactive .q-slider__text-container{transition:transform .28s}.q-slider--active{cursor:grabbing}.q-slider--active .q-slider__thumb-shape{transform:scale(1.5)}.q-slider--active .q-slider__focus-ring,.q-slider--active.q-slider--label .q-slider__thumb-shape{transform:scale(0)!important}body.desktop .q-slider.q-slider--enabled .q-slider__track-container:hover .q-slider__pin,.q-slider--label.q-slider--active .q-slider__pin,.q-slider--label .q-slider--focus .q-slider__pin,.q-slider--label.q-slider--label-always .q-slider__pin{opacity:1}.q-slider--dark .q-slider__track,.q-slider--dark .q-slider__inner{background:rgba(255,255,255,.1)}.q-slider--dark .q-slider__markers{color:#ffffff4d}.q-slider--dense .q-slider__track-container--h{padding:6px 0}.q-slider--dense .q-slider__track-container--v{padding:0 6px}.q-space{flex-grow:1!important}.q-spinner{vertical-align:middle}.q-spinner-mat{animation:q-spin 2s linear infinite;transform-origin:center center}.q-spinner-mat .path{stroke-dasharray:1,200;stroke-dashoffset:0;animation:q-mat-dash 1.5s ease-in-out infinite}@keyframes q-spin{0%{transform:rotate3d(0,0,1,0)}25%{transform:rotate3d(0,0,1,90deg)}50%{transform:rotate3d(0,0,1,180deg)}75%{transform:rotate3d(0,0,1,270deg)}to{transform:rotate3d(0,0,1,359deg)}}@keyframes q-mat-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}to{stroke-dasharray:89,200;stroke-dashoffset:-124px}}.q-splitter__panel{position:relative;z-index:0}.q-splitter__panel>.q-splitter{width:100%;height:100%}.q-splitter__separator{background-color:#0000001f;-webkit-user-select:none;user-select:none;position:relative;z-index:1}.q-splitter__separator-area>*{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.q-splitter--dark .q-splitter__separator{background-color:#ffffff47}.q-splitter--vertical>.q-splitter__panel{height:100%}.q-splitter--vertical.q-splitter--active{cursor:col-resize}.q-splitter--vertical>.q-splitter__separator{width:1px}.q-splitter--vertical>.q-splitter__separator>div{left:-6px;right:-6px}.q-splitter--vertical.q-splitter--workable>.q-splitter__separator{cursor:col-resize}.q-splitter--horizontal>.q-splitter__panel{width:100%}.q-splitter--horizontal.q-splitter--active{cursor:row-resize}.q-splitter--horizontal>.q-splitter__separator{height:1px}.q-splitter--horizontal>.q-splitter__separator>div{top:-6px;bottom:-6px}.q-splitter--horizontal.q-splitter--workable>.q-splitter__separator{cursor:row-resize}.q-splitter__before,.q-splitter__after{overflow:auto}.q-stepper{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;background:#fff}.q-stepper__title{font-size:14px;line-height:18px;letter-spacing:.1px}.q-stepper__caption{font-size:12px;line-height:14px}.q-stepper__dot{contain:layout;margin-right:8px;font-size:14px;width:24px;min-width:24px;height:24px;border-radius:50%;background:currentColor}.q-stepper__dot span{color:#fff}.q-stepper__tab{padding:8px 24px;font-size:14px;color:#9e9e9e;flex-direction:row}.q-stepper--dark{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-stepper--dark .q-stepper__dot span{color:#000}.q-stepper__tab--navigation{-webkit-user-select:none;user-select:none;cursor:pointer}.q-stepper__tab--active,.q-stepper__tab--done{color:var(--q-primary)}.q-stepper__tab--active .q-stepper__dot,.q-stepper__tab--active .q-stepper__label,.q-stepper__tab--done .q-stepper__dot,.q-stepper__tab--done .q-stepper__label{text-shadow:0 0 0 currentColor}.q-stepper__tab--disabled .q-stepper__dot{background:rgba(0,0,0,.22)}.q-stepper__tab--disabled .q-stepper__label{color:#00000052}.q-stepper__tab--error{color:var(--q-negative)}.q-stepper__tab--error-with-icon .q-stepper__dot{background:transparent!important}.q-stepper__tab--error-with-icon .q-stepper__dot span{color:currentColor;font-size:24px}.q-stepper__header{border-top-left-radius:inherit;border-top-right-radius:inherit}.q-stepper__header--border{border-bottom:1px solid rgba(0,0,0,.12)}.q-stepper__header--standard-labels .q-stepper__tab{min-height:72px;justify-content:center}.q-stepper__header--standard-labels .q-stepper__tab:first-child{justify-content:flex-start}.q-stepper__header--standard-labels .q-stepper__tab:last-child{justify-content:flex-end}.q-stepper__header--standard-labels .q-stepper__tab:only-child{justify-content:center}.q-stepper__header--standard-labels .q-stepper__dot:after{display:none}.q-stepper__header--alternative-labels .q-stepper__tab{min-height:104px;padding:24px 32px;flex-direction:column;justify-content:flex-start}.q-stepper__header--alternative-labels .q-stepper__dot{margin-right:0}.q-stepper__header--alternative-labels .q-stepper__label{margin-top:8px;text-align:center}.q-stepper__header--alternative-labels .q-stepper__label:before,.q-stepper__header--alternative-labels .q-stepper__label:after{display:none}.q-stepper__header--contracted,.q-stepper__header--contracted.q-stepper__header--alternative-labels .q-stepper__tab{min-height:72px}.q-stepper__header--contracted.q-stepper__header--alternative-labels .q-stepper__tab:first-child{align-items:flex-start}.q-stepper__header--contracted.q-stepper__header--alternative-labels .q-stepper__tab:last-child{align-items:flex-end}.q-stepper__header--contracted .q-stepper__tab{padding:24px 0}.q-stepper__header--contracted .q-stepper__tab:first-child .q-stepper__dot{transform:translate(24px)}.q-stepper__header--contracted .q-stepper__tab:last-child .q-stepper__dot{transform:translate(-24px)}.q-stepper__header--contracted .q-stepper__tab:not(:last-child) .q-stepper__dot:after{display:block!important}.q-stepper__header--contracted .q-stepper__dot{margin:0}.q-stepper__header--contracted .q-stepper__label{display:none}.q-stepper__nav{padding-top:24px}.q-stepper--flat{box-shadow:none}.q-stepper--bordered{border:1px solid rgba(0,0,0,.12)}.q-stepper--horizontal .q-stepper__step-inner{padding:24px}.q-stepper--horizontal .q-stepper__tab:first-child{border-top-left-radius:inherit}.q-stepper--horizontal .q-stepper__tab:last-child{border-top-right-radius:inherit}.q-stepper--horizontal .q-stepper__tab:first-child .q-stepper__dot:before,.q-stepper--horizontal .q-stepper__tab:last-child .q-stepper__label:after,.q-stepper--horizontal .q-stepper__tab:last-child .q-stepper__dot:after{display:none}.q-stepper--horizontal .q-stepper__tab{overflow:hidden}.q-stepper--horizontal .q-stepper__line{contain:layout}.q-stepper--horizontal .q-stepper__line:before,.q-stepper--horizontal .q-stepper__line:after{position:absolute;top:50%;height:1px;width:100vw;background:rgba(0,0,0,.12)}.q-stepper--horizontal .q-stepper__label:after,.q-stepper--horizontal .q-stepper__dot:after{content:"";left:100%;margin-left:8px}.q-stepper--horizontal .q-stepper__dot:before{content:"";right:100%;margin-right:8px}.q-stepper--horizontal>.q-stepper__nav{padding:0 24px 24px}.q-stepper--vertical{padding:16px 0}.q-stepper--vertical .q-stepper__tab{padding:12px 24px}.q-stepper--vertical .q-stepper__title{line-height:18px}.q-stepper--vertical .q-stepper__step-inner{padding:0 24px 32px 60px}.q-stepper--vertical>.q-stepper__nav{padding:24px 24px 0}.q-stepper--vertical .q-stepper__step{overflow:hidden}.q-stepper--vertical .q-stepper__dot{margin-right:12px}.q-stepper--vertical .q-stepper__dot:before,.q-stepper--vertical .q-stepper__dot:after{content:"";position:absolute;left:50%;width:1px;height:99999px;background:rgba(0,0,0,.12)}.q-stepper--vertical .q-stepper__dot:before{bottom:100%;margin-bottom:8px}.q-stepper--vertical .q-stepper__dot:after{top:100%;margin-top:8px}.q-stepper--vertical .q-stepper__step:first-child .q-stepper__dot:before,.q-stepper--vertical .q-stepper__step:last-child .q-stepper__dot:after{display:none}.q-stepper--vertical .q-stepper__step:last-child .q-stepper__step-inner{padding-bottom:8px}.q-stepper--dark.q-stepper--bordered,.q-stepper--dark .q-stepper__header--border{border-color:#ffffff47}.q-stepper--dark.q-stepper--horizontal .q-stepper__line:before,.q-stepper--dark.q-stepper--horizontal .q-stepper__line:after{background:rgba(255,255,255,.28)}.q-stepper--dark.q-stepper--vertical .q-stepper__dot:before,.q-stepper--dark.q-stepper--vertical .q-stepper__dot:after{background:rgba(255,255,255,.28)}.q-stepper--dark .q-stepper__tab--disabled{color:#ffffff47}.q-stepper--dark .q-stepper__tab--disabled .q-stepper__dot{background:rgba(255,255,255,.28)}.q-stepper--dark .q-stepper__tab--disabled .q-stepper__label{color:#ffffff8a}.q-tab-panels{background:#fff}.q-tab-panel{padding:16px}.q-markup-table{overflow:auto;background:#fff}.q-table{width:100%;max-width:100%;border-collapse:separate;border-spacing:0}.q-table thead tr,.q-table tbody td{height:48px}.q-table th{font-weight:500;font-size:12px;-webkit-user-select:none;user-select:none}.q-table th.sortable{cursor:pointer}.q-table th.sortable:hover .q-table__sort-icon{opacity:.64}.q-table th.sorted .q-table__sort-icon{opacity:.86!important}.q-table th.sort-desc .q-table__sort-icon{transform:rotate(180deg)}.q-table th,.q-table td{padding:7px 16px;background-color:inherit}.q-table thead,.q-table td,.q-table th{border-style:solid;border-width:0}.q-table tbody td{font-size:13px}.q-table__card{color:#000;background-color:#fff;border-radius:4px;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f}.q-table__card .q-table__middle{flex:1 1 auto}.q-table__card .q-table__top,.q-table__card .q-table__bottom{flex:0 0 auto}.q-table__container{position:relative}.q-table__container>div:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.q-table__container>div:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.q-table__container>.q-inner-loading{border-radius:inherit!important}.q-table__top{padding:12px 16px}.q-table__top .q-table__control{flex-wrap:wrap}.q-table__title{font-size:20px;letter-spacing:.005em;font-weight:400}.q-table__separator{min-width:8px!important}.q-table__progress{height:0!important}.q-table__progress th{padding:0!important;border:0!important}.q-table__progress .q-linear-progress{position:absolute;bottom:0}.q-table__middle{max-width:100%}.q-table__bottom{min-height:50px;padding:4px 14px 4px 16px;font-size:12px}.q-table__bottom .q-table__control{min-height:24px}.q-table__bottom-nodata-icon{font-size:200%;margin-right:8px}.q-table__bottom-item{margin-right:16px}.q-table__control{display:flex;align-items:center}.q-table__sort-icon{transition:transform .3s cubic-bezier(.25,.8,.5,1);opacity:0;font-size:120%}.q-table__sort-icon--left,.q-table__sort-icon--center{margin-left:4px}.q-table__sort-icon--right{margin-right:4px}.q-table--col-auto-width{width:1px}.q-table__card--dark,.q-table--dark{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-table--flat{box-shadow:none}.q-table--bordered{border:1px solid rgba(0,0,0,.12)}.q-table--square{border-radius:0}.q-table__linear-progress{height:2px}.q-table--no-wrap th,.q-table--no-wrap td{white-space:nowrap}.q-table--grid{box-shadow:none;border-radius:4px}.q-table--grid .q-table__top{padding-bottom:4px}.q-table--grid .q-table__middle{min-height:2px;margin-bottom:4px}.q-table--grid .q-table__middle thead,.q-table--grid .q-table__middle thead th{border:0!important}.q-table--grid .q-table__linear-progress{bottom:0}.q-table--grid .q-table__bottom{border-top:0}.q-table--grid .q-table__grid-content{flex:1 1 auto}.q-table--grid.fullscreen{background:inherit}.q-table__grid-item-card{vertical-align:top;padding:12px}.q-table__grid-item-card .q-separator{margin:12px 0}.q-table__grid-item-row+.q-table__grid-item-row{margin-top:8px}.q-table__grid-item-title{opacity:.54;font-weight:500;font-size:12px}.q-table__grid-item-value{font-size:13px}.q-table__grid-item{padding:4px;transition:transform .3s cubic-bezier(.25,.8,.5,1)}.q-table__grid-item--selected{transform:scale(.95)}.q-table--horizontal-separator thead th,.q-table--horizontal-separator tbody tr:not(:last-child)>td,.q-table--cell-separator thead th,.q-table--cell-separator tbody tr:not(:last-child)>td{border-bottom-width:1px}.q-table--vertical-separator td,.q-table--vertical-separator th,.q-table--cell-separator td,.q-table--cell-separator th{border-left-width:1px}.q-table--vertical-separator thead tr:last-child th,.q-table--vertical-separator.q-table--loading tr:nth-last-child(2) th,.q-table--cell-separator thead tr:last-child th,.q-table--cell-separator.q-table--loading tr:nth-last-child(2) th{border-bottom-width:1px}.q-table--vertical-separator td:first-child,.q-table--vertical-separator th:first-child,.q-table--cell-separator td:first-child,.q-table--cell-separator th:first-child{border-left:0}.q-table--vertical-separator .q-table__top,.q-table--cell-separator .q-table__top{border-bottom:1px solid rgba(0,0,0,.12)}.q-table--dense .q-table__top{padding:6px 16px}.q-table--dense .q-table__bottom{min-height:33px}.q-table--dense .q-table__sort-icon{font-size:110%}.q-table--dense .q-table th,.q-table--dense .q-table td{padding:4px 8px}.q-table--dense .q-table thead tr,.q-table--dense .q-table tbody tr,.q-table--dense .q-table tbody td{height:28px}.q-table--dense .q-table th:first-child,.q-table--dense .q-table td:first-child{padding-left:16px}.q-table--dense .q-table th:last-child,.q-table--dense .q-table td:last-child{padding-right:16px}.q-table--dense .q-table__bottom-item{margin-right:8px}.q-table--dense .q-table__select .q-field__control,.q-table--dense .q-table__select .q-field__native{min-height:24px;padding:0}.q-table--dense .q-table__select .q-field__marginal{height:24px}.q-table__bottom{border-top:1px solid rgba(0,0,0,.12)}.q-table thead,.q-table tr,.q-table th,.q-table td{border-color:#0000001f}.q-table tbody td{position:relative}.q-table tbody td:before,.q-table tbody td:after{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.q-table tbody td:before{background:rgba(0,0,0,.03)}.q-table tbody td:after{background:rgba(0,0,0,.06)}.q-table tbody tr.selected td:after{content:""}body.desktop .q-table>tbody>tr:not(.q-tr--no-hover):hover>td:not(.q-td--no-hover):before{content:""}.q-table__card--dark,.q-table--dark,.q-table--dark .q-table__bottom,.q-table--dark thead,.q-table--dark tr,.q-table--dark th,.q-table--dark td{border-color:#ffffff47}.q-table--dark tbody td:before{background:rgba(255,255,255,.07)}.q-table--dark tbody td:after{background:rgba(255,255,255,.1)}.q-table--dark.q-table--vertical-separator .q-table__top,.q-table--dark.q-table--cell-separator .q-table__top{border-color:#ffffff47}.q-tab{padding:0 16px;min-height:48px;transition:color .3s,background-color .3s;text-transform:uppercase;white-space:nowrap;color:inherit;text-decoration:none}.q-tab--full{min-height:72px}.q-tab--no-caps{text-transform:none}.q-tab__content{height:inherit;padding:4px 0;min-width:40px}.q-tab__content--inline .q-tab__icon+.q-tab__label{padding-left:8px}.q-tab__content .q-chip--floating{top:0;right:-16px}.q-tab__icon{width:24px;height:24px;font-size:24px}.q-tab__label{font-size:14px;line-height:1.715em;font-weight:500}.q-tab .q-badge{top:3px;right:-12px}.q-tab__alert,.q-tab__alert-icon{position:absolute}.q-tab__alert{top:7px;right:-9px;height:10px;width:10px;border-radius:50%;background:currentColor}.q-tab__alert-icon{top:2px;right:-12px;font-size:18px}.q-tab__indicator{opacity:0;height:2px;background:currentColor}.q-tab--active .q-tab__indicator{opacity:1;transform-origin:left}.q-tab--inactive{opacity:.85}.q-tabs{position:relative;transition:color .3s,background-color .3s}.q-tabs--scrollable.q-tabs__arrows--outside.q-tabs--horizontal{padding-left:36px;padding-right:36px}.q-tabs--scrollable.q-tabs__arrows--outside.q-tabs--vertical{padding-top:36px;padding-bottom:36px}.q-tabs--scrollable.q-tabs__arrows--outside .q-tabs__arrow--faded{opacity:.3;pointer-events:none}.q-tabs--scrollable.q-tabs__arrows--inside .q-tabs__arrow--faded{display:none}.q-tabs--not-scrollable.q-tabs__arrows--outside,body.mobile .q-tabs--scrollable.q-tabs--mobile-without-arrows.q-tabs__arrows--outside{padding-left:0;padding-right:0}.q-tabs--not-scrollable .q-tabs__arrow,body.mobile .q-tabs--scrollable.q-tabs--mobile-without-arrows .q-tabs__arrow{display:none}.q-tabs--not-scrollable .q-tabs__content,body.mobile .q-tabs--scrollable.q-tabs--mobile-without-arrows .q-tabs__content{border-radius:inherit}.q-tabs__arrow{cursor:pointer;font-size:32px;min-width:36px;text-shadow:0 0 3px #fff,0 0 1px #fff,0 0 1px #000;transition:opacity .3s}.q-tabs__content{overflow:hidden;flex:1 1 auto}.q-tabs__content--align-center{justify-content:center}.q-tabs__content--align-right{justify-content:flex-end}.q-tabs__content--align-justify .q-tab{flex:1 1 auto}.q-tabs__offset{display:none}.q-tabs--horizontal .q-tabs__arrow{height:100%}.q-tabs--horizontal .q-tabs__arrow--left{top:0;left:0;bottom:0}.q-tabs--horizontal .q-tabs__arrow--right{top:0;right:0;bottom:0}.q-tabs--vertical,.q-tabs--vertical .q-tabs__content{display:block!important;height:100%}.q-tabs--vertical .q-tabs__arrow{width:100%;height:36px;text-align:center}.q-tabs--vertical .q-tabs__arrow--left{top:0;left:0;right:0}.q-tabs--vertical .q-tabs__arrow--right{left:0;right:0;bottom:0}.q-tabs--vertical .q-tab{padding:0 8px}.q-tabs--vertical .q-tab__indicator{height:unset;width:2px}.q-tabs--vertical.q-tabs--not-scrollable .q-tabs__content{height:100%}.q-tabs--vertical.q-tabs--dense .q-tab__content{min-width:24px}.q-tabs--dense .q-tab{min-height:36px}.q-tabs--dense .q-tab--full{min-height:52px}.q-time{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;background:#fff;outline:0;width:290px;min-width:290px;max-width:100%}.q-time--bordered{border:1px solid rgba(0,0,0,.12)}.q-time__header{border-top-left-radius:inherit;color:#fff;background-color:var(--q-primary);padding:16px;font-weight:300}.q-time__actions{padding:0 16px 16px}.q-time__header-label{font-size:28px;line-height:1;letter-spacing:-.00833em}.q-time__header-label>div+div{margin-left:4px}.q-time__link{opacity:.56;outline:0;transition:opacity .3s ease-out}.q-time__link--active,.q-time__link:hover,.q-time__link:focus{opacity:1}.q-time__header-ampm{font-size:16px;letter-spacing:.1em}.q-time__content{padding:16px}.q-time__content:before{content:"";display:block;padding-bottom:100%}.q-time__container-parent{padding:16px}.q-time__container-child{border-radius:50%;background:rgba(0,0,0,.12)}.q-time__clock{padding:24px;width:100%;height:100%;max-width:100%;max-height:100%;font-size:14px}.q-time__clock-circle{position:relative}.q-time__clock-center{height:6px;width:6px;margin:auto;border-radius:50%;min-height:0;background:currentColor}.q-time__clock-pointer{width:2px;height:50%;transform-origin:0 0;min-height:0;position:absolute;left:50%;right:0;bottom:0;color:var(--q-primary);background:currentColor;transform:translate(-50%)}.q-time__clock-pointer:before,.q-time__clock-pointer:after{content:"";position:absolute;left:50%;border-radius:50%;background:currentColor;transform:translate(-50%)}.q-time__clock-pointer:before{bottom:-4px;width:8px;height:8px}.q-time__clock-pointer:after{top:-3px;height:6px;width:6px}.q-time__clock-position{position:absolute;min-height:32px;width:32px;height:32px;font-size:12px;line-height:32px;margin:0;padding:0;transform:translate(-50%,-50%);border-radius:50%}.q-time__clock-position--disable{opacity:.4}.q-time__clock-position--active{background-color:var(--q-primary);color:#fff}.q-time__clock-pos-0{top:0%;left:50%}.q-time__clock-pos-1{top:6.7%;left:75%}.q-time__clock-pos-2{top:25%;left:93.3%}.q-time__clock-pos-3{top:50%;left:100%}.q-time__clock-pos-4{top:75%;left:93.3%}.q-time__clock-pos-5{top:93.3%;left:75%}.q-time__clock-pos-6{top:100%;left:50%}.q-time__clock-pos-7{top:93.3%;left:25%}.q-time__clock-pos-8{top:75%;left:6.7%}.q-time__clock-pos-9{top:50%;left:0%}.q-time__clock-pos-10{top:25%;left:6.7%}.q-time__clock-pos-11{top:6.7%;left:25%}.q-time__clock-pos-12{top:15%;left:50%}.q-time__clock-pos-13{top:19.69%;left:67.5%}.q-time__clock-pos-14{top:32.5%;left:80.31%}.q-time__clock-pos-15{top:50%;left:85%}.q-time__clock-pos-16{top:67.5%;left:80.31%}.q-time__clock-pos-17{top:80.31%;left:67.5%}.q-time__clock-pos-18{top:85%;left:50%}.q-time__clock-pos-19{top:80.31%;left:32.5%}.q-time__clock-pos-20{top:67.5%;left:19.69%}.q-time__clock-pos-21{top:50%;left:15%}.q-time__clock-pos-22{top:32.5%;left:19.69%}.q-time__clock-pos-23{top:19.69%;left:32.5%}.q-time__now-button{background-color:var(--q-primary);color:#fff;top:12px;right:12px}.q-time.disabled .q-time__header-ampm,.q-time.disabled .q-time__content,.q-time--readonly .q-time__header-ampm,.q-time--readonly .q-time__content{pointer-events:none}.q-time--portrait{display:inline-flex;flex-direction:column}.q-time--portrait .q-time__header{border-top-right-radius:inherit;min-height:86px}.q-time--portrait .q-time__header-ampm{margin-left:12px}.q-time--portrait.q-time--bordered .q-time__content{margin:1px 0}.q-time--landscape{display:inline-flex;align-items:stretch;min-width:420px}.q-time--landscape>div{display:flex;flex-direction:column;justify-content:center}.q-time--landscape .q-time__header{border-bottom-left-radius:inherit;min-width:156px}.q-time--landscape .q-time__header-ampm{margin-top:12px}.q-time--dark{border-color:#ffffff47;box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-timeline{padding:0;width:100%;list-style:none}.q-timeline h6{line-height:inherit}.q-timeline--dark{color:#fff}.q-timeline--dark .q-timeline__subtitle{opacity:.7}.q-timeline__content{padding-bottom:24px}.q-timeline__title{margin-top:0;margin-bottom:16px}.q-timeline__subtitle{font-size:12px;margin-bottom:8px;opacity:.6;text-transform:uppercase;letter-spacing:1px;font-weight:700}.q-timeline__dot{position:absolute;top:0;bottom:0;width:15px}.q-timeline__dot:before,.q-timeline__dot:after{content:"";background:currentColor;display:block;position:absolute}.q-timeline__dot:before{border:3px solid transparent;border-radius:100%;height:15px;width:15px;top:4px;left:0;transition:background .3s ease-in-out,border .3s ease-in-out}.q-timeline__dot:after{width:3px;opacity:.4;top:24px;bottom:0;left:6px}.q-timeline__dot .q-icon{position:absolute;top:0;left:0;right:0;font-size:16px;height:38px;line-height:38px;width:100%;color:#fff}.q-timeline__dot .q-icon>svg,.q-timeline__dot .q-icon>img{width:1em;height:1em}.q-timeline__dot-img{position:absolute;top:4px;left:0;right:0;height:31px;width:31px;background:currentColor;border-radius:50%}.q-timeline__heading{position:relative}.q-timeline__heading:first-child .q-timeline__heading-title{padding-top:0}.q-timeline__heading:last-child .q-timeline__heading-title{padding-bottom:0}.q-timeline__heading-title{padding:32px 0;margin:0}.q-timeline__entry{position:relative;line-height:22px}.q-timeline__entry:last-child{padding-bottom:0!important}.q-timeline__entry:last-child .q-timeline__dot:after{content:none}.q-timeline__entry--icon .q-timeline__dot{width:31px}.q-timeline__entry--icon .q-timeline__dot:before{height:31px;width:31px}.q-timeline__entry--icon .q-timeline__dot:after{top:41px;left:14px}.q-timeline__entry--icon .q-timeline__subtitle{padding-top:8px}.q-timeline--dense--right .q-timeline__entry{padding-left:40px}.q-timeline--dense--right .q-timeline__entry--icon .q-timeline__dot{left:-8px}.q-timeline--dense--right .q-timeline__dot{left:0}.q-timeline--dense--left .q-timeline__heading{text-align:right}.q-timeline--dense--left .q-timeline__entry{padding-right:40px}.q-timeline--dense--left .q-timeline__entry--icon .q-timeline__dot{right:-8px}.q-timeline--dense--left .q-timeline__content,.q-timeline--dense--left .q-timeline__title,.q-timeline--dense--left .q-timeline__subtitle{text-align:right}.q-timeline--dense--left .q-timeline__dot{right:0}.q-timeline--comfortable{display:table}.q-timeline--comfortable .q-timeline__heading{display:table-row;font-size:200%}.q-timeline--comfortable .q-timeline__heading>div{display:table-cell}.q-timeline--comfortable .q-timeline__entry{display:table-row;padding:0}.q-timeline--comfortable .q-timeline__entry--icon .q-timeline__content{padding-top:8px}.q-timeline--comfortable .q-timeline__subtitle,.q-timeline--comfortable .q-timeline__dot,.q-timeline--comfortable .q-timeline__content{display:table-cell;vertical-align:top}.q-timeline--comfortable .q-timeline__subtitle{width:35%}.q-timeline--comfortable .q-timeline__dot{position:relative;min-width:31px}.q-timeline--comfortable--right .q-timeline__heading .q-timeline__heading-title{margin-left:-50px}.q-timeline--comfortable--right .q-timeline__subtitle{text-align:right;padding-right:30px}.q-timeline--comfortable--right .q-timeline__content{padding-left:30px}.q-timeline--comfortable--right .q-timeline__entry--icon .q-timeline__dot{left:-8px}.q-timeline--comfortable--left .q-timeline__heading{text-align:right}.q-timeline--comfortable--left .q-timeline__heading .q-timeline__heading-title{margin-right:-50px}.q-timeline--comfortable--left .q-timeline__subtitle{padding-left:30px}.q-timeline--comfortable--left .q-timeline__content{padding-right:30px}.q-timeline--comfortable--left .q-timeline__content,.q-timeline--comfortable--left .q-timeline__title{text-align:right}.q-timeline--comfortable--left .q-timeline__entry--icon .q-timeline__dot{right:0}.q-timeline--comfortable--left .q-timeline__dot{right:-8px}.q-timeline--loose .q-timeline__heading-title{text-align:center;margin-left:0}.q-timeline--loose .q-timeline__entry,.q-timeline--loose .q-timeline__subtitle,.q-timeline--loose .q-timeline__dot,.q-timeline--loose .q-timeline__content{display:block;margin:0;padding:0}.q-timeline--loose .q-timeline__dot{position:absolute;left:50%;margin-left:-7.15px}.q-timeline--loose .q-timeline__entry{padding-bottom:24px;overflow:hidden}.q-timeline--loose .q-timeline__entry--icon .q-timeline__dot{margin-left:-15px}.q-timeline--loose .q-timeline__entry--icon .q-timeline__subtitle{line-height:38px}.q-timeline--loose .q-timeline__entry--icon .q-timeline__content{padding-top:8px}.q-timeline--loose .q-timeline__entry--left .q-timeline__content,.q-timeline--loose .q-timeline__entry--right .q-timeline__subtitle{float:left;padding-right:30px;text-align:right}.q-timeline--loose .q-timeline__entry--left .q-timeline__subtitle,.q-timeline--loose .q-timeline__entry--right .q-timeline__content{float:right;text-align:left;padding-left:30px}.q-timeline--loose .q-timeline__subtitle,.q-timeline--loose .q-timeline__content{width:50%}.q-toggle{vertical-align:middle}.q-toggle__native{width:1px;height:1px}.q-toggle__track{height:.35em;border-radius:.175em;opacity:.38;background:currentColor}.q-toggle__thumb{top:.25em;left:.25em;width:.5em;height:.5em;transition:left .22s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none;z-index:0}.q-toggle__thumb:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:#fff;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.q-toggle__thumb .q-icon{font-size:.3em;min-width:1em;color:#000;opacity:.54;z-index:1}.q-toggle__inner{font-size:40px;width:1.4em;min-width:1.4em;height:1em;padding:.325em .3em;-webkit-print-color-adjust:exact}.q-toggle__inner--indet .q-toggle__thumb{left:.45em}.q-toggle__inner--truthy{color:var(--q-primary)}.q-toggle__inner--truthy .q-toggle__track{opacity:.54}.q-toggle__inner--truthy .q-toggle__thumb{left:.65em}.q-toggle__inner--truthy .q-toggle__thumb:after{background-color:currentColor}.q-toggle__inner--truthy .q-toggle__thumb .q-icon{color:#fff;opacity:1}.q-toggle.disabled{opacity:.75!important}.q-toggle--dark .q-toggle__inner{color:#fff}.q-toggle--dark .q-toggle__inner--truthy{color:var(--q-primary)}.q-toggle--dark .q-toggle__thumb:after{box-shadow:none}.q-toggle--dark .q-toggle__thumb:before{opacity:.32!important}.q-toggle--dense .q-toggle__inner{width:.8em;min-width:.8em;height:.5em;padding:.07625em 0}.q-toggle--dense .q-toggle__thumb{top:0;left:0}.q-toggle--dense .q-toggle__inner--indet .q-toggle__thumb{left:.15em}.q-toggle--dense .q-toggle__inner--truthy .q-toggle__thumb{left:.3em}.q-toggle--dense .q-toggle__label{padding-left:.5em}.q-toggle--dense.reverse .q-toggle__label{padding-left:0;padding-right:.5em}body.desktop .q-toggle:not(.disabled) .q-toggle__thumb:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:currentColor;opacity:.12;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0,0,.2,1)}body.desktop .q-toggle:not(.disabled):focus .q-toggle__thumb:before,body.desktop .q-toggle:not(.disabled):hover .q-toggle__thumb:before{transform:scale3d(2,2,1)}body.desktop .q-toggle--dense:not(.disabled):focus .q-toggle__thumb:before,body.desktop .q-toggle--dense:not(.disabled):hover .q-toggle__thumb:before{transform:scale3d(1.5,1.5,1)}.q-toolbar{position:relative;padding:0 12px;min-height:50px;width:100%}.q-toolbar--inset{padding-left:58px}.q-toolbar .q-avatar{font-size:38px}.q-toolbar__title{flex:1 1 0%;min-width:1px;max-width:100%;font-size:21px;font-weight:400;letter-spacing:.01em;padding:0 12px}.q-toolbar__title:first-child{padding-left:0}.q-toolbar__title:last-child{padding-right:0}.q-tooltip--style{font-size:10px;color:#fafafa;background:#757575;border-radius:4px;text-transform:none;font-weight:400}.q-tooltip{z-index:9000;position:fixed!important;overflow-y:auto;overflow-x:hidden;padding:6px 10px}@media (max-width: 599.98px){.q-tooltip{font-size:14px;padding:8px 16px}}.q-tree{position:relative;color:#9e9e9e}.q-tree__node{padding:0 0 3px 22px}.q-tree__node:after{content:"";position:absolute;top:-3px;bottom:0;width:2px;right:auto;left:-13px;border-left:1px solid currentColor}.q-tree__node:last-child:after{display:none}.q-tree__node--disabled{pointer-events:none}.q-tree__node--disabled .disabled{opacity:1!important}.q-tree__node--disabled>div,.q-tree__node--disabled>i,.q-tree__node--disabled>.disabled{opacity:.6!important}.q-tree__node--disabled>div .q-tree__node--disabled>div,.q-tree__node--disabled>div .q-tree__node--disabled>i,.q-tree__node--disabled>div .q-tree__node--disabled>.disabled,.q-tree__node--disabled>i .q-tree__node--disabled>div,.q-tree__node--disabled>i .q-tree__node--disabled>i,.q-tree__node--disabled>i .q-tree__node--disabled>.disabled,.q-tree__node--disabled>.disabled .q-tree__node--disabled>div,.q-tree__node--disabled>.disabled .q-tree__node--disabled>i,.q-tree__node--disabled>.disabled .q-tree__node--disabled>.disabled{opacity:1!important}.q-tree__node-header:before{content:"";position:absolute;top:-3px;bottom:50%;width:31px;left:-35px;border-left:1px solid currentColor;border-bottom:1px solid currentColor}.q-tree__children{padding-left:25px}.q-tree__node-body{padding:5px 0 8px 5px}.q-tree__node--parent{padding-left:2px}.q-tree__node--parent>.q-tree__node-header:before{width:15px;left:-15px}.q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body{padding:5px 0 8px 27px}.q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body:after{content:"";position:absolute;top:0;width:2px;height:100%;right:auto;left:12px;border-left:1px solid currentColor;bottom:50px}.q-tree__node--link{cursor:pointer}.q-tree__node-header{padding:4px;margin-top:3px;border-radius:4px;outline:0}.q-tree__node-header-content{color:#000;transition:color .3s}.q-tree__node--selected .q-tree__node-header-content{color:#9e9e9e}.q-tree__icon,.q-tree__node-header-content .q-icon{font-size:21px}.q-tree__img{height:42px;border-radius:2px}.q-tree__avatar,.q-tree__node-header-content .q-avatar{font-size:28px;border-radius:50%;width:28px;height:28px}.q-tree__arrow,.q-tree__spinner{font-size:16px;margin-right:4px}.q-tree__arrow{transition:transform .3s}.q-tree__arrow--rotate{transform:rotate3d(0,0,1,90deg)}.q-tree__tickbox{margin-right:4px}.q-tree>.q-tree__node{padding:0}.q-tree>.q-tree__node:after,.q-tree>.q-tree__node>.q-tree__node-header:before{display:none}.q-tree>.q-tree__node--child>.q-tree__node-header{padding-left:24px}.q-tree--dark .q-tree__node-header-content{color:#fff}.q-tree--no-connectors .q-tree__node:after,.q-tree--no-connectors .q-tree__node-header:before,.q-tree--no-connectors .q-tree__node-body:after{display:none!important}.q-tree--dense>.q-tree__node--child>.q-tree__node-header{padding-left:1px}.q-tree--dense .q-tree__arrow,.q-tree--dense .q-tree__spinner{margin-right:1px}.q-tree--dense .q-tree__img{height:32px}.q-tree--dense .q-tree__tickbox{margin-right:3px}.q-tree--dense .q-tree__node{padding:0}.q-tree--dense .q-tree__node:after{top:0;left:-8px}.q-tree--dense .q-tree__node-header{margin-top:0;padding:1px}.q-tree--dense .q-tree__node-header:before{top:0;left:-8px;width:8px}.q-tree--dense .q-tree__node--child{padding-left:17px}.q-tree--dense .q-tree__node--child>.q-tree__node-header:before{left:-25px;width:21px}.q-tree--dense .q-tree__node-body{padding:0 0 2px}.q-tree--dense .q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body{padding:0 0 2px 20px}.q-tree--dense .q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body:after{left:8px}.q-tree--dense .q-tree__children{padding-left:16px}[dir=rtl] .q-tree__arrow{transform:rotate3d(0,0,1,180deg)}[dir=rtl] .q-tree__arrow--rotate{transform:rotate3d(0,0,1,90deg)}.q-uploader{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;vertical-align:top;background:#fff;position:relative;width:320px;max-height:320px}.q-uploader--bordered{border:1px solid rgba(0,0,0,.12)}.q-uploader__input{opacity:0;width:100%;height:100%;cursor:pointer!important;z-index:1}.q-uploader__input::-webkit-file-upload-button{cursor:pointer}.q-uploader__file:before{content:"";border-top-left-radius:inherit;border-top-right-radius:inherit;position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:currentColor;opacity:.04}.q-uploader__header{position:relative;border-top-left-radius:inherit;border-top-right-radius:inherit;background-color:var(--q-primary);color:#fff;width:100%}.q-uploader__spinner{font-size:24px;margin-right:4px}.q-uploader__header-content{padding:8px}.q-uploader__dnd{outline:1px dashed currentColor;outline-offset:-4px;background:rgba(255,255,255,.6)}.q-uploader__overlay{font-size:36px;color:#000;background-color:#fff9}.q-uploader__list{position:relative;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;padding:8px;min-height:60px;flex:1 1 auto}.q-uploader__file{border-radius:4px 4px 0 0;border:1px solid rgba(0,0,0,.12)}.q-uploader__file .q-circular-progress{font-size:24px}.q-uploader__file--img{color:#fff;height:200px;min-width:200px;background-position:50% 50%;background-size:cover;background-repeat:no-repeat}.q-uploader__file--img:before{content:none}.q-uploader__file--img .q-circular-progress{color:#fff}.q-uploader__file--img .q-uploader__file-header{padding-bottom:24px;background:linear-gradient(to bottom,rgba(0,0,0,.7) 20%,rgba(255,255,255,0))}.q-uploader__file+.q-uploader__file{margin-top:8px}.q-uploader__file-header{position:relative;padding:4px 8px;border-top-left-radius:inherit;border-top-right-radius:inherit}.q-uploader__file-header-content{padding-right:8px}.q-uploader__file-status{font-size:24px;margin-right:4px}.q-uploader__title{font-size:14px;font-weight:700;line-height:18px;word-break:break-word}.q-uploader__subtitle{font-size:12px;line-height:18px}.q-uploader--disable .q-uploader__header,.q-uploader--disable .q-uploader__list{pointer-events:none}.q-uploader--dark{border-color:#ffffff47;box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-uploader--dark .q-uploader__file{border-color:#ffffff47}.q-uploader--dark .q-uploader__dnd,.q-uploader--dark .q-uploader__overlay{background:rgba(255,255,255,.3)}.q-uploader--dark .q-uploader__overlay{color:#fff}img.responsive{max-width:100%;height:auto}.q-video{position:relative;overflow:hidden;border-radius:inherit}.q-video iframe,.q-video object,.q-video embed{width:100%;height:100%}.q-video--responsive{height:0}.q-video--responsive iframe,.q-video--responsive object,.q-video--responsive embed{position:absolute;top:0;left:0}.q-virtual-scroll:focus{outline:0}.q-virtual-scroll__content{outline:none;contain:content}.q-virtual-scroll__content>*{overflow-anchor:none}.q-virtual-scroll__content>[data-q-vs-anchor]{overflow-anchor:auto}.q-virtual-scroll__padding{background:linear-gradient(rgba(255,255,255,0),rgba(255,255,255,0) 20%,rgba(128,128,128,.03) 20%,rgba(128,128,128,.08) 50%,rgba(128,128,128,.03) 80%,rgba(255,255,255,0) 80%,rgba(255,255,255,0));background-size:var(--q-virtual-scroll-item-width, 100%) var(--q-virtual-scroll-item-height, 50px)}.q-table .q-virtual-scroll__padding tr{height:0!important}.q-table .q-virtual-scroll__padding td{padding:0!important}.q-virtual-scroll--horizontal{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:stretch}.q-virtual-scroll--horizontal .q-virtual-scroll__content{display:flex;flex-direction:row;flex-wrap:nowrap}.q-virtual-scroll--horizontal .q-virtual-scroll__padding,.q-virtual-scroll--horizontal .q-virtual-scroll__content,.q-virtual-scroll--horizontal .q-virtual-scroll__content>*{flex:0 0 auto}.q-virtual-scroll--horizontal .q-virtual-scroll__padding{background:linear-gradient(to left,rgba(255,255,255,0),rgba(255,255,255,0) 20%,rgba(128,128,128,.03) 20%,rgba(128,128,128,.08) 50%,rgba(128,128,128,.03) 80%,rgba(255,255,255,0) 80%,rgba(255,255,255,0));background-size:var(--q-virtual-scroll-item-width, 50px) var(--q-virtual-scroll-item-height, 100%)}.q-ripple{position:absolute;top:0;left:0;width:100%;height:100%;color:inherit;border-radius:inherit;z-index:0;pointer-events:none;overflow:hidden;contain:strict}.q-ripple__inner{position:absolute;top:0;left:0;opacity:0;color:inherit;border-radius:50%;background:currentColor;pointer-events:none;will-change:transform,opacity}.q-ripple__inner--enter{transition:transform .225s cubic-bezier(.4,0,.2,1),opacity .1s cubic-bezier(.4,0,.2,1)}.q-ripple__inner--leave{transition:opacity .25s cubic-bezier(.4,0,.2,1)}.q-morph--invisible,.q-morph--internal{opacity:0!important;pointer-events:none!important;position:fixed!important;right:200vw!important;bottom:200vh!important}.q-loading{color:#000;position:fixed!important}.q-loading__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;opacity:.5;z-index:-1;background-color:#000;transition:background-color .28s}.q-loading__box{border-radius:4px;padding:18px;color:#fff;max-width:450px}.q-loading__message{margin:40px 20px 0;text-align:center}.q-notifications__list{z-index:9500;pointer-events:none;left:0;right:0;margin-bottom:10px;position:relative}.q-notifications__list--center{top:0;bottom:0}.q-notifications__list--top{top:0}.q-notifications__list--bottom{bottom:0}body.q-ios-padding .q-notifications__list--center,body.q-ios-padding .q-notifications__list--top{top:20px;top:env(safe-area-inset-top)}body.q-ios-padding .q-notifications__list--center,body.q-ios-padding .q-notifications__list--bottom{bottom:env(safe-area-inset-bottom)}.q-notification{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;pointer-events:all;display:inline-flex;margin:10px 10px 0;transition:transform 1s,opacity 1s;z-index:9500;flex-shrink:0;max-width:95vw;background:#323232;color:#fff;font-size:14px}.q-notification__icon{font-size:24px;flex:0 0 1em}.q-notification__icon--additional{margin-right:16px}.q-notification__avatar{font-size:32px}.q-notification__avatar--additional{margin-right:8px}.q-notification__spinner{font-size:32px}.q-notification__spinner--additional{margin-right:8px}.q-notification__message{padding:8px 0}.q-notification__caption{font-size:.9em;opacity:.7}.q-notification__actions{color:var(--q-primary)}.q-notification__badge{animation:q-notif-badge .42s;padding:4px 8px;position:absolute;box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f;background-color:var(--q-negative);color:#fff;border-radius:4px;font-size:12px;line-height:12px}.q-notification__badge--top-left,.q-notification__badge--top-right{top:-6px}.q-notification__badge--bottom-left,.q-notification__badge--bottom-right{bottom:-6px}.q-notification__badge--top-left,.q-notification__badge--bottom-left{left:-22px}.q-notification__badge--top-right,.q-notification__badge--bottom-right{right:-22px}.q-notification__progress{z-index:-1;position:absolute;height:3px;bottom:0;left:-10px;right:-10px;animation:q-notif-progress linear;background:currentColor;opacity:.3;border-radius:4px 4px 0 0;transform-origin:0 50%;transform:scaleX(0)}.q-notification--standard{padding:0 16px;min-height:48px}.q-notification--standard .q-notification__actions{padding:6px 0 6px 8px;margin-right:-8px}.q-notification--multi-line{min-height:68px;padding:8px 16px}.q-notification--multi-line .q-notification__badge--top-left,.q-notification--multi-line .q-notification__badge--top-right{top:-15px}.q-notification--multi-line .q-notification__badge--bottom-left,.q-notification--multi-line .q-notification__badge--bottom-right{bottom:-15px}.q-notification--multi-line .q-notification__progress{bottom:-8px}.q-notification--multi-line .q-notification__actions{padding:0}.q-notification--multi-line .q-notification__actions--with-media{padding-left:25px}.q-notification--top-left-enter-from,.q-notification--top-left-leave-to,.q-notification--top-enter-from,.q-notification--top-leave-to,.q-notification--top-right-enter-from,.q-notification--top-right-leave-to{opacity:0;transform:translateY(-50px);z-index:9499}.q-notification--left-enter-from,.q-notification--left-leave-to,.q-notification--center-enter-from,.q-notification--center-leave-to,.q-notification--right-enter-from,.q-notification--right-leave-to{opacity:0;transform:rotateX(90deg);z-index:9499}.q-notification--bottom-left-enter-from,.q-notification--bottom-left-leave-to,.q-notification--bottom-enter-from,.q-notification--bottom-leave-to,.q-notification--bottom-right-enter-from,.q-notification--bottom-right-leave-to{opacity:0;transform:translateY(50px);z-index:9499}.q-notification--top-left-leave-active,.q-notification--top-leave-active,.q-notification--top-right-leave-active,.q-notification--left-leave-active,.q-notification--center-leave-active,.q-notification--right-leave-active,.q-notification--bottom-left-leave-active,.q-notification--bottom-leave-active,.q-notification--bottom-right-leave-active{position:absolute;z-index:9499;margin-left:0;margin-right:0}.q-notification--top-leave-active,.q-notification--center-leave-active{top:0}.q-notification--bottom-left-leave-active,.q-notification--bottom-leave-active,.q-notification--bottom-right-leave-active{bottom:0}@media (min-width: 600px){.q-notification{max-width:65vw}}@keyframes q-notif-badge{15%{transform:translate3d(-25%,0,0) rotate3d(0,0,1,-5deg)}30%{transform:translate3d(20%,0,0) rotate3d(0,0,1,3deg)}45%{transform:translate3d(-15%,0,0) rotate3d(0,0,1,-3deg)}60%{transform:translate3d(10%,0,0) rotate3d(0,0,1,2deg)}75%{transform:translate3d(-5%,0,0) rotate3d(0,0,1,-1deg)}}@keyframes q-notif-progress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}:root{--animate-duration: .3s;--animate-delay: .3s;--animate-repeat: 1}.animated{animation-duration:var(--animate-duration);animation-fill-mode:both}.animated.infinite{animation-iteration-count:infinite}.animated.hinge{animation-duration:2s}.animated.repeat-1{animation-iteration-count:var(--animate-repeat)}.animated.repeat-2{animation-iteration-count:calc(var(--animate-repeat) * 2)}.animated.repeat-3{animation-iteration-count:calc(var(--animate-repeat) * 3)}.animated.delay-1s{animation-delay:var(--animate-delay)}.animated.delay-2s{animation-delay:calc(var(--animate-delay) * 2)}.animated.delay-3s{animation-delay:calc(var(--animate-delay) * 3)}.animated.delay-4s{animation-delay:calc(var(--animate-delay) * 4)}.animated.delay-5s{animation-delay:calc(var(--animate-delay) * 5)}.animated.faster{animation-duration:calc(var(--animate-duration) / 2)}.animated.fast{animation-duration:calc(var(--animate-duration) * .8)}.animated.slow{animation-duration:calc(var(--animate-duration) * 2)}.animated.slower{animation-duration:calc(var(--animate-duration) * 3)}@media print,(prefers-reduced-motion: reduce){.animated{animation-duration:1ms!important;transition-duration:1ms!important;animation-iteration-count:1!important}.animated[class*=Out]{opacity:0}}.q-animate--scale{animation:q-scale .15s;animation-timing-function:cubic-bezier(.25,.8,.25,1)}@keyframes q-scale{0%{transform:scale(1)}50%{transform:scale(1.04)}to{transform:scale(1)}}.q-animate--fade{animation:q-fade .2s}@keyframes q-fade{0%{opacity:0}to{opacity:1}}:root{--q-primary: #1976D2;--q-secondary: #26A69A;--q-accent: #9C27B0;--q-positive: #21BA45;--q-negative: #C10015;--q-info: #31CCEC;--q-warning: #F2C037;--q-dark: #1d1d1d;--q-dark-page: #121212}.text-dark{color:var(--q-dark)!important}.bg-dark{background:var(--q-dark)!important}.text-primary{color:var(--q-primary)!important}.bg-primary{background:var(--q-primary)!important}.text-secondary{color:var(--q-secondary)!important}.bg-secondary{background:var(--q-secondary)!important}.text-accent{color:var(--q-accent)!important}.bg-accent{background:var(--q-accent)!important}.text-positive{color:var(--q-positive)!important}.bg-positive{background:var(--q-positive)!important}.text-negative{color:var(--q-negative)!important}.bg-negative{background:var(--q-negative)!important}.text-info{color:var(--q-info)!important}.bg-info{background:var(--q-info)!important}.text-warning{color:var(--q-warning)!important}.bg-warning{background:var(--q-warning)!important}.text-white{color:#fff!important}.bg-white{background:#fff!important}.text-black{color:#000!important}.bg-black{background:#000!important}.text-transparent{color:transparent!important}.bg-transparent{background:transparent!important}.text-separator{color:#0000001f!important}.bg-separator{background:rgba(0,0,0,.12)!important}.text-dark-separator{color:#ffffff47!important}.bg-dark-separator{background:rgba(255,255,255,.28)!important}.text-red{color:#f44336!important}.text-red-1{color:#ffebee!important}.text-red-2{color:#ffcdd2!important}.text-red-3{color:#ef9a9a!important}.text-red-4{color:#e57373!important}.text-red-5{color:#ef5350!important}.text-red-6{color:#f44336!important}.text-red-7{color:#e53935!important}.text-red-8{color:#d32f2f!important}.text-red-9{color:#c62828!important}.text-red-10{color:#b71c1c!important}.text-red-11{color:#ff8a80!important}.text-red-12{color:#ff5252!important}.text-red-13{color:#ff1744!important}.text-red-14{color:#d50000!important}.text-pink{color:#e91e63!important}.text-pink-1{color:#fce4ec!important}.text-pink-2{color:#f8bbd0!important}.text-pink-3{color:#f48fb1!important}.text-pink-4{color:#f06292!important}.text-pink-5{color:#ec407a!important}.text-pink-6{color:#e91e63!important}.text-pink-7{color:#d81b60!important}.text-pink-8{color:#c2185b!important}.text-pink-9{color:#ad1457!important}.text-pink-10{color:#880e4f!important}.text-pink-11{color:#ff80ab!important}.text-pink-12{color:#ff4081!important}.text-pink-13{color:#f50057!important}.text-pink-14{color:#c51162!important}.text-purple{color:#9c27b0!important}.text-purple-1{color:#f3e5f5!important}.text-purple-2{color:#e1bee7!important}.text-purple-3{color:#ce93d8!important}.text-purple-4{color:#ba68c8!important}.text-purple-5{color:#ab47bc!important}.text-purple-6{color:#9c27b0!important}.text-purple-7{color:#8e24aa!important}.text-purple-8{color:#7b1fa2!important}.text-purple-9{color:#6a1b9a!important}.text-purple-10{color:#4a148c!important}.text-purple-11{color:#ea80fc!important}.text-purple-12{color:#e040fb!important}.text-purple-13{color:#d500f9!important}.text-purple-14{color:#a0f!important}.text-deep-purple{color:#673ab7!important}.text-deep-purple-1{color:#ede7f6!important}.text-deep-purple-2{color:#d1c4e9!important}.text-deep-purple-3{color:#b39ddb!important}.text-deep-purple-4{color:#9575cd!important}.text-deep-purple-5{color:#7e57c2!important}.text-deep-purple-6{color:#673ab7!important}.text-deep-purple-7{color:#5e35b1!important}.text-deep-purple-8{color:#512da8!important}.text-deep-purple-9{color:#4527a0!important}.text-deep-purple-10{color:#311b92!important}.text-deep-purple-11{color:#b388ff!important}.text-deep-purple-12{color:#7c4dff!important}.text-deep-purple-13{color:#651fff!important}.text-deep-purple-14{color:#6200ea!important}.text-indigo{color:#3f51b5!important}.text-indigo-1{color:#e8eaf6!important}.text-indigo-2{color:#c5cae9!important}.text-indigo-3{color:#9fa8da!important}.text-indigo-4{color:#7986cb!important}.text-indigo-5{color:#5c6bc0!important}.text-indigo-6{color:#3f51b5!important}.text-indigo-7{color:#3949ab!important}.text-indigo-8{color:#303f9f!important}.text-indigo-9{color:#283593!important}.text-indigo-10{color:#1a237e!important}.text-indigo-11{color:#8c9eff!important}.text-indigo-12{color:#536dfe!important}.text-indigo-13{color:#3d5afe!important}.text-indigo-14{color:#304ffe!important}.text-blue{color:#2196f3!important}.text-blue-1{color:#e3f2fd!important}.text-blue-2{color:#bbdefb!important}.text-blue-3{color:#90caf9!important}.text-blue-4{color:#64b5f6!important}.text-blue-5{color:#42a5f5!important}.text-blue-6{color:#2196f3!important}.text-blue-7{color:#1e88e5!important}.text-blue-8{color:#1976d2!important}.text-blue-9{color:#1565c0!important}.text-blue-10{color:#0d47a1!important}.text-blue-11{color:#82b1ff!important}.text-blue-12{color:#448aff!important}.text-blue-13{color:#2979ff!important}.text-blue-14{color:#2962ff!important}.text-light-blue{color:#03a9f4!important}.text-light-blue-1{color:#e1f5fe!important}.text-light-blue-2{color:#b3e5fc!important}.text-light-blue-3{color:#81d4fa!important}.text-light-blue-4{color:#4fc3f7!important}.text-light-blue-5{color:#29b6f6!important}.text-light-blue-6{color:#03a9f4!important}.text-light-blue-7{color:#039be5!important}.text-light-blue-8{color:#0288d1!important}.text-light-blue-9{color:#0277bd!important}.text-light-blue-10{color:#01579b!important}.text-light-blue-11{color:#80d8ff!important}.text-light-blue-12{color:#40c4ff!important}.text-light-blue-13{color:#00b0ff!important}.text-light-blue-14{color:#0091ea!important}.text-cyan{color:#00bcd4!important}.text-cyan-1{color:#e0f7fa!important}.text-cyan-2{color:#b2ebf2!important}.text-cyan-3{color:#80deea!important}.text-cyan-4{color:#4dd0e1!important}.text-cyan-5{color:#26c6da!important}.text-cyan-6{color:#00bcd4!important}.text-cyan-7{color:#00acc1!important}.text-cyan-8{color:#0097a7!important}.text-cyan-9{color:#00838f!important}.text-cyan-10{color:#006064!important}.text-cyan-11{color:#84ffff!important}.text-cyan-12{color:#18ffff!important}.text-cyan-13{color:#00e5ff!important}.text-cyan-14{color:#00b8d4!important}.text-teal{color:#009688!important}.text-teal-1{color:#e0f2f1!important}.text-teal-2{color:#b2dfdb!important}.text-teal-3{color:#80cbc4!important}.text-teal-4{color:#4db6ac!important}.text-teal-5{color:#26a69a!important}.text-teal-6{color:#009688!important}.text-teal-7{color:#00897b!important}.text-teal-8{color:#00796b!important}.text-teal-9{color:#00695c!important}.text-teal-10{color:#004d40!important}.text-teal-11{color:#a7ffeb!important}.text-teal-12{color:#64ffda!important}.text-teal-13{color:#1de9b6!important}.text-teal-14{color:#00bfa5!important}.text-green{color:#4caf50!important}.text-green-1{color:#e8f5e9!important}.text-green-2{color:#c8e6c9!important}.text-green-3{color:#a5d6a7!important}.text-green-4{color:#81c784!important}.text-green-5{color:#66bb6a!important}.text-green-6{color:#4caf50!important}.text-green-7{color:#43a047!important}.text-green-8{color:#388e3c!important}.text-green-9{color:#2e7d32!important}.text-green-10{color:#1b5e20!important}.text-green-11{color:#b9f6ca!important}.text-green-12{color:#69f0ae!important}.text-green-13{color:#00e676!important}.text-green-14{color:#00c853!important}.text-light-green{color:#8bc34a!important}.text-light-green-1{color:#f1f8e9!important}.text-light-green-2{color:#dcedc8!important}.text-light-green-3{color:#c5e1a5!important}.text-light-green-4{color:#aed581!important}.text-light-green-5{color:#9ccc65!important}.text-light-green-6{color:#8bc34a!important}.text-light-green-7{color:#7cb342!important}.text-light-green-8{color:#689f38!important}.text-light-green-9{color:#558b2f!important}.text-light-green-10{color:#33691e!important}.text-light-green-11{color:#ccff90!important}.text-light-green-12{color:#b2ff59!important}.text-light-green-13{color:#76ff03!important}.text-light-green-14{color:#64dd17!important}.text-lime{color:#cddc39!important}.text-lime-1{color:#f9fbe7!important}.text-lime-2{color:#f0f4c3!important}.text-lime-3{color:#e6ee9c!important}.text-lime-4{color:#dce775!important}.text-lime-5{color:#d4e157!important}.text-lime-6{color:#cddc39!important}.text-lime-7{color:#c0ca33!important}.text-lime-8{color:#afb42b!important}.text-lime-9{color:#9e9d24!important}.text-lime-10{color:#827717!important}.text-lime-11{color:#f4ff81!important}.text-lime-12{color:#eeff41!important}.text-lime-13{color:#c6ff00!important}.text-lime-14{color:#aeea00!important}.text-yellow{color:#ffeb3b!important}.text-yellow-1{color:#fffde7!important}.text-yellow-2{color:#fff9c4!important}.text-yellow-3{color:#fff59d!important}.text-yellow-4{color:#fff176!important}.text-yellow-5{color:#ffee58!important}.text-yellow-6{color:#ffeb3b!important}.text-yellow-7{color:#fdd835!important}.text-yellow-8{color:#fbc02d!important}.text-yellow-9{color:#f9a825!important}.text-yellow-10{color:#f57f17!important}.text-yellow-11{color:#ffff8d!important}.text-yellow-12{color:#ff0!important}.text-yellow-13{color:#ffea00!important}.text-yellow-14{color:#ffd600!important}.text-amber{color:#ffc107!important}.text-amber-1{color:#fff8e1!important}.text-amber-2{color:#ffecb3!important}.text-amber-3{color:#ffe082!important}.text-amber-4{color:#ffd54f!important}.text-amber-5{color:#ffca28!important}.text-amber-6{color:#ffc107!important}.text-amber-7{color:#ffb300!important}.text-amber-8{color:#ffa000!important}.text-amber-9{color:#ff8f00!important}.text-amber-10{color:#ff6f00!important}.text-amber-11{color:#ffe57f!important}.text-amber-12{color:#ffd740!important}.text-amber-13{color:#ffc400!important}.text-amber-14{color:#ffab00!important}.text-orange{color:#ff9800!important}.text-orange-1{color:#fff3e0!important}.text-orange-2{color:#ffe0b2!important}.text-orange-3{color:#ffcc80!important}.text-orange-4{color:#ffb74d!important}.text-orange-5{color:#ffa726!important}.text-orange-6{color:#ff9800!important}.text-orange-7{color:#fb8c00!important}.text-orange-8{color:#f57c00!important}.text-orange-9{color:#ef6c00!important}.text-orange-10{color:#e65100!important}.text-orange-11{color:#ffd180!important}.text-orange-12{color:#ffab40!important}.text-orange-13{color:#ff9100!important}.text-orange-14{color:#ff6d00!important}.text-deep-orange{color:#ff5722!important}.text-deep-orange-1{color:#fbe9e7!important}.text-deep-orange-2{color:#ffccbc!important}.text-deep-orange-3{color:#ffab91!important}.text-deep-orange-4{color:#ff8a65!important}.text-deep-orange-5{color:#ff7043!important}.text-deep-orange-6{color:#ff5722!important}.text-deep-orange-7{color:#f4511e!important}.text-deep-orange-8{color:#e64a19!important}.text-deep-orange-9{color:#d84315!important}.text-deep-orange-10{color:#bf360c!important}.text-deep-orange-11{color:#ff9e80!important}.text-deep-orange-12{color:#ff6e40!important}.text-deep-orange-13{color:#ff3d00!important}.text-deep-orange-14{color:#dd2c00!important}.text-brown{color:#795548!important}.text-brown-1{color:#efebe9!important}.text-brown-2{color:#d7ccc8!important}.text-brown-3{color:#bcaaa4!important}.text-brown-4{color:#a1887f!important}.text-brown-5{color:#8d6e63!important}.text-brown-6{color:#795548!important}.text-brown-7{color:#6d4c41!important}.text-brown-8{color:#5d4037!important}.text-brown-9{color:#4e342e!important}.text-brown-10{color:#3e2723!important}.text-brown-11{color:#d7ccc8!important}.text-brown-12{color:#bcaaa4!important}.text-brown-13{color:#8d6e63!important}.text-brown-14{color:#5d4037!important}.text-grey{color:#9e9e9e!important}.text-grey-1{color:#fafafa!important}.text-grey-2{color:#f5f5f5!important}.text-grey-3{color:#eee!important}.text-grey-4{color:#e0e0e0!important}.text-grey-5{color:#bdbdbd!important}.text-grey-6{color:#9e9e9e!important}.text-grey-7{color:#757575!important}.text-grey-8{color:#616161!important}.text-grey-9{color:#424242!important}.text-grey-10{color:#212121!important}.text-grey-11{color:#f5f5f5!important}.text-grey-12{color:#eee!important}.text-grey-13{color:#bdbdbd!important}.text-grey-14{color:#616161!important}.text-blue-grey{color:#607d8b!important}.text-blue-grey-1{color:#eceff1!important}.text-blue-grey-2{color:#cfd8dc!important}.text-blue-grey-3{color:#b0bec5!important}.text-blue-grey-4{color:#90a4ae!important}.text-blue-grey-5{color:#78909c!important}.text-blue-grey-6{color:#607d8b!important}.text-blue-grey-7{color:#546e7a!important}.text-blue-grey-8{color:#455a64!important}.text-blue-grey-9{color:#37474f!important}.text-blue-grey-10{color:#263238!important}.text-blue-grey-11{color:#cfd8dc!important}.text-blue-grey-12{color:#b0bec5!important}.text-blue-grey-13{color:#78909c!important}.text-blue-grey-14{color:#455a64!important}.bg-red{background:#f44336!important}.bg-red-1{background:#ffebee!important}.bg-red-2{background:#ffcdd2!important}.bg-red-3{background:#ef9a9a!important}.bg-red-4{background:#e57373!important}.bg-red-5{background:#ef5350!important}.bg-red-6{background:#f44336!important}.bg-red-7{background:#e53935!important}.bg-red-8{background:#d32f2f!important}.bg-red-9{background:#c62828!important}.bg-red-10{background:#b71c1c!important}.bg-red-11{background:#ff8a80!important}.bg-red-12{background:#ff5252!important}.bg-red-13{background:#ff1744!important}.bg-red-14{background:#d50000!important}.bg-pink{background:#e91e63!important}.bg-pink-1{background:#fce4ec!important}.bg-pink-2{background:#f8bbd0!important}.bg-pink-3{background:#f48fb1!important}.bg-pink-4{background:#f06292!important}.bg-pink-5{background:#ec407a!important}.bg-pink-6{background:#e91e63!important}.bg-pink-7{background:#d81b60!important}.bg-pink-8{background:#c2185b!important}.bg-pink-9{background:#ad1457!important}.bg-pink-10{background:#880e4f!important}.bg-pink-11{background:#ff80ab!important}.bg-pink-12{background:#ff4081!important}.bg-pink-13{background:#f50057!important}.bg-pink-14{background:#c51162!important}.bg-purple{background:#9c27b0!important}.bg-purple-1{background:#f3e5f5!important}.bg-purple-2{background:#e1bee7!important}.bg-purple-3{background:#ce93d8!important}.bg-purple-4{background:#ba68c8!important}.bg-purple-5{background:#ab47bc!important}.bg-purple-6{background:#9c27b0!important}.bg-purple-7{background:#8e24aa!important}.bg-purple-8{background:#7b1fa2!important}.bg-purple-9{background:#6a1b9a!important}.bg-purple-10{background:#4a148c!important}.bg-purple-11{background:#ea80fc!important}.bg-purple-12{background:#e040fb!important}.bg-purple-13{background:#d500f9!important}.bg-purple-14{background:#aa00ff!important}.bg-deep-purple{background:#673ab7!important}.bg-deep-purple-1{background:#ede7f6!important}.bg-deep-purple-2{background:#d1c4e9!important}.bg-deep-purple-3{background:#b39ddb!important}.bg-deep-purple-4{background:#9575cd!important}.bg-deep-purple-5{background:#7e57c2!important}.bg-deep-purple-6{background:#673ab7!important}.bg-deep-purple-7{background:#5e35b1!important}.bg-deep-purple-8{background:#512da8!important}.bg-deep-purple-9{background:#4527a0!important}.bg-deep-purple-10{background:#311b92!important}.bg-deep-purple-11{background:#b388ff!important}.bg-deep-purple-12{background:#7c4dff!important}.bg-deep-purple-13{background:#651fff!important}.bg-deep-purple-14{background:#6200ea!important}.bg-indigo{background:#3f51b5!important}.bg-indigo-1{background:#e8eaf6!important}.bg-indigo-2{background:#c5cae9!important}.bg-indigo-3{background:#9fa8da!important}.bg-indigo-4{background:#7986cb!important}.bg-indigo-5{background:#5c6bc0!important}.bg-indigo-6{background:#3f51b5!important}.bg-indigo-7{background:#3949ab!important}.bg-indigo-8{background:#303f9f!important}.bg-indigo-9{background:#283593!important}.bg-indigo-10{background:#1a237e!important}.bg-indigo-11{background:#8c9eff!important}.bg-indigo-12{background:#536dfe!important}.bg-indigo-13{background:#3d5afe!important}.bg-indigo-14{background:#304ffe!important}.bg-blue{background:#2196f3!important}.bg-blue-1{background:#e3f2fd!important}.bg-blue-2{background:#bbdefb!important}.bg-blue-3{background:#90caf9!important}.bg-blue-4{background:#64b5f6!important}.bg-blue-5{background:#42a5f5!important}.bg-blue-6{background:#2196f3!important}.bg-blue-7{background:#1e88e5!important}.bg-blue-8{background:#1976d2!important}.bg-blue-9{background:#1565c0!important}.bg-blue-10{background:#0d47a1!important}.bg-blue-11{background:#82b1ff!important}.bg-blue-12{background:#448aff!important}.bg-blue-13{background:#2979ff!important}.bg-blue-14{background:#2962ff!important}.bg-light-blue{background:#03a9f4!important}.bg-light-blue-1{background:#e1f5fe!important}.bg-light-blue-2{background:#b3e5fc!important}.bg-light-blue-3{background:#81d4fa!important}.bg-light-blue-4{background:#4fc3f7!important}.bg-light-blue-5{background:#29b6f6!important}.bg-light-blue-6{background:#03a9f4!important}.bg-light-blue-7{background:#039be5!important}.bg-light-blue-8{background:#0288d1!important}.bg-light-blue-9{background:#0277bd!important}.bg-light-blue-10{background:#01579b!important}.bg-light-blue-11{background:#80d8ff!important}.bg-light-blue-12{background:#40c4ff!important}.bg-light-blue-13{background:#00b0ff!important}.bg-light-blue-14{background:#0091ea!important}.bg-cyan{background:#00bcd4!important}.bg-cyan-1{background:#e0f7fa!important}.bg-cyan-2{background:#b2ebf2!important}.bg-cyan-3{background:#80deea!important}.bg-cyan-4{background:#4dd0e1!important}.bg-cyan-5{background:#26c6da!important}.bg-cyan-6{background:#00bcd4!important}.bg-cyan-7{background:#00acc1!important}.bg-cyan-8{background:#0097a7!important}.bg-cyan-9{background:#00838f!important}.bg-cyan-10{background:#006064!important}.bg-cyan-11{background:#84ffff!important}.bg-cyan-12{background:#18ffff!important}.bg-cyan-13{background:#00e5ff!important}.bg-cyan-14{background:#00b8d4!important}.bg-teal{background:#009688!important}.bg-teal-1{background:#e0f2f1!important}.bg-teal-2{background:#b2dfdb!important}.bg-teal-3{background:#80cbc4!important}.bg-teal-4{background:#4db6ac!important}.bg-teal-5{background:#26a69a!important}.bg-teal-6{background:#009688!important}.bg-teal-7{background:#00897b!important}.bg-teal-8{background:#00796b!important}.bg-teal-9{background:#00695c!important}.bg-teal-10{background:#004d40!important}.bg-teal-11{background:#a7ffeb!important}.bg-teal-12{background:#64ffda!important}.bg-teal-13{background:#1de9b6!important}.bg-teal-14{background:#00bfa5!important}.bg-green{background:#4caf50!important}.bg-green-1{background:#e8f5e9!important}.bg-green-2{background:#c8e6c9!important}.bg-green-3{background:#a5d6a7!important}.bg-green-4{background:#81c784!important}.bg-green-5{background:#66bb6a!important}.bg-green-6{background:#4caf50!important}.bg-green-7{background:#43a047!important}.bg-green-8{background:#388e3c!important}.bg-green-9{background:#2e7d32!important}.bg-green-10{background:#1b5e20!important}.bg-green-11{background:#b9f6ca!important}.bg-green-12{background:#69f0ae!important}.bg-green-13{background:#00e676!important}.bg-green-14{background:#00c853!important}.bg-light-green{background:#8bc34a!important}.bg-light-green-1{background:#f1f8e9!important}.bg-light-green-2{background:#dcedc8!important}.bg-light-green-3{background:#c5e1a5!important}.bg-light-green-4{background:#aed581!important}.bg-light-green-5{background:#9ccc65!important}.bg-light-green-6{background:#8bc34a!important}.bg-light-green-7{background:#7cb342!important}.bg-light-green-8{background:#689f38!important}.bg-light-green-9{background:#558b2f!important}.bg-light-green-10{background:#33691e!important}.bg-light-green-11{background:#ccff90!important}.bg-light-green-12{background:#b2ff59!important}.bg-light-green-13{background:#76ff03!important}.bg-light-green-14{background:#64dd17!important}.bg-lime{background:#cddc39!important}.bg-lime-1{background:#f9fbe7!important}.bg-lime-2{background:#f0f4c3!important}.bg-lime-3{background:#e6ee9c!important}.bg-lime-4{background:#dce775!important}.bg-lime-5{background:#d4e157!important}.bg-lime-6{background:#cddc39!important}.bg-lime-7{background:#c0ca33!important}.bg-lime-8{background:#afb42b!important}.bg-lime-9{background:#9e9d24!important}.bg-lime-10{background:#827717!important}.bg-lime-11{background:#f4ff81!important}.bg-lime-12{background:#eeff41!important}.bg-lime-13{background:#c6ff00!important}.bg-lime-14{background:#aeea00!important}.bg-yellow{background:#ffeb3b!important}.bg-yellow-1{background:#fffde7!important}.bg-yellow-2{background:#fff9c4!important}.bg-yellow-3{background:#fff59d!important}.bg-yellow-4{background:#fff176!important}.bg-yellow-5{background:#ffee58!important}.bg-yellow-6{background:#ffeb3b!important}.bg-yellow-7{background:#fdd835!important}.bg-yellow-8{background:#fbc02d!important}.bg-yellow-9{background:#f9a825!important}.bg-yellow-10{background:#f57f17!important}.bg-yellow-11{background:#ffff8d!important}.bg-yellow-12{background:#ffff00!important}.bg-yellow-13{background:#ffea00!important}.bg-yellow-14{background:#ffd600!important}.bg-amber{background:#ffc107!important}.bg-amber-1{background:#fff8e1!important}.bg-amber-2{background:#ffecb3!important}.bg-amber-3{background:#ffe082!important}.bg-amber-4{background:#ffd54f!important}.bg-amber-5{background:#ffca28!important}.bg-amber-6{background:#ffc107!important}.bg-amber-7{background:#ffb300!important}.bg-amber-8{background:#ffa000!important}.bg-amber-9{background:#ff8f00!important}.bg-amber-10{background:#ff6f00!important}.bg-amber-11{background:#ffe57f!important}.bg-amber-12{background:#ffd740!important}.bg-amber-13{background:#ffc400!important}.bg-amber-14{background:#ffab00!important}.bg-orange{background:#ff9800!important}.bg-orange-1{background:#fff3e0!important}.bg-orange-2{background:#ffe0b2!important}.bg-orange-3{background:#ffcc80!important}.bg-orange-4{background:#ffb74d!important}.bg-orange-5{background:#ffa726!important}.bg-orange-6{background:#ff9800!important}.bg-orange-7{background:#fb8c00!important}.bg-orange-8{background:#f57c00!important}.bg-orange-9{background:#ef6c00!important}.bg-orange-10{background:#e65100!important}.bg-orange-11{background:#ffd180!important}.bg-orange-12{background:#ffab40!important}.bg-orange-13{background:#ff9100!important}.bg-orange-14{background:#ff6d00!important}.bg-deep-orange{background:#ff5722!important}.bg-deep-orange-1{background:#fbe9e7!important}.bg-deep-orange-2{background:#ffccbc!important}.bg-deep-orange-3{background:#ffab91!important}.bg-deep-orange-4{background:#ff8a65!important}.bg-deep-orange-5{background:#ff7043!important}.bg-deep-orange-6{background:#ff5722!important}.bg-deep-orange-7{background:#f4511e!important}.bg-deep-orange-8{background:#e64a19!important}.bg-deep-orange-9{background:#d84315!important}.bg-deep-orange-10{background:#bf360c!important}.bg-deep-orange-11{background:#ff9e80!important}.bg-deep-orange-12{background:#ff6e40!important}.bg-deep-orange-13{background:#ff3d00!important}.bg-deep-orange-14{background:#dd2c00!important}.bg-brown{background:#795548!important}.bg-brown-1{background:#efebe9!important}.bg-brown-2{background:#d7ccc8!important}.bg-brown-3{background:#bcaaa4!important}.bg-brown-4{background:#a1887f!important}.bg-brown-5{background:#8d6e63!important}.bg-brown-6{background:#795548!important}.bg-brown-7{background:#6d4c41!important}.bg-brown-8{background:#5d4037!important}.bg-brown-9{background:#4e342e!important}.bg-brown-10{background:#3e2723!important}.bg-brown-11{background:#d7ccc8!important}.bg-brown-12{background:#bcaaa4!important}.bg-brown-13{background:#8d6e63!important}.bg-brown-14{background:#5d4037!important}.bg-grey{background:#9e9e9e!important}.bg-grey-1{background:#fafafa!important}.bg-grey-2{background:#f5f5f5!important}.bg-grey-3{background:#eeeeee!important}.bg-grey-4{background:#e0e0e0!important}.bg-grey-5{background:#bdbdbd!important}.bg-grey-6{background:#9e9e9e!important}.bg-grey-7{background:#757575!important}.bg-grey-8{background:#616161!important}.bg-grey-9{background:#424242!important}.bg-grey-10{background:#212121!important}.bg-grey-11{background:#f5f5f5!important}.bg-grey-12{background:#eeeeee!important}.bg-grey-13{background:#bdbdbd!important}.bg-grey-14{background:#616161!important}.bg-blue-grey{background:#607d8b!important}.bg-blue-grey-1{background:#eceff1!important}.bg-blue-grey-2{background:#cfd8dc!important}.bg-blue-grey-3{background:#b0bec5!important}.bg-blue-grey-4{background:#90a4ae!important}.bg-blue-grey-5{background:#78909c!important}.bg-blue-grey-6{background:#607d8b!important}.bg-blue-grey-7{background:#546e7a!important}.bg-blue-grey-8{background:#455a64!important}.bg-blue-grey-9{background:#37474f!important}.bg-blue-grey-10{background:#263238!important}.bg-blue-grey-11{background:#cfd8dc!important}.bg-blue-grey-12{background:#b0bec5!important}.bg-blue-grey-13{background:#78909c!important}.bg-blue-grey-14{background:#455a64!important}.shadow-transition{transition:box-shadow .28s cubic-bezier(.4,0,.2,1)!important}.shadow-1{box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f}.shadow-up-1{box-shadow:0 -1px 3px #0003,0 -1px 1px #00000024,0 -2px 1px -1px #0000001f}.shadow-2{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f}.shadow-up-2{box-shadow:0 -1px 5px #0003,0 -2px 2px #00000024,0 -3px 1px -2px #0000001f}.shadow-3{box-shadow:0 1px 8px #0003,0 3px 4px #00000024,0 3px 3px -2px #0000001f}.shadow-up-3{box-shadow:0 -1px 8px #0003,0 -3px 4px #00000024,0 -3px 3px -2px #0000001f}.shadow-4{box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f}.shadow-up-4{box-shadow:0 -2px 4px -1px #0003,0 -4px 5px #00000024,0 -1px 10px #0000001f}.shadow-5{box-shadow:0 3px 5px -1px #0003,0 5px 8px #00000024,0 1px 14px #0000001f}.shadow-up-5{box-shadow:0 -3px 5px -1px #0003,0 -5px 8px #00000024,0 -1px 14px #0000001f}.shadow-6{box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}.shadow-up-6{box-shadow:0 -3px 5px -1px #0003,0 -6px 10px #00000024,0 -1px 18px #0000001f}.shadow-7{box-shadow:0 4px 5px -2px #0003,0 7px 10px 1px #00000024,0 2px 16px 1px #0000001f}.shadow-up-7{box-shadow:0 -4px 5px -2px #0003,0 -7px 10px 1px #00000024,0 -2px 16px 1px #0000001f}.shadow-8{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.shadow-up-8{box-shadow:0 -5px 5px -3px #0003,0 -8px 10px 1px #00000024,0 -3px 14px 2px #0000001f}.shadow-9{box-shadow:0 5px 6px -3px #0003,0 9px 12px 1px #00000024,0 3px 16px 2px #0000001f}.shadow-up-9{box-shadow:0 -5px 6px -3px #0003,0 -9px 12px 1px #00000024,0 -3px 16px 2px #0000001f}.shadow-10{box-shadow:0 6px 6px -3px #0003,0 10px 14px 1px #00000024,0 4px 18px 3px #0000001f}.shadow-up-10{box-shadow:0 -6px 6px -3px #0003,0 -10px 14px 1px #00000024,0 -4px 18px 3px #0000001f}.shadow-11{box-shadow:0 6px 7px -4px #0003,0 11px 15px 1px #00000024,0 4px 20px 3px #0000001f}.shadow-up-11{box-shadow:0 -6px 7px -4px #0003,0 -11px 15px 1px #00000024,0 -4px 20px 3px #0000001f}.shadow-12{box-shadow:0 7px 8px -4px #0003,0 12px 17px 2px #00000024,0 5px 22px 4px #0000001f}.shadow-up-12{box-shadow:0 -7px 8px -4px #0003,0 -12px 17px 2px #00000024,0 -5px 22px 4px #0000001f}.shadow-13{box-shadow:0 7px 8px -4px #0003,0 13px 19px 2px #00000024,0 5px 24px 4px #0000001f}.shadow-up-13{box-shadow:0 -7px 8px -4px #0003,0 -13px 19px 2px #00000024,0 -5px 24px 4px #0000001f}.shadow-14{box-shadow:0 7px 9px -4px #0003,0 14px 21px 2px #00000024,0 5px 26px 4px #0000001f}.shadow-up-14{box-shadow:0 -7px 9px -4px #0003,0 -14px 21px 2px #00000024,0 -5px 26px 4px #0000001f}.shadow-15{box-shadow:0 8px 9px -5px #0003,0 15px 22px 2px #00000024,0 6px 28px 5px #0000001f}.shadow-up-15{box-shadow:0 -8px 9px -5px #0003,0 -15px 22px 2px #00000024,0 -6px 28px 5px #0000001f}.shadow-16{box-shadow:0 8px 10px -5px #0003,0 16px 24px 2px #00000024,0 6px 30px 5px #0000001f}.shadow-up-16{box-shadow:0 -8px 10px -5px #0003,0 -16px 24px 2px #00000024,0 -6px 30px 5px #0000001f}.shadow-17{box-shadow:0 8px 11px -5px #0003,0 17px 26px 2px #00000024,0 6px 32px 5px #0000001f}.shadow-up-17{box-shadow:0 -8px 11px -5px #0003,0 -17px 26px 2px #00000024,0 -6px 32px 5px #0000001f}.shadow-18{box-shadow:0 9px 11px -5px #0003,0 18px 28px 2px #00000024,0 7px 34px 6px #0000001f}.shadow-up-18{box-shadow:0 -9px 11px -5px #0003,0 -18px 28px 2px #00000024,0 -7px 34px 6px #0000001f}.shadow-19{box-shadow:0 9px 12px -6px #0003,0 19px 29px 2px #00000024,0 7px 36px 6px #0000001f}.shadow-up-19{box-shadow:0 -9px 12px -6px #0003,0 -19px 29px 2px #00000024,0 -7px 36px 6px #0000001f}.shadow-20{box-shadow:0 10px 13px -6px #0003,0 20px 31px 3px #00000024,0 8px 38px 7px #0000001f}.shadow-up-20{box-shadow:0 -10px 13px -6px #0003,0 -20px 31px 3px #00000024,0 -8px 38px 7px #0000001f}.shadow-21{box-shadow:0 10px 13px -6px #0003,0 21px 33px 3px #00000024,0 8px 40px 7px #0000001f}.shadow-up-21{box-shadow:0 -10px 13px -6px #0003,0 -21px 33px 3px #00000024,0 -8px 40px 7px #0000001f}.shadow-22{box-shadow:0 10px 14px -6px #0003,0 22px 35px 3px #00000024,0 8px 42px 7px #0000001f}.shadow-up-22{box-shadow:0 -10px 14px -6px #0003,0 -22px 35px 3px #00000024,0 -8px 42px 7px #0000001f}.shadow-23{box-shadow:0 11px 14px -7px #0003,0 23px 36px 3px #00000024,0 9px 44px 8px #0000001f}.shadow-up-23{box-shadow:0 -11px 14px -7px #0003,0 -23px 36px 3px #00000024,0 -9px 44px 8px #0000001f}.shadow-24{box-shadow:0 11px 15px -7px #0003,0 24px 38px 3px #00000024,0 9px 46px 8px #0000001f}.shadow-up-24{box-shadow:0 -11px 15px -7px #0003,0 -24px 38px 3px #00000024,0 -9px 46px 8px #0000001f}.inset-shadow{box-shadow:0 7px 9px -7px #000000b3 inset}.inset-shadow-down{box-shadow:0 -7px 9px -7px #000000b3 inset}body.body--dark .shadow-1{box-shadow:0 1px 3px #fff3,0 1px 1px #ffffff24,0 2px 1px -1px #ffffff1f}body.body--dark .shadow-up-1{box-shadow:0 -1px 3px #fff3,0 -1px 1px #ffffff24,0 -2px 1px -1px #ffffff1f}body.body--dark .shadow-2{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}body.body--dark .shadow-up-2{box-shadow:0 -1px 5px #fff3,0 -2px 2px #ffffff24,0 -3px 1px -2px #ffffff1f}body.body--dark .shadow-3{box-shadow:0 1px 8px #fff3,0 3px 4px #ffffff24,0 3px 3px -2px #ffffff1f}body.body--dark .shadow-up-3{box-shadow:0 -1px 8px #fff3,0 -3px 4px #ffffff24,0 -3px 3px -2px #ffffff1f}body.body--dark .shadow-4{box-shadow:0 2px 4px -1px #fff3,0 4px 5px #ffffff24,0 1px 10px #ffffff1f}body.body--dark .shadow-up-4{box-shadow:0 -2px 4px -1px #fff3,0 -4px 5px #ffffff24,0 -1px 10px #ffffff1f}body.body--dark .shadow-5{box-shadow:0 3px 5px -1px #fff3,0 5px 8px #ffffff24,0 1px 14px #ffffff1f}body.body--dark .shadow-up-5{box-shadow:0 -3px 5px -1px #fff3,0 -5px 8px #ffffff24,0 -1px 14px #ffffff1f}body.body--dark .shadow-6{box-shadow:0 3px 5px -1px #fff3,0 6px 10px #ffffff24,0 1px 18px #ffffff1f}body.body--dark .shadow-up-6{box-shadow:0 -3px 5px -1px #fff3,0 -6px 10px #ffffff24,0 -1px 18px #ffffff1f}body.body--dark .shadow-7{box-shadow:0 4px 5px -2px #fff3,0 7px 10px 1px #ffffff24,0 2px 16px 1px #ffffff1f}body.body--dark .shadow-up-7{box-shadow:0 -4px 5px -2px #fff3,0 -7px 10px 1px #ffffff24,0 -2px 16px 1px #ffffff1f}body.body--dark .shadow-8{box-shadow:0 5px 5px -3px #fff3,0 8px 10px 1px #ffffff24,0 3px 14px 2px #ffffff1f}body.body--dark .shadow-up-8{box-shadow:0 -5px 5px -3px #fff3,0 -8px 10px 1px #ffffff24,0 -3px 14px 2px #ffffff1f}body.body--dark .shadow-9{box-shadow:0 5px 6px -3px #fff3,0 9px 12px 1px #ffffff24,0 3px 16px 2px #ffffff1f}body.body--dark .shadow-up-9{box-shadow:0 -5px 6px -3px #fff3,0 -9px 12px 1px #ffffff24,0 -3px 16px 2px #ffffff1f}body.body--dark .shadow-10{box-shadow:0 6px 6px -3px #fff3,0 10px 14px 1px #ffffff24,0 4px 18px 3px #ffffff1f}body.body--dark .shadow-up-10{box-shadow:0 -6px 6px -3px #fff3,0 -10px 14px 1px #ffffff24,0 -4px 18px 3px #ffffff1f}body.body--dark .shadow-11{box-shadow:0 6px 7px -4px #fff3,0 11px 15px 1px #ffffff24,0 4px 20px 3px #ffffff1f}body.body--dark .shadow-up-11{box-shadow:0 -6px 7px -4px #fff3,0 -11px 15px 1px #ffffff24,0 -4px 20px 3px #ffffff1f}body.body--dark .shadow-12{box-shadow:0 7px 8px -4px #fff3,0 12px 17px 2px #ffffff24,0 5px 22px 4px #ffffff1f}body.body--dark .shadow-up-12{box-shadow:0 -7px 8px -4px #fff3,0 -12px 17px 2px #ffffff24,0 -5px 22px 4px #ffffff1f}body.body--dark .shadow-13{box-shadow:0 7px 8px -4px #fff3,0 13px 19px 2px #ffffff24,0 5px 24px 4px #ffffff1f}body.body--dark .shadow-up-13{box-shadow:0 -7px 8px -4px #fff3,0 -13px 19px 2px #ffffff24,0 -5px 24px 4px #ffffff1f}body.body--dark .shadow-14{box-shadow:0 7px 9px -4px #fff3,0 14px 21px 2px #ffffff24,0 5px 26px 4px #ffffff1f}body.body--dark .shadow-up-14{box-shadow:0 -7px 9px -4px #fff3,0 -14px 21px 2px #ffffff24,0 -5px 26px 4px #ffffff1f}body.body--dark .shadow-15{box-shadow:0 8px 9px -5px #fff3,0 15px 22px 2px #ffffff24,0 6px 28px 5px #ffffff1f}body.body--dark .shadow-up-15{box-shadow:0 -8px 9px -5px #fff3,0 -15px 22px 2px #ffffff24,0 -6px 28px 5px #ffffff1f}body.body--dark .shadow-16{box-shadow:0 8px 10px -5px #fff3,0 16px 24px 2px #ffffff24,0 6px 30px 5px #ffffff1f}body.body--dark .shadow-up-16{box-shadow:0 -8px 10px -5px #fff3,0 -16px 24px 2px #ffffff24,0 -6px 30px 5px #ffffff1f}body.body--dark .shadow-17{box-shadow:0 8px 11px -5px #fff3,0 17px 26px 2px #ffffff24,0 6px 32px 5px #ffffff1f}body.body--dark .shadow-up-17{box-shadow:0 -8px 11px -5px #fff3,0 -17px 26px 2px #ffffff24,0 -6px 32px 5px #ffffff1f}body.body--dark .shadow-18{box-shadow:0 9px 11px -5px #fff3,0 18px 28px 2px #ffffff24,0 7px 34px 6px #ffffff1f}body.body--dark .shadow-up-18{box-shadow:0 -9px 11px -5px #fff3,0 -18px 28px 2px #ffffff24,0 -7px 34px 6px #ffffff1f}body.body--dark .shadow-19{box-shadow:0 9px 12px -6px #fff3,0 19px 29px 2px #ffffff24,0 7px 36px 6px #ffffff1f}body.body--dark .shadow-up-19{box-shadow:0 -9px 12px -6px #fff3,0 -19px 29px 2px #ffffff24,0 -7px 36px 6px #ffffff1f}body.body--dark .shadow-20{box-shadow:0 10px 13px -6px #fff3,0 20px 31px 3px #ffffff24,0 8px 38px 7px #ffffff1f}body.body--dark .shadow-up-20{box-shadow:0 -10px 13px -6px #fff3,0 -20px 31px 3px #ffffff24,0 -8px 38px 7px #ffffff1f}body.body--dark .shadow-21{box-shadow:0 10px 13px -6px #fff3,0 21px 33px 3px #ffffff24,0 8px 40px 7px #ffffff1f}body.body--dark .shadow-up-21{box-shadow:0 -10px 13px -6px #fff3,0 -21px 33px 3px #ffffff24,0 -8px 40px 7px #ffffff1f}body.body--dark .shadow-22{box-shadow:0 10px 14px -6px #fff3,0 22px 35px 3px #ffffff24,0 8px 42px 7px #ffffff1f}body.body--dark .shadow-up-22{box-shadow:0 -10px 14px -6px #fff3,0 -22px 35px 3px #ffffff24,0 -8px 42px 7px #ffffff1f}body.body--dark .shadow-23{box-shadow:0 11px 14px -7px #fff3,0 23px 36px 3px #ffffff24,0 9px 44px 8px #ffffff1f}body.body--dark .shadow-up-23{box-shadow:0 -11px 14px -7px #fff3,0 -23px 36px 3px #ffffff24,0 -9px 44px 8px #ffffff1f}body.body--dark .shadow-24{box-shadow:0 11px 15px -7px #fff3,0 24px 38px 3px #ffffff24,0 9px 46px 8px #ffffff1f}body.body--dark .shadow-up-24{box-shadow:0 -11px 15px -7px #fff3,0 -24px 38px 3px #ffffff24,0 -9px 46px 8px #ffffff1f}body.body--dark .inset-shadow{box-shadow:0 7px 9px -7px #ffffffb3 inset}body.body--dark .inset-shadow-down{box-shadow:0 -7px 9px -7px #ffffffb3 inset}.no-shadow,.shadow-0{box-shadow:none!important}.z-marginals{z-index:2000}.z-notify{z-index:9500}.z-fullscreen{z-index:6000}.z-inherit{z-index:inherit!important}.row,.column,.flex{display:flex;flex-wrap:wrap}.row.inline,.column.inline,.flex.inline{display:inline-flex}.row.reverse{flex-direction:row-reverse}.column{flex-direction:column}.column.reverse{flex-direction:column-reverse}.wrap{flex-wrap:wrap}.no-wrap{flex-wrap:nowrap}.reverse-wrap{flex-wrap:wrap-reverse}.order-first{order:-10000}.order-last{order:10000}.order-none{order:0}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center,.flex-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center,.flex-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.content-start{align-content:flex-start}.content-end{align-content:flex-end}.content-center{align-content:center}.content-stretch{align-content:stretch}.content-between{align-content:space-between}.content-around{align-content:space-around}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.self-baseline{align-self:baseline}.self-stretch{align-self:stretch}.q-gutter-x-none,.q-gutter-none{margin-left:0}.q-gutter-x-none>*,.q-gutter-none>*{margin-left:0}.q-gutter-y-none,.q-gutter-none{margin-top:0}.q-gutter-y-none>*,.q-gutter-none>*{margin-top:0}.q-col-gutter-x-none,.q-col-gutter-none{margin-left:0}.q-col-gutter-x-none>*,.q-col-gutter-none>*{padding-left:0}.q-col-gutter-y-none,.q-col-gutter-none{margin-top:0}.q-col-gutter-y-none>*,.q-col-gutter-none>*{padding-top:0}.q-gutter-x-xs,.q-gutter-xs{margin-left:-4px}.q-gutter-x-xs>*,.q-gutter-xs>*{margin-left:4px}.q-gutter-y-xs,.q-gutter-xs{margin-top:-4px}.q-gutter-y-xs>*,.q-gutter-xs>*{margin-top:4px}.q-col-gutter-x-xs,.q-col-gutter-xs{margin-left:-4px}.q-col-gutter-x-xs>*,.q-col-gutter-xs>*{padding-left:4px}.q-col-gutter-y-xs,.q-col-gutter-xs{margin-top:-4px}.q-col-gutter-y-xs>*,.q-col-gutter-xs>*{padding-top:4px}.q-gutter-x-sm,.q-gutter-sm{margin-left:-8px}.q-gutter-x-sm>*,.q-gutter-sm>*{margin-left:8px}.q-gutter-y-sm,.q-gutter-sm{margin-top:-8px}.q-gutter-y-sm>*,.q-gutter-sm>*{margin-top:8px}.q-col-gutter-x-sm,.q-col-gutter-sm{margin-left:-8px}.q-col-gutter-x-sm>*,.q-col-gutter-sm>*{padding-left:8px}.q-col-gutter-y-sm,.q-col-gutter-sm{margin-top:-8px}.q-col-gutter-y-sm>*,.q-col-gutter-sm>*{padding-top:8px}.q-gutter-x-md,.q-gutter-md{margin-left:-16px}.q-gutter-x-md>*,.q-gutter-md>*{margin-left:16px}.q-gutter-y-md,.q-gutter-md{margin-top:-16px}.q-gutter-y-md>*,.q-gutter-md>*{margin-top:16px}.q-col-gutter-x-md,.q-col-gutter-md{margin-left:-16px}.q-col-gutter-x-md>*,.q-col-gutter-md>*{padding-left:16px}.q-col-gutter-y-md,.q-col-gutter-md{margin-top:-16px}.q-col-gutter-y-md>*,.q-col-gutter-md>*{padding-top:16px}.q-gutter-x-lg,.q-gutter-lg{margin-left:-24px}.q-gutter-x-lg>*,.q-gutter-lg>*{margin-left:24px}.q-gutter-y-lg,.q-gutter-lg{margin-top:-24px}.q-gutter-y-lg>*,.q-gutter-lg>*{margin-top:24px}.q-col-gutter-x-lg,.q-col-gutter-lg{margin-left:-24px}.q-col-gutter-x-lg>*,.q-col-gutter-lg>*{padding-left:24px}.q-col-gutter-y-lg,.q-col-gutter-lg{margin-top:-24px}.q-col-gutter-y-lg>*,.q-col-gutter-lg>*{padding-top:24px}.q-gutter-x-xl,.q-gutter-xl{margin-left:-48px}.q-gutter-x-xl>*,.q-gutter-xl>*{margin-left:48px}.q-gutter-y-xl,.q-gutter-xl{margin-top:-48px}.q-gutter-y-xl>*,.q-gutter-xl>*{margin-top:48px}.q-col-gutter-x-xl,.q-col-gutter-xl{margin-left:-48px}.q-col-gutter-x-xl>*,.q-col-gutter-xl>*{padding-left:48px}.q-col-gutter-y-xl,.q-col-gutter-xl{margin-top:-48px}.q-col-gutter-y-xl>*,.q-col-gutter-xl>*{padding-top:48px}@media (min-width: 0){.row>.col,.flex>.col,.row>.col-auto,.flex>.col-auto,.row>.col-grow,.flex>.col-grow,.row>.col-shrink,.flex>.col-shrink,.row>.col-xs,.flex>.col-xs,.row>.col-xs-auto,.row>.col-12,.row>.col-xs-12,.row>.col-11,.row>.col-xs-11,.row>.col-10,.row>.col-xs-10,.row>.col-9,.row>.col-xs-9,.row>.col-8,.row>.col-xs-8,.row>.col-7,.row>.col-xs-7,.row>.col-6,.row>.col-xs-6,.row>.col-5,.row>.col-xs-5,.row>.col-4,.row>.col-xs-4,.row>.col-3,.row>.col-xs-3,.row>.col-2,.row>.col-xs-2,.row>.col-1,.row>.col-xs-1,.row>.col-0,.row>.col-xs-0,.flex>.col-xs-auto,.flex>.col-12,.flex>.col-xs-12,.flex>.col-11,.flex>.col-xs-11,.flex>.col-10,.flex>.col-xs-10,.flex>.col-9,.flex>.col-xs-9,.flex>.col-8,.flex>.col-xs-8,.flex>.col-7,.flex>.col-xs-7,.flex>.col-6,.flex>.col-xs-6,.flex>.col-5,.flex>.col-xs-5,.flex>.col-4,.flex>.col-xs-4,.flex>.col-3,.flex>.col-xs-3,.flex>.col-2,.flex>.col-xs-2,.flex>.col-1,.flex>.col-xs-1,.flex>.col-0,.flex>.col-xs-0,.row>.col-xs-grow,.flex>.col-xs-grow,.row>.col-xs-shrink,.flex>.col-xs-shrink{width:auto;min-width:0;max-width:100%}.column>.col,.flex>.col,.column>.col-auto,.flex>.col-auto,.column>.col-grow,.flex>.col-grow,.column>.col-shrink,.flex>.col-shrink,.column>.col-xs,.flex>.col-xs,.column>.col-xs-auto,.column>.col-12,.column>.col-xs-12,.column>.col-11,.column>.col-xs-11,.column>.col-10,.column>.col-xs-10,.column>.col-9,.column>.col-xs-9,.column>.col-8,.column>.col-xs-8,.column>.col-7,.column>.col-xs-7,.column>.col-6,.column>.col-xs-6,.column>.col-5,.column>.col-xs-5,.column>.col-4,.column>.col-xs-4,.column>.col-3,.column>.col-xs-3,.column>.col-2,.column>.col-xs-2,.column>.col-1,.column>.col-xs-1,.column>.col-0,.column>.col-xs-0,.flex>.col-xs-auto,.flex>.col-12,.flex>.col-xs-12,.flex>.col-11,.flex>.col-xs-11,.flex>.col-10,.flex>.col-xs-10,.flex>.col-9,.flex>.col-xs-9,.flex>.col-8,.flex>.col-xs-8,.flex>.col-7,.flex>.col-xs-7,.flex>.col-6,.flex>.col-xs-6,.flex>.col-5,.flex>.col-xs-5,.flex>.col-4,.flex>.col-xs-4,.flex>.col-3,.flex>.col-xs-3,.flex>.col-2,.flex>.col-xs-2,.flex>.col-1,.flex>.col-xs-1,.flex>.col-0,.flex>.col-xs-0,.column>.col-xs-grow,.flex>.col-xs-grow,.column>.col-xs-shrink,.flex>.col-xs-shrink{height:auto;min-height:0;max-height:100%}.col,.col-xs{flex:10000 1 0%}.col-auto,.col-xs-auto,.col-12,.col-xs-12,.col-11,.col-xs-11,.col-10,.col-xs-10,.col-9,.col-xs-9,.col-8,.col-xs-8,.col-7,.col-xs-7,.col-6,.col-xs-6,.col-5,.col-xs-5,.col-4,.col-xs-4,.col-3,.col-xs-3,.col-2,.col-xs-2,.col-1,.col-xs-1,.col-0,.col-xs-0{flex:0 0 auto}.col-grow,.col-xs-grow{flex:1 0 auto}.col-shrink,.col-xs-shrink{flex:0 1 auto}.row>.col-0,.row>.col-xs-0{height:auto;width:0%}.row>.offset-0,.row>.offset-xs-0{margin-left:0%}.column>.col-0,.column>.col-xs-0{height:0%;width:auto}.row>.col-1,.row>.col-xs-1{height:auto;width:8.3333%}.row>.offset-1,.row>.offset-xs-1{margin-left:8.3333%}.column>.col-1,.column>.col-xs-1{height:8.3333%;width:auto}.row>.col-2,.row>.col-xs-2{height:auto;width:16.6667%}.row>.offset-2,.row>.offset-xs-2{margin-left:16.6667%}.column>.col-2,.column>.col-xs-2{height:16.6667%;width:auto}.row>.col-3,.row>.col-xs-3{height:auto;width:25%}.row>.offset-3,.row>.offset-xs-3{margin-left:25%}.column>.col-3,.column>.col-xs-3{height:25%;width:auto}.row>.col-4,.row>.col-xs-4{height:auto;width:33.3333%}.row>.offset-4,.row>.offset-xs-4{margin-left:33.3333%}.column>.col-4,.column>.col-xs-4{height:33.3333%;width:auto}.row>.col-5,.row>.col-xs-5{height:auto;width:41.6667%}.row>.offset-5,.row>.offset-xs-5{margin-left:41.6667%}.column>.col-5,.column>.col-xs-5{height:41.6667%;width:auto}.row>.col-6,.row>.col-xs-6{height:auto;width:50%}.row>.offset-6,.row>.offset-xs-6{margin-left:50%}.column>.col-6,.column>.col-xs-6{height:50%;width:auto}.row>.col-7,.row>.col-xs-7{height:auto;width:58.3333%}.row>.offset-7,.row>.offset-xs-7{margin-left:58.3333%}.column>.col-7,.column>.col-xs-7{height:58.3333%;width:auto}.row>.col-8,.row>.col-xs-8{height:auto;width:66.6667%}.row>.offset-8,.row>.offset-xs-8{margin-left:66.6667%}.column>.col-8,.column>.col-xs-8{height:66.6667%;width:auto}.row>.col-9,.row>.col-xs-9{height:auto;width:75%}.row>.offset-9,.row>.offset-xs-9{margin-left:75%}.column>.col-9,.column>.col-xs-9{height:75%;width:auto}.row>.col-10,.row>.col-xs-10{height:auto;width:83.3333%}.row>.offset-10,.row>.offset-xs-10{margin-left:83.3333%}.column>.col-10,.column>.col-xs-10{height:83.3333%;width:auto}.row>.col-11,.row>.col-xs-11{height:auto;width:91.6667%}.row>.offset-11,.row>.offset-xs-11{margin-left:91.6667%}.column>.col-11,.column>.col-xs-11{height:91.6667%;width:auto}.row>.col-12,.row>.col-xs-12{height:auto;width:100%}.row>.offset-12,.row>.offset-xs-12{margin-left:100%}.column>.col-12,.column>.col-xs-12{height:100%;width:auto}.row>.col-all{height:auto;flex:0 0 100%}}@media (min-width: 600px){.row>.col-sm,.flex>.col-sm,.row>.col-sm-auto,.row>.col-sm-12,.row>.col-sm-11,.row>.col-sm-10,.row>.col-sm-9,.row>.col-sm-8,.row>.col-sm-7,.row>.col-sm-6,.row>.col-sm-5,.row>.col-sm-4,.row>.col-sm-3,.row>.col-sm-2,.row>.col-sm-1,.row>.col-sm-0,.flex>.col-sm-auto,.flex>.col-sm-12,.flex>.col-sm-11,.flex>.col-sm-10,.flex>.col-sm-9,.flex>.col-sm-8,.flex>.col-sm-7,.flex>.col-sm-6,.flex>.col-sm-5,.flex>.col-sm-4,.flex>.col-sm-3,.flex>.col-sm-2,.flex>.col-sm-1,.flex>.col-sm-0,.row>.col-sm-grow,.flex>.col-sm-grow,.row>.col-sm-shrink,.flex>.col-sm-shrink{width:auto;min-width:0;max-width:100%}.column>.col-sm,.flex>.col-sm,.column>.col-sm-auto,.column>.col-sm-12,.column>.col-sm-11,.column>.col-sm-10,.column>.col-sm-9,.column>.col-sm-8,.column>.col-sm-7,.column>.col-sm-6,.column>.col-sm-5,.column>.col-sm-4,.column>.col-sm-3,.column>.col-sm-2,.column>.col-sm-1,.column>.col-sm-0,.flex>.col-sm-auto,.flex>.col-sm-12,.flex>.col-sm-11,.flex>.col-sm-10,.flex>.col-sm-9,.flex>.col-sm-8,.flex>.col-sm-7,.flex>.col-sm-6,.flex>.col-sm-5,.flex>.col-sm-4,.flex>.col-sm-3,.flex>.col-sm-2,.flex>.col-sm-1,.flex>.col-sm-0,.column>.col-sm-grow,.flex>.col-sm-grow,.column>.col-sm-shrink,.flex>.col-sm-shrink{height:auto;min-height:0;max-height:100%}.col-sm{flex:10000 1 0%}.col-sm-auto,.col-sm-12,.col-sm-11,.col-sm-10,.col-sm-9,.col-sm-8,.col-sm-7,.col-sm-6,.col-sm-5,.col-sm-4,.col-sm-3,.col-sm-2,.col-sm-1,.col-sm-0{flex:0 0 auto}.col-sm-grow{flex:1 0 auto}.col-sm-shrink{flex:0 1 auto}.row>.col-sm-0{height:auto;width:0%}.row>.offset-sm-0{margin-left:0%}.column>.col-sm-0{height:0%;width:auto}.row>.col-sm-1{height:auto;width:8.3333%}.row>.offset-sm-1{margin-left:8.3333%}.column>.col-sm-1{height:8.3333%;width:auto}.row>.col-sm-2{height:auto;width:16.6667%}.row>.offset-sm-2{margin-left:16.6667%}.column>.col-sm-2{height:16.6667%;width:auto}.row>.col-sm-3{height:auto;width:25%}.row>.offset-sm-3{margin-left:25%}.column>.col-sm-3{height:25%;width:auto}.row>.col-sm-4{height:auto;width:33.3333%}.row>.offset-sm-4{margin-left:33.3333%}.column>.col-sm-4{height:33.3333%;width:auto}.row>.col-sm-5{height:auto;width:41.6667%}.row>.offset-sm-5{margin-left:41.6667%}.column>.col-sm-5{height:41.6667%;width:auto}.row>.col-sm-6{height:auto;width:50%}.row>.offset-sm-6{margin-left:50%}.column>.col-sm-6{height:50%;width:auto}.row>.col-sm-7{height:auto;width:58.3333%}.row>.offset-sm-7{margin-left:58.3333%}.column>.col-sm-7{height:58.3333%;width:auto}.row>.col-sm-8{height:auto;width:66.6667%}.row>.offset-sm-8{margin-left:66.6667%}.column>.col-sm-8{height:66.6667%;width:auto}.row>.col-sm-9{height:auto;width:75%}.row>.offset-sm-9{margin-left:75%}.column>.col-sm-9{height:75%;width:auto}.row>.col-sm-10{height:auto;width:83.3333%}.row>.offset-sm-10{margin-left:83.3333%}.column>.col-sm-10{height:83.3333%;width:auto}.row>.col-sm-11{height:auto;width:91.6667%}.row>.offset-sm-11{margin-left:91.6667%}.column>.col-sm-11{height:91.6667%;width:auto}.row>.col-sm-12{height:auto;width:100%}.row>.offset-sm-12{margin-left:100%}.column>.col-sm-12{height:100%;width:auto}}@media (min-width: 1024px){.row>.col-md,.flex>.col-md,.row>.col-md-auto,.row>.col-md-12,.row>.col-md-11,.row>.col-md-10,.row>.col-md-9,.row>.col-md-8,.row>.col-md-7,.row>.col-md-6,.row>.col-md-5,.row>.col-md-4,.row>.col-md-3,.row>.col-md-2,.row>.col-md-1,.row>.col-md-0,.flex>.col-md-auto,.flex>.col-md-12,.flex>.col-md-11,.flex>.col-md-10,.flex>.col-md-9,.flex>.col-md-8,.flex>.col-md-7,.flex>.col-md-6,.flex>.col-md-5,.flex>.col-md-4,.flex>.col-md-3,.flex>.col-md-2,.flex>.col-md-1,.flex>.col-md-0,.row>.col-md-grow,.flex>.col-md-grow,.row>.col-md-shrink,.flex>.col-md-shrink{width:auto;min-width:0;max-width:100%}.column>.col-md,.flex>.col-md,.column>.col-md-auto,.column>.col-md-12,.column>.col-md-11,.column>.col-md-10,.column>.col-md-9,.column>.col-md-8,.column>.col-md-7,.column>.col-md-6,.column>.col-md-5,.column>.col-md-4,.column>.col-md-3,.column>.col-md-2,.column>.col-md-1,.column>.col-md-0,.flex>.col-md-auto,.flex>.col-md-12,.flex>.col-md-11,.flex>.col-md-10,.flex>.col-md-9,.flex>.col-md-8,.flex>.col-md-7,.flex>.col-md-6,.flex>.col-md-5,.flex>.col-md-4,.flex>.col-md-3,.flex>.col-md-2,.flex>.col-md-1,.flex>.col-md-0,.column>.col-md-grow,.flex>.col-md-grow,.column>.col-md-shrink,.flex>.col-md-shrink{height:auto;min-height:0;max-height:100%}.col-md{flex:10000 1 0%}.col-md-auto,.col-md-12,.col-md-11,.col-md-10,.col-md-9,.col-md-8,.col-md-7,.col-md-6,.col-md-5,.col-md-4,.col-md-3,.col-md-2,.col-md-1,.col-md-0{flex:0 0 auto}.col-md-grow{flex:1 0 auto}.col-md-shrink{flex:0 1 auto}.row>.col-md-0{height:auto;width:0%}.row>.offset-md-0{margin-left:0%}.column>.col-md-0{height:0%;width:auto}.row>.col-md-1{height:auto;width:8.3333%}.row>.offset-md-1{margin-left:8.3333%}.column>.col-md-1{height:8.3333%;width:auto}.row>.col-md-2{height:auto;width:16.6667%}.row>.offset-md-2{margin-left:16.6667%}.column>.col-md-2{height:16.6667%;width:auto}.row>.col-md-3{height:auto;width:25%}.row>.offset-md-3{margin-left:25%}.column>.col-md-3{height:25%;width:auto}.row>.col-md-4{height:auto;width:33.3333%}.row>.offset-md-4{margin-left:33.3333%}.column>.col-md-4{height:33.3333%;width:auto}.row>.col-md-5{height:auto;width:41.6667%}.row>.offset-md-5{margin-left:41.6667%}.column>.col-md-5{height:41.6667%;width:auto}.row>.col-md-6{height:auto;width:50%}.row>.offset-md-6{margin-left:50%}.column>.col-md-6{height:50%;width:auto}.row>.col-md-7{height:auto;width:58.3333%}.row>.offset-md-7{margin-left:58.3333%}.column>.col-md-7{height:58.3333%;width:auto}.row>.col-md-8{height:auto;width:66.6667%}.row>.offset-md-8{margin-left:66.6667%}.column>.col-md-8{height:66.6667%;width:auto}.row>.col-md-9{height:auto;width:75%}.row>.offset-md-9{margin-left:75%}.column>.col-md-9{height:75%;width:auto}.row>.col-md-10{height:auto;width:83.3333%}.row>.offset-md-10{margin-left:83.3333%}.column>.col-md-10{height:83.3333%;width:auto}.row>.col-md-11{height:auto;width:91.6667%}.row>.offset-md-11{margin-left:91.6667%}.column>.col-md-11{height:91.6667%;width:auto}.row>.col-md-12{height:auto;width:100%}.row>.offset-md-12{margin-left:100%}.column>.col-md-12{height:100%;width:auto}}@media (min-width: 1440px){.row>.col-lg,.flex>.col-lg,.row>.col-lg-auto,.row>.col-lg-12,.row>.col-lg-11,.row>.col-lg-10,.row>.col-lg-9,.row>.col-lg-8,.row>.col-lg-7,.row>.col-lg-6,.row>.col-lg-5,.row>.col-lg-4,.row>.col-lg-3,.row>.col-lg-2,.row>.col-lg-1,.row>.col-lg-0,.flex>.col-lg-auto,.flex>.col-lg-12,.flex>.col-lg-11,.flex>.col-lg-10,.flex>.col-lg-9,.flex>.col-lg-8,.flex>.col-lg-7,.flex>.col-lg-6,.flex>.col-lg-5,.flex>.col-lg-4,.flex>.col-lg-3,.flex>.col-lg-2,.flex>.col-lg-1,.flex>.col-lg-0,.row>.col-lg-grow,.flex>.col-lg-grow,.row>.col-lg-shrink,.flex>.col-lg-shrink{width:auto;min-width:0;max-width:100%}.column>.col-lg,.flex>.col-lg,.column>.col-lg-auto,.column>.col-lg-12,.column>.col-lg-11,.column>.col-lg-10,.column>.col-lg-9,.column>.col-lg-8,.column>.col-lg-7,.column>.col-lg-6,.column>.col-lg-5,.column>.col-lg-4,.column>.col-lg-3,.column>.col-lg-2,.column>.col-lg-1,.column>.col-lg-0,.flex>.col-lg-auto,.flex>.col-lg-12,.flex>.col-lg-11,.flex>.col-lg-10,.flex>.col-lg-9,.flex>.col-lg-8,.flex>.col-lg-7,.flex>.col-lg-6,.flex>.col-lg-5,.flex>.col-lg-4,.flex>.col-lg-3,.flex>.col-lg-2,.flex>.col-lg-1,.flex>.col-lg-0,.column>.col-lg-grow,.flex>.col-lg-grow,.column>.col-lg-shrink,.flex>.col-lg-shrink{height:auto;min-height:0;max-height:100%}.col-lg{flex:10000 1 0%}.col-lg-auto,.col-lg-12,.col-lg-11,.col-lg-10,.col-lg-9,.col-lg-8,.col-lg-7,.col-lg-6,.col-lg-5,.col-lg-4,.col-lg-3,.col-lg-2,.col-lg-1,.col-lg-0{flex:0 0 auto}.col-lg-grow{flex:1 0 auto}.col-lg-shrink{flex:0 1 auto}.row>.col-lg-0{height:auto;width:0%}.row>.offset-lg-0{margin-left:0%}.column>.col-lg-0{height:0%;width:auto}.row>.col-lg-1{height:auto;width:8.3333%}.row>.offset-lg-1{margin-left:8.3333%}.column>.col-lg-1{height:8.3333%;width:auto}.row>.col-lg-2{height:auto;width:16.6667%}.row>.offset-lg-2{margin-left:16.6667%}.column>.col-lg-2{height:16.6667%;width:auto}.row>.col-lg-3{height:auto;width:25%}.row>.offset-lg-3{margin-left:25%}.column>.col-lg-3{height:25%;width:auto}.row>.col-lg-4{height:auto;width:33.3333%}.row>.offset-lg-4{margin-left:33.3333%}.column>.col-lg-4{height:33.3333%;width:auto}.row>.col-lg-5{height:auto;width:41.6667%}.row>.offset-lg-5{margin-left:41.6667%}.column>.col-lg-5{height:41.6667%;width:auto}.row>.col-lg-6{height:auto;width:50%}.row>.offset-lg-6{margin-left:50%}.column>.col-lg-6{height:50%;width:auto}.row>.col-lg-7{height:auto;width:58.3333%}.row>.offset-lg-7{margin-left:58.3333%}.column>.col-lg-7{height:58.3333%;width:auto}.row>.col-lg-8{height:auto;width:66.6667%}.row>.offset-lg-8{margin-left:66.6667%}.column>.col-lg-8{height:66.6667%;width:auto}.row>.col-lg-9{height:auto;width:75%}.row>.offset-lg-9{margin-left:75%}.column>.col-lg-9{height:75%;width:auto}.row>.col-lg-10{height:auto;width:83.3333%}.row>.offset-lg-10{margin-left:83.3333%}.column>.col-lg-10{height:83.3333%;width:auto}.row>.col-lg-11{height:auto;width:91.6667%}.row>.offset-lg-11{margin-left:91.6667%}.column>.col-lg-11{height:91.6667%;width:auto}.row>.col-lg-12{height:auto;width:100%}.row>.offset-lg-12{margin-left:100%}.column>.col-lg-12{height:100%;width:auto}}@media (min-width: 1920px){.row>.col-xl,.flex>.col-xl,.row>.col-xl-auto,.row>.col-xl-12,.row>.col-xl-11,.row>.col-xl-10,.row>.col-xl-9,.row>.col-xl-8,.row>.col-xl-7,.row>.col-xl-6,.row>.col-xl-5,.row>.col-xl-4,.row>.col-xl-3,.row>.col-xl-2,.row>.col-xl-1,.row>.col-xl-0,.flex>.col-xl-auto,.flex>.col-xl-12,.flex>.col-xl-11,.flex>.col-xl-10,.flex>.col-xl-9,.flex>.col-xl-8,.flex>.col-xl-7,.flex>.col-xl-6,.flex>.col-xl-5,.flex>.col-xl-4,.flex>.col-xl-3,.flex>.col-xl-2,.flex>.col-xl-1,.flex>.col-xl-0,.row>.col-xl-grow,.flex>.col-xl-grow,.row>.col-xl-shrink,.flex>.col-xl-shrink{width:auto;min-width:0;max-width:100%}.column>.col-xl,.flex>.col-xl,.column>.col-xl-auto,.column>.col-xl-12,.column>.col-xl-11,.column>.col-xl-10,.column>.col-xl-9,.column>.col-xl-8,.column>.col-xl-7,.column>.col-xl-6,.column>.col-xl-5,.column>.col-xl-4,.column>.col-xl-3,.column>.col-xl-2,.column>.col-xl-1,.column>.col-xl-0,.flex>.col-xl-auto,.flex>.col-xl-12,.flex>.col-xl-11,.flex>.col-xl-10,.flex>.col-xl-9,.flex>.col-xl-8,.flex>.col-xl-7,.flex>.col-xl-6,.flex>.col-xl-5,.flex>.col-xl-4,.flex>.col-xl-3,.flex>.col-xl-2,.flex>.col-xl-1,.flex>.col-xl-0,.column>.col-xl-grow,.flex>.col-xl-grow,.column>.col-xl-shrink,.flex>.col-xl-shrink{height:auto;min-height:0;max-height:100%}.col-xl{flex:10000 1 0%}.col-xl-auto,.col-xl-12,.col-xl-11,.col-xl-10,.col-xl-9,.col-xl-8,.col-xl-7,.col-xl-6,.col-xl-5,.col-xl-4,.col-xl-3,.col-xl-2,.col-xl-1,.col-xl-0{flex:0 0 auto}.col-xl-grow{flex:1 0 auto}.col-xl-shrink{flex:0 1 auto}.row>.col-xl-0{height:auto;width:0%}.row>.offset-xl-0{margin-left:0%}.column>.col-xl-0{height:0%;width:auto}.row>.col-xl-1{height:auto;width:8.3333%}.row>.offset-xl-1{margin-left:8.3333%}.column>.col-xl-1{height:8.3333%;width:auto}.row>.col-xl-2{height:auto;width:16.6667%}.row>.offset-xl-2{margin-left:16.6667%}.column>.col-xl-2{height:16.6667%;width:auto}.row>.col-xl-3{height:auto;width:25%}.row>.offset-xl-3{margin-left:25%}.column>.col-xl-3{height:25%;width:auto}.row>.col-xl-4{height:auto;width:33.3333%}.row>.offset-xl-4{margin-left:33.3333%}.column>.col-xl-4{height:33.3333%;width:auto}.row>.col-xl-5{height:auto;width:41.6667%}.row>.offset-xl-5{margin-left:41.6667%}.column>.col-xl-5{height:41.6667%;width:auto}.row>.col-xl-6{height:auto;width:50%}.row>.offset-xl-6{margin-left:50%}.column>.col-xl-6{height:50%;width:auto}.row>.col-xl-7{height:auto;width:58.3333%}.row>.offset-xl-7{margin-left:58.3333%}.column>.col-xl-7{height:58.3333%;width:auto}.row>.col-xl-8{height:auto;width:66.6667%}.row>.offset-xl-8{margin-left:66.6667%}.column>.col-xl-8{height:66.6667%;width:auto}.row>.col-xl-9{height:auto;width:75%}.row>.offset-xl-9{margin-left:75%}.column>.col-xl-9{height:75%;width:auto}.row>.col-xl-10{height:auto;width:83.3333%}.row>.offset-xl-10{margin-left:83.3333%}.column>.col-xl-10{height:83.3333%;width:auto}.row>.col-xl-11{height:auto;width:91.6667%}.row>.offset-xl-11{margin-left:91.6667%}.column>.col-xl-11{height:91.6667%;width:auto}.row>.col-xl-12{height:auto;width:100%}.row>.offset-xl-12{margin-left:100%}.column>.col-xl-12{height:100%;width:auto}}.rounded-borders{border-radius:4px}.border-radius-inherit{border-radius:inherit}.no-transition{transition:none!important}.transition-0{transition:0s!important}.glossy{background-image:linear-gradient(to bottom,rgba(255,255,255,.3),rgba(255,255,255,0) 50%,rgba(0,0,0,.12) 51%,rgba(0,0,0,.04))!important}.q-placeholder::placeholder{color:inherit;opacity:.7}.q-body--fullscreen-mixin,.q-body--prevent-scroll{position:fixed!important}.q-body--force-scrollbar-x{overflow-x:scroll}.q-body--force-scrollbar-y{overflow-y:scroll}.q-no-input-spinner{-moz-appearance:textfield!important}.q-no-input-spinner::-webkit-outer-spin-button,.q-no-input-spinner::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.q-link{outline:0;text-decoration:none}.q-link--focusable:focus-visible{-webkit-text-decoration:underline dashed currentColor 1px;text-decoration:underline dashed currentColor 1px}body.electron .q-electron-drag{-webkit-user-select:none;-webkit-app-region:drag}body.electron .q-electron-drag .q-btn-item,body.electron .q-electron-drag--exception{-webkit-app-region:no-drag}img.responsive{max-width:100%;height:auto}.non-selectable{-webkit-user-select:none!important;user-select:none!important}.scroll,body.mobile .scroll--mobile{overflow:auto}.scroll,.scroll-x,.scroll-y{-webkit-overflow-scrolling:touch;will-change:scroll-position}.scroll-x{overflow-x:auto}.scroll-y{overflow-y:auto}.no-scroll{overflow:hidden!important}.no-pointer-events,.no-pointer-events--children,.no-pointer-events--children *{pointer-events:none!important}.all-pointer-events{pointer-events:all!important}.cursor-pointer{cursor:pointer!important}.cursor-not-allowed{cursor:not-allowed!important}.cursor-inherit{cursor:inherit!important}.cursor-none{cursor:none!important}[aria-busy=true]{cursor:progress}[aria-controls]{cursor:pointer}[aria-disabled]{cursor:default}.rotate-45{transform:rotate(45deg)}.rotate-90{transform:rotate(90deg)}.rotate-135{transform:rotate(135deg)}.rotate-180{transform:rotate(180deg)}.rotate-225{transform:rotate(225deg)}.rotate-270{transform:rotate(270deg)}.rotate-315{transform:rotate(315deg)}.flip-horizontal{transform:scaleX(-1)}.flip-vertical{transform:scaleY(-1)}.float-left{float:left}.float-right{float:right}.relative-position{position:relative}.fixed,.fixed-full,.fullscreen,.fixed-center,.fixed-bottom,.fixed-left,.fixed-right,.fixed-top,.fixed-top-left,.fixed-top-right,.fixed-bottom-left,.fixed-bottom-right{position:fixed}.absolute,.absolute-full,.absolute-center,.absolute-bottom,.absolute-left,.absolute-right,.absolute-top,.absolute-top-left,.absolute-top-right,.absolute-bottom-left,.absolute-bottom-right{position:absolute}.fixed-top,.absolute-top{top:0;left:0;right:0}.fixed-right,.absolute-right{top:0;right:0;bottom:0}.fixed-bottom,.absolute-bottom{right:0;bottom:0;left:0}.fixed-left,.absolute-left{top:0;bottom:0;left:0}.fixed-top-left,.absolute-top-left{top:0;left:0}.fixed-top-right,.absolute-top-right{top:0;right:0}.fixed-bottom-left,.absolute-bottom-left{bottom:0;left:0}.fixed-bottom-right,.absolute-bottom-right{bottom:0;right:0}.fullscreen{z-index:6000;border-radius:0!important;max-width:100vw;max-height:100vh}body.q-ios-padding .fullscreen{padding-top:20px!important;padding-top:env(safe-area-inset-top)!important;padding-bottom:env(safe-area-inset-bottom)!important}.absolute-full,.fullscreen,.fixed-full{top:0;right:0;bottom:0;left:0}.fixed-center,.absolute-center{top:50%;left:50%;transform:translate(-50%,-50%)}.vertical-top{vertical-align:top!important}.vertical-middle{vertical-align:middle!important}.vertical-bottom{vertical-align:bottom!important}.on-left{margin-right:12px}.on-right{margin-left:12px}.q-position-engine{margin-top:var(--q-pe-top, 0)!important;margin-left:var(--q-pe-left, 0)!important;will-change:auto;visibility:collapse}:root{--q-size-xs: 0;--q-size-sm: 600px;--q-size-md: 1024px;--q-size-lg: 1440px;--q-size-xl: 1920px}.fit{width:100%!important;height:100%!important}.full-height{height:100%!important}.full-width{width:100%!important;margin-left:0!important;margin-right:0!important}.window-height{margin-top:0!important;margin-bottom:0!important;height:100vh!important}.window-width{margin-left:0!important;margin-right:0!important;width:100vw!important}.block{display:block!important}.inline-block{display:inline-block!important}.q-pa-none{padding:0}.q-pl-none{padding-left:0}.q-pr-none{padding-right:0}.q-pt-none{padding-top:0}.q-pb-none{padding-bottom:0}.q-px-none{padding-left:0;padding-right:0}.q-py-none{padding-top:0;padding-bottom:0}.q-ma-none{margin:0}.q-ml-none{margin-left:0}.q-mr-none{margin-right:0}.q-mt-none{margin-top:0}.q-mb-none{margin-bottom:0}.q-mx-none{margin-left:0;margin-right:0}.q-my-none{margin-top:0;margin-bottom:0}.q-pa-xs{padding:4px}.q-pl-xs{padding-left:4px}.q-pr-xs{padding-right:4px}.q-pt-xs{padding-top:4px}.q-pb-xs{padding-bottom:4px}.q-px-xs{padding-left:4px;padding-right:4px}.q-py-xs{padding-top:4px;padding-bottom:4px}.q-ma-xs{margin:4px}.q-ml-xs{margin-left:4px}.q-mr-xs{margin-right:4px}.q-mt-xs{margin-top:4px}.q-mb-xs{margin-bottom:4px}.q-mx-xs{margin-left:4px;margin-right:4px}.q-my-xs{margin-top:4px;margin-bottom:4px}.q-pa-sm{padding:8px}.q-pl-sm{padding-left:8px}.q-pr-sm{padding-right:8px}.q-pt-sm{padding-top:8px}.q-pb-sm{padding-bottom:8px}.q-px-sm{padding-left:8px;padding-right:8px}.q-py-sm{padding-top:8px;padding-bottom:8px}.q-ma-sm{margin:8px}.q-ml-sm{margin-left:8px}.q-mr-sm{margin-right:8px}.q-mt-sm{margin-top:8px}.q-mb-sm{margin-bottom:8px}.q-mx-sm{margin-left:8px;margin-right:8px}.q-my-sm{margin-top:8px;margin-bottom:8px}.q-pa-md{padding:16px}.q-pl-md{padding-left:16px}.q-pr-md{padding-right:16px}.q-pt-md{padding-top:16px}.q-pb-md{padding-bottom:16px}.q-px-md{padding-left:16px;padding-right:16px}.q-py-md{padding-top:16px;padding-bottom:16px}.q-ma-md{margin:16px}.q-ml-md{margin-left:16px}.q-mr-md{margin-right:16px}.q-mt-md{margin-top:16px}.q-mb-md{margin-bottom:16px}.q-mx-md{margin-left:16px;margin-right:16px}.q-my-md{margin-top:16px;margin-bottom:16px}.q-pa-lg{padding:24px}.q-pl-lg{padding-left:24px}.q-pr-lg{padding-right:24px}.q-pt-lg{padding-top:24px}.q-pb-lg{padding-bottom:24px}.q-px-lg{padding-left:24px;padding-right:24px}.q-py-lg{padding-top:24px;padding-bottom:24px}.q-ma-lg{margin:24px}.q-ml-lg{margin-left:24px}.q-mr-lg{margin-right:24px}.q-mt-lg{margin-top:24px}.q-mb-lg{margin-bottom:24px}.q-mx-lg{margin-left:24px;margin-right:24px}.q-my-lg{margin-top:24px;margin-bottom:24px}.q-pa-xl{padding:48px}.q-pl-xl{padding-left:48px}.q-pr-xl{padding-right:48px}.q-pt-xl{padding-top:48px}.q-pb-xl{padding-bottom:48px}.q-px-xl{padding-left:48px;padding-right:48px}.q-py-xl{padding-top:48px;padding-bottom:48px}.q-ma-xl{margin:48px}.q-ml-xl{margin-left:48px}.q-mr-xl{margin-right:48px}.q-mt-xl{margin-top:48px}.q-mb-xl{margin-bottom:48px}.q-mx-xl{margin-left:48px;margin-right:48px}.q-my-xl{margin-top:48px;margin-bottom:48px}.q-mt-auto,.q-my-auto{margin-top:auto}.q-ml-auto{margin-left:auto}.q-mb-auto,.q-my-auto{margin-bottom:auto}.q-mr-auto{margin-right:auto}.q-mx-auto{margin-left:auto;margin-right:auto}.q-touch{-webkit-user-select:none;user-select:none;user-drag:none;-khtml-user-drag:none;-webkit-user-drag:none}.q-touch-x{touch-action:pan-x}.q-touch-y{touch-action:pan-y}:root{--q-transition-duration: .3s}.q-transition--slide-right-enter-active,.q-transition--slide-right-leave-active,.q-transition--slide-left-enter-active,.q-transition--slide-left-leave-active,.q-transition--slide-up-enter-active,.q-transition--slide-up-leave-active,.q-transition--slide-down-enter-active,.q-transition--slide-down-leave-active,.q-transition--jump-right-enter-active,.q-transition--jump-right-leave-active,.q-transition--jump-left-enter-active,.q-transition--jump-left-leave-active,.q-transition--jump-up-enter-active,.q-transition--jump-up-leave-active,.q-transition--jump-down-enter-active,.q-transition--jump-down-leave-active,.q-transition--fade-enter-active,.q-transition--fade-leave-active,.q-transition--scale-enter-active,.q-transition--scale-leave-active,.q-transition--rotate-enter-active,.q-transition--rotate-leave-active,.q-transition--flip-enter-active,.q-transition--flip-leave-active{--q-transition-duration: .3s;--q-transition-easing: cubic-bezier(.215,.61,.355,1)}.q-transition--slide-right-leave-active,.q-transition--slide-left-leave-active,.q-transition--slide-up-leave-active,.q-transition--slide-down-leave-active,.q-transition--jump-right-leave-active,.q-transition--jump-left-leave-active,.q-transition--jump-up-leave-active,.q-transition--jump-down-leave-active,.q-transition--fade-leave-active,.q-transition--scale-leave-active,.q-transition--rotate-leave-active,.q-transition--flip-leave-active{position:absolute}.q-transition--slide-right-enter-active,.q-transition--slide-right-leave-active,.q-transition--slide-left-enter-active,.q-transition--slide-left-leave-active,.q-transition--slide-up-enter-active,.q-transition--slide-up-leave-active,.q-transition--slide-down-enter-active,.q-transition--slide-down-leave-active{transition:transform var(--q-transition-duration) var(--q-transition-easing)}.q-transition--slide-right-enter-from{transform:translate3d(-100%,0,0)}.q-transition--slide-right-leave-to,.q-transition--slide-left-enter-from{transform:translate3d(100%,0,0)}.q-transition--slide-left-leave-to{transform:translate3d(-100%,0,0)}.q-transition--slide-up-enter-from{transform:translate3d(0,100%,0)}.q-transition--slide-up-leave-to,.q-transition--slide-down-enter-from{transform:translate3d(0,-100%,0)}.q-transition--slide-down-leave-to{transform:translate3d(0,100%,0)}.q-transition--jump-right-enter-active,.q-transition--jump-right-leave-active,.q-transition--jump-left-enter-active,.q-transition--jump-left-leave-active,.q-transition--jump-up-enter-active,.q-transition--jump-up-leave-active,.q-transition--jump-down-enter-active,.q-transition--jump-down-leave-active{transition:opacity var(--q-transition-duration),transform var(--q-transition-duration)}.q-transition--jump-right-enter-from,.q-transition--jump-right-leave-to,.q-transition--jump-left-enter-from,.q-transition--jump-left-leave-to,.q-transition--jump-up-enter-from,.q-transition--jump-up-leave-to,.q-transition--jump-down-enter-from,.q-transition--jump-down-leave-to{opacity:0}.q-transition--jump-right-enter-from{transform:translate3d(-15px,0,0)}.q-transition--jump-right-leave-to,.q-transition--jump-left-enter-from{transform:translate3d(15px,0,0)}.q-transition--jump-left-leave-to{transform:translate(-15px)}.q-transition--jump-up-enter-from{transform:translate3d(0,15px,0)}.q-transition--jump-up-leave-to,.q-transition--jump-down-enter-from{transform:translate3d(0,-15px,0)}.q-transition--jump-down-leave-to{transform:translate3d(0,15px,0)}.q-transition--fade-enter-active,.q-transition--fade-leave-active{transition:opacity var(--q-transition-duration) ease-out}.q-transition--fade-enter-from,.q-transition--fade-leave-to{opacity:0}.q-transition--scale-enter-active,.q-transition--scale-leave-active{transition:opacity var(--q-transition-duration),transform var(--q-transition-duration) var(--q-transition-easing)}.q-transition--scale-enter-from,.q-transition--scale-leave-to{opacity:0;transform:scale3d(0,0,1)}.q-transition--rotate-enter-active,.q-transition--rotate-leave-active{transition:opacity var(--q-transition-duration),transform var(--q-transition-duration) var(--q-transition-easing);transform-style:preserve-3d}.q-transition--rotate-enter-from,.q-transition--rotate-leave-to{opacity:0;transform:scale3d(0,0,1) rotate3d(0,0,1,90deg)}.q-transition--flip-right-enter-active,.q-transition--flip-right-leave-active,.q-transition--flip-left-enter-active,.q-transition--flip-left-leave-active,.q-transition--flip-up-enter-active,.q-transition--flip-up-leave-active,.q-transition--flip-down-enter-active,.q-transition--flip-down-leave-active{transition:transform var(--q-transition-duration);backface-visibility:hidden}.q-transition--flip-right-enter-to,.q-transition--flip-right-leave-from,.q-transition--flip-left-enter-to,.q-transition--flip-left-leave-from,.q-transition--flip-up-enter-to,.q-transition--flip-up-leave-from,.q-transition--flip-down-enter-to,.q-transition--flip-down-leave-from{transform:perspective(400px) rotate3d(1,1,0,0)}.q-transition--flip-right-enter-from{transform:perspective(400px) rotateY(-180deg)}.q-transition--flip-right-leave-to,.q-transition--flip-left-enter-from{transform:perspective(400px) rotateY(180deg)}.q-transition--flip-left-leave-to{transform:perspective(400px) rotateY(-180deg)}.q-transition--flip-up-enter-from{transform:perspective(400px) rotateX(-180deg)}.q-transition--flip-up-leave-to,.q-transition--flip-down-enter-from{transform:perspective(400px) rotateX(180deg)}.q-transition--flip-down-leave-to{transform:perspective(400px) rotateX(-180deg)}body{min-width:100px;min-height:100%;font-family:Roboto,-apple-system,Helvetica Neue,Helvetica,Arial,sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-smoothing:antialiased;line-height:1.5;font-size:14px}h1{font-size:6rem;font-weight:300;line-height:6rem;letter-spacing:-.01562em}h2{font-size:3.75rem;font-weight:300;line-height:3.75rem;letter-spacing:-.00833em}h3{font-size:3rem;font-weight:400;line-height:3.125rem;letter-spacing:normal}h4{font-size:2.125rem;font-weight:400;line-height:2.5rem;letter-spacing:.00735em}h5{font-size:1.5rem;font-weight:400;line-height:2rem;letter-spacing:normal}h6{font-size:1.25rem;font-weight:500;line-height:2rem;letter-spacing:.0125em}p{margin:0 0 16px}.text-h1{font-size:6rem;font-weight:300;line-height:6rem;letter-spacing:-.01562em}.text-h2{font-size:3.75rem;font-weight:300;line-height:3.75rem;letter-spacing:-.00833em}.text-h3{font-size:3rem;font-weight:400;line-height:3.125rem;letter-spacing:normal}.text-h4{font-size:2.125rem;font-weight:400;line-height:2.5rem;letter-spacing:.00735em}.text-h5{font-size:1.5rem;font-weight:400;line-height:2rem;letter-spacing:normal}.text-h6{font-size:1.25rem;font-weight:500;line-height:2rem;letter-spacing:.0125em}.text-subtitle1{font-size:1rem;font-weight:400;line-height:1.75rem;letter-spacing:.00937em}.text-subtitle2{font-size:.875rem;font-weight:500;line-height:1.375rem;letter-spacing:.00714em}.text-body1{font-size:1rem;font-weight:400;line-height:1.5rem;letter-spacing:.03125em}.text-body2{font-size:.875rem;font-weight:400;line-height:1.25rem;letter-spacing:.01786em}.text-overline{font-size:.75rem;font-weight:500;line-height:2rem;letter-spacing:.16667em}.text-caption{font-size:.75rem;font-weight:400;line-height:1.25rem;letter-spacing:.03333em}.text-uppercase{text-transform:uppercase}.text-lowercase{text-transform:lowercase}.text-capitalize{text-transform:capitalize}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-justify{text-align:justify;-webkit-hyphens:auto;hyphens:auto}.text-italic{font-style:italic}.text-bold{font-weight:700}.text-no-wrap{white-space:nowrap}.text-strike{text-decoration:line-through}.text-weight-thin{font-weight:100}.text-weight-light{font-weight:300}.text-weight-regular{font-weight:400}.text-weight-medium{font-weight:500}.text-weight-bold{font-weight:700}.text-weight-bolder{font-weight:900}small{font-size:80%}big{font-size:170%}sub{bottom:-.25em}sup{top:-.5em}.no-margin{margin:0!important}.no-padding{padding:0!important}.no-border{border:0!important}.no-border-radius{border-radius:0!important}.no-box-shadow{box-shadow:none!important}.no-outline{outline:0!important}.ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ellipsis-2-lines,.ellipsis-3-lines{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.ellipsis-2-lines{-webkit-line-clamp:2}.ellipsis-3-lines{-webkit-line-clamp:3}.readonly{cursor:default!important}.disabled,.disabled *,[disabled],[disabled] *{outline:0!important;cursor:not-allowed!important}.disabled,[disabled]{opacity:.6!important}.hidden{display:none!important}.invisible,.invisible *{visibility:hidden!important;transition:none!important;animation:none!important}.transparent{background:transparent!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.overflow-hidden-y{overflow-y:hidden!important}.hide-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.hide-scrollbar::-webkit-scrollbar{width:0;height:0;display:none}.dimmed:after,.light-dimmed:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0}.dimmed:after{background:rgba(0,0,0,.4)!important}.light-dimmed:after{background:rgba(255,255,255,.6)!important}.z-top{z-index:7000!important}.z-max{z-index:9998!important}body:not(.desktop) .desktop-only,body.desktop .desktop-hide{display:none!important}body:not(.mobile) .mobile-only,body.mobile .mobile-hide{display:none!important}body:not(.native-mobile) .native-mobile-only,body.native-mobile .native-mobile-hide{display:none!important}body:not(.cordova) .cordova-only,body.cordova .cordova-hide{display:none!important}body:not(.capacitor) .capacitor-only,body.capacitor .capacitor-hide{display:none!important}body:not(.electron) .electron-only,body.electron .electron-hide{display:none!important}body:not(.touch) .touch-only,body.touch .touch-hide{display:none!important}body:not(.within-iframe) .within-iframe-only,body.within-iframe .within-iframe-hide{display:none!important}body:not(.platform-ios) .platform-ios-only,body.platform-ios .platform-ios-hide{display:none!important}body:not(.platform-android) .platform-android-only,body.platform-android .platform-android-hide{display:none!important}@media all and (orientation: portrait){.orientation-landscape{display:none!important}}@media all and (orientation: landscape){.orientation-portrait{display:none!important}}@media screen{.print-only{display:none!important}}@media print{.print-hide{display:none!important}}@media (max-width: 599.98px){.xs-hide,.gt-xs,.sm,.gt-sm,.md,.gt-md,.lg,.gt-lg,.xl{display:none!important}}@media (min-width: 600px) and (max-width: 1023.98px){.sm-hide,.xs,.lt-sm,.gt-sm,.md,.gt-md,.lg,.gt-lg,.xl{display:none!important}}@media (min-width: 1024px) and (max-width: 1439.98px){.md-hide,.xs,.lt-sm,.sm,.lt-md,.gt-md,.lg,.gt-lg,.xl{display:none!important}}@media (min-width: 1440px) and (max-width: 1919.98px){.lg-hide,.xs,.lt-sm,.sm,.lt-md,.md,.lt-lg,.gt-lg,.xl{display:none!important}}@media (min-width: 1920px){.xl-hide,.xs,.lt-sm,.sm,.lt-md,.md,.lt-lg,.lg,.lt-xl{display:none!important}}.q-focus-helper,.q-focusable,.q-manual-focusable,.q-hoverable{outline:0}body.desktop .q-focus-helper{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;border-radius:inherit;opacity:0;transition:background-color .3s cubic-bezier(.25,.8,.5,1),opacity .4s cubic-bezier(.25,.8,.5,1)}body.desktop .q-focus-helper:before,body.desktop .q-focus-helper:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;border-radius:inherit;transition:background-color .3s cubic-bezier(.25,.8,.5,1),opacity .6s cubic-bezier(.25,.8,.5,1)}body.desktop .q-focus-helper:before{background:#000}body.desktop .q-focus-helper:after{background:#fff}body.desktop .q-focus-helper--rounded{border-radius:4px}body.desktop .q-focus-helper--round{border-radius:50%}body.desktop .q-focusable:focus>.q-focus-helper,body.desktop .q-manual-focusable--focused>.q-focus-helper,body.desktop .q-hoverable:hover>.q-focus-helper{background:currentColor;opacity:.15}body.desktop .q-focusable:focus>.q-focus-helper:before,body.desktop .q-manual-focusable--focused>.q-focus-helper:before,body.desktop .q-hoverable:hover>.q-focus-helper:before{opacity:.1}body.desktop .q-focusable:focus>.q-focus-helper:after,body.desktop .q-manual-focusable--focused>.q-focus-helper:after,body.desktop .q-hoverable:hover>.q-focus-helper:after{opacity:.4}body.desktop .q-focusable:focus>.q-focus-helper,body.desktop .q-manual-focusable--focused>.q-focus-helper{opacity:.22}body.body--dark{color:#fff;background:var(--q-dark-page)}.q-dark{color:#fff;background:var(--q-dark)}[data-theme=classic] .q-drawer--dark,body[data-theme=classic].body--dark,[data-theme=classic] .q-menu--dark{background:#1f2234!important}[data-theme=classic] .q-card--dark,[data-theme=classic] .q-stepper--dark{background:#333646!important}[data-theme=classic] .bg-primary{background:#673ab7!important}[data-theme=classic] .text-primary{color:#673ab7!important}[data-theme=classic] .bg-secondary{background:#9c27b0!important}[data-theme=classic] .text-secondary{color:#9c27b0!important}[data-theme=classic] .bg-dark{background:#1f2234!important}[data-theme=classic] .text-dark{color:#1f2234!important}[data-theme=classic] .bg-info{background:#333646!important}[data-theme=classic] .text-info{color:#333646!important}[data-theme=classic] .bg-marginal-bg{background:#1f2234!important}[data-theme=classic] .text-marginal-bg{color:#1f2234!important}[data-theme=classic] .bg-marginal-text{background:#fff!important}[data-theme=classic] .text-marginal-text{color:#fff!important}[data-theme=bitcoin] .q-drawer--dark,body[data-theme=bitcoin].body--dark,[data-theme=bitcoin] .q-menu--dark{background:#2d293b!important}[data-theme=bitcoin] .q-card--dark,[data-theme=bitcoin] .q-stepper--dark{background:#333646!important}[data-theme=bitcoin] .bg-primary{background:#ff9853!important}[data-theme=bitcoin] .text-primary{color:#ff9853!important}[data-theme=bitcoin] .bg-secondary{background:#ff7353!important}[data-theme=bitcoin] .text-secondary{color:#ff7353!important}[data-theme=bitcoin] .bg-dark{background:#2d293b!important}[data-theme=bitcoin] .text-dark{color:#2d293b!important}[data-theme=bitcoin] .bg-info{background:#333646!important}[data-theme=bitcoin] .text-info{color:#333646!important}[data-theme=bitcoin] .bg-marginal-bg{background:#2d293b!important}[data-theme=bitcoin] .text-marginal-bg{color:#2d293b!important}[data-theme=bitcoin] .bg-marginal-text{background:#fff!important}[data-theme=bitcoin] .text-marginal-text{color:#fff!important}[data-theme=freedom] .q-drawer--dark,body[data-theme=freedom].body--dark,[data-theme=freedom] .q-menu--dark{background:#0a0a0a!important}[data-theme=freedom] .q-card--dark,[data-theme=freedom] .q-stepper--dark{background:#1b1b1b!important}[data-theme=freedom] .bg-primary{background:#e22156!important}[data-theme=freedom] .text-primary{color:#e22156!important}[data-theme=freedom] .bg-secondary{background:#b91a45!important}[data-theme=freedom] .text-secondary{color:#b91a45!important}[data-theme=freedom] .bg-dark{background:#0a0a0a!important}[data-theme=freedom] .text-dark{color:#0a0a0a!important}[data-theme=freedom] .bg-info{background:#1b1b1b!important}[data-theme=freedom] .text-info{color:#1b1b1b!important}[data-theme=freedom] .bg-marginal-bg{background:#2d293b!important}[data-theme=freedom] .text-marginal-bg{color:#2d293b!important}[data-theme=freedom] .bg-marginal-text{background:#fff!important}[data-theme=freedom] .text-marginal-text{color:#fff!important}[data-theme=cyber] .q-drawer--dark,body[data-theme=cyber].body--dark,[data-theme=cyber] .q-menu--dark{background:#0a0a0a!important}[data-theme=cyber] .q-card--dark,[data-theme=cyber] .q-stepper--dark{background:#1b1b1b!important}[data-theme=cyber] .bg-primary{background:#7cb342!important}[data-theme=cyber] .text-primary{color:#7cb342!important}[data-theme=cyber] .bg-secondary{background:#558b2f!important}[data-theme=cyber] .text-secondary{color:#558b2f!important}[data-theme=cyber] .bg-dark{background:#0a0a0a!important}[data-theme=cyber] .text-dark{color:#0a0a0a!important}[data-theme=cyber] .bg-info{background:#1b1b1b!important}[data-theme=cyber] .text-info{color:#1b1b1b!important}[data-theme=cyber] .bg-marginal-bg{background:#2d293b!important}[data-theme=cyber] .text-marginal-bg{color:#2d293b!important}[data-theme=cyber] .bg-marginal-text{background:#fff!important}[data-theme=cyber] .text-marginal-text{color:#fff!important}[data-theme=mint] .q-drawer--dark,body[data-theme=mint].body--dark,[data-theme=mint] .q-menu--dark{background:#1f342b!important}[data-theme=mint] .q-card--dark,[data-theme=mint] .q-stepper--dark{background:#334642!important}[data-theme=mint] .bg-primary{background:#3ab77d!important}[data-theme=mint] .text-primary{color:#3ab77d!important}[data-theme=mint] .bg-secondary{background:#27b065!important}[data-theme=mint] .text-secondary{color:#27b065!important}[data-theme=mint] .bg-dark{background:#1f342b!important}[data-theme=mint] .text-dark{color:#1f342b!important}[data-theme=mint] .bg-info{background:#334642!important}[data-theme=mint] .text-info{color:#334642!important}[data-theme=mint] .bg-marginal-bg{background:#1f342b!important}[data-theme=mint] .text-marginal-bg{color:#1f342b!important}[data-theme=mint] .bg-marginal-text{background:#fff!important}[data-theme=mint] .text-marginal-text{color:#fff!important}[data-theme=autumn] .q-drawer--dark,body[data-theme=autumn].body--dark,[data-theme=autumn] .q-menu--dark{background:#34291f!important}[data-theme=autumn] .q-card--dark,[data-theme=autumn] .q-stepper--dark{background:#463f33!important}[data-theme=autumn] .bg-primary{background:#b7763a!important}[data-theme=autumn] .text-primary{color:#b7763a!important}[data-theme=autumn] .bg-secondary{background:#b07927!important}[data-theme=autumn] .text-secondary{color:#b07927!important}[data-theme=autumn] .bg-dark{background:#34291f!important}[data-theme=autumn] .text-dark{color:#34291f!important}[data-theme=autumn] .bg-info{background:#463f33!important}[data-theme=autumn] .text-info{color:#463f33!important}[data-theme=autumn] .bg-marginal-bg{background:#342a1f!important}[data-theme=autumn] .text-marginal-bg{color:#342a1f!important}[data-theme=autumn] .bg-marginal-text{background:rgb(255,255,255)!important}[data-theme=autumn] .text-marginal-text{color:#fff!important}[data-theme=flamingo] .q-drawer--dark,body[data-theme=flamingo].body--dark,[data-theme=flamingo] .q-menu--dark{background:#2f032f!important}[data-theme=flamingo] .q-card--dark,[data-theme=flamingo] .q-stepper--dark{background:#bc23bc!important}[data-theme=flamingo] .bg-primary{background:#ff00ff!important}[data-theme=flamingo] .text-primary{color:#f0f!important}[data-theme=flamingo] .bg-secondary{background:#fda3fd!important}[data-theme=flamingo] .text-secondary{color:#fda3fd!important}[data-theme=flamingo] .bg-dark{background:#2f032f!important}[data-theme=flamingo] .text-dark{color:#2f032f!important}[data-theme=flamingo] .bg-info{background:#bc23bc!important}[data-theme=flamingo] .text-info{color:#bc23bc!important}[data-theme=flamingo] .bg-marginal-bg{background:#311231!important}[data-theme=flamingo] .text-marginal-bg{color:#311231!important}[data-theme=flamingo] .bg-marginal-text{background:rgb(255,255,255)!important}[data-theme=flamingo] .text-marginal-text{color:#fff!important}[data-theme=monochrome] .q-drawer--dark,body[data-theme=monochrome].body--dark,[data-theme=monochrome] .q-menu--dark{background:#000!important}[data-theme=monochrome] .q-card--dark,[data-theme=monochrome] .q-stepper--dark{background:rgb(39,39,39)!important}[data-theme=monochrome] .bg-primary{background:#494949!important}[data-theme=monochrome] .text-primary{color:#494949!important}[data-theme=monochrome] .bg-secondary{background:#6b6b6b!important}[data-theme=monochrome] .text-secondary{color:#6b6b6b!important}[data-theme=monochrome] .bg-dark{background:#000!important}[data-theme=monochrome] .text-dark{color:#000!important}[data-theme=monochrome] .bg-info{background:rgb(39,39,39)!important}[data-theme=monochrome] .text-info{color:#272727!important}[data-theme=monochrome] .bg-marginal-bg{background:#000!important}[data-theme=monochrome] .text-marginal-bg{color:#000!important}[data-theme=monochrome] .bg-marginal-text{background:rgb(255,255,255)!important}[data-theme=monochrome] .text-marginal-text{color:#fff!important}[data-theme=freedom] .q-drawer--dark,[data-theme=freedom] .q-header,[data-theme=cyber] .q-drawer--dark,[data-theme=cyber] .q-header{background:#0a0a0a!important}[data-theme=salvador] .q-drawer--dark{background:#242424!important}[data-theme=salvador] .q-header{background:#0f47af!important}[v-cloak]{display:none}body.body--dark .q-table--dark{background:transparent}body.body--dark .q-field--error .text-negative,body.body--dark .q-field--error .q-field__messages{color:#ff0!important}.lnbits-drawer__q-list .q-item{padding-top:5px!important;padding-bottom:5px!important;border-top-right-radius:3px;border-bottom-right-radius:3px}.lnbits-drawer__q-list .q-item.q-item--active{color:inherit;font-weight:700}.lnbits__dialog-card{width:500px}.q-table--dense th:first-child,.q-table--dense td:first-child,.q-table--dense .q-table__bottom{padding-left:6px!important}.q-table--dense th:last-child,.q-table--dense td:last-child,.q-table--dense .q-table__bottom{padding-right:6px!important}a.inherit{color:inherit;text-decoration:none}video{border-radius:3px}@font-face{font-family:Material Icons;font-style:normal;font-weight:400;src:url(/static/fonts/material-icons-v50.woff2) format("woff2")}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-moz-font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale}.q-rating__icon{font-size:1em}.text-wrap{word-break:break-word}.q-card code{overflow-wrap:break-word} diff --git a/static/market/assets/index.de281aed.css b/static/market/assets/index.de281aed.css new file mode 100644 index 0000000..f903024 --- /dev/null +++ b/static/market/assets/index.de281aed.css @@ -0,0 +1 @@ +@font-face{font-family:Roboto;font-style:normal;font-weight:100;src:url(/assets/KFOkCnqEu92Fr1MmgVxIIzQ.34e9582c.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-weight:300;src:url(/assets/KFOlCnqEu92Fr1MmSU5fBBc-.bf14c7d7.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-weight:400;src:url(/assets/KFOmCnqEu92Fr1Mu4mxM.f2abf7fb.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-weight:500;src:url(/assets/KFOlCnqEu92Fr1MmEU9fBBc-.9ce7f3ac.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-weight:700;src:url(/assets/KFOlCnqEu92Fr1MmWUlfBBc-.e0fd57c0.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-weight:900;src:url(/assets/KFOlCnqEu92Fr1MmYUtfBBc-.f6537e32.woff) format("woff")}@font-face{font-family:Material Icons;font-style:normal;font-weight:400;font-display:block;src:url(/assets/flUhRq6tzZclQEJ-Vdg-IuiaDsNcIhQ8tQ.4a4dbc62.woff2) format("woff2"),url(/assets/flUhRq6tzZclQEJ-Vdg-IuiaDsNa.fd84f88b.woff) format("woff")}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;display:inline-block;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:"liga"}*,*:before,*:after{box-sizing:inherit;-webkit-tap-highlight-color:transparent;-moz-tap-highlight-color:transparent}html,body,#q-app{width:100%;direction:ltr}body.platform-ios.within-iframe,body.platform-ios.within-iframe #q-app{width:100px;min-width:100%}html,body{margin:0;box-sizing:border-box}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}img{border-style:none}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}hr{box-sizing:content-box;height:0;overflow:visible}button,input,optgroup,select,textarea{font:inherit;font-family:inherit;margin:0}optgroup{font-weight:700}button,input,select{overflow:visible;text-transform:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}button:-moz-focusring,input:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.q-icon{line-height:1;width:1em;height:1em;flex-shrink:0;letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;direction:ltr;text-align:center;position:relative;box-sizing:content-box;fill:currentColor}.q-icon:before,.q-icon:after{width:100%;height:100%;display:flex!important;align-items:center;justify-content:center}.q-icon>svg,.q-icon>img{width:100%;height:100%}.q-icon,.material-icons,.material-icons-outlined,.material-icons-round,.material-icons-sharp,.material-symbols-outlined,.material-symbols-rounded,.material-symbols-sharp{-webkit-user-select:none;user-select:none;cursor:inherit;font-size:inherit;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle}.q-panel{height:100%;width:100%}.q-panel>div{height:100%;width:100%}.q-panel-parent{overflow:hidden;position:relative}.q-loading-bar{position:fixed;z-index:9998;transition:transform .5s cubic-bezier(0,0,.2,1),opacity .5s;background:#f44336}.q-loading-bar--top{left:0;right:0;top:0;width:100%}.q-loading-bar--bottom{left:0;right:0;bottom:0;width:100%}.q-loading-bar--right{top:0;bottom:0;right:0;height:100%}.q-loading-bar--left{top:0;bottom:0;left:0;height:100%}.q-avatar{position:relative;vertical-align:middle;display:inline-block;border-radius:50%;font-size:48px;height:1em;width:1em}.q-avatar__content{font-size:.5em;line-height:.5em}.q-avatar__content,.q-avatar img:not(.q-icon):not(.q-img__image){border-radius:inherit;height:inherit;width:inherit}.q-avatar--square{border-radius:0}.q-badge{background-color:var(--q-primary);color:#fff;padding:2px 6px;border-radius:4px;font-size:12px;line-height:12px;min-height:12px;font-weight:400;vertical-align:baseline}.q-badge--single-line{white-space:nowrap}.q-badge--multi-line{word-break:break-all;word-wrap:break-word}.q-badge--floating{position:absolute;top:-4px;right:-3px;cursor:inherit}.q-badge--transparent{opacity:.8}.q-badge--outline{background-color:transparent;border:1px solid currentColor}.q-badge--rounded{border-radius:1em}.q-banner{min-height:54px;padding:8px 16px;background:#fff}.q-banner--top-padding{padding-top:14px}.q-banner__avatar{min-width:1px!important}.q-banner__avatar>.q-avatar{font-size:46px}.q-banner__avatar>.q-icon{font-size:40px}.q-banner__avatar:not(:empty)+.q-banner__content{padding-left:16px}.q-banner__actions.col-auto{padding-left:16px}.q-banner__actions.col-all .q-btn-item{margin:4px 0 0 4px}.q-banner--dense{min-height:32px;padding:8px}.q-banner--dense.q-banner--top-padding{padding-top:12px}.q-banner--dense .q-banner__avatar>.q-avatar,.q-banner--dense .q-banner__avatar>.q-icon{font-size:28px}.q-banner--dense .q-banner__avatar:not(:empty)+.q-banner__content{padding-left:8px}.q-banner--dense .q-banner__actions.col-auto{padding-left:8px}.q-bar{background:rgba(0,0,0,.2)}.q-bar>.q-icon{margin-left:2px}.q-bar>div,.q-bar>div+.q-icon{margin-left:8px}.q-bar>.q-btn{margin-left:2px}.q-bar>.q-icon:first-child,.q-bar>.q-btn:first-child,.q-bar>div:first-child{margin-left:0}.q-bar--standard{padding:0 12px;height:32px;font-size:18px}.q-bar--standard>div{font-size:16px}.q-bar--standard .q-btn{font-size:11px}.q-bar--dense{padding:0 8px;height:24px;font-size:14px}.q-bar--dense .q-btn{font-size:8px}.q-bar--dark{background:rgba(255,255,255,.15)}.q-breadcrumbs__el{color:inherit}.q-breadcrumbs__el-icon{font-size:125%}.q-breadcrumbs__el-icon--with-label{margin-right:8px}[dir=rtl] .q-breadcrumbs__separator .q-icon{transform:scaleX(-1)}.q-btn{display:inline-flex;flex-direction:column;align-items:stretch;position:relative;outline:0;border:0;vertical-align:middle;font-size:14px;line-height:1.715em;text-decoration:none;color:inherit;background:transparent;font-weight:500;text-transform:uppercase;text-align:center;width:auto;height:auto;cursor:default;padding:4px 16px;min-height:2.572em}.q-btn .q-icon,.q-btn .q-spinner{font-size:1.715em}.q-btn.disabled{opacity:.7!important}.q-btn:before{content:"";display:block;position:absolute;left:0;right:0;top:0;bottom:0;border-radius:inherit;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f}.q-btn--actionable{cursor:pointer}.q-btn--actionable.q-btn--standard:before{transition:box-shadow .3s cubic-bezier(.25,.8,.5,1)}.q-btn--actionable.q-btn--standard:active:before,.q-btn--actionable.q-btn--standard.q-btn--active:before{box-shadow:0 3px 5px -1px #0003,0 5px 8px #00000024,0 1px 14px #0000001f}.q-btn--no-uppercase{text-transform:none}.q-btn--rectangle{border-radius:3px}.q-btn--outline{background:transparent!important}.q-btn--outline:before{border:1px solid currentColor}.q-btn--push{border-radius:7px}.q-btn--push:before{border-bottom:3px solid rgba(0,0,0,.15)}.q-btn--push.q-btn--actionable{transition:transform .3s cubic-bezier(.25,.8,.5,1)}.q-btn--push.q-btn--actionable:before{transition:border-width .3s cubic-bezier(.25,.8,.5,1)}.q-btn--push.q-btn--actionable:active,.q-btn--push.q-btn--actionable.q-btn--active{transform:translateY(2px)}.q-btn--push.q-btn--actionable:active:before,.q-btn--push.q-btn--actionable.q-btn--active:before{border-bottom-width:0}.q-btn--rounded{border-radius:28px}.q-btn--round{border-radius:50%;padding:0;min-width:3em;min-height:3em}.q-btn--square{border-radius:0}.q-btn--flat:before,.q-btn--outline:before,.q-btn--unelevated:before{box-shadow:none}.q-btn--dense{padding:.285em;min-height:2em}.q-btn--dense.q-btn--round{padding:0;min-height:2.4em;min-width:2.4em}.q-btn--dense .on-left{margin-right:6px}.q-btn--dense .on-right{margin-left:6px}.q-btn--fab .q-icon,.q-btn--fab-mini .q-icon{font-size:24px}.q-btn--fab{padding:16px;min-height:56px;min-width:56px}.q-btn--fab .q-icon{margin:auto}.q-btn--fab-mini{padding:8px;min-height:40px;min-width:40px}.q-btn__content{transition:opacity .3s;z-index:0}.q-btn__content--hidden{opacity:0;pointer-events:none}.q-btn__progress{border-radius:inherit;z-index:0}.q-btn__progress-indicator{z-index:-1;transform:translate(-100%);background:rgba(255,255,255,.25)}.q-btn__progress--dark .q-btn__progress-indicator{background:rgba(0,0,0,.2)}.q-btn--flat .q-btn__progress-indicator,.q-btn--outline .q-btn__progress-indicator{opacity:.2;background:currentColor}.q-btn-dropdown--split .q-btn-dropdown__arrow-container{padding:0 4px}.q-btn-dropdown--split .q-btn-dropdown__arrow-container.q-btn--outline{border-left:1px solid currentColor}.q-btn-dropdown--split .q-btn-dropdown__arrow-container:not(.q-btn--outline){border-left:1px solid rgba(255,255,255,.3)}.q-btn-dropdown--simple *+.q-btn-dropdown__arrow{margin-left:8px}.q-btn-dropdown__arrow{transition:transform .28s}.q-btn-dropdown--current{flex-grow:1}.q-btn-group{border-radius:3px;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;vertical-align:middle}.q-btn-group>.q-btn-item{border-radius:inherit;align-self:stretch}.q-btn-group>.q-btn-item:before{box-shadow:none}.q-btn-group>.q-btn-item .q-badge--floating{right:0}.q-btn-group>.q-btn-group{box-shadow:none}.q-btn-group>.q-btn-group:first-child>.q-btn:first-child{border-top-left-radius:inherit;border-bottom-left-radius:inherit}.q-btn-group>.q-btn-group:last-child>.q-btn:last-child{border-top-right-radius:inherit;border-bottom-right-radius:inherit}.q-btn-group>.q-btn-group:not(:first-child)>.q-btn:first-child:before{border-left:0}.q-btn-group>.q-btn-group:not(:last-child)>.q-btn:last-child:before{border-right:0}.q-btn-group>.q-btn-item:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.q-btn-group>.q-btn-item:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.q-btn-group>.q-btn-item.q-btn--standard:before{z-index:-1}.q-btn-group--push{border-radius:7px}.q-btn-group--push>.q-btn--push.q-btn--actionable{transform:none}.q-btn-group--push>.q-btn--push.q-btn--actionable .q-btn__content{transition:margin-top .3s cubic-bezier(.25,.8,.5,1),margin-bottom .3s cubic-bezier(.25,.8,.5,1)}.q-btn-group--push>.q-btn--push.q-btn--actionable:active .q-btn__content,.q-btn-group--push>.q-btn--push.q-btn--actionable.q-btn--active .q-btn__content{margin-top:2px;margin-bottom:-2px}.q-btn-group--rounded{border-radius:28px}.q-btn-group--square{border-radius:0}.q-btn-group--flat,.q-btn-group--outline,.q-btn-group--unelevated{box-shadow:none}.q-btn-group--outline>.q-separator{display:none}.q-btn-group--outline>.q-btn-item+.q-btn-item:before{border-left:0}.q-btn-group--outline>.q-btn-item:not(:last-child):before{border-right:0}.q-btn-group--stretch{align-self:stretch;border-radius:0}.q-btn-group--glossy>.q-btn-item{background-image:linear-gradient(to bottom,rgba(255,255,255,.3),rgba(255,255,255,0) 50%,rgba(0,0,0,.12) 51%,rgba(0,0,0,.04))!important}.q-btn-group--spread>.q-btn-group{display:flex!important}.q-btn-group--spread>.q-btn-item,.q-btn-group--spread>.q-btn-group>.q-btn-item:not(.q-btn-dropdown__arrow-container){width:auto;min-width:0;max-width:100%;flex:10000 1 0%}.q-btn-toggle{position:relative}.q-card{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;vertical-align:top;background:#fff;position:relative}.q-card>div:first-child,.q-card>img:first-child{border-top:0;border-top-left-radius:inherit;border-top-right-radius:inherit}.q-card>div:last-child,.q-card>img:last-child{border-bottom:0;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.q-card>div:not(:first-child),.q-card>img:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.q-card>div:not(:last-child),.q-card>img:not(:last-child){border-bottom-left-radius:0;border-bottom-right-radius:0}.q-card>div{border-left:0;border-right:0;box-shadow:none}.q-card--bordered{border:1px solid rgba(0,0,0,.12)}.q-card--dark{border-color:#ffffff47;box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-card__section{position:relative}.q-card__section--vert{padding:16px}.q-card__section--horiz>div:first-child,.q-card__section--horiz>img:first-child{border-top-left-radius:inherit;border-bottom-left-radius:inherit}.q-card__section--horiz>div:last-child,.q-card__section--horiz>img:last-child{border-top-right-radius:inherit;border-bottom-right-radius:inherit}.q-card__section--horiz>div:not(:first-child),.q-card__section--horiz>img:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.q-card__section--horiz>div:not(:last-child),.q-card__section--horiz>img:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.q-card__section--horiz>div{border-top:0;border-bottom:0;box-shadow:none}.q-card__actions{padding:8px;align-items:center}.q-card__actions .q-btn--rectangle{padding:0 8px}.q-card__actions--horiz>.q-btn-item+.q-btn-item,.q-card__actions--horiz>.q-btn-group+.q-btn-item,.q-card__actions--horiz>.q-btn-item+.q-btn-group{margin-left:8px}.q-card__actions--vert>.q-btn-item.q-btn--round{align-self:center}.q-card__actions--vert>.q-btn-item+.q-btn-item,.q-card__actions--vert>.q-btn-group+.q-btn-item,.q-card__actions--vert>.q-btn-item+.q-btn-group{margin-top:4px}.q-card__actions--vert>.q-btn-group>.q-btn-item{flex-grow:1}.q-card>img{display:block;width:100%;max-width:100%;border:0}.q-carousel{background-color:#fff;height:400px}.q-carousel__slide{min-height:100%;background-size:cover;background-position:50%}.q-carousel__slide,.q-carousel .q-carousel--padding{padding:16px}.q-carousel__slides-container{height:100%}.q-carousel__control{color:#fff}.q-carousel__arrow{pointer-events:none}.q-carousel__arrow .q-icon{font-size:28px}.q-carousel__arrow .q-btn{pointer-events:all}.q-carousel__prev-arrow--horizontal,.q-carousel__next-arrow--horizontal{top:16px;bottom:16px}.q-carousel__prev-arrow--horizontal{left:16px}.q-carousel__next-arrow--horizontal{right:16px}.q-carousel__prev-arrow--vertical,.q-carousel__next-arrow--vertical{left:16px;right:16px}.q-carousel__prev-arrow--vertical{top:16px}.q-carousel__next-arrow--vertical{bottom:16px}.q-carousel__navigation--top,.q-carousel__navigation--bottom{left:16px;right:16px;overflow-x:auto;overflow-y:hidden}.q-carousel__navigation--top{top:16px}.q-carousel__navigation--bottom{bottom:16px}.q-carousel__navigation--left,.q-carousel__navigation--right{top:16px;bottom:16px;overflow-x:hidden;overflow-y:auto}.q-carousel__navigation--left>.q-carousel__navigation-inner,.q-carousel__navigation--right>.q-carousel__navigation-inner{flex-direction:column}.q-carousel__navigation--left{left:16px}.q-carousel__navigation--right{right:16px}.q-carousel__navigation-inner{flex:1 1 auto}.q-carousel__navigation .q-btn{margin:6px 4px;padding:5px}.q-carousel__navigation-icon--inactive{opacity:.7}.q-carousel .q-carousel__thumbnail{margin:2px;height:50px;width:auto;display:inline-block;cursor:pointer;border:1px solid transparent;border-radius:4px;vertical-align:middle;opacity:.7;transition:opacity .3s}.q-carousel .q-carousel__thumbnail:hover,.q-carousel .q-carousel__thumbnail--active{opacity:1}.q-carousel .q-carousel__thumbnail--active{border-color:currentColor;cursor:default}.q-carousel--navigation-top.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-top .q-carousel--padding,.q-carousel--arrows-vertical.q-carousel--with-padding .q-carousel__slide,.q-carousel--arrows-vertical .q-carousel--padding{padding-top:60px}.q-carousel--navigation-bottom.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-bottom .q-carousel--padding,.q-carousel--arrows-vertical.q-carousel--with-padding .q-carousel__slide,.q-carousel--arrows-vertical .q-carousel--padding{padding-bottom:60px}.q-carousel--navigation-left.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-left .q-carousel--padding,.q-carousel--arrows-horizontal.q-carousel--with-padding .q-carousel__slide,.q-carousel--arrows-horizontal .q-carousel--padding{padding-left:60px}.q-carousel--navigation-right.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-right .q-carousel--padding,.q-carousel--arrows-horizontal.q-carousel--with-padding .q-carousel__slide,.q-carousel--arrows-horizontal .q-carousel--padding{padding-right:60px}.q-carousel.fullscreen{height:100%}.q-message-name,.q-message-stamp,.q-message-label{font-size:small}.q-message-label{margin:24px 0;text-align:center}.q-message-stamp{color:inherit;margin-top:4px;opacity:.6;display:none}.q-message-avatar{border-radius:50%;width:48px;height:48px;min-width:48px}.q-message{margin-bottom:8px}.q-message:first-child .q-message-label{margin-top:0}.q-message-avatar--received{margin-right:8px}.q-message-text--received{color:#81c784;border-radius:4px 4px 4px 0}.q-message-text--received:last-child:before{right:100%;border-right:0 solid transparent;border-left:8px solid transparent;border-bottom:8px solid currentColor}.q-message-text-content--received{color:#000}.q-message-name--sent{text-align:right}.q-message-avatar--sent{margin-left:8px}.q-message-container--sent{flex-direction:row-reverse}.q-message-text--sent{color:#e0e0e0;border-radius:4px 4px 0}.q-message-text--sent:last-child:before{left:100%;border-left:0 solid transparent;border-right:8px solid transparent;border-bottom:8px solid currentColor}.q-message-text-content--sent{color:#000}.q-message-text{background:currentColor;padding:8px;line-height:1.2;word-break:break-word;position:relative}.q-message-text+.q-message-text{margin-top:3px}.q-message-text:last-child{min-height:48px}.q-message-text:last-child .q-message-stamp{display:block}.q-message-text:last-child:before{content:"";position:absolute;bottom:0;width:0;height:0}.q-checkbox{vertical-align:middle}.q-checkbox__native{width:1px;height:1px}.q-checkbox__bg,.q-checkbox__icon-container{-webkit-user-select:none;user-select:none}.q-checkbox__bg{top:25%;left:25%;width:50%;height:50%;border:2px solid currentColor;border-radius:2px;transition:background .22s cubic-bezier(0,0,.2,1) 0ms;-webkit-print-color-adjust:exact}.q-checkbox__icon{color:currentColor;font-size:.5em}.q-checkbox__svg{color:#fff}.q-checkbox__truthy{stroke:currentColor;stroke-width:3.12px;stroke-dashoffset:29.78334;stroke-dasharray:29.78334}.q-checkbox__indet{fill:currentColor;transform-origin:50% 50%;transform:rotate(-280deg) scale(0)}.q-checkbox__inner{font-size:40px;width:1em;min-width:1em;height:1em;outline:0;border-radius:50%;color:#0000008a}.q-checkbox__inner--truthy,.q-checkbox__inner--indet{color:var(--q-primary)}.q-checkbox__inner--truthy .q-checkbox__bg,.q-checkbox__inner--indet .q-checkbox__bg{background:currentColor}.q-checkbox__inner--truthy path{stroke-dashoffset:0;transition:stroke-dashoffset .18s cubic-bezier(.4,0,.6,1) 0ms}.q-checkbox__inner--indet .q-checkbox__indet{transform:rotate(0) scale(1);transition:transform .22s cubic-bezier(0,0,.2,1) 0ms}.q-checkbox.disabled{opacity:.75!important}.q-checkbox--dark .q-checkbox__inner{color:#ffffffb3}.q-checkbox--dark .q-checkbox__inner:before{opacity:.32!important}.q-checkbox--dark .q-checkbox__inner--truthy,.q-checkbox--dark .q-checkbox__inner--indet{color:var(--q-primary)}.q-checkbox--dense .q-checkbox__inner{width:.5em;min-width:.5em;height:.5em}.q-checkbox--dense .q-checkbox__bg{left:5%;top:5%;width:90%;height:90%}.q-checkbox--dense .q-checkbox__label{padding-left:.5em}.q-checkbox--dense.reverse .q-checkbox__label{padding-left:0;padding-right:.5em}body.desktop .q-checkbox:not(.disabled) .q-checkbox__inner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:currentColor;opacity:.12;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0,0,.2,1)}body.desktop .q-checkbox:not(.disabled):focus .q-checkbox__inner:before,body.desktop .q-checkbox:not(.disabled):hover .q-checkbox__inner:before{transform:scaleZ(1)}body.desktop .q-checkbox--dense:not(.disabled):focus .q-checkbox__inner:before,body.desktop .q-checkbox--dense:not(.disabled):hover .q-checkbox__inner:before{transform:scale3d(1.4,1.4,1)}.q-chip{vertical-align:middle;border-radius:16px;outline:0;position:relative;height:2em;max-width:100%;margin:4px;background:#e0e0e0;color:#000000de;font-size:14px;padding:.5em .9em}.q-chip--colored .q-chip__icon,.q-chip--dark .q-chip__icon{color:inherit}.q-chip--outline{background:transparent!important;border:1px solid currentColor}.q-chip .q-avatar{font-size:2em;margin-left:-.45em;margin-right:.2em;border-radius:16px}.q-chip--selected .q-avatar{display:none}.q-chip__icon{color:#0000008a;font-size:1.5em;margin:-.2em}.q-chip__icon--left{margin-right:.2em}.q-chip__icon--right{margin-left:.2em}.q-chip__icon--remove{margin-left:.1em;margin-right:-.5em;opacity:.6;outline:0}.q-chip__icon--remove:hover,.q-chip__icon--remove:focus{opacity:1}.q-chip__content{white-space:nowrap}.q-chip--dense{border-radius:12px;padding:0 .4em;height:1.5em}.q-chip--dense .q-avatar{font-size:1.5em;margin-left:-.27em;margin-right:.1em;border-radius:12px}.q-chip--dense .q-chip__icon{font-size:1.25em}.q-chip--dense .q-chip__icon--left{margin-right:.195em}.q-chip--dense .q-chip__icon--remove{margin-right:-.25em}.q-chip--square{border-radius:4px}.q-chip--square .q-avatar{border-radius:3px 0 0 3px}body.desktop .q-chip--clickable:focus{box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f}body.desktop.body--dark .q-chip--clickable:focus{box-shadow:0 1px 3px #fff3,0 1px 1px #ffffff24,0 2px 1px -1px #ffffff1f}.q-circular-progress{display:inline-block;position:relative;vertical-align:middle;width:1em;height:1em;line-height:1}.q-circular-progress.q-focusable{border-radius:50%}.q-circular-progress__svg{width:100%;height:100%}.q-circular-progress__text{font-size:.25em}.q-circular-progress--indeterminate .q-circular-progress__svg{transform-origin:50% 50%;animation:q-spin 2s linear infinite}.q-circular-progress--indeterminate .q-circular-progress__circle{stroke-dasharray:1 400;stroke-dashoffset:0;animation:q-circular-progress-circle 1.5s ease-in-out infinite}@keyframes q-circular-progress-circle{0%{stroke-dasharray:1,400;stroke-dashoffset:0}50%{stroke-dasharray:400,400;stroke-dashoffset:-100}to{stroke-dasharray:400,400;stroke-dashoffset:-300}}.q-color-picker{overflow:hidden;background:#fff;max-width:350px;vertical-align:top;min-width:180px;border-radius:4px;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f}.q-color-picker .q-tab{padding:0!important}.q-color-picker--bordered{border:1px solid rgba(0,0,0,.12)}.q-color-picker__header-tabs{height:32px}.q-color-picker__header input{line-height:24px;border:0}.q-color-picker__header .q-tab{min-height:32px!important;height:32px!important}.q-color-picker__header .q-tab--inactive{background:linear-gradient(to top,rgba(0,0,0,.3) 0%,rgba(0,0,0,.15) 25%,rgba(0,0,0,.1))}.q-color-picker__error-icon{bottom:2px;right:2px;font-size:24px;opacity:0;transition:opacity .3s ease-in}.q-color-picker__header-content{position:relative;background:#fff}.q-color-picker__header-content--light{color:#000}.q-color-picker__header-content--dark{color:#fff}.q-color-picker__header-content--dark .q-tab--inactive:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(255,255,255,.2)}.q-color-picker__header-banner{height:36px}.q-color-picker__header-bg{background:#fff;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAH0lEQVQoU2NkYGAwZkAFZ5G5jPRRgOYEVDeB3EBjBQBOZwTVugIGyAAAAABJRU5ErkJggg==)!important}.q-color-picker__footer{height:36px}.q-color-picker__footer .q-tab{min-height:36px!important;height:36px!important}.q-color-picker__footer .q-tab--inactive{background:linear-gradient(to bottom,rgba(0,0,0,.3) 0%,rgba(0,0,0,.15) 25%,rgba(0,0,0,.1))}.q-color-picker__spectrum{width:100%;height:100%}.q-color-picker__spectrum-tab{padding:0!important}.q-color-picker__spectrum-white{background:linear-gradient(to right,#fff,rgba(255,255,255,0))}.q-color-picker__spectrum-black{background:linear-gradient(to top,#000,rgba(0,0,0,0))}.q-color-picker__spectrum-circle{width:10px;height:10px;box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px #0000004d,0 0 1px 2px #0006;border-radius:50%;transform:translate(-5px,-5px)}.q-color-picker__hue .q-slider__track{background:linear-gradient(to right,#f00 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,#f00 100%)!important;opacity:1}.q-color-picker__alpha .q-slider__track-container{padding-top:0}.q-color-picker__alpha .q-slider__track:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(90deg,rgba(255,255,255,0),#757575)}.q-color-picker__sliders{padding:0 16px}.q-color-picker__sliders .q-slider__thumb{color:#424242}.q-color-picker__sliders .q-slider__thumb path{stroke-width:2px;fill:transparent}.q-color-picker__sliders .q-slider--active path{stroke-width:3px}.q-color-picker__tune-tab .q-slider{margin-left:18px;margin-right:18px}.q-color-picker__tune-tab input{font-size:11px;border:1px solid #e0e0e0;border-radius:4px;width:3.5em}.q-color-picker__palette-tab{padding:0!important}.q-color-picker__palette-rows--editable .q-color-picker__cube{cursor:pointer}.q-color-picker__cube{padding-bottom:10%;width:10%!important}.q-color-picker input{color:inherit;background:transparent;outline:0;text-align:center}.q-color-picker .q-tabs{overflow:hidden}.q-color-picker .q-tab--active{box-shadow:0 0 14px 3px #0003}.q-color-picker .q-tab--active .q-focus-helper,.q-color-picker .q-tab__indicator{display:none}.q-color-picker .q-tab-panels{background:inherit}.q-color-picker--dark{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-color-picker--dark .q-color-picker__tune-tab input{border:1px solid rgba(255,255,255,.3)}.q-color-picker--dark .q-slider__thumb{color:#fafafa}.q-date{display:inline-flex;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;background:#fff;width:290px;min-width:290px;max-width:100%}.q-date--bordered{border:1px solid rgba(0,0,0,.12)}.q-date__header{border-top-left-radius:inherit;color:#fff;background-color:var(--q-primary);padding:16px}.q-date__actions{padding:0 16px 16px}.q-date__content,.q-date__main{outline:0}.q-date__content .q-btn{font-weight:400}.q-date__header-link{opacity:.64;outline:0;transition:opacity .3s ease-out}.q-date__header-link--active,.q-date__header-link:hover,.q-date__header-link:focus{opacity:1}.q-date__header-subtitle{font-size:14px;line-height:1.75;letter-spacing:.00938em}.q-date__header-title-label{font-size:24px;line-height:1.2;letter-spacing:.00735em}.q-date__view{height:100%;width:100%;min-height:290px;padding:16px}.q-date__navigation{height:12.5%}.q-date__navigation>div:first-child{width:8%;min-width:24px;justify-content:flex-end}.q-date__navigation>div:last-child{width:8%;min-width:24px;justify-content:flex-start}.q-date__calendar-weekdays{height:12.5%}.q-date__calendar-weekdays>div{opacity:.38;font-size:12px}.q-date__calendar-item{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;width:14.285%!important;height:12.5%!important;position:relative;padding:1px}.q-date__calendar-item:after{content:"";position:absolute;pointer-events:none;top:1px;right:0;bottom:1px;left:0;border-style:dashed;border-color:transparent;border-width:1px}.q-date__calendar-item>div,.q-date__calendar-item button{width:30px;height:30px;border-radius:50%}.q-date__calendar-item>div{line-height:30px;text-align:center}.q-date__calendar-item>button{line-height:22px}.q-date__calendar-item--out{opacity:.18}.q-date__calendar-item--fill{visibility:hidden}.q-date__range:before,.q-date__range-from:before,.q-date__range-to:before{content:"";background-color:currentColor;position:absolute;top:1px;bottom:1px;left:0;right:0;opacity:.3}.q-date__range:nth-child(7n-6):before,.q-date__range-from:nth-child(7n-6):before,.q-date__range-to:nth-child(7n-6):before{border-top-left-radius:0;border-bottom-left-radius:0}.q-date__range:nth-child(7n):before,.q-date__range-from:nth-child(7n):before,.q-date__range-to:nth-child(7n):before{border-top-right-radius:0;border-bottom-right-radius:0}.q-date__range-from:before{left:50%}.q-date__range-to:before{right:50%}.q-date__edit-range:after{border-color:currentColor transparent}.q-date__edit-range:nth-child(7n-6):after{border-top-left-radius:0;border-bottom-left-radius:0}.q-date__edit-range:nth-child(7n):after{border-top-right-radius:0;border-bottom-right-radius:0}.q-date__edit-range-from:after,.q-date__edit-range-from-to:after{left:4px;border-left-color:currentColor;border-top-color:currentColor;border-bottom-color:currentColor;border-top-left-radius:28px;border-bottom-left-radius:28px}.q-date__edit-range-to:after,.q-date__edit-range-from-to:after{right:4px;border-right-color:currentColor;border-top-color:currentColor;border-bottom-color:currentColor;border-top-right-radius:28px;border-bottom-right-radius:28px}.q-date__calendar-days-container{height:75%;min-height:192px}.q-date__calendar-days>div{height:16.66%!important}.q-date__event{position:absolute;bottom:2px;left:50%;height:5px;width:8px;border-radius:5px;background-color:var(--q-secondary);transform:translate3d(-50%,0,0)}.q-date__today{box-shadow:0 0 1px 0 currentColor}.q-date__years-content{padding:0 8px}.q-date__years-item,.q-date__months-item{flex:0 0 33.3333%}.q-date.disabled .q-date__header,.q-date.disabled .q-date__content,.q-date--readonly .q-date__header,.q-date--readonly .q-date__content{pointer-events:none}.q-date--readonly .q-date__navigation{display:none}.q-date--portrait{flex-direction:column}.q-date--portrait-standard .q-date__content{height:calc(100% - 86px)}.q-date--portrait-standard .q-date__header{border-top-right-radius:inherit;height:86px}.q-date--portrait-standard .q-date__header-title{align-items:center;height:30px}.q-date--portrait-minimal .q-date__content{height:100%}.q-date--landscape{flex-direction:row;align-items:stretch;min-width:420px}.q-date--landscape>div{display:flex;flex-direction:column}.q-date--landscape .q-date__content{height:100%}.q-date--landscape-standard{min-width:420px}.q-date--landscape-standard .q-date__header{border-bottom-left-radius:inherit;min-width:110px;width:110px}.q-date--landscape-standard .q-date__header-title{flex-direction:column}.q-date--landscape-standard .q-date__header-today{margin-top:12px;margin-left:-8px}.q-date--landscape-minimal{width:310px}.q-date--dark{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f;border-color:#ffffff47}.q-dialog__title{font-size:1.25rem;font-weight:500;line-height:2rem;letter-spacing:.0125em}.q-dialog__progress{font-size:4rem}.q-dialog__inner{outline:0}.q-dialog__inner>div{pointer-events:all;overflow:auto;-webkit-overflow-scrolling:touch;will-change:scroll-position;border-radius:4px}.q-dialog__inner--square>div{border-radius:0!important}.q-dialog__inner>.q-card>.q-card__actions .q-btn--rectangle{min-width:64px}.q-dialog__inner--minimized{padding:24px}.q-dialog__inner--minimized>div{max-height:calc(100vh - 48px)}.q-dialog__inner--maximized>div{height:100%;width:100%;max-height:100vh;max-width:100vw;border-radius:0!important;top:0!important;left:0!important}.q-dialog__inner--top,.q-dialog__inner--bottom{padding-top:0!important;padding-bottom:0!important}.q-dialog__inner--right,.q-dialog__inner--left{padding-right:0!important;padding-left:0!important}.q-dialog__inner--left:not(.q-dialog__inner--animating)>div,.q-dialog__inner--top:not(.q-dialog__inner--animating)>div{border-top-left-radius:0}.q-dialog__inner--right:not(.q-dialog__inner--animating)>div,.q-dialog__inner--top:not(.q-dialog__inner--animating)>div{border-top-right-radius:0}.q-dialog__inner--left:not(.q-dialog__inner--animating)>div,.q-dialog__inner--bottom:not(.q-dialog__inner--animating)>div{border-bottom-left-radius:0}.q-dialog__inner--right:not(.q-dialog__inner--animating)>div,.q-dialog__inner--bottom:not(.q-dialog__inner--animating)>div{border-bottom-right-radius:0}.q-dialog__inner--fullwidth>div{width:100%!important;max-width:100%!important}.q-dialog__inner--fullheight>div{height:100%!important;max-height:100%!important}.q-dialog__backdrop{z-index:-1;pointer-events:all;outline:0;background:rgba(0,0,0,.4)}body.platform-ios .q-dialog__inner--minimized>div,body.platform-android:not(.native-mobile) .q-dialog__inner--minimized>div{max-height:calc(100vh - 108px)}body.q-ios-padding .q-dialog__inner{padding-top:20px!important;padding-top:env(safe-area-inset-top)!important;padding-bottom:env(safe-area-inset-bottom)!important}body.q-ios-padding .q-dialog__inner>div{max-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom))!important}@media (max-width: 599.98px){.q-dialog__inner--top,.q-dialog__inner--bottom{padding-left:0;padding-right:0}.q-dialog__inner--top>div,.q-dialog__inner--bottom>div{width:100%!important}}@media (min-width: 600px){.q-dialog__inner--minimized>div{max-width:560px}}.q-body--dialog{overflow:hidden}.q-bottom-sheet{padding-bottom:8px}.q-bottom-sheet__avatar{border-radius:50%}.q-bottom-sheet--list{width:400px}.q-bottom-sheet--list .q-icon,.q-bottom-sheet--list img{font-size:24px;width:24px;height:24px}.q-bottom-sheet--grid{width:700px}.q-bottom-sheet--grid .q-bottom-sheet__item{padding:8px;text-align:center;min-width:100px}.q-bottom-sheet--grid .q-icon,.q-bottom-sheet--grid img,.q-bottom-sheet--grid .q-bottom-sheet__empty-icon{font-size:48px;width:48px;height:48px;margin-bottom:8px}.q-bottom-sheet--grid .q-separator{margin:12px 0}.q-bottom-sheet__item{flex:0 0 33.3333%}@media (min-width: 600px){.q-bottom-sheet__item{flex:0 0 25%}}.q-dialog-plugin{width:400px}.q-dialog-plugin__form{max-height:50vh}.q-dialog-plugin .q-card__section+.q-card__section{padding-top:0}.q-dialog-plugin--progress{text-align:center}.q-editor{border:1px solid rgba(0,0,0,.12);border-radius:4px;background-color:#fff}.q-editor.disabled{border-style:dashed}.q-editor>div:first-child,.q-editor__toolbars-container,.q-editor__toolbars-container>div:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.q-editor__content{outline:0;padding:10px;min-height:10em;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;overflow:auto;max-width:100%}.q-editor__content pre{white-space:pre-wrap}.q-editor__content hr{border:0;outline:0;margin:1px;height:1px;background:rgba(0,0,0,.12)}.q-editor__content:empty:not(:focus):before{content:attr(placeholder);opacity:.7}.q-editor__toolbar{border-bottom:1px solid rgba(0,0,0,.12);min-height:32px}.q-editor__toolbars-container{max-width:100%}.q-editor .q-btn{margin:4px}.q-editor__toolbar-group{position:relative;margin:0 4px}.q-editor__toolbar-group+.q-editor__toolbar-group:before{content:"";position:absolute;left:-4px;top:4px;bottom:4px;width:1px;background:rgba(0,0,0,.12)}.q-editor__link-input{color:inherit;text-decoration:none;text-transform:none;border:none;border-radius:0;background:none;outline:0}.q-editor--flat,.q-editor--flat .q-editor__toolbar{border:0}.q-editor--dense .q-editor__toolbar-group{display:flex;align-items:center;flex-wrap:nowrap}.q-editor--dark{border-color:#ffffff47}.q-editor--dark .q-editor__content hr{background:rgba(255,255,255,.28)}.q-editor--dark .q-editor__toolbar{border-color:#ffffff47}.q-editor--dark .q-editor__toolbar-group+.q-editor__toolbar-group:before{background:rgba(255,255,255,.28)}.q-expansion-item__border{opacity:0}.q-expansion-item__toggle-icon{position:relative;transition:transform .3s}.q-expansion-item__toggle-icon--rotated{transform:rotate(180deg)}.q-expansion-item__toggle-focus{width:1em!important;height:1em!important;position:relative!important}.q-expansion-item__toggle-focus+.q-expansion-item__toggle-icon{margin-top:-1em}.q-expansion-item--standard.q-expansion-item--expanded>div>.q-expansion-item__border{opacity:1}.q-expansion-item--popup{transition:padding .5s}.q-expansion-item--popup>.q-expansion-item__container{border:1px solid rgba(0,0,0,.12)}.q-expansion-item--popup>.q-expansion-item__container>.q-separator{display:none}.q-expansion-item--popup.q-expansion-item--collapsed{padding:0 15px}.q-expansion-item--popup.q-expansion-item--expanded{padding:15px 0}.q-expansion-item--popup.q-expansion-item--expanded+.q-expansion-item--popup.q-expansion-item--expanded{padding-top:0}.q-expansion-item--popup.q-expansion-item--collapsed:not(:first-child)>.q-expansion-item__container{border-top-width:0}.q-expansion-item--popup.q-expansion-item--expanded+.q-expansion-item--popup.q-expansion-item--collapsed>.q-expansion-item__container{border-top-width:1px}.q-expansion-item__content>.q-card{box-shadow:none;border-radius:0}.q-expansion-item:first-child>div>.q-expansion-item__border--top{opacity:0}.q-expansion-item:last-child>div>.q-expansion-item__border--bottom{opacity:0}.q-expansion-item--expanded+.q-expansion-item--expanded>div>.q-expansion-item__border--top{opacity:0}.q-expansion-item--expanded .q-textarea--autogrow textarea{animation:q-expansion-done 0s}@keyframes q-expansion-done{0%{--q-exp-done: 1}}.z-fab{z-index:990}.q-fab{position:relative;vertical-align:middle}.q-fab>.q-btn{width:100%}.q-fab--form-rounded{border-radius:28px}.q-fab--form-square{border-radius:4px}.q-fab__icon,.q-fab__active-icon{transition:opacity .4s,transform .4s}.q-fab__icon{opacity:1;transform:rotate(0)}.q-fab__active-icon{opacity:0;transform:rotate(-180deg)}.q-fab__label--external{position:absolute;padding:0 8px;transition:opacity .18s cubic-bezier(.65,.815,.735,.395)}.q-fab__label--external-hidden{opacity:0;pointer-events:none}.q-fab__label--external-left{top:50%;left:-12px;transform:translate(-100%,-50%)}.q-fab__label--external-right{top:50%;right:-12px;transform:translate(100%,-50%)}.q-fab__label--external-bottom{bottom:-12px;left:50%;transform:translate(-50%,100%)}.q-fab__label--external-top{top:-12px;left:50%;transform:translate(-50%,-100%)}.q-fab__label--internal{padding:0;transition:font-size .12s cubic-bezier(.65,.815,.735,.395),max-height .12s cubic-bezier(.65,.815,.735,.395),opacity .07s cubic-bezier(.65,.815,.735,.395);max-height:30px}.q-fab__label--internal-hidden{font-size:0;opacity:0}.q-fab__label--internal-top{padding-bottom:.12em}.q-fab__label--internal-bottom{padding-top:.12em}.q-fab__label--internal-top.q-fab__label--internal-hidden,.q-fab__label--internal-bottom.q-fab__label--internal-hidden{max-height:0}.q-fab__label--internal-left{padding-left:.285em;padding-right:.571em}.q-fab__label--internal-right{padding-right:.285em;padding-left:.571em}.q-fab__icon-holder{min-width:24px;min-height:24px;position:relative}.q-fab__icon-holder--opened .q-fab__icon{transform:rotate(180deg);opacity:0}.q-fab__icon-holder--opened .q-fab__active-icon{transform:rotate(0);opacity:1}.q-fab__actions{position:absolute;opacity:0;transition:transform .18s ease-in,opacity .18s ease-in;pointer-events:none;align-items:center;justify-content:center;align-self:center;padding:3px}.q-fab__actions .q-btn{margin:5px}.q-fab__actions--right{transform-origin:0 50%;transform:scale(.4) translate(-62px);height:56px;left:100%;margin-left:9px}.q-fab__actions--left{transform-origin:100% 50%;transform:scale(.4) translate(62px);height:56px;right:100%;margin-right:9px;flex-direction:row-reverse}.q-fab__actions--up{transform-origin:50% 100%;transform:scale(.4) translateY(62px);width:56px;bottom:100%;margin-bottom:9px;flex-direction:column-reverse}.q-fab__actions--down{transform-origin:50% 0;transform:scale(.4) translateY(-62px);width:56px;top:100%;margin-top:9px;flex-direction:column}.q-fab__actions--up,.q-fab__actions--down{left:50%;margin-left:-28px}.q-fab__actions--opened{opacity:1;transform:scale(1) translate(.1px);pointer-events:all}.q-fab--align-left>.q-fab__actions--up,.q-fab--align-left>.q-fab__actions--down{align-items:flex-start;left:28px}.q-fab--align-right>.q-fab__actions--up,.q-fab--align-right>.q-fab__actions--down{align-items:flex-end;left:auto;right:0}.q-field{font-size:14px}.q-field ::-ms-clear,.q-field ::-ms-reveal{display:none}.q-field--with-bottom{padding-bottom:20px}.q-field__marginal{height:56px;color:#0000008a;font-size:24px}.q-field__marginal>*+*{margin-left:2px}.q-field__marginal .q-avatar{font-size:32px}.q-field__before,.q-field__prepend{padding-right:12px}.q-field__after,.q-field__append{padding-left:12px}.q-field__after:empty,.q-field__append:empty{display:none}.q-field__append+.q-field__append{padding-left:2px}.q-field__inner{text-align:left}.q-field__bottom{font-size:12px;min-height:20px;line-height:1;color:#0000008a;padding:8px 12px 0;backface-visibility:hidden}.q-field__bottom--animated{transform:translateY(100%);position:absolute;left:0;right:0;bottom:0}.q-field__messages{line-height:1}.q-field__messages>div{word-break:break-word;word-wrap:break-word;overflow-wrap:break-word}.q-field__messages>div+div{margin-top:4px}.q-field__counter{padding-left:8px;line-height:1}.q-field--item-aligned{padding:8px 16px}.q-field--item-aligned .q-field__before{min-width:56px}.q-field__control-container{height:inherit}.q-field__control{color:var(--q-primary);height:56px;max-width:100%;outline:none}.q-field__control:before,.q-field__control:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.q-field__control:before{border-radius:inherit}.q-field__shadow{top:8px;opacity:0;overflow:hidden;white-space:pre-wrap;transition:opacity .36s cubic-bezier(.4,0,.2,1)}.q-field__shadow+.q-field__native::placeholder{transition:opacity .36s cubic-bezier(.4,0,.2,1)}.q-field__shadow+.q-field__native:focus::placeholder{opacity:0}.q-field__native,.q-field__prefix,.q-field__suffix,.q-field__input{font-weight:400;line-height:28px;letter-spacing:.00937em;text-decoration:inherit;text-transform:inherit;border:none;border-radius:0;background:none;color:#000000de;outline:0;padding:6px 0}.q-field__native,.q-field__input{width:100%;min-width:0;outline:0!important;-webkit-user-select:auto;user-select:auto}.q-field__native:-webkit-autofill,.q-field__input:-webkit-autofill{-webkit-animation-name:q-autofill;-webkit-animation-fill-mode:both}.q-field__native:-webkit-autofill+.q-field__label,.q-field__input:-webkit-autofill+.q-field__label{transform:translateY(-40%) scale(.75)}.q-field__native[type=color]+.q-field__label,.q-field__native[type=date]+.q-field__label,.q-field__native[type=datetime-local]+.q-field__label,.q-field__native[type=month]+.q-field__label,.q-field__native[type=time]+.q-field__label,.q-field__native[type=week]+.q-field__label,.q-field__input[type=color]+.q-field__label,.q-field__input[type=date]+.q-field__label,.q-field__input[type=datetime-local]+.q-field__label,.q-field__input[type=month]+.q-field__label,.q-field__input[type=time]+.q-field__label,.q-field__input[type=week]+.q-field__label{transform:translateY(-40%) scale(.75)}.q-field__native:invalid,.q-field__input:invalid{box-shadow:none}.q-field__native[type=file]{line-height:1em}.q-field__input{padding:0;height:0;min-height:24px;line-height:24px}.q-field__prefix,.q-field__suffix{transition:opacity .36s cubic-bezier(.4,0,.2,1);white-space:nowrap}.q-field__prefix{padding-right:4px}.q-field__suffix{padding-left:4px}.q-field--readonly .q-placeholder,.q-field--disabled .q-placeholder{opacity:1!important}.q-field--readonly.q-field--labeled .q-field__native,.q-field--readonly.q-field--labeled .q-field__input{cursor:default}.q-field--readonly.q-field--float .q-field__native,.q-field--readonly.q-field--float .q-field__input{cursor:text}.q-field--disabled .q-field__inner{cursor:not-allowed}.q-field--disabled .q-field__control{pointer-events:none}.q-field--disabled .q-field__control>div{opacity:.6!important}.q-field--disabled .q-field__control>div,.q-field--disabled .q-field__control>div *{outline:0!important}.q-field__label{left:0;top:18px;max-width:100%;color:#0009;font-size:16px;line-height:20px;font-weight:400;letter-spacing:.00937em;text-decoration:inherit;text-transform:inherit;transform-origin:left top;transition:transform .36s cubic-bezier(.4,0,.2,1),max-width .324s cubic-bezier(.4,0,.2,1);backface-visibility:hidden}.q-field--float .q-field__label{max-width:133%;transform:translateY(-40%) scale(.75);transition:transform .36s cubic-bezier(.4,0,.2,1),max-width .396s cubic-bezier(.4,0,.2,1)}.q-field--highlighted .q-field__label{color:currentColor}.q-field--highlighted .q-field__shadow{opacity:.5}.q-field--filled .q-field__control{padding:0 12px;background:rgba(0,0,0,.05);border-radius:4px 4px 0 0}.q-field--filled .q-field__control:before{background:rgba(0,0,0,.05);border-bottom:1px solid rgba(0,0,0,.42);opacity:0;transition:opacity .36s cubic-bezier(.4,0,.2,1),background .36s cubic-bezier(.4,0,.2,1)}.q-field--filled .q-field__control:hover:before{opacity:1}.q-field--filled .q-field__control:after{height:2px;top:auto;transform-origin:center bottom;transform:scale3d(0,1,1);background:currentColor;transition:transform .36s cubic-bezier(.4,0,.2,1)}.q-field--filled.q-field--rounded .q-field__control{border-radius:28px 28px 0 0}.q-field--filled.q-field--highlighted .q-field__control:before{opacity:1;background:rgba(0,0,0,.12)}.q-field--filled.q-field--highlighted .q-field__control:after{transform:scaleZ(1)}.q-field--filled.q-field--dark .q-field__control,.q-field--filled.q-field--dark .q-field__control:before{background:rgba(255,255,255,.07)}.q-field--filled.q-field--dark.q-field--highlighted .q-field__control:before{background:rgba(255,255,255,.1)}.q-field--filled.q-field--readonly .q-field__control:before{opacity:1;background:transparent;border-bottom-style:dashed}.q-field--outlined .q-field__control{border-radius:4px;padding:0 12px}.q-field--outlined .q-field__control:before{border:1px solid rgba(0,0,0,.24);transition:border-color .36s cubic-bezier(.4,0,.2,1)}.q-field--outlined .q-field__control:hover:before{border-color:#000}.q-field--outlined .q-field__control:after{height:inherit;border-radius:inherit;border:2px solid transparent;transition:border-color .36s cubic-bezier(.4,0,.2,1)}.q-field--outlined .q-field__native:-webkit-autofill,.q-field--outlined .q-field__input:-webkit-autofill{margin-top:1px;margin-bottom:1px}.q-field--outlined.q-field--rounded .q-field__control{border-radius:28px}.q-field--outlined.q-field--highlighted .q-field__control:hover:before{border-color:transparent}.q-field--outlined.q-field--highlighted .q-field__control:after{border-color:currentColor;border-width:2px;transform:scaleZ(1)}.q-field--outlined.q-field--readonly .q-field__control:before{border-style:dashed}.q-field--standard .q-field__control:before{border-bottom:1px solid rgba(0,0,0,.24);transition:border-color .36s cubic-bezier(.4,0,.2,1)}.q-field--standard .q-field__control:hover:before{border-color:#000}.q-field--standard .q-field__control:after{height:2px;top:auto;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;transform-origin:center bottom;transform:scale3d(0,1,1);background:currentColor;transition:transform .36s cubic-bezier(.4,0,.2,1)}.q-field--standard.q-field--highlighted .q-field__control:after{transform:scaleZ(1)}.q-field--standard.q-field--readonly .q-field__control:before{border-bottom-style:dashed}.q-field--dark .q-field__control:before{border-color:#fff9}.q-field--dark .q-field__control:hover:before{border-color:#fff}.q-field--dark .q-field__native,.q-field--dark .q-field__prefix,.q-field--dark .q-field__suffix,.q-field--dark .q-field__input{color:#fff}.q-field--dark:not(.q-field--highlighted) .q-field__label,.q-field--dark .q-field__marginal,.q-field--dark .q-field__bottom{color:#ffffffb3}.q-field--standout .q-field__control{padding:0 12px;background:rgba(0,0,0,.05);border-radius:4px;transition:box-shadow .36s cubic-bezier(.4,0,.2,1),background-color .36s cubic-bezier(.4,0,.2,1)}.q-field--standout .q-field__control:before{background:rgba(0,0,0,.07);opacity:0;transition:opacity .36s cubic-bezier(.4,0,.2,1),background .36s cubic-bezier(.4,0,.2,1)}.q-field--standout .q-field__control:hover:before{opacity:1}.q-field--standout.q-field--rounded .q-field__control{border-radius:28px}.q-field--standout.q-field--highlighted .q-field__control{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;background:#000}.q-field--standout.q-field--highlighted .q-field__native,.q-field--standout.q-field--highlighted .q-field__prefix,.q-field--standout.q-field--highlighted .q-field__suffix,.q-field--standout.q-field--highlighted .q-field__prepend,.q-field--standout.q-field--highlighted .q-field__append,.q-field--standout.q-field--highlighted .q-field__input{color:#fff}.q-field--standout.q-field--readonly .q-field__control:before{opacity:1;background:transparent;border:1px dashed rgba(0,0,0,.24)}.q-field--standout.q-field--dark .q-field__control{background:rgba(255,255,255,.07)}.q-field--standout.q-field--dark .q-field__control:before{background:rgba(255,255,255,.07)}.q-field--standout.q-field--dark.q-field--highlighted .q-field__control{background:#fff}.q-field--standout.q-field--dark.q-field--highlighted .q-field__native,.q-field--standout.q-field--dark.q-field--highlighted .q-field__prefix,.q-field--standout.q-field--dark.q-field--highlighted .q-field__suffix,.q-field--standout.q-field--dark.q-field--highlighted .q-field__prepend,.q-field--standout.q-field--dark.q-field--highlighted .q-field__append,.q-field--standout.q-field--dark.q-field--highlighted .q-field__input{color:#000}.q-field--standout.q-field--dark.q-field--readonly .q-field__control:before{border-color:#ffffff3d}.q-field--labeled .q-field__native,.q-field--labeled .q-field__prefix,.q-field--labeled .q-field__suffix{line-height:24px;padding-top:24px;padding-bottom:8px}.q-field--labeled .q-field__shadow{top:0}.q-field--labeled:not(.q-field--float) .q-field__prefix,.q-field--labeled:not(.q-field--float) .q-field__suffix{opacity:0}.q-field--labeled:not(.q-field--float) .q-field__native::placeholder,.q-field--labeled:not(.q-field--float) .q-field__input::placeholder{color:transparent}.q-field--labeled.q-field--dense .q-field__native,.q-field--labeled.q-field--dense .q-field__prefix,.q-field--labeled.q-field--dense .q-field__suffix{padding-top:14px;padding-bottom:2px}.q-field--dense .q-field__shadow{top:0}.q-field--dense .q-field__control,.q-field--dense .q-field__marginal{height:40px}.q-field--dense .q-field__bottom{font-size:11px}.q-field--dense .q-field__label{font-size:14px;top:10px}.q-field--dense .q-field__before,.q-field--dense .q-field__prepend{padding-right:6px}.q-field--dense .q-field__after,.q-field--dense .q-field__append{padding-left:6px}.q-field--dense .q-field__append+.q-field__append{padding-left:2px}.q-field--dense .q-field__marginal .q-avatar{font-size:24px}.q-field--dense.q-field--float .q-field__label{transform:translateY(-30%) scale(.75)}.q-field--dense .q-field__native:-webkit-autofill+.q-field__label,.q-field--dense .q-field__input:-webkit-autofill+.q-field__label{transform:translateY(-30%) scale(.75)}.q-field--dense .q-field__native[type=color]+.q-field__label,.q-field--dense .q-field__native[type=date]+.q-field__label,.q-field--dense .q-field__native[type=datetime-local]+.q-field__label,.q-field--dense .q-field__native[type=month]+.q-field__label,.q-field--dense .q-field__native[type=time]+.q-field__label,.q-field--dense .q-field__native[type=week]+.q-field__label,.q-field--dense .q-field__input[type=color]+.q-field__label,.q-field--dense .q-field__input[type=date]+.q-field__label,.q-field--dense .q-field__input[type=datetime-local]+.q-field__label,.q-field--dense .q-field__input[type=month]+.q-field__label,.q-field--dense .q-field__input[type=time]+.q-field__label,.q-field--dense .q-field__input[type=week]+.q-field__label{transform:translateY(-30%) scale(.75)}.q-field--borderless .q-field__bottom,.q-field--borderless.q-field--dense .q-field__control,.q-field--standard .q-field__bottom,.q-field--standard.q-field--dense .q-field__control{padding-left:0;padding-right:0}.q-field--error .q-field__label{animation:q-field-label .36s}.q-field--error .q-field__bottom{color:var(--q-negative)}.q-field__focusable-action{opacity:.6;cursor:pointer;outline:0!important;border:0;color:inherit;background:transparent;padding:0}.q-field__focusable-action:hover,.q-field__focusable-action:focus{opacity:1}.q-field--auto-height .q-field__control{height:auto}.q-field--auto-height .q-field__control,.q-field--auto-height .q-field__native{min-height:56px}.q-field--auto-height .q-field__native{align-items:center}.q-field--auto-height .q-field__control-container{padding-top:0}.q-field--auto-height .q-field__native,.q-field--auto-height .q-field__prefix,.q-field--auto-height .q-field__suffix{line-height:18px}.q-field--auto-height.q-field--labeled .q-field__control-container{padding-top:24px}.q-field--auto-height.q-field--labeled .q-field__shadow{top:24px}.q-field--auto-height.q-field--labeled .q-field__native,.q-field--auto-height.q-field--labeled .q-field__prefix,.q-field--auto-height.q-field--labeled .q-field__suffix{padding-top:0}.q-field--auto-height.q-field--labeled .q-field__native{min-height:24px}.q-field--auto-height.q-field--dense .q-field__control,.q-field--auto-height.q-field--dense .q-field__native{min-height:40px}.q-field--auto-height.q-field--dense.q-field--labeled .q-field__control-container{padding-top:14px}.q-field--auto-height.q-field--dense.q-field--labeled .q-field__shadow{top:14px}.q-field--auto-height.q-field--dense.q-field--labeled .q-field__native{min-height:24px}.q-field--square .q-field__control{border-radius:0!important}.q-transition--field-message-enter-active,.q-transition--field-message-leave-active{transition:transform .6s cubic-bezier(.86,0,.07,1),opacity .6s cubic-bezier(.86,0,.07,1)}.q-transition--field-message-enter-from,.q-transition--field-message-leave-to{opacity:0;transform:translateY(-10px)}.q-transition--field-message-leave-from,.q-transition--field-message-leave-active{position:absolute}@keyframes q-field-label{40%{margin-left:2px}60%,80%{margin-left:-2px}70%,90%{margin-left:2px}}@keyframes q-autofill{to{background:transparent;color:inherit}}.q-file .q-field__native{word-break:break-all;overflow:hidden}.q-file .q-field__input{opacity:0!important}.q-file .q-field__input::-webkit-file-upload-button{cursor:pointer}.q-file__filler{visibility:hidden;width:100%;border:none;padding:0}.q-file__dnd{outline:1px dashed currentColor;outline-offset:-4px}.q-form{position:relative}.q-img{position:relative;width:100%;display:inline-block;vertical-align:middle;overflow:hidden}.q-img__loading .q-spinner{font-size:50px}.q-img__container{border-radius:inherit;font-size:0}.q-img__image{border-radius:inherit;width:100%;height:100%;opacity:0}.q-img__image--with-transition{transition:opacity .28s ease-in}.q-img__image--loaded{opacity:1}.q-img__content{border-radius:inherit;pointer-events:none}.q-img__content>div{pointer-events:all;position:absolute;padding:16px;color:#fff;background:rgba(0,0,0,.47)}.q-img--no-menu .q-img__image,.q-img--no-menu .q-img__placeholder{pointer-events:none}.q-inner-loading{background:rgba(255,255,255,.6)}.q-inner-loading--dark{background:rgba(0,0,0,.4)}.q-inner-loading__label{margin-top:8px}.q-textarea .q-field__control{min-height:56px;height:auto}.q-textarea .q-field__control-container{padding-top:2px;padding-bottom:2px}.q-textarea .q-field__shadow{top:2px;bottom:2px}.q-textarea .q-field__native,.q-textarea .q-field__prefix,.q-textarea .q-field__suffix{line-height:18px}.q-textarea .q-field__native{resize:vertical;padding-top:17px;min-height:52px}.q-textarea.q-field--labeled .q-field__control-container{padding-top:26px}.q-textarea.q-field--labeled .q-field__shadow{top:26px}.q-textarea.q-field--labeled .q-field__native,.q-textarea.q-field--labeled .q-field__prefix,.q-textarea.q-field--labeled .q-field__suffix{padding-top:0}.q-textarea.q-field--labeled .q-field__native{min-height:26px;padding-top:1px}.q-textarea--autogrow .q-field__native{resize:none}.q-textarea.q-field--dense .q-field__control,.q-textarea.q-field--dense .q-field__native{min-height:36px}.q-textarea.q-field--dense .q-field__native{padding-top:9px}.q-textarea.q-field--dense.q-field--labeled .q-field__control-container{padding-top:14px}.q-textarea.q-field--dense.q-field--labeled .q-field__shadow{top:14px}.q-textarea.q-field--dense.q-field--labeled .q-field__native{min-height:24px;padding-top:3px}.q-textarea.q-field--dense.q-field--labeled .q-field__prefix,.q-textarea.q-field--dense.q-field--labeled .q-field__suffix{padding-top:2px}body.mobile .q-textarea .q-field__native,.q-textarea.disabled .q-field__native{resize:none}.q-intersection{position:relative}.q-item{min-height:48px;padding:8px 16px;color:inherit;transition:color .3s,background-color .3s}.q-item__section--side{color:#757575;align-items:flex-start;padding-right:16px;width:auto;min-width:0;max-width:100%}.q-item__section--side>.q-icon{font-size:24px}.q-item__section--side>.q-avatar{font-size:40px}.q-item__section--avatar{color:inherit;min-width:56px}.q-item__section--thumbnail img{width:100px;height:56px}.q-item__section--nowrap{white-space:nowrap}.q-item>.q-item__section--thumbnail:first-child,.q-item>.q-focus-helper+.q-item__section--thumbnail{margin-left:-16px}.q-item>.q-item__section--thumbnail:last-of-type{margin-right:-16px}.q-item__label{line-height:1.2em!important;max-width:100%}.q-item__label--overline{color:#000000b3}.q-item__label--caption{color:#0000008a}.q-item__label--header{color:#757575;padding:16px;font-size:.875rem;line-height:1.25rem;letter-spacing:.01786em}.q-separator--spaced+.q-item__label--header,.q-list--padding .q-item__label--header{padding-top:8px}.q-item__label+.q-item__label{margin-top:4px}.q-item__section--main{width:auto;min-width:0;max-width:100%;flex:10000 1 0%}.q-item__section--main+.q-item__section--main{margin-left:8px}.q-item__section--main~.q-item__section--side{align-items:flex-end;padding-right:0;padding-left:16px}.q-item__section--main.q-item__section--thumbnail{margin-left:0;margin-right:-16px}.q-list--bordered{border:1px solid rgba(0,0,0,.12)}.q-list--separator>.q-item-type+.q-item-type,.q-list--separator>.q-virtual-scroll__content>.q-item-type+.q-item-type{border-top:1px solid rgba(0,0,0,.12)}.q-list--padding{padding:8px 0}.q-list--dense>.q-item,.q-item--dense{min-height:32px;padding:2px 16px}.q-list--dark.q-list--separator>.q-item-type+.q-item-type,.q-list--dark.q-list--separator>.q-virtual-scroll__content>.q-item-type+.q-item-type{border-top-color:#ffffff47}.q-list--dark,.q-item--dark{color:#fff;border-color:#ffffff47}.q-list--dark .q-item__section--side:not(.q-item__section--avatar),.q-item--dark .q-item__section--side:not(.q-item__section--avatar){color:#ffffffb3}.q-list--dark .q-item__label--header,.q-item--dark .q-item__label--header{color:#ffffffa3}.q-list--dark .q-item__label--overline,.q-list--dark .q-item__label--caption,.q-item--dark .q-item__label--overline,.q-item--dark .q-item__label--caption{color:#fffc}.q-item{position:relative}.q-item.q-router-link--active,.q-item--active{color:var(--q-primary)}.q-knob{font-size:48px}.q-knob--editable{cursor:pointer;outline:0}.q-knob--editable:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;box-shadow:none;transition:box-shadow .24s ease-in-out}.q-knob--editable:focus:before{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f}body.body--dark .q-knob--editable:focus:before{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-layout{width:100%;outline:0}.q-layout-container{position:relative;width:100%;height:100%}.q-layout-container .q-layout{min-height:100%}.q-layout-container>div{transform:translateZ(0)}.q-layout-container>div>div{min-height:0;max-height:100%}.q-layout__shadow{width:100%}.q-layout__shadow:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:0 0 10px 2px #0003,0 0 10px #0000003d}.q-layout__section--marginal{background-color:var(--q-primary);color:#fff}.q-header--hidden{transform:translateY(-110%)}.q-header--bordered{border-bottom:1px solid rgba(0,0,0,.12)}.q-header .q-layout__shadow{bottom:-10px}.q-header .q-layout__shadow:after{bottom:10px}.q-footer--hidden{transform:translateY(110%)}.q-footer--bordered{border-top:1px solid rgba(0,0,0,.12)}.q-footer .q-layout__shadow{top:-10px}.q-footer .q-layout__shadow:after{top:10px}.q-header,.q-footer{z-index:2000}.q-drawer{position:absolute;top:0;bottom:0;background:#fff;z-index:1000}.q-drawer--on-top{z-index:3000}.q-drawer--left{left:0;transform:translate(-100%)}.q-drawer--left.q-drawer--bordered{border-right:1px solid rgba(0,0,0,.12)}.q-drawer--left .q-layout__shadow{left:10px;right:-10px}.q-drawer--left .q-layout__shadow:after{right:10px}.q-drawer--right{right:0;transform:translate(100%)}.q-drawer--right.q-drawer--bordered{border-left:1px solid rgba(0,0,0,.12)}.q-drawer--right .q-layout__shadow{left:-10px}.q-drawer--right .q-layout__shadow:after{left:10px}.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini{padding:0!important}.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item,.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__section{text-align:center;justify-content:center;padding-left:0;padding-right:0;min-width:0}.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__label,.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__section--main,.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__section--side~.q-item__section--side{display:none}.q-drawer--mini .q-mini-drawer-hide,.q-drawer--mini .q-expansion-item__content{display:none}.q-drawer--mini-animate .q-drawer__content{overflow-x:hidden!important;white-space:nowrap}.q-drawer--standard .q-mini-drawer-only,.q-drawer--mobile .q-mini-drawer-only,.q-drawer--mobile .q-mini-drawer-hide{display:none}.q-drawer__backdrop{z-index:2999!important;will-change:background-color}.q-drawer__opener{z-index:2001;height:100%;width:15px;-webkit-user-select:none;user-select:none}.q-layout,.q-header,.q-footer,.q-page{position:relative}.q-page-sticky--shrink{pointer-events:none}.q-page-sticky--shrink>div{display:inline-block;pointer-events:auto}body.q-ios-padding .q-layout--standard .q-header>.q-toolbar:nth-child(1),body.q-ios-padding .q-layout--standard .q-header>.q-tabs:nth-child(1) .q-tabs-head,body.q-ios-padding .q-layout--standard .q-drawer--top-padding .q-drawer__content{padding-top:20px;min-height:70px;padding-top:env(safe-area-inset-top);min-height:calc(env(safe-area-inset-top) + 50px)}body.q-ios-padding .q-layout--standard .q-footer>.q-toolbar:last-child,body.q-ios-padding .q-layout--standard .q-footer>.q-tabs:last-child .q-tabs-head,body.q-ios-padding .q-layout--standard .q-drawer--top-padding .q-drawer__content{padding-bottom:env(safe-area-inset-bottom);min-height:calc(env(safe-area-inset-bottom) + 50px)}.q-body--layout-animate .q-drawer__backdrop{transition:background-color .12s!important}.q-body--layout-animate .q-drawer{transition:transform .12s,width .12s,top .12s,bottom .12s!important}.q-body--layout-animate .q-layout__section--marginal{transition:transform .12s,left .12s,right .12s!important}.q-body--layout-animate .q-page-container{transition:padding-top .12s,padding-right .12s,padding-bottom .12s,padding-left .12s!important}.q-body--layout-animate .q-page-sticky{transition:transform .12s,left .12s,right .12s,top .12s,bottom .12s!important}body:not(.q-body--layout-animate) .q-layout--prevent-focus{visibility:hidden}.q-body--drawer-toggle{overflow-x:hidden!important}@media (max-width: 599.98px){.q-layout-padding{padding:8px}}@media (min-width: 600px) and (max-width: 1439.98px){.q-layout-padding{padding:16px}}@media (min-width: 1440px){.q-layout-padding{padding:24px}}body.body--dark .q-header,body.body--dark .q-footer,body.body--dark .q-drawer{border-color:#ffffff47}body.body--dark .q-layout__shadow:after{box-shadow:0 0 10px 2px #fff3,0 0 10px #ffffff3d}body.platform-ios .q-layout--containerized{position:unset!important}.q-linear-progress{--q-linear-progress-speed: .3s;position:relative;width:100%;overflow:hidden;font-size:4px;height:1em;color:var(--q-primary);transform:scaleZ(1)}.q-linear-progress__model,.q-linear-progress__track{transform-origin:0 0}.q-linear-progress__model--with-transition,.q-linear-progress__track--with-transition{transition:transform var(--q-linear-progress-speed)}.q-linear-progress--reverse .q-linear-progress__model,.q-linear-progress--reverse .q-linear-progress__track{transform-origin:0 100%}.q-linear-progress__model--determinate{background:currentColor}.q-linear-progress__model--indeterminate,.q-linear-progress__model--query{transition:none}.q-linear-progress__model--indeterminate:before,.q-linear-progress__model--indeterminate:after,.q-linear-progress__model--query:before,.q-linear-progress__model--query:after{background:currentColor;content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:0 0}.q-linear-progress__model--indeterminate:before,.q-linear-progress__model--query:before{animation:q-linear-progress--indeterminate 2.1s cubic-bezier(.65,.815,.735,.395) infinite}.q-linear-progress__model--indeterminate:after,.q-linear-progress__model--query:after{transform:translate3d(-101%,0,0) scaleZ(1);animation:q-linear-progress--indeterminate-short 2.1s cubic-bezier(.165,.84,.44,1) infinite;animation-delay:1.15s}.q-linear-progress__track{opacity:.4}.q-linear-progress__track--light{background:rgba(0,0,0,.26)}.q-linear-progress__track--dark{background:rgba(255,255,255,.6)}.q-linear-progress__stripe{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,rgba(255,255,255,0) 25%,rgba(255,255,255,0) 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,rgba(255,255,255,0) 75%,rgba(255,255,255,0))!important;background-size:40px 40px!important}.q-linear-progress__stripe--with-transition{transition:width var(--q-linear-progress-speed)}@keyframes q-linear-progress--indeterminate{0%{transform:translate3d(-35%,0,0) scale3d(.35,1,1)}60%{transform:translate3d(100%,0,0) scale3d(.9,1,1)}to{transform:translate3d(100%,0,0) scale3d(.9,1,1)}}@keyframes q-linear-progress--indeterminate-short{0%{transform:translate3d(-101%,0,0) scaleZ(1)}60%{transform:translate3d(107%,0,0) scale3d(.01,1,1)}to{transform:translate3d(107%,0,0) scale3d(.01,1,1)}}.q-menu{position:fixed!important;display:inline-block;max-width:95vw;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;background:#fff;border-radius:4px;overflow-y:auto;overflow-x:hidden;outline:0;max-height:65vh;z-index:6000}.q-menu--square{border-radius:0}.q-menu--dark{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-option-group--inline>div{display:inline-block}.q-pagination input{text-align:center;-moz-appearance:textfield}.q-pagination input::-webkit-outer-spin-button,.q-pagination input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.q-pagination__content{--q-pagination-gutter-parent: -2px;--q-pagination-gutter-child: 2px;margin-top:var(--q-pagination-gutter-parent);margin-left:var(--q-pagination-gutter-parent)}.q-pagination__content>.q-btn,.q-pagination__content>.q-input,.q-pagination__middle>.q-btn{margin-top:var(--q-pagination-gutter-child);margin-left:var(--q-pagination-gutter-child)}.q-parallax{position:relative;width:100%;overflow:hidden;border-radius:inherit}.q-parallax__media>img,.q-parallax__media>video{position:absolute;left:50%;bottom:0;min-width:100%;min-height:100%;will-change:transform;display:none}.q-popup-edit{padding:8px 16px}.q-popup-edit__buttons{margin-top:8px}.q-popup-edit__buttons .q-btn+.q-btn{margin-left:8px}.q-pull-to-refresh{position:relative}.q-pull-to-refresh__puller{border-radius:50%;width:40px;height:40px;color:var(--q-primary);background:#fff;box-shadow:0 0 4px #0000004d}.q-pull-to-refresh__puller--animating{transition:transform .3s,opacity .3s}.q-radio{vertical-align:middle}.q-radio__native{width:1px;height:1px}.q-radio__bg,.q-radio__icon-container{-webkit-user-select:none;user-select:none}.q-radio__bg{top:25%;left:25%;width:50%;height:50%;-webkit-print-color-adjust:exact}.q-radio__bg path{fill:currentColor}.q-radio__icon{color:currentColor;font-size:.5em}.q-radio__check{transform-origin:50% 50%;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0,0,.2,1) 0ms}.q-radio__inner{font-size:40px;width:1em;min-width:1em;height:1em;outline:0;border-radius:50%;color:#0000008a}.q-radio__inner--truthy{color:var(--q-primary)}.q-radio__inner--truthy .q-radio__check{transform:scaleZ(1)}.q-radio.disabled{opacity:.75!important}.q-radio--dark .q-radio__inner{color:#ffffffb3}.q-radio--dark .q-radio__inner:before{opacity:.32!important}.q-radio--dark .q-radio__inner--truthy{color:var(--q-primary)}.q-radio--dense .q-radio__inner{width:.5em;min-width:.5em;height:.5em}.q-radio--dense .q-radio__bg{left:0;top:0;width:100%;height:100%}.q-radio--dense .q-radio__label{padding-left:.5em}.q-radio--dense.reverse .q-radio__label{padding-left:0;padding-right:.5em}body.desktop .q-radio:not(.disabled) .q-radio__inner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:currentColor;opacity:.12;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0,0,.2,1) 0ms}body.desktop .q-radio:not(.disabled):focus .q-radio__inner:before,body.desktop .q-radio:not(.disabled):hover .q-radio__inner:before{transform:scaleZ(1)}body.desktop .q-radio--dense:not(.disabled):focus .q-radio__inner:before,body.desktop .q-radio--dense:not(.disabled):hover .q-radio__inner:before{transform:scale3d(1.5,1.5,1)}.q-rating{color:#ffeb3b;vertical-align:middle}.q-rating__icon-container{height:1em;outline:0}.q-rating__icon-container+.q-rating__icon-container{margin-left:2px}.q-rating__icon{color:currentColor;text-shadow:0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24);position:relative;opacity:.4;transition:transform .2s ease-in,opacity .2s ease-in}.q-rating__icon--hovered{transform:scale(1.3)}.q-rating__icon--active{opacity:1}.q-rating__icon--exselected{opacity:.7}.q-rating--no-dimming .q-rating__icon{opacity:1}.q-rating--editable .q-rating__icon-container{cursor:pointer}.q-responsive{position:relative;max-width:100%;max-height:100%}.q-responsive__filler{width:inherit;max-width:inherit;height:inherit;max-height:inherit}.q-responsive__content{border-radius:inherit}.q-responsive__content>*{width:100%!important;height:100%!important;max-height:100%!important;max-width:100%!important}.q-scrollarea{position:relative;contain:strict}.q-scrollarea__bar,.q-scrollarea__thumb{opacity:.2;transition:opacity .3s;will-change:opacity;cursor:grab}.q-scrollarea__bar--v,.q-scrollarea__thumb--v{right:0;width:10px}.q-scrollarea__bar--h,.q-scrollarea__thumb--h{bottom:0;height:10px}.q-scrollarea__bar--invisible,.q-scrollarea__thumb--invisible{opacity:0!important;pointer-events:none}.q-scrollarea__thumb{background:#000;border-radius:3px}.q-scrollarea__thumb:hover{opacity:.3}.q-scrollarea__thumb:active{opacity:.5}.q-scrollarea__content{min-height:100%;min-width:100%}.q-scrollarea--dark .q-scrollarea__thumb{background:#fff}.q-select--without-input .q-field__control{cursor:pointer}.q-select--with-input .q-field__control{cursor:text}.q-select .q-field__input{min-width:50px!important;cursor:text}.q-select .q-field__input--padding{padding-left:4px}.q-select__focus-target,.q-select__autocomplete-input{position:absolute;outline:0!important;width:1px;height:1px;padding:0;border:0;opacity:0}.q-select__dropdown-icon{cursor:pointer;transition:transform .28s}.q-select.q-field--readonly .q-field__control,.q-select.q-field--readonly .q-select__dropdown-icon{cursor:default}.q-select__dialog{width:90vw!important;max-width:90vw!important;max-height:calc(100vh - 70px)!important;background:#fff;display:flex;flex-direction:column}.q-select__dialog>.scroll{position:relative;background:inherit}body.mobile:not(.native-mobile) .q-select__dialog{max-height:calc(100vh - 108px)!important}body.platform-android.native-mobile .q-dialog__inner--top .q-select__dialog{max-height:calc(100vh - 24px)!important}body.platform-android:not(.native-mobile) .q-dialog__inner--top .q-select__dialog{max-height:calc(100vh - 80px)!important}body.platform-ios.native-mobile .q-dialog__inner--top>div{border-radius:4px}body.platform-ios.native-mobile .q-dialog__inner--top .q-select__dialog--focused{max-height:47vh!important}body.platform-ios:not(.native-mobile) .q-dialog__inner--top .q-select__dialog--focused{max-height:50vh!important}.q-separator{border:0;background:rgba(0,0,0,.12);margin:0;transition:background .3s,opacity .3s;flex-shrink:0}.q-separator--dark{background:rgba(255,255,255,.28)}.q-separator--horizontal{display:block;height:1px}.q-separator--horizontal-inset{margin-left:16px;margin-right:16px}.q-separator--horizontal-item-inset{margin-left:72px;margin-right:0}.q-separator--horizontal-item-thumbnail-inset{margin-left:116px;margin-right:0}.q-separator--vertical{width:1px;height:auto;align-self:stretch}.q-separator--vertical-inset{margin-top:8px;margin-bottom:8px}.q-skeleton{--q-skeleton-speed: 1.5s;background:rgba(0,0,0,.12);border-radius:4px;box-sizing:border-box}.q-skeleton--anim{cursor:wait}.q-skeleton:before{content:"\a0"}.q-skeleton--type-text{transform:scaleY(.5)}.q-skeleton--type-circle,.q-skeleton--type-QAvatar{height:48px;width:48px;border-radius:50%}.q-skeleton--type-QBtn{width:90px;height:36px}.q-skeleton--type-QBadge{width:70px;height:16px}.q-skeleton--type-QChip{width:90px;height:28px;border-radius:16px}.q-skeleton--type-QToolbar{height:50px}.q-skeleton--type-QCheckbox,.q-skeleton--type-QRadio{width:40px;height:40px;border-radius:50%}.q-skeleton--type-QToggle{width:56px;height:40px;border-radius:7px}.q-skeleton--type-QSlider,.q-skeleton--type-QRange{height:40px}.q-skeleton--type-QInput{height:56px}.q-skeleton--bordered{border:1px solid rgba(0,0,0,.05)}.q-skeleton--square{border-radius:0}.q-skeleton--anim-fade{animation:q-skeleton--fade var(--q-skeleton-speed) linear .5s infinite}.q-skeleton--anim-pulse{animation:q-skeleton--pulse var(--q-skeleton-speed) ease-in-out .5s infinite}.q-skeleton--anim-pulse-x{animation:q-skeleton--pulse-x var(--q-skeleton-speed) ease-in-out .5s infinite}.q-skeleton--anim-pulse-y{animation:q-skeleton--pulse-y var(--q-skeleton-speed) ease-in-out .5s infinite}.q-skeleton--anim-wave,.q-skeleton--anim-blink,.q-skeleton--anim-pop{position:relative;overflow:hidden;z-index:1}.q-skeleton--anim-wave:after,.q-skeleton--anim-blink:after,.q-skeleton--anim-pop:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.q-skeleton--anim-blink:after{background:rgba(255,255,255,.7);animation:q-skeleton--fade var(--q-skeleton-speed) linear .5s infinite}.q-skeleton--anim-wave:after{background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.5),rgba(255,255,255,0));animation:q-skeleton--wave var(--q-skeleton-speed) linear .5s infinite}.q-skeleton--dark{background:rgba(255,255,255,.05)}.q-skeleton--dark.q-skeleton--bordered{border:1px solid rgba(255,255,255,.25)}.q-skeleton--dark.q-skeleton--anim-wave:after{background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.1),rgba(255,255,255,0))}.q-skeleton--dark.q-skeleton--anim-blink:after{background:rgba(255,255,255,.2)}@keyframes q-skeleton--fade{0%{opacity:1}50%{opacity:.4}to{opacity:1}}@keyframes q-skeleton--pulse{0%{transform:scale(1)}50%{transform:scale(.85)}to{transform:scale(1)}}@keyframes q-skeleton--pulse-x{0%{transform:scaleX(1)}50%{transform:scaleX(.75)}to{transform:scaleX(1)}}@keyframes q-skeleton--pulse-y{0%{transform:scaleY(1)}50%{transform:scaleY(.75)}to{transform:scaleY(1)}}@keyframes q-skeleton--wave{0%{transform:translate(-100%)}to{transform:translate(100%)}}.q-slide-item{position:relative;background:white}.q-slide-item__left,.q-slide-item__right,.q-slide-item__top,.q-slide-item__bottom{visibility:hidden;font-size:14px;color:#fff}.q-slide-item__left .q-icon,.q-slide-item__right .q-icon,.q-slide-item__top .q-icon,.q-slide-item__bottom .q-icon{font-size:1.714em}.q-slide-item__left{background:#4caf50;padding:8px 16px}.q-slide-item__left>div{transform-origin:left center}.q-slide-item__right{background:#ff9800;padding:8px 16px}.q-slide-item__right>div{transform-origin:right center}.q-slide-item__top{background:#2196f3;padding:16px 8px}.q-slide-item__top>div{transform-origin:top center}.q-slide-item__bottom{background:#9c27b0;padding:16px 8px}.q-slide-item__bottom>div{transform-origin:bottom center}.q-slide-item__content{background:inherit;transition:transform .2s ease-in;-webkit-user-select:none;user-select:none;cursor:pointer}.q-slider{position:relative}.q-slider--h{width:100%}.q-slider--v{height:200px}.q-slider--editable .q-slider__track-container{cursor:grab}.q-slider__track-container{outline:0}.q-slider__track-container--h{width:100%;padding:12px 0}.q-slider__track-container--h .q-slider__selection{will-change:width,left}.q-slider__track-container--v{height:100%;padding:0 12px}.q-slider__track-container--v .q-slider__selection{will-change:height,top}.q-slider__track{color:var(--q-primary);background:rgba(0,0,0,.1);border-radius:4px;width:inherit;height:inherit}.q-slider__inner{background:rgba(0,0,0,.1);border-radius:inherit;width:100%;height:100%}.q-slider__selection{background:currentColor;border-radius:inherit;width:100%;height:100%}.q-slider__markers{color:#0000004d;border-radius:inherit;width:100%;height:100%}.q-slider__markers:after{content:"";position:absolute;background:currentColor}.q-slider__markers--h{background-image:repeating-linear-gradient(to right,currentColor,currentColor 2px,rgba(255,255,255,0) 0,rgba(255,255,255,0))}.q-slider__markers--h:after{height:100%;width:2px;top:0;right:0}.q-slider__markers--v{background-image:repeating-linear-gradient(to bottom,currentColor,currentColor 2px,rgba(255,255,255,0) 0,rgba(255,255,255,0))}.q-slider__markers--v:after{width:100%;height:2px;left:0;bottom:0}.q-slider__marker-labels-container{position:relative;width:100%;height:100%;min-height:24px;min-width:24px}.q-slider__marker-labels{position:absolute}.q-slider__marker-labels--h-standard{top:0}.q-slider__marker-labels--h-switched{bottom:0}.q-slider__marker-labels--h-ltr{transform:translate(-50%)}.q-slider__marker-labels--h-rtl{transform:translate(50%)}.q-slider__marker-labels--v-standard{left:4px}.q-slider__marker-labels--v-switched{right:4px}.q-slider__marker-labels--v-ltr{transform:translateY(-50%)}.q-slider__marker-labels--v-rtl{transform:translateY(50%)}.q-slider__thumb{z-index:1;outline:0;color:var(--q-primary);transition:transform .18s ease-out,fill .18s ease-out,stroke .18s ease-out}.q-slider__thumb.q-slider--focus{opacity:1!important}.q-slider__thumb--h{top:50%;will-change:left}.q-slider__thumb--h-ltr{transform:scale(1) translate(-50%,-50%)}.q-slider__thumb--h-rtl{transform:scale(1) translate(50%,-50%)}.q-slider__thumb--v{left:50%;will-change:top}.q-slider__thumb--v-ltr{transform:scale(1) translate(-50%,-50%)}.q-slider__thumb--v-rtl{transform:scale(1) translate(-50%,50%)}.q-slider__thumb-shape{top:0;left:0;stroke-width:3.5;stroke:currentColor;transition:transform .28s}.q-slider__thumb-shape path{stroke:currentColor;fill:currentColor}.q-slider__focus-ring{border-radius:50%;opacity:0;transition:transform .26667s ease-out,opacity .26667s ease-out,background-color .26667s ease-out;transition-delay:.14s}.q-slider__pin{opacity:0;white-space:nowrap;transition:opacity .28s ease-out;transition-delay:.14s}.q-slider__pin:before{content:"";width:0;height:0;position:absolute}.q-slider__pin--h:before{border-left:6px solid transparent;border-right:6px solid transparent;left:50%;transform:translate(-50%)}.q-slider__pin--h-standard{bottom:100%}.q-slider__pin--h-standard:before{bottom:2px;border-top:6px solid currentColor}.q-slider__pin--h-switched{top:100%}.q-slider__pin--h-switched:before{top:2px;border-bottom:6px solid currentColor}.q-slider__pin--v{top:0}.q-slider__pin--v:before{top:50%;transform:translateY(-50%);border-top:6px solid transparent;border-bottom:6px solid transparent}.q-slider__pin--v-standard{left:100%}.q-slider__pin--v-standard:before{left:2px;border-right:6px solid currentColor}.q-slider__pin--v-switched{right:100%}.q-slider__pin--v-switched:before{right:2px;border-left:6px solid currentColor}.q-slider__label{z-index:1;white-space:nowrap;position:absolute}.q-slider__label--h{left:50%;transform:translate(-50%)}.q-slider__label--h-standard{bottom:7px}.q-slider__label--h-switched{top:7px}.q-slider__label--v{top:50%;transform:translateY(-50%)}.q-slider__label--v-standard{left:7px}.q-slider__label--v-switched{right:7px}.q-slider__text-container{min-height:25px;padding:2px 8px;border-radius:4px;background:currentColor;position:relative;text-align:center}.q-slider__text{color:#fff;font-size:12px}.q-slider--no-value .q-slider__thumb,.q-slider--no-value .q-slider__inner,.q-slider--no-value .q-slider__selection{opacity:0}.q-slider--focus .q-slider__focus-ring,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__focus-ring{background:currentColor;transform:scale3d(1.55,1.55,1);opacity:.25}.q-slider--focus .q-slider__thumb,.q-slider--focus .q-slider__inner,.q-slider--focus .q-slider__selection,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__thumb,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__inner,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__selection{opacity:1}.q-slider--inactive .q-slider__thumb--h{transition:left .28s,right .28s}.q-slider--inactive .q-slider__thumb--v{transition:top .28s,bottom .28s}.q-slider--inactive .q-slider__selection{transition:width .28s,left .28s,right .28s,height .28s,top .28s,bottom .28s}.q-slider--inactive .q-slider__text-container{transition:transform .28s}.q-slider--active{cursor:grabbing}.q-slider--active .q-slider__thumb-shape{transform:scale(1.5)}.q-slider--active .q-slider__focus-ring,.q-slider--active.q-slider--label .q-slider__thumb-shape{transform:scale(0)!important}body.desktop .q-slider.q-slider--enabled .q-slider__track-container:hover .q-slider__pin,.q-slider--label.q-slider--active .q-slider__pin,.q-slider--label .q-slider--focus .q-slider__pin,.q-slider--label.q-slider--label-always .q-slider__pin{opacity:1}.q-slider--dark .q-slider__track,.q-slider--dark .q-slider__inner{background:rgba(255,255,255,.1)}.q-slider--dark .q-slider__markers{color:#ffffff4d}.q-slider--dense .q-slider__track-container--h{padding:6px 0}.q-slider--dense .q-slider__track-container--v{padding:0 6px}.q-space{flex-grow:1!important}.q-spinner{vertical-align:middle}.q-spinner-mat{animation:q-spin 2s linear infinite;transform-origin:center center}.q-spinner-mat .path{stroke-dasharray:1,200;stroke-dashoffset:0;animation:q-mat-dash 1.5s ease-in-out infinite}@keyframes q-spin{0%{transform:rotate3d(0,0,1,0)}25%{transform:rotate3d(0,0,1,90deg)}50%{transform:rotate3d(0,0,1,180deg)}75%{transform:rotate3d(0,0,1,270deg)}to{transform:rotate3d(0,0,1,359deg)}}@keyframes q-mat-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}to{stroke-dasharray:89,200;stroke-dashoffset:-124px}}.q-splitter__panel{position:relative;z-index:0}.q-splitter__panel>.q-splitter{width:100%;height:100%}.q-splitter__separator{background-color:#0000001f;-webkit-user-select:none;user-select:none;position:relative;z-index:1}.q-splitter__separator-area>*{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.q-splitter--dark .q-splitter__separator{background-color:#ffffff47}.q-splitter--vertical>.q-splitter__panel{height:100%}.q-splitter--vertical.q-splitter--active{cursor:col-resize}.q-splitter--vertical>.q-splitter__separator{width:1px}.q-splitter--vertical>.q-splitter__separator>div{left:-6px;right:-6px}.q-splitter--vertical.q-splitter--workable>.q-splitter__separator{cursor:col-resize}.q-splitter--horizontal>.q-splitter__panel{width:100%}.q-splitter--horizontal.q-splitter--active{cursor:row-resize}.q-splitter--horizontal>.q-splitter__separator{height:1px}.q-splitter--horizontal>.q-splitter__separator>div{top:-6px;bottom:-6px}.q-splitter--horizontal.q-splitter--workable>.q-splitter__separator{cursor:row-resize}.q-splitter__before,.q-splitter__after{overflow:auto}.q-stepper{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;background:#fff}.q-stepper__title{font-size:14px;line-height:18px;letter-spacing:.1px}.q-stepper__caption{font-size:12px;line-height:14px}.q-stepper__dot{contain:layout;margin-right:8px;font-size:14px;width:24px;min-width:24px;height:24px;border-radius:50%;background:currentColor}.q-stepper__dot span{color:#fff}.q-stepper__tab{padding:8px 24px;font-size:14px;color:#9e9e9e;flex-direction:row}.q-stepper--dark{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-stepper--dark .q-stepper__dot span{color:#000}.q-stepper__tab--navigation{-webkit-user-select:none;user-select:none;cursor:pointer}.q-stepper__tab--active,.q-stepper__tab--done{color:var(--q-primary)}.q-stepper__tab--active .q-stepper__dot,.q-stepper__tab--active .q-stepper__label,.q-stepper__tab--done .q-stepper__dot,.q-stepper__tab--done .q-stepper__label{text-shadow:0 0 0 currentColor}.q-stepper__tab--disabled .q-stepper__dot{background:rgba(0,0,0,.22)}.q-stepper__tab--disabled .q-stepper__label{color:#00000052}.q-stepper__tab--error{color:var(--q-negative)}.q-stepper__tab--error-with-icon .q-stepper__dot{background:transparent!important}.q-stepper__tab--error-with-icon .q-stepper__dot span{color:currentColor;font-size:24px}.q-stepper__header{border-top-left-radius:inherit;border-top-right-radius:inherit}.q-stepper__header--border{border-bottom:1px solid rgba(0,0,0,.12)}.q-stepper__header--standard-labels .q-stepper__tab{min-height:72px;justify-content:center}.q-stepper__header--standard-labels .q-stepper__tab:first-child{justify-content:flex-start}.q-stepper__header--standard-labels .q-stepper__tab:last-child{justify-content:flex-end}.q-stepper__header--standard-labels .q-stepper__tab:only-child{justify-content:center}.q-stepper__header--standard-labels .q-stepper__dot:after{display:none}.q-stepper__header--alternative-labels .q-stepper__tab{min-height:104px;padding:24px 32px;flex-direction:column;justify-content:flex-start}.q-stepper__header--alternative-labels .q-stepper__dot{margin-right:0}.q-stepper__header--alternative-labels .q-stepper__label{margin-top:8px;text-align:center}.q-stepper__header--alternative-labels .q-stepper__label:before,.q-stepper__header--alternative-labels .q-stepper__label:after{display:none}.q-stepper__header--contracted,.q-stepper__header--contracted.q-stepper__header--alternative-labels .q-stepper__tab{min-height:72px}.q-stepper__header--contracted.q-stepper__header--alternative-labels .q-stepper__tab:first-child{align-items:flex-start}.q-stepper__header--contracted.q-stepper__header--alternative-labels .q-stepper__tab:last-child{align-items:flex-end}.q-stepper__header--contracted .q-stepper__tab{padding:24px 0}.q-stepper__header--contracted .q-stepper__tab:first-child .q-stepper__dot{transform:translate(24px)}.q-stepper__header--contracted .q-stepper__tab:last-child .q-stepper__dot{transform:translate(-24px)}.q-stepper__header--contracted .q-stepper__tab:not(:last-child) .q-stepper__dot:after{display:block!important}.q-stepper__header--contracted .q-stepper__dot{margin:0}.q-stepper__header--contracted .q-stepper__label{display:none}.q-stepper__nav{padding-top:24px}.q-stepper--flat{box-shadow:none}.q-stepper--bordered{border:1px solid rgba(0,0,0,.12)}.q-stepper--horizontal .q-stepper__step-inner{padding:24px}.q-stepper--horizontal .q-stepper__tab:first-child{border-top-left-radius:inherit}.q-stepper--horizontal .q-stepper__tab:last-child{border-top-right-radius:inherit}.q-stepper--horizontal .q-stepper__tab:first-child .q-stepper__dot:before,.q-stepper--horizontal .q-stepper__tab:last-child .q-stepper__label:after,.q-stepper--horizontal .q-stepper__tab:last-child .q-stepper__dot:after{display:none}.q-stepper--horizontal .q-stepper__tab{overflow:hidden}.q-stepper--horizontal .q-stepper__line{contain:layout}.q-stepper--horizontal .q-stepper__line:before,.q-stepper--horizontal .q-stepper__line:after{position:absolute;top:50%;height:1px;width:100vw;background:rgba(0,0,0,.12)}.q-stepper--horizontal .q-stepper__label:after,.q-stepper--horizontal .q-stepper__dot:after{content:"";left:100%;margin-left:8px}.q-stepper--horizontal .q-stepper__dot:before{content:"";right:100%;margin-right:8px}.q-stepper--horizontal>.q-stepper__nav{padding:0 24px 24px}.q-stepper--vertical{padding:16px 0}.q-stepper--vertical .q-stepper__tab{padding:12px 24px}.q-stepper--vertical .q-stepper__title{line-height:18px}.q-stepper--vertical .q-stepper__step-inner{padding:0 24px 32px 60px}.q-stepper--vertical>.q-stepper__nav{padding:24px 24px 0}.q-stepper--vertical .q-stepper__step{overflow:hidden}.q-stepper--vertical .q-stepper__dot{margin-right:12px}.q-stepper--vertical .q-stepper__dot:before,.q-stepper--vertical .q-stepper__dot:after{content:"";position:absolute;left:50%;width:1px;height:99999px;background:rgba(0,0,0,.12)}.q-stepper--vertical .q-stepper__dot:before{bottom:100%;margin-bottom:8px}.q-stepper--vertical .q-stepper__dot:after{top:100%;margin-top:8px}.q-stepper--vertical .q-stepper__step:first-child .q-stepper__dot:before,.q-stepper--vertical .q-stepper__step:last-child .q-stepper__dot:after{display:none}.q-stepper--vertical .q-stepper__step:last-child .q-stepper__step-inner{padding-bottom:8px}.q-stepper--dark.q-stepper--bordered,.q-stepper--dark .q-stepper__header--border{border-color:#ffffff47}.q-stepper--dark.q-stepper--horizontal .q-stepper__line:before,.q-stepper--dark.q-stepper--horizontal .q-stepper__line:after{background:rgba(255,255,255,.28)}.q-stepper--dark.q-stepper--vertical .q-stepper__dot:before,.q-stepper--dark.q-stepper--vertical .q-stepper__dot:after{background:rgba(255,255,255,.28)}.q-stepper--dark .q-stepper__tab--disabled{color:#ffffff47}.q-stepper--dark .q-stepper__tab--disabled .q-stepper__dot{background:rgba(255,255,255,.28)}.q-stepper--dark .q-stepper__tab--disabled .q-stepper__label{color:#ffffff8a}.q-tab-panels{background:#fff}.q-tab-panel{padding:16px}.q-markup-table{overflow:auto;background:#fff}.q-table{width:100%;max-width:100%;border-collapse:separate;border-spacing:0}.q-table thead tr,.q-table tbody td{height:48px}.q-table th{font-weight:500;font-size:12px;-webkit-user-select:none;user-select:none}.q-table th.sortable{cursor:pointer}.q-table th.sortable:hover .q-table__sort-icon{opacity:.64}.q-table th.sorted .q-table__sort-icon{opacity:.86!important}.q-table th.sort-desc .q-table__sort-icon{transform:rotate(180deg)}.q-table th,.q-table td{padding:7px 16px;background-color:inherit}.q-table thead,.q-table td,.q-table th{border-style:solid;border-width:0}.q-table tbody td{font-size:13px}.q-table__card{color:#000;background-color:#fff;border-radius:4px;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f}.q-table__card .q-table__middle{flex:1 1 auto}.q-table__card .q-table__top,.q-table__card .q-table__bottom{flex:0 0 auto}.q-table__container{position:relative}.q-table__container>div:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.q-table__container>div:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.q-table__container>.q-inner-loading{border-radius:inherit!important}.q-table__top{padding:12px 16px}.q-table__top .q-table__control{flex-wrap:wrap}.q-table__title{font-size:20px;letter-spacing:.005em;font-weight:400}.q-table__separator{min-width:8px!important}.q-table__progress{height:0!important}.q-table__progress th{padding:0!important;border:0!important}.q-table__progress .q-linear-progress{position:absolute;bottom:0}.q-table__middle{max-width:100%}.q-table__bottom{min-height:50px;padding:4px 14px 4px 16px;font-size:12px}.q-table__bottom .q-table__control{min-height:24px}.q-table__bottom-nodata-icon{font-size:200%;margin-right:8px}.q-table__bottom-item{margin-right:16px}.q-table__control{display:flex;align-items:center}.q-table__sort-icon{transition:transform .3s cubic-bezier(.25,.8,.5,1);opacity:0;font-size:120%}.q-table__sort-icon--left,.q-table__sort-icon--center{margin-left:4px}.q-table__sort-icon--right{margin-right:4px}.q-table--col-auto-width{width:1px}.q-table__card--dark,.q-table--dark{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-table--flat{box-shadow:none}.q-table--bordered{border:1px solid rgba(0,0,0,.12)}.q-table--square{border-radius:0}.q-table__linear-progress{height:2px}.q-table--no-wrap th,.q-table--no-wrap td{white-space:nowrap}.q-table--grid{box-shadow:none;border-radius:4px}.q-table--grid .q-table__top{padding-bottom:4px}.q-table--grid .q-table__middle{min-height:2px;margin-bottom:4px}.q-table--grid .q-table__middle thead,.q-table--grid .q-table__middle thead th{border:0!important}.q-table--grid .q-table__linear-progress{bottom:0}.q-table--grid .q-table__bottom{border-top:0}.q-table--grid .q-table__grid-content{flex:1 1 auto}.q-table--grid.fullscreen{background:inherit}.q-table__grid-item-card{vertical-align:top;padding:12px}.q-table__grid-item-card .q-separator{margin:12px 0}.q-table__grid-item-row+.q-table__grid-item-row{margin-top:8px}.q-table__grid-item-title{opacity:.54;font-weight:500;font-size:12px}.q-table__grid-item-value{font-size:13px}.q-table__grid-item{padding:4px;transition:transform .3s cubic-bezier(.25,.8,.5,1)}.q-table__grid-item--selected{transform:scale(.95)}.q-table--horizontal-separator thead th,.q-table--horizontal-separator tbody tr:not(:last-child)>td,.q-table--cell-separator thead th,.q-table--cell-separator tbody tr:not(:last-child)>td{border-bottom-width:1px}.q-table--vertical-separator td,.q-table--vertical-separator th,.q-table--cell-separator td,.q-table--cell-separator th{border-left-width:1px}.q-table--vertical-separator thead tr:last-child th,.q-table--vertical-separator.q-table--loading tr:nth-last-child(2) th,.q-table--cell-separator thead tr:last-child th,.q-table--cell-separator.q-table--loading tr:nth-last-child(2) th{border-bottom-width:1px}.q-table--vertical-separator td:first-child,.q-table--vertical-separator th:first-child,.q-table--cell-separator td:first-child,.q-table--cell-separator th:first-child{border-left:0}.q-table--vertical-separator .q-table__top,.q-table--cell-separator .q-table__top{border-bottom:1px solid rgba(0,0,0,.12)}.q-table--dense .q-table__top{padding:6px 16px}.q-table--dense .q-table__bottom{min-height:33px}.q-table--dense .q-table__sort-icon{font-size:110%}.q-table--dense .q-table th,.q-table--dense .q-table td{padding:4px 8px}.q-table--dense .q-table thead tr,.q-table--dense .q-table tbody tr,.q-table--dense .q-table tbody td{height:28px}.q-table--dense .q-table th:first-child,.q-table--dense .q-table td:first-child{padding-left:16px}.q-table--dense .q-table th:last-child,.q-table--dense .q-table td:last-child{padding-right:16px}.q-table--dense .q-table__bottom-item{margin-right:8px}.q-table--dense .q-table__select .q-field__control,.q-table--dense .q-table__select .q-field__native{min-height:24px;padding:0}.q-table--dense .q-table__select .q-field__marginal{height:24px}.q-table__bottom{border-top:1px solid rgba(0,0,0,.12)}.q-table thead,.q-table tr,.q-table th,.q-table td{border-color:#0000001f}.q-table tbody td{position:relative}.q-table tbody td:before,.q-table tbody td:after{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.q-table tbody td:before{background:rgba(0,0,0,.03)}.q-table tbody td:after{background:rgba(0,0,0,.06)}.q-table tbody tr.selected td:after{content:""}body.desktop .q-table>tbody>tr:not(.q-tr--no-hover):hover>td:not(.q-td--no-hover):before{content:""}.q-table__card--dark,.q-table--dark,.q-table--dark .q-table__bottom,.q-table--dark thead,.q-table--dark tr,.q-table--dark th,.q-table--dark td{border-color:#ffffff47}.q-table--dark tbody td:before{background:rgba(255,255,255,.07)}.q-table--dark tbody td:after{background:rgba(255,255,255,.1)}.q-table--dark.q-table--vertical-separator .q-table__top,.q-table--dark.q-table--cell-separator .q-table__top{border-color:#ffffff47}.q-tab{padding:0 16px;min-height:48px;transition:color .3s,background-color .3s;text-transform:uppercase;white-space:nowrap;color:inherit;text-decoration:none}.q-tab--full{min-height:72px}.q-tab--no-caps{text-transform:none}.q-tab__content{height:inherit;padding:4px 0;min-width:40px}.q-tab__content--inline .q-tab__icon+.q-tab__label{padding-left:8px}.q-tab__content .q-chip--floating{top:0;right:-16px}.q-tab__icon{width:24px;height:24px;font-size:24px}.q-tab__label{font-size:14px;line-height:1.715em;font-weight:500}.q-tab .q-badge{top:3px;right:-12px}.q-tab__alert,.q-tab__alert-icon{position:absolute}.q-tab__alert{top:7px;right:-9px;height:10px;width:10px;border-radius:50%;background:currentColor}.q-tab__alert-icon{top:2px;right:-12px;font-size:18px}.q-tab__indicator{opacity:0;height:2px;background:currentColor}.q-tab--active .q-tab__indicator{opacity:1;transform-origin:left}.q-tab--inactive{opacity:.85}.q-tabs{position:relative;transition:color .3s,background-color .3s}.q-tabs--scrollable.q-tabs__arrows--outside.q-tabs--horizontal{padding-left:36px;padding-right:36px}.q-tabs--scrollable.q-tabs__arrows--outside.q-tabs--vertical{padding-top:36px;padding-bottom:36px}.q-tabs--scrollable.q-tabs__arrows--outside .q-tabs__arrow--faded{opacity:.3;pointer-events:none}.q-tabs--scrollable.q-tabs__arrows--inside .q-tabs__arrow--faded{display:none}.q-tabs--not-scrollable.q-tabs__arrows--outside,body.mobile .q-tabs--scrollable.q-tabs--mobile-without-arrows.q-tabs__arrows--outside{padding-left:0;padding-right:0}.q-tabs--not-scrollable .q-tabs__arrow,body.mobile .q-tabs--scrollable.q-tabs--mobile-without-arrows .q-tabs__arrow{display:none}.q-tabs--not-scrollable .q-tabs__content,body.mobile .q-tabs--scrollable.q-tabs--mobile-without-arrows .q-tabs__content{border-radius:inherit}.q-tabs__arrow{cursor:pointer;font-size:32px;min-width:36px;text-shadow:0 0 3px #fff,0 0 1px #fff,0 0 1px #000;transition:opacity .3s}.q-tabs__content{overflow:hidden;flex:1 1 auto}.q-tabs__content--align-center{justify-content:center}.q-tabs__content--align-right{justify-content:flex-end}.q-tabs__content--align-justify .q-tab{flex:1 1 auto}.q-tabs__offset{display:none}.q-tabs--horizontal .q-tabs__arrow{height:100%}.q-tabs--horizontal .q-tabs__arrow--left{top:0;left:0;bottom:0}.q-tabs--horizontal .q-tabs__arrow--right{top:0;right:0;bottom:0}.q-tabs--vertical,.q-tabs--vertical .q-tabs__content{display:block!important;height:100%}.q-tabs--vertical .q-tabs__arrow{width:100%;height:36px;text-align:center}.q-tabs--vertical .q-tabs__arrow--left{top:0;left:0;right:0}.q-tabs--vertical .q-tabs__arrow--right{left:0;right:0;bottom:0}.q-tabs--vertical .q-tab{padding:0 8px}.q-tabs--vertical .q-tab__indicator{height:unset;width:2px}.q-tabs--vertical.q-tabs--not-scrollable .q-tabs__content{height:100%}.q-tabs--vertical.q-tabs--dense .q-tab__content{min-width:24px}.q-tabs--dense .q-tab{min-height:36px}.q-tabs--dense .q-tab--full{min-height:52px}.q-time{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;background:#fff;outline:0;width:290px;min-width:290px;max-width:100%}.q-time--bordered{border:1px solid rgba(0,0,0,.12)}.q-time__header{border-top-left-radius:inherit;color:#fff;background-color:var(--q-primary);padding:16px;font-weight:300}.q-time__actions{padding:0 16px 16px}.q-time__header-label{font-size:28px;line-height:1;letter-spacing:-.00833em}.q-time__header-label>div+div{margin-left:4px}.q-time__link{opacity:.56;outline:0;transition:opacity .3s ease-out}.q-time__link--active,.q-time__link:hover,.q-time__link:focus{opacity:1}.q-time__header-ampm{font-size:16px;letter-spacing:.1em}.q-time__content{padding:16px}.q-time__content:before{content:"";display:block;padding-bottom:100%}.q-time__container-parent{padding:16px}.q-time__container-child{border-radius:50%;background:rgba(0,0,0,.12)}.q-time__clock{padding:24px;width:100%;height:100%;max-width:100%;max-height:100%;font-size:14px}.q-time__clock-circle{position:relative}.q-time__clock-center{height:6px;width:6px;margin:auto;border-radius:50%;min-height:0;background:currentColor}.q-time__clock-pointer{width:2px;height:50%;transform-origin:0 0;min-height:0;position:absolute;left:50%;right:0;bottom:0;color:var(--q-primary);background:currentColor;transform:translate(-50%)}.q-time__clock-pointer:before,.q-time__clock-pointer:after{content:"";position:absolute;left:50%;border-radius:50%;background:currentColor;transform:translate(-50%)}.q-time__clock-pointer:before{bottom:-4px;width:8px;height:8px}.q-time__clock-pointer:after{top:-3px;height:6px;width:6px}.q-time__clock-position{position:absolute;min-height:32px;width:32px;height:32px;font-size:12px;line-height:32px;margin:0;padding:0;transform:translate(-50%,-50%);border-radius:50%}.q-time__clock-position--disable{opacity:.4}.q-time__clock-position--active{background-color:var(--q-primary);color:#fff}.q-time__clock-pos-0{top:0%;left:50%}.q-time__clock-pos-1{top:6.7%;left:75%}.q-time__clock-pos-2{top:25%;left:93.3%}.q-time__clock-pos-3{top:50%;left:100%}.q-time__clock-pos-4{top:75%;left:93.3%}.q-time__clock-pos-5{top:93.3%;left:75%}.q-time__clock-pos-6{top:100%;left:50%}.q-time__clock-pos-7{top:93.3%;left:25%}.q-time__clock-pos-8{top:75%;left:6.7%}.q-time__clock-pos-9{top:50%;left:0%}.q-time__clock-pos-10{top:25%;left:6.7%}.q-time__clock-pos-11{top:6.7%;left:25%}.q-time__clock-pos-12{top:15%;left:50%}.q-time__clock-pos-13{top:19.69%;left:67.5%}.q-time__clock-pos-14{top:32.5%;left:80.31%}.q-time__clock-pos-15{top:50%;left:85%}.q-time__clock-pos-16{top:67.5%;left:80.31%}.q-time__clock-pos-17{top:80.31%;left:67.5%}.q-time__clock-pos-18{top:85%;left:50%}.q-time__clock-pos-19{top:80.31%;left:32.5%}.q-time__clock-pos-20{top:67.5%;left:19.69%}.q-time__clock-pos-21{top:50%;left:15%}.q-time__clock-pos-22{top:32.5%;left:19.69%}.q-time__clock-pos-23{top:19.69%;left:32.5%}.q-time__now-button{background-color:var(--q-primary);color:#fff;top:12px;right:12px}.q-time.disabled .q-time__header-ampm,.q-time.disabled .q-time__content,.q-time--readonly .q-time__header-ampm,.q-time--readonly .q-time__content{pointer-events:none}.q-time--portrait{display:inline-flex;flex-direction:column}.q-time--portrait .q-time__header{border-top-right-radius:inherit;min-height:86px}.q-time--portrait .q-time__header-ampm{margin-left:12px}.q-time--portrait.q-time--bordered .q-time__content{margin:1px 0}.q-time--landscape{display:inline-flex;align-items:stretch;min-width:420px}.q-time--landscape>div{display:flex;flex-direction:column;justify-content:center}.q-time--landscape .q-time__header{border-bottom-left-radius:inherit;min-width:156px}.q-time--landscape .q-time__header-ampm{margin-top:12px}.q-time--dark{border-color:#ffffff47;box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-timeline{padding:0;width:100%;list-style:none}.q-timeline h6{line-height:inherit}.q-timeline--dark{color:#fff}.q-timeline--dark .q-timeline__subtitle{opacity:.7}.q-timeline__content{padding-bottom:24px}.q-timeline__title{margin-top:0;margin-bottom:16px}.q-timeline__subtitle{font-size:12px;margin-bottom:8px;opacity:.6;text-transform:uppercase;letter-spacing:1px;font-weight:700}.q-timeline__dot{position:absolute;top:0;bottom:0;width:15px}.q-timeline__dot:before,.q-timeline__dot:after{content:"";background:currentColor;display:block;position:absolute}.q-timeline__dot:before{border:3px solid transparent;border-radius:100%;height:15px;width:15px;top:4px;left:0;transition:background .3s ease-in-out,border .3s ease-in-out}.q-timeline__dot:after{width:3px;opacity:.4;top:24px;bottom:0;left:6px}.q-timeline__dot .q-icon{position:absolute;top:0;left:0;right:0;font-size:16px;height:38px;line-height:38px;width:100%;color:#fff}.q-timeline__dot .q-icon>svg,.q-timeline__dot .q-icon>img{width:1em;height:1em}.q-timeline__dot-img{position:absolute;top:4px;left:0;right:0;height:31px;width:31px;background:currentColor;border-radius:50%}.q-timeline__heading{position:relative}.q-timeline__heading:first-child .q-timeline__heading-title{padding-top:0}.q-timeline__heading:last-child .q-timeline__heading-title{padding-bottom:0}.q-timeline__heading-title{padding:32px 0;margin:0}.q-timeline__entry{position:relative;line-height:22px}.q-timeline__entry:last-child{padding-bottom:0!important}.q-timeline__entry:last-child .q-timeline__dot:after{content:none}.q-timeline__entry--icon .q-timeline__dot{width:31px}.q-timeline__entry--icon .q-timeline__dot:before{height:31px;width:31px}.q-timeline__entry--icon .q-timeline__dot:after{top:41px;left:14px}.q-timeline__entry--icon .q-timeline__subtitle{padding-top:8px}.q-timeline--dense--right .q-timeline__entry{padding-left:40px}.q-timeline--dense--right .q-timeline__entry--icon .q-timeline__dot{left:-8px}.q-timeline--dense--right .q-timeline__dot{left:0}.q-timeline--dense--left .q-timeline__heading{text-align:right}.q-timeline--dense--left .q-timeline__entry{padding-right:40px}.q-timeline--dense--left .q-timeline__entry--icon .q-timeline__dot{right:-8px}.q-timeline--dense--left .q-timeline__content,.q-timeline--dense--left .q-timeline__title,.q-timeline--dense--left .q-timeline__subtitle{text-align:right}.q-timeline--dense--left .q-timeline__dot{right:0}.q-timeline--comfortable{display:table}.q-timeline--comfortable .q-timeline__heading{display:table-row;font-size:200%}.q-timeline--comfortable .q-timeline__heading>div{display:table-cell}.q-timeline--comfortable .q-timeline__entry{display:table-row;padding:0}.q-timeline--comfortable .q-timeline__entry--icon .q-timeline__content{padding-top:8px}.q-timeline--comfortable .q-timeline__subtitle,.q-timeline--comfortable .q-timeline__dot,.q-timeline--comfortable .q-timeline__content{display:table-cell;vertical-align:top}.q-timeline--comfortable .q-timeline__subtitle{width:35%}.q-timeline--comfortable .q-timeline__dot{position:relative;min-width:31px}.q-timeline--comfortable--right .q-timeline__heading .q-timeline__heading-title{margin-left:-50px}.q-timeline--comfortable--right .q-timeline__subtitle{text-align:right;padding-right:30px}.q-timeline--comfortable--right .q-timeline__content{padding-left:30px}.q-timeline--comfortable--right .q-timeline__entry--icon .q-timeline__dot{left:-8px}.q-timeline--comfortable--left .q-timeline__heading{text-align:right}.q-timeline--comfortable--left .q-timeline__heading .q-timeline__heading-title{margin-right:-50px}.q-timeline--comfortable--left .q-timeline__subtitle{padding-left:30px}.q-timeline--comfortable--left .q-timeline__content{padding-right:30px}.q-timeline--comfortable--left .q-timeline__content,.q-timeline--comfortable--left .q-timeline__title{text-align:right}.q-timeline--comfortable--left .q-timeline__entry--icon .q-timeline__dot{right:0}.q-timeline--comfortable--left .q-timeline__dot{right:-8px}.q-timeline--loose .q-timeline__heading-title{text-align:center;margin-left:0}.q-timeline--loose .q-timeline__entry,.q-timeline--loose .q-timeline__subtitle,.q-timeline--loose .q-timeline__dot,.q-timeline--loose .q-timeline__content{display:block;margin:0;padding:0}.q-timeline--loose .q-timeline__dot{position:absolute;left:50%;margin-left:-7.15px}.q-timeline--loose .q-timeline__entry{padding-bottom:24px;overflow:hidden}.q-timeline--loose .q-timeline__entry--icon .q-timeline__dot{margin-left:-15px}.q-timeline--loose .q-timeline__entry--icon .q-timeline__subtitle{line-height:38px}.q-timeline--loose .q-timeline__entry--icon .q-timeline__content{padding-top:8px}.q-timeline--loose .q-timeline__entry--left .q-timeline__content,.q-timeline--loose .q-timeline__entry--right .q-timeline__subtitle{float:left;padding-right:30px;text-align:right}.q-timeline--loose .q-timeline__entry--left .q-timeline__subtitle,.q-timeline--loose .q-timeline__entry--right .q-timeline__content{float:right;text-align:left;padding-left:30px}.q-timeline--loose .q-timeline__subtitle,.q-timeline--loose .q-timeline__content{width:50%}.q-toggle{vertical-align:middle}.q-toggle__native{width:1px;height:1px}.q-toggle__track{height:.35em;border-radius:.175em;opacity:.38;background:currentColor}.q-toggle__thumb{top:.25em;left:.25em;width:.5em;height:.5em;transition:left .22s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none;z-index:0}.q-toggle__thumb:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:#fff;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.q-toggle__thumb .q-icon{font-size:.3em;min-width:1em;color:#000;opacity:.54;z-index:1}.q-toggle__inner{font-size:40px;width:1.4em;min-width:1.4em;height:1em;padding:.325em .3em;-webkit-print-color-adjust:exact}.q-toggle__inner--indet .q-toggle__thumb{left:.45em}.q-toggle__inner--truthy{color:var(--q-primary)}.q-toggle__inner--truthy .q-toggle__track{opacity:.54}.q-toggle__inner--truthy .q-toggle__thumb{left:.65em}.q-toggle__inner--truthy .q-toggle__thumb:after{background-color:currentColor}.q-toggle__inner--truthy .q-toggle__thumb .q-icon{color:#fff;opacity:1}.q-toggle.disabled{opacity:.75!important}.q-toggle--dark .q-toggle__inner{color:#fff}.q-toggle--dark .q-toggle__inner--truthy{color:var(--q-primary)}.q-toggle--dark .q-toggle__thumb:after{box-shadow:none}.q-toggle--dark .q-toggle__thumb:before{opacity:.32!important}.q-toggle--dense .q-toggle__inner{width:.8em;min-width:.8em;height:.5em;padding:.07625em 0}.q-toggle--dense .q-toggle__thumb{top:0;left:0}.q-toggle--dense .q-toggle__inner--indet .q-toggle__thumb{left:.15em}.q-toggle--dense .q-toggle__inner--truthy .q-toggle__thumb{left:.3em}.q-toggle--dense .q-toggle__label{padding-left:.5em}.q-toggle--dense.reverse .q-toggle__label{padding-left:0;padding-right:.5em}body.desktop .q-toggle:not(.disabled) .q-toggle__thumb:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:currentColor;opacity:.12;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0,0,.2,1)}body.desktop .q-toggle:not(.disabled):focus .q-toggle__thumb:before,body.desktop .q-toggle:not(.disabled):hover .q-toggle__thumb:before{transform:scale3d(2,2,1)}body.desktop .q-toggle--dense:not(.disabled):focus .q-toggle__thumb:before,body.desktop .q-toggle--dense:not(.disabled):hover .q-toggle__thumb:before{transform:scale3d(1.5,1.5,1)}.q-toolbar{position:relative;padding:0 12px;min-height:50px;width:100%}.q-toolbar--inset{padding-left:58px}.q-toolbar .q-avatar{font-size:38px}.q-toolbar__title{flex:1 1 0%;min-width:1px;max-width:100%;font-size:21px;font-weight:400;letter-spacing:.01em;padding:0 12px}.q-toolbar__title:first-child{padding-left:0}.q-toolbar__title:last-child{padding-right:0}.q-tooltip--style{font-size:10px;color:#fafafa;background:#757575;border-radius:4px;text-transform:none;font-weight:400}.q-tooltip{z-index:9000;position:fixed!important;overflow-y:auto;overflow-x:hidden;padding:6px 10px}@media (max-width: 599.98px){.q-tooltip{font-size:14px;padding:8px 16px}}.q-tree{position:relative;color:#9e9e9e}.q-tree__node{padding:0 0 3px 22px}.q-tree__node:after{content:"";position:absolute;top:-3px;bottom:0;width:2px;right:auto;left:-13px;border-left:1px solid currentColor}.q-tree__node:last-child:after{display:none}.q-tree__node--disabled{pointer-events:none}.q-tree__node--disabled .disabled{opacity:1!important}.q-tree__node--disabled>div,.q-tree__node--disabled>i,.q-tree__node--disabled>.disabled{opacity:.6!important}.q-tree__node--disabled>div .q-tree__node--disabled>div,.q-tree__node--disabled>div .q-tree__node--disabled>i,.q-tree__node--disabled>div .q-tree__node--disabled>.disabled,.q-tree__node--disabled>i .q-tree__node--disabled>div,.q-tree__node--disabled>i .q-tree__node--disabled>i,.q-tree__node--disabled>i .q-tree__node--disabled>.disabled,.q-tree__node--disabled>.disabled .q-tree__node--disabled>div,.q-tree__node--disabled>.disabled .q-tree__node--disabled>i,.q-tree__node--disabled>.disabled .q-tree__node--disabled>.disabled{opacity:1!important}.q-tree__node-header:before{content:"";position:absolute;top:-3px;bottom:50%;width:31px;left:-35px;border-left:1px solid currentColor;border-bottom:1px solid currentColor}.q-tree__children{padding-left:25px}.q-tree__node-body{padding:5px 0 8px 5px}.q-tree__node--parent{padding-left:2px}.q-tree__node--parent>.q-tree__node-header:before{width:15px;left:-15px}.q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body{padding:5px 0 8px 27px}.q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body:after{content:"";position:absolute;top:0;width:2px;height:100%;right:auto;left:12px;border-left:1px solid currentColor;bottom:50px}.q-tree__node--link{cursor:pointer}.q-tree__node-header{padding:4px;margin-top:3px;border-radius:4px;outline:0}.q-tree__node-header-content{color:#000;transition:color .3s}.q-tree__node--selected .q-tree__node-header-content{color:#9e9e9e}.q-tree__icon,.q-tree__node-header-content .q-icon{font-size:21px}.q-tree__img{height:42px;border-radius:2px}.q-tree__avatar,.q-tree__node-header-content .q-avatar{font-size:28px;border-radius:50%;width:28px;height:28px}.q-tree__arrow,.q-tree__spinner{font-size:16px;margin-right:4px}.q-tree__arrow{transition:transform .3s}.q-tree__arrow--rotate{transform:rotate3d(0,0,1,90deg)}.q-tree__tickbox{margin-right:4px}.q-tree>.q-tree__node{padding:0}.q-tree>.q-tree__node:after,.q-tree>.q-tree__node>.q-tree__node-header:before{display:none}.q-tree>.q-tree__node--child>.q-tree__node-header{padding-left:24px}.q-tree--dark .q-tree__node-header-content{color:#fff}.q-tree--no-connectors .q-tree__node:after,.q-tree--no-connectors .q-tree__node-header:before,.q-tree--no-connectors .q-tree__node-body:after{display:none!important}.q-tree--dense>.q-tree__node--child>.q-tree__node-header{padding-left:1px}.q-tree--dense .q-tree__arrow,.q-tree--dense .q-tree__spinner{margin-right:1px}.q-tree--dense .q-tree__img{height:32px}.q-tree--dense .q-tree__tickbox{margin-right:3px}.q-tree--dense .q-tree__node{padding:0}.q-tree--dense .q-tree__node:after{top:0;left:-8px}.q-tree--dense .q-tree__node-header{margin-top:0;padding:1px}.q-tree--dense .q-tree__node-header:before{top:0;left:-8px;width:8px}.q-tree--dense .q-tree__node--child{padding-left:17px}.q-tree--dense .q-tree__node--child>.q-tree__node-header:before{left:-25px;width:21px}.q-tree--dense .q-tree__node-body{padding:0 0 2px}.q-tree--dense .q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body{padding:0 0 2px 20px}.q-tree--dense .q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body:after{left:8px}.q-tree--dense .q-tree__children{padding-left:16px}[dir=rtl] .q-tree__arrow{transform:rotate3d(0,0,1,180deg)}[dir=rtl] .q-tree__arrow--rotate{transform:rotate3d(0,0,1,90deg)}.q-uploader{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;vertical-align:top;background:#fff;position:relative;width:320px;max-height:320px}.q-uploader--bordered{border:1px solid rgba(0,0,0,.12)}.q-uploader__input{opacity:0;width:100%;height:100%;cursor:pointer!important;z-index:1}.q-uploader__input::-webkit-file-upload-button{cursor:pointer}.q-uploader__file:before{content:"";border-top-left-radius:inherit;border-top-right-radius:inherit;position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:currentColor;opacity:.04}.q-uploader__header{position:relative;border-top-left-radius:inherit;border-top-right-radius:inherit;background-color:var(--q-primary);color:#fff;width:100%}.q-uploader__spinner{font-size:24px;margin-right:4px}.q-uploader__header-content{padding:8px}.q-uploader__dnd{outline:1px dashed currentColor;outline-offset:-4px;background:rgba(255,255,255,.6)}.q-uploader__overlay{font-size:36px;color:#000;background-color:#fff9}.q-uploader__list{position:relative;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;padding:8px;min-height:60px;flex:1 1 auto}.q-uploader__file{border-radius:4px 4px 0 0;border:1px solid rgba(0,0,0,.12)}.q-uploader__file .q-circular-progress{font-size:24px}.q-uploader__file--img{color:#fff;height:200px;min-width:200px;background-position:50% 50%;background-size:cover;background-repeat:no-repeat}.q-uploader__file--img:before{content:none}.q-uploader__file--img .q-circular-progress{color:#fff}.q-uploader__file--img .q-uploader__file-header{padding-bottom:24px;background:linear-gradient(to bottom,rgba(0,0,0,.7) 20%,rgba(255,255,255,0))}.q-uploader__file+.q-uploader__file{margin-top:8px}.q-uploader__file-header{position:relative;padding:4px 8px;border-top-left-radius:inherit;border-top-right-radius:inherit}.q-uploader__file-header-content{padding-right:8px}.q-uploader__file-status{font-size:24px;margin-right:4px}.q-uploader__title{font-size:14px;font-weight:700;line-height:18px;word-break:break-word}.q-uploader__subtitle{font-size:12px;line-height:18px}.q-uploader--disable .q-uploader__header,.q-uploader--disable .q-uploader__list{pointer-events:none}.q-uploader--dark{border-color:#ffffff47;box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-uploader--dark .q-uploader__file{border-color:#ffffff47}.q-uploader--dark .q-uploader__dnd,.q-uploader--dark .q-uploader__overlay{background:rgba(255,255,255,.3)}.q-uploader--dark .q-uploader__overlay{color:#fff}img.responsive{max-width:100%;height:auto}.q-video{position:relative;overflow:hidden;border-radius:inherit}.q-video iframe,.q-video object,.q-video embed{width:100%;height:100%}.q-video--responsive{height:0}.q-video--responsive iframe,.q-video--responsive object,.q-video--responsive embed{position:absolute;top:0;left:0}.q-virtual-scroll:focus{outline:0}.q-virtual-scroll__content{outline:none;contain:content}.q-virtual-scroll__content>*{overflow-anchor:none}.q-virtual-scroll__content>[data-q-vs-anchor]{overflow-anchor:auto}.q-virtual-scroll__padding{background:linear-gradient(rgba(255,255,255,0),rgba(255,255,255,0) 20%,rgba(128,128,128,.03) 20%,rgba(128,128,128,.08) 50%,rgba(128,128,128,.03) 80%,rgba(255,255,255,0) 80%,rgba(255,255,255,0));background-size:var(--q-virtual-scroll-item-width, 100%) var(--q-virtual-scroll-item-height, 50px)}.q-table .q-virtual-scroll__padding tr{height:0!important}.q-table .q-virtual-scroll__padding td{padding:0!important}.q-virtual-scroll--horizontal{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:stretch}.q-virtual-scroll--horizontal .q-virtual-scroll__content{display:flex;flex-direction:row;flex-wrap:nowrap}.q-virtual-scroll--horizontal .q-virtual-scroll__padding,.q-virtual-scroll--horizontal .q-virtual-scroll__content,.q-virtual-scroll--horizontal .q-virtual-scroll__content>*{flex:0 0 auto}.q-virtual-scroll--horizontal .q-virtual-scroll__padding{background:linear-gradient(to left,rgba(255,255,255,0),rgba(255,255,255,0) 20%,rgba(128,128,128,.03) 20%,rgba(128,128,128,.08) 50%,rgba(128,128,128,.03) 80%,rgba(255,255,255,0) 80%,rgba(255,255,255,0));background-size:var(--q-virtual-scroll-item-width, 50px) var(--q-virtual-scroll-item-height, 100%)}.q-ripple{position:absolute;top:0;left:0;width:100%;height:100%;color:inherit;border-radius:inherit;z-index:0;pointer-events:none;overflow:hidden;contain:strict}.q-ripple__inner{position:absolute;top:0;left:0;opacity:0;color:inherit;border-radius:50%;background:currentColor;pointer-events:none;will-change:transform,opacity}.q-ripple__inner--enter{transition:transform .225s cubic-bezier(.4,0,.2,1),opacity .1s cubic-bezier(.4,0,.2,1)}.q-ripple__inner--leave{transition:opacity .25s cubic-bezier(.4,0,.2,1)}.q-morph--invisible,.q-morph--internal{opacity:0!important;pointer-events:none!important;position:fixed!important;right:200vw!important;bottom:200vh!important}.q-loading{color:#000;position:fixed!important}.q-loading__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;opacity:.5;z-index:-1;background-color:#000;transition:background-color .28s}.q-loading__box{border-radius:4px;padding:18px;color:#fff;max-width:450px}.q-loading__message{margin:40px 20px 0;text-align:center}.q-notifications__list{z-index:9500;pointer-events:none;left:0;right:0;margin-bottom:10px;position:relative}.q-notifications__list--center{top:0;bottom:0}.q-notifications__list--top{top:0}.q-notifications__list--bottom{bottom:0}body.q-ios-padding .q-notifications__list--center,body.q-ios-padding .q-notifications__list--top{top:20px;top:env(safe-area-inset-top)}body.q-ios-padding .q-notifications__list--center,body.q-ios-padding .q-notifications__list--bottom{bottom:env(safe-area-inset-bottom)}.q-notification{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;pointer-events:all;display:inline-flex;margin:10px 10px 0;transition:transform 1s,opacity 1s;z-index:9500;flex-shrink:0;max-width:95vw;background:#323232;color:#fff;font-size:14px}.q-notification__icon{font-size:24px;flex:0 0 1em}.q-notification__icon--additional{margin-right:16px}.q-notification__avatar{font-size:32px}.q-notification__avatar--additional{margin-right:8px}.q-notification__spinner{font-size:32px}.q-notification__spinner--additional{margin-right:8px}.q-notification__message{padding:8px 0}.q-notification__caption{font-size:.9em;opacity:.7}.q-notification__actions{color:var(--q-primary)}.q-notification__badge{animation:q-notif-badge .42s;padding:4px 8px;position:absolute;box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f;background-color:var(--q-negative);color:#fff;border-radius:4px;font-size:12px;line-height:12px}.q-notification__badge--top-left,.q-notification__badge--top-right{top:-6px}.q-notification__badge--bottom-left,.q-notification__badge--bottom-right{bottom:-6px}.q-notification__badge--top-left,.q-notification__badge--bottom-left{left:-22px}.q-notification__badge--top-right,.q-notification__badge--bottom-right{right:-22px}.q-notification__progress{z-index:-1;position:absolute;height:3px;bottom:0;left:-10px;right:-10px;animation:q-notif-progress linear;background:currentColor;opacity:.3;border-radius:4px 4px 0 0;transform-origin:0 50%;transform:scaleX(0)}.q-notification--standard{padding:0 16px;min-height:48px}.q-notification--standard .q-notification__actions{padding:6px 0 6px 8px;margin-right:-8px}.q-notification--multi-line{min-height:68px;padding:8px 16px}.q-notification--multi-line .q-notification__badge--top-left,.q-notification--multi-line .q-notification__badge--top-right{top:-15px}.q-notification--multi-line .q-notification__badge--bottom-left,.q-notification--multi-line .q-notification__badge--bottom-right{bottom:-15px}.q-notification--multi-line .q-notification__progress{bottom:-8px}.q-notification--multi-line .q-notification__actions{padding:0}.q-notification--multi-line .q-notification__actions--with-media{padding-left:25px}.q-notification--top-left-enter-from,.q-notification--top-left-leave-to,.q-notification--top-enter-from,.q-notification--top-leave-to,.q-notification--top-right-enter-from,.q-notification--top-right-leave-to{opacity:0;transform:translateY(-50px);z-index:9499}.q-notification--left-enter-from,.q-notification--left-leave-to,.q-notification--center-enter-from,.q-notification--center-leave-to,.q-notification--right-enter-from,.q-notification--right-leave-to{opacity:0;transform:rotateX(90deg);z-index:9499}.q-notification--bottom-left-enter-from,.q-notification--bottom-left-leave-to,.q-notification--bottom-enter-from,.q-notification--bottom-leave-to,.q-notification--bottom-right-enter-from,.q-notification--bottom-right-leave-to{opacity:0;transform:translateY(50px);z-index:9499}.q-notification--top-left-leave-active,.q-notification--top-leave-active,.q-notification--top-right-leave-active,.q-notification--left-leave-active,.q-notification--center-leave-active,.q-notification--right-leave-active,.q-notification--bottom-left-leave-active,.q-notification--bottom-leave-active,.q-notification--bottom-right-leave-active{position:absolute;z-index:9499;margin-left:0;margin-right:0}.q-notification--top-leave-active,.q-notification--center-leave-active{top:0}.q-notification--bottom-left-leave-active,.q-notification--bottom-leave-active,.q-notification--bottom-right-leave-active{bottom:0}@media (min-width: 600px){.q-notification{max-width:65vw}}@keyframes q-notif-badge{15%{transform:translate3d(-25%,0,0) rotate3d(0,0,1,-5deg)}30%{transform:translate3d(20%,0,0) rotate3d(0,0,1,3deg)}45%{transform:translate3d(-15%,0,0) rotate3d(0,0,1,-3deg)}60%{transform:translate3d(10%,0,0) rotate3d(0,0,1,2deg)}75%{transform:translate3d(-5%,0,0) rotate3d(0,0,1,-1deg)}}@keyframes q-notif-progress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}:root{--animate-duration: .3s;--animate-delay: .3s;--animate-repeat: 1}.animated{animation-duration:var(--animate-duration);animation-fill-mode:both}.animated.infinite{animation-iteration-count:infinite}.animated.hinge{animation-duration:2s}.animated.repeat-1{animation-iteration-count:var(--animate-repeat)}.animated.repeat-2{animation-iteration-count:calc(var(--animate-repeat) * 2)}.animated.repeat-3{animation-iteration-count:calc(var(--animate-repeat) * 3)}.animated.delay-1s{animation-delay:var(--animate-delay)}.animated.delay-2s{animation-delay:calc(var(--animate-delay) * 2)}.animated.delay-3s{animation-delay:calc(var(--animate-delay) * 3)}.animated.delay-4s{animation-delay:calc(var(--animate-delay) * 4)}.animated.delay-5s{animation-delay:calc(var(--animate-delay) * 5)}.animated.faster{animation-duration:calc(var(--animate-duration) / 2)}.animated.fast{animation-duration:calc(var(--animate-duration) * .8)}.animated.slow{animation-duration:calc(var(--animate-duration) * 2)}.animated.slower{animation-duration:calc(var(--animate-duration) * 3)}@media print,(prefers-reduced-motion: reduce){.animated{animation-duration:1ms!important;transition-duration:1ms!important;animation-iteration-count:1!important}.animated[class*=Out]{opacity:0}}.q-animate--scale{animation:q-scale .15s;animation-timing-function:cubic-bezier(.25,.8,.25,1)}@keyframes q-scale{0%{transform:scale(1)}50%{transform:scale(1.04)}to{transform:scale(1)}}.q-animate--fade{animation:q-fade .2s}@keyframes q-fade{0%{opacity:0}to{opacity:1}}:root{--q-primary: #1976D2;--q-secondary: #26A69A;--q-accent: #9C27B0;--q-positive: #21BA45;--q-negative: #C10015;--q-info: #31CCEC;--q-warning: #F2C037;--q-dark: #1d1d1d;--q-dark-page: #121212}.text-dark{color:var(--q-dark)!important}.bg-dark{background:var(--q-dark)!important}.text-primary{color:var(--q-primary)!important}.bg-primary{background:var(--q-primary)!important}.text-secondary{color:var(--q-secondary)!important}.bg-secondary{background:var(--q-secondary)!important}.text-accent{color:var(--q-accent)!important}.bg-accent{background:var(--q-accent)!important}.text-positive{color:var(--q-positive)!important}.bg-positive{background:var(--q-positive)!important}.text-negative{color:var(--q-negative)!important}.bg-negative{background:var(--q-negative)!important}.text-info{color:var(--q-info)!important}.bg-info{background:var(--q-info)!important}.text-warning{color:var(--q-warning)!important}.bg-warning{background:var(--q-warning)!important}.text-white{color:#fff!important}.bg-white{background:#fff!important}.text-black{color:#000!important}.bg-black{background:#000!important}.text-transparent{color:transparent!important}.bg-transparent{background:transparent!important}.text-separator{color:#0000001f!important}.bg-separator{background:rgba(0,0,0,.12)!important}.text-dark-separator{color:#ffffff47!important}.bg-dark-separator{background:rgba(255,255,255,.28)!important}.text-red{color:#f44336!important}.text-red-1{color:#ffebee!important}.text-red-2{color:#ffcdd2!important}.text-red-3{color:#ef9a9a!important}.text-red-4{color:#e57373!important}.text-red-5{color:#ef5350!important}.text-red-6{color:#f44336!important}.text-red-7{color:#e53935!important}.text-red-8{color:#d32f2f!important}.text-red-9{color:#c62828!important}.text-red-10{color:#b71c1c!important}.text-red-11{color:#ff8a80!important}.text-red-12{color:#ff5252!important}.text-red-13{color:#ff1744!important}.text-red-14{color:#d50000!important}.text-pink{color:#e91e63!important}.text-pink-1{color:#fce4ec!important}.text-pink-2{color:#f8bbd0!important}.text-pink-3{color:#f48fb1!important}.text-pink-4{color:#f06292!important}.text-pink-5{color:#ec407a!important}.text-pink-6{color:#e91e63!important}.text-pink-7{color:#d81b60!important}.text-pink-8{color:#c2185b!important}.text-pink-9{color:#ad1457!important}.text-pink-10{color:#880e4f!important}.text-pink-11{color:#ff80ab!important}.text-pink-12{color:#ff4081!important}.text-pink-13{color:#f50057!important}.text-pink-14{color:#c51162!important}.text-purple{color:#9c27b0!important}.text-purple-1{color:#f3e5f5!important}.text-purple-2{color:#e1bee7!important}.text-purple-3{color:#ce93d8!important}.text-purple-4{color:#ba68c8!important}.text-purple-5{color:#ab47bc!important}.text-purple-6{color:#9c27b0!important}.text-purple-7{color:#8e24aa!important}.text-purple-8{color:#7b1fa2!important}.text-purple-9{color:#6a1b9a!important}.text-purple-10{color:#4a148c!important}.text-purple-11{color:#ea80fc!important}.text-purple-12{color:#e040fb!important}.text-purple-13{color:#d500f9!important}.text-purple-14{color:#a0f!important}.text-deep-purple{color:#673ab7!important}.text-deep-purple-1{color:#ede7f6!important}.text-deep-purple-2{color:#d1c4e9!important}.text-deep-purple-3{color:#b39ddb!important}.text-deep-purple-4{color:#9575cd!important}.text-deep-purple-5{color:#7e57c2!important}.text-deep-purple-6{color:#673ab7!important}.text-deep-purple-7{color:#5e35b1!important}.text-deep-purple-8{color:#512da8!important}.text-deep-purple-9{color:#4527a0!important}.text-deep-purple-10{color:#311b92!important}.text-deep-purple-11{color:#b388ff!important}.text-deep-purple-12{color:#7c4dff!important}.text-deep-purple-13{color:#651fff!important}.text-deep-purple-14{color:#6200ea!important}.text-indigo{color:#3f51b5!important}.text-indigo-1{color:#e8eaf6!important}.text-indigo-2{color:#c5cae9!important}.text-indigo-3{color:#9fa8da!important}.text-indigo-4{color:#7986cb!important}.text-indigo-5{color:#5c6bc0!important}.text-indigo-6{color:#3f51b5!important}.text-indigo-7{color:#3949ab!important}.text-indigo-8{color:#303f9f!important}.text-indigo-9{color:#283593!important}.text-indigo-10{color:#1a237e!important}.text-indigo-11{color:#8c9eff!important}.text-indigo-12{color:#536dfe!important}.text-indigo-13{color:#3d5afe!important}.text-indigo-14{color:#304ffe!important}.text-blue{color:#2196f3!important}.text-blue-1{color:#e3f2fd!important}.text-blue-2{color:#bbdefb!important}.text-blue-3{color:#90caf9!important}.text-blue-4{color:#64b5f6!important}.text-blue-5{color:#42a5f5!important}.text-blue-6{color:#2196f3!important}.text-blue-7{color:#1e88e5!important}.text-blue-8{color:#1976d2!important}.text-blue-9{color:#1565c0!important}.text-blue-10{color:#0d47a1!important}.text-blue-11{color:#82b1ff!important}.text-blue-12{color:#448aff!important}.text-blue-13{color:#2979ff!important}.text-blue-14{color:#2962ff!important}.text-light-blue{color:#03a9f4!important}.text-light-blue-1{color:#e1f5fe!important}.text-light-blue-2{color:#b3e5fc!important}.text-light-blue-3{color:#81d4fa!important}.text-light-blue-4{color:#4fc3f7!important}.text-light-blue-5{color:#29b6f6!important}.text-light-blue-6{color:#03a9f4!important}.text-light-blue-7{color:#039be5!important}.text-light-blue-8{color:#0288d1!important}.text-light-blue-9{color:#0277bd!important}.text-light-blue-10{color:#01579b!important}.text-light-blue-11{color:#80d8ff!important}.text-light-blue-12{color:#40c4ff!important}.text-light-blue-13{color:#00b0ff!important}.text-light-blue-14{color:#0091ea!important}.text-cyan{color:#00bcd4!important}.text-cyan-1{color:#e0f7fa!important}.text-cyan-2{color:#b2ebf2!important}.text-cyan-3{color:#80deea!important}.text-cyan-4{color:#4dd0e1!important}.text-cyan-5{color:#26c6da!important}.text-cyan-6{color:#00bcd4!important}.text-cyan-7{color:#00acc1!important}.text-cyan-8{color:#0097a7!important}.text-cyan-9{color:#00838f!important}.text-cyan-10{color:#006064!important}.text-cyan-11{color:#84ffff!important}.text-cyan-12{color:#18ffff!important}.text-cyan-13{color:#00e5ff!important}.text-cyan-14{color:#00b8d4!important}.text-teal{color:#009688!important}.text-teal-1{color:#e0f2f1!important}.text-teal-2{color:#b2dfdb!important}.text-teal-3{color:#80cbc4!important}.text-teal-4{color:#4db6ac!important}.text-teal-5{color:#26a69a!important}.text-teal-6{color:#009688!important}.text-teal-7{color:#00897b!important}.text-teal-8{color:#00796b!important}.text-teal-9{color:#00695c!important}.text-teal-10{color:#004d40!important}.text-teal-11{color:#a7ffeb!important}.text-teal-12{color:#64ffda!important}.text-teal-13{color:#1de9b6!important}.text-teal-14{color:#00bfa5!important}.text-green{color:#4caf50!important}.text-green-1{color:#e8f5e9!important}.text-green-2{color:#c8e6c9!important}.text-green-3{color:#a5d6a7!important}.text-green-4{color:#81c784!important}.text-green-5{color:#66bb6a!important}.text-green-6{color:#4caf50!important}.text-green-7{color:#43a047!important}.text-green-8{color:#388e3c!important}.text-green-9{color:#2e7d32!important}.text-green-10{color:#1b5e20!important}.text-green-11{color:#b9f6ca!important}.text-green-12{color:#69f0ae!important}.text-green-13{color:#00e676!important}.text-green-14{color:#00c853!important}.text-light-green{color:#8bc34a!important}.text-light-green-1{color:#f1f8e9!important}.text-light-green-2{color:#dcedc8!important}.text-light-green-3{color:#c5e1a5!important}.text-light-green-4{color:#aed581!important}.text-light-green-5{color:#9ccc65!important}.text-light-green-6{color:#8bc34a!important}.text-light-green-7{color:#7cb342!important}.text-light-green-8{color:#689f38!important}.text-light-green-9{color:#558b2f!important}.text-light-green-10{color:#33691e!important}.text-light-green-11{color:#ccff90!important}.text-light-green-12{color:#b2ff59!important}.text-light-green-13{color:#76ff03!important}.text-light-green-14{color:#64dd17!important}.text-lime{color:#cddc39!important}.text-lime-1{color:#f9fbe7!important}.text-lime-2{color:#f0f4c3!important}.text-lime-3{color:#e6ee9c!important}.text-lime-4{color:#dce775!important}.text-lime-5{color:#d4e157!important}.text-lime-6{color:#cddc39!important}.text-lime-7{color:#c0ca33!important}.text-lime-8{color:#afb42b!important}.text-lime-9{color:#9e9d24!important}.text-lime-10{color:#827717!important}.text-lime-11{color:#f4ff81!important}.text-lime-12{color:#eeff41!important}.text-lime-13{color:#c6ff00!important}.text-lime-14{color:#aeea00!important}.text-yellow{color:#ffeb3b!important}.text-yellow-1{color:#fffde7!important}.text-yellow-2{color:#fff9c4!important}.text-yellow-3{color:#fff59d!important}.text-yellow-4{color:#fff176!important}.text-yellow-5{color:#ffee58!important}.text-yellow-6{color:#ffeb3b!important}.text-yellow-7{color:#fdd835!important}.text-yellow-8{color:#fbc02d!important}.text-yellow-9{color:#f9a825!important}.text-yellow-10{color:#f57f17!important}.text-yellow-11{color:#ffff8d!important}.text-yellow-12{color:#ff0!important}.text-yellow-13{color:#ffea00!important}.text-yellow-14{color:#ffd600!important}.text-amber{color:#ffc107!important}.text-amber-1{color:#fff8e1!important}.text-amber-2{color:#ffecb3!important}.text-amber-3{color:#ffe082!important}.text-amber-4{color:#ffd54f!important}.text-amber-5{color:#ffca28!important}.text-amber-6{color:#ffc107!important}.text-amber-7{color:#ffb300!important}.text-amber-8{color:#ffa000!important}.text-amber-9{color:#ff8f00!important}.text-amber-10{color:#ff6f00!important}.text-amber-11{color:#ffe57f!important}.text-amber-12{color:#ffd740!important}.text-amber-13{color:#ffc400!important}.text-amber-14{color:#ffab00!important}.text-orange{color:#ff9800!important}.text-orange-1{color:#fff3e0!important}.text-orange-2{color:#ffe0b2!important}.text-orange-3{color:#ffcc80!important}.text-orange-4{color:#ffb74d!important}.text-orange-5{color:#ffa726!important}.text-orange-6{color:#ff9800!important}.text-orange-7{color:#fb8c00!important}.text-orange-8{color:#f57c00!important}.text-orange-9{color:#ef6c00!important}.text-orange-10{color:#e65100!important}.text-orange-11{color:#ffd180!important}.text-orange-12{color:#ffab40!important}.text-orange-13{color:#ff9100!important}.text-orange-14{color:#ff6d00!important}.text-deep-orange{color:#ff5722!important}.text-deep-orange-1{color:#fbe9e7!important}.text-deep-orange-2{color:#ffccbc!important}.text-deep-orange-3{color:#ffab91!important}.text-deep-orange-4{color:#ff8a65!important}.text-deep-orange-5{color:#ff7043!important}.text-deep-orange-6{color:#ff5722!important}.text-deep-orange-7{color:#f4511e!important}.text-deep-orange-8{color:#e64a19!important}.text-deep-orange-9{color:#d84315!important}.text-deep-orange-10{color:#bf360c!important}.text-deep-orange-11{color:#ff9e80!important}.text-deep-orange-12{color:#ff6e40!important}.text-deep-orange-13{color:#ff3d00!important}.text-deep-orange-14{color:#dd2c00!important}.text-brown{color:#795548!important}.text-brown-1{color:#efebe9!important}.text-brown-2{color:#d7ccc8!important}.text-brown-3{color:#bcaaa4!important}.text-brown-4{color:#a1887f!important}.text-brown-5{color:#8d6e63!important}.text-brown-6{color:#795548!important}.text-brown-7{color:#6d4c41!important}.text-brown-8{color:#5d4037!important}.text-brown-9{color:#4e342e!important}.text-brown-10{color:#3e2723!important}.text-brown-11{color:#d7ccc8!important}.text-brown-12{color:#bcaaa4!important}.text-brown-13{color:#8d6e63!important}.text-brown-14{color:#5d4037!important}.text-grey{color:#9e9e9e!important}.text-grey-1{color:#fafafa!important}.text-grey-2{color:#f5f5f5!important}.text-grey-3{color:#eee!important}.text-grey-4{color:#e0e0e0!important}.text-grey-5{color:#bdbdbd!important}.text-grey-6{color:#9e9e9e!important}.text-grey-7{color:#757575!important}.text-grey-8{color:#616161!important}.text-grey-9{color:#424242!important}.text-grey-10{color:#212121!important}.text-grey-11{color:#f5f5f5!important}.text-grey-12{color:#eee!important}.text-grey-13{color:#bdbdbd!important}.text-grey-14{color:#616161!important}.text-blue-grey{color:#607d8b!important}.text-blue-grey-1{color:#eceff1!important}.text-blue-grey-2{color:#cfd8dc!important}.text-blue-grey-3{color:#b0bec5!important}.text-blue-grey-4{color:#90a4ae!important}.text-blue-grey-5{color:#78909c!important}.text-blue-grey-6{color:#607d8b!important}.text-blue-grey-7{color:#546e7a!important}.text-blue-grey-8{color:#455a64!important}.text-blue-grey-9{color:#37474f!important}.text-blue-grey-10{color:#263238!important}.text-blue-grey-11{color:#cfd8dc!important}.text-blue-grey-12{color:#b0bec5!important}.text-blue-grey-13{color:#78909c!important}.text-blue-grey-14{color:#455a64!important}.bg-red{background:#f44336!important}.bg-red-1{background:#ffebee!important}.bg-red-2{background:#ffcdd2!important}.bg-red-3{background:#ef9a9a!important}.bg-red-4{background:#e57373!important}.bg-red-5{background:#ef5350!important}.bg-red-6{background:#f44336!important}.bg-red-7{background:#e53935!important}.bg-red-8{background:#d32f2f!important}.bg-red-9{background:#c62828!important}.bg-red-10{background:#b71c1c!important}.bg-red-11{background:#ff8a80!important}.bg-red-12{background:#ff5252!important}.bg-red-13{background:#ff1744!important}.bg-red-14{background:#d50000!important}.bg-pink{background:#e91e63!important}.bg-pink-1{background:#fce4ec!important}.bg-pink-2{background:#f8bbd0!important}.bg-pink-3{background:#f48fb1!important}.bg-pink-4{background:#f06292!important}.bg-pink-5{background:#ec407a!important}.bg-pink-6{background:#e91e63!important}.bg-pink-7{background:#d81b60!important}.bg-pink-8{background:#c2185b!important}.bg-pink-9{background:#ad1457!important}.bg-pink-10{background:#880e4f!important}.bg-pink-11{background:#ff80ab!important}.bg-pink-12{background:#ff4081!important}.bg-pink-13{background:#f50057!important}.bg-pink-14{background:#c51162!important}.bg-purple{background:#9c27b0!important}.bg-purple-1{background:#f3e5f5!important}.bg-purple-2{background:#e1bee7!important}.bg-purple-3{background:#ce93d8!important}.bg-purple-4{background:#ba68c8!important}.bg-purple-5{background:#ab47bc!important}.bg-purple-6{background:#9c27b0!important}.bg-purple-7{background:#8e24aa!important}.bg-purple-8{background:#7b1fa2!important}.bg-purple-9{background:#6a1b9a!important}.bg-purple-10{background:#4a148c!important}.bg-purple-11{background:#ea80fc!important}.bg-purple-12{background:#e040fb!important}.bg-purple-13{background:#d500f9!important}.bg-purple-14{background:#aa00ff!important}.bg-deep-purple{background:#673ab7!important}.bg-deep-purple-1{background:#ede7f6!important}.bg-deep-purple-2{background:#d1c4e9!important}.bg-deep-purple-3{background:#b39ddb!important}.bg-deep-purple-4{background:#9575cd!important}.bg-deep-purple-5{background:#7e57c2!important}.bg-deep-purple-6{background:#673ab7!important}.bg-deep-purple-7{background:#5e35b1!important}.bg-deep-purple-8{background:#512da8!important}.bg-deep-purple-9{background:#4527a0!important}.bg-deep-purple-10{background:#311b92!important}.bg-deep-purple-11{background:#b388ff!important}.bg-deep-purple-12{background:#7c4dff!important}.bg-deep-purple-13{background:#651fff!important}.bg-deep-purple-14{background:#6200ea!important}.bg-indigo{background:#3f51b5!important}.bg-indigo-1{background:#e8eaf6!important}.bg-indigo-2{background:#c5cae9!important}.bg-indigo-3{background:#9fa8da!important}.bg-indigo-4{background:#7986cb!important}.bg-indigo-5{background:#5c6bc0!important}.bg-indigo-6{background:#3f51b5!important}.bg-indigo-7{background:#3949ab!important}.bg-indigo-8{background:#303f9f!important}.bg-indigo-9{background:#283593!important}.bg-indigo-10{background:#1a237e!important}.bg-indigo-11{background:#8c9eff!important}.bg-indigo-12{background:#536dfe!important}.bg-indigo-13{background:#3d5afe!important}.bg-indigo-14{background:#304ffe!important}.bg-blue{background:#2196f3!important}.bg-blue-1{background:#e3f2fd!important}.bg-blue-2{background:#bbdefb!important}.bg-blue-3{background:#90caf9!important}.bg-blue-4{background:#64b5f6!important}.bg-blue-5{background:#42a5f5!important}.bg-blue-6{background:#2196f3!important}.bg-blue-7{background:#1e88e5!important}.bg-blue-8{background:#1976d2!important}.bg-blue-9{background:#1565c0!important}.bg-blue-10{background:#0d47a1!important}.bg-blue-11{background:#82b1ff!important}.bg-blue-12{background:#448aff!important}.bg-blue-13{background:#2979ff!important}.bg-blue-14{background:#2962ff!important}.bg-light-blue{background:#03a9f4!important}.bg-light-blue-1{background:#e1f5fe!important}.bg-light-blue-2{background:#b3e5fc!important}.bg-light-blue-3{background:#81d4fa!important}.bg-light-blue-4{background:#4fc3f7!important}.bg-light-blue-5{background:#29b6f6!important}.bg-light-blue-6{background:#03a9f4!important}.bg-light-blue-7{background:#039be5!important}.bg-light-blue-8{background:#0288d1!important}.bg-light-blue-9{background:#0277bd!important}.bg-light-blue-10{background:#01579b!important}.bg-light-blue-11{background:#80d8ff!important}.bg-light-blue-12{background:#40c4ff!important}.bg-light-blue-13{background:#00b0ff!important}.bg-light-blue-14{background:#0091ea!important}.bg-cyan{background:#00bcd4!important}.bg-cyan-1{background:#e0f7fa!important}.bg-cyan-2{background:#b2ebf2!important}.bg-cyan-3{background:#80deea!important}.bg-cyan-4{background:#4dd0e1!important}.bg-cyan-5{background:#26c6da!important}.bg-cyan-6{background:#00bcd4!important}.bg-cyan-7{background:#00acc1!important}.bg-cyan-8{background:#0097a7!important}.bg-cyan-9{background:#00838f!important}.bg-cyan-10{background:#006064!important}.bg-cyan-11{background:#84ffff!important}.bg-cyan-12{background:#18ffff!important}.bg-cyan-13{background:#00e5ff!important}.bg-cyan-14{background:#00b8d4!important}.bg-teal{background:#009688!important}.bg-teal-1{background:#e0f2f1!important}.bg-teal-2{background:#b2dfdb!important}.bg-teal-3{background:#80cbc4!important}.bg-teal-4{background:#4db6ac!important}.bg-teal-5{background:#26a69a!important}.bg-teal-6{background:#009688!important}.bg-teal-7{background:#00897b!important}.bg-teal-8{background:#00796b!important}.bg-teal-9{background:#00695c!important}.bg-teal-10{background:#004d40!important}.bg-teal-11{background:#a7ffeb!important}.bg-teal-12{background:#64ffda!important}.bg-teal-13{background:#1de9b6!important}.bg-teal-14{background:#00bfa5!important}.bg-green{background:#4caf50!important}.bg-green-1{background:#e8f5e9!important}.bg-green-2{background:#c8e6c9!important}.bg-green-3{background:#a5d6a7!important}.bg-green-4{background:#81c784!important}.bg-green-5{background:#66bb6a!important}.bg-green-6{background:#4caf50!important}.bg-green-7{background:#43a047!important}.bg-green-8{background:#388e3c!important}.bg-green-9{background:#2e7d32!important}.bg-green-10{background:#1b5e20!important}.bg-green-11{background:#b9f6ca!important}.bg-green-12{background:#69f0ae!important}.bg-green-13{background:#00e676!important}.bg-green-14{background:#00c853!important}.bg-light-green{background:#8bc34a!important}.bg-light-green-1{background:#f1f8e9!important}.bg-light-green-2{background:#dcedc8!important}.bg-light-green-3{background:#c5e1a5!important}.bg-light-green-4{background:#aed581!important}.bg-light-green-5{background:#9ccc65!important}.bg-light-green-6{background:#8bc34a!important}.bg-light-green-7{background:#7cb342!important}.bg-light-green-8{background:#689f38!important}.bg-light-green-9{background:#558b2f!important}.bg-light-green-10{background:#33691e!important}.bg-light-green-11{background:#ccff90!important}.bg-light-green-12{background:#b2ff59!important}.bg-light-green-13{background:#76ff03!important}.bg-light-green-14{background:#64dd17!important}.bg-lime{background:#cddc39!important}.bg-lime-1{background:#f9fbe7!important}.bg-lime-2{background:#f0f4c3!important}.bg-lime-3{background:#e6ee9c!important}.bg-lime-4{background:#dce775!important}.bg-lime-5{background:#d4e157!important}.bg-lime-6{background:#cddc39!important}.bg-lime-7{background:#c0ca33!important}.bg-lime-8{background:#afb42b!important}.bg-lime-9{background:#9e9d24!important}.bg-lime-10{background:#827717!important}.bg-lime-11{background:#f4ff81!important}.bg-lime-12{background:#eeff41!important}.bg-lime-13{background:#c6ff00!important}.bg-lime-14{background:#aeea00!important}.bg-yellow{background:#ffeb3b!important}.bg-yellow-1{background:#fffde7!important}.bg-yellow-2{background:#fff9c4!important}.bg-yellow-3{background:#fff59d!important}.bg-yellow-4{background:#fff176!important}.bg-yellow-5{background:#ffee58!important}.bg-yellow-6{background:#ffeb3b!important}.bg-yellow-7{background:#fdd835!important}.bg-yellow-8{background:#fbc02d!important}.bg-yellow-9{background:#f9a825!important}.bg-yellow-10{background:#f57f17!important}.bg-yellow-11{background:#ffff8d!important}.bg-yellow-12{background:#ffff00!important}.bg-yellow-13{background:#ffea00!important}.bg-yellow-14{background:#ffd600!important}.bg-amber{background:#ffc107!important}.bg-amber-1{background:#fff8e1!important}.bg-amber-2{background:#ffecb3!important}.bg-amber-3{background:#ffe082!important}.bg-amber-4{background:#ffd54f!important}.bg-amber-5{background:#ffca28!important}.bg-amber-6{background:#ffc107!important}.bg-amber-7{background:#ffb300!important}.bg-amber-8{background:#ffa000!important}.bg-amber-9{background:#ff8f00!important}.bg-amber-10{background:#ff6f00!important}.bg-amber-11{background:#ffe57f!important}.bg-amber-12{background:#ffd740!important}.bg-amber-13{background:#ffc400!important}.bg-amber-14{background:#ffab00!important}.bg-orange{background:#ff9800!important}.bg-orange-1{background:#fff3e0!important}.bg-orange-2{background:#ffe0b2!important}.bg-orange-3{background:#ffcc80!important}.bg-orange-4{background:#ffb74d!important}.bg-orange-5{background:#ffa726!important}.bg-orange-6{background:#ff9800!important}.bg-orange-7{background:#fb8c00!important}.bg-orange-8{background:#f57c00!important}.bg-orange-9{background:#ef6c00!important}.bg-orange-10{background:#e65100!important}.bg-orange-11{background:#ffd180!important}.bg-orange-12{background:#ffab40!important}.bg-orange-13{background:#ff9100!important}.bg-orange-14{background:#ff6d00!important}.bg-deep-orange{background:#ff5722!important}.bg-deep-orange-1{background:#fbe9e7!important}.bg-deep-orange-2{background:#ffccbc!important}.bg-deep-orange-3{background:#ffab91!important}.bg-deep-orange-4{background:#ff8a65!important}.bg-deep-orange-5{background:#ff7043!important}.bg-deep-orange-6{background:#ff5722!important}.bg-deep-orange-7{background:#f4511e!important}.bg-deep-orange-8{background:#e64a19!important}.bg-deep-orange-9{background:#d84315!important}.bg-deep-orange-10{background:#bf360c!important}.bg-deep-orange-11{background:#ff9e80!important}.bg-deep-orange-12{background:#ff6e40!important}.bg-deep-orange-13{background:#ff3d00!important}.bg-deep-orange-14{background:#dd2c00!important}.bg-brown{background:#795548!important}.bg-brown-1{background:#efebe9!important}.bg-brown-2{background:#d7ccc8!important}.bg-brown-3{background:#bcaaa4!important}.bg-brown-4{background:#a1887f!important}.bg-brown-5{background:#8d6e63!important}.bg-brown-6{background:#795548!important}.bg-brown-7{background:#6d4c41!important}.bg-brown-8{background:#5d4037!important}.bg-brown-9{background:#4e342e!important}.bg-brown-10{background:#3e2723!important}.bg-brown-11{background:#d7ccc8!important}.bg-brown-12{background:#bcaaa4!important}.bg-brown-13{background:#8d6e63!important}.bg-brown-14{background:#5d4037!important}.bg-grey{background:#9e9e9e!important}.bg-grey-1{background:#fafafa!important}.bg-grey-2{background:#f5f5f5!important}.bg-grey-3{background:#eeeeee!important}.bg-grey-4{background:#e0e0e0!important}.bg-grey-5{background:#bdbdbd!important}.bg-grey-6{background:#9e9e9e!important}.bg-grey-7{background:#757575!important}.bg-grey-8{background:#616161!important}.bg-grey-9{background:#424242!important}.bg-grey-10{background:#212121!important}.bg-grey-11{background:#f5f5f5!important}.bg-grey-12{background:#eeeeee!important}.bg-grey-13{background:#bdbdbd!important}.bg-grey-14{background:#616161!important}.bg-blue-grey{background:#607d8b!important}.bg-blue-grey-1{background:#eceff1!important}.bg-blue-grey-2{background:#cfd8dc!important}.bg-blue-grey-3{background:#b0bec5!important}.bg-blue-grey-4{background:#90a4ae!important}.bg-blue-grey-5{background:#78909c!important}.bg-blue-grey-6{background:#607d8b!important}.bg-blue-grey-7{background:#546e7a!important}.bg-blue-grey-8{background:#455a64!important}.bg-blue-grey-9{background:#37474f!important}.bg-blue-grey-10{background:#263238!important}.bg-blue-grey-11{background:#cfd8dc!important}.bg-blue-grey-12{background:#b0bec5!important}.bg-blue-grey-13{background:#78909c!important}.bg-blue-grey-14{background:#455a64!important}.shadow-transition{transition:box-shadow .28s cubic-bezier(.4,0,.2,1)!important}.shadow-1{box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f}.shadow-up-1{box-shadow:0 -1px 3px #0003,0 -1px 1px #00000024,0 -2px 1px -1px #0000001f}.shadow-2{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f}.shadow-up-2{box-shadow:0 -1px 5px #0003,0 -2px 2px #00000024,0 -3px 1px -2px #0000001f}.shadow-3{box-shadow:0 1px 8px #0003,0 3px 4px #00000024,0 3px 3px -2px #0000001f}.shadow-up-3{box-shadow:0 -1px 8px #0003,0 -3px 4px #00000024,0 -3px 3px -2px #0000001f}.shadow-4{box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f}.shadow-up-4{box-shadow:0 -2px 4px -1px #0003,0 -4px 5px #00000024,0 -1px 10px #0000001f}.shadow-5{box-shadow:0 3px 5px -1px #0003,0 5px 8px #00000024,0 1px 14px #0000001f}.shadow-up-5{box-shadow:0 -3px 5px -1px #0003,0 -5px 8px #00000024,0 -1px 14px #0000001f}.shadow-6{box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}.shadow-up-6{box-shadow:0 -3px 5px -1px #0003,0 -6px 10px #00000024,0 -1px 18px #0000001f}.shadow-7{box-shadow:0 4px 5px -2px #0003,0 7px 10px 1px #00000024,0 2px 16px 1px #0000001f}.shadow-up-7{box-shadow:0 -4px 5px -2px #0003,0 -7px 10px 1px #00000024,0 -2px 16px 1px #0000001f}.shadow-8{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.shadow-up-8{box-shadow:0 -5px 5px -3px #0003,0 -8px 10px 1px #00000024,0 -3px 14px 2px #0000001f}.shadow-9{box-shadow:0 5px 6px -3px #0003,0 9px 12px 1px #00000024,0 3px 16px 2px #0000001f}.shadow-up-9{box-shadow:0 -5px 6px -3px #0003,0 -9px 12px 1px #00000024,0 -3px 16px 2px #0000001f}.shadow-10{box-shadow:0 6px 6px -3px #0003,0 10px 14px 1px #00000024,0 4px 18px 3px #0000001f}.shadow-up-10{box-shadow:0 -6px 6px -3px #0003,0 -10px 14px 1px #00000024,0 -4px 18px 3px #0000001f}.shadow-11{box-shadow:0 6px 7px -4px #0003,0 11px 15px 1px #00000024,0 4px 20px 3px #0000001f}.shadow-up-11{box-shadow:0 -6px 7px -4px #0003,0 -11px 15px 1px #00000024,0 -4px 20px 3px #0000001f}.shadow-12{box-shadow:0 7px 8px -4px #0003,0 12px 17px 2px #00000024,0 5px 22px 4px #0000001f}.shadow-up-12{box-shadow:0 -7px 8px -4px #0003,0 -12px 17px 2px #00000024,0 -5px 22px 4px #0000001f}.shadow-13{box-shadow:0 7px 8px -4px #0003,0 13px 19px 2px #00000024,0 5px 24px 4px #0000001f}.shadow-up-13{box-shadow:0 -7px 8px -4px #0003,0 -13px 19px 2px #00000024,0 -5px 24px 4px #0000001f}.shadow-14{box-shadow:0 7px 9px -4px #0003,0 14px 21px 2px #00000024,0 5px 26px 4px #0000001f}.shadow-up-14{box-shadow:0 -7px 9px -4px #0003,0 -14px 21px 2px #00000024,0 -5px 26px 4px #0000001f}.shadow-15{box-shadow:0 8px 9px -5px #0003,0 15px 22px 2px #00000024,0 6px 28px 5px #0000001f}.shadow-up-15{box-shadow:0 -8px 9px -5px #0003,0 -15px 22px 2px #00000024,0 -6px 28px 5px #0000001f}.shadow-16{box-shadow:0 8px 10px -5px #0003,0 16px 24px 2px #00000024,0 6px 30px 5px #0000001f}.shadow-up-16{box-shadow:0 -8px 10px -5px #0003,0 -16px 24px 2px #00000024,0 -6px 30px 5px #0000001f}.shadow-17{box-shadow:0 8px 11px -5px #0003,0 17px 26px 2px #00000024,0 6px 32px 5px #0000001f}.shadow-up-17{box-shadow:0 -8px 11px -5px #0003,0 -17px 26px 2px #00000024,0 -6px 32px 5px #0000001f}.shadow-18{box-shadow:0 9px 11px -5px #0003,0 18px 28px 2px #00000024,0 7px 34px 6px #0000001f}.shadow-up-18{box-shadow:0 -9px 11px -5px #0003,0 -18px 28px 2px #00000024,0 -7px 34px 6px #0000001f}.shadow-19{box-shadow:0 9px 12px -6px #0003,0 19px 29px 2px #00000024,0 7px 36px 6px #0000001f}.shadow-up-19{box-shadow:0 -9px 12px -6px #0003,0 -19px 29px 2px #00000024,0 -7px 36px 6px #0000001f}.shadow-20{box-shadow:0 10px 13px -6px #0003,0 20px 31px 3px #00000024,0 8px 38px 7px #0000001f}.shadow-up-20{box-shadow:0 -10px 13px -6px #0003,0 -20px 31px 3px #00000024,0 -8px 38px 7px #0000001f}.shadow-21{box-shadow:0 10px 13px -6px #0003,0 21px 33px 3px #00000024,0 8px 40px 7px #0000001f}.shadow-up-21{box-shadow:0 -10px 13px -6px #0003,0 -21px 33px 3px #00000024,0 -8px 40px 7px #0000001f}.shadow-22{box-shadow:0 10px 14px -6px #0003,0 22px 35px 3px #00000024,0 8px 42px 7px #0000001f}.shadow-up-22{box-shadow:0 -10px 14px -6px #0003,0 -22px 35px 3px #00000024,0 -8px 42px 7px #0000001f}.shadow-23{box-shadow:0 11px 14px -7px #0003,0 23px 36px 3px #00000024,0 9px 44px 8px #0000001f}.shadow-up-23{box-shadow:0 -11px 14px -7px #0003,0 -23px 36px 3px #00000024,0 -9px 44px 8px #0000001f}.shadow-24{box-shadow:0 11px 15px -7px #0003,0 24px 38px 3px #00000024,0 9px 46px 8px #0000001f}.shadow-up-24{box-shadow:0 -11px 15px -7px #0003,0 -24px 38px 3px #00000024,0 -9px 46px 8px #0000001f}.inset-shadow{box-shadow:0 7px 9px -7px #000000b3 inset}.inset-shadow-down{box-shadow:0 -7px 9px -7px #000000b3 inset}body.body--dark .shadow-1{box-shadow:0 1px 3px #fff3,0 1px 1px #ffffff24,0 2px 1px -1px #ffffff1f}body.body--dark .shadow-up-1{box-shadow:0 -1px 3px #fff3,0 -1px 1px #ffffff24,0 -2px 1px -1px #ffffff1f}body.body--dark .shadow-2{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}body.body--dark .shadow-up-2{box-shadow:0 -1px 5px #fff3,0 -2px 2px #ffffff24,0 -3px 1px -2px #ffffff1f}body.body--dark .shadow-3{box-shadow:0 1px 8px #fff3,0 3px 4px #ffffff24,0 3px 3px -2px #ffffff1f}body.body--dark .shadow-up-3{box-shadow:0 -1px 8px #fff3,0 -3px 4px #ffffff24,0 -3px 3px -2px #ffffff1f}body.body--dark .shadow-4{box-shadow:0 2px 4px -1px #fff3,0 4px 5px #ffffff24,0 1px 10px #ffffff1f}body.body--dark .shadow-up-4{box-shadow:0 -2px 4px -1px #fff3,0 -4px 5px #ffffff24,0 -1px 10px #ffffff1f}body.body--dark .shadow-5{box-shadow:0 3px 5px -1px #fff3,0 5px 8px #ffffff24,0 1px 14px #ffffff1f}body.body--dark .shadow-up-5{box-shadow:0 -3px 5px -1px #fff3,0 -5px 8px #ffffff24,0 -1px 14px #ffffff1f}body.body--dark .shadow-6{box-shadow:0 3px 5px -1px #fff3,0 6px 10px #ffffff24,0 1px 18px #ffffff1f}body.body--dark .shadow-up-6{box-shadow:0 -3px 5px -1px #fff3,0 -6px 10px #ffffff24,0 -1px 18px #ffffff1f}body.body--dark .shadow-7{box-shadow:0 4px 5px -2px #fff3,0 7px 10px 1px #ffffff24,0 2px 16px 1px #ffffff1f}body.body--dark .shadow-up-7{box-shadow:0 -4px 5px -2px #fff3,0 -7px 10px 1px #ffffff24,0 -2px 16px 1px #ffffff1f}body.body--dark .shadow-8{box-shadow:0 5px 5px -3px #fff3,0 8px 10px 1px #ffffff24,0 3px 14px 2px #ffffff1f}body.body--dark .shadow-up-8{box-shadow:0 -5px 5px -3px #fff3,0 -8px 10px 1px #ffffff24,0 -3px 14px 2px #ffffff1f}body.body--dark .shadow-9{box-shadow:0 5px 6px -3px #fff3,0 9px 12px 1px #ffffff24,0 3px 16px 2px #ffffff1f}body.body--dark .shadow-up-9{box-shadow:0 -5px 6px -3px #fff3,0 -9px 12px 1px #ffffff24,0 -3px 16px 2px #ffffff1f}body.body--dark .shadow-10{box-shadow:0 6px 6px -3px #fff3,0 10px 14px 1px #ffffff24,0 4px 18px 3px #ffffff1f}body.body--dark .shadow-up-10{box-shadow:0 -6px 6px -3px #fff3,0 -10px 14px 1px #ffffff24,0 -4px 18px 3px #ffffff1f}body.body--dark .shadow-11{box-shadow:0 6px 7px -4px #fff3,0 11px 15px 1px #ffffff24,0 4px 20px 3px #ffffff1f}body.body--dark .shadow-up-11{box-shadow:0 -6px 7px -4px #fff3,0 -11px 15px 1px #ffffff24,0 -4px 20px 3px #ffffff1f}body.body--dark .shadow-12{box-shadow:0 7px 8px -4px #fff3,0 12px 17px 2px #ffffff24,0 5px 22px 4px #ffffff1f}body.body--dark .shadow-up-12{box-shadow:0 -7px 8px -4px #fff3,0 -12px 17px 2px #ffffff24,0 -5px 22px 4px #ffffff1f}body.body--dark .shadow-13{box-shadow:0 7px 8px -4px #fff3,0 13px 19px 2px #ffffff24,0 5px 24px 4px #ffffff1f}body.body--dark .shadow-up-13{box-shadow:0 -7px 8px -4px #fff3,0 -13px 19px 2px #ffffff24,0 -5px 24px 4px #ffffff1f}body.body--dark .shadow-14{box-shadow:0 7px 9px -4px #fff3,0 14px 21px 2px #ffffff24,0 5px 26px 4px #ffffff1f}body.body--dark .shadow-up-14{box-shadow:0 -7px 9px -4px #fff3,0 -14px 21px 2px #ffffff24,0 -5px 26px 4px #ffffff1f}body.body--dark .shadow-15{box-shadow:0 8px 9px -5px #fff3,0 15px 22px 2px #ffffff24,0 6px 28px 5px #ffffff1f}body.body--dark .shadow-up-15{box-shadow:0 -8px 9px -5px #fff3,0 -15px 22px 2px #ffffff24,0 -6px 28px 5px #ffffff1f}body.body--dark .shadow-16{box-shadow:0 8px 10px -5px #fff3,0 16px 24px 2px #ffffff24,0 6px 30px 5px #ffffff1f}body.body--dark .shadow-up-16{box-shadow:0 -8px 10px -5px #fff3,0 -16px 24px 2px #ffffff24,0 -6px 30px 5px #ffffff1f}body.body--dark .shadow-17{box-shadow:0 8px 11px -5px #fff3,0 17px 26px 2px #ffffff24,0 6px 32px 5px #ffffff1f}body.body--dark .shadow-up-17{box-shadow:0 -8px 11px -5px #fff3,0 -17px 26px 2px #ffffff24,0 -6px 32px 5px #ffffff1f}body.body--dark .shadow-18{box-shadow:0 9px 11px -5px #fff3,0 18px 28px 2px #ffffff24,0 7px 34px 6px #ffffff1f}body.body--dark .shadow-up-18{box-shadow:0 -9px 11px -5px #fff3,0 -18px 28px 2px #ffffff24,0 -7px 34px 6px #ffffff1f}body.body--dark .shadow-19{box-shadow:0 9px 12px -6px #fff3,0 19px 29px 2px #ffffff24,0 7px 36px 6px #ffffff1f}body.body--dark .shadow-up-19{box-shadow:0 -9px 12px -6px #fff3,0 -19px 29px 2px #ffffff24,0 -7px 36px 6px #ffffff1f}body.body--dark .shadow-20{box-shadow:0 10px 13px -6px #fff3,0 20px 31px 3px #ffffff24,0 8px 38px 7px #ffffff1f}body.body--dark .shadow-up-20{box-shadow:0 -10px 13px -6px #fff3,0 -20px 31px 3px #ffffff24,0 -8px 38px 7px #ffffff1f}body.body--dark .shadow-21{box-shadow:0 10px 13px -6px #fff3,0 21px 33px 3px #ffffff24,0 8px 40px 7px #ffffff1f}body.body--dark .shadow-up-21{box-shadow:0 -10px 13px -6px #fff3,0 -21px 33px 3px #ffffff24,0 -8px 40px 7px #ffffff1f}body.body--dark .shadow-22{box-shadow:0 10px 14px -6px #fff3,0 22px 35px 3px #ffffff24,0 8px 42px 7px #ffffff1f}body.body--dark .shadow-up-22{box-shadow:0 -10px 14px -6px #fff3,0 -22px 35px 3px #ffffff24,0 -8px 42px 7px #ffffff1f}body.body--dark .shadow-23{box-shadow:0 11px 14px -7px #fff3,0 23px 36px 3px #ffffff24,0 9px 44px 8px #ffffff1f}body.body--dark .shadow-up-23{box-shadow:0 -11px 14px -7px #fff3,0 -23px 36px 3px #ffffff24,0 -9px 44px 8px #ffffff1f}body.body--dark .shadow-24{box-shadow:0 11px 15px -7px #fff3,0 24px 38px 3px #ffffff24,0 9px 46px 8px #ffffff1f}body.body--dark .shadow-up-24{box-shadow:0 -11px 15px -7px #fff3,0 -24px 38px 3px #ffffff24,0 -9px 46px 8px #ffffff1f}body.body--dark .inset-shadow{box-shadow:0 7px 9px -7px #ffffffb3 inset}body.body--dark .inset-shadow-down{box-shadow:0 -7px 9px -7px #ffffffb3 inset}.no-shadow,.shadow-0{box-shadow:none!important}.z-marginals{z-index:2000}.z-notify{z-index:9500}.z-fullscreen{z-index:6000}.z-inherit{z-index:inherit!important}.row,.column,.flex{display:flex;flex-wrap:wrap}.row.inline,.column.inline,.flex.inline{display:inline-flex}.row.reverse{flex-direction:row-reverse}.column{flex-direction:column}.column.reverse{flex-direction:column-reverse}.wrap{flex-wrap:wrap}.no-wrap{flex-wrap:nowrap}.reverse-wrap{flex-wrap:wrap-reverse}.order-first{order:-10000}.order-last{order:10000}.order-none{order:0}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center,.flex-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center,.flex-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.content-start{align-content:flex-start}.content-end{align-content:flex-end}.content-center{align-content:center}.content-stretch{align-content:stretch}.content-between{align-content:space-between}.content-around{align-content:space-around}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.self-baseline{align-self:baseline}.self-stretch{align-self:stretch}.q-gutter-x-none,.q-gutter-none{margin-left:0}.q-gutter-x-none>*,.q-gutter-none>*{margin-left:0}.q-gutter-y-none,.q-gutter-none{margin-top:0}.q-gutter-y-none>*,.q-gutter-none>*{margin-top:0}.q-col-gutter-x-none,.q-col-gutter-none{margin-left:0}.q-col-gutter-x-none>*,.q-col-gutter-none>*{padding-left:0}.q-col-gutter-y-none,.q-col-gutter-none{margin-top:0}.q-col-gutter-y-none>*,.q-col-gutter-none>*{padding-top:0}.q-gutter-x-xs,.q-gutter-xs{margin-left:-4px}.q-gutter-x-xs>*,.q-gutter-xs>*{margin-left:4px}.q-gutter-y-xs,.q-gutter-xs{margin-top:-4px}.q-gutter-y-xs>*,.q-gutter-xs>*{margin-top:4px}.q-col-gutter-x-xs,.q-col-gutter-xs{margin-left:-4px}.q-col-gutter-x-xs>*,.q-col-gutter-xs>*{padding-left:4px}.q-col-gutter-y-xs,.q-col-gutter-xs{margin-top:-4px}.q-col-gutter-y-xs>*,.q-col-gutter-xs>*{padding-top:4px}.q-gutter-x-sm,.q-gutter-sm{margin-left:-8px}.q-gutter-x-sm>*,.q-gutter-sm>*{margin-left:8px}.q-gutter-y-sm,.q-gutter-sm{margin-top:-8px}.q-gutter-y-sm>*,.q-gutter-sm>*{margin-top:8px}.q-col-gutter-x-sm,.q-col-gutter-sm{margin-left:-8px}.q-col-gutter-x-sm>*,.q-col-gutter-sm>*{padding-left:8px}.q-col-gutter-y-sm,.q-col-gutter-sm{margin-top:-8px}.q-col-gutter-y-sm>*,.q-col-gutter-sm>*{padding-top:8px}.q-gutter-x-md,.q-gutter-md{margin-left:-16px}.q-gutter-x-md>*,.q-gutter-md>*{margin-left:16px}.q-gutter-y-md,.q-gutter-md{margin-top:-16px}.q-gutter-y-md>*,.q-gutter-md>*{margin-top:16px}.q-col-gutter-x-md,.q-col-gutter-md{margin-left:-16px}.q-col-gutter-x-md>*,.q-col-gutter-md>*{padding-left:16px}.q-col-gutter-y-md,.q-col-gutter-md{margin-top:-16px}.q-col-gutter-y-md>*,.q-col-gutter-md>*{padding-top:16px}.q-gutter-x-lg,.q-gutter-lg{margin-left:-24px}.q-gutter-x-lg>*,.q-gutter-lg>*{margin-left:24px}.q-gutter-y-lg,.q-gutter-lg{margin-top:-24px}.q-gutter-y-lg>*,.q-gutter-lg>*{margin-top:24px}.q-col-gutter-x-lg,.q-col-gutter-lg{margin-left:-24px}.q-col-gutter-x-lg>*,.q-col-gutter-lg>*{padding-left:24px}.q-col-gutter-y-lg,.q-col-gutter-lg{margin-top:-24px}.q-col-gutter-y-lg>*,.q-col-gutter-lg>*{padding-top:24px}.q-gutter-x-xl,.q-gutter-xl{margin-left:-48px}.q-gutter-x-xl>*,.q-gutter-xl>*{margin-left:48px}.q-gutter-y-xl,.q-gutter-xl{margin-top:-48px}.q-gutter-y-xl>*,.q-gutter-xl>*{margin-top:48px}.q-col-gutter-x-xl,.q-col-gutter-xl{margin-left:-48px}.q-col-gutter-x-xl>*,.q-col-gutter-xl>*{padding-left:48px}.q-col-gutter-y-xl,.q-col-gutter-xl{margin-top:-48px}.q-col-gutter-y-xl>*,.q-col-gutter-xl>*{padding-top:48px}@media (min-width: 0){.row>.col,.flex>.col,.row>.col-auto,.flex>.col-auto,.row>.col-grow,.flex>.col-grow,.row>.col-shrink,.flex>.col-shrink,.row>.col-xs,.flex>.col-xs,.row>.col-xs-auto,.row>.col-12,.row>.col-xs-12,.row>.col-11,.row>.col-xs-11,.row>.col-10,.row>.col-xs-10,.row>.col-9,.row>.col-xs-9,.row>.col-8,.row>.col-xs-8,.row>.col-7,.row>.col-xs-7,.row>.col-6,.row>.col-xs-6,.row>.col-5,.row>.col-xs-5,.row>.col-4,.row>.col-xs-4,.row>.col-3,.row>.col-xs-3,.row>.col-2,.row>.col-xs-2,.row>.col-1,.row>.col-xs-1,.row>.col-0,.row>.col-xs-0,.flex>.col-xs-auto,.flex>.col-12,.flex>.col-xs-12,.flex>.col-11,.flex>.col-xs-11,.flex>.col-10,.flex>.col-xs-10,.flex>.col-9,.flex>.col-xs-9,.flex>.col-8,.flex>.col-xs-8,.flex>.col-7,.flex>.col-xs-7,.flex>.col-6,.flex>.col-xs-6,.flex>.col-5,.flex>.col-xs-5,.flex>.col-4,.flex>.col-xs-4,.flex>.col-3,.flex>.col-xs-3,.flex>.col-2,.flex>.col-xs-2,.flex>.col-1,.flex>.col-xs-1,.flex>.col-0,.flex>.col-xs-0,.row>.col-xs-grow,.flex>.col-xs-grow,.row>.col-xs-shrink,.flex>.col-xs-shrink{width:auto;min-width:0;max-width:100%}.column>.col,.flex>.col,.column>.col-auto,.flex>.col-auto,.column>.col-grow,.flex>.col-grow,.column>.col-shrink,.flex>.col-shrink,.column>.col-xs,.flex>.col-xs,.column>.col-xs-auto,.column>.col-12,.column>.col-xs-12,.column>.col-11,.column>.col-xs-11,.column>.col-10,.column>.col-xs-10,.column>.col-9,.column>.col-xs-9,.column>.col-8,.column>.col-xs-8,.column>.col-7,.column>.col-xs-7,.column>.col-6,.column>.col-xs-6,.column>.col-5,.column>.col-xs-5,.column>.col-4,.column>.col-xs-4,.column>.col-3,.column>.col-xs-3,.column>.col-2,.column>.col-xs-2,.column>.col-1,.column>.col-xs-1,.column>.col-0,.column>.col-xs-0,.flex>.col-xs-auto,.flex>.col-12,.flex>.col-xs-12,.flex>.col-11,.flex>.col-xs-11,.flex>.col-10,.flex>.col-xs-10,.flex>.col-9,.flex>.col-xs-9,.flex>.col-8,.flex>.col-xs-8,.flex>.col-7,.flex>.col-xs-7,.flex>.col-6,.flex>.col-xs-6,.flex>.col-5,.flex>.col-xs-5,.flex>.col-4,.flex>.col-xs-4,.flex>.col-3,.flex>.col-xs-3,.flex>.col-2,.flex>.col-xs-2,.flex>.col-1,.flex>.col-xs-1,.flex>.col-0,.flex>.col-xs-0,.column>.col-xs-grow,.flex>.col-xs-grow,.column>.col-xs-shrink,.flex>.col-xs-shrink{height:auto;min-height:0;max-height:100%}.col,.col-xs{flex:10000 1 0%}.col-auto,.col-xs-auto,.col-12,.col-xs-12,.col-11,.col-xs-11,.col-10,.col-xs-10,.col-9,.col-xs-9,.col-8,.col-xs-8,.col-7,.col-xs-7,.col-6,.col-xs-6,.col-5,.col-xs-5,.col-4,.col-xs-4,.col-3,.col-xs-3,.col-2,.col-xs-2,.col-1,.col-xs-1,.col-0,.col-xs-0{flex:0 0 auto}.col-grow,.col-xs-grow{flex:1 0 auto}.col-shrink,.col-xs-shrink{flex:0 1 auto}.row>.col-0,.row>.col-xs-0{height:auto;width:0%}.row>.offset-0,.row>.offset-xs-0{margin-left:0%}.column>.col-0,.column>.col-xs-0{height:0%;width:auto}.row>.col-1,.row>.col-xs-1{height:auto;width:8.3333%}.row>.offset-1,.row>.offset-xs-1{margin-left:8.3333%}.column>.col-1,.column>.col-xs-1{height:8.3333%;width:auto}.row>.col-2,.row>.col-xs-2{height:auto;width:16.6667%}.row>.offset-2,.row>.offset-xs-2{margin-left:16.6667%}.column>.col-2,.column>.col-xs-2{height:16.6667%;width:auto}.row>.col-3,.row>.col-xs-3{height:auto;width:25%}.row>.offset-3,.row>.offset-xs-3{margin-left:25%}.column>.col-3,.column>.col-xs-3{height:25%;width:auto}.row>.col-4,.row>.col-xs-4{height:auto;width:33.3333%}.row>.offset-4,.row>.offset-xs-4{margin-left:33.3333%}.column>.col-4,.column>.col-xs-4{height:33.3333%;width:auto}.row>.col-5,.row>.col-xs-5{height:auto;width:41.6667%}.row>.offset-5,.row>.offset-xs-5{margin-left:41.6667%}.column>.col-5,.column>.col-xs-5{height:41.6667%;width:auto}.row>.col-6,.row>.col-xs-6{height:auto;width:50%}.row>.offset-6,.row>.offset-xs-6{margin-left:50%}.column>.col-6,.column>.col-xs-6{height:50%;width:auto}.row>.col-7,.row>.col-xs-7{height:auto;width:58.3333%}.row>.offset-7,.row>.offset-xs-7{margin-left:58.3333%}.column>.col-7,.column>.col-xs-7{height:58.3333%;width:auto}.row>.col-8,.row>.col-xs-8{height:auto;width:66.6667%}.row>.offset-8,.row>.offset-xs-8{margin-left:66.6667%}.column>.col-8,.column>.col-xs-8{height:66.6667%;width:auto}.row>.col-9,.row>.col-xs-9{height:auto;width:75%}.row>.offset-9,.row>.offset-xs-9{margin-left:75%}.column>.col-9,.column>.col-xs-9{height:75%;width:auto}.row>.col-10,.row>.col-xs-10{height:auto;width:83.3333%}.row>.offset-10,.row>.offset-xs-10{margin-left:83.3333%}.column>.col-10,.column>.col-xs-10{height:83.3333%;width:auto}.row>.col-11,.row>.col-xs-11{height:auto;width:91.6667%}.row>.offset-11,.row>.offset-xs-11{margin-left:91.6667%}.column>.col-11,.column>.col-xs-11{height:91.6667%;width:auto}.row>.col-12,.row>.col-xs-12{height:auto;width:100%}.row>.offset-12,.row>.offset-xs-12{margin-left:100%}.column>.col-12,.column>.col-xs-12{height:100%;width:auto}.row>.col-all{height:auto;flex:0 0 100%}}@media (min-width: 600px){.row>.col-sm,.flex>.col-sm,.row>.col-sm-auto,.row>.col-sm-12,.row>.col-sm-11,.row>.col-sm-10,.row>.col-sm-9,.row>.col-sm-8,.row>.col-sm-7,.row>.col-sm-6,.row>.col-sm-5,.row>.col-sm-4,.row>.col-sm-3,.row>.col-sm-2,.row>.col-sm-1,.row>.col-sm-0,.flex>.col-sm-auto,.flex>.col-sm-12,.flex>.col-sm-11,.flex>.col-sm-10,.flex>.col-sm-9,.flex>.col-sm-8,.flex>.col-sm-7,.flex>.col-sm-6,.flex>.col-sm-5,.flex>.col-sm-4,.flex>.col-sm-3,.flex>.col-sm-2,.flex>.col-sm-1,.flex>.col-sm-0,.row>.col-sm-grow,.flex>.col-sm-grow,.row>.col-sm-shrink,.flex>.col-sm-shrink{width:auto;min-width:0;max-width:100%}.column>.col-sm,.flex>.col-sm,.column>.col-sm-auto,.column>.col-sm-12,.column>.col-sm-11,.column>.col-sm-10,.column>.col-sm-9,.column>.col-sm-8,.column>.col-sm-7,.column>.col-sm-6,.column>.col-sm-5,.column>.col-sm-4,.column>.col-sm-3,.column>.col-sm-2,.column>.col-sm-1,.column>.col-sm-0,.flex>.col-sm-auto,.flex>.col-sm-12,.flex>.col-sm-11,.flex>.col-sm-10,.flex>.col-sm-9,.flex>.col-sm-8,.flex>.col-sm-7,.flex>.col-sm-6,.flex>.col-sm-5,.flex>.col-sm-4,.flex>.col-sm-3,.flex>.col-sm-2,.flex>.col-sm-1,.flex>.col-sm-0,.column>.col-sm-grow,.flex>.col-sm-grow,.column>.col-sm-shrink,.flex>.col-sm-shrink{height:auto;min-height:0;max-height:100%}.col-sm{flex:10000 1 0%}.col-sm-auto,.col-sm-12,.col-sm-11,.col-sm-10,.col-sm-9,.col-sm-8,.col-sm-7,.col-sm-6,.col-sm-5,.col-sm-4,.col-sm-3,.col-sm-2,.col-sm-1,.col-sm-0{flex:0 0 auto}.col-sm-grow{flex:1 0 auto}.col-sm-shrink{flex:0 1 auto}.row>.col-sm-0{height:auto;width:0%}.row>.offset-sm-0{margin-left:0%}.column>.col-sm-0{height:0%;width:auto}.row>.col-sm-1{height:auto;width:8.3333%}.row>.offset-sm-1{margin-left:8.3333%}.column>.col-sm-1{height:8.3333%;width:auto}.row>.col-sm-2{height:auto;width:16.6667%}.row>.offset-sm-2{margin-left:16.6667%}.column>.col-sm-2{height:16.6667%;width:auto}.row>.col-sm-3{height:auto;width:25%}.row>.offset-sm-3{margin-left:25%}.column>.col-sm-3{height:25%;width:auto}.row>.col-sm-4{height:auto;width:33.3333%}.row>.offset-sm-4{margin-left:33.3333%}.column>.col-sm-4{height:33.3333%;width:auto}.row>.col-sm-5{height:auto;width:41.6667%}.row>.offset-sm-5{margin-left:41.6667%}.column>.col-sm-5{height:41.6667%;width:auto}.row>.col-sm-6{height:auto;width:50%}.row>.offset-sm-6{margin-left:50%}.column>.col-sm-6{height:50%;width:auto}.row>.col-sm-7{height:auto;width:58.3333%}.row>.offset-sm-7{margin-left:58.3333%}.column>.col-sm-7{height:58.3333%;width:auto}.row>.col-sm-8{height:auto;width:66.6667%}.row>.offset-sm-8{margin-left:66.6667%}.column>.col-sm-8{height:66.6667%;width:auto}.row>.col-sm-9{height:auto;width:75%}.row>.offset-sm-9{margin-left:75%}.column>.col-sm-9{height:75%;width:auto}.row>.col-sm-10{height:auto;width:83.3333%}.row>.offset-sm-10{margin-left:83.3333%}.column>.col-sm-10{height:83.3333%;width:auto}.row>.col-sm-11{height:auto;width:91.6667%}.row>.offset-sm-11{margin-left:91.6667%}.column>.col-sm-11{height:91.6667%;width:auto}.row>.col-sm-12{height:auto;width:100%}.row>.offset-sm-12{margin-left:100%}.column>.col-sm-12{height:100%;width:auto}}@media (min-width: 1024px){.row>.col-md,.flex>.col-md,.row>.col-md-auto,.row>.col-md-12,.row>.col-md-11,.row>.col-md-10,.row>.col-md-9,.row>.col-md-8,.row>.col-md-7,.row>.col-md-6,.row>.col-md-5,.row>.col-md-4,.row>.col-md-3,.row>.col-md-2,.row>.col-md-1,.row>.col-md-0,.flex>.col-md-auto,.flex>.col-md-12,.flex>.col-md-11,.flex>.col-md-10,.flex>.col-md-9,.flex>.col-md-8,.flex>.col-md-7,.flex>.col-md-6,.flex>.col-md-5,.flex>.col-md-4,.flex>.col-md-3,.flex>.col-md-2,.flex>.col-md-1,.flex>.col-md-0,.row>.col-md-grow,.flex>.col-md-grow,.row>.col-md-shrink,.flex>.col-md-shrink{width:auto;min-width:0;max-width:100%}.column>.col-md,.flex>.col-md,.column>.col-md-auto,.column>.col-md-12,.column>.col-md-11,.column>.col-md-10,.column>.col-md-9,.column>.col-md-8,.column>.col-md-7,.column>.col-md-6,.column>.col-md-5,.column>.col-md-4,.column>.col-md-3,.column>.col-md-2,.column>.col-md-1,.column>.col-md-0,.flex>.col-md-auto,.flex>.col-md-12,.flex>.col-md-11,.flex>.col-md-10,.flex>.col-md-9,.flex>.col-md-8,.flex>.col-md-7,.flex>.col-md-6,.flex>.col-md-5,.flex>.col-md-4,.flex>.col-md-3,.flex>.col-md-2,.flex>.col-md-1,.flex>.col-md-0,.column>.col-md-grow,.flex>.col-md-grow,.column>.col-md-shrink,.flex>.col-md-shrink{height:auto;min-height:0;max-height:100%}.col-md{flex:10000 1 0%}.col-md-auto,.col-md-12,.col-md-11,.col-md-10,.col-md-9,.col-md-8,.col-md-7,.col-md-6,.col-md-5,.col-md-4,.col-md-3,.col-md-2,.col-md-1,.col-md-0{flex:0 0 auto}.col-md-grow{flex:1 0 auto}.col-md-shrink{flex:0 1 auto}.row>.col-md-0{height:auto;width:0%}.row>.offset-md-0{margin-left:0%}.column>.col-md-0{height:0%;width:auto}.row>.col-md-1{height:auto;width:8.3333%}.row>.offset-md-1{margin-left:8.3333%}.column>.col-md-1{height:8.3333%;width:auto}.row>.col-md-2{height:auto;width:16.6667%}.row>.offset-md-2{margin-left:16.6667%}.column>.col-md-2{height:16.6667%;width:auto}.row>.col-md-3{height:auto;width:25%}.row>.offset-md-3{margin-left:25%}.column>.col-md-3{height:25%;width:auto}.row>.col-md-4{height:auto;width:33.3333%}.row>.offset-md-4{margin-left:33.3333%}.column>.col-md-4{height:33.3333%;width:auto}.row>.col-md-5{height:auto;width:41.6667%}.row>.offset-md-5{margin-left:41.6667%}.column>.col-md-5{height:41.6667%;width:auto}.row>.col-md-6{height:auto;width:50%}.row>.offset-md-6{margin-left:50%}.column>.col-md-6{height:50%;width:auto}.row>.col-md-7{height:auto;width:58.3333%}.row>.offset-md-7{margin-left:58.3333%}.column>.col-md-7{height:58.3333%;width:auto}.row>.col-md-8{height:auto;width:66.6667%}.row>.offset-md-8{margin-left:66.6667%}.column>.col-md-8{height:66.6667%;width:auto}.row>.col-md-9{height:auto;width:75%}.row>.offset-md-9{margin-left:75%}.column>.col-md-9{height:75%;width:auto}.row>.col-md-10{height:auto;width:83.3333%}.row>.offset-md-10{margin-left:83.3333%}.column>.col-md-10{height:83.3333%;width:auto}.row>.col-md-11{height:auto;width:91.6667%}.row>.offset-md-11{margin-left:91.6667%}.column>.col-md-11{height:91.6667%;width:auto}.row>.col-md-12{height:auto;width:100%}.row>.offset-md-12{margin-left:100%}.column>.col-md-12{height:100%;width:auto}}@media (min-width: 1440px){.row>.col-lg,.flex>.col-lg,.row>.col-lg-auto,.row>.col-lg-12,.row>.col-lg-11,.row>.col-lg-10,.row>.col-lg-9,.row>.col-lg-8,.row>.col-lg-7,.row>.col-lg-6,.row>.col-lg-5,.row>.col-lg-4,.row>.col-lg-3,.row>.col-lg-2,.row>.col-lg-1,.row>.col-lg-0,.flex>.col-lg-auto,.flex>.col-lg-12,.flex>.col-lg-11,.flex>.col-lg-10,.flex>.col-lg-9,.flex>.col-lg-8,.flex>.col-lg-7,.flex>.col-lg-6,.flex>.col-lg-5,.flex>.col-lg-4,.flex>.col-lg-3,.flex>.col-lg-2,.flex>.col-lg-1,.flex>.col-lg-0,.row>.col-lg-grow,.flex>.col-lg-grow,.row>.col-lg-shrink,.flex>.col-lg-shrink{width:auto;min-width:0;max-width:100%}.column>.col-lg,.flex>.col-lg,.column>.col-lg-auto,.column>.col-lg-12,.column>.col-lg-11,.column>.col-lg-10,.column>.col-lg-9,.column>.col-lg-8,.column>.col-lg-7,.column>.col-lg-6,.column>.col-lg-5,.column>.col-lg-4,.column>.col-lg-3,.column>.col-lg-2,.column>.col-lg-1,.column>.col-lg-0,.flex>.col-lg-auto,.flex>.col-lg-12,.flex>.col-lg-11,.flex>.col-lg-10,.flex>.col-lg-9,.flex>.col-lg-8,.flex>.col-lg-7,.flex>.col-lg-6,.flex>.col-lg-5,.flex>.col-lg-4,.flex>.col-lg-3,.flex>.col-lg-2,.flex>.col-lg-1,.flex>.col-lg-0,.column>.col-lg-grow,.flex>.col-lg-grow,.column>.col-lg-shrink,.flex>.col-lg-shrink{height:auto;min-height:0;max-height:100%}.col-lg{flex:10000 1 0%}.col-lg-auto,.col-lg-12,.col-lg-11,.col-lg-10,.col-lg-9,.col-lg-8,.col-lg-7,.col-lg-6,.col-lg-5,.col-lg-4,.col-lg-3,.col-lg-2,.col-lg-1,.col-lg-0{flex:0 0 auto}.col-lg-grow{flex:1 0 auto}.col-lg-shrink{flex:0 1 auto}.row>.col-lg-0{height:auto;width:0%}.row>.offset-lg-0{margin-left:0%}.column>.col-lg-0{height:0%;width:auto}.row>.col-lg-1{height:auto;width:8.3333%}.row>.offset-lg-1{margin-left:8.3333%}.column>.col-lg-1{height:8.3333%;width:auto}.row>.col-lg-2{height:auto;width:16.6667%}.row>.offset-lg-2{margin-left:16.6667%}.column>.col-lg-2{height:16.6667%;width:auto}.row>.col-lg-3{height:auto;width:25%}.row>.offset-lg-3{margin-left:25%}.column>.col-lg-3{height:25%;width:auto}.row>.col-lg-4{height:auto;width:33.3333%}.row>.offset-lg-4{margin-left:33.3333%}.column>.col-lg-4{height:33.3333%;width:auto}.row>.col-lg-5{height:auto;width:41.6667%}.row>.offset-lg-5{margin-left:41.6667%}.column>.col-lg-5{height:41.6667%;width:auto}.row>.col-lg-6{height:auto;width:50%}.row>.offset-lg-6{margin-left:50%}.column>.col-lg-6{height:50%;width:auto}.row>.col-lg-7{height:auto;width:58.3333%}.row>.offset-lg-7{margin-left:58.3333%}.column>.col-lg-7{height:58.3333%;width:auto}.row>.col-lg-8{height:auto;width:66.6667%}.row>.offset-lg-8{margin-left:66.6667%}.column>.col-lg-8{height:66.6667%;width:auto}.row>.col-lg-9{height:auto;width:75%}.row>.offset-lg-9{margin-left:75%}.column>.col-lg-9{height:75%;width:auto}.row>.col-lg-10{height:auto;width:83.3333%}.row>.offset-lg-10{margin-left:83.3333%}.column>.col-lg-10{height:83.3333%;width:auto}.row>.col-lg-11{height:auto;width:91.6667%}.row>.offset-lg-11{margin-left:91.6667%}.column>.col-lg-11{height:91.6667%;width:auto}.row>.col-lg-12{height:auto;width:100%}.row>.offset-lg-12{margin-left:100%}.column>.col-lg-12{height:100%;width:auto}}@media (min-width: 1920px){.row>.col-xl,.flex>.col-xl,.row>.col-xl-auto,.row>.col-xl-12,.row>.col-xl-11,.row>.col-xl-10,.row>.col-xl-9,.row>.col-xl-8,.row>.col-xl-7,.row>.col-xl-6,.row>.col-xl-5,.row>.col-xl-4,.row>.col-xl-3,.row>.col-xl-2,.row>.col-xl-1,.row>.col-xl-0,.flex>.col-xl-auto,.flex>.col-xl-12,.flex>.col-xl-11,.flex>.col-xl-10,.flex>.col-xl-9,.flex>.col-xl-8,.flex>.col-xl-7,.flex>.col-xl-6,.flex>.col-xl-5,.flex>.col-xl-4,.flex>.col-xl-3,.flex>.col-xl-2,.flex>.col-xl-1,.flex>.col-xl-0,.row>.col-xl-grow,.flex>.col-xl-grow,.row>.col-xl-shrink,.flex>.col-xl-shrink{width:auto;min-width:0;max-width:100%}.column>.col-xl,.flex>.col-xl,.column>.col-xl-auto,.column>.col-xl-12,.column>.col-xl-11,.column>.col-xl-10,.column>.col-xl-9,.column>.col-xl-8,.column>.col-xl-7,.column>.col-xl-6,.column>.col-xl-5,.column>.col-xl-4,.column>.col-xl-3,.column>.col-xl-2,.column>.col-xl-1,.column>.col-xl-0,.flex>.col-xl-auto,.flex>.col-xl-12,.flex>.col-xl-11,.flex>.col-xl-10,.flex>.col-xl-9,.flex>.col-xl-8,.flex>.col-xl-7,.flex>.col-xl-6,.flex>.col-xl-5,.flex>.col-xl-4,.flex>.col-xl-3,.flex>.col-xl-2,.flex>.col-xl-1,.flex>.col-xl-0,.column>.col-xl-grow,.flex>.col-xl-grow,.column>.col-xl-shrink,.flex>.col-xl-shrink{height:auto;min-height:0;max-height:100%}.col-xl{flex:10000 1 0%}.col-xl-auto,.col-xl-12,.col-xl-11,.col-xl-10,.col-xl-9,.col-xl-8,.col-xl-7,.col-xl-6,.col-xl-5,.col-xl-4,.col-xl-3,.col-xl-2,.col-xl-1,.col-xl-0{flex:0 0 auto}.col-xl-grow{flex:1 0 auto}.col-xl-shrink{flex:0 1 auto}.row>.col-xl-0{height:auto;width:0%}.row>.offset-xl-0{margin-left:0%}.column>.col-xl-0{height:0%;width:auto}.row>.col-xl-1{height:auto;width:8.3333%}.row>.offset-xl-1{margin-left:8.3333%}.column>.col-xl-1{height:8.3333%;width:auto}.row>.col-xl-2{height:auto;width:16.6667%}.row>.offset-xl-2{margin-left:16.6667%}.column>.col-xl-2{height:16.6667%;width:auto}.row>.col-xl-3{height:auto;width:25%}.row>.offset-xl-3{margin-left:25%}.column>.col-xl-3{height:25%;width:auto}.row>.col-xl-4{height:auto;width:33.3333%}.row>.offset-xl-4{margin-left:33.3333%}.column>.col-xl-4{height:33.3333%;width:auto}.row>.col-xl-5{height:auto;width:41.6667%}.row>.offset-xl-5{margin-left:41.6667%}.column>.col-xl-5{height:41.6667%;width:auto}.row>.col-xl-6{height:auto;width:50%}.row>.offset-xl-6{margin-left:50%}.column>.col-xl-6{height:50%;width:auto}.row>.col-xl-7{height:auto;width:58.3333%}.row>.offset-xl-7{margin-left:58.3333%}.column>.col-xl-7{height:58.3333%;width:auto}.row>.col-xl-8{height:auto;width:66.6667%}.row>.offset-xl-8{margin-left:66.6667%}.column>.col-xl-8{height:66.6667%;width:auto}.row>.col-xl-9{height:auto;width:75%}.row>.offset-xl-9{margin-left:75%}.column>.col-xl-9{height:75%;width:auto}.row>.col-xl-10{height:auto;width:83.3333%}.row>.offset-xl-10{margin-left:83.3333%}.column>.col-xl-10{height:83.3333%;width:auto}.row>.col-xl-11{height:auto;width:91.6667%}.row>.offset-xl-11{margin-left:91.6667%}.column>.col-xl-11{height:91.6667%;width:auto}.row>.col-xl-12{height:auto;width:100%}.row>.offset-xl-12{margin-left:100%}.column>.col-xl-12{height:100%;width:auto}}.rounded-borders{border-radius:4px}.border-radius-inherit{border-radius:inherit}.no-transition{transition:none!important}.transition-0{transition:0s!important}.glossy{background-image:linear-gradient(to bottom,rgba(255,255,255,.3),rgba(255,255,255,0) 50%,rgba(0,0,0,.12) 51%,rgba(0,0,0,.04))!important}.q-placeholder::placeholder{color:inherit;opacity:.7}.q-body--fullscreen-mixin,.q-body--prevent-scroll{position:fixed!important}.q-body--force-scrollbar-x{overflow-x:scroll}.q-body--force-scrollbar-y{overflow-y:scroll}.q-no-input-spinner{-moz-appearance:textfield!important}.q-no-input-spinner::-webkit-outer-spin-button,.q-no-input-spinner::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.q-link{outline:0;text-decoration:none}.q-link--focusable:focus-visible{-webkit-text-decoration:underline dashed currentColor 1px;text-decoration:underline dashed currentColor 1px}body.electron .q-electron-drag{-webkit-user-select:none;-webkit-app-region:drag}body.electron .q-electron-drag .q-btn-item,body.electron .q-electron-drag--exception{-webkit-app-region:no-drag}img.responsive{max-width:100%;height:auto}.non-selectable{-webkit-user-select:none!important;user-select:none!important}.scroll,body.mobile .scroll--mobile{overflow:auto}.scroll,.scroll-x,.scroll-y{-webkit-overflow-scrolling:touch;will-change:scroll-position}.scroll-x{overflow-x:auto}.scroll-y{overflow-y:auto}.no-scroll{overflow:hidden!important}.no-pointer-events,.no-pointer-events--children,.no-pointer-events--children *{pointer-events:none!important}.all-pointer-events{pointer-events:all!important}.cursor-pointer{cursor:pointer!important}.cursor-not-allowed{cursor:not-allowed!important}.cursor-inherit{cursor:inherit!important}.cursor-none{cursor:none!important}[aria-busy=true]{cursor:progress}[aria-controls]{cursor:pointer}[aria-disabled]{cursor:default}.rotate-45{transform:rotate(45deg)}.rotate-90{transform:rotate(90deg)}.rotate-135{transform:rotate(135deg)}.rotate-180{transform:rotate(180deg)}.rotate-225{transform:rotate(225deg)}.rotate-270{transform:rotate(270deg)}.rotate-315{transform:rotate(315deg)}.flip-horizontal{transform:scaleX(-1)}.flip-vertical{transform:scaleY(-1)}.float-left{float:left}.float-right{float:right}.relative-position{position:relative}.fixed,.fixed-full,.fullscreen,.fixed-center,.fixed-bottom,.fixed-left,.fixed-right,.fixed-top,.fixed-top-left,.fixed-top-right,.fixed-bottom-left,.fixed-bottom-right{position:fixed}.absolute,.absolute-full,.absolute-center,.absolute-bottom,.absolute-left,.absolute-right,.absolute-top,.absolute-top-left,.absolute-top-right,.absolute-bottom-left,.absolute-bottom-right{position:absolute}.fixed-top,.absolute-top{top:0;left:0;right:0}.fixed-right,.absolute-right{top:0;right:0;bottom:0}.fixed-bottom,.absolute-bottom{right:0;bottom:0;left:0}.fixed-left,.absolute-left{top:0;bottom:0;left:0}.fixed-top-left,.absolute-top-left{top:0;left:0}.fixed-top-right,.absolute-top-right{top:0;right:0}.fixed-bottom-left,.absolute-bottom-left{bottom:0;left:0}.fixed-bottom-right,.absolute-bottom-right{bottom:0;right:0}.fullscreen{z-index:6000;border-radius:0!important;max-width:100vw;max-height:100vh}body.q-ios-padding .fullscreen{padding-top:20px!important;padding-top:env(safe-area-inset-top)!important;padding-bottom:env(safe-area-inset-bottom)!important}.absolute-full,.fullscreen,.fixed-full{top:0;right:0;bottom:0;left:0}.fixed-center,.absolute-center{top:50%;left:50%;transform:translate(-50%,-50%)}.vertical-top{vertical-align:top!important}.vertical-middle{vertical-align:middle!important}.vertical-bottom{vertical-align:bottom!important}.on-left{margin-right:12px}.on-right{margin-left:12px}.q-position-engine{margin-top:var(--q-pe-top, 0)!important;margin-left:var(--q-pe-left, 0)!important;will-change:auto;visibility:collapse}:root{--q-size-xs: 0;--q-size-sm: 600px;--q-size-md: 1024px;--q-size-lg: 1440px;--q-size-xl: 1920px}.fit{width:100%!important;height:100%!important}.full-height{height:100%!important}.full-width{width:100%!important;margin-left:0!important;margin-right:0!important}.window-height{margin-top:0!important;margin-bottom:0!important;height:100vh!important}.window-width{margin-left:0!important;margin-right:0!important;width:100vw!important}.block{display:block!important}.inline-block{display:inline-block!important}.q-pa-none{padding:0}.q-pl-none{padding-left:0}.q-pr-none{padding-right:0}.q-pt-none{padding-top:0}.q-pb-none{padding-bottom:0}.q-px-none{padding-left:0;padding-right:0}.q-py-none{padding-top:0;padding-bottom:0}.q-ma-none{margin:0}.q-ml-none{margin-left:0}.q-mr-none{margin-right:0}.q-mt-none{margin-top:0}.q-mb-none{margin-bottom:0}.q-mx-none{margin-left:0;margin-right:0}.q-my-none{margin-top:0;margin-bottom:0}.q-pa-xs{padding:4px}.q-pl-xs{padding-left:4px}.q-pr-xs{padding-right:4px}.q-pt-xs{padding-top:4px}.q-pb-xs{padding-bottom:4px}.q-px-xs{padding-left:4px;padding-right:4px}.q-py-xs{padding-top:4px;padding-bottom:4px}.q-ma-xs{margin:4px}.q-ml-xs{margin-left:4px}.q-mr-xs{margin-right:4px}.q-mt-xs{margin-top:4px}.q-mb-xs{margin-bottom:4px}.q-mx-xs{margin-left:4px;margin-right:4px}.q-my-xs{margin-top:4px;margin-bottom:4px}.q-pa-sm{padding:8px}.q-pl-sm{padding-left:8px}.q-pr-sm{padding-right:8px}.q-pt-sm{padding-top:8px}.q-pb-sm{padding-bottom:8px}.q-px-sm{padding-left:8px;padding-right:8px}.q-py-sm{padding-top:8px;padding-bottom:8px}.q-ma-sm{margin:8px}.q-ml-sm{margin-left:8px}.q-mr-sm{margin-right:8px}.q-mt-sm{margin-top:8px}.q-mb-sm{margin-bottom:8px}.q-mx-sm{margin-left:8px;margin-right:8px}.q-my-sm{margin-top:8px;margin-bottom:8px}.q-pa-md{padding:16px}.q-pl-md{padding-left:16px}.q-pr-md{padding-right:16px}.q-pt-md{padding-top:16px}.q-pb-md{padding-bottom:16px}.q-px-md{padding-left:16px;padding-right:16px}.q-py-md{padding-top:16px;padding-bottom:16px}.q-ma-md{margin:16px}.q-ml-md{margin-left:16px}.q-mr-md{margin-right:16px}.q-mt-md{margin-top:16px}.q-mb-md{margin-bottom:16px}.q-mx-md{margin-left:16px;margin-right:16px}.q-my-md{margin-top:16px;margin-bottom:16px}.q-pa-lg{padding:24px}.q-pl-lg{padding-left:24px}.q-pr-lg{padding-right:24px}.q-pt-lg{padding-top:24px}.q-pb-lg{padding-bottom:24px}.q-px-lg{padding-left:24px;padding-right:24px}.q-py-lg{padding-top:24px;padding-bottom:24px}.q-ma-lg{margin:24px}.q-ml-lg{margin-left:24px}.q-mr-lg{margin-right:24px}.q-mt-lg{margin-top:24px}.q-mb-lg{margin-bottom:24px}.q-mx-lg{margin-left:24px;margin-right:24px}.q-my-lg{margin-top:24px;margin-bottom:24px}.q-pa-xl{padding:48px}.q-pl-xl{padding-left:48px}.q-pr-xl{padding-right:48px}.q-pt-xl{padding-top:48px}.q-pb-xl{padding-bottom:48px}.q-px-xl{padding-left:48px;padding-right:48px}.q-py-xl{padding-top:48px;padding-bottom:48px}.q-ma-xl{margin:48px}.q-ml-xl{margin-left:48px}.q-mr-xl{margin-right:48px}.q-mt-xl{margin-top:48px}.q-mb-xl{margin-bottom:48px}.q-mx-xl{margin-left:48px;margin-right:48px}.q-my-xl{margin-top:48px;margin-bottom:48px}.q-mt-auto,.q-my-auto{margin-top:auto}.q-ml-auto{margin-left:auto}.q-mb-auto,.q-my-auto{margin-bottom:auto}.q-mr-auto{margin-right:auto}.q-mx-auto{margin-left:auto;margin-right:auto}.q-touch{-webkit-user-select:none;user-select:none;user-drag:none;-khtml-user-drag:none;-webkit-user-drag:none}.q-touch-x{touch-action:pan-x}.q-touch-y{touch-action:pan-y}:root{--q-transition-duration: .3s}.q-transition--slide-right-enter-active,.q-transition--slide-right-leave-active,.q-transition--slide-left-enter-active,.q-transition--slide-left-leave-active,.q-transition--slide-up-enter-active,.q-transition--slide-up-leave-active,.q-transition--slide-down-enter-active,.q-transition--slide-down-leave-active,.q-transition--jump-right-enter-active,.q-transition--jump-right-leave-active,.q-transition--jump-left-enter-active,.q-transition--jump-left-leave-active,.q-transition--jump-up-enter-active,.q-transition--jump-up-leave-active,.q-transition--jump-down-enter-active,.q-transition--jump-down-leave-active,.q-transition--fade-enter-active,.q-transition--fade-leave-active,.q-transition--scale-enter-active,.q-transition--scale-leave-active,.q-transition--rotate-enter-active,.q-transition--rotate-leave-active,.q-transition--flip-enter-active,.q-transition--flip-leave-active{--q-transition-duration: .3s;--q-transition-easing: cubic-bezier(.215,.61,.355,1)}.q-transition--slide-right-leave-active,.q-transition--slide-left-leave-active,.q-transition--slide-up-leave-active,.q-transition--slide-down-leave-active,.q-transition--jump-right-leave-active,.q-transition--jump-left-leave-active,.q-transition--jump-up-leave-active,.q-transition--jump-down-leave-active,.q-transition--fade-leave-active,.q-transition--scale-leave-active,.q-transition--rotate-leave-active,.q-transition--flip-leave-active{position:absolute}.q-transition--slide-right-enter-active,.q-transition--slide-right-leave-active,.q-transition--slide-left-enter-active,.q-transition--slide-left-leave-active,.q-transition--slide-up-enter-active,.q-transition--slide-up-leave-active,.q-transition--slide-down-enter-active,.q-transition--slide-down-leave-active{transition:transform var(--q-transition-duration) var(--q-transition-easing)}.q-transition--slide-right-enter-from{transform:translate3d(-100%,0,0)}.q-transition--slide-right-leave-to,.q-transition--slide-left-enter-from{transform:translate3d(100%,0,0)}.q-transition--slide-left-leave-to{transform:translate3d(-100%,0,0)}.q-transition--slide-up-enter-from{transform:translate3d(0,100%,0)}.q-transition--slide-up-leave-to,.q-transition--slide-down-enter-from{transform:translate3d(0,-100%,0)}.q-transition--slide-down-leave-to{transform:translate3d(0,100%,0)}.q-transition--jump-right-enter-active,.q-transition--jump-right-leave-active,.q-transition--jump-left-enter-active,.q-transition--jump-left-leave-active,.q-transition--jump-up-enter-active,.q-transition--jump-up-leave-active,.q-transition--jump-down-enter-active,.q-transition--jump-down-leave-active{transition:opacity var(--q-transition-duration),transform var(--q-transition-duration)}.q-transition--jump-right-enter-from,.q-transition--jump-right-leave-to,.q-transition--jump-left-enter-from,.q-transition--jump-left-leave-to,.q-transition--jump-up-enter-from,.q-transition--jump-up-leave-to,.q-transition--jump-down-enter-from,.q-transition--jump-down-leave-to{opacity:0}.q-transition--jump-right-enter-from{transform:translate3d(-15px,0,0)}.q-transition--jump-right-leave-to,.q-transition--jump-left-enter-from{transform:translate3d(15px,0,0)}.q-transition--jump-left-leave-to{transform:translate(-15px)}.q-transition--jump-up-enter-from{transform:translate3d(0,15px,0)}.q-transition--jump-up-leave-to,.q-transition--jump-down-enter-from{transform:translate3d(0,-15px,0)}.q-transition--jump-down-leave-to{transform:translate3d(0,15px,0)}.q-transition--fade-enter-active,.q-transition--fade-leave-active{transition:opacity var(--q-transition-duration) ease-out}.q-transition--fade-enter-from,.q-transition--fade-leave-to{opacity:0}.q-transition--scale-enter-active,.q-transition--scale-leave-active{transition:opacity var(--q-transition-duration),transform var(--q-transition-duration) var(--q-transition-easing)}.q-transition--scale-enter-from,.q-transition--scale-leave-to{opacity:0;transform:scale3d(0,0,1)}.q-transition--rotate-enter-active,.q-transition--rotate-leave-active{transition:opacity var(--q-transition-duration),transform var(--q-transition-duration) var(--q-transition-easing);transform-style:preserve-3d}.q-transition--rotate-enter-from,.q-transition--rotate-leave-to{opacity:0;transform:scale3d(0,0,1) rotate3d(0,0,1,90deg)}.q-transition--flip-right-enter-active,.q-transition--flip-right-leave-active,.q-transition--flip-left-enter-active,.q-transition--flip-left-leave-active,.q-transition--flip-up-enter-active,.q-transition--flip-up-leave-active,.q-transition--flip-down-enter-active,.q-transition--flip-down-leave-active{transition:transform var(--q-transition-duration);backface-visibility:hidden}.q-transition--flip-right-enter-to,.q-transition--flip-right-leave-from,.q-transition--flip-left-enter-to,.q-transition--flip-left-leave-from,.q-transition--flip-up-enter-to,.q-transition--flip-up-leave-from,.q-transition--flip-down-enter-to,.q-transition--flip-down-leave-from{transform:perspective(400px) rotate3d(1,1,0,0)}.q-transition--flip-right-enter-from{transform:perspective(400px) rotateY(-180deg)}.q-transition--flip-right-leave-to,.q-transition--flip-left-enter-from{transform:perspective(400px) rotateY(180deg)}.q-transition--flip-left-leave-to{transform:perspective(400px) rotateY(-180deg)}.q-transition--flip-up-enter-from{transform:perspective(400px) rotateX(-180deg)}.q-transition--flip-up-leave-to,.q-transition--flip-down-enter-from{transform:perspective(400px) rotateX(180deg)}.q-transition--flip-down-leave-to{transform:perspective(400px) rotateX(-180deg)}body{min-width:100px;min-height:100%;font-family:Roboto,-apple-system,Helvetica Neue,Helvetica,Arial,sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-smoothing:antialiased;line-height:1.5;font-size:14px}h1{font-size:6rem;font-weight:300;line-height:6rem;letter-spacing:-.01562em}h2{font-size:3.75rem;font-weight:300;line-height:3.75rem;letter-spacing:-.00833em}h3{font-size:3rem;font-weight:400;line-height:3.125rem;letter-spacing:normal}h4{font-size:2.125rem;font-weight:400;line-height:2.5rem;letter-spacing:.00735em}h5{font-size:1.5rem;font-weight:400;line-height:2rem;letter-spacing:normal}h6{font-size:1.25rem;font-weight:500;line-height:2rem;letter-spacing:.0125em}p{margin:0 0 16px}.text-h1{font-size:6rem;font-weight:300;line-height:6rem;letter-spacing:-.01562em}.text-h2{font-size:3.75rem;font-weight:300;line-height:3.75rem;letter-spacing:-.00833em}.text-h3{font-size:3rem;font-weight:400;line-height:3.125rem;letter-spacing:normal}.text-h4{font-size:2.125rem;font-weight:400;line-height:2.5rem;letter-spacing:.00735em}.text-h5{font-size:1.5rem;font-weight:400;line-height:2rem;letter-spacing:normal}.text-h6{font-size:1.25rem;font-weight:500;line-height:2rem;letter-spacing:.0125em}.text-subtitle1{font-size:1rem;font-weight:400;line-height:1.75rem;letter-spacing:.00937em}.text-subtitle2{font-size:.875rem;font-weight:500;line-height:1.375rem;letter-spacing:.00714em}.text-body1{font-size:1rem;font-weight:400;line-height:1.5rem;letter-spacing:.03125em}.text-body2{font-size:.875rem;font-weight:400;line-height:1.25rem;letter-spacing:.01786em}.text-overline{font-size:.75rem;font-weight:500;line-height:2rem;letter-spacing:.16667em}.text-caption{font-size:.75rem;font-weight:400;line-height:1.25rem;letter-spacing:.03333em}.text-uppercase{text-transform:uppercase}.text-lowercase{text-transform:lowercase}.text-capitalize{text-transform:capitalize}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-justify{text-align:justify;-webkit-hyphens:auto;hyphens:auto}.text-italic{font-style:italic}.text-bold{font-weight:700}.text-no-wrap{white-space:nowrap}.text-strike{text-decoration:line-through}.text-weight-thin{font-weight:100}.text-weight-light{font-weight:300}.text-weight-regular{font-weight:400}.text-weight-medium{font-weight:500}.text-weight-bold{font-weight:700}.text-weight-bolder{font-weight:900}small{font-size:80%}big{font-size:170%}sub{bottom:-.25em}sup{top:-.5em}.no-margin{margin:0!important}.no-padding{padding:0!important}.no-border{border:0!important}.no-border-radius{border-radius:0!important}.no-box-shadow{box-shadow:none!important}.no-outline{outline:0!important}.ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ellipsis-2-lines,.ellipsis-3-lines{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.ellipsis-2-lines{-webkit-line-clamp:2}.ellipsis-3-lines{-webkit-line-clamp:3}.readonly{cursor:default!important}.disabled,.disabled *,[disabled],[disabled] *{outline:0!important;cursor:not-allowed!important}.disabled,[disabled]{opacity:.6!important}.hidden{display:none!important}.invisible,.invisible *{visibility:hidden!important;transition:none!important;animation:none!important}.transparent{background:transparent!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.overflow-hidden-y{overflow-y:hidden!important}.hide-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.hide-scrollbar::-webkit-scrollbar{width:0;height:0;display:none}.dimmed:after,.light-dimmed:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0}.dimmed:after{background:rgba(0,0,0,.4)!important}.light-dimmed:after{background:rgba(255,255,255,.6)!important}.z-top{z-index:7000!important}.z-max{z-index:9998!important}body:not(.desktop) .desktop-only,body.desktop .desktop-hide{display:none!important}body:not(.mobile) .mobile-only,body.mobile .mobile-hide{display:none!important}body:not(.native-mobile) .native-mobile-only,body.native-mobile .native-mobile-hide{display:none!important}body:not(.cordova) .cordova-only,body.cordova .cordova-hide{display:none!important}body:not(.capacitor) .capacitor-only,body.capacitor .capacitor-hide{display:none!important}body:not(.electron) .electron-only,body.electron .electron-hide{display:none!important}body:not(.touch) .touch-only,body.touch .touch-hide{display:none!important}body:not(.within-iframe) .within-iframe-only,body.within-iframe .within-iframe-hide{display:none!important}body:not(.platform-ios) .platform-ios-only,body.platform-ios .platform-ios-hide{display:none!important}body:not(.platform-android) .platform-android-only,body.platform-android .platform-android-hide{display:none!important}@media all and (orientation: portrait){.orientation-landscape{display:none!important}}@media all and (orientation: landscape){.orientation-portrait{display:none!important}}@media screen{.print-only{display:none!important}}@media print{.print-hide{display:none!important}}@media (max-width: 599.98px){.xs-hide,.gt-xs,.sm,.gt-sm,.md,.gt-md,.lg,.gt-lg,.xl{display:none!important}}@media (min-width: 600px) and (max-width: 1023.98px){.sm-hide,.xs,.lt-sm,.gt-sm,.md,.gt-md,.lg,.gt-lg,.xl{display:none!important}}@media (min-width: 1024px) and (max-width: 1439.98px){.md-hide,.xs,.lt-sm,.sm,.lt-md,.gt-md,.lg,.gt-lg,.xl{display:none!important}}@media (min-width: 1440px) and (max-width: 1919.98px){.lg-hide,.xs,.lt-sm,.sm,.lt-md,.md,.lt-lg,.gt-lg,.xl{display:none!important}}@media (min-width: 1920px){.xl-hide,.xs,.lt-sm,.sm,.lt-md,.md,.lt-lg,.lg,.lt-xl{display:none!important}}.q-focus-helper,.q-focusable,.q-manual-focusable,.q-hoverable{outline:0}body.desktop .q-focus-helper{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;border-radius:inherit;opacity:0;transition:background-color .3s cubic-bezier(.25,.8,.5,1),opacity .4s cubic-bezier(.25,.8,.5,1)}body.desktop .q-focus-helper:before,body.desktop .q-focus-helper:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;border-radius:inherit;transition:background-color .3s cubic-bezier(.25,.8,.5,1),opacity .6s cubic-bezier(.25,.8,.5,1)}body.desktop .q-focus-helper:before{background:#000}body.desktop .q-focus-helper:after{background:#fff}body.desktop .q-focus-helper--rounded{border-radius:4px}body.desktop .q-focus-helper--round{border-radius:50%}body.desktop .q-focusable:focus>.q-focus-helper,body.desktop .q-manual-focusable--focused>.q-focus-helper,body.desktop .q-hoverable:hover>.q-focus-helper{background:currentColor;opacity:.15}body.desktop .q-focusable:focus>.q-focus-helper:before,body.desktop .q-manual-focusable--focused>.q-focus-helper:before,body.desktop .q-hoverable:hover>.q-focus-helper:before{opacity:.1}body.desktop .q-focusable:focus>.q-focus-helper:after,body.desktop .q-manual-focusable--focused>.q-focus-helper:after,body.desktop .q-hoverable:hover>.q-focus-helper:after{opacity:.4}body.desktop .q-focusable:focus>.q-focus-helper,body.desktop .q-manual-focusable--focused>.q-focus-helper{opacity:.22}body.body--dark{color:#fff;background:var(--q-dark-page)}.q-dark{color:#fff;background:var(--q-dark)}[data-theme=classic] .q-drawer--dark,body[data-theme=classic].body--dark,[data-theme=classic] .q-menu--dark{background:#1f2234!important}[data-theme=classic] .q-card--dark,[data-theme=classic] .q-stepper--dark{background:#333646!important}[data-theme=classic] .bg-primary{background:#673ab7!important}[data-theme=classic] .text-primary{color:#673ab7!important}[data-theme=classic] .bg-secondary{background:#9c27b0!important}[data-theme=classic] .text-secondary{color:#9c27b0!important}[data-theme=classic] .bg-dark{background:#1f2234!important}[data-theme=classic] .text-dark{color:#1f2234!important}[data-theme=classic] .bg-info{background:#333646!important}[data-theme=classic] .text-info{color:#333646!important}[data-theme=classic] .bg-marginal-bg{background:#1f2234!important}[data-theme=classic] .text-marginal-bg{color:#1f2234!important}[data-theme=classic] .bg-marginal-text{background:#fff!important}[data-theme=classic] .text-marginal-text{color:#fff!important}[data-theme=bitcoin] .q-drawer--dark,body[data-theme=bitcoin].body--dark,[data-theme=bitcoin] .q-menu--dark{background:#2d293b!important}[data-theme=bitcoin] .q-card--dark,[data-theme=bitcoin] .q-stepper--dark{background:#333646!important}[data-theme=bitcoin] .bg-primary{background:#ff9853!important}[data-theme=bitcoin] .text-primary{color:#ff9853!important}[data-theme=bitcoin] .bg-secondary{background:#ff7353!important}[data-theme=bitcoin] .text-secondary{color:#ff7353!important}[data-theme=bitcoin] .bg-dark{background:#2d293b!important}[data-theme=bitcoin] .text-dark{color:#2d293b!important}[data-theme=bitcoin] .bg-info{background:#333646!important}[data-theme=bitcoin] .text-info{color:#333646!important}[data-theme=bitcoin] .bg-marginal-bg{background:#2d293b!important}[data-theme=bitcoin] .text-marginal-bg{color:#2d293b!important}[data-theme=bitcoin] .bg-marginal-text{background:#fff!important}[data-theme=bitcoin] .text-marginal-text{color:#fff!important}[data-theme=freedom] .q-drawer--dark,body[data-theme=freedom].body--dark,[data-theme=freedom] .q-menu--dark{background:#0a0a0a!important}[data-theme=freedom] .q-card--dark,[data-theme=freedom] .q-stepper--dark{background:#1b1b1b!important}[data-theme=freedom] .bg-primary{background:#e22156!important}[data-theme=freedom] .text-primary{color:#e22156!important}[data-theme=freedom] .bg-secondary{background:#b91a45!important}[data-theme=freedom] .text-secondary{color:#b91a45!important}[data-theme=freedom] .bg-dark{background:#0a0a0a!important}[data-theme=freedom] .text-dark{color:#0a0a0a!important}[data-theme=freedom] .bg-info{background:#1b1b1b!important}[data-theme=freedom] .text-info{color:#1b1b1b!important}[data-theme=freedom] .bg-marginal-bg{background:#2d293b!important}[data-theme=freedom] .text-marginal-bg{color:#2d293b!important}[data-theme=freedom] .bg-marginal-text{background:#fff!important}[data-theme=freedom] .text-marginal-text{color:#fff!important}[data-theme=cyber] .q-drawer--dark,body[data-theme=cyber].body--dark,[data-theme=cyber] .q-menu--dark{background:#0a0a0a!important}[data-theme=cyber] .q-card--dark,[data-theme=cyber] .q-stepper--dark{background:#1b1b1b!important}[data-theme=cyber] .bg-primary{background:#7cb342!important}[data-theme=cyber] .text-primary{color:#7cb342!important}[data-theme=cyber] .bg-secondary{background:#558b2f!important}[data-theme=cyber] .text-secondary{color:#558b2f!important}[data-theme=cyber] .bg-dark{background:#0a0a0a!important}[data-theme=cyber] .text-dark{color:#0a0a0a!important}[data-theme=cyber] .bg-info{background:#1b1b1b!important}[data-theme=cyber] .text-info{color:#1b1b1b!important}[data-theme=cyber] .bg-marginal-bg{background:#2d293b!important}[data-theme=cyber] .text-marginal-bg{color:#2d293b!important}[data-theme=cyber] .bg-marginal-text{background:#fff!important}[data-theme=cyber] .text-marginal-text{color:#fff!important}[data-theme=mint] .q-drawer--dark,body[data-theme=mint].body--dark,[data-theme=mint] .q-menu--dark{background:#1f342b!important}[data-theme=mint] .q-card--dark,[data-theme=mint] .q-stepper--dark{background:#334642!important}[data-theme=mint] .bg-primary{background:#3ab77d!important}[data-theme=mint] .text-primary{color:#3ab77d!important}[data-theme=mint] .bg-secondary{background:#27b065!important}[data-theme=mint] .text-secondary{color:#27b065!important}[data-theme=mint] .bg-dark{background:#1f342b!important}[data-theme=mint] .text-dark{color:#1f342b!important}[data-theme=mint] .bg-info{background:#334642!important}[data-theme=mint] .text-info{color:#334642!important}[data-theme=mint] .bg-marginal-bg{background:#1f342b!important}[data-theme=mint] .text-marginal-bg{color:#1f342b!important}[data-theme=mint] .bg-marginal-text{background:#fff!important}[data-theme=mint] .text-marginal-text{color:#fff!important}[data-theme=autumn] .q-drawer--dark,body[data-theme=autumn].body--dark,[data-theme=autumn] .q-menu--dark{background:#34291f!important}[data-theme=autumn] .q-card--dark,[data-theme=autumn] .q-stepper--dark{background:#463f33!important}[data-theme=autumn] .bg-primary{background:#b7763a!important}[data-theme=autumn] .text-primary{color:#b7763a!important}[data-theme=autumn] .bg-secondary{background:#b07927!important}[data-theme=autumn] .text-secondary{color:#b07927!important}[data-theme=autumn] .bg-dark{background:#34291f!important}[data-theme=autumn] .text-dark{color:#34291f!important}[data-theme=autumn] .bg-info{background:#463f33!important}[data-theme=autumn] .text-info{color:#463f33!important}[data-theme=autumn] .bg-marginal-bg{background:#342a1f!important}[data-theme=autumn] .text-marginal-bg{color:#342a1f!important}[data-theme=autumn] .bg-marginal-text{background:rgb(255,255,255)!important}[data-theme=autumn] .text-marginal-text{color:#fff!important}[data-theme=flamingo] .q-drawer--dark,body[data-theme=flamingo].body--dark,[data-theme=flamingo] .q-menu--dark{background:#2f032f!important}[data-theme=flamingo] .q-card--dark,[data-theme=flamingo] .q-stepper--dark{background:#bc23bc!important}[data-theme=flamingo] .bg-primary{background:#ff00ff!important}[data-theme=flamingo] .text-primary{color:#f0f!important}[data-theme=flamingo] .bg-secondary{background:#fda3fd!important}[data-theme=flamingo] .text-secondary{color:#fda3fd!important}[data-theme=flamingo] .bg-dark{background:#2f032f!important}[data-theme=flamingo] .text-dark{color:#2f032f!important}[data-theme=flamingo] .bg-info{background:#bc23bc!important}[data-theme=flamingo] .text-info{color:#bc23bc!important}[data-theme=flamingo] .bg-marginal-bg{background:#311231!important}[data-theme=flamingo] .text-marginal-bg{color:#311231!important}[data-theme=flamingo] .bg-marginal-text{background:rgb(255,255,255)!important}[data-theme=flamingo] .text-marginal-text{color:#fff!important}[data-theme=monochrome] .q-drawer--dark,body[data-theme=monochrome].body--dark,[data-theme=monochrome] .q-menu--dark{background:#000!important}[data-theme=monochrome] .q-card--dark,[data-theme=monochrome] .q-stepper--dark{background:rgb(39,39,39)!important}[data-theme=monochrome] .bg-primary{background:#494949!important}[data-theme=monochrome] .text-primary{color:#494949!important}[data-theme=monochrome] .bg-secondary{background:#6b6b6b!important}[data-theme=monochrome] .text-secondary{color:#6b6b6b!important}[data-theme=monochrome] .bg-dark{background:#000!important}[data-theme=monochrome] .text-dark{color:#000!important}[data-theme=monochrome] .bg-info{background:rgb(39,39,39)!important}[data-theme=monochrome] .text-info{color:#272727!important}[data-theme=monochrome] .bg-marginal-bg{background:#000!important}[data-theme=monochrome] .text-marginal-bg{color:#000!important}[data-theme=monochrome] .bg-marginal-text{background:rgb(255,255,255)!important}[data-theme=monochrome] .text-marginal-text{color:#fff!important}[data-theme=freedom] .q-drawer--dark,[data-theme=freedom] .q-header,[data-theme=cyber] .q-drawer--dark,[data-theme=cyber] .q-header{background:#0a0a0a!important}[data-theme=salvador] .q-drawer--dark{background:#242424!important}[data-theme=salvador] .q-header{background:#0f47af!important}[v-cloak]{display:none}body.body--dark .q-table--dark{background:transparent}body.body--dark .q-field--error .text-negative,body.body--dark .q-field--error .q-field__messages{color:#ff0!important}.lnbits-drawer__q-list .q-item{padding-top:5px!important;padding-bottom:5px!important;border-top-right-radius:3px;border-bottom-right-radius:3px}.lnbits-drawer__q-list .q-item.q-item--active{color:inherit;font-weight:700}.lnbits__dialog-card{width:500px}.q-table--dense th:first-child,.q-table--dense td:first-child,.q-table--dense .q-table__bottom{padding-left:6px!important}.q-table--dense th:last-child,.q-table--dense td:last-child,.q-table--dense .q-table__bottom{padding-right:6px!important}a.inherit{color:inherit;text-decoration:none}video{border-radius:3px}@font-face{font-family:Material Icons;font-style:normal;font-weight:400;src:url(/static/fonts/material-icons-v50.woff2) format("woff2")}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-moz-font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale}.q-rating__icon{font-size:1em}.text-wrap{word-break:break-word}.q-card code{overflow-wrap:break-word} diff --git a/static/market/assets/index.923cbbf9.js b/static/market/assets/index.dfb4e5db.js similarity index 56% rename from static/market/assets/index.923cbbf9.js rename to static/market/assets/index.dfb4e5db.js index 8abf8c7..13b1937 100644 --- a/static/market/assets/index.923cbbf9.js +++ b/static/market/assets/index.dfb4e5db.js @@ -2,4 +2,4 @@ function Vr(e,t){const n=Object.create(null),o=e.split(",");for(let r=0;r{},rt=Array.isArray,vd=/\/$/,bd=e=>e.replace(vd,"");function rr(e,t,n="/"){let o,r={},i="",s="";const l=t.indexOf("#");let a=t.indexOf("?");return l=0&&(a=-1),a>-1&&(o=t.slice(0,a),i=t.slice(a+1,l>-1?l:t.length),r=e(i)),l>-1&&(o=o||t.slice(0,l),s=t.slice(l,t.length)),o=xd(o!=null?o:t,n),{fullPath:o+(i&&"?")+i+s,path:o,query:r,hash:s}}function yd(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function us(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function _d(e,t,n){const o=t.matched.length-1,r=n.matched.length-1;return o>-1&&o===r&&fn(t.matched[o],n.matched[r])&&pa(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function fn(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function pa(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!wd(e[n],t[n]))return!1;return!0}function wd(e,t){return rt(e)?cs(e,t):rt(t)?cs(t,e):e===t}function cs(e,t){return rt(t)?e.length===t.length&&e.every((n,o)=>n===t[o]):e.length===1&&e[0]===t}function xd(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),o=e.split("/"),r=o[o.length-1];(r===".."||r===".")&&o.push("");let i=n.length-1,s,l;for(s=0;s1&&i--;else break;return n.slice(0,i).join("/")+"/"+o.slice(s-(s===o.length?1:0)).join("/")}var Kn;(function(e){e.pop="pop",e.push="push"})(Kn||(Kn={}));var Bn;(function(e){e.back="back",e.forward="forward",e.unknown=""})(Bn||(Bn={}));function Cd(e){if(!e)if(en){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),bd(e)}const kd=/^[^#]+#/;function Ed(e,t){return e.replace(kd,"#")+t}function Sd(e,t){const n=document.documentElement.getBoundingClientRect(),o=e.getBoundingClientRect();return{behavior:t.behavior,left:o.left-n.left-(t.left||0),top:o.top-n.top-(t.top||0)}}const zo=()=>({left:window.pageXOffset,top:window.pageYOffset});function Rd(e){let t;if("el"in e){const n=e.el,o=typeof n=="string"&&n.startsWith("#"),r=typeof n=="string"?o?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!r)return;t=Sd(r,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.pageXOffset,t.top!=null?t.top:window.pageYOffset)}function fs(e,t){return(history.state?history.state.position-t:-1)+e}const Ar=new Map;function Pd(e,t){Ar.set(e,t)}function Td(e){const t=Ar.get(e);return Ar.delete(e),t}let qd=()=>location.protocol+"//"+location.host;function va(e,t){const{pathname:n,search:o,hash:r}=t,i=e.indexOf("#");if(i>-1){let l=r.includes(e.slice(i))?e.slice(i).length:1,a=r.slice(l);return a[0]!=="/"&&(a="/"+a),us(a,"")}return us(n,e)+o+r}function Ad(e,t,n,o){let r=[],i=[],s=null;const l=({state:f})=>{const p=va(e,location),y=n.value,T=t.value;let q=0;if(f){if(n.value=p,t.value=f,s&&s===y){s=null;return}q=T?f.position-T.position:0}else o(p);r.forEach(M=>{M(n.value,y,{delta:q,type:Kn.pop,direction:q?q>0?Bn.forward:Bn.back:Bn.unknown})})};function a(){s=n.value}function c(f){r.push(f);const p=()=>{const y=r.indexOf(f);y>-1&&r.splice(y,1)};return i.push(p),p}function u(){const{history:f}=window;!f.state||f.replaceState(ge({},f.state,{scroll:zo()}),"")}function d(){for(const f of i)f();i=[],window.removeEventListener("popstate",l),window.removeEventListener("beforeunload",u)}return window.addEventListener("popstate",l),window.addEventListener("beforeunload",u,{passive:!0}),{pauseListeners:a,listen:c,destroy:d}}function ds(e,t,n,o=!1,r=!1){return{back:e,current:t,forward:n,replaced:o,position:window.history.length,scroll:r?zo():null}}function Md(e){const{history:t,location:n}=window,o={value:va(e,n)},r={value:t.state};r.value||i(o.value,{back:null,current:o.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function i(a,c,u){const d=e.indexOf("#"),f=d>-1?(n.host&&document.querySelector("base")?e:e.slice(d))+a:qd()+e+a;try{t[u?"replaceState":"pushState"](c,"",f),r.value=c}catch(p){console.error(p),n[u?"replace":"assign"](f)}}function s(a,c){const u=ge({},t.state,ds(r.value.back,a,r.value.forward,!0),c,{position:r.value.position});i(a,u,!0),o.value=a}function l(a,c){const u=ge({},r.value,t.state,{forward:a,scroll:zo()});i(u.current,u,!0);const d=ge({},ds(o.value,a,null),{position:u.position+1},c);i(a,d,!1),o.value=a}return{location:o,state:r,push:l,replace:s}}function Od(e){e=Cd(e);const t=Md(e),n=Ad(e,t.state,t.location,t.replace);function o(i,s=!0){s||n.pauseListeners(),history.go(i)}const r=ge({location:"",base:e,go:o,createHref:Ed.bind(null,e)},t,n);return Object.defineProperty(r,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(r,"state",{enumerable:!0,get:()=>t.state.value}),r}function $d(e){return e=location.host?e||location.pathname+location.search:"",e.includes("#")||(e+="#"),Od(e)}function Ld(e){return typeof e=="string"||e&&typeof e=="object"}function ba(e){return typeof e=="string"||typeof e=="symbol"}const _t={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0},ya=Symbol("");var hs;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(hs||(hs={}));function dn(e,t){return ge(new Error,{type:e,[ya]:!0},t)}function ft(e,t){return e instanceof Error&&ya in e&&(t==null||!!(e.type&t))}const gs="[^/]+?",Bd={sensitive:!1,strict:!1,start:!0,end:!0},Fd=/[.+*?^${}()[\]/\\]/g;function Id(e,t){const n=ge({},Bd,t),o=[];let r=n.start?"^":"";const i=[];for(const c of e){const u=c.length?[]:[90];n.strict&&!c.length&&(r+="/");for(let d=0;dt.length?t.length===1&&t[0]===40+40?1:-1:0}function jd(e,t){let n=0;const o=e.score,r=t.score;for(;n0&&t[t.length-1]<0}const Vd={type:0,value:""},Dd=/[a-zA-Z0-9_]/;function Hd(e){if(!e)return[[]];if(e==="/")return[[Vd]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(p){throw new Error(`ERR (${n})/"${c}": ${p}`)}let n=0,o=n;const r=[];let i;function s(){i&&r.push(i),i=[]}let l=0,a,c="",u="";function d(){!c||(n===0?i.push({type:0,value:c}):n===1||n===2||n===3?(i.length>1&&(a==="*"||a==="+")&&t(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),i.push({type:1,value:c,regexp:u,repeatable:a==="*"||a==="+",optional:a==="*"||a==="?"})):t("Invalid state to consume buffer"),c="")}function f(){c+=a}for(;l{s(m)}:Ln}function s(u){if(ba(u)){const d=o.get(u);d&&(o.delete(u),n.splice(n.indexOf(d),1),d.children.forEach(s),d.alias.forEach(s))}else{const d=n.indexOf(u);d>-1&&(n.splice(d,1),u.record.name&&o.delete(u.record.name),u.children.forEach(s),u.alias.forEach(s))}}function l(){return n}function a(u){let d=0;for(;d=0&&(u.record.path!==n[d].record.path||!_a(u,n[d]));)d++;n.splice(d,0,u),u.record.name&&!vs(u)&&o.set(u.record.name,u)}function c(u,d){let f,p={},y,T;if("name"in u&&u.name){if(f=o.get(u.name),!f)throw dn(1,{location:u});T=f.record.name,p=ge(ps(d.params,f.keys.filter(m=>!m.optional).map(m=>m.name)),u.params&&ps(u.params,f.keys.map(m=>m.name))),y=f.stringify(p)}else if("path"in u)y=u.path,f=n.find(m=>m.re.test(y)),f&&(p=f.parse(y),T=f.record.name);else{if(f=d.name?o.get(d.name):n.find(m=>m.re.test(d.path)),!f)throw dn(1,{location:u,currentLocation:d});T=f.record.name,p=ge({},d.params,u.params),y=f.stringify(p)}const q=[];let M=f;for(;M;)q.unshift(M.record),M=M.parent;return{name:T,path:y,params:p,matched:q,meta:Qd(q)}}return e.forEach(u=>i(u)),{addRoute:i,resolve:c,removeRoute:s,getRoutes:l,getRecordMatcher:r}}function ps(e,t){const n={};for(const o of t)o in e&&(n[o]=e[o]);return n}function Ud(e){return{path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:void 0,beforeEnter:e.beforeEnter,props:Wd(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}}}function Wd(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const o in e.components)t[o]=typeof n=="object"?n[o]:n;return t}function vs(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Qd(e){return e.reduce((t,n)=>ge(t,n.meta),{})}function bs(e,t){const n={};for(const o in e)n[o]=o in t?t[o]:e[o];return n}function _a(e,t){return t.children.some(n=>n===e||_a(e,n))}const wa=/#/g,Yd=/&/g,Zd=/\//g,Jd=/=/g,Xd=/\?/g,xa=/\+/g,Gd=/%5B/g,eh=/%5D/g,Ca=/%5E/g,th=/%60/g,ka=/%7B/g,nh=/%7C/g,Ea=/%7D/g,oh=/%20/g;function fi(e){return encodeURI(""+e).replace(nh,"|").replace(Gd,"[").replace(eh,"]")}function rh(e){return fi(e).replace(ka,"{").replace(Ea,"}").replace(Ca,"^")}function Mr(e){return fi(e).replace(xa,"%2B").replace(oh,"+").replace(wa,"%23").replace(Yd,"%26").replace(th,"`").replace(ka,"{").replace(Ea,"}").replace(Ca,"^")}function ih(e){return Mr(e).replace(Jd,"%3D")}function sh(e){return fi(e).replace(wa,"%23").replace(Xd,"%3F")}function lh(e){return e==null?"":sh(e).replace(Zd,"%2F")}function Ro(e){try{return decodeURIComponent(""+e)}catch{}return""+e}function ah(e){const t={};if(e===""||e==="?")return t;const o=(e[0]==="?"?e.slice(1):e).split("&");for(let r=0;ri&&Mr(i)):[o&&Mr(o)]).forEach(i=>{i!==void 0&&(t+=(t.length?"&":"")+n,i!=null&&(t+="="+i))})}return t}function uh(e){const t={};for(const n in e){const o=e[n];o!==void 0&&(t[n]=rt(o)?o.map(r=>r==null?null:""+r):o==null?o:""+o)}return t}const ch=Symbol(""),_s=Symbol(""),di=Symbol(""),Sa=Symbol(""),Or=Symbol("");function xn(){let e=[];function t(o){return e.push(o),()=>{const r=e.indexOf(o);r>-1&&e.splice(r,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Ct(e,t,n,o,r){const i=o&&(o.enterCallbacks[r]=o.enterCallbacks[r]||[]);return()=>new Promise((s,l)=>{const a=d=>{d===!1?l(dn(4,{from:n,to:t})):d instanceof Error?l(d):Ld(d)?l(dn(2,{from:t,to:d})):(i&&o.enterCallbacks[r]===i&&typeof d=="function"&&i.push(d),s())},c=e.call(o&&o.instances[r],t,n,a);let u=Promise.resolve(c);e.length<3&&(u=u.then(a)),u.catch(d=>l(d))})}function ir(e,t,n,o){const r=[];for(const i of e)for(const s in i.components){let l=i.components[s];if(!(t!=="beforeRouteEnter"&&!i.instances[s]))if(fh(l)){const c=(l.__vccOpts||l)[t];c&&r.push(Ct(c,n,o,i,s))}else{let a=l();r.push(()=>a.then(c=>{if(!c)return Promise.reject(new Error(`Couldn't resolve component "${s}" at "${i.path}"`));const u=pd(c)?c.default:c;i.components[s]=u;const f=(u.__vccOpts||u)[t];return f&&Ct(f,n,o,i,s)()}))}}return r}function fh(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function ws(e){const t=ut(di),n=ut(Sa),o=R(()=>t.resolve(Vt(e.to))),r=R(()=>{const{matched:a}=o.value,{length:c}=a,u=a[c-1],d=n.matched;if(!u||!d.length)return-1;const f=d.findIndex(fn.bind(null,u));if(f>-1)return f;const p=xs(a[c-2]);return c>1&&xs(u)===p&&d[d.length-1].path!==p?d.findIndex(fn.bind(null,a[c-2])):f}),i=R(()=>r.value>-1&&mh(n.params,o.value.params)),s=R(()=>r.value>-1&&r.value===n.matched.length-1&&pa(n.params,o.value.params));function l(a={}){return gh(a)?t[Vt(e.replace)?"replace":"push"](Vt(e.to)).catch(Ln):Promise.resolve()}return{route:o,href:R(()=>o.value.href),isActive:i,isExactActive:s,navigate:l}}const dh=Lo({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:ws,setup(e,{slots:t}){const n=pn(ws(e)),{options:o}=ut(di),r=R(()=>({[Cs(e.activeClass,o.linkActiveClass,"router-link-active")]:n.isActive,[Cs(e.exactActiveClass,o.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const i=t.default&&t.default(n);return e.custom?i:E("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:r.value},i)}}}),hh=dh;function gh(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function mh(e,t){for(const n in t){const o=t[n],r=e[n];if(typeof o=="string"){if(o!==r)return!1}else if(!rt(r)||r.length!==o.length||o.some((i,s)=>i!==r[s]))return!1}return!0}function xs(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const Cs=(e,t,n)=>e!=null?e:t!=null?t:n,ph=Lo({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const o=ut(Or),r=R(()=>e.route||o.value),i=ut(_s,0),s=R(()=>{let c=Vt(i);const{matched:u}=r.value;let d;for(;(d=u[c])&&!d.components;)c++;return c}),l=R(()=>r.value.matched[s.value]);fo(_s,R(()=>s.value+1)),fo(ch,l),fo(Or,r);const a=he();return be(()=>[a.value,l.value,e.name],([c,u,d],[f,p,y])=>{u&&(u.instances[d]=c,p&&p!==u&&c&&c===f&&(u.leaveGuards.size||(u.leaveGuards=p.leaveGuards),u.updateGuards.size||(u.updateGuards=p.updateGuards))),c&&u&&(!p||!fn(u,p)||!f)&&(u.enterCallbacks[d]||[]).forEach(T=>T(c))},{flush:"post"}),()=>{const c=r.value,u=e.name,d=l.value,f=d&&d.components[u];if(!f)return ks(n.default,{Component:f,route:c});const p=d.props[u],y=p?p===!0?c.params:typeof p=="function"?p(c):p:null,q=E(f,ge({},y,t,{onVnodeUnmounted:M=>{M.component.isUnmounted&&(d.instances[u]=null)},ref:a}));return ks(n.default,{Component:q,route:c})||q}}});function ks(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const vh=ph;function bh(e){const t=Kd(e.routes,e),n=e.parseQuery||ah,o=e.stringifyQuery||ys,r=e.history,i=xn(),s=xn(),l=xn(),a=Yu(_t);let c=_t;en&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=or.bind(null,S=>""+S),d=or.bind(null,lh),f=or.bind(null,Ro);function p(S,Q){let z,X;return ba(S)?(z=t.getRecordMatcher(S),X=Q):X=S,t.addRoute(X,z)}function y(S){const Q=t.getRecordMatcher(S);Q&&t.removeRoute(Q)}function T(){return t.getRoutes().map(S=>S.record)}function q(S){return!!t.getRecordMatcher(S)}function M(S,Q){if(Q=ge({},Q||a.value),typeof S=="string"){const b=rr(n,S,Q.path),P=t.resolve({path:b.path},Q),O=r.createHref(b.fullPath);return ge(b,P,{params:f(P.params),hash:Ro(b.hash),redirectedFrom:void 0,href:O})}let z;if("path"in S)z=ge({},S,{path:rr(n,S.path,Q.path).path});else{const b=ge({},S.params);for(const P in b)b[P]==null&&delete b[P];z=ge({},S,{params:d(b)}),Q.params=d(Q.params)}const X=t.resolve(z,Q),de=S.hash||"";X.params=u(f(X.params));const h=yd(o,ge({},S,{hash:rh(de),path:X.path})),g=r.createHref(h);return ge({fullPath:h,hash:de,query:o===ys?uh(S.query):S.query||{}},X,{redirectedFrom:void 0,href:g})}function m(S){return typeof S=="string"?rr(n,S,a.value.path):ge({},S)}function _(S,Q){if(c!==S)return dn(8,{from:Q,to:S})}function w(S){return V(S)}function F(S){return w(ge(m(S),{replace:!0}))}function j(S){const Q=S.matched[S.matched.length-1];if(Q&&Q.redirect){const{redirect:z}=Q;let X=typeof z=="function"?z(S):z;return typeof X=="string"&&(X=X.includes("?")||X.includes("#")?X=m(X):{path:X},X.params={}),ge({query:S.query,hash:S.hash,params:"path"in X?{}:S.params},X)}}function V(S,Q){const z=c=M(S),X=a.value,de=S.state,h=S.force,g=S.replace===!0,b=j(z);if(b)return V(ge(m(b),{state:typeof b=="object"?ge({},de,b.state):de,force:h,replace:g}),Q||z);const P=z;P.redirectedFrom=Q;let O;return!h&&_d(o,X,z)&&(O=dn(16,{to:P,from:X}),fe(X,X,!0,!1)),(O?Promise.resolve(O):x(P,X)).catch(B=>ft(B)?ft(B,2)?B:se(B):W(B,P,X)).then(B=>{if(B){if(ft(B,2))return V(ge({replace:g},m(B.to),{state:typeof B.to=="object"?ge({},de,B.to.state):de,force:h}),Q||P)}else B=v(P,X,!0,g,de);return $(P,X,B),B})}function N(S,Q){const z=_(S,Q);return z?Promise.reject(z):Promise.resolve()}function C(S){const Q=Re.values().next().value;return Q&&typeof Q.runWithContext=="function"?Q.runWithContext(S):S()}function x(S,Q){let z;const[X,de,h]=yh(S,Q);z=ir(X.reverse(),"beforeRouteLeave",S,Q);for(const b of X)b.leaveGuards.forEach(P=>{z.push(Ct(P,S,Q))});const g=N.bind(null,S,Q);return z.push(g),ne(z).then(()=>{z=[];for(const b of i.list())z.push(Ct(b,S,Q));return z.push(g),ne(z)}).then(()=>{z=ir(de,"beforeRouteUpdate",S,Q);for(const b of de)b.updateGuards.forEach(P=>{z.push(Ct(P,S,Q))});return z.push(g),ne(z)}).then(()=>{z=[];for(const b of h)if(b.beforeEnter)if(rt(b.beforeEnter))for(const P of b.beforeEnter)z.push(Ct(P,S,Q));else z.push(Ct(b.beforeEnter,S,Q));return z.push(g),ne(z)}).then(()=>(S.matched.forEach(b=>b.enterCallbacks={}),z=ir(h,"beforeRouteEnter",S,Q),z.push(g),ne(z))).then(()=>{z=[];for(const b of s.list())z.push(Ct(b,S,Q));return z.push(g),ne(z)}).catch(b=>ft(b,8)?b:Promise.reject(b))}function $(S,Q,z){l.list().forEach(X=>C(()=>X(S,Q,z)))}function v(S,Q,z,X,de){const h=_(S,Q);if(h)return h;const g=Q===_t,b=en?history.state:{};z&&(X||g?r.replace(S.fullPath,ge({scroll:g&&b&&b.scroll},de)):r.push(S.fullPath,de)),a.value=S,fe(S,Q,z,g),se()}let H;function k(){H||(H=r.listen((S,Q,z)=>{if(!oe.listening)return;const X=M(S),de=j(X);if(de){V(ge(de,{replace:!0}),X).catch(Ln);return}c=X;const h=a.value;en&&Pd(fs(h.fullPath,z.delta),zo()),x(X,h).catch(g=>ft(g,12)?g:ft(g,2)?(V(g.to,X).then(b=>{ft(b,20)&&!z.delta&&z.type===Kn.pop&&r.go(-1,!1)}).catch(Ln),Promise.reject()):(z.delta&&r.go(-z.delta,!1),W(g,X,h))).then(g=>{g=g||v(X,h,!1),g&&(z.delta&&!ft(g,8)?r.go(-z.delta,!1):z.type===Kn.pop&&ft(g,20)&&r.go(-1,!1)),$(X,h,g)}).catch(Ln)}))}let Z=xn(),Y=xn(),A;function W(S,Q,z){se(S);const X=Y.list();return X.length?X.forEach(de=>de(S,Q,z)):console.error(S),Promise.reject(S)}function _e(){return A&&a.value!==_t?Promise.resolve():new Promise((S,Q)=>{Z.add([S,Q])})}function se(S){return A||(A=!S,k(),Z.list().forEach(([Q,z])=>S?z(S):Q()),Z.reset()),S}function fe(S,Q,z,X){const{scrollBehavior:de}=e;if(!en||!de)return Promise.resolve();const h=!z&&Td(fs(S.fullPath,0))||(X||!z)&&history.state&&history.state.scroll||null;return je().then(()=>de(S,Q,h)).then(g=>g&&Rd(g)).catch(g=>W(g,S,Q))}const L=S=>r.go(S);let ue;const Re=new Set,oe={currentRoute:a,listening:!0,addRoute:p,removeRoute:y,hasRoute:q,getRoutes:T,resolve:M,options:e,push:w,replace:F,go:L,back:()=>L(-1),forward:()=>L(1),beforeEach:i.add,beforeResolve:s.add,afterEach:l.add,onError:Y.add,isReady:_e,install(S){const Q=this;S.component("RouterLink",hh),S.component("RouterView",vh),S.config.globalProperties.$router=Q,Object.defineProperty(S.config.globalProperties,"$route",{enumerable:!0,get:()=>Vt(a)}),en&&!ue&&a.value===_t&&(ue=!0,w(r.location).catch(de=>{}));const z={};for(const de in _t)Object.defineProperty(z,de,{get:()=>a.value[de],enumerable:!0});S.provide(di,Q),S.provide(Sa,ml(z)),S.provide(Or,a);const X=S.unmount;Re.add(S),S.unmount=function(){Re.delete(S),Re.size<1&&(c=_t,H&&H(),H=null,a.value=_t,ue=!1,A=!1),X()}}};function ne(S){return S.reduce((Q,z)=>Q.then(()=>C(z)),Promise.resolve())}return oe}function yh(e,t){const n=[],o=[],r=[],i=Math.max(t.matched.length,e.matched.length);for(let s=0;sfn(c,l))?o.push(l):n.push(l));const a=e.matched[s];a&&(t.matched.find(c=>fn(c,a))||r.push(a))}return[n,o,r]}const _h=function(){const t=document.createElement("link").relList;return t&&t.supports&&t.supports("modulepreload")?"modulepreload":"preload"}(),Es={},wh="/nostrmarket/static/market/",sr=function(t,n){return!n||n.length===0?t():Promise.all(n.map(o=>{if(o=`${wh}${o}`,o in Es)return;Es[o]=!0;const r=o.endsWith(".css"),i=r?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${o}"]${i}`))return;const s=document.createElement("link");if(s.rel=r?"stylesheet":_h,r||(s.as="script",s.crossOrigin=""),s.href=o,document.head.appendChild(s),r)return new Promise((l,a)=>{s.addEventListener("load",l),s.addEventListener("error",()=>a(new Error(`Unable to preload CSS for ${o}`)))})})).then(()=>t())},xh=[{path:"/",component:()=>sr(()=>import("./MainLayout.8e5caf60.js"),["assets/MainLayout.8e5caf60.js","assets/QResizeObserver.1ffe80c2.js"]),children:[{path:"",component:()=>sr(()=>import("./MarketPage.e81dd906.js"),["assets/MarketPage.e81dd906.js","assets/QResizeObserver.1ffe80c2.js"])}]},{path:"/:catchAll(.*)*",component:()=>sr(()=>import("./ErrorNotFound.db68ea1d.js"),[])}];var lr=function(){return bh({scrollBehavior:()=>({left:0,top:0}),routes:xh,history:$d("/nostrmarket/static/market/")})};async function Ch(e,t){const n=e(md);n.use(fd,t);const o=vn(typeof lr=="function"?await lr({}):lr);return{app:n,router:o}}const $r={xs:18,sm:24,md:32,lg:38,xl:46},Yn={size:String};function Zn(e,t=$r){return R(()=>e.size!==void 0?{fontSize:e.size in t?`${t[e.size]}px`:e.size}:null)}const $e=e=>vn(Lo(e)),kh=e=>vn(e);function tt(e,t){return e!==void 0&&e()||t}function $m(e,t){if(e!==void 0){const n=e();if(n!=null)return n.slice()}return t}function It(e,t){return e!==void 0?t.concat(e()):t}function Eh(e,t){return e===void 0?t:t!==void 0?t.concat(e()):e()}function Lm(e,t,n,o,r,i){t.key=o+r;const s=E(e,t,n);return r===!0?Al(s,i()):s}const Ss="0 0 24 24",Rs=e=>e,ar=e=>`ionicons ${e}`,Ra={"mdi-":e=>`mdi ${e}`,"icon-":Rs,"bt-":e=>`bt ${e}`,"eva-":e=>`eva ${e}`,"ion-md":ar,"ion-ios":ar,"ion-logo":ar,"iconfont ":Rs,"ti-":e=>`themify-icon ${e}`,"bi-":e=>`bootstrap-icons ${e}`},Pa={o_:"-outlined",r_:"-round",s_:"-sharp"},Ta={sym_o_:"-outlined",sym_r_:"-rounded",sym_s_:"-sharp"},Sh=new RegExp("^("+Object.keys(Ra).join("|")+")"),Rh=new RegExp("^("+Object.keys(Pa).join("|")+")"),Ps=new RegExp("^("+Object.keys(Ta).join("|")+")"),Ph=/^[Mm]\s?[-+]?\.?\d/,Th=/^img:/,qh=/^svguse:/,Ah=/^ion-/,Mh=/^(fa-(sharp|solid|regular|light|brands|duotone|thin)|[lf]a[srlbdk]?) /;var pt=$e({name:"QIcon",props:{...Yn,tag:{type:String,default:"i"},name:String,color:String,left:Boolean,right:Boolean},setup(e,{slots:t}){const{proxy:{$q:n}}=ke(),o=Zn(e),r=R(()=>"q-icon"+(e.left===!0?" on-left":"")+(e.right===!0?" on-right":"")+(e.color!==void 0?` text-${e.color}`:"")),i=R(()=>{let s,l=e.name;if(l==="none"||!l)return{none:!0};if(n.iconMapFn!==null){const u=n.iconMapFn(l);if(u!==void 0)if(u.icon!==void 0){if(l=u.icon,l==="none"||!l)return{none:!0}}else return{cls:u.cls,content:u.content!==void 0?u.content:" "}}if(Ph.test(l)===!0){const[u,d=Ss]=l.split("|");return{svg:!0,viewBox:d,nodes:u.split("&&").map(f=>{const[p,y,T]=f.split("@@");return E("path",{style:y,d:p,transform:T})})}}if(Th.test(l)===!0)return{img:!0,src:l.substring(4)};if(qh.test(l)===!0){const[u,d=Ss]=l.split("|");return{svguse:!0,src:u.substring(7),viewBox:d}}let a=" ";const c=l.match(Sh);if(c!==null)s=Ra[c[1]](l);else if(Mh.test(l)===!0)s=l;else if(Ah.test(l)===!0)s=`ionicons ion-${n.platform.is.ios===!0?"ios":"md"}${l.substring(3)}`;else if(Ps.test(l)===!0){s="notranslate material-symbols";const u=l.match(Ps);u!==null&&(l=l.substring(6),s+=Ta[u[1]]),a=l}else{s="notranslate material-icons";const u=l.match(Rh);u!==null&&(l=l.substring(2),s+=Pa[u[1]]),a=l}return{cls:s,content:a}});return()=>{const s={class:r.value,style:o.value,"aria-hidden":"true",role:"presentation"};return i.value.none===!0?E(e.tag,s,tt(t.default)):i.value.img===!0?E("span",s,It(t.default,[E("img",{src:i.value.src})])):i.value.svg===!0?E("span",s,It(t.default,[E("svg",{viewBox:i.value.viewBox||"0 0 24 24"},i.value.nodes)])):i.value.svguse===!0?E("span",s,It(t.default,[E("svg",{viewBox:i.value.viewBox},[E("use",{"xlink:href":i.value.src})])])):(i.value.cls!==void 0&&(s.class+=" "+i.value.cls),E(e.tag,s,It(t.default,[i.value.content])))}}}),Oh=$e({name:"QAvatar",props:{...Yn,fontSize:String,color:String,textColor:String,icon:String,square:Boolean,rounded:Boolean},setup(e,{slots:t}){const n=Zn(e),o=R(()=>"q-avatar"+(e.color?` bg-${e.color}`:"")+(e.textColor?` text-${e.textColor} q-chip--colored`:"")+(e.square===!0?" q-avatar--square":e.rounded===!0?" rounded-borders":"")),r=R(()=>e.fontSize?{fontSize:e.fontSize}:null);return()=>{const i=e.icon!==void 0?[E(pt,{name:e.icon})]:void 0;return E("div",{class:o.value,style:n.value},[E("div",{class:"q-avatar__content row flex-center overflow-hidden",style:r.value},Eh(t.default,i))])}}});const $h={size:{type:[Number,String],default:"1em"},color:String};function Lh(e){return{cSize:R(()=>e.size in $r?`${$r[e.size]}px`:e.size),classes:R(()=>"q-spinner"+(e.color?` text-${e.color}`:""))}}var Un=$e({name:"QSpinner",props:{...$h,thickness:{type:Number,default:5}},setup(e){const{cSize:t,classes:n}=Lh(e);return()=>E("svg",{class:n.value+" q-spinner-mat",width:t.value,height:t.value,viewBox:"25 25 50 50"},[E("circle",{class:"path",cx:"50",cy:"50",r:"20",fill:"none",stroke:"currentColor","stroke-width":e.thickness,"stroke-miterlimit":"10"})])}});function Bm(e){return e===window?window.innerHeight:e.getBoundingClientRect().height}function Lr(e,t){const n=e.style;for(const o in t)n[o]=t[o]}function Bh(e){if(e==null)return;if(typeof e=="string")try{return document.querySelector(e)||void 0}catch{return}const t=Vt(e);if(t)return t.$el||t}function Fh(e,t){if(e==null||e.contains(t)===!0)return!0;for(let n=e.nextElementSibling;n!==null;n=n.nextElementSibling)if(n.contains(t))return!0;return!1}function Ih(e,t=250){let n=!1,o;return function(){return n===!1&&(n=!0,setTimeout(()=>{n=!1},t),o=e.apply(this,arguments)),o}}function Ts(e,t,n,o){n.modifiers.stop===!0&&ko(e);const r=n.modifiers.color;let i=n.modifiers.center;i=i===!0||o===!0;const s=document.createElement("span"),l=document.createElement("span"),a=Hf(e),{left:c,top:u,width:d,height:f}=t.getBoundingClientRect(),p=Math.sqrt(d*d+f*f),y=p/2,T=`${(d-p)/2}px`,q=i?T:`${a.left-c-y}px`,M=`${(f-p)/2}px`,m=i?M:`${a.top-u-y}px`;l.className="q-ripple__inner",Lr(l,{height:`${p}px`,width:`${p}px`,transform:`translate3d(${q},${m},0) scale3d(.2,.2,1)`,opacity:0}),s.className=`q-ripple${r?" text-"+r:""}`,s.setAttribute("dir","ltr"),s.appendChild(l),t.appendChild(s);const _=()=>{s.remove(),clearTimeout(w)};n.abort.push(_);let w=setTimeout(()=>{l.classList.add("q-ripple__inner--enter"),l.style.transform=`translate3d(${T},${M},0) scale3d(1,1,1)`,l.style.opacity=.2,w=setTimeout(()=>{l.classList.remove("q-ripple__inner--enter"),l.classList.add("q-ripple__inner--leave"),l.style.opacity=0,w=setTimeout(()=>{s.remove(),n.abort.splice(n.abort.indexOf(_),1)},275)},250)},50)}function qs(e,{modifiers:t,value:n,arg:o}){const r=Object.assign({},e.cfg.ripple,t,n);e.modifiers={early:r.early===!0,stop:r.stop===!0,center:r.center===!0,color:r.color||o,keyCodes:[].concat(r.keyCodes||13)}}var Nh=kh({name:"ripple",beforeMount(e,t){const n=t.instance.$.appContext.config.globalProperties.$q.config||{};if(n.ripple===!1)return;const o={cfg:n,enabled:t.value!==!1,modifiers:{},abort:[],start(r){o.enabled===!0&&r.qSkipRipple!==!0&&r.type===(o.modifiers.early===!0?"pointerdown":"click")&&Ts(r,e,o,r.qKeyEvent===!0)},keystart:Ih(r=>{o.enabled===!0&&r.qSkipRipple!==!0&&zn(r,o.modifiers.keyCodes)===!0&&r.type===`key${o.modifiers.early===!0?"down":"up"}`&&Ts(r,e,o,!0)},300)};qs(o,t),e.__qripple=o,Kf(o,"main",[[e,"pointerdown","start","passive"],[e,"click","start","passive"],[e,"keydown","keystart","passive"],[e,"keyup","keystart","passive"]])},updated(e,t){if(t.oldValue!==t.value){const n=e.__qripple;n!==void 0&&(n.enabled=t.value!==!1,n.enabled===!0&&Object(t.value)===t.value&&qs(n,t))}},beforeUnmount(e){const t=e.__qripple;t!==void 0&&(t.abort.forEach(n=>{n()}),Uf(t,"main"),delete e._qripple)}});const qa={left:"start",center:"center",right:"end",between:"between",around:"around",evenly:"evenly",stretch:"stretch"},jh=Object.keys(qa),Aa={align:{type:String,validator:e=>jh.includes(e)}};function Ma(e){return R(()=>{const t=e.align===void 0?e.vertical===!0?"stretch":"left":e.align;return`${e.vertical===!0?"items":"justify"}-${qa[t]}`})}function go(e){if(Object(e.$parent)===e.$parent)return e.$parent;let{parent:t}=e.$;for(;Object(t)===t;){if(Object(t.proxy)===t.proxy)return t.proxy;t=t.parent}}function Oa(e,t){typeof t.type=="symbol"?Array.isArray(t.children)===!0&&t.children.forEach(n=>{Oa(e,n)}):e.add(t)}function Fm(e){const t=new Set;return e.forEach(n=>{Oa(t,n)}),Array.from(t)}function $a(e){return e.appContext.config.globalProperties.$router!==void 0}function La(e){return e.isUnmounted===!0||e.isDeactivated===!0}function As(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}function Ms(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Vh(e,t){for(const n in t){const o=t[n],r=e[n];if(typeof o=="string"){if(o!==r)return!1}else if(Array.isArray(r)===!1||r.length!==o.length||o.some((i,s)=>i!==r[s]))return!1}return!0}function Os(e,t){return Array.isArray(t)===!0?e.length===t.length&&e.every((n,o)=>n===t[o]):e.length===1&&e[0]===t}function Dh(e,t){return Array.isArray(e)===!0?Os(e,t):Array.isArray(t)===!0?Os(t,e):e===t}function Hh(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(Dh(e[n],t[n])===!1)return!1;return!0}const zh={to:[String,Object],replace:Boolean,exact:Boolean,activeClass:{type:String,default:"q-router-link--active"},exactActiveClass:{type:String,default:"q-router-link--exact-active"},href:String,target:String,disable:Boolean};function Kh({fallbackTag:e,useDisableForRouterLinkProps:t=!0}={}){const n=ke(),{props:o,proxy:r,emit:i}=n,s=$a(n),l=R(()=>o.disable!==!0&&o.href!==void 0),a=R(t===!0?()=>s===!0&&o.disable!==!0&&l.value!==!0&&o.to!==void 0&&o.to!==null&&o.to!=="":()=>s===!0&&l.value!==!0&&o.to!==void 0&&o.to!==null&&o.to!==""),c=R(()=>a.value===!0?m(o.to):null),u=R(()=>c.value!==null),d=R(()=>l.value===!0||u.value===!0),f=R(()=>o.type==="a"||d.value===!0?"a":o.tag||e||"div"),p=R(()=>l.value===!0?{href:o.href,target:o.target}:u.value===!0?{href:c.value.href,target:o.target}:{}),y=R(()=>{if(u.value===!1)return-1;const{matched:F}=c.value,{length:j}=F,V=F[j-1];if(V===void 0)return-1;const N=r.$route.matched;if(N.length===0)return-1;const C=N.findIndex(Ms.bind(null,V));if(C>-1)return C;const x=As(F[j-2]);return j>1&&As(V)===x&&N[N.length-1].path!==x?N.findIndex(Ms.bind(null,F[j-2])):C}),T=R(()=>u.value===!0&&y.value!==-1&&Vh(r.$route.params,c.value.params)),q=R(()=>T.value===!0&&y.value===r.$route.matched.length-1&&Hh(r.$route.params,c.value.params)),M=R(()=>u.value===!0?q.value===!0?` ${o.exactActiveClass} ${o.activeClass}`:o.exact===!0?"":T.value===!0?` ${o.activeClass}`:"":"");function m(F){try{return r.$router.resolve(F)}catch{}return null}function _(F,{returnRouterError:j,to:V=o.to,replace:N=o.replace}={}){if(o.disable===!0)return F.preventDefault(),Promise.resolve(!1);if(F.metaKey||F.altKey||F.ctrlKey||F.shiftKey||F.button!==void 0&&F.button!==0||o.target==="_blank")return Promise.resolve(!1);F.preventDefault();const C=r.$router[N===!0?"replace":"push"](V);return j===!0?C:C.then(()=>{}).catch(()=>{})}function w(F){if(u.value===!0){const j=V=>_(F,V);i("click",F,j),F.defaultPrevented!==!0&&j()}else i("click",F)}return{hasRouterLink:u,hasHrefLink:l,hasLink:d,linkTag:f,resolvedLink:c,linkIsActive:T,linkIsExactActive:q,linkClass:M,linkAttrs:p,getLink:m,navigateToRouterLink:_,navigateOnClick:w}}const $s={none:0,xs:4,sm:8,md:16,lg:24,xl:32},Uh={xs:8,sm:10,md:14,lg:20,xl:24},Wh=["button","submit","reset"],Qh=/[^\s]\/[^\s]/,Yh=["flat","outline","push","unelevated"],Ba=(e,t)=>e.flat===!0?"flat":e.outline===!0?"outline":e.push===!0?"push":e.unelevated===!0?"unelevated":t,Im=e=>{const t=Ba(e);return t!==void 0?{[t]:!0}:{}},Zh={...Yn,...zh,type:{type:String,default:"button"},label:[Number,String],icon:String,iconRight:String,...Yh.reduce((e,t)=>(e[t]=Boolean)&&e,{}),square:Boolean,round:Boolean,rounded:Boolean,glossy:Boolean,size:String,fab:Boolean,fabMini:Boolean,padding:String,color:String,textColor:String,noCaps:Boolean,noWrap:Boolean,dense:Boolean,tabindex:[Number,String],ripple:{type:[Boolean,Object],default:!0},align:{...Aa.align,default:"center"},stack:Boolean,stretch:Boolean,loading:{type:Boolean,default:null},disable:Boolean};function Jh(e){const t=Zn(e,Uh),n=Ma(e),{hasRouterLink:o,hasLink:r,linkTag:i,linkAttrs:s,navigateOnClick:l}=Kh({fallbackTag:"button"}),a=R(()=>{const q=e.fab===!1&&e.fabMini===!1?t.value:{};return e.padding!==void 0?Object.assign({},q,{padding:e.padding.split(/\s+/).map(M=>M in $s?$s[M]+"px":M).join(" "),minWidth:"0",minHeight:"0"}):q}),c=R(()=>e.rounded===!0||e.fab===!0||e.fabMini===!0),u=R(()=>e.disable!==!0&&e.loading!==!0),d=R(()=>u.value===!0?e.tabindex||0:-1),f=R(()=>Ba(e,"standard")),p=R(()=>{const q={tabindex:d.value};return r.value===!0?Object.assign(q,s.value):Wh.includes(e.type)===!0&&(q.type=e.type),i.value==="a"?(e.disable===!0?q["aria-disabled"]="true":q.href===void 0&&(q.role="button"),o.value!==!0&&Qh.test(e.type)===!0&&(q.type=e.type)):e.disable===!0&&(q.disabled="",q["aria-disabled"]="true"),e.loading===!0&&e.percentage!==void 0&&Object.assign(q,{role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":e.percentage}),q}),y=R(()=>{let q;e.color!==void 0?e.flat===!0||e.outline===!0?q=`text-${e.textColor||e.color}`:q=`bg-${e.color} text-${e.textColor||"white"}`:e.textColor&&(q=`text-${e.textColor}`);const M=e.round===!0?"round":`rectangle${c.value===!0?" q-btn--rounded":e.square===!0?" q-btn--square":""}`;return`q-btn--${f.value} q-btn--${M}`+(q!==void 0?" "+q:"")+(u.value===!0?" q-btn--actionable q-focusable q-hoverable":e.disable===!0?" disabled":"")+(e.fab===!0?" q-btn--fab":e.fabMini===!0?" q-btn--fab-mini":"")+(e.noCaps===!0?" q-btn--no-uppercase":"")+(e.dense===!0?" q-btn--dense":"")+(e.stretch===!0?" no-border-radius self-stretch":"")+(e.glossy===!0?" glossy":"")+(e.square?" q-btn--square":"")}),T=R(()=>n.value+(e.stack===!0?" column":" row")+(e.noWrap===!0?" no-wrap text-no-wrap":"")+(e.loading===!0?" q-btn__content--hidden":""));return{classes:y,style:a,innerClasses:T,attributes:p,hasLink:r,linkTag:i,navigateOnClick:l,isActionable:u}}const{passiveCapture:He}=Be;let Jt=null,Xt=null,Gt=null;var Br=$e({name:"QBtn",props:{...Zh,percentage:Number,darkPercentage:Boolean,onTouchstart:[Function,Array]},emits:["click","keydown","mousedown","keyup"],setup(e,{slots:t,emit:n}){const{proxy:o}=ke(),{classes:r,style:i,innerClasses:s,attributes:l,hasLink:a,linkTag:c,navigateOnClick:u,isActionable:d}=Jh(e),f=he(null),p=he(null);let y=null,T,q=null;const M=R(()=>e.label!==void 0&&e.label!==null&&e.label!==""),m=R(()=>e.disable===!0||e.ripple===!1?!1:{keyCodes:a.value===!0?[13,32]:[13],...e.ripple===!0?{}:e.ripple}),_=R(()=>({center:e.round})),w=R(()=>{const k=Math.max(0,Math.min(100,e.percentage));return k>0?{transition:"transform 0.6s",transform:`translateX(${k-100}%)`}:{}}),F=R(()=>{if(e.loading===!0)return{onMousedown:H,onTouchstart:H,onClick:H,onKeydown:H,onKeyup:H};if(d.value===!0){const k={onClick:V,onKeydown:N,onMousedown:x};if(o.$q.platform.has.touch===!0){const Z=e.onTouchstart!==void 0?"":"Passive";k[`onTouchstart${Z}`]=C}return k}return{onClick:Ke}}),j=R(()=>({ref:f,class:"q-btn q-btn-item non-selectable no-outline "+r.value,style:i.value,...l.value,...F.value}));function V(k){if(f.value!==null){if(k!==void 0){if(k.defaultPrevented===!0)return;const Z=document.activeElement;if(e.type==="submit"&&Z!==document.body&&f.value.contains(Z)===!1&&Z.contains(f.value)===!1){f.value.focus();const Y=()=>{document.removeEventListener("keydown",Ke,!0),document.removeEventListener("keyup",Y,He),f.value!==null&&f.value.removeEventListener("blur",Y,He)};document.addEventListener("keydown",Ke,!0),document.addEventListener("keyup",Y,He),f.value.addEventListener("blur",Y,He)}}u(k)}}function N(k){f.value!==null&&(n("keydown",k),zn(k,[13,32])===!0&&Xt!==f.value&&(Xt!==null&&v(),k.defaultPrevented!==!0&&(f.value.focus(),Xt=f.value,f.value.classList.add("q-btn--active"),document.addEventListener("keyup",$,!0),f.value.addEventListener("blur",$,He)),Ke(k)))}function C(k){f.value!==null&&(n("touchstart",k),k.defaultPrevented!==!0&&(Jt!==f.value&&(Jt!==null&&v(),Jt=f.value,y=k.target,y.addEventListener("touchcancel",$,He),y.addEventListener("touchend",$,He)),T=!0,q!==null&&clearTimeout(q),q=setTimeout(()=>{q=null,T=!1},200)))}function x(k){f.value!==null&&(k.qSkipRipple=T===!0,n("mousedown",k),k.defaultPrevented!==!0&&Gt!==f.value&&(Gt!==null&&v(),Gt=f.value,f.value.classList.add("q-btn--active"),document.addEventListener("mouseup",$,He)))}function $(k){if(f.value!==null&&!(k!==void 0&&k.type==="blur"&&document.activeElement===f.value)){if(k!==void 0&&k.type==="keyup"){if(Xt===f.value&&zn(k,[13,32])===!0){const Z=new MouseEvent("click",k);Z.qKeyEvent=!0,k.defaultPrevented===!0&&Et(Z),k.cancelBubble===!0&&ko(Z),f.value.dispatchEvent(Z),Ke(k),k.qKeyEvent=!0}n("keyup",k)}v()}}function v(k){const Z=p.value;k!==!0&&(Jt===f.value||Gt===f.value)&&Z!==null&&Z!==document.activeElement&&(Z.setAttribute("tabindex",-1),Z.focus()),Jt===f.value&&(y!==null&&(y.removeEventListener("touchcancel",$,He),y.removeEventListener("touchend",$,He)),Jt=y=null),Gt===f.value&&(document.removeEventListener("mouseup",$,He),Gt=null),Xt===f.value&&(document.removeEventListener("keyup",$,!0),f.value!==null&&f.value.removeEventListener("blur",$,He),Xt=null),f.value!==null&&f.value.classList.remove("q-btn--active")}function H(k){Ke(k),k.qSkipRipple=!0}return We(()=>{v(!0)}),Object.assign(o,{click:V}),()=>{let k=[];e.icon!==void 0&&k.push(E(pt,{name:e.icon,left:e.stack===!1&&M.value===!0,role:"img","aria-hidden":"true"})),M.value===!0&&k.push(E("span",{class:"block"},[e.label])),k=It(t.default,k),e.iconRight!==void 0&&e.round===!1&&k.push(E(pt,{name:e.iconRight,right:e.stack===!1&&M.value===!0,role:"img","aria-hidden":"true"}));const Z=[E("span",{class:"q-focus-helper",ref:p})];return e.loading===!0&&e.percentage!==void 0&&Z.push(E("span",{class:"q-btn__progress absolute-full overflow-hidden"+(e.darkPercentage===!0?" q-btn__progress--dark":"")},[E("span",{class:"q-btn__progress-indicator fit block",style:w.value})])),Z.push(E("span",{class:"q-btn__content text-center col items-center q-anchor--skip "+s.value},k)),e.loading!==null&&Z.push(E(cn,{name:"q-transition--fade"},()=>e.loading===!0?[E("span",{key:"loading",class:"absolute-full flex flex-center"},t.loading!==void 0?t.loading():[E(Un)])]:null)),Al(E(c.value,j.value,Z),[[Nh,m.value,void 0,_.value]])}}});let Xh=1,Gh=document.body;function hi(e,t){const n=document.createElement("div");if(n.id=t!==void 0?`q-portal--${t}--${Xh++}`:e,So.globalNodes!==void 0){const o=So.globalNodes.class;o!==void 0&&(n.className=o)}return Gh.appendChild(n),n}function Fa(e){e.remove()}let eg=0;const mo={},po={},Je={},Ia={},tg=/^\s*$/,Na=[],gi=["top-left","top-right","bottom-left","bottom-right","top","bottom","left","right","center"],ng=["top-left","top-right","bottom-left","bottom-right"],tn={positive:{icon:e=>e.iconSet.type.positive,color:"positive"},negative:{icon:e=>e.iconSet.type.negative,color:"negative"},warning:{icon:e=>e.iconSet.type.warning,color:"warning",textColor:"dark"},info:{icon:e=>e.iconSet.type.info,color:"info"},ongoing:{group:!1,timeout:0,spinner:!0,color:"grey-8"}};function ja(e,t,n){if(!e)return Cn("parameter required");let o;const r={textColor:"white"};if(e.ignoreDefaults!==!0&&Object.assign(r,mo),at(e)===!1&&(r.type&&Object.assign(r,tn[r.type]),e={message:e}),Object.assign(r,tn[e.type||r.type],e),typeof r.icon=="function"&&(r.icon=r.icon(t)),r.spinner?(r.spinner===!0&&(r.spinner=Un),r.spinner=vn(r.spinner)):r.spinner=!1,r.meta={hasMedia:Boolean(r.spinner!==!1||r.icon||r.avatar),hasText:Ls(r.message)||Ls(r.caption)},r.position){if(gi.includes(r.position)===!1)return Cn("wrong position",e)}else r.position="bottom";if(r.timeout===void 0)r.timeout=5e3;else{const a=parseInt(r.timeout,10);if(isNaN(a)||a<0)return Cn("wrong timeout",e);r.timeout=a}r.timeout===0?r.progress=!1:r.progress===!0&&(r.meta.progressClass="q-notification__progress"+(r.progressClass?` ${r.progressClass}`:""),r.meta.progressStyle={animationDuration:`${r.timeout+1e3}ms`});const i=(Array.isArray(e.actions)===!0?e.actions:[]).concat(e.ignoreDefaults!==!0&&Array.isArray(mo.actions)===!0?mo.actions:[]).concat(tn[e.type]!==void 0&&Array.isArray(tn[e.type].actions)===!0?tn[e.type].actions:[]),{closeBtn:s}=r;if(s&&i.push({label:typeof s=="string"?s:t.lang.label.close}),r.actions=i.map(({handler:a,noDismiss:c,...u})=>({flat:!0,...u,onClick:typeof a=="function"?()=>{a(),c!==!0&&l()}:()=>{l()}})),r.multiLine===void 0&&(r.multiLine=r.actions.length>1),Object.assign(r.meta,{class:`q-notification row items-stretch q-notification--${r.multiLine===!0?"multi-line":"standard"}`+(r.color!==void 0?` bg-${r.color}`:"")+(r.textColor!==void 0?` text-${r.textColor}`:"")+(r.classes!==void 0?` ${r.classes}`:""),wrapperClass:"q-notification__wrapper col relative-position border-radius-inherit "+(r.multiLine===!0?"column no-wrap justify-center":"row items-center"),contentClass:"q-notification__content row items-center"+(r.multiLine===!0?"":" col"),leftClass:r.meta.hasText===!0?"additional":"single",attrs:{role:"alert",...r.attrs}}),r.group===!1?(r.group=void 0,r.meta.group=void 0):((r.group===void 0||r.group===!0)&&(r.group=[r.message,r.caption,r.multiline].concat(r.actions.map(a=>`${a.label}*${a.icon}`)).join("|")),r.meta.group=r.group+"|"+r.position),r.actions.length===0?r.actions=void 0:r.meta.actionsClass="q-notification__actions row items-center "+(r.multiLine===!0?"justify-end":"col-auto")+(r.meta.hasMedia===!0?" q-notification__actions--with-media":""),n!==void 0){n.notif.meta.timer&&(clearTimeout(n.notif.meta.timer),n.notif.meta.timer=void 0),r.meta.uid=n.notif.meta.uid;const a=Je[r.position].value.indexOf(n.notif);Je[r.position].value[a]=r}else{const a=po[r.meta.group];if(a===void 0){if(r.meta.uid=eg++,r.meta.badge=1,["left","right","center"].indexOf(r.position)!==-1)Je[r.position].value.splice(Math.floor(Je[r.position].value.length/2),0,r);else{const c=r.position.indexOf("top")>-1?"unshift":"push";Je[r.position].value[c](r)}r.group!==void 0&&(po[r.meta.group]=r)}else{if(a.meta.timer&&(clearTimeout(a.meta.timer),a.meta.timer=void 0),r.badgePosition!==void 0){if(ng.includes(r.badgePosition)===!1)return Cn("wrong badgePosition",e)}else r.badgePosition=`top-${r.position.indexOf("left")>-1?"right":"left"}`;r.meta.uid=a.meta.uid,r.meta.badge=a.meta.badge+1,r.meta.badgeClass=`q-notification__badge q-notification__badge--${r.badgePosition}`+(r.badgeColor!==void 0?` bg-${r.badgeColor}`:"")+(r.badgeTextColor!==void 0?` text-${r.badgeTextColor}`:"")+(r.badgeClass?` ${r.badgeClass}`:"");const c=Je[r.position].value.indexOf(a);Je[r.position].value[c]=po[r.meta.group]=r}}const l=()=>{og(r),o=void 0};if(r.timeout>0&&(r.meta.timer=setTimeout(()=>{r.meta.timer=void 0,l()},r.timeout+1e3)),r.group!==void 0)return a=>{a!==void 0?Cn("trying to update a grouped one which is forbidden",e):l()};if(o={dismiss:l,config:e,notif:r},n!==void 0){Object.assign(n,o);return}return a=>{if(o!==void 0)if(a===void 0)o.dismiss();else{const c=Object.assign({},o.config,a,{group:!1,position:r.position});ja(c,t,o)}}}function og(e){e.meta.timer&&(clearTimeout(e.meta.timer),e.meta.timer=void 0);const t=Je[e.position].value.indexOf(e);if(t!==-1){e.group!==void 0&&delete po[e.meta.group];const n=Na[""+e.meta.uid];if(n){const{width:o,height:r}=getComputedStyle(n);n.style.left=`${n.offsetLeft}px`,n.style.width=o,n.style.height=r}Je[e.position].value.splice(t,1),typeof e.onDismiss=="function"&&e.onDismiss()}}function Ls(e){return e!=null&&tg.test(e)!==!0}function Cn(e,t){return console.error(`Notify: ${e}`,t),!1}function rg(){return $e({name:"QNotifications",devtools:{hide:!0},setup(){return()=>E("div",{class:"q-notifications"},gi.map(e=>E(Tf,{key:e,class:Ia[e],tag:"div",name:`q-notification--${e}`},()=>Je[e].value.map(t=>{const n=t.meta,o=[];if(n.hasMedia===!0&&(t.spinner!==!1?o.push(E(t.spinner,{class:"q-notification__spinner q-notification__spinner--"+n.leftClass,color:t.spinnerColor,size:t.spinnerSize})):t.icon?o.push(E(pt,{class:"q-notification__icon q-notification__icon--"+n.leftClass,name:t.icon,color:t.iconColor,size:t.iconSize,role:"img"})):t.avatar&&o.push(E(Oh,{class:"q-notification__avatar q-notification__avatar--"+n.leftClass},()=>E("img",{src:t.avatar,"aria-hidden":"true"})))),n.hasText===!0){let i;const s={class:"q-notification__message col"};if(t.html===!0)s.innerHTML=t.caption?`
${t.message}
${t.caption}
`:t.message;else{const l=[t.message];i=t.caption?[E("div",l),E("div",{class:"q-notification__caption"},[t.caption])]:l}o.push(E("div",s,i))}const r=[E("div",{class:n.contentClass},o)];return t.progress===!0&&r.push(E("div",{key:`${n.uid}|p|${n.badge}`,class:n.progressClass,style:n.progressStyle})),t.actions!==void 0&&r.push(E("div",{class:n.actionsClass},t.actions.map(i=>E(Br,i)))),n.badge>1&&r.push(E("div",{key:`${n.uid}|${n.badge}`,class:t.meta.badgeClass,style:t.badgeStyle},[n.badge])),E("div",{ref:i=>{Na[""+n.uid]=i},key:n.uid,class:n.class,...n.attrs},[E("div",{class:n.wrapperClass},r)])}))))}})}var ig={setDefaults(e){at(e)===!0&&Object.assign(mo,e)},registerType(e,t){at(t)===!0&&(tn[e]=t)},install({$q:e,parentApp:t}){if(e.notify=this.create=n=>ja(n,e),e.notify.setDefaults=this.setDefaults,e.notify.registerType=this.registerType,e.config.notify!==void 0&&this.setDefaults(e.config.notify),this.__installed!==!0){gi.forEach(o=>{Je[o]=he([]);const r=["left","center","right"].includes(o)===!0?"center":o.indexOf("top")>-1?"top":"bottom",i=o.indexOf("left")>-1?"start":o.indexOf("right")>-1?"end":"center",s=["left","right"].includes(o)?`items-${o==="left"?"start":"end"} justify-center`:o==="center"?"flex-center":`items-${i}`;Ia[o]=`q-notifications__list q-notifications__list--${r} fixed column no-wrap ${s}`});const n=hi("q-notify");ma(rg(),t).mount(n)}}};function sg(e){return ld(e)===!0?"__q_date|"+e.toUTCString():ad(e)===!0?"__q_expr|"+e.source:typeof e=="number"?"__q_numb|"+e:typeof e=="boolean"?"__q_bool|"+(e?"1":"0"):typeof e=="string"?"__q_strn|"+e:typeof e=="function"?"__q_strn|"+e.toString():e===Object(e)?"__q_objt|"+JSON.stringify(e):e}function lg(e){if(e.length<9)return e;const n=e.substring(0,8),o=e.substring(9);switch(n){case"__q_date":return new Date(o);case"__q_expr":return new RegExp(o);case"__q_numb":return Number(o);case"__q_bool":return Boolean(o==="1");case"__q_strn":return""+o;case"__q_objt":return JSON.parse(o);default:return e}}function ag(){const e=()=>null;return{has:()=>!1,getLength:()=>0,getItem:e,getIndex:e,getKey:e,getAll:()=>{},getAllKeys:()=>[],set:Pt,remove:Pt,clear:Pt,isEmpty:()=>!0}}function ug(e){const t=window[e+"Storage"],n=o=>{const r=t.getItem(o);return r?lg(r):null};return{has:o=>t.getItem(o)!==null,getLength:()=>t.length,getItem:n,getIndex:o=>oo{let o;const r={},i=t.length;for(let s=0;s{const o=[],r=t.length;for(let i=0;i{t.setItem(o,sg(r))},remove:o=>{t.removeItem(o)},clear:()=>{t.clear()},isEmpty:()=>t.length===0}}const Va=we.has.webStorage===!1?ag():ug("local"),Da={install({$q:e}){e.localStorage=Va}};Object.assign(Da,Va);function cg(e,t,n){let o;function r(){o!==void 0&&(qr.remove(o),o=void 0)}return We(()=>{e.value===!0&&r()}),{removeFromHistory:r,addToHistory(){o={condition:()=>n.value===!0,handler:t},qr.add(o)}}}function fg(){let e=null;const t=ke();function n(){e!==null&&(clearTimeout(e),e=null)}return Fo(n),We(n),{removeTimeout:n,registerTimeout(o,r){n(),La(t)===!1&&(e=setTimeout(o,r))}}}function dg(){let e;const t=ke();function n(){e=void 0}return Fo(n),We(n),{removeTick:n,registerTick(o){e=o,je(()=>{e===o&&(La(t)===!1&&e(),e=void 0)})}}}const hg={modelValue:{type:Boolean,default:null},"onUpdate:modelValue":[Function,Array]},gg=["beforeShow","show","beforeHide","hide"];function mg({showing:e,canShow:t,hideOnRouteChange:n,handleShow:o,handleHide:r,processOnMount:i}){const s=ke(),{props:l,emit:a,proxy:c}=s;let u;function d(m){e.value===!0?y(m):f(m)}function f(m){if(l.disable===!0||m!==void 0&&m.qAnchorHandled===!0||t!==void 0&&t(m)!==!0)return;const _=l["onUpdate:modelValue"]!==void 0;_===!0&&(a("update:modelValue",!0),u=m,je(()=>{u===m&&(u=void 0)})),(l.modelValue===null||_===!1)&&p(m)}function p(m){e.value!==!0&&(e.value=!0,a("beforeShow",m),o!==void 0?o(m):a("show",m))}function y(m){if(l.disable===!0)return;const _=l["onUpdate:modelValue"]!==void 0;_===!0&&(a("update:modelValue",!1),u=m,je(()=>{u===m&&(u=void 0)})),(l.modelValue===null||_===!1)&&T(m)}function T(m){e.value!==!1&&(e.value=!1,a("beforeHide",m),r!==void 0?r(m):a("hide",m))}function q(m){l.disable===!0&&m===!0?l["onUpdate:modelValue"]!==void 0&&a("update:modelValue",!1):m===!0!==e.value&&(m===!0?p:T)(u)}be(()=>l.modelValue,q),n!==void 0&&$a(s)===!0&&be(()=>c.$route.fullPath,()=>{n.value===!0&&e.value===!0&&y()}),i===!0&&Ut(()=>{q(l.modelValue)});const M={show:f,hide:y,toggle:d};return Object.assign(c,M),M}const pg={transitionShow:{type:String,default:"fade"},transitionHide:{type:String,default:"fade"},transitionDuration:{type:[String,Number],default:300}};function vg(e,t=()=>{},n=()=>{}){return{transitionProps:R(()=>{const o=`q-transition--${e.transitionShow||t()}`,r=`q-transition--${e.transitionHide||n()}`;return{appear:!0,enterFromClass:`${o}-enter-from`,enterActiveClass:`${o}-enter-active`,enterToClass:`${o}-enter-to`,leaveFromClass:`${r}-leave-from`,leaveActiveClass:`${r}-leave-active`,leaveToClass:`${r}-leave-to`}}),transitionStyle:R(()=>`--q-transition-duration: ${e.transitionDuration}ms`)}}let Nt=[],Wn=[];function Ha(e){Wn=Wn.filter(t=>t!==e)}function bg(e){Ha(e),Wn.push(e)}function Bs(e){Ha(e),Wn.length===0&&Nt.length!==0&&(Nt[Nt.length-1](),Nt=[])}function mi(e){Wn.length===0?e():Nt.push(e)}function yg(e){Nt=Nt.filter(t=>t!==e)}const vo=[];function Nm(e){return vo.find(t=>t.contentEl!==null&&t.contentEl.contains(e))}function _g(e,t){do{if(e.$options.name==="QMenu"){if(e.hide(t),e.$props.separateClosePopup===!0)return go(e)}else if(e.__qPortal===!0){const n=go(e);return n!==void 0&&n.$options.name==="QPopupProxy"?(e.hide(t),n):e}e=go(e)}while(e!=null)}function jm(e,t,n){for(;n!==0&&e!==void 0&&e!==null;){if(e.__qPortal===!0){if(n--,e.$options.name==="QMenu"){e=_g(e,t);continue}e.hide(t)}e=go(e)}}function wg(e){for(e=e.parent;e!=null;){if(e.type.name==="QGlobalDialog")return!0;if(e.type.name==="QDialog"||e.type.name==="QMenu")return!1;e=e.parent}return!1}function xg(e,t,n,o){const r=he(!1),i=he(!1);let s=null;const l={},a=o==="dialog"&&wg(e);function c(d){if(d===!0){Bs(l),i.value=!0;return}i.value=!1,r.value===!1&&(a===!1&&s===null&&(s=hi(!1,o)),r.value=!0,vo.push(e.proxy),bg(l))}function u(d){if(i.value=!1,d!==!0)return;Bs(l),r.value=!1;const f=vo.indexOf(e.proxy);f!==-1&&vo.splice(f,1),s!==null&&(Fa(s),s=null)}return ii(()=>{u(!0)}),e.proxy.__qPortal=!0,bn(e.proxy,"contentEl",()=>t.value),{showPortal:c,hidePortal:u,portalIsActive:r,portalIsAccessible:i,renderPortal:()=>a===!0?n():r.value===!0?[E(zc,{to:s},n())]:void 0}}const Cg=[null,document,document.body,document.scrollingElement,document.documentElement];function Vm(e,t){let n=Bh(t);if(n===void 0){if(e==null)return window;n=e.closest(".scroll,.scroll-y,.overflow-auto")}return Cg.includes(n)?window:n}function Dm(e){return(e===window?document.body:e).scrollHeight}function za(e){return e===window?window.pageYOffset||window.scrollY||document.body.scrollTop||0:e.scrollTop}function Ka(e){return e===window?window.pageXOffset||window.scrollX||document.body.scrollLeft||0:e.scrollLeft}function Ua(e,t,n=0){const o=arguments[3]===void 0?performance.now():arguments[3],r=za(e);if(n<=0){r!==t&&Fr(e,t);return}requestAnimationFrame(i=>{const s=i-o,l=r+(t-r)/Math.max(s,n)*s;Fr(e,l),l!==t&&Ua(e,t,n-s,i)})}function Wa(e,t,n=0){const o=arguments[3]===void 0?performance.now():arguments[3],r=Ka(e);if(n<=0){r!==t&&Ir(e,t);return}requestAnimationFrame(i=>{const s=i-o,l=r+(t-r)/Math.max(s,n)*s;Ir(e,l),l!==t&&Wa(e,t,n-s,i)})}function Fr(e,t){if(e===window){window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,t);return}e.scrollTop=t}function Ir(e,t){if(e===window){window.scrollTo(t,window.pageYOffset||window.scrollY||document.body.scrollTop||0);return}e.scrollLeft=t}function Hm(e,t,n){if(n){Ua(e,t,n);return}Fr(e,t)}function zm(e,t,n){if(n){Wa(e,t,n);return}Ir(e,t)}let ro;function Km(){if(ro!==void 0)return ro;const e=document.createElement("p"),t=document.createElement("div");Lr(e,{width:"100%",height:"200px"}),Lr(t,{position:"absolute",top:"0px",left:"0px",visibility:"hidden",width:"200px",height:"150px",overflow:"hidden"}),t.appendChild(e),document.body.appendChild(t);const n=e.offsetWidth;t.style.overflow="scroll";let o=e.offsetWidth;return n===o&&(o=t.clientWidth),t.remove(),ro=n-o,ro}function kg(e,t=!0){return!e||e.nodeType!==Node.ELEMENT_NODE?!1:t?e.scrollHeight>e.clientHeight&&(e.classList.contains("scroll")||e.classList.contains("overflow-auto")||["auto","scroll"].includes(window.getComputedStyle(e)["overflow-y"])):e.scrollWidth>e.clientWidth&&(e.classList.contains("scroll")||e.classList.contains("overflow-auto")||["auto","scroll"].includes(window.getComputedStyle(e)["overflow-x"]))}let kn=0,ur,cr,Tn,fr=!1,Fs,Is,Ns,$t=null;function Eg(e){Sg(e)&&Ke(e)}function Sg(e){if(e.target===document.body||e.target.classList.contains("q-layout__backdrop"))return!0;const t=zf(e),n=e.shiftKey&&!e.deltaX,o=!n&&Math.abs(e.deltaX)<=Math.abs(e.deltaY),r=n||o?e.deltaY:e.deltaX;for(let i=0;i0&&s.scrollTop+s.clientHeight===s.scrollHeight:r<0&&s.scrollLeft===0?!0:r>0&&s.scrollLeft+s.clientWidth===s.scrollWidth}return!0}function js(e){e.target===document&&(document.scrollingElement.scrollTop=document.scrollingElement.scrollTop)}function io(e){fr!==!0&&(fr=!0,requestAnimationFrame(()=>{fr=!1;const{height:t}=e.target,{clientHeight:n,scrollTop:o}=document.scrollingElement;(Tn===void 0||t!==window.innerHeight)&&(Tn=n-t,document.scrollingElement.scrollTop=o),o>Tn&&(document.scrollingElement.scrollTop-=Math.ceil((o-Tn)/8))}))}function Vs(e){const t=document.body,n=window.visualViewport!==void 0;if(e==="add"){const{overflowY:o,overflowX:r}=window.getComputedStyle(t);ur=Ka(window),cr=za(window),Fs=t.style.left,Is=t.style.top,Ns=window.location.href,t.style.left=`-${ur}px`,t.style.top=`-${cr}px`,r!=="hidden"&&(r==="scroll"||t.scrollWidth>window.innerWidth)&&t.classList.add("q-body--force-scrollbar-x"),o!=="hidden"&&(o==="scroll"||t.scrollHeight>window.innerHeight)&&t.classList.add("q-body--force-scrollbar-y"),t.classList.add("q-body--prevent-scroll"),document.qScrollPrevented=!0,we.is.ios===!0&&(n===!0?(window.scrollTo(0,0),window.visualViewport.addEventListener("resize",io,Be.passiveCapture),window.visualViewport.addEventListener("scroll",io,Be.passiveCapture),window.scrollTo(0,0)):window.addEventListener("scroll",js,Be.passiveCapture))}we.is.desktop===!0&&we.is.mac===!0&&window[`${e}EventListener`]("wheel",Eg,Be.notPassive),e==="remove"&&(we.is.ios===!0&&(n===!0?(window.visualViewport.removeEventListener("resize",io,Be.passiveCapture),window.visualViewport.removeEventListener("scroll",io,Be.passiveCapture)):window.removeEventListener("scroll",js,Be.passiveCapture)),t.classList.remove("q-body--prevent-scroll"),t.classList.remove("q-body--force-scrollbar-x"),t.classList.remove("q-body--force-scrollbar-y"),document.qScrollPrevented=!1,t.style.left=Fs,t.style.top=Is,window.location.href===Ns&&window.scrollTo(ur,cr),Tn=void 0)}function Rg(e){let t="add";if(e===!0){if(kn++,$t!==null){clearTimeout($t),$t=null;return}if(kn>1)return}else{if(kn===0||(kn--,kn>0))return;if(t="remove",we.is.ios===!0&&we.is.nativeMobile===!0){$t!==null&&clearTimeout($t),$t=setTimeout(()=>{Vs(t),$t=null},100);return}}Vs(t)}function Pg(){let e;return{preventBodyScroll(t){t!==e&&(e!==void 0||t===!0)&&(e=t,Rg(t))}}}const Ht=[];let hn;function Tg(e){hn=e.keyCode===27}function qg(){hn===!0&&(hn=!1)}function Ag(e){hn===!0&&(hn=!1,zn(e,27)===!0&&Ht[Ht.length-1](e))}function Qa(e){window[e]("keydown",Tg),window[e]("blur",qg),window[e]("keyup",Ag),hn=!1}function Mg(e){we.is.desktop===!0&&(Ht.push(e),Ht.length===1&&Qa("addEventListener"))}function Ds(e){const t=Ht.indexOf(e);t>-1&&(Ht.splice(t,1),Ht.length===0&&Qa("removeEventListener"))}const zt=[];function Ya(e){zt[zt.length-1](e)}function Og(e){we.is.desktop===!0&&(zt.push(e),zt.length===1&&document.body.addEventListener("focusin",Ya))}function Hs(e){const t=zt.indexOf(e);t>-1&&(zt.splice(t,1),zt.length===0&&document.body.removeEventListener("focusin",Ya))}let so=0;const $g={standard:"fixed-full flex-center",top:"fixed-top justify-center",bottom:"fixed-bottom justify-center",right:"fixed-right items-center",left:"fixed-left items-center"},zs={standard:["scale","scale"],top:["slide-down","slide-up"],bottom:["slide-up","slide-down"],right:["slide-left","slide-right"],left:["slide-right","slide-left"]};var Lg=$e({name:"QDialog",inheritAttrs:!1,props:{...hg,...pg,transitionShow:String,transitionHide:String,persistent:Boolean,autoClose:Boolean,allowFocusOutside:Boolean,noEscDismiss:Boolean,noBackdropDismiss:Boolean,noRouteDismiss:Boolean,noRefocus:Boolean,noFocus:Boolean,noShake:Boolean,seamless:Boolean,maximized:Boolean,fullWidth:Boolean,fullHeight:Boolean,square:Boolean,position:{type:String,default:"standard",validator:e=>e==="standard"||["top","bottom","left","right"].includes(e)}},emits:[...gg,"shake","click","escapeKey"],setup(e,{slots:t,emit:n,attrs:o}){const r=ke(),i=he(null),s=he(!1),l=he(!1);let a=null,c=null,u,d;const f=R(()=>e.persistent!==!0&&e.noRouteDismiss!==!0&&e.seamless!==!0),{preventBodyScroll:p}=Pg(),{registerTimeout:y}=fg(),{registerTick:T,removeTick:q}=dg(),{transitionProps:M,transitionStyle:m}=vg(e,()=>zs[e.position][0],()=>zs[e.position][1]),{showPortal:_,hidePortal:w,portalIsAccessible:F,renderPortal:j}=xg(r,i,Re,"dialog"),{hide:V}=mg({showing:s,hideOnRouteChange:f,handleShow:k,handleHide:Z,processOnMount:!0}),{addToHistory:N,removeFromHistory:C}=cg(s,V,f),x=R(()=>`q-dialog__inner flex no-pointer-events q-dialog__inner--${e.maximized===!0?"maximized":"minimized"} q-dialog__inner--${e.position} ${$g[e.position]}`+(l.value===!0?" q-dialog__inner--animating":"")+(e.fullWidth===!0?" q-dialog__inner--fullwidth":"")+(e.fullHeight===!0?" q-dialog__inner--fullheight":"")+(e.square===!0?" q-dialog__inner--square":"")),$=R(()=>s.value===!0&&e.seamless!==!0),v=R(()=>e.autoClose===!0?{onClick:fe}:{}),H=R(()=>[`q-dialog fullscreen no-pointer-events q-dialog--${$.value===!0?"modal":"seamless"}`,o.class]);be(()=>e.maximized,oe=>{s.value===!0&&se(oe)}),be($,oe=>{p(oe),oe===!0?(Og(ue),Mg(W)):(Hs(ue),Ds(W))});function k(oe){N(),c=e.noRefocus===!1&&document.activeElement!==null?document.activeElement:null,se(e.maximized),_(),l.value=!0,e.noFocus!==!0?(document.activeElement!==null&&document.activeElement.blur(),T(Y)):q(),y(()=>{if(r.proxy.$q.platform.is.ios===!0){if(e.seamless!==!0&&document.activeElement){const{top:ne,bottom:S}=document.activeElement.getBoundingClientRect(),{innerHeight:Q}=window,z=window.visualViewport!==void 0?window.visualViewport.height:Q;ne>0&&S>z/2&&(document.scrollingElement.scrollTop=Math.min(document.scrollingElement.scrollHeight-z,S>=Q?1/0:Math.ceil(document.scrollingElement.scrollTop+S-z/2))),document.activeElement.scrollIntoView()}d=!0,i.value.click(),d=!1}_(!0),l.value=!1,n("show",oe)},e.transitionDuration)}function Z(oe){q(),C(),_e(!0),l.value=!0,w(),c!==null&&(((oe&&oe.type.indexOf("key")===0?c.closest('[tabindex]:not([tabindex^="-"])'):void 0)||c).focus(),c=null),y(()=>{w(!0),l.value=!1,n("hide",oe)},e.transitionDuration)}function Y(oe){mi(()=>{let ne=i.value;ne===null||ne.contains(document.activeElement)===!0||(ne=(oe!==""?ne.querySelector(oe):null)||ne.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||ne.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||ne.querySelector("[autofocus], [data-autofocus]")||ne,ne.focus({preventScroll:!0}))})}function A(oe){oe&&typeof oe.focus=="function"?oe.focus({preventScroll:!0}):Y(),n("shake");const ne=i.value;ne!==null&&(ne.classList.remove("q-animate--scale"),ne.classList.add("q-animate--scale"),a!==null&&clearTimeout(a),a=setTimeout(()=>{a=null,i.value!==null&&(ne.classList.remove("q-animate--scale"),Y())},170))}function W(){e.seamless!==!0&&(e.persistent===!0||e.noEscDismiss===!0?e.maximized!==!0&&e.noShake!==!0&&A():(n("escapeKey"),V()))}function _e(oe){a!==null&&(clearTimeout(a),a=null),(oe===!0||s.value===!0)&&(se(!1),e.seamless!==!0&&(p(!1),Hs(ue),Ds(W))),oe!==!0&&(c=null)}function se(oe){oe===!0?u!==!0&&(so<1&&document.body.classList.add("q-body--dialog"),so++,u=!0):u===!0&&(so<2&&document.body.classList.remove("q-body--dialog"),so--,u=!1)}function fe(oe){d!==!0&&(V(oe),n("click",oe))}function L(oe){e.persistent!==!0&&e.noBackdropDismiss!==!0?V(oe):e.noShake!==!0&&A()}function ue(oe){e.allowFocusOutside!==!0&&F.value===!0&&Fh(i.value,oe.target)!==!0&&Y('[tabindex]:not([tabindex="-1"])')}Object.assign(r.proxy,{focus:Y,shake:A,__updateRefocusTarget(oe){c=oe||null}}),We(_e);function Re(){return E("div",{role:"dialog","aria-modal":$.value===!0?"true":"false",...o,class:H.value},[E(cn,{name:"q-transition--fade",appear:!0},()=>$.value===!0?E("div",{class:"q-dialog__backdrop fixed-full",style:m.value,"aria-hidden":"true",tabindex:-1,onClick:L}):null),E(cn,M.value,()=>s.value===!0?E("div",{ref:i,class:x.value,style:m.value,tabindex:-1,...v.value},tt(t.default)):null)])}return j}});const Wt={dark:{type:Boolean,default:null}};function Qt(e,t){return R(()=>e.dark===null?t.dark.isActive:e.dark)}var Bg=$e({name:"QCard",props:{...Wt,tag:{type:String,default:"div"},square:Boolean,flat:Boolean,bordered:Boolean},setup(e,{slots:t}){const{proxy:{$q:n}}=ke(),o=Qt(e,n),r=R(()=>"q-card"+(o.value===!0?" q-card--dark q-dark":"")+(e.bordered===!0?" q-card--bordered":"")+(e.square===!0?" q-card--square no-border-radius":"")+(e.flat===!0?" q-card--flat no-shadow":""));return()=>E(e.tag,{class:r.value},tt(t.default))}}),En=$e({name:"QCardSection",props:{tag:{type:String,default:"div"},horizontal:Boolean},setup(e,{slots:t}){const n=R(()=>`q-card__section q-card__section--${e.horizontal===!0?"horiz row no-wrap":"vert"}`);return()=>E(e.tag,{class:n.value},tt(t.default))}}),Fg=$e({name:"QCardActions",props:{...Aa,vertical:Boolean},setup(e,{slots:t}){const n=Ma(e),o=R(()=>`q-card__actions ${n.value} q-card__actions--${e.vertical===!0?"vert column":"horiz row"}`);return()=>E("div",{class:o.value},tt(t.default))}});const Ig={true:"inset",item:"item-inset","item-thumbnail":"item-thumbnail-inset"},dr={xs:2,sm:4,md:8,lg:16,xl:24};var Ks=$e({name:"QSeparator",props:{...Wt,spaced:[Boolean,String],inset:[Boolean,String],vertical:Boolean,color:String,size:String},setup(e){const t=ke(),n=Qt(e,t.proxy.$q),o=R(()=>e.vertical===!0?"vertical":"horizontal"),r=R(()=>` q-separator--${o.value}`),i=R(()=>e.inset!==!1?`${r.value}-${Ig[e.inset]}`:""),s=R(()=>`q-separator${r.value}${i.value}`+(e.color!==void 0?` bg-${e.color}`:"")+(n.value===!0?" q-separator--dark":"")),l=R(()=>{const a={};if(e.size!==void 0&&(a[e.vertical===!0?"width":"height"]=e.size),e.spaced!==!1){const c=e.spaced===!0?`${dr.md}px`:e.spaced in dr?`${dr[e.spaced]}px`:e.spaced,u=e.vertical===!0?["Left","Right"]:["Top","Bottom"];a[`margin${u[0]}`]=a[`margin${u[1]}`]=c}return a});return()=>E("hr",{class:s.value,style:l.value,"aria-orientation":o.value})}});function Ng({validate:e,resetValidation:t,requiresQForm:n}){const o=ut(id,!1);if(o!==!1){const{props:r,proxy:i}=ke();Object.assign(i,{validate:e,resetValidation:t}),be(()=>r.disable,s=>{s===!0?(typeof t=="function"&&t(),o.unbindComponent(i)):o.bindComponent(i)}),Ut(()=>{r.disable!==!0&&o.bindComponent(i)}),We(()=>{r.disable!==!0&&o.unbindComponent(i)})}else n===!0&&console.error("Parent QForm not found on useFormChild()!")}const Us=/^#[0-9a-fA-F]{3}([0-9a-fA-F]{3})?$/,Ws=/^#[0-9a-fA-F]{4}([0-9a-fA-F]{4})?$/,Qs=/^#([0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/,lo=/^rgb\(((0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),){2}(0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5])\)$/,ao=/^rgba\(((0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),){2}(0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),(0|0\.[0-9]+[1-9]|0\.[1-9]+|1)\)$/,hr={date:e=>/^-?[\d]+\/[0-1]\d\/[0-3]\d$/.test(e),time:e=>/^([0-1]?\d|2[0-3]):[0-5]\d$/.test(e),fulltime:e=>/^([0-1]?\d|2[0-3]):[0-5]\d:[0-5]\d$/.test(e),timeOrFulltime:e=>/^([0-1]?\d|2[0-3]):[0-5]\d(:[0-5]\d)?$/.test(e),email:e=>/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e),hexColor:e=>Us.test(e),hexaColor:e=>Ws.test(e),hexOrHexaColor:e=>Qs.test(e),rgbColor:e=>lo.test(e),rgbaColor:e=>ao.test(e),rgbOrRgbaColor:e=>lo.test(e)||ao.test(e),hexOrRgbColor:e=>Us.test(e)||lo.test(e),hexaOrRgbaColor:e=>Ws.test(e)||ao.test(e),anyColor:e=>Qs.test(e)||lo.test(e)||ao.test(e)},jg=[!0,!1,"ondemand"],Vg={modelValue:{},error:{type:Boolean,default:null},errorMessage:String,noErrorIcon:Boolean,rules:Array,reactiveRules:Boolean,lazyRules:{type:[Boolean,String],validator:e=>jg.includes(e)}};function Dg(e,t){const{props:n,proxy:o}=ke(),r=he(!1),i=he(null),s=he(null);Ng({validate:y,resetValidation:p});let l=0,a;const c=R(()=>n.rules!==void 0&&n.rules!==null&&n.rules.length!==0),u=R(()=>n.disable!==!0&&c.value===!0),d=R(()=>n.error===!0||r.value===!0),f=R(()=>typeof n.errorMessage=="string"&&n.errorMessage.length!==0?n.errorMessage:i.value);be(()=>n.modelValue,()=>{T()}),be(()=>n.reactiveRules,M=>{M===!0?a===void 0&&(a=be(()=>n.rules,()=>{T(!0)})):a!==void 0&&(a(),a=void 0)},{immediate:!0}),be(e,M=>{M===!0?s.value===null&&(s.value=!1):s.value===!1&&(s.value=!0,u.value===!0&&n.lazyRules!=="ondemand"&&t.value===!1&&q())});function p(){l++,t.value=!1,s.value=null,r.value=!1,i.value=null,q.cancel()}function y(M=n.modelValue){if(u.value!==!0)return!0;const m=++l,_=t.value!==!0?()=>{s.value=!0}:()=>{},w=(j,V)=>{j===!0&&_(),r.value=j,i.value=V||null,t.value=!1},F=[];for(let j=0;j{if(j===void 0||Array.isArray(j)===!1||j.length===0)return m===l&&w(!1),!0;const V=j.find(N=>N===!1||typeof N=="string");return m===l&&w(V!==void 0,V),V===void 0},j=>(m===l&&(console.error(j),w(!0)),!1)))}function T(M){u.value===!0&&n.lazyRules!=="ondemand"&&(s.value===!0||n.lazyRules!==!0&&M!==!0)&&q()}const q=ua(y,0);return We(()=>{a!==void 0&&a(),q.cancel()}),Object.assign(o,{resetValidation:p,validate:y}),bn(o,"hasError",()=>d.value),{isDirtyModel:s,hasRules:c,hasError:d,errorMessage:f,validate:y,resetValidation:p}}const Ys=/^on[A-Z]/;function Hg(e,t){const n={listeners:he({}),attributes:he({})};function o(){const r={},i={};for(const s in e)s!=="class"&&s!=="style"&&Ys.test(s)===!1&&(r[s]=e[s]);for(const s in t.props)Ys.test(s)===!0&&(i[s]=t.props[s]);n.attributes.value=r,n.listeners.value=i}return Fl(o),o(),n}let gr,uo=0;const Te=new Array(256);for(let e=0;e<256;e++)Te[e]=(e+256).toString(16).substring(1);const zg=(()=>{const e=typeof crypto!="undefined"?crypto:typeof window!="undefined"?window.crypto||window.msCrypto:void 0;if(e!==void 0){if(e.randomBytes!==void 0)return e.randomBytes;if(e.getRandomValues!==void 0)return t=>{const n=new Uint8Array(t);return e.getRandomValues(n),n}}return t=>{const n=[];for(let o=t;o>0;o--)n.push(Math.floor(Math.random()*256));return n}})(),Zs=4096;function Kg(){(gr===void 0||uo+16>Zs)&&(uo=0,gr=zg(Zs));const e=Array.prototype.slice.call(gr,uo,uo+=16);return e[6]=e[6]&15|64,e[8]=e[8]&63|128,Te[e[0]]+Te[e[1]]+Te[e[2]]+Te[e[3]]+"-"+Te[e[4]]+Te[e[5]]+"-"+Te[e[6]]+Te[e[7]]+"-"+Te[e[8]]+Te[e[9]]+"-"+Te[e[10]]+Te[e[11]]+Te[e[12]]+Te[e[13]]+Te[e[14]]+Te[e[15]]}function Nr(e){return e===void 0?`f_${Kg()}`:e}function jr(e){return e!=null&&(""+e).length!==0}const Ug={...Wt,...Vg,label:String,stackLabel:Boolean,hint:String,hideHint:Boolean,prefix:String,suffix:String,labelColor:String,color:String,bgColor:String,filled:Boolean,outlined:Boolean,borderless:Boolean,standout:[Boolean,String],square:Boolean,loading:Boolean,labelSlot:Boolean,bottomSlots:Boolean,hideBottomSpace:Boolean,rounded:Boolean,dense:Boolean,itemAligned:Boolean,counter:Boolean,clearable:Boolean,clearIcon:String,disable:Boolean,readonly:Boolean,autofocus:Boolean,for:String,maxlength:[Number,String]},Wg=["update:modelValue","clear","focus","blur","popupShow","popupHide"];function Qg(){const{props:e,attrs:t,proxy:n,vnode:o}=ke();return{isDark:Qt(e,n.$q),editable:R(()=>e.disable!==!0&&e.readonly!==!0),innerLoading:he(!1),focused:he(!1),hasPopupOpen:!1,splitAttrs:Hg(t,o),targetUid:he(Nr(e.for)),rootRef:he(null),targetRef:he(null),controlRef:he(null)}}function Yg(e){const{props:t,emit:n,slots:o,attrs:r,proxy:i}=ke(),{$q:s}=i;let l=null;e.hasValue===void 0&&(e.hasValue=R(()=>jr(t.modelValue))),e.emitValue===void 0&&(e.emitValue=A=>{n("update:modelValue",A)}),e.controlEvents===void 0&&(e.controlEvents={onFocusin:C,onFocusout:x}),Object.assign(e,{clearValue:$,onControlFocusin:C,onControlFocusout:x,focus:V}),e.computedCounter===void 0&&(e.computedCounter=R(()=>{if(t.counter!==!1){const A=typeof t.modelValue=="string"||typeof t.modelValue=="number"?(""+t.modelValue).length:Array.isArray(t.modelValue)===!0?t.modelValue.length:0,W=t.maxlength!==void 0?t.maxlength:t.maxValues;return A+(W!==void 0?" / "+W:"")}}));const{isDirtyModel:a,hasRules:c,hasError:u,errorMessage:d,resetValidation:f}=Dg(e.focused,e.innerLoading),p=e.floatingLabel!==void 0?R(()=>t.stackLabel===!0||e.focused.value===!0||e.floatingLabel.value===!0):R(()=>t.stackLabel===!0||e.focused.value===!0||e.hasValue.value===!0),y=R(()=>t.bottomSlots===!0||t.hint!==void 0||c.value===!0||t.counter===!0||t.error!==null),T=R(()=>t.filled===!0?"filled":t.outlined===!0?"outlined":t.borderless===!0?"borderless":t.standout?"standout":"standard"),q=R(()=>`q-field row no-wrap items-start q-field--${T.value}`+(e.fieldClass!==void 0?` ${e.fieldClass.value}`:"")+(t.rounded===!0?" q-field--rounded":"")+(t.square===!0?" q-field--square":"")+(p.value===!0?" q-field--float":"")+(m.value===!0?" q-field--labeled":"")+(t.dense===!0?" q-field--dense":"")+(t.itemAligned===!0?" q-field--item-aligned q-item-type":"")+(e.isDark.value===!0?" q-field--dark":"")+(e.getControl===void 0?" q-field--auto-height":"")+(e.focused.value===!0?" q-field--focused":"")+(u.value===!0?" q-field--error":"")+(u.value===!0||e.focused.value===!0?" q-field--highlighted":"")+(t.hideBottomSpace!==!0&&y.value===!0?" q-field--with-bottom":"")+(t.disable===!0?" q-field--disabled":t.readonly===!0?" q-field--readonly":"")),M=R(()=>"q-field__control relative-position row no-wrap"+(t.bgColor!==void 0?` bg-${t.bgColor}`:"")+(u.value===!0?" text-negative":typeof t.standout=="string"&&t.standout.length!==0&&e.focused.value===!0?` ${t.standout}`:t.color!==void 0?` text-${t.color}`:"")),m=R(()=>t.labelSlot===!0||t.label!==void 0),_=R(()=>"q-field__label no-pointer-events absolute ellipsis"+(t.labelColor!==void 0&&u.value!==!0?` text-${t.labelColor}`:"")),w=R(()=>({id:e.targetUid.value,editable:e.editable.value,focused:e.focused.value,floatingLabel:p.value,modelValue:t.modelValue,emitValue:e.emitValue})),F=R(()=>{const A={for:e.targetUid.value};return t.disable===!0?A["aria-disabled"]="true":t.readonly===!0&&(A["aria-readonly"]="true"),A});be(()=>t.for,A=>{e.targetUid.value=Nr(A)});function j(){const A=document.activeElement;let W=e.targetRef!==void 0&&e.targetRef.value;W&&(A===null||A.id!==e.targetUid.value)&&(W.hasAttribute("tabindex")===!0||(W=W.querySelector("[tabindex]")),W&&W!==A&&W.focus({preventScroll:!0}))}function V(){mi(j)}function N(){yg(j);const A=document.activeElement;A!==null&&e.rootRef.value.contains(A)&&A.blur()}function C(A){l!==null&&(clearTimeout(l),l=null),e.editable.value===!0&&e.focused.value===!1&&(e.focused.value=!0,n("focus",A))}function x(A,W){l!==null&&clearTimeout(l),l=setTimeout(()=>{l=null,!(document.hasFocus()===!0&&(e.hasPopupOpen===!0||e.controlRef===void 0||e.controlRef.value===null||e.controlRef.value.contains(document.activeElement)!==!1))&&(e.focused.value===!0&&(e.focused.value=!1,n("blur",A)),W!==void 0&&W())})}function $(A){Ke(A),s.platform.is.mobile!==!0?(e.targetRef!==void 0&&e.targetRef.value||e.rootRef.value).focus():e.rootRef.value.contains(document.activeElement)===!0&&document.activeElement.blur(),t.type==="file"&&(e.inputRef.value.value=null),n("update:modelValue",null),n("clear",t.modelValue),je(()=>{f(),s.platform.is.mobile!==!0&&(a.value=!1)})}function v(){const A=[];return o.prepend!==void 0&&A.push(E("div",{class:"q-field__prepend q-field__marginal row no-wrap items-center",key:"prepend",onClick:Et},o.prepend())),A.push(E("div",{class:"q-field__control-container col relative-position row no-wrap q-anchor--skip"},H())),u.value===!0&&t.noErrorIcon===!1&&A.push(Z("error",[E(pt,{name:s.iconSet.field.error,color:"negative"})])),t.loading===!0||e.innerLoading.value===!0?A.push(Z("inner-loading-append",o.loading!==void 0?o.loading():[E(Un,{color:t.color})])):t.clearable===!0&&e.hasValue.value===!0&&e.editable.value===!0&&A.push(Z("inner-clearable-append",[E(pt,{class:"q-field__focusable-action",tag:"button",name:t.clearIcon||s.iconSet.field.clear,tabindex:0,type:"button","aria-hidden":null,role:null,onClick:$})])),o.append!==void 0&&A.push(E("div",{class:"q-field__append q-field__marginal row no-wrap items-center",key:"append",onClick:Et},o.append())),e.getInnerAppend!==void 0&&A.push(Z("inner-append",e.getInnerAppend())),e.getControlChild!==void 0&&A.push(e.getControlChild()),A}function H(){const A=[];return t.prefix!==void 0&&t.prefix!==null&&A.push(E("div",{class:"q-field__prefix no-pointer-events row items-center"},t.prefix)),e.getShadowControl!==void 0&&e.hasShadow.value===!0&&A.push(e.getShadowControl()),e.getControl!==void 0?A.push(e.getControl()):o.rawControl!==void 0?A.push(o.rawControl()):o.control!==void 0&&A.push(E("div",{ref:e.targetRef,class:"q-field__native row",tabindex:-1,...e.splitAttrs.attributes.value,"data-autofocus":t.autofocus===!0||void 0},o.control(w.value))),m.value===!0&&A.push(E("div",{class:_.value},tt(o.label,t.label))),t.suffix!==void 0&&t.suffix!==null&&A.push(E("div",{class:"q-field__suffix no-pointer-events row items-center"},t.suffix)),A.concat(tt(o.default))}function k(){let A,W;u.value===!0?d.value!==null?(A=[E("div",{role:"alert"},d.value)],W=`q--slot-error-${d.value}`):(A=tt(o.error),W="q--slot-error"):(t.hideHint!==!0||e.focused.value===!0)&&(t.hint!==void 0?(A=[E("div",t.hint)],W=`q--slot-hint-${t.hint}`):(A=tt(o.hint),W="q--slot-hint"));const _e=t.counter===!0||o.counter!==void 0;if(t.hideBottomSpace===!0&&_e===!1&&A===void 0)return;const se=E("div",{key:W,class:"q-field__messages col"},A);return E("div",{class:"q-field__bottom row items-start q-field__bottom--"+(t.hideBottomSpace!==!0?"animated":"stale"),onClick:Et},[t.hideBottomSpace===!0?se:E(cn,{name:"q-transition--field-message"},()=>se),_e===!0?E("div",{class:"q-field__counter"},o.counter!==void 0?o.counter():e.computedCounter.value):null])}function Z(A,W){return W===null?null:E("div",{key:A,class:"q-field__append q-field__marginal row no-wrap items-center q-anchor--skip"},W)}let Y=!1;return Fo(()=>{Y=!0}),Ll(()=>{Y===!0&&t.autofocus===!0&&i.focus()}),Ut(()=>{qt.value===!0&&t.for===void 0&&(e.targetUid.value=Nr()),t.autofocus===!0&&i.focus()}),We(()=>{l!==null&&clearTimeout(l)}),Object.assign(i,{focus:V,blur:N}),function(){const W=e.getControl===void 0&&o.control===void 0?{...e.splitAttrs.attributes.value,"data-autofocus":t.autofocus===!0||void 0,...F.value}:F.value;return E("label",{ref:e.rootRef,class:[q.value,r.class],style:r.style,...W},[o.before!==void 0?E("div",{class:"q-field__before q-field__marginal row no-wrap items-center",onClick:Et},o.before()):null,E("div",{class:"q-field__inner relative-position col self-stretch"},[E("div",{ref:e.controlRef,class:M.value,tabindex:-1,...e.controlEvents},v()),y.value===!0?k():null]),o.after!==void 0?E("div",{class:"q-field__after q-field__marginal row no-wrap items-center",onClick:Et},o.after()):null])}}const Js={date:"####/##/##",datetime:"####/##/## ##:##",time:"##:##",fulltime:"##:##:##",phone:"(###) ### - ####",card:"#### #### #### ####"},Po={"#":{pattern:"[\\d]",negate:"[^\\d]"},S:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]"},N:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]"},A:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]",transform:e=>e.toLocaleUpperCase()},a:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]",transform:e=>e.toLocaleLowerCase()},X:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]",transform:e=>e.toLocaleUpperCase()},x:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]",transform:e=>e.toLocaleLowerCase()}},Za=Object.keys(Po);Za.forEach(e=>{Po[e].regex=new RegExp(Po[e].pattern)});const Zg=new RegExp("\\\\([^.*+?^${}()|([\\]])|([.*+?^${}()|[\\]])|(["+Za.join("")+"])|(.)","g"),Xs=/[.*+?^${}()|[\]\\]/g,Se=String.fromCharCode(1),Jg={mask:String,reverseFillMask:Boolean,fillMask:[Boolean,String],unmaskedValue:Boolean};function Xg(e,t,n,o){let r,i,s,l,a,c;const u=he(null),d=he(p());function f(){return e.autogrow===!0||["textarea","text","search","url","tel","password"].includes(e.type)}be(()=>e.type+e.autogrow,T),be(()=>e.mask,C=>{if(C!==void 0)q(d.value,!0);else{const x=V(d.value);T(),e.modelValue!==x&&t("update:modelValue",x)}}),be(()=>e.fillMask+e.reverseFillMask,()=>{u.value===!0&&q(d.value,!0)}),be(()=>e.unmaskedValue,()=>{u.value===!0&&q(d.value)});function p(){if(T(),u.value===!0){const C=F(V(e.modelValue));return e.fillMask!==!1?N(C):C}return e.modelValue}function y(C){if(C-1){for(let H=C-$.length;H>0;H--)x+=Se;$=$.slice(0,v)+x+$.slice(v)}return $}function T(){if(u.value=e.mask!==void 0&&e.mask.length!==0&&f(),u.value===!1){l=void 0,r="",i="";return}const C=Js[e.mask]===void 0?e.mask:Js[e.mask],x=typeof e.fillMask=="string"&&e.fillMask.length!==0?e.fillMask.slice(0,1):"_",$=x.replace(Xs,"\\$&"),v=[],H=[],k=[];let Z=e.reverseFillMask===!0,Y="",A="";C.replace(Zg,(fe,L,ue,Re,oe)=>{if(Re!==void 0){const ne=Po[Re];k.push(ne),A=ne.negate,Z===!0&&(H.push("(?:"+A+"+)?("+ne.pattern+"+)?(?:"+A+"+)?("+ne.pattern+"+)?"),Z=!1),H.push("(?:"+A+"+)?("+ne.pattern+")?")}else if(ue!==void 0)Y="\\"+(ue==="\\"?"":ue),k.push(ue),v.push("([^"+Y+"]+)?"+Y+"?");else{const ne=L!==void 0?L:oe;Y=ne==="\\"?"\\\\\\\\":ne.replace(Xs,"\\\\$&"),k.push(ne),v.push("([^"+Y+"]+)?"+Y+"?")}});const W=new RegExp("^"+v.join("")+"("+(Y===""?".":"[^"+Y+"]")+"+)?"+(Y===""?"":"["+Y+"]*")+"$"),_e=H.length-1,se=H.map((fe,L)=>L===0&&e.reverseFillMask===!0?new RegExp("^"+$+"*"+fe):L===_e?new RegExp("^"+fe+"("+(A===""?".":A)+"+)?"+(e.reverseFillMask===!0?"$":$+"*")):new RegExp("^"+fe));s=k,l=fe=>{const L=W.exec(e.reverseFillMask===!0?fe:fe.slice(0,k.length+1));L!==null&&(fe=L.slice(1).join(""));const ue=[],Re=se.length;for(let oe=0,ne=fe;oetypeof fe=="string"?fe:Se).join(""),i=r.split(Se).join(x)}function q(C,x,$){const v=o.value,H=v.selectionEnd,k=v.value.length-H,Z=V(C);x===!0&&T();const Y=F(Z),A=e.fillMask!==!1?N(Y):Y,W=d.value!==A;v.value!==A&&(v.value=A),W===!0&&(d.value=A),document.activeElement===v&&je(()=>{if(A===i){const se=e.reverseFillMask===!0?i.length:0;v.setSelectionRange(se,se,"forward");return}if($==="insertFromPaste"&&e.reverseFillMask!==!0){const se=v.selectionEnd;let fe=H-1;for(let L=a;L<=fe&&L-1){const se=e.reverseFillMask===!0?H===0?A.length>Y.length?1:0:Math.max(0,A.length-(A===i?0:Math.min(Y.length,k)+1))+1:H;v.setSelectionRange(se,se,"forward");return}if(e.reverseFillMask===!0)if(W===!0){const se=Math.max(0,A.length-(A===i?0:Math.min(Y.length,k+1)));se===1&&H===1?v.setSelectionRange(se,se,"forward"):m.rightReverse(v,se)}else{const se=A.length-k;v.setSelectionRange(se,se,"backward")}else if(W===!0){const se=Math.max(0,r.indexOf(Se),Math.min(Y.length,H)-1);m.right(v,se)}else{const se=H-1;m.right(v,se)}});const _e=e.unmaskedValue===!0?V(A):A;String(e.modelValue)!==_e&&n(_e,!0)}function M(C,x,$){const v=F(V(C.value));x=Math.max(0,r.indexOf(Se),Math.min(v.length,x)),a=x,C.setSelectionRange(x,$,"forward")}const m={left(C,x){const $=r.slice(x-1).indexOf(Se)===-1;let v=Math.max(0,x-1);for(;v>=0;v--)if(r[v]===Se){x=v,$===!0&&x++;break}if(v<0&&r[x]!==void 0&&r[x]!==Se)return m.right(C,0);x>=0&&C.setSelectionRange(x,x,"backward")},right(C,x){const $=C.value.length;let v=Math.min($,x+1);for(;v<=$;v++)if(r[v]===Se){x=v;break}else r[v-1]===Se&&(x=v);if(v>$&&r[x-1]!==void 0&&r[x-1]!==Se)return m.left(C,$);C.setSelectionRange(x,x,"forward")},leftReverse(C,x){const $=y(C.value.length);let v=Math.max(0,x-1);for(;v>=0;v--)if($[v-1]===Se){x=v;break}else if($[v]===Se&&(x=v,v===0))break;if(v<0&&$[x]!==void 0&&$[x]!==Se)return m.rightReverse(C,0);x>=0&&C.setSelectionRange(x,x,"backward")},rightReverse(C,x){const $=C.value.length,v=y($),H=v.slice(0,x+1).indexOf(Se)===-1;let k=Math.min($,x+1);for(;k<=$;k++)if(v[k-1]===Se){x=k,x>0&&H===!0&&x--;break}if(k>$&&v[x-1]!==void 0&&v[x-1]!==Se)return m.leftReverse(C,$);C.setSelectionRange(x,x,"forward")}};function _(C){t("click",C),c=void 0}function w(C){if(t("keydown",C),da(C)===!0||C.altKey===!0)return;const x=o.value,$=x.selectionStart,v=x.selectionEnd;if(C.shiftKey||(c=void 0),C.keyCode===37||C.keyCode===39){C.shiftKey&&c===void 0&&(c=x.selectionDirection==="forward"?$:v);const H=m[(C.keyCode===39?"right":"left")+(e.reverseFillMask===!0?"Reverse":"")];if(C.preventDefault(),H(x,c===$?v:$),C.shiftKey){const k=x.selectionStart;x.setSelectionRange(Math.min(c,k),Math.max(c,k),"forward")}}else C.keyCode===8&&e.reverseFillMask!==!0&&$===v?(m.left(x,$),x.setSelectionRange(x.selectionStart,v,"backward")):C.keyCode===46&&e.reverseFillMask===!0&&$===v&&(m.rightReverse(x,v),x.setSelectionRange($,x.selectionEnd,"forward"))}function F(C){if(C==null||C==="")return"";if(e.reverseFillMask===!0)return j(C);const x=s;let $=0,v="";for(let H=0;H=0&&v>-1;k--){const Z=x[k];let Y=C[v];if(typeof Z=="string")H=Z+H,Y===Z&&v--;else if(Y!==void 0&&Z.regex.test(Y))do H=(Z.transform!==void 0?Z.transform(Y):Y)+H,v--,Y=C[v];while($===k&&Y!==void 0&&Z.regex.test(Y));else return H}return H}function V(C){return typeof C!="string"||l===void 0?typeof C=="number"?l(""+C):C:l(C)}function N(C){return i.length-C.length<=0?C:e.reverseFillMask===!0&&C.length!==0?i.slice(0,-C.length)+C:C+i.slice(C.length)}return{innerValue:d,hasMask:u,moveCursorForPaste:M,updateMaskValue:q,onMaskedKeydown:w,onMaskedClick:_}}const pi={name:String};function Ja(e={}){return(t,n,o)=>{t[n](E("input",{class:"hidden"+(o||""),...e.value}))}}function Gg(e){return R(()=>e.name||e.for)}function em(e,t){function n(){const o=e.modelValue;try{const r="DataTransfer"in window?new DataTransfer:"ClipboardEvent"in window?new ClipboardEvent("").clipboardData:void 0;return Object(o)===o&&("length"in o?Array.from(o):[o]).forEach(i=>{r.items.add(i)}),{files:r.files}}catch{return{files:void 0}}}return R(t===!0?()=>{if(e.type==="file")return n()}:n)}const tm=/[\u3000-\u303f\u3040-\u309f\u30a0-\u30ff\uff00-\uff9f\u4e00-\u9faf\u3400-\u4dbf]/,nm=/[\u4e00-\u9fff\u3400-\u4dbf\u{20000}-\u{2a6df}\u{2a700}-\u{2b73f}\u{2b740}-\u{2b81f}\u{2b820}-\u{2ceaf}\uf900-\ufaff\u3300-\u33ff\ufe30-\ufe4f\uf900-\ufaff\u{2f800}-\u{2fa1f}]/u,om=/[\u3131-\u314e\u314f-\u3163\uac00-\ud7a3]/,rm=/[a-z0-9_ -]$/i;function im(e){return function(n){if(n.type==="compositionend"||n.type==="change"){if(n.target.qComposing!==!0)return;n.target.qComposing=!1,e(n)}else n.type==="compositionupdate"&&n.target.qComposing!==!0&&typeof n.data=="string"&&(we.is.firefox===!0?rm.test(n.data)===!1:tm.test(n.data)===!0||nm.test(n.data)===!0||om.test(n.data)===!0)===!0&&(n.target.qComposing=!0)}}var sm=$e({name:"QInput",inheritAttrs:!1,props:{...Ug,...Jg,...pi,modelValue:{required:!1},shadowText:String,type:{type:String,default:"text"},debounce:[String,Number],autogrow:Boolean,inputClass:[Array,String,Object],inputStyle:[Array,String,Object]},emits:[...Wg,"paste","change","keydown","click","animationend"],setup(e,{emit:t,attrs:n}){const{proxy:o}=ke(),{$q:r}=o,i={};let s=NaN,l,a,c=null,u;const d=he(null),f=Gg(e),{innerValue:p,hasMask:y,moveCursorForPaste:T,updateMaskValue:q,onMaskedKeydown:M,onMaskedClick:m}=Xg(e,t,Y,d),_=em(e,!0),w=R(()=>jr(p.value)),F=im(k),j=Qg(),V=R(()=>e.type==="textarea"||e.autogrow===!0),N=R(()=>V.value===!0||["text","search","url","tel","password"].includes(e.type)),C=R(()=>{const L={...j.splitAttrs.listeners.value,onInput:k,onPaste:H,onChange:W,onBlur:_e,onFocus:ko};return L.onCompositionstart=L.onCompositionupdate=L.onCompositionend=F,y.value===!0&&(L.onKeydown=M,L.onClick=m),e.autogrow===!0&&(L.onAnimationend=Z),L}),x=R(()=>{const L={tabindex:0,"data-autofocus":e.autofocus===!0||void 0,rows:e.type==="textarea"?6:void 0,"aria-label":e.label,name:f.value,...j.splitAttrs.attributes.value,id:j.targetUid.value,maxlength:e.maxlength,disabled:e.disable===!0,readonly:e.readonly===!0};return V.value===!1&&(L.type=e.type),e.autogrow===!0&&(L.rows=1),L});be(()=>e.type,()=>{d.value&&(d.value.value=e.modelValue)}),be(()=>e.modelValue,L=>{if(y.value===!0){if(a===!0&&(a=!1,String(L)===s))return;q(L)}else p.value!==L&&(p.value=L,e.type==="number"&&i.hasOwnProperty("value")===!0&&(l===!0?l=!1:delete i.value));e.autogrow===!0&&je(A)}),be(()=>e.autogrow,L=>{L===!0?je(A):d.value!==null&&n.rows>0&&(d.value.style.height="auto")}),be(()=>e.dense,()=>{e.autogrow===!0&&je(A)});function $(){mi(()=>{const L=document.activeElement;d.value!==null&&d.value!==L&&(L===null||L.id!==j.targetUid.value)&&d.value.focus({preventScroll:!0})})}function v(){d.value!==null&&d.value.select()}function H(L){if(y.value===!0&&e.reverseFillMask!==!0){const ue=L.target;T(ue,ue.selectionStart,ue.selectionEnd)}t("paste",L)}function k(L){if(!L||!L.target)return;if(e.type==="file"){t("update:modelValue",L.target.files);return}const ue=L.target.value;if(L.target.qComposing===!0){i.value=ue;return}if(y.value===!0)q(ue,!1,L.inputType);else if(Y(ue),N.value===!0&&L.target===document.activeElement){const{selectionStart:Re,selectionEnd:oe}=L.target;Re!==void 0&&oe!==void 0&&je(()=>{L.target===document.activeElement&&ue.indexOf(L.target.value)===0&&L.target.setSelectionRange(Re,oe)})}e.autogrow===!0&&A()}function Z(L){t("animationend",L),A()}function Y(L,ue){u=()=>{c=null,e.type!=="number"&&i.hasOwnProperty("value")===!0&&delete i.value,e.modelValue!==L&&s!==L&&(s=L,ue===!0&&(a=!0),t("update:modelValue",L),je(()=>{s===L&&(s=NaN)})),u=void 0},e.type==="number"&&(l=!0,i.value=L),e.debounce!==void 0?(c!==null&&clearTimeout(c),i.value=L,c=setTimeout(u,e.debounce)):u()}function A(){requestAnimationFrame(()=>{const L=d.value;if(L!==null){const ue=L.parentNode.style,{scrollTop:Re}=L,{overflowY:oe,maxHeight:ne}=r.platform.is.firefox===!0?{}:window.getComputedStyle(L),S=oe!==void 0&&oe!=="scroll";S===!0&&(L.style.overflowY="hidden"),ue.marginBottom=L.scrollHeight-1+"px",L.style.height="1px",L.style.height=L.scrollHeight+"px",S===!0&&(L.style.overflowY=parseInt(ne,10){d.value!==null&&(d.value.value=p.value!==void 0?p.value:"")})}function se(){return i.hasOwnProperty("value")===!0?i.value:p.value!==void 0?p.value:""}We(()=>{_e()}),Ut(()=>{e.autogrow===!0&&A()}),Object.assign(j,{innerValue:p,fieldClass:R(()=>`q-${V.value===!0?"textarea":"input"}`+(e.autogrow===!0?" q-textarea--autogrow":"")),hasShadow:R(()=>e.type!=="file"&&typeof e.shadowText=="string"&&e.shadowText.length!==0),inputRef:d,emitValue:Y,hasValue:w,floatingLabel:R(()=>w.value===!0&&(e.type!=="number"||isNaN(p.value)===!1)||jr(e.displayValue)),getControl:()=>E(V.value===!0?"textarea":"input",{ref:d,class:["q-field__native q-placeholder",e.inputClass],style:e.inputStyle,...x.value,...C.value,...e.type!=="file"?{value:se()}:_.value}),getShadowControl:()=>E("div",{class:"q-field__native q-field__shadow absolute-bottom no-pointer-events"+(V.value===!0?"":" text-no-wrap")},[E("span",{class:"invisible"},se()),E("span",e.shadowText)])});const fe=Yg(j);return Object.assign(o,{focus:$,select:v,getNativeElement:()=>d.value}),bn(o,"nativeEl",()=>d.value),fe}});function Xa(e,t){const n=he(null),o=R(()=>e.disable===!0?null:E("span",{ref:n,class:"no-outline",tabindex:-1}));function r(i){const s=t.value;i!==void 0&&i.type.indexOf("key")===0?s!==null&&document.activeElement!==s&&s.contains(document.activeElement)===!0&&s.focus():n.value!==null&&(i===void 0||s!==null&&s.contains(i.target)===!0)&&n.value.focus()}return{refocusTargetEl:o,refocusTarget:r}}var Ga={xs:30,sm:35,md:40,lg:50,xl:60};const lm=E("svg",{key:"svg",class:"q-radio__bg absolute non-selectable",viewBox:"0 0 24 24"},[E("path",{d:"M12,22a10,10 0 0 1 -10,-10a10,10 0 0 1 10,-10a10,10 0 0 1 10,10a10,10 0 0 1 -10,10m0,-22a12,12 0 0 0 -12,12a12,12 0 0 0 12,12a12,12 0 0 0 12,-12a12,12 0 0 0 -12,-12"}),E("path",{class:"q-radio__check",d:"M12,6a6,6 0 0 0 -6,6a6,6 0 0 0 6,6a6,6 0 0 0 6,-6a6,6 0 0 0 -6,-6"})]);var am=$e({name:"QRadio",props:{...Wt,...Yn,...pi,modelValue:{required:!0},val:{required:!0},label:String,leftLabel:Boolean,checkedIcon:String,uncheckedIcon:String,color:String,keepColor:Boolean,dense:Boolean,disable:Boolean,tabindex:[String,Number]},emits:["update:modelValue"],setup(e,{slots:t,emit:n}){const{proxy:o}=ke(),r=Qt(e,o.$q),i=Zn(e,Ga),s=he(null),{refocusTargetEl:l,refocusTarget:a}=Xa(e,s),c=R(()=>ie(e.modelValue)===ie(e.val)),u=R(()=>"q-radio cursor-pointer no-outline row inline no-wrap items-center"+(e.disable===!0?" disabled":"")+(r.value===!0?" q-radio--dark":"")+(e.dense===!0?" q-radio--dense":"")+(e.leftLabel===!0?" reverse":"")),d=R(()=>{const _=e.color!==void 0&&(e.keepColor===!0||c.value===!0)?` text-${e.color}`:"";return`q-radio__inner relative-position q-radio__inner--${c.value===!0?"truthy":"falsy"}${_}`}),f=R(()=>(c.value===!0?e.checkedIcon:e.uncheckedIcon)||null),p=R(()=>e.disable===!0?-1:e.tabindex||0),y=R(()=>{const _={type:"radio"};return e.name!==void 0&&Object.assign(_,{".checked":c.value===!0,"^checked":c.value===!0?"checked":void 0,name:e.name,value:e.val}),_}),T=Ja(y);function q(_){_!==void 0&&(Ke(_),a(_)),e.disable!==!0&&c.value!==!0&&n("update:modelValue",e.val,_)}function M(_){(_.keyCode===13||_.keyCode===32)&&Ke(_)}function m(_){(_.keyCode===13||_.keyCode===32)&&q(_)}return Object.assign(o,{set:q}),()=>{const _=f.value!==null?[E("div",{key:"icon",class:"q-radio__icon-container absolute-full flex flex-center no-wrap"},[E(pt,{class:"q-radio__icon",name:f.value})])]:[lm];e.disable!==!0&&T(_,"unshift"," q-radio__native q-ma-none q-pa-none");const w=[E("div",{class:d.value,style:i.value,"aria-hidden":"true"},_)];l.value!==null&&w.push(l.value);const F=e.label!==void 0?It(t.default,[e.label]):tt(t.default);return F!==void 0&&w.push(E("div",{class:"q-radio__label q-anchor--skip"},F)),E("div",{ref:s,class:u.value,tabindex:p.value,role:"radio","aria-label":e.label,"aria-checked":c.value===!0?"true":"false","aria-disabled":e.disable===!0?"true":void 0,onClick:q,onKeydown:M,onKeyup:m},w)}}});const eu={...Wt,...Yn,...pi,modelValue:{required:!0,default:null},val:{},trueValue:{default:!0},falseValue:{default:!1},indeterminateValue:{default:null},checkedIcon:String,uncheckedIcon:String,indeterminateIcon:String,toggleOrder:{type:String,validator:e=>e==="tf"||e==="ft"},toggleIndeterminate:Boolean,label:String,leftLabel:Boolean,color:String,keepColor:Boolean,dense:Boolean,disable:Boolean,tabindex:[String,Number]},tu=["update:modelValue"];function nu(e,t){const{props:n,slots:o,emit:r,proxy:i}=ke(),{$q:s}=i,l=Qt(n,s),a=he(null),{refocusTargetEl:c,refocusTarget:u}=Xa(n,a),d=Zn(n,Ga),f=R(()=>n.val!==void 0&&Array.isArray(n.modelValue)),p=R(()=>{const v=ie(n.val);return f.value===!0?n.modelValue.findIndex(H=>ie(H)===v):-1}),y=R(()=>f.value===!0?p.value>-1:ie(n.modelValue)===ie(n.trueValue)),T=R(()=>f.value===!0?p.value===-1:ie(n.modelValue)===ie(n.falseValue)),q=R(()=>y.value===!1&&T.value===!1),M=R(()=>n.disable===!0?-1:n.tabindex||0),m=R(()=>`q-${e} cursor-pointer no-outline row inline no-wrap items-center`+(n.disable===!0?" disabled":"")+(l.value===!0?` q-${e}--dark`:"")+(n.dense===!0?` q-${e}--dense`:"")+(n.leftLabel===!0?" reverse":"")),_=R(()=>{const v=y.value===!0?"truthy":T.value===!0?"falsy":"indet",H=n.color!==void 0&&(n.keepColor===!0||(e==="toggle"?y.value===!0:T.value!==!0))?` text-${n.color}`:"";return`q-${e}__inner relative-position non-selectable q-${e}__inner--${v}${H}`}),w=R(()=>{const v={type:"checkbox"};return n.name!==void 0&&Object.assign(v,{".checked":y.value,"^checked":y.value===!0?"checked":void 0,name:n.name,value:f.value===!0?n.val:n.trueValue}),v}),F=Ja(w),j=R(()=>{const v={tabindex:M.value,role:e==="toggle"?"switch":"checkbox","aria-label":n.label,"aria-checked":q.value===!0?"mixed":y.value===!0?"true":"false"};return n.disable===!0&&(v["aria-disabled"]="true"),v});function V(v){v!==void 0&&(Ke(v),u(v)),n.disable!==!0&&r("update:modelValue",N(),v)}function N(){if(f.value===!0){if(y.value===!0){const v=n.modelValue.slice();return v.splice(p.value,1),v}return n.modelValue.concat([n.val])}if(y.value===!0){if(n.toggleOrder!=="ft"||n.toggleIndeterminate===!1)return n.falseValue}else if(T.value===!0){if(n.toggleOrder==="ft"||n.toggleIndeterminate===!1)return n.trueValue}else return n.toggleOrder!=="ft"?n.trueValue:n.falseValue;return n.indeterminateValue}function C(v){(v.keyCode===13||v.keyCode===32)&&Ke(v)}function x(v){(v.keyCode===13||v.keyCode===32)&&V(v)}const $=t(y,q);return Object.assign(i,{toggle:V}),()=>{const v=$();n.disable!==!0&&F(v,"unshift",` q-${e}__native absolute q-ma-none q-pa-none`);const H=[E("div",{class:_.value,style:d.value,"aria-hidden":"true"},v)];c.value!==null&&H.push(c.value);const k=n.label!==void 0?It(o.default,[n.label]):tt(o.default);return k!==void 0&&H.push(E("div",{class:`q-${e}__label q-anchor--skip`},k)),E("div",{ref:a,class:m.value,...j.value,onClick:V,onKeydown:C,onKeyup:x},H)}}const um=E("div",{key:"svg",class:"q-checkbox__bg absolute"},[E("svg",{class:"q-checkbox__svg fit absolute-full",viewBox:"0 0 24 24"},[E("path",{class:"q-checkbox__truthy",fill:"none",d:"M1.73,12.91 8.1,19.28 22.79,4.59"}),E("path",{class:"q-checkbox__indet",d:"M4,14H20V10H4"})])]);var cm=$e({name:"QCheckbox",props:eu,emits:tu,setup(e){function t(n,o){const r=R(()=>(n.value===!0?e.checkedIcon:o.value===!0?e.indeterminateIcon:e.uncheckedIcon)||null);return()=>r.value!==null?[E("div",{key:"icon",class:"q-checkbox__icon-container absolute-full flex flex-center no-wrap"},[E(pt,{class:"q-checkbox__icon",name:r.value})])]:[um]}return nu("checkbox",t)}}),fm=$e({name:"QToggle",props:{...eu,icon:String,iconColor:String},emits:tu,setup(e){function t(n,o){const r=R(()=>(n.value===!0?e.checkedIcon:o.value===!0?e.indeterminateIcon:e.uncheckedIcon)||e.icon),i=R(()=>n.value===!0?e.iconColor:null);return()=>[E("div",{class:"q-toggle__track"}),E("div",{class:"q-toggle__thumb absolute flex flex-center no-wrap"},r.value!==void 0?[E(pt,{name:r.value,color:i.value})]:void 0)]}return nu("toggle",t)}});const ou={radio:am,checkbox:cm,toggle:fm},dm=Object.keys(ou);var hm=$e({name:"QOptionGroup",props:{...Wt,modelValue:{required:!0},options:{type:Array,validator:e=>e.every(t=>"value"in t&&"label"in t)},name:String,type:{default:"radio",validator:e=>dm.includes(e)},color:String,keepColor:Boolean,dense:Boolean,size:String,leftLabel:Boolean,inline:Boolean,disable:Boolean},emits:["update:modelValue"],setup(e,{emit:t,slots:n}){const{proxy:{$q:o}}=ke(),r=Array.isArray(e.modelValue);e.type==="radio"?r===!0&&console.error("q-option-group: model should not be array"):r===!1&&console.error("q-option-group: model should be array in your case");const i=Qt(e,o),s=R(()=>ou[e.type]),l=R(()=>"q-option-group q-gutter-x-sm"+(e.inline===!0?" q-option-group--inline":"")),a=R(()=>{const u={role:"group"};return e.type==="radio"&&(u.role="radiogroup",e.disable===!0&&(u["aria-disabled"]="true")),u});function c(u){t("update:modelValue",u)}return()=>E("div",{class:l.value,...a.value},e.options.map((u,d)=>{const f=n["label-"+d]!==void 0?()=>n["label-"+d](u):n.label!==void 0?()=>n.label(u):void 0;return E("div",[E(s.value,{modelValue:e.modelValue,val:u.value,name:u.name===void 0?e.name:u.name,disable:e.disable||u.disable,label:f===void 0?u.label:null,leftLabel:u.leftLabel===void 0?e.leftLabel:u.leftLabel,color:u.color===void 0?e.color:u.color,checkedIcon:u.checkedIcon,uncheckedIcon:u.uncheckedIcon,dark:u.dark||i.value,size:u.size===void 0?e.size:u.size,dense:e.dense,keepColor:u.keepColor===void 0?e.keepColor:u.keepColor,"onUpdate:modelValue":c},f)])}))}}),gm=$e({name:"DialogPlugin",props:{...Wt,title:String,message:String,prompt:Object,options:Object,progress:[Boolean,Object],html:Boolean,ok:{type:[String,Object,Boolean],default:!0},cancel:[String,Object,Boolean],focus:{type:String,default:"ok",validator:e=>["ok","cancel","none"].includes(e)},stackButtons:Boolean,color:String,cardClass:[String,Array,Object],cardStyle:[String,Array,Object]},emits:["ok","hide"],setup(e,{emit:t}){const{proxy:n}=ke(),{$q:o}=n,r=Qt(e,o),i=he(null),s=he(e.prompt!==void 0?e.prompt.model:e.options!==void 0?e.options.model:void 0),l=R(()=>"q-dialog-plugin"+(r.value===!0?" q-dialog-plugin--dark q-dark":"")+(e.progress!==!1?" q-dialog-plugin--progress":"")),a=R(()=>e.color||(r.value===!0?"amber":"primary")),c=R(()=>e.progress===!1?null:at(e.progress)===!0?{component:e.progress.spinner||Un,props:{color:e.progress.color||a.value}}:{component:Un,props:{color:a.value}}),u=R(()=>e.prompt!==void 0||e.options!==void 0),d=R(()=>{if(u.value!==!0)return{};const{model:k,isValid:Z,items:Y,...A}=e.prompt!==void 0?e.prompt:e.options;return A}),f=R(()=>at(e.ok)===!0||e.ok===!0?o.lang.label.ok:e.ok),p=R(()=>at(e.cancel)===!0||e.cancel===!0?o.lang.label.cancel:e.cancel),y=R(()=>e.prompt!==void 0?e.prompt.isValid!==void 0&&e.prompt.isValid(s.value)!==!0:e.options!==void 0?e.options.isValid!==void 0&&e.options.isValid(s.value)!==!0:!1),T=R(()=>({color:a.value,label:f.value,ripple:!1,disable:y.value,...at(e.ok)===!0?e.ok:{flat:!0},"data-autofocus":e.focus==="ok"&&u.value!==!0||void 0,onClick:_})),q=R(()=>({color:a.value,label:p.value,ripple:!1,...at(e.cancel)===!0?e.cancel:{flat:!0},"data-autofocus":e.focus==="cancel"&&u.value!==!0||void 0,onClick:w}));be(()=>e.prompt&&e.prompt.model,j),be(()=>e.options&&e.options.model,j);function M(){i.value.show()}function m(){i.value.hide()}function _(){t("ok",ie(s.value)),m()}function w(){m()}function F(){t("hide")}function j(k){s.value=k}function V(k){y.value!==!0&&e.prompt.type!=="textarea"&&zn(k,13)===!0&&_()}function N(k,Z){return e.html===!0?E(En,{class:k,innerHTML:Z}):E(En,{class:k},()=>Z)}function C(){return[E(sm,{color:a.value,dense:!0,autofocus:!0,dark:r.value,...d.value,modelValue:s.value,"onUpdate:modelValue":j,onKeyup:V})]}function x(){return[E(hm,{color:a.value,options:e.options.items,dark:r.value,...d.value,modelValue:s.value,"onUpdate:modelValue":j})]}function $(){const k=[];return e.cancel&&k.push(E(Br,q.value)),e.ok&&k.push(E(Br,T.value)),E(Fg,{class:e.stackButtons===!0?"items-end":"",vertical:e.stackButtons,align:"right"},()=>k)}function v(){const k=[];return e.title&&k.push(N("q-dialog__title",e.title)),e.progress!==!1&&k.push(E(En,{class:"q-dialog__progress"},()=>E(c.value.component,c.value.props))),e.message&&k.push(N("q-dialog__message",e.message)),e.prompt!==void 0?k.push(E(En,{class:"scroll q-dialog-plugin__form"},C)):e.options!==void 0&&k.push(E(Ks,{dark:r.value}),E(En,{class:"scroll q-dialog-plugin__form"},x),E(Ks,{dark:r.value})),(e.ok||e.cancel)&&k.push($()),k}function H(){return[E(Bg,{class:[l.value,e.cardClass],style:e.cardStyle,dark:r.value},v)]}return Object.assign(n,{show:M,hide:m}),()=>E(Lg,{ref:i,onHide:F},H)}});function ru(e,t){for(const n in t)n!=="spinner"&&Object(t[n])===t[n]?(e[n]=Object(e[n])!==e[n]?{}:{...e[n]},ru(e[n],t[n])):e[n]=t[n]}function mm(e,t,n){return o=>{let r,i;const s=t===!0&&o.component!==void 0;if(s===!0){const{component:m,componentProps:_}=o;r=typeof m=="string"?n.component(m):m,i=_||{}}else{const{class:m,style:_,...w}=o;r=e,i=w,m!==void 0&&(w.cardClass=m),_!==void 0&&(w.cardStyle=_)}let l,a=!1;const c=he(null),u=hi(!1,"dialog"),d=m=>{if(c.value!==null&&c.value[m]!==void 0){c.value[m]();return}const _=l.$.subTree;if(_&&_.component){if(_.component.proxy&&_.component.proxy[m]){_.component.proxy[m]();return}if(_.component.subTree&&_.component.subTree.component&&_.component.subTree.component.proxy&&_.component.subTree.component.proxy[m]){_.component.subTree.component.proxy[m]();return}}console.error("[Quasar] Incorrectly defined Dialog component")},f=[],p=[],y={onOk(m){return f.push(m),y},onCancel(m){return p.push(m),y},onDismiss(m){return f.push(m),p.push(m),y},hide(){return d("hide"),y},update(m){if(l!==null){if(s===!0)Object.assign(i,m);else{const{class:_,style:w,...F}=m;_!==void 0&&(F.cardClass=_),w!==void 0&&(F.cardStyle=w),ru(i,F)}l.$forceUpdate()}return y}},T=m=>{a=!0,f.forEach(_=>{_(m)})},q=()=>{M.unmount(u),Fa(u),M=null,l=null,a!==!0&&p.forEach(m=>{m()})};let M=ma({name:"QGlobalDialog",setup:()=>()=>E(r,{...i,ref:c,onOk:T,onHide:q,onVnodeMounted(...m){typeof i.onVnodeMounted=="function"&&i.onVnodeMounted(...m),je(()=>d("show"))}})},n);return l=M.mount(u),y}}var pm={install({$q:e,parentApp:t}){e.dialog=mm(gm,!0,t),this.__installed!==!0&&(this.create=e.dialog)}},vm={config:{staticPath:"/nostrmarket/static/market/"},plugins:{Notify:ig,LocalStorage:Da,Dialog:pm}};async function bm({app:e,router:t}){e.use(t),e.mount("#q-app")}Ch(la,vm).then(bm);export{Zn as $,Pt as A,Vm as B,Be as C,za as D,Ka as E,je as F,zn as G,Et as H,Kf as I,Uf as J,vo as K,we as L,hg as M,pg as N,gg as O,Tr as P,dg as Q,fg as R,vg as S,mg as T,xg as U,cn as V,Ke as W,Wt as X,Yn as Y,Qt as Z,dd as _,R as a,wm as a$,Lm as a0,pt as a1,Eh as a2,Nh as a3,ua as a4,vc as a5,Fo as a6,Ll as a7,$h as a8,Lh as a9,da as aA,nr as aB,Ug as aC,Wg as aD,Yg as aE,Qg as aF,pi as aG,Gg as aH,jr as aI,Fl as aJ,ri as aK,im as aL,Lg as aM,Rm as aN,Pm as aO,_m as aP,Cm as aQ,Oh as aR,ym as aS,Qc as aT,Xe as aU,En as aV,Ks as aW,km as aX,sm as aY,cm as aZ,Em as a_,Un as aa,zh as ab,Kh as ac,$m as ad,Og as ae,Hf as af,Hs as ag,Ds as ah,_g as ai,Mg as aj,mi as ak,Fh as al,Zh as am,Kg as an,Im as ao,Br as ap,ko as aq,Aa as ar,Ma as as,Fm as at,kh as au,Nm as av,jm as aw,rd as ax,Am as ay,Al as az,tt as b,Bg as b0,zm as b1,Hm as b2,La as b3,id as b4,Fg as b5,hm as b6,Dm as b7,Bm as b8,xm as b9,ml as ba,Sm as bb,$a as bc,qr as bd,Om as be,Wr as bf,Ur as bg,Vt as bh,$e as c,qm as d,Mm as e,qt as f,ke as g,E as h,ut as i,Km as j,pn as k,Tm as l,It as m,Lo as n,ii as o,fo as p,xc as q,he as r,Wl as s,Yl as t,sc as u,Jl as v,be as w,Fe as x,Ut as y,We as z}; + */const en=typeof window!="undefined";function pd(e){return e.__esModule||e[Symbol.toStringTag]==="Module"}const ge=Object.assign;function or(e,t){const n={};for(const o in t){const r=t[o];n[o]=rt(r)?r.map(e):e(r)}return n}const Ln=()=>{},rt=Array.isArray,vd=/\/$/,bd=e=>e.replace(vd,"");function rr(e,t,n="/"){let o,r={},i="",s="";const l=t.indexOf("#");let a=t.indexOf("?");return l=0&&(a=-1),a>-1&&(o=t.slice(0,a),i=t.slice(a+1,l>-1?l:t.length),r=e(i)),l>-1&&(o=o||t.slice(0,l),s=t.slice(l,t.length)),o=xd(o!=null?o:t,n),{fullPath:o+(i&&"?")+i+s,path:o,query:r,hash:s}}function yd(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function us(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function _d(e,t,n){const o=t.matched.length-1,r=n.matched.length-1;return o>-1&&o===r&&fn(t.matched[o],n.matched[r])&&pa(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function fn(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function pa(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!wd(e[n],t[n]))return!1;return!0}function wd(e,t){return rt(e)?cs(e,t):rt(t)?cs(t,e):e===t}function cs(e,t){return rt(t)?e.length===t.length&&e.every((n,o)=>n===t[o]):e.length===1&&e[0]===t}function xd(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),o=e.split("/"),r=o[o.length-1];(r===".."||r===".")&&o.push("");let i=n.length-1,s,l;for(s=0;s1&&i--;else break;return n.slice(0,i).join("/")+"/"+o.slice(s-(s===o.length?1:0)).join("/")}var Kn;(function(e){e.pop="pop",e.push="push"})(Kn||(Kn={}));var Bn;(function(e){e.back="back",e.forward="forward",e.unknown=""})(Bn||(Bn={}));function Cd(e){if(!e)if(en){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),bd(e)}const kd=/^[^#]+#/;function Ed(e,t){return e.replace(kd,"#")+t}function Sd(e,t){const n=document.documentElement.getBoundingClientRect(),o=e.getBoundingClientRect();return{behavior:t.behavior,left:o.left-n.left-(t.left||0),top:o.top-n.top-(t.top||0)}}const zo=()=>({left:window.pageXOffset,top:window.pageYOffset});function Rd(e){let t;if("el"in e){const n=e.el,o=typeof n=="string"&&n.startsWith("#"),r=typeof n=="string"?o?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!r)return;t=Sd(r,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.pageXOffset,t.top!=null?t.top:window.pageYOffset)}function fs(e,t){return(history.state?history.state.position-t:-1)+e}const Ar=new Map;function Pd(e,t){Ar.set(e,t)}function Td(e){const t=Ar.get(e);return Ar.delete(e),t}let qd=()=>location.protocol+"//"+location.host;function va(e,t){const{pathname:n,search:o,hash:r}=t,i=e.indexOf("#");if(i>-1){let l=r.includes(e.slice(i))?e.slice(i).length:1,a=r.slice(l);return a[0]!=="/"&&(a="/"+a),us(a,"")}return us(n,e)+o+r}function Ad(e,t,n,o){let r=[],i=[],s=null;const l=({state:f})=>{const p=va(e,location),y=n.value,T=t.value;let q=0;if(f){if(n.value=p,t.value=f,s&&s===y){s=null;return}q=T?f.position-T.position:0}else o(p);r.forEach(M=>{M(n.value,y,{delta:q,type:Kn.pop,direction:q?q>0?Bn.forward:Bn.back:Bn.unknown})})};function a(){s=n.value}function c(f){r.push(f);const p=()=>{const y=r.indexOf(f);y>-1&&r.splice(y,1)};return i.push(p),p}function u(){const{history:f}=window;!f.state||f.replaceState(ge({},f.state,{scroll:zo()}),"")}function d(){for(const f of i)f();i=[],window.removeEventListener("popstate",l),window.removeEventListener("beforeunload",u)}return window.addEventListener("popstate",l),window.addEventListener("beforeunload",u,{passive:!0}),{pauseListeners:a,listen:c,destroy:d}}function ds(e,t,n,o=!1,r=!1){return{back:e,current:t,forward:n,replaced:o,position:window.history.length,scroll:r?zo():null}}function Md(e){const{history:t,location:n}=window,o={value:va(e,n)},r={value:t.state};r.value||i(o.value,{back:null,current:o.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function i(a,c,u){const d=e.indexOf("#"),f=d>-1?(n.host&&document.querySelector("base")?e:e.slice(d))+a:qd()+e+a;try{t[u?"replaceState":"pushState"](c,"",f),r.value=c}catch(p){console.error(p),n[u?"replace":"assign"](f)}}function s(a,c){const u=ge({},t.state,ds(r.value.back,a,r.value.forward,!0),c,{position:r.value.position});i(a,u,!0),o.value=a}function l(a,c){const u=ge({},r.value,t.state,{forward:a,scroll:zo()});i(u.current,u,!0);const d=ge({},ds(o.value,a,null),{position:u.position+1},c);i(a,d,!1),o.value=a}return{location:o,state:r,push:l,replace:s}}function Od(e){e=Cd(e);const t=Md(e),n=Ad(e,t.state,t.location,t.replace);function o(i,s=!0){s||n.pauseListeners(),history.go(i)}const r=ge({location:"",base:e,go:o,createHref:Ed.bind(null,e)},t,n);return Object.defineProperty(r,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(r,"state",{enumerable:!0,get:()=>t.state.value}),r}function $d(e){return e=location.host?e||location.pathname+location.search:"",e.includes("#")||(e+="#"),Od(e)}function Ld(e){return typeof e=="string"||e&&typeof e=="object"}function ba(e){return typeof e=="string"||typeof e=="symbol"}const _t={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0},ya=Symbol("");var hs;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(hs||(hs={}));function dn(e,t){return ge(new Error,{type:e,[ya]:!0},t)}function ft(e,t){return e instanceof Error&&ya in e&&(t==null||!!(e.type&t))}const gs="[^/]+?",Bd={sensitive:!1,strict:!1,start:!0,end:!0},Fd=/[.+*?^${}()[\]/\\]/g;function Id(e,t){const n=ge({},Bd,t),o=[];let r=n.start?"^":"";const i=[];for(const c of e){const u=c.length?[]:[90];n.strict&&!c.length&&(r+="/");for(let d=0;dt.length?t.length===1&&t[0]===40+40?1:-1:0}function jd(e,t){let n=0;const o=e.score,r=t.score;for(;n0&&t[t.length-1]<0}const Vd={type:0,value:""},Dd=/[a-zA-Z0-9_]/;function Hd(e){if(!e)return[[]];if(e==="/")return[[Vd]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(p){throw new Error(`ERR (${n})/"${c}": ${p}`)}let n=0,o=n;const r=[];let i;function s(){i&&r.push(i),i=[]}let l=0,a,c="",u="";function d(){!c||(n===0?i.push({type:0,value:c}):n===1||n===2||n===3?(i.length>1&&(a==="*"||a==="+")&&t(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),i.push({type:1,value:c,regexp:u,repeatable:a==="*"||a==="+",optional:a==="*"||a==="?"})):t("Invalid state to consume buffer"),c="")}function f(){c+=a}for(;l{s(m)}:Ln}function s(u){if(ba(u)){const d=o.get(u);d&&(o.delete(u),n.splice(n.indexOf(d),1),d.children.forEach(s),d.alias.forEach(s))}else{const d=n.indexOf(u);d>-1&&(n.splice(d,1),u.record.name&&o.delete(u.record.name),u.children.forEach(s),u.alias.forEach(s))}}function l(){return n}function a(u){let d=0;for(;d=0&&(u.record.path!==n[d].record.path||!_a(u,n[d]));)d++;n.splice(d,0,u),u.record.name&&!vs(u)&&o.set(u.record.name,u)}function c(u,d){let f,p={},y,T;if("name"in u&&u.name){if(f=o.get(u.name),!f)throw dn(1,{location:u});T=f.record.name,p=ge(ps(d.params,f.keys.filter(m=>!m.optional).map(m=>m.name)),u.params&&ps(u.params,f.keys.map(m=>m.name))),y=f.stringify(p)}else if("path"in u)y=u.path,f=n.find(m=>m.re.test(y)),f&&(p=f.parse(y),T=f.record.name);else{if(f=d.name?o.get(d.name):n.find(m=>m.re.test(d.path)),!f)throw dn(1,{location:u,currentLocation:d});T=f.record.name,p=ge({},d.params,u.params),y=f.stringify(p)}const q=[];let M=f;for(;M;)q.unshift(M.record),M=M.parent;return{name:T,path:y,params:p,matched:q,meta:Qd(q)}}return e.forEach(u=>i(u)),{addRoute:i,resolve:c,removeRoute:s,getRoutes:l,getRecordMatcher:r}}function ps(e,t){const n={};for(const o of t)o in e&&(n[o]=e[o]);return n}function Ud(e){return{path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:void 0,beforeEnter:e.beforeEnter,props:Wd(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}}}function Wd(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const o in e.components)t[o]=typeof n=="object"?n[o]:n;return t}function vs(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Qd(e){return e.reduce((t,n)=>ge(t,n.meta),{})}function bs(e,t){const n={};for(const o in e)n[o]=o in t?t[o]:e[o];return n}function _a(e,t){return t.children.some(n=>n===e||_a(e,n))}const wa=/#/g,Yd=/&/g,Zd=/\//g,Jd=/=/g,Xd=/\?/g,xa=/\+/g,Gd=/%5B/g,eh=/%5D/g,Ca=/%5E/g,th=/%60/g,ka=/%7B/g,nh=/%7C/g,Ea=/%7D/g,oh=/%20/g;function fi(e){return encodeURI(""+e).replace(nh,"|").replace(Gd,"[").replace(eh,"]")}function rh(e){return fi(e).replace(ka,"{").replace(Ea,"}").replace(Ca,"^")}function Mr(e){return fi(e).replace(xa,"%2B").replace(oh,"+").replace(wa,"%23").replace(Yd,"%26").replace(th,"`").replace(ka,"{").replace(Ea,"}").replace(Ca,"^")}function ih(e){return Mr(e).replace(Jd,"%3D")}function sh(e){return fi(e).replace(wa,"%23").replace(Xd,"%3F")}function lh(e){return e==null?"":sh(e).replace(Zd,"%2F")}function Ro(e){try{return decodeURIComponent(""+e)}catch{}return""+e}function ah(e){const t={};if(e===""||e==="?")return t;const o=(e[0]==="?"?e.slice(1):e).split("&");for(let r=0;ri&&Mr(i)):[o&&Mr(o)]).forEach(i=>{i!==void 0&&(t+=(t.length?"&":"")+n,i!=null&&(t+="="+i))})}return t}function uh(e){const t={};for(const n in e){const o=e[n];o!==void 0&&(t[n]=rt(o)?o.map(r=>r==null?null:""+r):o==null?o:""+o)}return t}const ch=Symbol(""),_s=Symbol(""),di=Symbol(""),Sa=Symbol(""),Or=Symbol("");function xn(){let e=[];function t(o){return e.push(o),()=>{const r=e.indexOf(o);r>-1&&e.splice(r,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Ct(e,t,n,o,r){const i=o&&(o.enterCallbacks[r]=o.enterCallbacks[r]||[]);return()=>new Promise((s,l)=>{const a=d=>{d===!1?l(dn(4,{from:n,to:t})):d instanceof Error?l(d):Ld(d)?l(dn(2,{from:t,to:d})):(i&&o.enterCallbacks[r]===i&&typeof d=="function"&&i.push(d),s())},c=e.call(o&&o.instances[r],t,n,a);let u=Promise.resolve(c);e.length<3&&(u=u.then(a)),u.catch(d=>l(d))})}function ir(e,t,n,o){const r=[];for(const i of e)for(const s in i.components){let l=i.components[s];if(!(t!=="beforeRouteEnter"&&!i.instances[s]))if(fh(l)){const c=(l.__vccOpts||l)[t];c&&r.push(Ct(c,n,o,i,s))}else{let a=l();r.push(()=>a.then(c=>{if(!c)return Promise.reject(new Error(`Couldn't resolve component "${s}" at "${i.path}"`));const u=pd(c)?c.default:c;i.components[s]=u;const f=(u.__vccOpts||u)[t];return f&&Ct(f,n,o,i,s)()}))}}return r}function fh(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function ws(e){const t=ut(di),n=ut(Sa),o=R(()=>t.resolve(Vt(e.to))),r=R(()=>{const{matched:a}=o.value,{length:c}=a,u=a[c-1],d=n.matched;if(!u||!d.length)return-1;const f=d.findIndex(fn.bind(null,u));if(f>-1)return f;const p=xs(a[c-2]);return c>1&&xs(u)===p&&d[d.length-1].path!==p?d.findIndex(fn.bind(null,a[c-2])):f}),i=R(()=>r.value>-1&&mh(n.params,o.value.params)),s=R(()=>r.value>-1&&r.value===n.matched.length-1&&pa(n.params,o.value.params));function l(a={}){return gh(a)?t[Vt(e.replace)?"replace":"push"](Vt(e.to)).catch(Ln):Promise.resolve()}return{route:o,href:R(()=>o.value.href),isActive:i,isExactActive:s,navigate:l}}const dh=Lo({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:ws,setup(e,{slots:t}){const n=pn(ws(e)),{options:o}=ut(di),r=R(()=>({[Cs(e.activeClass,o.linkActiveClass,"router-link-active")]:n.isActive,[Cs(e.exactActiveClass,o.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const i=t.default&&t.default(n);return e.custom?i:E("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:r.value},i)}}}),hh=dh;function gh(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function mh(e,t){for(const n in t){const o=t[n],r=e[n];if(typeof o=="string"){if(o!==r)return!1}else if(!rt(r)||r.length!==o.length||o.some((i,s)=>i!==r[s]))return!1}return!0}function xs(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const Cs=(e,t,n)=>e!=null?e:t!=null?t:n,ph=Lo({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const o=ut(Or),r=R(()=>e.route||o.value),i=ut(_s,0),s=R(()=>{let c=Vt(i);const{matched:u}=r.value;let d;for(;(d=u[c])&&!d.components;)c++;return c}),l=R(()=>r.value.matched[s.value]);fo(_s,R(()=>s.value+1)),fo(ch,l),fo(Or,r);const a=he();return be(()=>[a.value,l.value,e.name],([c,u,d],[f,p,y])=>{u&&(u.instances[d]=c,p&&p!==u&&c&&c===f&&(u.leaveGuards.size||(u.leaveGuards=p.leaveGuards),u.updateGuards.size||(u.updateGuards=p.updateGuards))),c&&u&&(!p||!fn(u,p)||!f)&&(u.enterCallbacks[d]||[]).forEach(T=>T(c))},{flush:"post"}),()=>{const c=r.value,u=e.name,d=l.value,f=d&&d.components[u];if(!f)return ks(n.default,{Component:f,route:c});const p=d.props[u],y=p?p===!0?c.params:typeof p=="function"?p(c):p:null,q=E(f,ge({},y,t,{onVnodeUnmounted:M=>{M.component.isUnmounted&&(d.instances[u]=null)},ref:a}));return ks(n.default,{Component:q,route:c})||q}}});function ks(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const vh=ph;function bh(e){const t=Kd(e.routes,e),n=e.parseQuery||ah,o=e.stringifyQuery||ys,r=e.history,i=xn(),s=xn(),l=xn(),a=Yu(_t);let c=_t;en&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=or.bind(null,S=>""+S),d=or.bind(null,lh),f=or.bind(null,Ro);function p(S,Q){let z,X;return ba(S)?(z=t.getRecordMatcher(S),X=Q):X=S,t.addRoute(X,z)}function y(S){const Q=t.getRecordMatcher(S);Q&&t.removeRoute(Q)}function T(){return t.getRoutes().map(S=>S.record)}function q(S){return!!t.getRecordMatcher(S)}function M(S,Q){if(Q=ge({},Q||a.value),typeof S=="string"){const b=rr(n,S,Q.path),P=t.resolve({path:b.path},Q),O=r.createHref(b.fullPath);return ge(b,P,{params:f(P.params),hash:Ro(b.hash),redirectedFrom:void 0,href:O})}let z;if("path"in S)z=ge({},S,{path:rr(n,S.path,Q.path).path});else{const b=ge({},S.params);for(const P in b)b[P]==null&&delete b[P];z=ge({},S,{params:d(b)}),Q.params=d(Q.params)}const X=t.resolve(z,Q),de=S.hash||"";X.params=u(f(X.params));const h=yd(o,ge({},S,{hash:rh(de),path:X.path})),g=r.createHref(h);return ge({fullPath:h,hash:de,query:o===ys?uh(S.query):S.query||{}},X,{redirectedFrom:void 0,href:g})}function m(S){return typeof S=="string"?rr(n,S,a.value.path):ge({},S)}function _(S,Q){if(c!==S)return dn(8,{from:Q,to:S})}function w(S){return V(S)}function F(S){return w(ge(m(S),{replace:!0}))}function j(S){const Q=S.matched[S.matched.length-1];if(Q&&Q.redirect){const{redirect:z}=Q;let X=typeof z=="function"?z(S):z;return typeof X=="string"&&(X=X.includes("?")||X.includes("#")?X=m(X):{path:X},X.params={}),ge({query:S.query,hash:S.hash,params:"path"in X?{}:S.params},X)}}function V(S,Q){const z=c=M(S),X=a.value,de=S.state,h=S.force,g=S.replace===!0,b=j(z);if(b)return V(ge(m(b),{state:typeof b=="object"?ge({},de,b.state):de,force:h,replace:g}),Q||z);const P=z;P.redirectedFrom=Q;let O;return!h&&_d(o,X,z)&&(O=dn(16,{to:P,from:X}),fe(X,X,!0,!1)),(O?Promise.resolve(O):x(P,X)).catch(B=>ft(B)?ft(B,2)?B:se(B):W(B,P,X)).then(B=>{if(B){if(ft(B,2))return V(ge({replace:g},m(B.to),{state:typeof B.to=="object"?ge({},de,B.to.state):de,force:h}),Q||P)}else B=v(P,X,!0,g,de);return $(P,X,B),B})}function N(S,Q){const z=_(S,Q);return z?Promise.reject(z):Promise.resolve()}function C(S){const Q=Re.values().next().value;return Q&&typeof Q.runWithContext=="function"?Q.runWithContext(S):S()}function x(S,Q){let z;const[X,de,h]=yh(S,Q);z=ir(X.reverse(),"beforeRouteLeave",S,Q);for(const b of X)b.leaveGuards.forEach(P=>{z.push(Ct(P,S,Q))});const g=N.bind(null,S,Q);return z.push(g),ne(z).then(()=>{z=[];for(const b of i.list())z.push(Ct(b,S,Q));return z.push(g),ne(z)}).then(()=>{z=ir(de,"beforeRouteUpdate",S,Q);for(const b of de)b.updateGuards.forEach(P=>{z.push(Ct(P,S,Q))});return z.push(g),ne(z)}).then(()=>{z=[];for(const b of h)if(b.beforeEnter)if(rt(b.beforeEnter))for(const P of b.beforeEnter)z.push(Ct(P,S,Q));else z.push(Ct(b.beforeEnter,S,Q));return z.push(g),ne(z)}).then(()=>(S.matched.forEach(b=>b.enterCallbacks={}),z=ir(h,"beforeRouteEnter",S,Q),z.push(g),ne(z))).then(()=>{z=[];for(const b of s.list())z.push(Ct(b,S,Q));return z.push(g),ne(z)}).catch(b=>ft(b,8)?b:Promise.reject(b))}function $(S,Q,z){l.list().forEach(X=>C(()=>X(S,Q,z)))}function v(S,Q,z,X,de){const h=_(S,Q);if(h)return h;const g=Q===_t,b=en?history.state:{};z&&(X||g?r.replace(S.fullPath,ge({scroll:g&&b&&b.scroll},de)):r.push(S.fullPath,de)),a.value=S,fe(S,Q,z,g),se()}let H;function k(){H||(H=r.listen((S,Q,z)=>{if(!oe.listening)return;const X=M(S),de=j(X);if(de){V(ge(de,{replace:!0}),X).catch(Ln);return}c=X;const h=a.value;en&&Pd(fs(h.fullPath,z.delta),zo()),x(X,h).catch(g=>ft(g,12)?g:ft(g,2)?(V(g.to,X).then(b=>{ft(b,20)&&!z.delta&&z.type===Kn.pop&&r.go(-1,!1)}).catch(Ln),Promise.reject()):(z.delta&&r.go(-z.delta,!1),W(g,X,h))).then(g=>{g=g||v(X,h,!1),g&&(z.delta&&!ft(g,8)?r.go(-z.delta,!1):z.type===Kn.pop&&ft(g,20)&&r.go(-1,!1)),$(X,h,g)}).catch(Ln)}))}let Z=xn(),Y=xn(),A;function W(S,Q,z){se(S);const X=Y.list();return X.length?X.forEach(de=>de(S,Q,z)):console.error(S),Promise.reject(S)}function _e(){return A&&a.value!==_t?Promise.resolve():new Promise((S,Q)=>{Z.add([S,Q])})}function se(S){return A||(A=!S,k(),Z.list().forEach(([Q,z])=>S?z(S):Q()),Z.reset()),S}function fe(S,Q,z,X){const{scrollBehavior:de}=e;if(!en||!de)return Promise.resolve();const h=!z&&Td(fs(S.fullPath,0))||(X||!z)&&history.state&&history.state.scroll||null;return je().then(()=>de(S,Q,h)).then(g=>g&&Rd(g)).catch(g=>W(g,S,Q))}const L=S=>r.go(S);let ue;const Re=new Set,oe={currentRoute:a,listening:!0,addRoute:p,removeRoute:y,hasRoute:q,getRoutes:T,resolve:M,options:e,push:w,replace:F,go:L,back:()=>L(-1),forward:()=>L(1),beforeEach:i.add,beforeResolve:s.add,afterEach:l.add,onError:Y.add,isReady:_e,install(S){const Q=this;S.component("RouterLink",hh),S.component("RouterView",vh),S.config.globalProperties.$router=Q,Object.defineProperty(S.config.globalProperties,"$route",{enumerable:!0,get:()=>Vt(a)}),en&&!ue&&a.value===_t&&(ue=!0,w(r.location).catch(de=>{}));const z={};for(const de in _t)Object.defineProperty(z,de,{get:()=>a.value[de],enumerable:!0});S.provide(di,Q),S.provide(Sa,ml(z)),S.provide(Or,a);const X=S.unmount;Re.add(S),S.unmount=function(){Re.delete(S),Re.size<1&&(c=_t,H&&H(),H=null,a.value=_t,ue=!1,A=!1),X()}}};function ne(S){return S.reduce((Q,z)=>Q.then(()=>C(z)),Promise.resolve())}return oe}function yh(e,t){const n=[],o=[],r=[],i=Math.max(t.matched.length,e.matched.length);for(let s=0;sfn(c,l))?o.push(l):n.push(l));const a=e.matched[s];a&&(t.matched.find(c=>fn(c,a))||r.push(a))}return[n,o,r]}const _h=function(){const t=document.createElement("link").relList;return t&&t.supports&&t.supports("modulepreload")?"modulepreload":"preload"}(),Es={},wh="/",sr=function(t,n){return!n||n.length===0?t():Promise.all(n.map(o=>{if(o=`${wh}${o}`,o in Es)return;Es[o]=!0;const r=o.endsWith(".css"),i=r?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${o}"]${i}`))return;const s=document.createElement("link");if(s.rel=r?"stylesheet":_h,r||(s.as="script",s.crossOrigin=""),s.href=o,document.head.appendChild(s),r)return new Promise((l,a)=>{s.addEventListener("load",l),s.addEventListener("error",()=>a(new Error(`Unable to preload CSS for ${o}`)))})})).then(()=>t())},xh=[{path:"/",component:()=>sr(()=>import("./MainLayout.8257fc44.js"),["assets/MainLayout.8257fc44.js","assets/QResizeObserver.0b22f089.js"]),children:[{path:"",component:()=>sr(()=>import("./MarketPage.b14abdfe.js"),["assets/MarketPage.b14abdfe.js","assets/QResizeObserver.0b22f089.js"])}]},{path:"/:catchAll(.*)*",component:()=>sr(()=>import("./ErrorNotFound.e659d628.js"),[])}];var lr=function(){return bh({scrollBehavior:()=>({left:0,top:0}),routes:xh,history:$d("/")})};async function Ch(e,t){const n=e(md);n.use(fd,t);const o=vn(typeof lr=="function"?await lr({}):lr);return{app:n,router:o}}const $r={xs:18,sm:24,md:32,lg:38,xl:46},Yn={size:String};function Zn(e,t=$r){return R(()=>e.size!==void 0?{fontSize:e.size in t?`${t[e.size]}px`:e.size}:null)}const $e=e=>vn(Lo(e)),kh=e=>vn(e);function tt(e,t){return e!==void 0&&e()||t}function $m(e,t){if(e!==void 0){const n=e();if(n!=null)return n.slice()}return t}function It(e,t){return e!==void 0?t.concat(e()):t}function Eh(e,t){return e===void 0?t:t!==void 0?t.concat(e()):e()}function Lm(e,t,n,o,r,i){t.key=o+r;const s=E(e,t,n);return r===!0?Al(s,i()):s}const Ss="0 0 24 24",Rs=e=>e,ar=e=>`ionicons ${e}`,Ra={"mdi-":e=>`mdi ${e}`,"icon-":Rs,"bt-":e=>`bt ${e}`,"eva-":e=>`eva ${e}`,"ion-md":ar,"ion-ios":ar,"ion-logo":ar,"iconfont ":Rs,"ti-":e=>`themify-icon ${e}`,"bi-":e=>`bootstrap-icons ${e}`},Pa={o_:"-outlined",r_:"-round",s_:"-sharp"},Ta={sym_o_:"-outlined",sym_r_:"-rounded",sym_s_:"-sharp"},Sh=new RegExp("^("+Object.keys(Ra).join("|")+")"),Rh=new RegExp("^("+Object.keys(Pa).join("|")+")"),Ps=new RegExp("^("+Object.keys(Ta).join("|")+")"),Ph=/^[Mm]\s?[-+]?\.?\d/,Th=/^img:/,qh=/^svguse:/,Ah=/^ion-/,Mh=/^(fa-(sharp|solid|regular|light|brands|duotone|thin)|[lf]a[srlbdk]?) /;var pt=$e({name:"QIcon",props:{...Yn,tag:{type:String,default:"i"},name:String,color:String,left:Boolean,right:Boolean},setup(e,{slots:t}){const{proxy:{$q:n}}=ke(),o=Zn(e),r=R(()=>"q-icon"+(e.left===!0?" on-left":"")+(e.right===!0?" on-right":"")+(e.color!==void 0?` text-${e.color}`:"")),i=R(()=>{let s,l=e.name;if(l==="none"||!l)return{none:!0};if(n.iconMapFn!==null){const u=n.iconMapFn(l);if(u!==void 0)if(u.icon!==void 0){if(l=u.icon,l==="none"||!l)return{none:!0}}else return{cls:u.cls,content:u.content!==void 0?u.content:" "}}if(Ph.test(l)===!0){const[u,d=Ss]=l.split("|");return{svg:!0,viewBox:d,nodes:u.split("&&").map(f=>{const[p,y,T]=f.split("@@");return E("path",{style:y,d:p,transform:T})})}}if(Th.test(l)===!0)return{img:!0,src:l.substring(4)};if(qh.test(l)===!0){const[u,d=Ss]=l.split("|");return{svguse:!0,src:u.substring(7),viewBox:d}}let a=" ";const c=l.match(Sh);if(c!==null)s=Ra[c[1]](l);else if(Mh.test(l)===!0)s=l;else if(Ah.test(l)===!0)s=`ionicons ion-${n.platform.is.ios===!0?"ios":"md"}${l.substring(3)}`;else if(Ps.test(l)===!0){s="notranslate material-symbols";const u=l.match(Ps);u!==null&&(l=l.substring(6),s+=Ta[u[1]]),a=l}else{s="notranslate material-icons";const u=l.match(Rh);u!==null&&(l=l.substring(2),s+=Pa[u[1]]),a=l}return{cls:s,content:a}});return()=>{const s={class:r.value,style:o.value,"aria-hidden":"true",role:"presentation"};return i.value.none===!0?E(e.tag,s,tt(t.default)):i.value.img===!0?E("span",s,It(t.default,[E("img",{src:i.value.src})])):i.value.svg===!0?E("span",s,It(t.default,[E("svg",{viewBox:i.value.viewBox||"0 0 24 24"},i.value.nodes)])):i.value.svguse===!0?E("span",s,It(t.default,[E("svg",{viewBox:i.value.viewBox},[E("use",{"xlink:href":i.value.src})])])):(i.value.cls!==void 0&&(s.class+=" "+i.value.cls),E(e.tag,s,It(t.default,[i.value.content])))}}}),Oh=$e({name:"QAvatar",props:{...Yn,fontSize:String,color:String,textColor:String,icon:String,square:Boolean,rounded:Boolean},setup(e,{slots:t}){const n=Zn(e),o=R(()=>"q-avatar"+(e.color?` bg-${e.color}`:"")+(e.textColor?` text-${e.textColor} q-chip--colored`:"")+(e.square===!0?" q-avatar--square":e.rounded===!0?" rounded-borders":"")),r=R(()=>e.fontSize?{fontSize:e.fontSize}:null);return()=>{const i=e.icon!==void 0?[E(pt,{name:e.icon})]:void 0;return E("div",{class:o.value,style:n.value},[E("div",{class:"q-avatar__content row flex-center overflow-hidden",style:r.value},Eh(t.default,i))])}}});const $h={size:{type:[Number,String],default:"1em"},color:String};function Lh(e){return{cSize:R(()=>e.size in $r?`${$r[e.size]}px`:e.size),classes:R(()=>"q-spinner"+(e.color?` text-${e.color}`:""))}}var Un=$e({name:"QSpinner",props:{...$h,thickness:{type:Number,default:5}},setup(e){const{cSize:t,classes:n}=Lh(e);return()=>E("svg",{class:n.value+" q-spinner-mat",width:t.value,height:t.value,viewBox:"25 25 50 50"},[E("circle",{class:"path",cx:"50",cy:"50",r:"20",fill:"none",stroke:"currentColor","stroke-width":e.thickness,"stroke-miterlimit":"10"})])}});function Bm(e){return e===window?window.innerHeight:e.getBoundingClientRect().height}function Lr(e,t){const n=e.style;for(const o in t)n[o]=t[o]}function Bh(e){if(e==null)return;if(typeof e=="string")try{return document.querySelector(e)||void 0}catch{return}const t=Vt(e);if(t)return t.$el||t}function Fh(e,t){if(e==null||e.contains(t)===!0)return!0;for(let n=e.nextElementSibling;n!==null;n=n.nextElementSibling)if(n.contains(t))return!0;return!1}function Ih(e,t=250){let n=!1,o;return function(){return n===!1&&(n=!0,setTimeout(()=>{n=!1},t),o=e.apply(this,arguments)),o}}function Ts(e,t,n,o){n.modifiers.stop===!0&&ko(e);const r=n.modifiers.color;let i=n.modifiers.center;i=i===!0||o===!0;const s=document.createElement("span"),l=document.createElement("span"),a=Hf(e),{left:c,top:u,width:d,height:f}=t.getBoundingClientRect(),p=Math.sqrt(d*d+f*f),y=p/2,T=`${(d-p)/2}px`,q=i?T:`${a.left-c-y}px`,M=`${(f-p)/2}px`,m=i?M:`${a.top-u-y}px`;l.className="q-ripple__inner",Lr(l,{height:`${p}px`,width:`${p}px`,transform:`translate3d(${q},${m},0) scale3d(.2,.2,1)`,opacity:0}),s.className=`q-ripple${r?" text-"+r:""}`,s.setAttribute("dir","ltr"),s.appendChild(l),t.appendChild(s);const _=()=>{s.remove(),clearTimeout(w)};n.abort.push(_);let w=setTimeout(()=>{l.classList.add("q-ripple__inner--enter"),l.style.transform=`translate3d(${T},${M},0) scale3d(1,1,1)`,l.style.opacity=.2,w=setTimeout(()=>{l.classList.remove("q-ripple__inner--enter"),l.classList.add("q-ripple__inner--leave"),l.style.opacity=0,w=setTimeout(()=>{s.remove(),n.abort.splice(n.abort.indexOf(_),1)},275)},250)},50)}function qs(e,{modifiers:t,value:n,arg:o}){const r=Object.assign({},e.cfg.ripple,t,n);e.modifiers={early:r.early===!0,stop:r.stop===!0,center:r.center===!0,color:r.color||o,keyCodes:[].concat(r.keyCodes||13)}}var Nh=kh({name:"ripple",beforeMount(e,t){const n=t.instance.$.appContext.config.globalProperties.$q.config||{};if(n.ripple===!1)return;const o={cfg:n,enabled:t.value!==!1,modifiers:{},abort:[],start(r){o.enabled===!0&&r.qSkipRipple!==!0&&r.type===(o.modifiers.early===!0?"pointerdown":"click")&&Ts(r,e,o,r.qKeyEvent===!0)},keystart:Ih(r=>{o.enabled===!0&&r.qSkipRipple!==!0&&zn(r,o.modifiers.keyCodes)===!0&&r.type===`key${o.modifiers.early===!0?"down":"up"}`&&Ts(r,e,o,!0)},300)};qs(o,t),e.__qripple=o,Kf(o,"main",[[e,"pointerdown","start","passive"],[e,"click","start","passive"],[e,"keydown","keystart","passive"],[e,"keyup","keystart","passive"]])},updated(e,t){if(t.oldValue!==t.value){const n=e.__qripple;n!==void 0&&(n.enabled=t.value!==!1,n.enabled===!0&&Object(t.value)===t.value&&qs(n,t))}},beforeUnmount(e){const t=e.__qripple;t!==void 0&&(t.abort.forEach(n=>{n()}),Uf(t,"main"),delete e._qripple)}});const qa={left:"start",center:"center",right:"end",between:"between",around:"around",evenly:"evenly",stretch:"stretch"},jh=Object.keys(qa),Aa={align:{type:String,validator:e=>jh.includes(e)}};function Ma(e){return R(()=>{const t=e.align===void 0?e.vertical===!0?"stretch":"left":e.align;return`${e.vertical===!0?"items":"justify"}-${qa[t]}`})}function go(e){if(Object(e.$parent)===e.$parent)return e.$parent;let{parent:t}=e.$;for(;Object(t)===t;){if(Object(t.proxy)===t.proxy)return t.proxy;t=t.parent}}function Oa(e,t){typeof t.type=="symbol"?Array.isArray(t.children)===!0&&t.children.forEach(n=>{Oa(e,n)}):e.add(t)}function Fm(e){const t=new Set;return e.forEach(n=>{Oa(t,n)}),Array.from(t)}function $a(e){return e.appContext.config.globalProperties.$router!==void 0}function La(e){return e.isUnmounted===!0||e.isDeactivated===!0}function As(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}function Ms(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Vh(e,t){for(const n in t){const o=t[n],r=e[n];if(typeof o=="string"){if(o!==r)return!1}else if(Array.isArray(r)===!1||r.length!==o.length||o.some((i,s)=>i!==r[s]))return!1}return!0}function Os(e,t){return Array.isArray(t)===!0?e.length===t.length&&e.every((n,o)=>n===t[o]):e.length===1&&e[0]===t}function Dh(e,t){return Array.isArray(e)===!0?Os(e,t):Array.isArray(t)===!0?Os(t,e):e===t}function Hh(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(Dh(e[n],t[n])===!1)return!1;return!0}const zh={to:[String,Object],replace:Boolean,exact:Boolean,activeClass:{type:String,default:"q-router-link--active"},exactActiveClass:{type:String,default:"q-router-link--exact-active"},href:String,target:String,disable:Boolean};function Kh({fallbackTag:e,useDisableForRouterLinkProps:t=!0}={}){const n=ke(),{props:o,proxy:r,emit:i}=n,s=$a(n),l=R(()=>o.disable!==!0&&o.href!==void 0),a=R(t===!0?()=>s===!0&&o.disable!==!0&&l.value!==!0&&o.to!==void 0&&o.to!==null&&o.to!=="":()=>s===!0&&l.value!==!0&&o.to!==void 0&&o.to!==null&&o.to!==""),c=R(()=>a.value===!0?m(o.to):null),u=R(()=>c.value!==null),d=R(()=>l.value===!0||u.value===!0),f=R(()=>o.type==="a"||d.value===!0?"a":o.tag||e||"div"),p=R(()=>l.value===!0?{href:o.href,target:o.target}:u.value===!0?{href:c.value.href,target:o.target}:{}),y=R(()=>{if(u.value===!1)return-1;const{matched:F}=c.value,{length:j}=F,V=F[j-1];if(V===void 0)return-1;const N=r.$route.matched;if(N.length===0)return-1;const C=N.findIndex(Ms.bind(null,V));if(C>-1)return C;const x=As(F[j-2]);return j>1&&As(V)===x&&N[N.length-1].path!==x?N.findIndex(Ms.bind(null,F[j-2])):C}),T=R(()=>u.value===!0&&y.value!==-1&&Vh(r.$route.params,c.value.params)),q=R(()=>T.value===!0&&y.value===r.$route.matched.length-1&&Hh(r.$route.params,c.value.params)),M=R(()=>u.value===!0?q.value===!0?` ${o.exactActiveClass} ${o.activeClass}`:o.exact===!0?"":T.value===!0?` ${o.activeClass}`:"":"");function m(F){try{return r.$router.resolve(F)}catch{}return null}function _(F,{returnRouterError:j,to:V=o.to,replace:N=o.replace}={}){if(o.disable===!0)return F.preventDefault(),Promise.resolve(!1);if(F.metaKey||F.altKey||F.ctrlKey||F.shiftKey||F.button!==void 0&&F.button!==0||o.target==="_blank")return Promise.resolve(!1);F.preventDefault();const C=r.$router[N===!0?"replace":"push"](V);return j===!0?C:C.then(()=>{}).catch(()=>{})}function w(F){if(u.value===!0){const j=V=>_(F,V);i("click",F,j),F.defaultPrevented!==!0&&j()}else i("click",F)}return{hasRouterLink:u,hasHrefLink:l,hasLink:d,linkTag:f,resolvedLink:c,linkIsActive:T,linkIsExactActive:q,linkClass:M,linkAttrs:p,getLink:m,navigateToRouterLink:_,navigateOnClick:w}}const $s={none:0,xs:4,sm:8,md:16,lg:24,xl:32},Uh={xs:8,sm:10,md:14,lg:20,xl:24},Wh=["button","submit","reset"],Qh=/[^\s]\/[^\s]/,Yh=["flat","outline","push","unelevated"],Ba=(e,t)=>e.flat===!0?"flat":e.outline===!0?"outline":e.push===!0?"push":e.unelevated===!0?"unelevated":t,Im=e=>{const t=Ba(e);return t!==void 0?{[t]:!0}:{}},Zh={...Yn,...zh,type:{type:String,default:"button"},label:[Number,String],icon:String,iconRight:String,...Yh.reduce((e,t)=>(e[t]=Boolean)&&e,{}),square:Boolean,round:Boolean,rounded:Boolean,glossy:Boolean,size:String,fab:Boolean,fabMini:Boolean,padding:String,color:String,textColor:String,noCaps:Boolean,noWrap:Boolean,dense:Boolean,tabindex:[Number,String],ripple:{type:[Boolean,Object],default:!0},align:{...Aa.align,default:"center"},stack:Boolean,stretch:Boolean,loading:{type:Boolean,default:null},disable:Boolean};function Jh(e){const t=Zn(e,Uh),n=Ma(e),{hasRouterLink:o,hasLink:r,linkTag:i,linkAttrs:s,navigateOnClick:l}=Kh({fallbackTag:"button"}),a=R(()=>{const q=e.fab===!1&&e.fabMini===!1?t.value:{};return e.padding!==void 0?Object.assign({},q,{padding:e.padding.split(/\s+/).map(M=>M in $s?$s[M]+"px":M).join(" "),minWidth:"0",minHeight:"0"}):q}),c=R(()=>e.rounded===!0||e.fab===!0||e.fabMini===!0),u=R(()=>e.disable!==!0&&e.loading!==!0),d=R(()=>u.value===!0?e.tabindex||0:-1),f=R(()=>Ba(e,"standard")),p=R(()=>{const q={tabindex:d.value};return r.value===!0?Object.assign(q,s.value):Wh.includes(e.type)===!0&&(q.type=e.type),i.value==="a"?(e.disable===!0?q["aria-disabled"]="true":q.href===void 0&&(q.role="button"),o.value!==!0&&Qh.test(e.type)===!0&&(q.type=e.type)):e.disable===!0&&(q.disabled="",q["aria-disabled"]="true"),e.loading===!0&&e.percentage!==void 0&&Object.assign(q,{role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":e.percentage}),q}),y=R(()=>{let q;e.color!==void 0?e.flat===!0||e.outline===!0?q=`text-${e.textColor||e.color}`:q=`bg-${e.color} text-${e.textColor||"white"}`:e.textColor&&(q=`text-${e.textColor}`);const M=e.round===!0?"round":`rectangle${c.value===!0?" q-btn--rounded":e.square===!0?" q-btn--square":""}`;return`q-btn--${f.value} q-btn--${M}`+(q!==void 0?" "+q:"")+(u.value===!0?" q-btn--actionable q-focusable q-hoverable":e.disable===!0?" disabled":"")+(e.fab===!0?" q-btn--fab":e.fabMini===!0?" q-btn--fab-mini":"")+(e.noCaps===!0?" q-btn--no-uppercase":"")+(e.dense===!0?" q-btn--dense":"")+(e.stretch===!0?" no-border-radius self-stretch":"")+(e.glossy===!0?" glossy":"")+(e.square?" q-btn--square":"")}),T=R(()=>n.value+(e.stack===!0?" column":" row")+(e.noWrap===!0?" no-wrap text-no-wrap":"")+(e.loading===!0?" q-btn__content--hidden":""));return{classes:y,style:a,innerClasses:T,attributes:p,hasLink:r,linkTag:i,navigateOnClick:l,isActionable:u}}const{passiveCapture:He}=Be;let Jt=null,Xt=null,Gt=null;var Br=$e({name:"QBtn",props:{...Zh,percentage:Number,darkPercentage:Boolean,onTouchstart:[Function,Array]},emits:["click","keydown","mousedown","keyup"],setup(e,{slots:t,emit:n}){const{proxy:o}=ke(),{classes:r,style:i,innerClasses:s,attributes:l,hasLink:a,linkTag:c,navigateOnClick:u,isActionable:d}=Jh(e),f=he(null),p=he(null);let y=null,T,q=null;const M=R(()=>e.label!==void 0&&e.label!==null&&e.label!==""),m=R(()=>e.disable===!0||e.ripple===!1?!1:{keyCodes:a.value===!0?[13,32]:[13],...e.ripple===!0?{}:e.ripple}),_=R(()=>({center:e.round})),w=R(()=>{const k=Math.max(0,Math.min(100,e.percentage));return k>0?{transition:"transform 0.6s",transform:`translateX(${k-100}%)`}:{}}),F=R(()=>{if(e.loading===!0)return{onMousedown:H,onTouchstart:H,onClick:H,onKeydown:H,onKeyup:H};if(d.value===!0){const k={onClick:V,onKeydown:N,onMousedown:x};if(o.$q.platform.has.touch===!0){const Z=e.onTouchstart!==void 0?"":"Passive";k[`onTouchstart${Z}`]=C}return k}return{onClick:Ke}}),j=R(()=>({ref:f,class:"q-btn q-btn-item non-selectable no-outline "+r.value,style:i.value,...l.value,...F.value}));function V(k){if(f.value!==null){if(k!==void 0){if(k.defaultPrevented===!0)return;const Z=document.activeElement;if(e.type==="submit"&&Z!==document.body&&f.value.contains(Z)===!1&&Z.contains(f.value)===!1){f.value.focus();const Y=()=>{document.removeEventListener("keydown",Ke,!0),document.removeEventListener("keyup",Y,He),f.value!==null&&f.value.removeEventListener("blur",Y,He)};document.addEventListener("keydown",Ke,!0),document.addEventListener("keyup",Y,He),f.value.addEventListener("blur",Y,He)}}u(k)}}function N(k){f.value!==null&&(n("keydown",k),zn(k,[13,32])===!0&&Xt!==f.value&&(Xt!==null&&v(),k.defaultPrevented!==!0&&(f.value.focus(),Xt=f.value,f.value.classList.add("q-btn--active"),document.addEventListener("keyup",$,!0),f.value.addEventListener("blur",$,He)),Ke(k)))}function C(k){f.value!==null&&(n("touchstart",k),k.defaultPrevented!==!0&&(Jt!==f.value&&(Jt!==null&&v(),Jt=f.value,y=k.target,y.addEventListener("touchcancel",$,He),y.addEventListener("touchend",$,He)),T=!0,q!==null&&clearTimeout(q),q=setTimeout(()=>{q=null,T=!1},200)))}function x(k){f.value!==null&&(k.qSkipRipple=T===!0,n("mousedown",k),k.defaultPrevented!==!0&&Gt!==f.value&&(Gt!==null&&v(),Gt=f.value,f.value.classList.add("q-btn--active"),document.addEventListener("mouseup",$,He)))}function $(k){if(f.value!==null&&!(k!==void 0&&k.type==="blur"&&document.activeElement===f.value)){if(k!==void 0&&k.type==="keyup"){if(Xt===f.value&&zn(k,[13,32])===!0){const Z=new MouseEvent("click",k);Z.qKeyEvent=!0,k.defaultPrevented===!0&&Et(Z),k.cancelBubble===!0&&ko(Z),f.value.dispatchEvent(Z),Ke(k),k.qKeyEvent=!0}n("keyup",k)}v()}}function v(k){const Z=p.value;k!==!0&&(Jt===f.value||Gt===f.value)&&Z!==null&&Z!==document.activeElement&&(Z.setAttribute("tabindex",-1),Z.focus()),Jt===f.value&&(y!==null&&(y.removeEventListener("touchcancel",$,He),y.removeEventListener("touchend",$,He)),Jt=y=null),Gt===f.value&&(document.removeEventListener("mouseup",$,He),Gt=null),Xt===f.value&&(document.removeEventListener("keyup",$,!0),f.value!==null&&f.value.removeEventListener("blur",$,He),Xt=null),f.value!==null&&f.value.classList.remove("q-btn--active")}function H(k){Ke(k),k.qSkipRipple=!0}return We(()=>{v(!0)}),Object.assign(o,{click:V}),()=>{let k=[];e.icon!==void 0&&k.push(E(pt,{name:e.icon,left:e.stack===!1&&M.value===!0,role:"img","aria-hidden":"true"})),M.value===!0&&k.push(E("span",{class:"block"},[e.label])),k=It(t.default,k),e.iconRight!==void 0&&e.round===!1&&k.push(E(pt,{name:e.iconRight,right:e.stack===!1&&M.value===!0,role:"img","aria-hidden":"true"}));const Z=[E("span",{class:"q-focus-helper",ref:p})];return e.loading===!0&&e.percentage!==void 0&&Z.push(E("span",{class:"q-btn__progress absolute-full overflow-hidden"+(e.darkPercentage===!0?" q-btn__progress--dark":"")},[E("span",{class:"q-btn__progress-indicator fit block",style:w.value})])),Z.push(E("span",{class:"q-btn__content text-center col items-center q-anchor--skip "+s.value},k)),e.loading!==null&&Z.push(E(cn,{name:"q-transition--fade"},()=>e.loading===!0?[E("span",{key:"loading",class:"absolute-full flex flex-center"},t.loading!==void 0?t.loading():[E(Un)])]:null)),Al(E(c.value,j.value,Z),[[Nh,m.value,void 0,_.value]])}}});let Xh=1,Gh=document.body;function hi(e,t){const n=document.createElement("div");if(n.id=t!==void 0?`q-portal--${t}--${Xh++}`:e,So.globalNodes!==void 0){const o=So.globalNodes.class;o!==void 0&&(n.className=o)}return Gh.appendChild(n),n}function Fa(e){e.remove()}let eg=0;const mo={},po={},Je={},Ia={},tg=/^\s*$/,Na=[],gi=["top-left","top-right","bottom-left","bottom-right","top","bottom","left","right","center"],ng=["top-left","top-right","bottom-left","bottom-right"],tn={positive:{icon:e=>e.iconSet.type.positive,color:"positive"},negative:{icon:e=>e.iconSet.type.negative,color:"negative"},warning:{icon:e=>e.iconSet.type.warning,color:"warning",textColor:"dark"},info:{icon:e=>e.iconSet.type.info,color:"info"},ongoing:{group:!1,timeout:0,spinner:!0,color:"grey-8"}};function ja(e,t,n){if(!e)return Cn("parameter required");let o;const r={textColor:"white"};if(e.ignoreDefaults!==!0&&Object.assign(r,mo),at(e)===!1&&(r.type&&Object.assign(r,tn[r.type]),e={message:e}),Object.assign(r,tn[e.type||r.type],e),typeof r.icon=="function"&&(r.icon=r.icon(t)),r.spinner?(r.spinner===!0&&(r.spinner=Un),r.spinner=vn(r.spinner)):r.spinner=!1,r.meta={hasMedia:Boolean(r.spinner!==!1||r.icon||r.avatar),hasText:Ls(r.message)||Ls(r.caption)},r.position){if(gi.includes(r.position)===!1)return Cn("wrong position",e)}else r.position="bottom";if(r.timeout===void 0)r.timeout=5e3;else{const a=parseInt(r.timeout,10);if(isNaN(a)||a<0)return Cn("wrong timeout",e);r.timeout=a}r.timeout===0?r.progress=!1:r.progress===!0&&(r.meta.progressClass="q-notification__progress"+(r.progressClass?` ${r.progressClass}`:""),r.meta.progressStyle={animationDuration:`${r.timeout+1e3}ms`});const i=(Array.isArray(e.actions)===!0?e.actions:[]).concat(e.ignoreDefaults!==!0&&Array.isArray(mo.actions)===!0?mo.actions:[]).concat(tn[e.type]!==void 0&&Array.isArray(tn[e.type].actions)===!0?tn[e.type].actions:[]),{closeBtn:s}=r;if(s&&i.push({label:typeof s=="string"?s:t.lang.label.close}),r.actions=i.map(({handler:a,noDismiss:c,...u})=>({flat:!0,...u,onClick:typeof a=="function"?()=>{a(),c!==!0&&l()}:()=>{l()}})),r.multiLine===void 0&&(r.multiLine=r.actions.length>1),Object.assign(r.meta,{class:`q-notification row items-stretch q-notification--${r.multiLine===!0?"multi-line":"standard"}`+(r.color!==void 0?` bg-${r.color}`:"")+(r.textColor!==void 0?` text-${r.textColor}`:"")+(r.classes!==void 0?` ${r.classes}`:""),wrapperClass:"q-notification__wrapper col relative-position border-radius-inherit "+(r.multiLine===!0?"column no-wrap justify-center":"row items-center"),contentClass:"q-notification__content row items-center"+(r.multiLine===!0?"":" col"),leftClass:r.meta.hasText===!0?"additional":"single",attrs:{role:"alert",...r.attrs}}),r.group===!1?(r.group=void 0,r.meta.group=void 0):((r.group===void 0||r.group===!0)&&(r.group=[r.message,r.caption,r.multiline].concat(r.actions.map(a=>`${a.label}*${a.icon}`)).join("|")),r.meta.group=r.group+"|"+r.position),r.actions.length===0?r.actions=void 0:r.meta.actionsClass="q-notification__actions row items-center "+(r.multiLine===!0?"justify-end":"col-auto")+(r.meta.hasMedia===!0?" q-notification__actions--with-media":""),n!==void 0){n.notif.meta.timer&&(clearTimeout(n.notif.meta.timer),n.notif.meta.timer=void 0),r.meta.uid=n.notif.meta.uid;const a=Je[r.position].value.indexOf(n.notif);Je[r.position].value[a]=r}else{const a=po[r.meta.group];if(a===void 0){if(r.meta.uid=eg++,r.meta.badge=1,["left","right","center"].indexOf(r.position)!==-1)Je[r.position].value.splice(Math.floor(Je[r.position].value.length/2),0,r);else{const c=r.position.indexOf("top")>-1?"unshift":"push";Je[r.position].value[c](r)}r.group!==void 0&&(po[r.meta.group]=r)}else{if(a.meta.timer&&(clearTimeout(a.meta.timer),a.meta.timer=void 0),r.badgePosition!==void 0){if(ng.includes(r.badgePosition)===!1)return Cn("wrong badgePosition",e)}else r.badgePosition=`top-${r.position.indexOf("left")>-1?"right":"left"}`;r.meta.uid=a.meta.uid,r.meta.badge=a.meta.badge+1,r.meta.badgeClass=`q-notification__badge q-notification__badge--${r.badgePosition}`+(r.badgeColor!==void 0?` bg-${r.badgeColor}`:"")+(r.badgeTextColor!==void 0?` text-${r.badgeTextColor}`:"")+(r.badgeClass?` ${r.badgeClass}`:"");const c=Je[r.position].value.indexOf(a);Je[r.position].value[c]=po[r.meta.group]=r}}const l=()=>{og(r),o=void 0};if(r.timeout>0&&(r.meta.timer=setTimeout(()=>{r.meta.timer=void 0,l()},r.timeout+1e3)),r.group!==void 0)return a=>{a!==void 0?Cn("trying to update a grouped one which is forbidden",e):l()};if(o={dismiss:l,config:e,notif:r},n!==void 0){Object.assign(n,o);return}return a=>{if(o!==void 0)if(a===void 0)o.dismiss();else{const c=Object.assign({},o.config,a,{group:!1,position:r.position});ja(c,t,o)}}}function og(e){e.meta.timer&&(clearTimeout(e.meta.timer),e.meta.timer=void 0);const t=Je[e.position].value.indexOf(e);if(t!==-1){e.group!==void 0&&delete po[e.meta.group];const n=Na[""+e.meta.uid];if(n){const{width:o,height:r}=getComputedStyle(n);n.style.left=`${n.offsetLeft}px`,n.style.width=o,n.style.height=r}Je[e.position].value.splice(t,1),typeof e.onDismiss=="function"&&e.onDismiss()}}function Ls(e){return e!=null&&tg.test(e)!==!0}function Cn(e,t){return console.error(`Notify: ${e}`,t),!1}function rg(){return $e({name:"QNotifications",devtools:{hide:!0},setup(){return()=>E("div",{class:"q-notifications"},gi.map(e=>E(Tf,{key:e,class:Ia[e],tag:"div",name:`q-notification--${e}`},()=>Je[e].value.map(t=>{const n=t.meta,o=[];if(n.hasMedia===!0&&(t.spinner!==!1?o.push(E(t.spinner,{class:"q-notification__spinner q-notification__spinner--"+n.leftClass,color:t.spinnerColor,size:t.spinnerSize})):t.icon?o.push(E(pt,{class:"q-notification__icon q-notification__icon--"+n.leftClass,name:t.icon,color:t.iconColor,size:t.iconSize,role:"img"})):t.avatar&&o.push(E(Oh,{class:"q-notification__avatar q-notification__avatar--"+n.leftClass},()=>E("img",{src:t.avatar,"aria-hidden":"true"})))),n.hasText===!0){let i;const s={class:"q-notification__message col"};if(t.html===!0)s.innerHTML=t.caption?`
${t.message}
${t.caption}
`:t.message;else{const l=[t.message];i=t.caption?[E("div",l),E("div",{class:"q-notification__caption"},[t.caption])]:l}o.push(E("div",s,i))}const r=[E("div",{class:n.contentClass},o)];return t.progress===!0&&r.push(E("div",{key:`${n.uid}|p|${n.badge}`,class:n.progressClass,style:n.progressStyle})),t.actions!==void 0&&r.push(E("div",{class:n.actionsClass},t.actions.map(i=>E(Br,i)))),n.badge>1&&r.push(E("div",{key:`${n.uid}|${n.badge}`,class:t.meta.badgeClass,style:t.badgeStyle},[n.badge])),E("div",{ref:i=>{Na[""+n.uid]=i},key:n.uid,class:n.class,...n.attrs},[E("div",{class:n.wrapperClass},r)])}))))}})}var ig={setDefaults(e){at(e)===!0&&Object.assign(mo,e)},registerType(e,t){at(t)===!0&&(tn[e]=t)},install({$q:e,parentApp:t}){if(e.notify=this.create=n=>ja(n,e),e.notify.setDefaults=this.setDefaults,e.notify.registerType=this.registerType,e.config.notify!==void 0&&this.setDefaults(e.config.notify),this.__installed!==!0){gi.forEach(o=>{Je[o]=he([]);const r=["left","center","right"].includes(o)===!0?"center":o.indexOf("top")>-1?"top":"bottom",i=o.indexOf("left")>-1?"start":o.indexOf("right")>-1?"end":"center",s=["left","right"].includes(o)?`items-${o==="left"?"start":"end"} justify-center`:o==="center"?"flex-center":`items-${i}`;Ia[o]=`q-notifications__list q-notifications__list--${r} fixed column no-wrap ${s}`});const n=hi("q-notify");ma(rg(),t).mount(n)}}};function sg(e){return ld(e)===!0?"__q_date|"+e.toUTCString():ad(e)===!0?"__q_expr|"+e.source:typeof e=="number"?"__q_numb|"+e:typeof e=="boolean"?"__q_bool|"+(e?"1":"0"):typeof e=="string"?"__q_strn|"+e:typeof e=="function"?"__q_strn|"+e.toString():e===Object(e)?"__q_objt|"+JSON.stringify(e):e}function lg(e){if(e.length<9)return e;const n=e.substring(0,8),o=e.substring(9);switch(n){case"__q_date":return new Date(o);case"__q_expr":return new RegExp(o);case"__q_numb":return Number(o);case"__q_bool":return Boolean(o==="1");case"__q_strn":return""+o;case"__q_objt":return JSON.parse(o);default:return e}}function ag(){const e=()=>null;return{has:()=>!1,getLength:()=>0,getItem:e,getIndex:e,getKey:e,getAll:()=>{},getAllKeys:()=>[],set:Pt,remove:Pt,clear:Pt,isEmpty:()=>!0}}function ug(e){const t=window[e+"Storage"],n=o=>{const r=t.getItem(o);return r?lg(r):null};return{has:o=>t.getItem(o)!==null,getLength:()=>t.length,getItem:n,getIndex:o=>oo{let o;const r={},i=t.length;for(let s=0;s{const o=[],r=t.length;for(let i=0;i{t.setItem(o,sg(r))},remove:o=>{t.removeItem(o)},clear:()=>{t.clear()},isEmpty:()=>t.length===0}}const Va=we.has.webStorage===!1?ag():ug("local"),Da={install({$q:e}){e.localStorage=Va}};Object.assign(Da,Va);function cg(e,t,n){let o;function r(){o!==void 0&&(qr.remove(o),o=void 0)}return We(()=>{e.value===!0&&r()}),{removeFromHistory:r,addToHistory(){o={condition:()=>n.value===!0,handler:t},qr.add(o)}}}function fg(){let e=null;const t=ke();function n(){e!==null&&(clearTimeout(e),e=null)}return Fo(n),We(n),{removeTimeout:n,registerTimeout(o,r){n(),La(t)===!1&&(e=setTimeout(o,r))}}}function dg(){let e;const t=ke();function n(){e=void 0}return Fo(n),We(n),{removeTick:n,registerTick(o){e=o,je(()=>{e===o&&(La(t)===!1&&e(),e=void 0)})}}}const hg={modelValue:{type:Boolean,default:null},"onUpdate:modelValue":[Function,Array]},gg=["beforeShow","show","beforeHide","hide"];function mg({showing:e,canShow:t,hideOnRouteChange:n,handleShow:o,handleHide:r,processOnMount:i}){const s=ke(),{props:l,emit:a,proxy:c}=s;let u;function d(m){e.value===!0?y(m):f(m)}function f(m){if(l.disable===!0||m!==void 0&&m.qAnchorHandled===!0||t!==void 0&&t(m)!==!0)return;const _=l["onUpdate:modelValue"]!==void 0;_===!0&&(a("update:modelValue",!0),u=m,je(()=>{u===m&&(u=void 0)})),(l.modelValue===null||_===!1)&&p(m)}function p(m){e.value!==!0&&(e.value=!0,a("beforeShow",m),o!==void 0?o(m):a("show",m))}function y(m){if(l.disable===!0)return;const _=l["onUpdate:modelValue"]!==void 0;_===!0&&(a("update:modelValue",!1),u=m,je(()=>{u===m&&(u=void 0)})),(l.modelValue===null||_===!1)&&T(m)}function T(m){e.value!==!1&&(e.value=!1,a("beforeHide",m),r!==void 0?r(m):a("hide",m))}function q(m){l.disable===!0&&m===!0?l["onUpdate:modelValue"]!==void 0&&a("update:modelValue",!1):m===!0!==e.value&&(m===!0?p:T)(u)}be(()=>l.modelValue,q),n!==void 0&&$a(s)===!0&&be(()=>c.$route.fullPath,()=>{n.value===!0&&e.value===!0&&y()}),i===!0&&Ut(()=>{q(l.modelValue)});const M={show:f,hide:y,toggle:d};return Object.assign(c,M),M}const pg={transitionShow:{type:String,default:"fade"},transitionHide:{type:String,default:"fade"},transitionDuration:{type:[String,Number],default:300}};function vg(e,t=()=>{},n=()=>{}){return{transitionProps:R(()=>{const o=`q-transition--${e.transitionShow||t()}`,r=`q-transition--${e.transitionHide||n()}`;return{appear:!0,enterFromClass:`${o}-enter-from`,enterActiveClass:`${o}-enter-active`,enterToClass:`${o}-enter-to`,leaveFromClass:`${r}-leave-from`,leaveActiveClass:`${r}-leave-active`,leaveToClass:`${r}-leave-to`}}),transitionStyle:R(()=>`--q-transition-duration: ${e.transitionDuration}ms`)}}let Nt=[],Wn=[];function Ha(e){Wn=Wn.filter(t=>t!==e)}function bg(e){Ha(e),Wn.push(e)}function Bs(e){Ha(e),Wn.length===0&&Nt.length!==0&&(Nt[Nt.length-1](),Nt=[])}function mi(e){Wn.length===0?e():Nt.push(e)}function yg(e){Nt=Nt.filter(t=>t!==e)}const vo=[];function Nm(e){return vo.find(t=>t.contentEl!==null&&t.contentEl.contains(e))}function _g(e,t){do{if(e.$options.name==="QMenu"){if(e.hide(t),e.$props.separateClosePopup===!0)return go(e)}else if(e.__qPortal===!0){const n=go(e);return n!==void 0&&n.$options.name==="QPopupProxy"?(e.hide(t),n):e}e=go(e)}while(e!=null)}function jm(e,t,n){for(;n!==0&&e!==void 0&&e!==null;){if(e.__qPortal===!0){if(n--,e.$options.name==="QMenu"){e=_g(e,t);continue}e.hide(t)}e=go(e)}}function wg(e){for(e=e.parent;e!=null;){if(e.type.name==="QGlobalDialog")return!0;if(e.type.name==="QDialog"||e.type.name==="QMenu")return!1;e=e.parent}return!1}function xg(e,t,n,o){const r=he(!1),i=he(!1);let s=null;const l={},a=o==="dialog"&&wg(e);function c(d){if(d===!0){Bs(l),i.value=!0;return}i.value=!1,r.value===!1&&(a===!1&&s===null&&(s=hi(!1,o)),r.value=!0,vo.push(e.proxy),bg(l))}function u(d){if(i.value=!1,d!==!0)return;Bs(l),r.value=!1;const f=vo.indexOf(e.proxy);f!==-1&&vo.splice(f,1),s!==null&&(Fa(s),s=null)}return ii(()=>{u(!0)}),e.proxy.__qPortal=!0,bn(e.proxy,"contentEl",()=>t.value),{showPortal:c,hidePortal:u,portalIsActive:r,portalIsAccessible:i,renderPortal:()=>a===!0?n():r.value===!0?[E(zc,{to:s},n())]:void 0}}const Cg=[null,document,document.body,document.scrollingElement,document.documentElement];function Vm(e,t){let n=Bh(t);if(n===void 0){if(e==null)return window;n=e.closest(".scroll,.scroll-y,.overflow-auto")}return Cg.includes(n)?window:n}function Dm(e){return(e===window?document.body:e).scrollHeight}function za(e){return e===window?window.pageYOffset||window.scrollY||document.body.scrollTop||0:e.scrollTop}function Ka(e){return e===window?window.pageXOffset||window.scrollX||document.body.scrollLeft||0:e.scrollLeft}function Ua(e,t,n=0){const o=arguments[3]===void 0?performance.now():arguments[3],r=za(e);if(n<=0){r!==t&&Fr(e,t);return}requestAnimationFrame(i=>{const s=i-o,l=r+(t-r)/Math.max(s,n)*s;Fr(e,l),l!==t&&Ua(e,t,n-s,i)})}function Wa(e,t,n=0){const o=arguments[3]===void 0?performance.now():arguments[3],r=Ka(e);if(n<=0){r!==t&&Ir(e,t);return}requestAnimationFrame(i=>{const s=i-o,l=r+(t-r)/Math.max(s,n)*s;Ir(e,l),l!==t&&Wa(e,t,n-s,i)})}function Fr(e,t){if(e===window){window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,t);return}e.scrollTop=t}function Ir(e,t){if(e===window){window.scrollTo(t,window.pageYOffset||window.scrollY||document.body.scrollTop||0);return}e.scrollLeft=t}function Hm(e,t,n){if(n){Ua(e,t,n);return}Fr(e,t)}function zm(e,t,n){if(n){Wa(e,t,n);return}Ir(e,t)}let ro;function Km(){if(ro!==void 0)return ro;const e=document.createElement("p"),t=document.createElement("div");Lr(e,{width:"100%",height:"200px"}),Lr(t,{position:"absolute",top:"0px",left:"0px",visibility:"hidden",width:"200px",height:"150px",overflow:"hidden"}),t.appendChild(e),document.body.appendChild(t);const n=e.offsetWidth;t.style.overflow="scroll";let o=e.offsetWidth;return n===o&&(o=t.clientWidth),t.remove(),ro=n-o,ro}function kg(e,t=!0){return!e||e.nodeType!==Node.ELEMENT_NODE?!1:t?e.scrollHeight>e.clientHeight&&(e.classList.contains("scroll")||e.classList.contains("overflow-auto")||["auto","scroll"].includes(window.getComputedStyle(e)["overflow-y"])):e.scrollWidth>e.clientWidth&&(e.classList.contains("scroll")||e.classList.contains("overflow-auto")||["auto","scroll"].includes(window.getComputedStyle(e)["overflow-x"]))}let kn=0,ur,cr,Tn,fr=!1,Fs,Is,Ns,$t=null;function Eg(e){Sg(e)&&Ke(e)}function Sg(e){if(e.target===document.body||e.target.classList.contains("q-layout__backdrop"))return!0;const t=zf(e),n=e.shiftKey&&!e.deltaX,o=!n&&Math.abs(e.deltaX)<=Math.abs(e.deltaY),r=n||o?e.deltaY:e.deltaX;for(let i=0;i0&&s.scrollTop+s.clientHeight===s.scrollHeight:r<0&&s.scrollLeft===0?!0:r>0&&s.scrollLeft+s.clientWidth===s.scrollWidth}return!0}function js(e){e.target===document&&(document.scrollingElement.scrollTop=document.scrollingElement.scrollTop)}function io(e){fr!==!0&&(fr=!0,requestAnimationFrame(()=>{fr=!1;const{height:t}=e.target,{clientHeight:n,scrollTop:o}=document.scrollingElement;(Tn===void 0||t!==window.innerHeight)&&(Tn=n-t,document.scrollingElement.scrollTop=o),o>Tn&&(document.scrollingElement.scrollTop-=Math.ceil((o-Tn)/8))}))}function Vs(e){const t=document.body,n=window.visualViewport!==void 0;if(e==="add"){const{overflowY:o,overflowX:r}=window.getComputedStyle(t);ur=Ka(window),cr=za(window),Fs=t.style.left,Is=t.style.top,Ns=window.location.href,t.style.left=`-${ur}px`,t.style.top=`-${cr}px`,r!=="hidden"&&(r==="scroll"||t.scrollWidth>window.innerWidth)&&t.classList.add("q-body--force-scrollbar-x"),o!=="hidden"&&(o==="scroll"||t.scrollHeight>window.innerHeight)&&t.classList.add("q-body--force-scrollbar-y"),t.classList.add("q-body--prevent-scroll"),document.qScrollPrevented=!0,we.is.ios===!0&&(n===!0?(window.scrollTo(0,0),window.visualViewport.addEventListener("resize",io,Be.passiveCapture),window.visualViewport.addEventListener("scroll",io,Be.passiveCapture),window.scrollTo(0,0)):window.addEventListener("scroll",js,Be.passiveCapture))}we.is.desktop===!0&&we.is.mac===!0&&window[`${e}EventListener`]("wheel",Eg,Be.notPassive),e==="remove"&&(we.is.ios===!0&&(n===!0?(window.visualViewport.removeEventListener("resize",io,Be.passiveCapture),window.visualViewport.removeEventListener("scroll",io,Be.passiveCapture)):window.removeEventListener("scroll",js,Be.passiveCapture)),t.classList.remove("q-body--prevent-scroll"),t.classList.remove("q-body--force-scrollbar-x"),t.classList.remove("q-body--force-scrollbar-y"),document.qScrollPrevented=!1,t.style.left=Fs,t.style.top=Is,window.location.href===Ns&&window.scrollTo(ur,cr),Tn=void 0)}function Rg(e){let t="add";if(e===!0){if(kn++,$t!==null){clearTimeout($t),$t=null;return}if(kn>1)return}else{if(kn===0||(kn--,kn>0))return;if(t="remove",we.is.ios===!0&&we.is.nativeMobile===!0){$t!==null&&clearTimeout($t),$t=setTimeout(()=>{Vs(t),$t=null},100);return}}Vs(t)}function Pg(){let e;return{preventBodyScroll(t){t!==e&&(e!==void 0||t===!0)&&(e=t,Rg(t))}}}const Ht=[];let hn;function Tg(e){hn=e.keyCode===27}function qg(){hn===!0&&(hn=!1)}function Ag(e){hn===!0&&(hn=!1,zn(e,27)===!0&&Ht[Ht.length-1](e))}function Qa(e){window[e]("keydown",Tg),window[e]("blur",qg),window[e]("keyup",Ag),hn=!1}function Mg(e){we.is.desktop===!0&&(Ht.push(e),Ht.length===1&&Qa("addEventListener"))}function Ds(e){const t=Ht.indexOf(e);t>-1&&(Ht.splice(t,1),Ht.length===0&&Qa("removeEventListener"))}const zt=[];function Ya(e){zt[zt.length-1](e)}function Og(e){we.is.desktop===!0&&(zt.push(e),zt.length===1&&document.body.addEventListener("focusin",Ya))}function Hs(e){const t=zt.indexOf(e);t>-1&&(zt.splice(t,1),zt.length===0&&document.body.removeEventListener("focusin",Ya))}let so=0;const $g={standard:"fixed-full flex-center",top:"fixed-top justify-center",bottom:"fixed-bottom justify-center",right:"fixed-right items-center",left:"fixed-left items-center"},zs={standard:["scale","scale"],top:["slide-down","slide-up"],bottom:["slide-up","slide-down"],right:["slide-left","slide-right"],left:["slide-right","slide-left"]};var Lg=$e({name:"QDialog",inheritAttrs:!1,props:{...hg,...pg,transitionShow:String,transitionHide:String,persistent:Boolean,autoClose:Boolean,allowFocusOutside:Boolean,noEscDismiss:Boolean,noBackdropDismiss:Boolean,noRouteDismiss:Boolean,noRefocus:Boolean,noFocus:Boolean,noShake:Boolean,seamless:Boolean,maximized:Boolean,fullWidth:Boolean,fullHeight:Boolean,square:Boolean,position:{type:String,default:"standard",validator:e=>e==="standard"||["top","bottom","left","right"].includes(e)}},emits:[...gg,"shake","click","escapeKey"],setup(e,{slots:t,emit:n,attrs:o}){const r=ke(),i=he(null),s=he(!1),l=he(!1);let a=null,c=null,u,d;const f=R(()=>e.persistent!==!0&&e.noRouteDismiss!==!0&&e.seamless!==!0),{preventBodyScroll:p}=Pg(),{registerTimeout:y}=fg(),{registerTick:T,removeTick:q}=dg(),{transitionProps:M,transitionStyle:m}=vg(e,()=>zs[e.position][0],()=>zs[e.position][1]),{showPortal:_,hidePortal:w,portalIsAccessible:F,renderPortal:j}=xg(r,i,Re,"dialog"),{hide:V}=mg({showing:s,hideOnRouteChange:f,handleShow:k,handleHide:Z,processOnMount:!0}),{addToHistory:N,removeFromHistory:C}=cg(s,V,f),x=R(()=>`q-dialog__inner flex no-pointer-events q-dialog__inner--${e.maximized===!0?"maximized":"minimized"} q-dialog__inner--${e.position} ${$g[e.position]}`+(l.value===!0?" q-dialog__inner--animating":"")+(e.fullWidth===!0?" q-dialog__inner--fullwidth":"")+(e.fullHeight===!0?" q-dialog__inner--fullheight":"")+(e.square===!0?" q-dialog__inner--square":"")),$=R(()=>s.value===!0&&e.seamless!==!0),v=R(()=>e.autoClose===!0?{onClick:fe}:{}),H=R(()=>[`q-dialog fullscreen no-pointer-events q-dialog--${$.value===!0?"modal":"seamless"}`,o.class]);be(()=>e.maximized,oe=>{s.value===!0&&se(oe)}),be($,oe=>{p(oe),oe===!0?(Og(ue),Mg(W)):(Hs(ue),Ds(W))});function k(oe){N(),c=e.noRefocus===!1&&document.activeElement!==null?document.activeElement:null,se(e.maximized),_(),l.value=!0,e.noFocus!==!0?(document.activeElement!==null&&document.activeElement.blur(),T(Y)):q(),y(()=>{if(r.proxy.$q.platform.is.ios===!0){if(e.seamless!==!0&&document.activeElement){const{top:ne,bottom:S}=document.activeElement.getBoundingClientRect(),{innerHeight:Q}=window,z=window.visualViewport!==void 0?window.visualViewport.height:Q;ne>0&&S>z/2&&(document.scrollingElement.scrollTop=Math.min(document.scrollingElement.scrollHeight-z,S>=Q?1/0:Math.ceil(document.scrollingElement.scrollTop+S-z/2))),document.activeElement.scrollIntoView()}d=!0,i.value.click(),d=!1}_(!0),l.value=!1,n("show",oe)},e.transitionDuration)}function Z(oe){q(),C(),_e(!0),l.value=!0,w(),c!==null&&(((oe&&oe.type.indexOf("key")===0?c.closest('[tabindex]:not([tabindex^="-"])'):void 0)||c).focus(),c=null),y(()=>{w(!0),l.value=!1,n("hide",oe)},e.transitionDuration)}function Y(oe){mi(()=>{let ne=i.value;ne===null||ne.contains(document.activeElement)===!0||(ne=(oe!==""?ne.querySelector(oe):null)||ne.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||ne.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||ne.querySelector("[autofocus], [data-autofocus]")||ne,ne.focus({preventScroll:!0}))})}function A(oe){oe&&typeof oe.focus=="function"?oe.focus({preventScroll:!0}):Y(),n("shake");const ne=i.value;ne!==null&&(ne.classList.remove("q-animate--scale"),ne.classList.add("q-animate--scale"),a!==null&&clearTimeout(a),a=setTimeout(()=>{a=null,i.value!==null&&(ne.classList.remove("q-animate--scale"),Y())},170))}function W(){e.seamless!==!0&&(e.persistent===!0||e.noEscDismiss===!0?e.maximized!==!0&&e.noShake!==!0&&A():(n("escapeKey"),V()))}function _e(oe){a!==null&&(clearTimeout(a),a=null),(oe===!0||s.value===!0)&&(se(!1),e.seamless!==!0&&(p(!1),Hs(ue),Ds(W))),oe!==!0&&(c=null)}function se(oe){oe===!0?u!==!0&&(so<1&&document.body.classList.add("q-body--dialog"),so++,u=!0):u===!0&&(so<2&&document.body.classList.remove("q-body--dialog"),so--,u=!1)}function fe(oe){d!==!0&&(V(oe),n("click",oe))}function L(oe){e.persistent!==!0&&e.noBackdropDismiss!==!0?V(oe):e.noShake!==!0&&A()}function ue(oe){e.allowFocusOutside!==!0&&F.value===!0&&Fh(i.value,oe.target)!==!0&&Y('[tabindex]:not([tabindex="-1"])')}Object.assign(r.proxy,{focus:Y,shake:A,__updateRefocusTarget(oe){c=oe||null}}),We(_e);function Re(){return E("div",{role:"dialog","aria-modal":$.value===!0?"true":"false",...o,class:H.value},[E(cn,{name:"q-transition--fade",appear:!0},()=>$.value===!0?E("div",{class:"q-dialog__backdrop fixed-full",style:m.value,"aria-hidden":"true",tabindex:-1,onClick:L}):null),E(cn,M.value,()=>s.value===!0?E("div",{ref:i,class:x.value,style:m.value,tabindex:-1,...v.value},tt(t.default)):null)])}return j}});const Wt={dark:{type:Boolean,default:null}};function Qt(e,t){return R(()=>e.dark===null?t.dark.isActive:e.dark)}var Bg=$e({name:"QCard",props:{...Wt,tag:{type:String,default:"div"},square:Boolean,flat:Boolean,bordered:Boolean},setup(e,{slots:t}){const{proxy:{$q:n}}=ke(),o=Qt(e,n),r=R(()=>"q-card"+(o.value===!0?" q-card--dark q-dark":"")+(e.bordered===!0?" q-card--bordered":"")+(e.square===!0?" q-card--square no-border-radius":"")+(e.flat===!0?" q-card--flat no-shadow":""));return()=>E(e.tag,{class:r.value},tt(t.default))}}),En=$e({name:"QCardSection",props:{tag:{type:String,default:"div"},horizontal:Boolean},setup(e,{slots:t}){const n=R(()=>`q-card__section q-card__section--${e.horizontal===!0?"horiz row no-wrap":"vert"}`);return()=>E(e.tag,{class:n.value},tt(t.default))}}),Fg=$e({name:"QCardActions",props:{...Aa,vertical:Boolean},setup(e,{slots:t}){const n=Ma(e),o=R(()=>`q-card__actions ${n.value} q-card__actions--${e.vertical===!0?"vert column":"horiz row"}`);return()=>E("div",{class:o.value},tt(t.default))}});const Ig={true:"inset",item:"item-inset","item-thumbnail":"item-thumbnail-inset"},dr={xs:2,sm:4,md:8,lg:16,xl:24};var Ks=$e({name:"QSeparator",props:{...Wt,spaced:[Boolean,String],inset:[Boolean,String],vertical:Boolean,color:String,size:String},setup(e){const t=ke(),n=Qt(e,t.proxy.$q),o=R(()=>e.vertical===!0?"vertical":"horizontal"),r=R(()=>` q-separator--${o.value}`),i=R(()=>e.inset!==!1?`${r.value}-${Ig[e.inset]}`:""),s=R(()=>`q-separator${r.value}${i.value}`+(e.color!==void 0?` bg-${e.color}`:"")+(n.value===!0?" q-separator--dark":"")),l=R(()=>{const a={};if(e.size!==void 0&&(a[e.vertical===!0?"width":"height"]=e.size),e.spaced!==!1){const c=e.spaced===!0?`${dr.md}px`:e.spaced in dr?`${dr[e.spaced]}px`:e.spaced,u=e.vertical===!0?["Left","Right"]:["Top","Bottom"];a[`margin${u[0]}`]=a[`margin${u[1]}`]=c}return a});return()=>E("hr",{class:s.value,style:l.value,"aria-orientation":o.value})}});function Ng({validate:e,resetValidation:t,requiresQForm:n}){const o=ut(id,!1);if(o!==!1){const{props:r,proxy:i}=ke();Object.assign(i,{validate:e,resetValidation:t}),be(()=>r.disable,s=>{s===!0?(typeof t=="function"&&t(),o.unbindComponent(i)):o.bindComponent(i)}),Ut(()=>{r.disable!==!0&&o.bindComponent(i)}),We(()=>{r.disable!==!0&&o.unbindComponent(i)})}else n===!0&&console.error("Parent QForm not found on useFormChild()!")}const Us=/^#[0-9a-fA-F]{3}([0-9a-fA-F]{3})?$/,Ws=/^#[0-9a-fA-F]{4}([0-9a-fA-F]{4})?$/,Qs=/^#([0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/,lo=/^rgb\(((0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),){2}(0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5])\)$/,ao=/^rgba\(((0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),){2}(0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),(0|0\.[0-9]+[1-9]|0\.[1-9]+|1)\)$/,hr={date:e=>/^-?[\d]+\/[0-1]\d\/[0-3]\d$/.test(e),time:e=>/^([0-1]?\d|2[0-3]):[0-5]\d$/.test(e),fulltime:e=>/^([0-1]?\d|2[0-3]):[0-5]\d:[0-5]\d$/.test(e),timeOrFulltime:e=>/^([0-1]?\d|2[0-3]):[0-5]\d(:[0-5]\d)?$/.test(e),email:e=>/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e),hexColor:e=>Us.test(e),hexaColor:e=>Ws.test(e),hexOrHexaColor:e=>Qs.test(e),rgbColor:e=>lo.test(e),rgbaColor:e=>ao.test(e),rgbOrRgbaColor:e=>lo.test(e)||ao.test(e),hexOrRgbColor:e=>Us.test(e)||lo.test(e),hexaOrRgbaColor:e=>Ws.test(e)||ao.test(e),anyColor:e=>Qs.test(e)||lo.test(e)||ao.test(e)},jg=[!0,!1,"ondemand"],Vg={modelValue:{},error:{type:Boolean,default:null},errorMessage:String,noErrorIcon:Boolean,rules:Array,reactiveRules:Boolean,lazyRules:{type:[Boolean,String],validator:e=>jg.includes(e)}};function Dg(e,t){const{props:n,proxy:o}=ke(),r=he(!1),i=he(null),s=he(null);Ng({validate:y,resetValidation:p});let l=0,a;const c=R(()=>n.rules!==void 0&&n.rules!==null&&n.rules.length!==0),u=R(()=>n.disable!==!0&&c.value===!0),d=R(()=>n.error===!0||r.value===!0),f=R(()=>typeof n.errorMessage=="string"&&n.errorMessage.length!==0?n.errorMessage:i.value);be(()=>n.modelValue,()=>{T()}),be(()=>n.reactiveRules,M=>{M===!0?a===void 0&&(a=be(()=>n.rules,()=>{T(!0)})):a!==void 0&&(a(),a=void 0)},{immediate:!0}),be(e,M=>{M===!0?s.value===null&&(s.value=!1):s.value===!1&&(s.value=!0,u.value===!0&&n.lazyRules!=="ondemand"&&t.value===!1&&q())});function p(){l++,t.value=!1,s.value=null,r.value=!1,i.value=null,q.cancel()}function y(M=n.modelValue){if(u.value!==!0)return!0;const m=++l,_=t.value!==!0?()=>{s.value=!0}:()=>{},w=(j,V)=>{j===!0&&_(),r.value=j,i.value=V||null,t.value=!1},F=[];for(let j=0;j{if(j===void 0||Array.isArray(j)===!1||j.length===0)return m===l&&w(!1),!0;const V=j.find(N=>N===!1||typeof N=="string");return m===l&&w(V!==void 0,V),V===void 0},j=>(m===l&&(console.error(j),w(!0)),!1)))}function T(M){u.value===!0&&n.lazyRules!=="ondemand"&&(s.value===!0||n.lazyRules!==!0&&M!==!0)&&q()}const q=ua(y,0);return We(()=>{a!==void 0&&a(),q.cancel()}),Object.assign(o,{resetValidation:p,validate:y}),bn(o,"hasError",()=>d.value),{isDirtyModel:s,hasRules:c,hasError:d,errorMessage:f,validate:y,resetValidation:p}}const Ys=/^on[A-Z]/;function Hg(e,t){const n={listeners:he({}),attributes:he({})};function o(){const r={},i={};for(const s in e)s!=="class"&&s!=="style"&&Ys.test(s)===!1&&(r[s]=e[s]);for(const s in t.props)Ys.test(s)===!0&&(i[s]=t.props[s]);n.attributes.value=r,n.listeners.value=i}return Fl(o),o(),n}let gr,uo=0;const Te=new Array(256);for(let e=0;e<256;e++)Te[e]=(e+256).toString(16).substring(1);const zg=(()=>{const e=typeof crypto!="undefined"?crypto:typeof window!="undefined"?window.crypto||window.msCrypto:void 0;if(e!==void 0){if(e.randomBytes!==void 0)return e.randomBytes;if(e.getRandomValues!==void 0)return t=>{const n=new Uint8Array(t);return e.getRandomValues(n),n}}return t=>{const n=[];for(let o=t;o>0;o--)n.push(Math.floor(Math.random()*256));return n}})(),Zs=4096;function Kg(){(gr===void 0||uo+16>Zs)&&(uo=0,gr=zg(Zs));const e=Array.prototype.slice.call(gr,uo,uo+=16);return e[6]=e[6]&15|64,e[8]=e[8]&63|128,Te[e[0]]+Te[e[1]]+Te[e[2]]+Te[e[3]]+"-"+Te[e[4]]+Te[e[5]]+"-"+Te[e[6]]+Te[e[7]]+"-"+Te[e[8]]+Te[e[9]]+"-"+Te[e[10]]+Te[e[11]]+Te[e[12]]+Te[e[13]]+Te[e[14]]+Te[e[15]]}function Nr(e){return e===void 0?`f_${Kg()}`:e}function jr(e){return e!=null&&(""+e).length!==0}const Ug={...Wt,...Vg,label:String,stackLabel:Boolean,hint:String,hideHint:Boolean,prefix:String,suffix:String,labelColor:String,color:String,bgColor:String,filled:Boolean,outlined:Boolean,borderless:Boolean,standout:[Boolean,String],square:Boolean,loading:Boolean,labelSlot:Boolean,bottomSlots:Boolean,hideBottomSpace:Boolean,rounded:Boolean,dense:Boolean,itemAligned:Boolean,counter:Boolean,clearable:Boolean,clearIcon:String,disable:Boolean,readonly:Boolean,autofocus:Boolean,for:String,maxlength:[Number,String]},Wg=["update:modelValue","clear","focus","blur","popupShow","popupHide"];function Qg(){const{props:e,attrs:t,proxy:n,vnode:o}=ke();return{isDark:Qt(e,n.$q),editable:R(()=>e.disable!==!0&&e.readonly!==!0),innerLoading:he(!1),focused:he(!1),hasPopupOpen:!1,splitAttrs:Hg(t,o),targetUid:he(Nr(e.for)),rootRef:he(null),targetRef:he(null),controlRef:he(null)}}function Yg(e){const{props:t,emit:n,slots:o,attrs:r,proxy:i}=ke(),{$q:s}=i;let l=null;e.hasValue===void 0&&(e.hasValue=R(()=>jr(t.modelValue))),e.emitValue===void 0&&(e.emitValue=A=>{n("update:modelValue",A)}),e.controlEvents===void 0&&(e.controlEvents={onFocusin:C,onFocusout:x}),Object.assign(e,{clearValue:$,onControlFocusin:C,onControlFocusout:x,focus:V}),e.computedCounter===void 0&&(e.computedCounter=R(()=>{if(t.counter!==!1){const A=typeof t.modelValue=="string"||typeof t.modelValue=="number"?(""+t.modelValue).length:Array.isArray(t.modelValue)===!0?t.modelValue.length:0,W=t.maxlength!==void 0?t.maxlength:t.maxValues;return A+(W!==void 0?" / "+W:"")}}));const{isDirtyModel:a,hasRules:c,hasError:u,errorMessage:d,resetValidation:f}=Dg(e.focused,e.innerLoading),p=e.floatingLabel!==void 0?R(()=>t.stackLabel===!0||e.focused.value===!0||e.floatingLabel.value===!0):R(()=>t.stackLabel===!0||e.focused.value===!0||e.hasValue.value===!0),y=R(()=>t.bottomSlots===!0||t.hint!==void 0||c.value===!0||t.counter===!0||t.error!==null),T=R(()=>t.filled===!0?"filled":t.outlined===!0?"outlined":t.borderless===!0?"borderless":t.standout?"standout":"standard"),q=R(()=>`q-field row no-wrap items-start q-field--${T.value}`+(e.fieldClass!==void 0?` ${e.fieldClass.value}`:"")+(t.rounded===!0?" q-field--rounded":"")+(t.square===!0?" q-field--square":"")+(p.value===!0?" q-field--float":"")+(m.value===!0?" q-field--labeled":"")+(t.dense===!0?" q-field--dense":"")+(t.itemAligned===!0?" q-field--item-aligned q-item-type":"")+(e.isDark.value===!0?" q-field--dark":"")+(e.getControl===void 0?" q-field--auto-height":"")+(e.focused.value===!0?" q-field--focused":"")+(u.value===!0?" q-field--error":"")+(u.value===!0||e.focused.value===!0?" q-field--highlighted":"")+(t.hideBottomSpace!==!0&&y.value===!0?" q-field--with-bottom":"")+(t.disable===!0?" q-field--disabled":t.readonly===!0?" q-field--readonly":"")),M=R(()=>"q-field__control relative-position row no-wrap"+(t.bgColor!==void 0?` bg-${t.bgColor}`:"")+(u.value===!0?" text-negative":typeof t.standout=="string"&&t.standout.length!==0&&e.focused.value===!0?` ${t.standout}`:t.color!==void 0?` text-${t.color}`:"")),m=R(()=>t.labelSlot===!0||t.label!==void 0),_=R(()=>"q-field__label no-pointer-events absolute ellipsis"+(t.labelColor!==void 0&&u.value!==!0?` text-${t.labelColor}`:"")),w=R(()=>({id:e.targetUid.value,editable:e.editable.value,focused:e.focused.value,floatingLabel:p.value,modelValue:t.modelValue,emitValue:e.emitValue})),F=R(()=>{const A={for:e.targetUid.value};return t.disable===!0?A["aria-disabled"]="true":t.readonly===!0&&(A["aria-readonly"]="true"),A});be(()=>t.for,A=>{e.targetUid.value=Nr(A)});function j(){const A=document.activeElement;let W=e.targetRef!==void 0&&e.targetRef.value;W&&(A===null||A.id!==e.targetUid.value)&&(W.hasAttribute("tabindex")===!0||(W=W.querySelector("[tabindex]")),W&&W!==A&&W.focus({preventScroll:!0}))}function V(){mi(j)}function N(){yg(j);const A=document.activeElement;A!==null&&e.rootRef.value.contains(A)&&A.blur()}function C(A){l!==null&&(clearTimeout(l),l=null),e.editable.value===!0&&e.focused.value===!1&&(e.focused.value=!0,n("focus",A))}function x(A,W){l!==null&&clearTimeout(l),l=setTimeout(()=>{l=null,!(document.hasFocus()===!0&&(e.hasPopupOpen===!0||e.controlRef===void 0||e.controlRef.value===null||e.controlRef.value.contains(document.activeElement)!==!1))&&(e.focused.value===!0&&(e.focused.value=!1,n("blur",A)),W!==void 0&&W())})}function $(A){Ke(A),s.platform.is.mobile!==!0?(e.targetRef!==void 0&&e.targetRef.value||e.rootRef.value).focus():e.rootRef.value.contains(document.activeElement)===!0&&document.activeElement.blur(),t.type==="file"&&(e.inputRef.value.value=null),n("update:modelValue",null),n("clear",t.modelValue),je(()=>{f(),s.platform.is.mobile!==!0&&(a.value=!1)})}function v(){const A=[];return o.prepend!==void 0&&A.push(E("div",{class:"q-field__prepend q-field__marginal row no-wrap items-center",key:"prepend",onClick:Et},o.prepend())),A.push(E("div",{class:"q-field__control-container col relative-position row no-wrap q-anchor--skip"},H())),u.value===!0&&t.noErrorIcon===!1&&A.push(Z("error",[E(pt,{name:s.iconSet.field.error,color:"negative"})])),t.loading===!0||e.innerLoading.value===!0?A.push(Z("inner-loading-append",o.loading!==void 0?o.loading():[E(Un,{color:t.color})])):t.clearable===!0&&e.hasValue.value===!0&&e.editable.value===!0&&A.push(Z("inner-clearable-append",[E(pt,{class:"q-field__focusable-action",tag:"button",name:t.clearIcon||s.iconSet.field.clear,tabindex:0,type:"button","aria-hidden":null,role:null,onClick:$})])),o.append!==void 0&&A.push(E("div",{class:"q-field__append q-field__marginal row no-wrap items-center",key:"append",onClick:Et},o.append())),e.getInnerAppend!==void 0&&A.push(Z("inner-append",e.getInnerAppend())),e.getControlChild!==void 0&&A.push(e.getControlChild()),A}function H(){const A=[];return t.prefix!==void 0&&t.prefix!==null&&A.push(E("div",{class:"q-field__prefix no-pointer-events row items-center"},t.prefix)),e.getShadowControl!==void 0&&e.hasShadow.value===!0&&A.push(e.getShadowControl()),e.getControl!==void 0?A.push(e.getControl()):o.rawControl!==void 0?A.push(o.rawControl()):o.control!==void 0&&A.push(E("div",{ref:e.targetRef,class:"q-field__native row",tabindex:-1,...e.splitAttrs.attributes.value,"data-autofocus":t.autofocus===!0||void 0},o.control(w.value))),m.value===!0&&A.push(E("div",{class:_.value},tt(o.label,t.label))),t.suffix!==void 0&&t.suffix!==null&&A.push(E("div",{class:"q-field__suffix no-pointer-events row items-center"},t.suffix)),A.concat(tt(o.default))}function k(){let A,W;u.value===!0?d.value!==null?(A=[E("div",{role:"alert"},d.value)],W=`q--slot-error-${d.value}`):(A=tt(o.error),W="q--slot-error"):(t.hideHint!==!0||e.focused.value===!0)&&(t.hint!==void 0?(A=[E("div",t.hint)],W=`q--slot-hint-${t.hint}`):(A=tt(o.hint),W="q--slot-hint"));const _e=t.counter===!0||o.counter!==void 0;if(t.hideBottomSpace===!0&&_e===!1&&A===void 0)return;const se=E("div",{key:W,class:"q-field__messages col"},A);return E("div",{class:"q-field__bottom row items-start q-field__bottom--"+(t.hideBottomSpace!==!0?"animated":"stale"),onClick:Et},[t.hideBottomSpace===!0?se:E(cn,{name:"q-transition--field-message"},()=>se),_e===!0?E("div",{class:"q-field__counter"},o.counter!==void 0?o.counter():e.computedCounter.value):null])}function Z(A,W){return W===null?null:E("div",{key:A,class:"q-field__append q-field__marginal row no-wrap items-center q-anchor--skip"},W)}let Y=!1;return Fo(()=>{Y=!0}),Ll(()=>{Y===!0&&t.autofocus===!0&&i.focus()}),Ut(()=>{qt.value===!0&&t.for===void 0&&(e.targetUid.value=Nr()),t.autofocus===!0&&i.focus()}),We(()=>{l!==null&&clearTimeout(l)}),Object.assign(i,{focus:V,blur:N}),function(){const W=e.getControl===void 0&&o.control===void 0?{...e.splitAttrs.attributes.value,"data-autofocus":t.autofocus===!0||void 0,...F.value}:F.value;return E("label",{ref:e.rootRef,class:[q.value,r.class],style:r.style,...W},[o.before!==void 0?E("div",{class:"q-field__before q-field__marginal row no-wrap items-center",onClick:Et},o.before()):null,E("div",{class:"q-field__inner relative-position col self-stretch"},[E("div",{ref:e.controlRef,class:M.value,tabindex:-1,...e.controlEvents},v()),y.value===!0?k():null]),o.after!==void 0?E("div",{class:"q-field__after q-field__marginal row no-wrap items-center",onClick:Et},o.after()):null])}}const Js={date:"####/##/##",datetime:"####/##/## ##:##",time:"##:##",fulltime:"##:##:##",phone:"(###) ### - ####",card:"#### #### #### ####"},Po={"#":{pattern:"[\\d]",negate:"[^\\d]"},S:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]"},N:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]"},A:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]",transform:e=>e.toLocaleUpperCase()},a:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]",transform:e=>e.toLocaleLowerCase()},X:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]",transform:e=>e.toLocaleUpperCase()},x:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]",transform:e=>e.toLocaleLowerCase()}},Za=Object.keys(Po);Za.forEach(e=>{Po[e].regex=new RegExp(Po[e].pattern)});const Zg=new RegExp("\\\\([^.*+?^${}()|([\\]])|([.*+?^${}()|[\\]])|(["+Za.join("")+"])|(.)","g"),Xs=/[.*+?^${}()|[\]\\]/g,Se=String.fromCharCode(1),Jg={mask:String,reverseFillMask:Boolean,fillMask:[Boolean,String],unmaskedValue:Boolean};function Xg(e,t,n,o){let r,i,s,l,a,c;const u=he(null),d=he(p());function f(){return e.autogrow===!0||["textarea","text","search","url","tel","password"].includes(e.type)}be(()=>e.type+e.autogrow,T),be(()=>e.mask,C=>{if(C!==void 0)q(d.value,!0);else{const x=V(d.value);T(),e.modelValue!==x&&t("update:modelValue",x)}}),be(()=>e.fillMask+e.reverseFillMask,()=>{u.value===!0&&q(d.value,!0)}),be(()=>e.unmaskedValue,()=>{u.value===!0&&q(d.value)});function p(){if(T(),u.value===!0){const C=F(V(e.modelValue));return e.fillMask!==!1?N(C):C}return e.modelValue}function y(C){if(C-1){for(let H=C-$.length;H>0;H--)x+=Se;$=$.slice(0,v)+x+$.slice(v)}return $}function T(){if(u.value=e.mask!==void 0&&e.mask.length!==0&&f(),u.value===!1){l=void 0,r="",i="";return}const C=Js[e.mask]===void 0?e.mask:Js[e.mask],x=typeof e.fillMask=="string"&&e.fillMask.length!==0?e.fillMask.slice(0,1):"_",$=x.replace(Xs,"\\$&"),v=[],H=[],k=[];let Z=e.reverseFillMask===!0,Y="",A="";C.replace(Zg,(fe,L,ue,Re,oe)=>{if(Re!==void 0){const ne=Po[Re];k.push(ne),A=ne.negate,Z===!0&&(H.push("(?:"+A+"+)?("+ne.pattern+"+)?(?:"+A+"+)?("+ne.pattern+"+)?"),Z=!1),H.push("(?:"+A+"+)?("+ne.pattern+")?")}else if(ue!==void 0)Y="\\"+(ue==="\\"?"":ue),k.push(ue),v.push("([^"+Y+"]+)?"+Y+"?");else{const ne=L!==void 0?L:oe;Y=ne==="\\"?"\\\\\\\\":ne.replace(Xs,"\\\\$&"),k.push(ne),v.push("([^"+Y+"]+)?"+Y+"?")}});const W=new RegExp("^"+v.join("")+"("+(Y===""?".":"[^"+Y+"]")+"+)?"+(Y===""?"":"["+Y+"]*")+"$"),_e=H.length-1,se=H.map((fe,L)=>L===0&&e.reverseFillMask===!0?new RegExp("^"+$+"*"+fe):L===_e?new RegExp("^"+fe+"("+(A===""?".":A)+"+)?"+(e.reverseFillMask===!0?"$":$+"*")):new RegExp("^"+fe));s=k,l=fe=>{const L=W.exec(e.reverseFillMask===!0?fe:fe.slice(0,k.length+1));L!==null&&(fe=L.slice(1).join(""));const ue=[],Re=se.length;for(let oe=0,ne=fe;oetypeof fe=="string"?fe:Se).join(""),i=r.split(Se).join(x)}function q(C,x,$){const v=o.value,H=v.selectionEnd,k=v.value.length-H,Z=V(C);x===!0&&T();const Y=F(Z),A=e.fillMask!==!1?N(Y):Y,W=d.value!==A;v.value!==A&&(v.value=A),W===!0&&(d.value=A),document.activeElement===v&&je(()=>{if(A===i){const se=e.reverseFillMask===!0?i.length:0;v.setSelectionRange(se,se,"forward");return}if($==="insertFromPaste"&&e.reverseFillMask!==!0){const se=v.selectionEnd;let fe=H-1;for(let L=a;L<=fe&&L-1){const se=e.reverseFillMask===!0?H===0?A.length>Y.length?1:0:Math.max(0,A.length-(A===i?0:Math.min(Y.length,k)+1))+1:H;v.setSelectionRange(se,se,"forward");return}if(e.reverseFillMask===!0)if(W===!0){const se=Math.max(0,A.length-(A===i?0:Math.min(Y.length,k+1)));se===1&&H===1?v.setSelectionRange(se,se,"forward"):m.rightReverse(v,se)}else{const se=A.length-k;v.setSelectionRange(se,se,"backward")}else if(W===!0){const se=Math.max(0,r.indexOf(Se),Math.min(Y.length,H)-1);m.right(v,se)}else{const se=H-1;m.right(v,se)}});const _e=e.unmaskedValue===!0?V(A):A;String(e.modelValue)!==_e&&n(_e,!0)}function M(C,x,$){const v=F(V(C.value));x=Math.max(0,r.indexOf(Se),Math.min(v.length,x)),a=x,C.setSelectionRange(x,$,"forward")}const m={left(C,x){const $=r.slice(x-1).indexOf(Se)===-1;let v=Math.max(0,x-1);for(;v>=0;v--)if(r[v]===Se){x=v,$===!0&&x++;break}if(v<0&&r[x]!==void 0&&r[x]!==Se)return m.right(C,0);x>=0&&C.setSelectionRange(x,x,"backward")},right(C,x){const $=C.value.length;let v=Math.min($,x+1);for(;v<=$;v++)if(r[v]===Se){x=v;break}else r[v-1]===Se&&(x=v);if(v>$&&r[x-1]!==void 0&&r[x-1]!==Se)return m.left(C,$);C.setSelectionRange(x,x,"forward")},leftReverse(C,x){const $=y(C.value.length);let v=Math.max(0,x-1);for(;v>=0;v--)if($[v-1]===Se){x=v;break}else if($[v]===Se&&(x=v,v===0))break;if(v<0&&$[x]!==void 0&&$[x]!==Se)return m.rightReverse(C,0);x>=0&&C.setSelectionRange(x,x,"backward")},rightReverse(C,x){const $=C.value.length,v=y($),H=v.slice(0,x+1).indexOf(Se)===-1;let k=Math.min($,x+1);for(;k<=$;k++)if(v[k-1]===Se){x=k,x>0&&H===!0&&x--;break}if(k>$&&v[x-1]!==void 0&&v[x-1]!==Se)return m.leftReverse(C,$);C.setSelectionRange(x,x,"forward")}};function _(C){t("click",C),c=void 0}function w(C){if(t("keydown",C),da(C)===!0||C.altKey===!0)return;const x=o.value,$=x.selectionStart,v=x.selectionEnd;if(C.shiftKey||(c=void 0),C.keyCode===37||C.keyCode===39){C.shiftKey&&c===void 0&&(c=x.selectionDirection==="forward"?$:v);const H=m[(C.keyCode===39?"right":"left")+(e.reverseFillMask===!0?"Reverse":"")];if(C.preventDefault(),H(x,c===$?v:$),C.shiftKey){const k=x.selectionStart;x.setSelectionRange(Math.min(c,k),Math.max(c,k),"forward")}}else C.keyCode===8&&e.reverseFillMask!==!0&&$===v?(m.left(x,$),x.setSelectionRange(x.selectionStart,v,"backward")):C.keyCode===46&&e.reverseFillMask===!0&&$===v&&(m.rightReverse(x,v),x.setSelectionRange($,x.selectionEnd,"forward"))}function F(C){if(C==null||C==="")return"";if(e.reverseFillMask===!0)return j(C);const x=s;let $=0,v="";for(let H=0;H=0&&v>-1;k--){const Z=x[k];let Y=C[v];if(typeof Z=="string")H=Z+H,Y===Z&&v--;else if(Y!==void 0&&Z.regex.test(Y))do H=(Z.transform!==void 0?Z.transform(Y):Y)+H,v--,Y=C[v];while($===k&&Y!==void 0&&Z.regex.test(Y));else return H}return H}function V(C){return typeof C!="string"||l===void 0?typeof C=="number"?l(""+C):C:l(C)}function N(C){return i.length-C.length<=0?C:e.reverseFillMask===!0&&C.length!==0?i.slice(0,-C.length)+C:C+i.slice(C.length)}return{innerValue:d,hasMask:u,moveCursorForPaste:M,updateMaskValue:q,onMaskedKeydown:w,onMaskedClick:_}}const pi={name:String};function Ja(e={}){return(t,n,o)=>{t[n](E("input",{class:"hidden"+(o||""),...e.value}))}}function Gg(e){return R(()=>e.name||e.for)}function em(e,t){function n(){const o=e.modelValue;try{const r="DataTransfer"in window?new DataTransfer:"ClipboardEvent"in window?new ClipboardEvent("").clipboardData:void 0;return Object(o)===o&&("length"in o?Array.from(o):[o]).forEach(i=>{r.items.add(i)}),{files:r.files}}catch{return{files:void 0}}}return R(t===!0?()=>{if(e.type==="file")return n()}:n)}const tm=/[\u3000-\u303f\u3040-\u309f\u30a0-\u30ff\uff00-\uff9f\u4e00-\u9faf\u3400-\u4dbf]/,nm=/[\u4e00-\u9fff\u3400-\u4dbf\u{20000}-\u{2a6df}\u{2a700}-\u{2b73f}\u{2b740}-\u{2b81f}\u{2b820}-\u{2ceaf}\uf900-\ufaff\u3300-\u33ff\ufe30-\ufe4f\uf900-\ufaff\u{2f800}-\u{2fa1f}]/u,om=/[\u3131-\u314e\u314f-\u3163\uac00-\ud7a3]/,rm=/[a-z0-9_ -]$/i;function im(e){return function(n){if(n.type==="compositionend"||n.type==="change"){if(n.target.qComposing!==!0)return;n.target.qComposing=!1,e(n)}else n.type==="compositionupdate"&&n.target.qComposing!==!0&&typeof n.data=="string"&&(we.is.firefox===!0?rm.test(n.data)===!1:tm.test(n.data)===!0||nm.test(n.data)===!0||om.test(n.data)===!0)===!0&&(n.target.qComposing=!0)}}var sm=$e({name:"QInput",inheritAttrs:!1,props:{...Ug,...Jg,...pi,modelValue:{required:!1},shadowText:String,type:{type:String,default:"text"},debounce:[String,Number],autogrow:Boolean,inputClass:[Array,String,Object],inputStyle:[Array,String,Object]},emits:[...Wg,"paste","change","keydown","click","animationend"],setup(e,{emit:t,attrs:n}){const{proxy:o}=ke(),{$q:r}=o,i={};let s=NaN,l,a,c=null,u;const d=he(null),f=Gg(e),{innerValue:p,hasMask:y,moveCursorForPaste:T,updateMaskValue:q,onMaskedKeydown:M,onMaskedClick:m}=Xg(e,t,Y,d),_=em(e,!0),w=R(()=>jr(p.value)),F=im(k),j=Qg(),V=R(()=>e.type==="textarea"||e.autogrow===!0),N=R(()=>V.value===!0||["text","search","url","tel","password"].includes(e.type)),C=R(()=>{const L={...j.splitAttrs.listeners.value,onInput:k,onPaste:H,onChange:W,onBlur:_e,onFocus:ko};return L.onCompositionstart=L.onCompositionupdate=L.onCompositionend=F,y.value===!0&&(L.onKeydown=M,L.onClick=m),e.autogrow===!0&&(L.onAnimationend=Z),L}),x=R(()=>{const L={tabindex:0,"data-autofocus":e.autofocus===!0||void 0,rows:e.type==="textarea"?6:void 0,"aria-label":e.label,name:f.value,...j.splitAttrs.attributes.value,id:j.targetUid.value,maxlength:e.maxlength,disabled:e.disable===!0,readonly:e.readonly===!0};return V.value===!1&&(L.type=e.type),e.autogrow===!0&&(L.rows=1),L});be(()=>e.type,()=>{d.value&&(d.value.value=e.modelValue)}),be(()=>e.modelValue,L=>{if(y.value===!0){if(a===!0&&(a=!1,String(L)===s))return;q(L)}else p.value!==L&&(p.value=L,e.type==="number"&&i.hasOwnProperty("value")===!0&&(l===!0?l=!1:delete i.value));e.autogrow===!0&&je(A)}),be(()=>e.autogrow,L=>{L===!0?je(A):d.value!==null&&n.rows>0&&(d.value.style.height="auto")}),be(()=>e.dense,()=>{e.autogrow===!0&&je(A)});function $(){mi(()=>{const L=document.activeElement;d.value!==null&&d.value!==L&&(L===null||L.id!==j.targetUid.value)&&d.value.focus({preventScroll:!0})})}function v(){d.value!==null&&d.value.select()}function H(L){if(y.value===!0&&e.reverseFillMask!==!0){const ue=L.target;T(ue,ue.selectionStart,ue.selectionEnd)}t("paste",L)}function k(L){if(!L||!L.target)return;if(e.type==="file"){t("update:modelValue",L.target.files);return}const ue=L.target.value;if(L.target.qComposing===!0){i.value=ue;return}if(y.value===!0)q(ue,!1,L.inputType);else if(Y(ue),N.value===!0&&L.target===document.activeElement){const{selectionStart:Re,selectionEnd:oe}=L.target;Re!==void 0&&oe!==void 0&&je(()=>{L.target===document.activeElement&&ue.indexOf(L.target.value)===0&&L.target.setSelectionRange(Re,oe)})}e.autogrow===!0&&A()}function Z(L){t("animationend",L),A()}function Y(L,ue){u=()=>{c=null,e.type!=="number"&&i.hasOwnProperty("value")===!0&&delete i.value,e.modelValue!==L&&s!==L&&(s=L,ue===!0&&(a=!0),t("update:modelValue",L),je(()=>{s===L&&(s=NaN)})),u=void 0},e.type==="number"&&(l=!0,i.value=L),e.debounce!==void 0?(c!==null&&clearTimeout(c),i.value=L,c=setTimeout(u,e.debounce)):u()}function A(){requestAnimationFrame(()=>{const L=d.value;if(L!==null){const ue=L.parentNode.style,{scrollTop:Re}=L,{overflowY:oe,maxHeight:ne}=r.platform.is.firefox===!0?{}:window.getComputedStyle(L),S=oe!==void 0&&oe!=="scroll";S===!0&&(L.style.overflowY="hidden"),ue.marginBottom=L.scrollHeight-1+"px",L.style.height="1px",L.style.height=L.scrollHeight+"px",S===!0&&(L.style.overflowY=parseInt(ne,10){d.value!==null&&(d.value.value=p.value!==void 0?p.value:"")})}function se(){return i.hasOwnProperty("value")===!0?i.value:p.value!==void 0?p.value:""}We(()=>{_e()}),Ut(()=>{e.autogrow===!0&&A()}),Object.assign(j,{innerValue:p,fieldClass:R(()=>`q-${V.value===!0?"textarea":"input"}`+(e.autogrow===!0?" q-textarea--autogrow":"")),hasShadow:R(()=>e.type!=="file"&&typeof e.shadowText=="string"&&e.shadowText.length!==0),inputRef:d,emitValue:Y,hasValue:w,floatingLabel:R(()=>w.value===!0&&(e.type!=="number"||isNaN(p.value)===!1)||jr(e.displayValue)),getControl:()=>E(V.value===!0?"textarea":"input",{ref:d,class:["q-field__native q-placeholder",e.inputClass],style:e.inputStyle,...x.value,...C.value,...e.type!=="file"?{value:se()}:_.value}),getShadowControl:()=>E("div",{class:"q-field__native q-field__shadow absolute-bottom no-pointer-events"+(V.value===!0?"":" text-no-wrap")},[E("span",{class:"invisible"},se()),E("span",e.shadowText)])});const fe=Yg(j);return Object.assign(o,{focus:$,select:v,getNativeElement:()=>d.value}),bn(o,"nativeEl",()=>d.value),fe}});function Xa(e,t){const n=he(null),o=R(()=>e.disable===!0?null:E("span",{ref:n,class:"no-outline",tabindex:-1}));function r(i){const s=t.value;i!==void 0&&i.type.indexOf("key")===0?s!==null&&document.activeElement!==s&&s.contains(document.activeElement)===!0&&s.focus():n.value!==null&&(i===void 0||s!==null&&s.contains(i.target)===!0)&&n.value.focus()}return{refocusTargetEl:o,refocusTarget:r}}var Ga={xs:30,sm:35,md:40,lg:50,xl:60};const lm=E("svg",{key:"svg",class:"q-radio__bg absolute non-selectable",viewBox:"0 0 24 24"},[E("path",{d:"M12,22a10,10 0 0 1 -10,-10a10,10 0 0 1 10,-10a10,10 0 0 1 10,10a10,10 0 0 1 -10,10m0,-22a12,12 0 0 0 -12,12a12,12 0 0 0 12,12a12,12 0 0 0 12,-12a12,12 0 0 0 -12,-12"}),E("path",{class:"q-radio__check",d:"M12,6a6,6 0 0 0 -6,6a6,6 0 0 0 6,6a6,6 0 0 0 6,-6a6,6 0 0 0 -6,-6"})]);var am=$e({name:"QRadio",props:{...Wt,...Yn,...pi,modelValue:{required:!0},val:{required:!0},label:String,leftLabel:Boolean,checkedIcon:String,uncheckedIcon:String,color:String,keepColor:Boolean,dense:Boolean,disable:Boolean,tabindex:[String,Number]},emits:["update:modelValue"],setup(e,{slots:t,emit:n}){const{proxy:o}=ke(),r=Qt(e,o.$q),i=Zn(e,Ga),s=he(null),{refocusTargetEl:l,refocusTarget:a}=Xa(e,s),c=R(()=>ie(e.modelValue)===ie(e.val)),u=R(()=>"q-radio cursor-pointer no-outline row inline no-wrap items-center"+(e.disable===!0?" disabled":"")+(r.value===!0?" q-radio--dark":"")+(e.dense===!0?" q-radio--dense":"")+(e.leftLabel===!0?" reverse":"")),d=R(()=>{const _=e.color!==void 0&&(e.keepColor===!0||c.value===!0)?` text-${e.color}`:"";return`q-radio__inner relative-position q-radio__inner--${c.value===!0?"truthy":"falsy"}${_}`}),f=R(()=>(c.value===!0?e.checkedIcon:e.uncheckedIcon)||null),p=R(()=>e.disable===!0?-1:e.tabindex||0),y=R(()=>{const _={type:"radio"};return e.name!==void 0&&Object.assign(_,{".checked":c.value===!0,"^checked":c.value===!0?"checked":void 0,name:e.name,value:e.val}),_}),T=Ja(y);function q(_){_!==void 0&&(Ke(_),a(_)),e.disable!==!0&&c.value!==!0&&n("update:modelValue",e.val,_)}function M(_){(_.keyCode===13||_.keyCode===32)&&Ke(_)}function m(_){(_.keyCode===13||_.keyCode===32)&&q(_)}return Object.assign(o,{set:q}),()=>{const _=f.value!==null?[E("div",{key:"icon",class:"q-radio__icon-container absolute-full flex flex-center no-wrap"},[E(pt,{class:"q-radio__icon",name:f.value})])]:[lm];e.disable!==!0&&T(_,"unshift"," q-radio__native q-ma-none q-pa-none");const w=[E("div",{class:d.value,style:i.value,"aria-hidden":"true"},_)];l.value!==null&&w.push(l.value);const F=e.label!==void 0?It(t.default,[e.label]):tt(t.default);return F!==void 0&&w.push(E("div",{class:"q-radio__label q-anchor--skip"},F)),E("div",{ref:s,class:u.value,tabindex:p.value,role:"radio","aria-label":e.label,"aria-checked":c.value===!0?"true":"false","aria-disabled":e.disable===!0?"true":void 0,onClick:q,onKeydown:M,onKeyup:m},w)}}});const eu={...Wt,...Yn,...pi,modelValue:{required:!0,default:null},val:{},trueValue:{default:!0},falseValue:{default:!1},indeterminateValue:{default:null},checkedIcon:String,uncheckedIcon:String,indeterminateIcon:String,toggleOrder:{type:String,validator:e=>e==="tf"||e==="ft"},toggleIndeterminate:Boolean,label:String,leftLabel:Boolean,color:String,keepColor:Boolean,dense:Boolean,disable:Boolean,tabindex:[String,Number]},tu=["update:modelValue"];function nu(e,t){const{props:n,slots:o,emit:r,proxy:i}=ke(),{$q:s}=i,l=Qt(n,s),a=he(null),{refocusTargetEl:c,refocusTarget:u}=Xa(n,a),d=Zn(n,Ga),f=R(()=>n.val!==void 0&&Array.isArray(n.modelValue)),p=R(()=>{const v=ie(n.val);return f.value===!0?n.modelValue.findIndex(H=>ie(H)===v):-1}),y=R(()=>f.value===!0?p.value>-1:ie(n.modelValue)===ie(n.trueValue)),T=R(()=>f.value===!0?p.value===-1:ie(n.modelValue)===ie(n.falseValue)),q=R(()=>y.value===!1&&T.value===!1),M=R(()=>n.disable===!0?-1:n.tabindex||0),m=R(()=>`q-${e} cursor-pointer no-outline row inline no-wrap items-center`+(n.disable===!0?" disabled":"")+(l.value===!0?` q-${e}--dark`:"")+(n.dense===!0?` q-${e}--dense`:"")+(n.leftLabel===!0?" reverse":"")),_=R(()=>{const v=y.value===!0?"truthy":T.value===!0?"falsy":"indet",H=n.color!==void 0&&(n.keepColor===!0||(e==="toggle"?y.value===!0:T.value!==!0))?` text-${n.color}`:"";return`q-${e}__inner relative-position non-selectable q-${e}__inner--${v}${H}`}),w=R(()=>{const v={type:"checkbox"};return n.name!==void 0&&Object.assign(v,{".checked":y.value,"^checked":y.value===!0?"checked":void 0,name:n.name,value:f.value===!0?n.val:n.trueValue}),v}),F=Ja(w),j=R(()=>{const v={tabindex:M.value,role:e==="toggle"?"switch":"checkbox","aria-label":n.label,"aria-checked":q.value===!0?"mixed":y.value===!0?"true":"false"};return n.disable===!0&&(v["aria-disabled"]="true"),v});function V(v){v!==void 0&&(Ke(v),u(v)),n.disable!==!0&&r("update:modelValue",N(),v)}function N(){if(f.value===!0){if(y.value===!0){const v=n.modelValue.slice();return v.splice(p.value,1),v}return n.modelValue.concat([n.val])}if(y.value===!0){if(n.toggleOrder!=="ft"||n.toggleIndeterminate===!1)return n.falseValue}else if(T.value===!0){if(n.toggleOrder==="ft"||n.toggleIndeterminate===!1)return n.trueValue}else return n.toggleOrder!=="ft"?n.trueValue:n.falseValue;return n.indeterminateValue}function C(v){(v.keyCode===13||v.keyCode===32)&&Ke(v)}function x(v){(v.keyCode===13||v.keyCode===32)&&V(v)}const $=t(y,q);return Object.assign(i,{toggle:V}),()=>{const v=$();n.disable!==!0&&F(v,"unshift",` q-${e}__native absolute q-ma-none q-pa-none`);const H=[E("div",{class:_.value,style:d.value,"aria-hidden":"true"},v)];c.value!==null&&H.push(c.value);const k=n.label!==void 0?It(o.default,[n.label]):tt(o.default);return k!==void 0&&H.push(E("div",{class:`q-${e}__label q-anchor--skip`},k)),E("div",{ref:a,class:m.value,...j.value,onClick:V,onKeydown:C,onKeyup:x},H)}}const um=E("div",{key:"svg",class:"q-checkbox__bg absolute"},[E("svg",{class:"q-checkbox__svg fit absolute-full",viewBox:"0 0 24 24"},[E("path",{class:"q-checkbox__truthy",fill:"none",d:"M1.73,12.91 8.1,19.28 22.79,4.59"}),E("path",{class:"q-checkbox__indet",d:"M4,14H20V10H4"})])]);var cm=$e({name:"QCheckbox",props:eu,emits:tu,setup(e){function t(n,o){const r=R(()=>(n.value===!0?e.checkedIcon:o.value===!0?e.indeterminateIcon:e.uncheckedIcon)||null);return()=>r.value!==null?[E("div",{key:"icon",class:"q-checkbox__icon-container absolute-full flex flex-center no-wrap"},[E(pt,{class:"q-checkbox__icon",name:r.value})])]:[um]}return nu("checkbox",t)}}),fm=$e({name:"QToggle",props:{...eu,icon:String,iconColor:String},emits:tu,setup(e){function t(n,o){const r=R(()=>(n.value===!0?e.checkedIcon:o.value===!0?e.indeterminateIcon:e.uncheckedIcon)||e.icon),i=R(()=>n.value===!0?e.iconColor:null);return()=>[E("div",{class:"q-toggle__track"}),E("div",{class:"q-toggle__thumb absolute flex flex-center no-wrap"},r.value!==void 0?[E(pt,{name:r.value,color:i.value})]:void 0)]}return nu("toggle",t)}});const ou={radio:am,checkbox:cm,toggle:fm},dm=Object.keys(ou);var hm=$e({name:"QOptionGroup",props:{...Wt,modelValue:{required:!0},options:{type:Array,validator:e=>e.every(t=>"value"in t&&"label"in t)},name:String,type:{default:"radio",validator:e=>dm.includes(e)},color:String,keepColor:Boolean,dense:Boolean,size:String,leftLabel:Boolean,inline:Boolean,disable:Boolean},emits:["update:modelValue"],setup(e,{emit:t,slots:n}){const{proxy:{$q:o}}=ke(),r=Array.isArray(e.modelValue);e.type==="radio"?r===!0&&console.error("q-option-group: model should not be array"):r===!1&&console.error("q-option-group: model should be array in your case");const i=Qt(e,o),s=R(()=>ou[e.type]),l=R(()=>"q-option-group q-gutter-x-sm"+(e.inline===!0?" q-option-group--inline":"")),a=R(()=>{const u={role:"group"};return e.type==="radio"&&(u.role="radiogroup",e.disable===!0&&(u["aria-disabled"]="true")),u});function c(u){t("update:modelValue",u)}return()=>E("div",{class:l.value,...a.value},e.options.map((u,d)=>{const f=n["label-"+d]!==void 0?()=>n["label-"+d](u):n.label!==void 0?()=>n.label(u):void 0;return E("div",[E(s.value,{modelValue:e.modelValue,val:u.value,name:u.name===void 0?e.name:u.name,disable:e.disable||u.disable,label:f===void 0?u.label:null,leftLabel:u.leftLabel===void 0?e.leftLabel:u.leftLabel,color:u.color===void 0?e.color:u.color,checkedIcon:u.checkedIcon,uncheckedIcon:u.uncheckedIcon,dark:u.dark||i.value,size:u.size===void 0?e.size:u.size,dense:e.dense,keepColor:u.keepColor===void 0?e.keepColor:u.keepColor,"onUpdate:modelValue":c},f)])}))}}),gm=$e({name:"DialogPlugin",props:{...Wt,title:String,message:String,prompt:Object,options:Object,progress:[Boolean,Object],html:Boolean,ok:{type:[String,Object,Boolean],default:!0},cancel:[String,Object,Boolean],focus:{type:String,default:"ok",validator:e=>["ok","cancel","none"].includes(e)},stackButtons:Boolean,color:String,cardClass:[String,Array,Object],cardStyle:[String,Array,Object]},emits:["ok","hide"],setup(e,{emit:t}){const{proxy:n}=ke(),{$q:o}=n,r=Qt(e,o),i=he(null),s=he(e.prompt!==void 0?e.prompt.model:e.options!==void 0?e.options.model:void 0),l=R(()=>"q-dialog-plugin"+(r.value===!0?" q-dialog-plugin--dark q-dark":"")+(e.progress!==!1?" q-dialog-plugin--progress":"")),a=R(()=>e.color||(r.value===!0?"amber":"primary")),c=R(()=>e.progress===!1?null:at(e.progress)===!0?{component:e.progress.spinner||Un,props:{color:e.progress.color||a.value}}:{component:Un,props:{color:a.value}}),u=R(()=>e.prompt!==void 0||e.options!==void 0),d=R(()=>{if(u.value!==!0)return{};const{model:k,isValid:Z,items:Y,...A}=e.prompt!==void 0?e.prompt:e.options;return A}),f=R(()=>at(e.ok)===!0||e.ok===!0?o.lang.label.ok:e.ok),p=R(()=>at(e.cancel)===!0||e.cancel===!0?o.lang.label.cancel:e.cancel),y=R(()=>e.prompt!==void 0?e.prompt.isValid!==void 0&&e.prompt.isValid(s.value)!==!0:e.options!==void 0?e.options.isValid!==void 0&&e.options.isValid(s.value)!==!0:!1),T=R(()=>({color:a.value,label:f.value,ripple:!1,disable:y.value,...at(e.ok)===!0?e.ok:{flat:!0},"data-autofocus":e.focus==="ok"&&u.value!==!0||void 0,onClick:_})),q=R(()=>({color:a.value,label:p.value,ripple:!1,...at(e.cancel)===!0?e.cancel:{flat:!0},"data-autofocus":e.focus==="cancel"&&u.value!==!0||void 0,onClick:w}));be(()=>e.prompt&&e.prompt.model,j),be(()=>e.options&&e.options.model,j);function M(){i.value.show()}function m(){i.value.hide()}function _(){t("ok",ie(s.value)),m()}function w(){m()}function F(){t("hide")}function j(k){s.value=k}function V(k){y.value!==!0&&e.prompt.type!=="textarea"&&zn(k,13)===!0&&_()}function N(k,Z){return e.html===!0?E(En,{class:k,innerHTML:Z}):E(En,{class:k},()=>Z)}function C(){return[E(sm,{color:a.value,dense:!0,autofocus:!0,dark:r.value,...d.value,modelValue:s.value,"onUpdate:modelValue":j,onKeyup:V})]}function x(){return[E(hm,{color:a.value,options:e.options.items,dark:r.value,...d.value,modelValue:s.value,"onUpdate:modelValue":j})]}function $(){const k=[];return e.cancel&&k.push(E(Br,q.value)),e.ok&&k.push(E(Br,T.value)),E(Fg,{class:e.stackButtons===!0?"items-end":"",vertical:e.stackButtons,align:"right"},()=>k)}function v(){const k=[];return e.title&&k.push(N("q-dialog__title",e.title)),e.progress!==!1&&k.push(E(En,{class:"q-dialog__progress"},()=>E(c.value.component,c.value.props))),e.message&&k.push(N("q-dialog__message",e.message)),e.prompt!==void 0?k.push(E(En,{class:"scroll q-dialog-plugin__form"},C)):e.options!==void 0&&k.push(E(Ks,{dark:r.value}),E(En,{class:"scroll q-dialog-plugin__form"},x),E(Ks,{dark:r.value})),(e.ok||e.cancel)&&k.push($()),k}function H(){return[E(Bg,{class:[l.value,e.cardClass],style:e.cardStyle,dark:r.value},v)]}return Object.assign(n,{show:M,hide:m}),()=>E(Lg,{ref:i,onHide:F},H)}});function ru(e,t){for(const n in t)n!=="spinner"&&Object(t[n])===t[n]?(e[n]=Object(e[n])!==e[n]?{}:{...e[n]},ru(e[n],t[n])):e[n]=t[n]}function mm(e,t,n){return o=>{let r,i;const s=t===!0&&o.component!==void 0;if(s===!0){const{component:m,componentProps:_}=o;r=typeof m=="string"?n.component(m):m,i=_||{}}else{const{class:m,style:_,...w}=o;r=e,i=w,m!==void 0&&(w.cardClass=m),_!==void 0&&(w.cardStyle=_)}let l,a=!1;const c=he(null),u=hi(!1,"dialog"),d=m=>{if(c.value!==null&&c.value[m]!==void 0){c.value[m]();return}const _=l.$.subTree;if(_&&_.component){if(_.component.proxy&&_.component.proxy[m]){_.component.proxy[m]();return}if(_.component.subTree&&_.component.subTree.component&&_.component.subTree.component.proxy&&_.component.subTree.component.proxy[m]){_.component.subTree.component.proxy[m]();return}}console.error("[Quasar] Incorrectly defined Dialog component")},f=[],p=[],y={onOk(m){return f.push(m),y},onCancel(m){return p.push(m),y},onDismiss(m){return f.push(m),p.push(m),y},hide(){return d("hide"),y},update(m){if(l!==null){if(s===!0)Object.assign(i,m);else{const{class:_,style:w,...F}=m;_!==void 0&&(F.cardClass=_),w!==void 0&&(F.cardStyle=w),ru(i,F)}l.$forceUpdate()}return y}},T=m=>{a=!0,f.forEach(_=>{_(m)})},q=()=>{M.unmount(u),Fa(u),M=null,l=null,a!==!0&&p.forEach(m=>{m()})};let M=ma({name:"QGlobalDialog",setup:()=>()=>E(r,{...i,ref:c,onOk:T,onHide:q,onVnodeMounted(...m){typeof i.onVnodeMounted=="function"&&i.onVnodeMounted(...m),je(()=>d("show"))}})},n);return l=M.mount(u),y}}var pm={install({$q:e,parentApp:t}){e.dialog=mm(gm,!0,t),this.__installed!==!0&&(this.create=e.dialog)}},vm={config:{staticPath:""},plugins:{Notify:ig,LocalStorage:Da,Dialog:pm}};async function bm({app:e,router:t}){e.use(t),e.mount("#q-app")}Ch(la,vm).then(bm);export{zn as $,Km as A,pn as B,ii as C,It as D,Lo as E,xc as F,Wl as G,Yl as H,sc as I,Fe as J,kh as K,we as L,Pt as M,Rm as N,Kf as O,Tr as P,Pm as Q,Et as R,ko as S,Hf as T,Uf as U,Ke as V,Vm as W,Be as X,za as Y,Ka as Z,dd as _,Wt as a,cm as a$,vo as a0,pg as a1,dg as a2,vg as a3,xg as a4,cn as a5,Yn as a6,Zn as a7,pt as a8,Eh as a9,jm as aA,rd as aB,Am as aC,da as aD,nr as aE,Ug as aF,Wg as aG,Yg as aH,Qg as aI,pi as aJ,Gg as aK,jr as aL,Fl as aM,ri as aN,im as aO,Lg as aP,_m as aQ,Cm as aR,Oh as aS,Jl as aT,ym as aU,Qc as aV,Xe as aW,En as aX,Ks as aY,km as aZ,sm as a_,Nh as aa,ua as ab,vc as ac,Fo as ad,Ll as ae,$h as af,Lh as ag,Un as ah,zh as ai,Kh as aj,$m as ak,Og as al,Hs as am,Ds as an,_g as ao,Mg as ap,mi as aq,Fh as ar,Zh as as,Kg as at,Im as au,Br as av,Aa as aw,Ma as ax,Fm as ay,Nm as az,gg as b,Em as b0,wm as b1,Bg as b2,zm as b3,Hm as b4,La as b5,id as b6,Fg as b7,hm as b8,Dm as b9,Bm as ba,xm as bb,ml as bc,Sm as bd,$a as be,qr as bf,Om as bg,Wr as bh,Ur as bi,Vt as bj,$e as c,Qt as d,fg as e,Mm as f,R as g,mg as h,ut as i,cg as j,We as k,Tm as l,Al as m,je as n,Ut as o,E as p,Lm as q,he as r,tt as s,ke as t,hg as u,Pg as v,be as w,fo as x,qm as y,qt as z}; diff --git a/static/market/index.html b/static/market/index.html index 4b4e656..c70cbe5 100644 --- a/static/market/index.html +++ b/static/market/index.html @@ -1,27 +1,3 @@ - - - - - Nostr Market App - - - - - - - - - - - - - - - - - - -
- - - \ No newline at end of file +Nostr Market App + +
\ No newline at end of file diff --git a/static/market/js/bolt11-decoder.js b/static/market/js/bolt11-decoder.js index 7b73260..a9a9920 100644 --- a/static/market/js/bolt11-decoder.js +++ b/static/market/js/bolt11-decoder.js @@ -4,198 +4,200 @@ //TODO - A reader MUST use the n field to validate the signature instead of performing signature recovery if a valid n field is provided. function decode(paymentRequest) { - let input = paymentRequest.toLowerCase() - let splitPosition = input.lastIndexOf('1') - let humanReadablePart = input.substring(0, splitPosition) - let data = input.substring(splitPosition + 1, input.length - 6) - let checksum = input.substring(input.length - 6, input.length) + let input = paymentRequest.toLowerCase(); + let splitPosition = input.lastIndexOf("1"); + let humanReadablePart = input.substring(0, splitPosition); + let data = input.substring(splitPosition + 1, input.length - 6); + let checksum = input.substring(input.length - 6, input.length); if ( !verify_checksum(humanReadablePart, bech32ToFiveBitArray(data + checksum)) ) { - throw 'Malformed request: checksum is incorrect' // A reader MUST fail if the checksum is incorrect. + throw "Malformed request: checksum is incorrect"; // A reader MUST fail if the checksum is incorrect. } return { human_readable_part: decodeHumanReadablePart(humanReadablePart), data: decodeData(data, humanReadablePart), - checksum: checksum - } + checksum: checksum, + }; } function decodeHumanReadablePart(humanReadablePart) { - let prefixes = ['lnbc', 'lntb', 'lnbcrt', 'lnsb'] - let prefix - prefixes.forEach(value => { + let prefixes = ["lnbc", "lntb", "lnbcrt", "lnsb"]; + let prefix; + prefixes.forEach((value) => { if (humanReadablePart.substring(0, value.length) === value) { - prefix = value + prefix = value; } - }) - if (prefix == null) throw 'Malformed request: unknown prefix' // A reader MUST fail if it does not understand the prefix. + }); + if (prefix == null) throw "Malformed request: unknown prefix"; // A reader MUST fail if it does not understand the prefix. let amount = decodeAmount( humanReadablePart.substring(prefix.length, humanReadablePart.length) - ) + ); return { prefix: prefix, - amount: amount - } + amount: amount, + }; } function decodeData(data, humanReadablePart) { - let date32 = data.substring(0, 7) - let dateEpoch = bech32ToInt(date32) - let signature = data.substring(data.length - 104, data.length) - let tagData = data.substring(7, data.length - 104) - let decodedTags = decodeTags(tagData) - let value = bech32ToFiveBitArray(date32 + tagData) - value = fiveBitArrayTo8BitArray(value, true) - value = textToHexString(humanReadablePart).concat(byteArrayToHexString(value)) + let date32 = data.substring(0, 7); + let dateEpoch = bech32ToInt(date32); + let signature = data.substring(data.length - 104, data.length); + let tagData = data.substring(7, data.length - 104); + let decodedTags = decodeTags(tagData); + let value = bech32ToFiveBitArray(date32 + tagData); + value = fiveBitArrayTo8BitArray(value, true); + value = textToHexString(humanReadablePart).concat( + byteArrayToHexString(value) + ); return { time_stamp: dateEpoch, tags: decodedTags, signature: decodeSignature(signature), - signing_data: value - } + signing_data: value, + }; } function decodeSignature(signature) { - let data = fiveBitArrayTo8BitArray(bech32ToFiveBitArray(signature)) - let recoveryFlag = data[data.length - 1] - let r = byteArrayToHexString(data.slice(0, 32)) - let s = byteArrayToHexString(data.slice(32, data.length - 1)) + let data = fiveBitArrayTo8BitArray(bech32ToFiveBitArray(signature)); + let recoveryFlag = data[data.length - 1]; + let r = byteArrayToHexString(data.slice(0, 32)); + let s = byteArrayToHexString(data.slice(32, data.length - 1)); return { r: r, s: s, - recovery_flag: recoveryFlag - } + recovery_flag: recoveryFlag, + }; } function decodeAmount(str) { - let multiplier = str.charAt(str.length - 1) - let amount = str.substring(0, str.length - 1) - if (amount.substring(0, 1) === '0') { - throw 'Malformed request: amount cannot contain leading zeros' + let multiplier = str.charAt(str.length - 1); + let amount = str.substring(0, str.length - 1); + if (amount.substring(0, 1) === "0") { + throw "Malformed request: amount cannot contain leading zeros"; } - amount = Number(amount) + amount = Number(amount); if (amount < 0 || !Number.isInteger(amount)) { - throw 'Malformed request: amount must be a positive decimal integer' // A reader SHOULD fail if amount contains a non-digit + throw "Malformed request: amount must be a positive decimal integer"; // A reader SHOULD fail if amount contains a non-digit } switch (multiplier) { - case '': - return 'Any amount' // A reader SHOULD indicate if amount is unspecified - case 'p': - return amount / 10 - case 'n': - return amount * 100 - case 'u': - return amount * 100000 - case 'm': - return amount * 100000000 + case "": + return "Any amount"; // A reader SHOULD indicate if amount is unspecified + case "p": + return amount / 10; + case "n": + return amount * 100; + case "u": + return amount * 100000; + case "m": + return amount * 100000000; default: // A reader SHOULD fail if amount is followed by anything except a defined multiplier. - throw 'Malformed request: undefined amount multiplier' + throw "Malformed request: undefined amount multiplier"; } } function decodeTags(tagData) { - let tags = extractTags(tagData) - let decodedTags = [] - tags.forEach(value => + let tags = extractTags(tagData); + let decodedTags = []; + tags.forEach((value) => decodedTags.push(decodeTag(value.type, value.length, value.data)) - ) - return decodedTags + ); + return decodedTags; } function extractTags(str) { - let tags = [] + let tags = []; while (str.length > 0) { - let type = str.charAt(0) - let dataLength = bech32ToInt(str.substring(1, 3)) - let data = str.substring(3, dataLength + 3) + let type = str.charAt(0); + let dataLength = bech32ToInt(str.substring(1, 3)); + let data = str.substring(3, dataLength + 3); tags.push({ type: type, length: dataLength, - data: data - }) - str = str.substring(3 + dataLength, str.length) + data: data, + }); + str = str.substring(3 + dataLength, str.length); } - return tags + return tags; } function decodeTag(type, length, data) { switch (type) { - case 'p': - if (length !== 52) break // A reader MUST skip over a 'p' field that does not have data_length 52 + case "p": + if (length !== 52) break; // A reader MUST skip over a 'p' field that does not have data_length 52 return { type: type, length: length, - description: 'payment_hash', + description: "payment_hash", value: byteArrayToHexString( fiveBitArrayTo8BitArray(bech32ToFiveBitArray(data)) - ) - } - case 'd': + ), + }; + case "d": return { type: type, length: length, - description: 'description', - value: bech32ToUTF8String(data) - } - case 'n': - if (length !== 53) break // A reader MUST skip over a 'n' field that does not have data_length 53 + description: "description", + value: bech32ToUTF8String(data), + }; + case "n": + if (length !== 53) break; // A reader MUST skip over a 'n' field that does not have data_length 53 return { type: type, length: length, - description: 'payee_public_key', + description: "payee_public_key", value: byteArrayToHexString( fiveBitArrayTo8BitArray(bech32ToFiveBitArray(data)) - ) - } - case 'h': - if (length !== 52) break // A reader MUST skip over a 'h' field that does not have data_length 52 + ), + }; + case "h": + if (length !== 52) break; // A reader MUST skip over a 'h' field that does not have data_length 52 return { type: type, length: length, - description: 'description_hash', - value: data - } - case 'x': + description: "description_hash", + value: data, + }; + case "x": return { type: type, length: length, - description: 'expiry', - value: bech32ToInt(data) - } - case 'c': + description: "expiry", + value: bech32ToInt(data), + }; + case "c": return { type: type, length: length, - description: 'min_final_cltv_expiry', - value: bech32ToInt(data) - } - case 'f': - let version = bech32ToFiveBitArray(data.charAt(0))[0] - if (version < 0 || version > 18) break // a reader MUST skip over an f field with unknown version. - data = data.substring(1, data.length) + description: "min_final_cltv_expiry", + value: bech32ToInt(data), + }; + case "f": + let version = bech32ToFiveBitArray(data.charAt(0))[0]; + if (version < 0 || version > 18) break; // a reader MUST skip over an f field with unknown version. + data = data.substring(1, data.length); return { type: type, length: length, - description: 'fallback_address', + description: "fallback_address", value: { version: version, - fallback_address: data - } - } - case 'r': - data = fiveBitArrayTo8BitArray(bech32ToFiveBitArray(data)) - let pubkey = data.slice(0, 33) - let shortChannelId = data.slice(33, 41) - let feeBaseMsat = data.slice(41, 45) - let feeProportionalMillionths = data.slice(45, 49) - let cltvExpiryDelta = data.slice(49, 51) + fallback_address: data, + }, + }; + case "r": + data = fiveBitArrayTo8BitArray(bech32ToFiveBitArray(data)); + let pubkey = data.slice(0, 33); + let shortChannelId = data.slice(33, 41); + let feeBaseMsat = data.slice(41, 45); + let feeProportionalMillionths = data.slice(45, 49); + let cltvExpiryDelta = data.slice(49, 51); return { type: type, length: length, - description: 'routing_information', + description: "routing_information", value: { public_key: byteArrayToHexString(pubkey), short_channel_id: byteArrayToHexString(shortChannelId), @@ -203,145 +205,145 @@ function decodeTag(type, length, data) { fee_proportional_millionths: byteArrayToInt( feeProportionalMillionths ), - cltv_expiry_delta: byteArrayToInt(cltvExpiryDelta) - } - } + cltv_expiry_delta: byteArrayToInt(cltvExpiryDelta), + }, + }; default: // reader MUST skip over unknown fields } } function polymod(values) { - let GEN = [0x3b6a57b2, 0x26508e6d, 0x1ea119fa, 0x3d4233dd, 0x2a1462b3] - let chk = 1 - values.forEach(value => { - let b = chk >> 25 - chk = ((chk & 0x1ffffff) << 5) ^ value + let GEN = [0x3b6a57b2, 0x26508e6d, 0x1ea119fa, 0x3d4233dd, 0x2a1462b3]; + let chk = 1; + values.forEach((value) => { + let b = chk >> 25; + chk = ((chk & 0x1ffffff) << 5) ^ value; for (let i = 0; i < 5; i++) { if (((b >> i) & 1) === 1) { - chk ^= GEN[i] + chk ^= GEN[i]; } else { - chk ^= 0 + chk ^= 0; } } - }) - return chk + }); + return chk; } function expand(str) { - let array = [] + let array = []; for (let i = 0; i < str.length; i++) { - array.push(str.charCodeAt(i) >> 5) + array.push(str.charCodeAt(i) >> 5); } - array.push(0) + array.push(0); for (let i = 0; i < str.length; i++) { - array.push(str.charCodeAt(i) & 31) + array.push(str.charCodeAt(i) & 31); } - return array + return array; } function verify_checksum(hrp, data) { - hrp = expand(hrp) - let all = hrp.concat(data) - let bool = polymod(all) - return bool === 1 + hrp = expand(hrp); + let all = hrp.concat(data); + let bool = polymod(all); + return bool === 1; } -const bech32CharValues = 'qpzry9x8gf2tvdw0s3jn54khce6mua7l' +const bech32CharValues = "qpzry9x8gf2tvdw0s3jn54khce6mua7l"; function byteArrayToInt(byteArray) { - let value = 0 + let value = 0; for (let i = 0; i < byteArray.length; ++i) { - value = (value << 8) + byteArray[i] + value = (value << 8) + byteArray[i]; } - return value + return value; } function bech32ToInt(str) { - let sum = 0 + let sum = 0; for (let i = 0; i < str.length; i++) { - sum = sum * 32 - sum = sum + bech32CharValues.indexOf(str.charAt(i)) + sum = sum * 32; + sum = sum + bech32CharValues.indexOf(str.charAt(i)); } - return sum + return sum; } function bech32ToFiveBitArray(str) { - let array = [] + let array = []; for (let i = 0; i < str.length; i++) { - array.push(bech32CharValues.indexOf(str.charAt(i))) + array.push(bech32CharValues.indexOf(str.charAt(i))); } - return array + return array; } function fiveBitArrayTo8BitArray(int5Array, includeOverflow) { - let count = 0 - let buffer = 0 - let byteArray = [] - int5Array.forEach(value => { - buffer = (buffer << 5) + value - count += 5 + let count = 0; + let buffer = 0; + let byteArray = []; + int5Array.forEach((value) => { + buffer = (buffer << 5) + value; + count += 5; if (count >= 8) { - byteArray.push((buffer >> (count - 8)) & 255) - count -= 8 + byteArray.push((buffer >> (count - 8)) & 255); + count -= 8; } - }) + }); if (includeOverflow && count > 0) { - byteArray.push((buffer << (8 - count)) & 255) + byteArray.push((buffer << (8 - count)) & 255); } - return byteArray + return byteArray; } function bech32ToUTF8String(str) { - let int5Array = bech32ToFiveBitArray(str) - let byteArray = fiveBitArrayTo8BitArray(int5Array) + let int5Array = bech32ToFiveBitArray(str); + let byteArray = fiveBitArrayTo8BitArray(int5Array); - let utf8String = '' + let utf8String = ""; for (let i = 0; i < byteArray.length; i++) { - utf8String += '%' + ('0' + byteArray[i].toString(16)).slice(-2) + utf8String += "%" + ("0" + byteArray[i].toString(16)).slice(-2); } - return decodeURIComponent(utf8String) + return decodeURIComponent(utf8String); } function byteArrayToHexString(byteArray) { return Array.prototype.map .call(byteArray, function (byte) { - return ('0' + (byte & 0xff).toString(16)).slice(-2) + return ("0" + (byte & 0xff).toString(16)).slice(-2); }) - .join('') + .join(""); } function textToHexString(text) { - let hexString = '' + let hexString = ""; for (let i = 0; i < text.length; i++) { - hexString += text.charCodeAt(i).toString(16) + hexString += text.charCodeAt(i).toString(16); } - return hexString + return hexString; } function epochToDate(int) { - let date = new Date(int * 1000) - return date.toUTCString() + let date = new Date(int * 1000); + return date.toUTCString(); } function isEmptyOrSpaces(str) { - return str === null || str.match(/^ *$/) !== null + return str === null || str.match(/^ *$/) !== null; } function toFixed(x) { if (Math.abs(x) < 1.0) { - var e = parseInt(x.toString().split('e-')[1]) + var e = parseInt(x.toString().split("e-")[1]); if (e) { - x *= Math.pow(10, e - 1) - x = '0.' + new Array(e).join('0') + x.toString().substring(2) + x *= Math.pow(10, e - 1); + x = "0." + new Array(e).join("0") + x.toString().substring(2); } } else { - var e = parseInt(x.toString().split('+')[1]) + var e = parseInt(x.toString().split("+")[1]); if (e > 20) { - e -= 20 - x /= Math.pow(10, e) - x += new Array(e + 1).join('0') + e -= 20; + x /= Math.pow(10, e); + x += new Array(e + 1).join("0"); } } - return x + return x; } diff --git a/static/market/js/nostr.bundle.js b/static/market/js/nostr.bundle.js index 0d41aa7..d0bb48f 100644 --- a/static/market/js/nostr.bundle.js +++ b/static/market/js/nostr.bundle.js @@ -6,34 +6,52 @@ var NostrTools = (() => { var __getOwnPropNames = Object.getOwnPropertyNames; var __getProtoOf = Object.getPrototypeOf; var __hasOwnProp = Object.prototype.hasOwnProperty; - var __esm = (fn, res) => function __init() { - return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res; - }; - var __commonJS = (cb, mod2) => function __require() { - return mod2 || (0, cb[__getOwnPropNames(cb)[0]])((mod2 = { exports: {} }).exports, mod2), mod2.exports; - }; + var __esm = (fn, res) => + function __init() { + return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])((fn = 0))), res; + }; + var __commonJS = (cb, mod2) => + function __require() { + return ( + mod2 || + (0, cb[__getOwnPropNames(cb)[0]])( + (mod2 = { exports: {} }).exports, + mod2 + ), + mod2.exports + ); + }; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { + if ((from && typeof from === "object") || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + __defProp(to, key, { + get: () => from[key], + enumerable: + !(desc = __getOwnPropDesc(from, key)) || desc.enumerable, + }); } return to; }; - var __toESM = (mod2, isNodeMode, target) => (target = mod2 != null ? __create(__getProtoOf(mod2)) : {}, __copyProps( - isNodeMode || !mod2 || !mod2.__esModule ? __defProp(target, "default", { value: mod2, enumerable: true }) : target, - mod2 - )); - var __toCommonJS = (mod2) => __copyProps(__defProp({}, "__esModule", { value: true }), mod2); + var __toESM = (mod2, isNodeMode, target) => ( + (target = mod2 != null ? __create(__getProtoOf(mod2)) : {}), + __copyProps( + isNodeMode || !mod2 || !mod2.__esModule + ? __defProp(target, "default", { value: mod2, enumerable: true }) + : target, + mod2 + ) + ); + var __toCommonJS = (mod2) => + __copyProps(__defProp({}, "__esModule", { value: true }), mod2); // var init_define_process = __esm({ - ""() { - } + ""() {}, }); // node_modules/@scure/bip39/wordlists/english.js @@ -2091,7 +2109,7 @@ zebra zero zone zoo`.split("\n"); - } + }, }); // node_modules/@noble/hashes/_assert.js @@ -2100,7 +2118,13 @@ zoo`.split("\n"); "use strict"; init_define_process(); Object.defineProperty(exports, "__esModule", { value: true }); - exports.output = exports.exists = exports.hash = exports.bytes = exports.bool = exports.number = void 0; + exports.output = + exports.exists = + exports.hash = + exports.bytes = + exports.bool = + exports.number = + void 0; function number2(n) { if (!Number.isSafeInteger(n) || n < 0) throw new Error(`Wrong positive integer: ${n}`); @@ -2115,7 +2139,9 @@ zoo`.split("\n"); if (!(b instanceof Uint8Array)) throw new TypeError("Expected Uint8Array"); if (lengths.length > 0 && !lengths.includes(b.length)) - throw new TypeError(`Expected Uint8Array of length ${lengths}, not of length=${b.length}`); + throw new TypeError( + `Expected Uint8Array of length ${lengths}, not of length=${b.length}` + ); } exports.bytes = bytes2; function hash2(hash3) { @@ -2136,7 +2162,9 @@ zoo`.split("\n"); bytes2(out); const min = instance.outputLen; if (out.length < min) { - throw new Error(`digestInto() expects output buffer of length at least ${min}`); + throw new Error( + `digestInto() expects output buffer of length at least ${min}` + ); } } exports.output = output2; @@ -2146,10 +2174,10 @@ zoo`.split("\n"); bytes: bytes2, hash: hash2, exists: exists2, - output: output2 + output: output2, }; exports.default = assert2; - } + }, }); // node_modules/@noble/hashes/crypto.js @@ -2159,8 +2187,11 @@ zoo`.split("\n"); init_define_process(); Object.defineProperty(exports, "__esModule", { value: true }); exports.crypto = void 0; - exports.crypto = typeof globalThis === "object" && "crypto" in globalThis ? globalThis.crypto : void 0; - } + exports.crypto = + typeof globalThis === "object" && "crypto" in globalThis + ? globalThis.crypto + : void 0; + }, }); // node_modules/@noble/hashes/utils.js @@ -2169,20 +2200,47 @@ zoo`.split("\n"); "use strict"; init_define_process(); Object.defineProperty(exports, "__esModule", { value: true }); - exports.randomBytes = exports.wrapConstructorWithOpts = exports.wrapConstructor = exports.checkOpts = exports.Hash = exports.concatBytes = exports.toBytes = exports.utf8ToBytes = exports.asyncLoop = exports.nextTick = exports.hexToBytes = exports.bytesToHex = exports.isLE = exports.rotr = exports.createView = exports.u32 = exports.u8 = void 0; + exports.randomBytes = + exports.wrapConstructorWithOpts = + exports.wrapConstructor = + exports.checkOpts = + exports.Hash = + exports.concatBytes = + exports.toBytes = + exports.utf8ToBytes = + exports.asyncLoop = + exports.nextTick = + exports.hexToBytes = + exports.bytesToHex = + exports.isLE = + exports.rotr = + exports.createView = + exports.u32 = + exports.u8 = + void 0; var crypto_1 = require_crypto(); - var u8 = (arr) => new Uint8Array(arr.buffer, arr.byteOffset, arr.byteLength); + var u8 = (arr) => + new Uint8Array(arr.buffer, arr.byteOffset, arr.byteLength); exports.u8 = u8; - var u32 = (arr) => new Uint32Array(arr.buffer, arr.byteOffset, Math.floor(arr.byteLength / 4)); + var u32 = (arr) => + new Uint32Array( + arr.buffer, + arr.byteOffset, + Math.floor(arr.byteLength / 4) + ); exports.u32 = u32; - var createView2 = (arr) => new DataView(arr.buffer, arr.byteOffset, arr.byteLength); + var createView2 = (arr) => + new DataView(arr.buffer, arr.byteOffset, arr.byteLength); exports.createView = createView2; - var rotr2 = (word, shift) => word << 32 - shift | word >>> shift; + var rotr2 = (word, shift) => (word << (32 - shift)) | (word >>> shift); exports.rotr = rotr2; - exports.isLE = new Uint8Array(new Uint32Array([287454020]).buffer)[0] === 68; + exports.isLE = + new Uint8Array(new Uint32Array([287454020]).buffer)[0] === 68; if (!exports.isLE) throw new Error("Non little-endian hardware is not supported"); - var hexes3 = Array.from({ length: 256 }, (v, i) => i.toString(16).padStart(2, "0")); + var hexes3 = Array.from({ length: 256 }, (v, i) => + i.toString(16).padStart(2, "0") + ); function bytesToHex3(uint8a) { if (!(uint8a instanceof Uint8Array)) throw new Error("Uint8Array expected"); @@ -2195,7 +2253,9 @@ zoo`.split("\n"); exports.bytesToHex = bytesToHex3; function hexToBytes3(hex2) { if (typeof hex2 !== "string") { - throw new TypeError("hexToBytes: expected string, got " + typeof hex2); + throw new TypeError( + "hexToBytes: expected string, got " + typeof hex2 + ); } if (hex2.length % 2) throw new Error("hexToBytes: received invalid unpadded hex"); @@ -2211,16 +2271,14 @@ zoo`.split("\n"); return array; } exports.hexToBytes = hexToBytes3; - var nextTick = async () => { - }; + var nextTick = async () => {}; exports.nextTick = nextTick; async function asyncLoop(iters, tick, cb) { let ts = Date.now(); for (let i = 0; i < iters; i++) { cb(i); const diff = Date.now() - ts; - if (diff >= 0 && diff < tick) - continue; + if (diff >= 0 && diff < tick) continue; await (0, exports.nextTick)(); ts += diff; } @@ -2234,18 +2292,18 @@ zoo`.split("\n"); } exports.utf8ToBytes = utf8ToBytes3; function toBytes2(data) { - if (typeof data === "string") - data = utf8ToBytes3(data); + if (typeof data === "string") data = utf8ToBytes3(data); if (!(data instanceof Uint8Array)) - throw new TypeError(`Expected input type is Uint8Array (got ${typeof data})`); + throw new TypeError( + `Expected input type is Uint8Array (got ${typeof data})` + ); return data; } exports.toBytes = toBytes2; function concatBytes3(...arrays) { if (!arrays.every((a) => a instanceof Uint8Array)) throw new Error("Uint8Array list expected"); - if (arrays.length === 1) - return arrays[0]; + if (arrays.length === 1) return arrays[0]; const length = arrays.reduce((a, arr) => a + arr.length, 0); const result = new Uint8Array(length); for (let i = 0, pad = 0; i < arrays.length; i++) { @@ -2262,16 +2320,22 @@ zoo`.split("\n"); } }; exports.Hash = Hash2; - var isPlainObject = (obj) => Object.prototype.toString.call(obj) === "[object Object]" && obj.constructor === Object; + var isPlainObject = (obj) => + Object.prototype.toString.call(obj) === "[object Object]" && + obj.constructor === Object; function checkOpts(defaults, opts) { - if (opts !== void 0 && (typeof opts !== "object" || !isPlainObject(opts))) + if ( + opts !== void 0 && + (typeof opts !== "object" || !isPlainObject(opts)) + ) throw new TypeError("Options should be object or undefined"); const merged = Object.assign(defaults, opts); return merged; } exports.checkOpts = checkOpts; function wrapConstructor2(hashConstructor) { - const hashC = (message) => hashConstructor().update(toBytes2(message)).digest(); + const hashC = (message) => + hashConstructor().update(toBytes2(message)).digest(); const tmp = hashConstructor(); hashC.outputLen = tmp.outputLen; hashC.blockLen = tmp.blockLen; @@ -2280,7 +2344,8 @@ zoo`.split("\n"); } exports.wrapConstructor = wrapConstructor2; function wrapConstructorWithOpts(hashCons) { - const hashC = (msg, opts) => hashCons(opts).update(toBytes2(msg)).digest(); + const hashC = (msg, opts) => + hashCons(opts).update(toBytes2(msg)).digest(); const tmp = hashCons({}); hashC.outputLen = tmp.outputLen; hashC.blockLen = tmp.blockLen; @@ -2289,13 +2354,16 @@ zoo`.split("\n"); } exports.wrapConstructorWithOpts = wrapConstructorWithOpts; function randomBytes2(bytesLength = 32) { - if (crypto_1.crypto && typeof crypto_1.crypto.getRandomValues === "function") { + if ( + crypto_1.crypto && + typeof crypto_1.crypto.getRandomValues === "function" + ) { return crypto_1.crypto.getRandomValues(new Uint8Array(bytesLength)); } throw new Error("crypto.getRandomValues must be defined"); } exports.randomBytes = randomBytes2; - } + }, }); // node_modules/@noble/hashes/hmac.js @@ -2316,18 +2384,20 @@ zoo`.split("\n"); const key = (0, utils_js_1.toBytes)(_key); this.iHash = hash2.create(); if (typeof this.iHash.update !== "function") - throw new TypeError("Expected instance of class which extends utils.Hash"); + throw new TypeError( + "Expected instance of class which extends utils.Hash" + ); this.blockLen = this.iHash.blockLen; this.outputLen = this.iHash.outputLen; const blockLen = this.blockLen; const pad = new Uint8Array(blockLen); - pad.set(key.length > blockLen ? hash2.create().update(key).digest() : key); - for (let i = 0; i < pad.length; i++) - pad[i] ^= 54; + pad.set( + key.length > blockLen ? hash2.create().update(key).digest() : key + ); + for (let i = 0; i < pad.length; i++) pad[i] ^= 54; this.iHash.update(pad); this.oHash = hash2.create(); - for (let i = 0; i < pad.length; i++) - pad[i] ^= 54 ^ 92; + for (let i = 0; i < pad.length; i++) pad[i] ^= 54 ^ 92; this.oHash.update(pad); pad.fill(0); } @@ -2352,7 +2422,8 @@ zoo`.split("\n"); } _cloneInto(to) { to || (to = Object.create(Object.getPrototypeOf(this), {})); - const { oHash, iHash, finished, destroyed, blockLen, outputLen } = this; + const { oHash, iHash, finished, destroyed, blockLen, outputLen } = + this; to = to; to.finished = finished; to.destroyed = destroyed; @@ -2368,10 +2439,11 @@ zoo`.split("\n"); this.iHash.destroy(); } }; - var hmac2 = (hash2, key, message) => new HMAC2(hash2, key).update(message).digest(); + var hmac2 = (hash2, key, message) => + new HMAC2(hash2, key).update(message).digest(); exports.hmac = hmac2; exports.hmac.create = (hash2, key) => new HMAC2(hash2, key); - } + }, }); // node_modules/@noble/hashes/pbkdf2.js @@ -2386,13 +2458,15 @@ zoo`.split("\n"); var utils_js_1 = require_utils(); function pbkdf2Init(hash2, _password, _salt, _opts) { _assert_js_1.default.hash(hash2); - const opts = (0, utils_js_1.checkOpts)({ dkLen: 32, asyncTick: 10 }, _opts); + const opts = (0, utils_js_1.checkOpts)( + { dkLen: 32, asyncTick: 10 }, + _opts + ); const { c, dkLen, asyncTick } = opts; _assert_js_1.default.number(c); _assert_js_1.default.number(dkLen); _assert_js_1.default.number(asyncTick); - if (c < 1) - throw new Error("PBKDF2: iterations (c) should be >= 1"); + if (c < 1) throw new Error("PBKDF2: iterations (c) should be >= 1"); const password = (0, utils_js_1.toBytes)(_password); const salt = (0, utils_js_1.toBytes)(_salt); const DK = new Uint8Array(dkLen); @@ -2403,13 +2477,17 @@ zoo`.split("\n"); function pbkdf2Output(PRF, PRFSalt, DK, prfW, u) { PRF.destroy(); PRFSalt.destroy(); - if (prfW) - prfW.destroy(); + if (prfW) prfW.destroy(); u.fill(0); return DK; } function pbkdf2(hash2, password, salt, opts) { - const { c, dkLen, DK, PRF, PRFSalt } = pbkdf2Init(hash2, password, salt, opts); + const { c, dkLen, DK, PRF, PRFSalt } = pbkdf2Init( + hash2, + password, + salt, + opts + ); let prfW; const arr = new Uint8Array(4); const view = (0, utils_js_1.createView)(arr); @@ -2421,15 +2499,19 @@ zoo`.split("\n"); Ti.set(u.subarray(0, Ti.length)); for (let ui = 1; ui < c; ui++) { PRF._cloneInto(prfW).update(u).digestInto(u); - for (let i = 0; i < Ti.length; i++) - Ti[i] ^= u[i]; + for (let i = 0; i < Ti.length; i++) Ti[i] ^= u[i]; } } return pbkdf2Output(PRF, PRFSalt, DK, prfW, u); } exports.pbkdf2 = pbkdf2; async function pbkdf2Async(hash2, password, salt, opts) { - const { c, dkLen, asyncTick, DK, PRF, PRFSalt } = pbkdf2Init(hash2, password, salt, opts); + const { c, dkLen, asyncTick, DK, PRF, PRFSalt } = pbkdf2Init( + hash2, + password, + salt, + opts + ); let prfW; const arr = new Uint8Array(4); const view = (0, utils_js_1.createView)(arr); @@ -2441,14 +2523,13 @@ zoo`.split("\n"); Ti.set(u.subarray(0, Ti.length)); await (0, utils_js_1.asyncLoop)(c - 1, asyncTick, (i) => { PRF._cloneInto(prfW).update(u).digestInto(u); - for (let i2 = 0; i2 < Ti.length; i2++) - Ti[i2] ^= u[i2]; + for (let i2 = 0; i2 < Ti.length; i2++) Ti[i2] ^= u[i2]; }); } return pbkdf2Output(PRF, PRFSalt, DK, prfW, u); } exports.pbkdf2Async = pbkdf2Async; - } + }, }); // node_modules/@noble/hashes/_sha2.js @@ -2465,7 +2546,7 @@ zoo`.split("\n"); return view.setBigUint64(byteOffset, value, isLE2); const _32n2 = BigInt(32); const _u32_max = BigInt(4294967295); - const wh = Number(value >> _32n2 & _u32_max); + const wh = Number((value >> _32n2) & _u32_max); const wl = Number(value & _u32_max); const h = isLE2 ? 4 : 0; const l = isLE2 ? 0 : 4; @@ -2523,8 +2604,7 @@ zoo`.split("\n"); this.process(view, 0); pos = 0; } - for (let i = pos; i < blockLen; i++) - buffer[i] = 0; + for (let i = pos; i < blockLen; i++) buffer[i] = 0; setBigUint642(view, blockLen - 8, BigInt(this.length * 8), isLE2); this.process(view, 0); const oview = (0, utils_js_1.createView)(out); @@ -2553,13 +2633,12 @@ zoo`.split("\n"); to.pos = pos; to.finished = finished; to.destroyed = destroyed; - if (length % blockLen) - to.buffer.set(buffer); + if (length % blockLen) to.buffer.set(buffer); return to; } }; exports.SHA2 = SHA22; - } + }, }); // node_modules/@noble/hashes/sha256.js @@ -2571,83 +2650,24 @@ zoo`.split("\n"); exports.sha224 = exports.sha256 = void 0; var _sha2_js_1 = require_sha2(); var utils_js_1 = require_utils(); - var Chi2 = (a, b, c) => a & b ^ ~a & c; - var Maj2 = (a, b, c) => a & b ^ a & c ^ b & c; + var Chi2 = (a, b, c) => (a & b) ^ (~a & c); + var Maj2 = (a, b, c) => (a & b) ^ (a & c) ^ (b & c); var SHA256_K2 = new Uint32Array([ - 1116352408, - 1899447441, - 3049323471, - 3921009573, - 961987163, - 1508970993, - 2453635748, - 2870763221, - 3624381080, - 310598401, - 607225278, - 1426881987, - 1925078388, - 2162078206, - 2614888103, - 3248222580, - 3835390401, - 4022224774, - 264347078, - 604807628, - 770255983, - 1249150122, - 1555081692, - 1996064986, - 2554220882, - 2821834349, - 2952996808, - 3210313671, - 3336571891, - 3584528711, - 113926993, - 338241895, - 666307205, - 773529912, - 1294757372, - 1396182291, - 1695183700, - 1986661051, - 2177026350, - 2456956037, - 2730485921, - 2820302411, - 3259730800, - 3345764771, - 3516065817, - 3600352804, - 4094571909, - 275423344, - 430227734, - 506948616, - 659060556, - 883997877, - 958139571, - 1322822218, - 1537002063, - 1747873779, - 1955562222, - 2024104815, - 2227730452, - 2361852424, - 2428436474, - 2756734187, - 3204031479, - 3329325298 + 1116352408, 1899447441, 3049323471, 3921009573, 961987163, 1508970993, + 2453635748, 2870763221, 3624381080, 310598401, 607225278, 1426881987, + 1925078388, 2162078206, 2614888103, 3248222580, 3835390401, 4022224774, + 264347078, 604807628, 770255983, 1249150122, 1555081692, 1996064986, + 2554220882, 2821834349, 2952996808, 3210313671, 3336571891, 3584528711, + 113926993, 338241895, 666307205, 773529912, 1294757372, 1396182291, + 1695183700, 1986661051, 2177026350, 2456956037, 2730485921, 2820302411, + 3259730800, 3345764771, 3516065817, 3600352804, 4094571909, 275423344, + 430227734, 506948616, 659060556, 883997877, 958139571, 1322822218, + 1537002063, 1747873779, 1955562222, 2024104815, 2227730452, 2361852424, + 2428436474, 2756734187, 3204031479, 3329325298, ]); var IV2 = new Uint32Array([ - 1779033703, - 3144134277, - 1013904242, - 2773480762, - 1359893119, - 2600822924, - 528734635, - 1541459225 + 1779033703, 3144134277, 1013904242, 2773480762, 1359893119, 2600822924, + 528734635, 1541459225, ]); var SHA256_W2 = new Uint32Array(64); var SHA2562 = class extends _sha2_js_1.SHA2 { @@ -2682,33 +2702,46 @@ zoo`.split("\n"); for (let i = 16; i < 64; i++) { const W15 = SHA256_W2[i - 15]; const W2 = SHA256_W2[i - 2]; - const s0 = (0, utils_js_1.rotr)(W15, 7) ^ (0, utils_js_1.rotr)(W15, 18) ^ W15 >>> 3; - const s1 = (0, utils_js_1.rotr)(W2, 17) ^ (0, utils_js_1.rotr)(W2, 19) ^ W2 >>> 10; - SHA256_W2[i] = s1 + SHA256_W2[i - 7] + s0 + SHA256_W2[i - 16] | 0; + const s0 = + (0, utils_js_1.rotr)(W15, 7) ^ + (0, utils_js_1.rotr)(W15, 18) ^ + (W15 >>> 3); + const s1 = + (0, utils_js_1.rotr)(W2, 17) ^ + (0, utils_js_1.rotr)(W2, 19) ^ + (W2 >>> 10); + SHA256_W2[i] = (s1 + SHA256_W2[i - 7] + s0 + SHA256_W2[i - 16]) | 0; } let { A, B, C, D, E, F, G, H } = this; for (let i = 0; i < 64; i++) { - const sigma1 = (0, utils_js_1.rotr)(E, 6) ^ (0, utils_js_1.rotr)(E, 11) ^ (0, utils_js_1.rotr)(E, 25); - const T1 = H + sigma1 + Chi2(E, F, G) + SHA256_K2[i] + SHA256_W2[i] | 0; - const sigma0 = (0, utils_js_1.rotr)(A, 2) ^ (0, utils_js_1.rotr)(A, 13) ^ (0, utils_js_1.rotr)(A, 22); - const T2 = sigma0 + Maj2(A, B, C) | 0; + const sigma1 = + (0, utils_js_1.rotr)(E, 6) ^ + (0, utils_js_1.rotr)(E, 11) ^ + (0, utils_js_1.rotr)(E, 25); + const T1 = + (H + sigma1 + Chi2(E, F, G) + SHA256_K2[i] + SHA256_W2[i]) | 0; + const sigma0 = + (0, utils_js_1.rotr)(A, 2) ^ + (0, utils_js_1.rotr)(A, 13) ^ + (0, utils_js_1.rotr)(A, 22); + const T2 = (sigma0 + Maj2(A, B, C)) | 0; H = G; G = F; F = E; - E = D + T1 | 0; + E = (D + T1) | 0; D = C; C = B; B = A; - A = T1 + T2 | 0; + A = (T1 + T2) | 0; } - A = A + this.A | 0; - B = B + this.B | 0; - C = C + this.C | 0; - D = D + this.D | 0; - E = E + this.E | 0; - F = F + this.F | 0; - G = G + this.G | 0; - H = H + this.H | 0; + A = (A + this.A) | 0; + B = (B + this.B) | 0; + C = (C + this.C) | 0; + D = (D + this.D) | 0; + E = (E + this.E) | 0; + F = (F + this.F) | 0; + G = (G + this.G) | 0; + H = (H + this.H) | 0; this.set(A, B, C, D, E, F, G, H); } roundClean() { @@ -2735,7 +2768,7 @@ zoo`.split("\n"); }; exports.sha256 = (0, utils_js_1.wrapConstructor)(() => new SHA2562()); exports.sha224 = (0, utils_js_1.wrapConstructor)(() => new SHA2242()); - } + }, }); // node_modules/@noble/hashes/_u64.js @@ -2749,8 +2782,14 @@ zoo`.split("\n"); var _32n2 = BigInt(32); function fromBig2(n, le = false) { if (le) - return { h: Number(n & U32_MASK642), l: Number(n >> _32n2 & U32_MASK642) }; - return { h: Number(n >> _32n2 & U32_MASK642) | 0, l: Number(n & U32_MASK642) | 0 }; + return { + h: Number(n & U32_MASK642), + l: Number((n >> _32n2) & U32_MASK642), + }; + return { + h: Number((n >> _32n2) & U32_MASK642) | 0, + l: Number(n & U32_MASK642) | 0, + }; } exports.fromBig = fromBig2; function split2(lst, le = false) { @@ -2763,31 +2802,36 @@ zoo`.split("\n"); return [Ah, Al]; } exports.split = split2; - var toBig2 = (h, l) => BigInt(h >>> 0) << _32n2 | BigInt(l >>> 0); + var toBig2 = (h, l) => (BigInt(h >>> 0) << _32n2) | BigInt(l >>> 0); exports.toBig = toBig2; var shrSH2 = (h, l, s) => h >>> s; - var shrSL2 = (h, l, s) => h << 32 - s | l >>> s; - var rotrSH2 = (h, l, s) => h >>> s | l << 32 - s; - var rotrSL2 = (h, l, s) => h << 32 - s | l >>> s; - var rotrBH2 = (h, l, s) => h << 64 - s | l >>> s - 32; - var rotrBL2 = (h, l, s) => h >>> s - 32 | l << 64 - s; + var shrSL2 = (h, l, s) => (h << (32 - s)) | (l >>> s); + var rotrSH2 = (h, l, s) => (h >>> s) | (l << (32 - s)); + var rotrSL2 = (h, l, s) => (h << (32 - s)) | (l >>> s); + var rotrBH2 = (h, l, s) => (h << (64 - s)) | (l >>> (s - 32)); + var rotrBL2 = (h, l, s) => (h >>> (s - 32)) | (l << (64 - s)); var rotr32H2 = (h, l) => l; var rotr32L2 = (h, l) => h; - var rotlSH2 = (h, l, s) => h << s | l >>> 32 - s; - var rotlSL2 = (h, l, s) => l << s | h >>> 32 - s; - var rotlBH2 = (h, l, s) => l << s - 32 | h >>> 64 - s; - var rotlBL2 = (h, l, s) => h << s - 32 | l >>> 64 - s; + var rotlSH2 = (h, l, s) => (h << s) | (l >>> (32 - s)); + var rotlSL2 = (h, l, s) => (l << s) | (h >>> (32 - s)); + var rotlBH2 = (h, l, s) => (l << (s - 32)) | (h >>> (64 - s)); + var rotlBL2 = (h, l, s) => (h << (s - 32)) | (l >>> (64 - s)); function add2(Ah, Al, Bh, Bl) { const l = (Al >>> 0) + (Bl >>> 0); - return { h: Ah + Bh + (l / 2 ** 32 | 0) | 0, l: l | 0 }; + return { h: (Ah + Bh + ((l / 2 ** 32) | 0)) | 0, l: l | 0 }; } exports.add = add2; var add3L2 = (Al, Bl, Cl) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0); - var add3H2 = (low, Ah, Bh, Ch) => Ah + Bh + Ch + (low / 2 ** 32 | 0) | 0; - var add4L2 = (Al, Bl, Cl, Dl) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0); - var add4H2 = (low, Ah, Bh, Ch, Dh) => Ah + Bh + Ch + Dh + (low / 2 ** 32 | 0) | 0; - var add5L2 = (Al, Bl, Cl, Dl, El) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0) + (El >>> 0); - var add5H2 = (low, Ah, Bh, Ch, Dh, Eh) => Ah + Bh + Ch + Dh + Eh + (low / 2 ** 32 | 0) | 0; + var add3H2 = (low, Ah, Bh, Ch) => + (Ah + Bh + Ch + ((low / 2 ** 32) | 0)) | 0; + var add4L2 = (Al, Bl, Cl, Dl) => + (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0); + var add4H2 = (low, Ah, Bh, Ch, Dh) => + (Ah + Bh + Ch + Dh + ((low / 2 ** 32) | 0)) | 0; + var add5L2 = (Al, Bl, Cl, Dl, El) => + (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0) + (El >>> 0); + var add5H2 = (low, Ah, Bh, Ch, Dh, Eh) => + (Ah + Bh + Ch + Dh + Eh + ((low / 2 ** 32) | 0)) | 0; var u642 = { fromBig: fromBig2, split: split2, @@ -2810,10 +2854,10 @@ zoo`.split("\n"); add4L: add4L2, add4H: add4H2, add5H: add5H2, - add5L: add5L2 + add5L: add5L2, }; exports.default = u642; - } + }, }); // node_modules/@noble/hashes/sha512.js @@ -2822,92 +2866,99 @@ zoo`.split("\n"); "use strict"; init_define_process(); Object.defineProperty(exports, "__esModule", { value: true }); - exports.sha384 = exports.sha512_256 = exports.sha512_224 = exports.sha512 = exports.SHA512 = void 0; + exports.sha384 = + exports.sha512_256 = + exports.sha512_224 = + exports.sha512 = + exports.SHA512 = + void 0; var _sha2_js_1 = require_sha2(); var _u64_js_1 = require_u64(); var utils_js_1 = require_utils(); - var [SHA512_Kh2, SHA512_Kl2] = _u64_js_1.default.split([ - "0x428a2f98d728ae22", - "0x7137449123ef65cd", - "0xb5c0fbcfec4d3b2f", - "0xe9b5dba58189dbbc", - "0x3956c25bf348b538", - "0x59f111f1b605d019", - "0x923f82a4af194f9b", - "0xab1c5ed5da6d8118", - "0xd807aa98a3030242", - "0x12835b0145706fbe", - "0x243185be4ee4b28c", - "0x550c7dc3d5ffb4e2", - "0x72be5d74f27b896f", - "0x80deb1fe3b1696b1", - "0x9bdc06a725c71235", - "0xc19bf174cf692694", - "0xe49b69c19ef14ad2", - "0xefbe4786384f25e3", - "0x0fc19dc68b8cd5b5", - "0x240ca1cc77ac9c65", - "0x2de92c6f592b0275", - "0x4a7484aa6ea6e483", - "0x5cb0a9dcbd41fbd4", - "0x76f988da831153b5", - "0x983e5152ee66dfab", - "0xa831c66d2db43210", - "0xb00327c898fb213f", - "0xbf597fc7beef0ee4", - "0xc6e00bf33da88fc2", - "0xd5a79147930aa725", - "0x06ca6351e003826f", - "0x142929670a0e6e70", - "0x27b70a8546d22ffc", - "0x2e1b21385c26c926", - "0x4d2c6dfc5ac42aed", - "0x53380d139d95b3df", - "0x650a73548baf63de", - "0x766a0abb3c77b2a8", - "0x81c2c92e47edaee6", - "0x92722c851482353b", - "0xa2bfe8a14cf10364", - "0xa81a664bbc423001", - "0xc24b8b70d0f89791", - "0xc76c51a30654be30", - "0xd192e819d6ef5218", - "0xd69906245565a910", - "0xf40e35855771202a", - "0x106aa07032bbd1b8", - "0x19a4c116b8d2d0c8", - "0x1e376c085141ab53", - "0x2748774cdf8eeb99", - "0x34b0bcb5e19b48a8", - "0x391c0cb3c5c95a63", - "0x4ed8aa4ae3418acb", - "0x5b9cca4f7763e373", - "0x682e6ff3d6b2b8a3", - "0x748f82ee5defb2fc", - "0x78a5636f43172f60", - "0x84c87814a1f0ab72", - "0x8cc702081a6439ec", - "0x90befffa23631e28", - "0xa4506cebde82bde9", - "0xbef9a3f7b2c67915", - "0xc67178f2e372532b", - "0xca273eceea26619c", - "0xd186b8c721c0c207", - "0xeada7dd6cde0eb1e", - "0xf57d4f7fee6ed178", - "0x06f067aa72176fba", - "0x0a637dc5a2c898a6", - "0x113f9804bef90dae", - "0x1b710b35131c471b", - "0x28db77f523047d84", - "0x32caab7b40c72493", - "0x3c9ebe0a15c9bebc", - "0x431d67c49c100d4c", - "0x4cc5d4becb3e42b6", - "0x597f299cfc657e2a", - "0x5fcb6fab3ad6faec", - "0x6c44198c4a475817" - ].map((n) => BigInt(n))); + var [SHA512_Kh2, SHA512_Kl2] = _u64_js_1.default.split( + [ + "0x428a2f98d728ae22", + "0x7137449123ef65cd", + "0xb5c0fbcfec4d3b2f", + "0xe9b5dba58189dbbc", + "0x3956c25bf348b538", + "0x59f111f1b605d019", + "0x923f82a4af194f9b", + "0xab1c5ed5da6d8118", + "0xd807aa98a3030242", + "0x12835b0145706fbe", + "0x243185be4ee4b28c", + "0x550c7dc3d5ffb4e2", + "0x72be5d74f27b896f", + "0x80deb1fe3b1696b1", + "0x9bdc06a725c71235", + "0xc19bf174cf692694", + "0xe49b69c19ef14ad2", + "0xefbe4786384f25e3", + "0x0fc19dc68b8cd5b5", + "0x240ca1cc77ac9c65", + "0x2de92c6f592b0275", + "0x4a7484aa6ea6e483", + "0x5cb0a9dcbd41fbd4", + "0x76f988da831153b5", + "0x983e5152ee66dfab", + "0xa831c66d2db43210", + "0xb00327c898fb213f", + "0xbf597fc7beef0ee4", + "0xc6e00bf33da88fc2", + "0xd5a79147930aa725", + "0x06ca6351e003826f", + "0x142929670a0e6e70", + "0x27b70a8546d22ffc", + "0x2e1b21385c26c926", + "0x4d2c6dfc5ac42aed", + "0x53380d139d95b3df", + "0x650a73548baf63de", + "0x766a0abb3c77b2a8", + "0x81c2c92e47edaee6", + "0x92722c851482353b", + "0xa2bfe8a14cf10364", + "0xa81a664bbc423001", + "0xc24b8b70d0f89791", + "0xc76c51a30654be30", + "0xd192e819d6ef5218", + "0xd69906245565a910", + "0xf40e35855771202a", + "0x106aa07032bbd1b8", + "0x19a4c116b8d2d0c8", + "0x1e376c085141ab53", + "0x2748774cdf8eeb99", + "0x34b0bcb5e19b48a8", + "0x391c0cb3c5c95a63", + "0x4ed8aa4ae3418acb", + "0x5b9cca4f7763e373", + "0x682e6ff3d6b2b8a3", + "0x748f82ee5defb2fc", + "0x78a5636f43172f60", + "0x84c87814a1f0ab72", + "0x8cc702081a6439ec", + "0x90befffa23631e28", + "0xa4506cebde82bde9", + "0xbef9a3f7b2c67915", + "0xc67178f2e372532b", + "0xca273eceea26619c", + "0xd186b8c721c0c207", + "0xeada7dd6cde0eb1e", + "0xf57d4f7fee6ed178", + "0x06f067aa72176fba", + "0x0a637dc5a2c898a6", + "0x113f9804bef90dae", + "0x1b710b35131c471b", + "0x28db77f523047d84", + "0x32caab7b40c72493", + "0x3c9ebe0a15c9bebc", + "0x431d67c49c100d4c", + "0x4cc5d4becb3e42b6", + "0x597f299cfc657e2a", + "0x5fcb6fab3ad6faec", + "0x6c44198c4a475817", + ].map((n) => BigInt(n)) + ); var SHA512_W_H2 = new Uint32Array(80); var SHA512_W_L2 = new Uint32Array(80); var SHA5122 = class extends _sha2_js_1.SHA2 { @@ -2931,8 +2982,42 @@ zoo`.split("\n"); this.Hl = 327033209 | 0; } get() { - const { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this; - return [Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl]; + const { + Ah, + Al, + Bh, + Bl, + Ch, + Cl, + Dh, + Dl, + Eh, + El, + Fh, + Fl, + Gh, + Gl, + Hh, + Hl, + } = this; + return [ + Ah, + Al, + Bh, + Bl, + Ch, + Cl, + Dh, + Dl, + Eh, + El, + Fh, + Fl, + Gh, + Gl, + Hh, + Hl, + ]; } set(Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl) { this.Ah = Ah | 0; @@ -2955,42 +3040,112 @@ zoo`.split("\n"); process(view, offset) { for (let i = 0; i < 16; i++, offset += 4) { SHA512_W_H2[i] = view.getUint32(offset); - SHA512_W_L2[i] = view.getUint32(offset += 4); + SHA512_W_L2[i] = view.getUint32((offset += 4)); } for (let i = 16; i < 80; i++) { const W15h = SHA512_W_H2[i - 15] | 0; const W15l = SHA512_W_L2[i - 15] | 0; - const s0h = _u64_js_1.default.rotrSH(W15h, W15l, 1) ^ _u64_js_1.default.rotrSH(W15h, W15l, 8) ^ _u64_js_1.default.shrSH(W15h, W15l, 7); - const s0l = _u64_js_1.default.rotrSL(W15h, W15l, 1) ^ _u64_js_1.default.rotrSL(W15h, W15l, 8) ^ _u64_js_1.default.shrSL(W15h, W15l, 7); + const s0h = + _u64_js_1.default.rotrSH(W15h, W15l, 1) ^ + _u64_js_1.default.rotrSH(W15h, W15l, 8) ^ + _u64_js_1.default.shrSH(W15h, W15l, 7); + const s0l = + _u64_js_1.default.rotrSL(W15h, W15l, 1) ^ + _u64_js_1.default.rotrSL(W15h, W15l, 8) ^ + _u64_js_1.default.shrSL(W15h, W15l, 7); const W2h = SHA512_W_H2[i - 2] | 0; const W2l = SHA512_W_L2[i - 2] | 0; - const s1h = _u64_js_1.default.rotrSH(W2h, W2l, 19) ^ _u64_js_1.default.rotrBH(W2h, W2l, 61) ^ _u64_js_1.default.shrSH(W2h, W2l, 6); - const s1l = _u64_js_1.default.rotrSL(W2h, W2l, 19) ^ _u64_js_1.default.rotrBL(W2h, W2l, 61) ^ _u64_js_1.default.shrSL(W2h, W2l, 6); - const SUMl = _u64_js_1.default.add4L(s0l, s1l, SHA512_W_L2[i - 7], SHA512_W_L2[i - 16]); - const SUMh = _u64_js_1.default.add4H(SUMl, s0h, s1h, SHA512_W_H2[i - 7], SHA512_W_H2[i - 16]); + const s1h = + _u64_js_1.default.rotrSH(W2h, W2l, 19) ^ + _u64_js_1.default.rotrBH(W2h, W2l, 61) ^ + _u64_js_1.default.shrSH(W2h, W2l, 6); + const s1l = + _u64_js_1.default.rotrSL(W2h, W2l, 19) ^ + _u64_js_1.default.rotrBL(W2h, W2l, 61) ^ + _u64_js_1.default.shrSL(W2h, W2l, 6); + const SUMl = _u64_js_1.default.add4L( + s0l, + s1l, + SHA512_W_L2[i - 7], + SHA512_W_L2[i - 16] + ); + const SUMh = _u64_js_1.default.add4H( + SUMl, + s0h, + s1h, + SHA512_W_H2[i - 7], + SHA512_W_H2[i - 16] + ); SHA512_W_H2[i] = SUMh | 0; SHA512_W_L2[i] = SUMl | 0; } - let { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this; + let { + Ah, + Al, + Bh, + Bl, + Ch, + Cl, + Dh, + Dl, + Eh, + El, + Fh, + Fl, + Gh, + Gl, + Hh, + Hl, + } = this; for (let i = 0; i < 80; i++) { - const sigma1h = _u64_js_1.default.rotrSH(Eh, El, 14) ^ _u64_js_1.default.rotrSH(Eh, El, 18) ^ _u64_js_1.default.rotrBH(Eh, El, 41); - const sigma1l = _u64_js_1.default.rotrSL(Eh, El, 14) ^ _u64_js_1.default.rotrSL(Eh, El, 18) ^ _u64_js_1.default.rotrBL(Eh, El, 41); - const CHIh = Eh & Fh ^ ~Eh & Gh; - const CHIl = El & Fl ^ ~El & Gl; - const T1ll = _u64_js_1.default.add5L(Hl, sigma1l, CHIl, SHA512_Kl2[i], SHA512_W_L2[i]); - const T1h = _u64_js_1.default.add5H(T1ll, Hh, sigma1h, CHIh, SHA512_Kh2[i], SHA512_W_H2[i]); + const sigma1h = + _u64_js_1.default.rotrSH(Eh, El, 14) ^ + _u64_js_1.default.rotrSH(Eh, El, 18) ^ + _u64_js_1.default.rotrBH(Eh, El, 41); + const sigma1l = + _u64_js_1.default.rotrSL(Eh, El, 14) ^ + _u64_js_1.default.rotrSL(Eh, El, 18) ^ + _u64_js_1.default.rotrBL(Eh, El, 41); + const CHIh = (Eh & Fh) ^ (~Eh & Gh); + const CHIl = (El & Fl) ^ (~El & Gl); + const T1ll = _u64_js_1.default.add5L( + Hl, + sigma1l, + CHIl, + SHA512_Kl2[i], + SHA512_W_L2[i] + ); + const T1h = _u64_js_1.default.add5H( + T1ll, + Hh, + sigma1h, + CHIh, + SHA512_Kh2[i], + SHA512_W_H2[i] + ); const T1l = T1ll | 0; - const sigma0h = _u64_js_1.default.rotrSH(Ah, Al, 28) ^ _u64_js_1.default.rotrBH(Ah, Al, 34) ^ _u64_js_1.default.rotrBH(Ah, Al, 39); - const sigma0l = _u64_js_1.default.rotrSL(Ah, Al, 28) ^ _u64_js_1.default.rotrBL(Ah, Al, 34) ^ _u64_js_1.default.rotrBL(Ah, Al, 39); - const MAJh = Ah & Bh ^ Ah & Ch ^ Bh & Ch; - const MAJl = Al & Bl ^ Al & Cl ^ Bl & Cl; + const sigma0h = + _u64_js_1.default.rotrSH(Ah, Al, 28) ^ + _u64_js_1.default.rotrBH(Ah, Al, 34) ^ + _u64_js_1.default.rotrBH(Ah, Al, 39); + const sigma0l = + _u64_js_1.default.rotrSL(Ah, Al, 28) ^ + _u64_js_1.default.rotrBL(Ah, Al, 34) ^ + _u64_js_1.default.rotrBL(Ah, Al, 39); + const MAJh = (Ah & Bh) ^ (Ah & Ch) ^ (Bh & Ch); + const MAJl = (Al & Bl) ^ (Al & Cl) ^ (Bl & Cl); Hh = Gh | 0; Hl = Gl | 0; Gh = Fh | 0; Gl = Fl | 0; Fh = Eh | 0; Fl = El | 0; - ({ h: Eh, l: El } = _u64_js_1.default.add(Dh | 0, Dl | 0, T1h | 0, T1l | 0)); + ({ h: Eh, l: El } = _u64_js_1.default.add( + Dh | 0, + Dl | 0, + T1h | 0, + T1l | 0 + )); Dh = Ch | 0; Dl = Cl | 0; Ch = Bh | 0; @@ -3001,15 +3156,72 @@ zoo`.split("\n"); Ah = _u64_js_1.default.add3H(All, T1h, sigma0h, MAJh); Al = All | 0; } - ({ h: Ah, l: Al } = _u64_js_1.default.add(this.Ah | 0, this.Al | 0, Ah | 0, Al | 0)); - ({ h: Bh, l: Bl } = _u64_js_1.default.add(this.Bh | 0, this.Bl | 0, Bh | 0, Bl | 0)); - ({ h: Ch, l: Cl } = _u64_js_1.default.add(this.Ch | 0, this.Cl | 0, Ch | 0, Cl | 0)); - ({ h: Dh, l: Dl } = _u64_js_1.default.add(this.Dh | 0, this.Dl | 0, Dh | 0, Dl | 0)); - ({ h: Eh, l: El } = _u64_js_1.default.add(this.Eh | 0, this.El | 0, Eh | 0, El | 0)); - ({ h: Fh, l: Fl } = _u64_js_1.default.add(this.Fh | 0, this.Fl | 0, Fh | 0, Fl | 0)); - ({ h: Gh, l: Gl } = _u64_js_1.default.add(this.Gh | 0, this.Gl | 0, Gh | 0, Gl | 0)); - ({ h: Hh, l: Hl } = _u64_js_1.default.add(this.Hh | 0, this.Hl | 0, Hh | 0, Hl | 0)); - this.set(Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl); + ({ h: Ah, l: Al } = _u64_js_1.default.add( + this.Ah | 0, + this.Al | 0, + Ah | 0, + Al | 0 + )); + ({ h: Bh, l: Bl } = _u64_js_1.default.add( + this.Bh | 0, + this.Bl | 0, + Bh | 0, + Bl | 0 + )); + ({ h: Ch, l: Cl } = _u64_js_1.default.add( + this.Ch | 0, + this.Cl | 0, + Ch | 0, + Cl | 0 + )); + ({ h: Dh, l: Dl } = _u64_js_1.default.add( + this.Dh | 0, + this.Dl | 0, + Dh | 0, + Dl | 0 + )); + ({ h: Eh, l: El } = _u64_js_1.default.add( + this.Eh | 0, + this.El | 0, + Eh | 0, + El | 0 + )); + ({ h: Fh, l: Fl } = _u64_js_1.default.add( + this.Fh | 0, + this.Fl | 0, + Fh | 0, + Fl | 0 + )); + ({ h: Gh, l: Gl } = _u64_js_1.default.add( + this.Gh | 0, + this.Gl | 0, + Gh | 0, + Gl | 0 + )); + ({ h: Hh, l: Hl } = _u64_js_1.default.add( + this.Hh | 0, + this.Hl | 0, + Hh | 0, + Hl | 0 + )); + this.set( + Ah, + Al, + Bh, + Bl, + Ch, + Cl, + Dh, + Dl, + Eh, + El, + Fh, + Fl, + Gh, + Gl, + Hh, + Hl + ); } roundClean() { SHA512_W_H2.fill(0); @@ -3088,10 +3300,14 @@ zoo`.split("\n"); } }; exports.sha512 = (0, utils_js_1.wrapConstructor)(() => new SHA5122()); - exports.sha512_224 = (0, utils_js_1.wrapConstructor)(() => new SHA512_2242()); - exports.sha512_256 = (0, utils_js_1.wrapConstructor)(() => new SHA512_2562()); + exports.sha512_224 = (0, utils_js_1.wrapConstructor)( + () => new SHA512_2242() + ); + exports.sha512_256 = (0, utils_js_1.wrapConstructor)( + () => new SHA512_2562() + ); exports.sha384 = (0, utils_js_1.wrapConstructor)(() => new SHA3842()); - } + }, }); // node_modules/@scure/base/lib/index.js @@ -3100,42 +3316,83 @@ zoo`.split("\n"); "use strict"; init_define_process(); Object.defineProperty(exports, "__esModule", { value: true }); - exports.bytes = exports.stringToBytes = exports.str = exports.bytesToString = exports.hex = exports.utf8 = exports.bech32m = exports.bech32 = exports.base58check = exports.base58xmr = exports.base58xrp = exports.base58flickr = exports.base58 = exports.base64url = exports.base64 = exports.base32crockford = exports.base32hex = exports.base32 = exports.base16 = exports.utils = exports.assertNumber = void 0; + exports.bytes = + exports.stringToBytes = + exports.str = + exports.bytesToString = + exports.hex = + exports.utf8 = + exports.bech32m = + exports.bech32 = + exports.base58check = + exports.base58xmr = + exports.base58xrp = + exports.base58flickr = + exports.base58 = + exports.base64url = + exports.base64 = + exports.base32crockford = + exports.base32hex = + exports.base32 = + exports.base16 = + exports.utils = + exports.assertNumber = + void 0; function assertNumber2(n) { - if (!Number.isSafeInteger(n)) - throw new Error(`Wrong integer: ${n}`); + if (!Number.isSafeInteger(n)) throw new Error(`Wrong integer: ${n}`); } exports.assertNumber = assertNumber2; function chain2(...args) { const wrap = (a, b) => (c) => a(b(c)); - const encode = Array.from(args).reverse().reduce((acc, i) => acc ? wrap(acc, i.encode) : i.encode, void 0); - const decode2 = args.reduce((acc, i) => acc ? wrap(acc, i.decode) : i.decode, void 0); + const encode = Array.from(args) + .reverse() + .reduce((acc, i) => (acc ? wrap(acc, i.encode) : i.encode), void 0); + const decode2 = args.reduce( + (acc, i) => (acc ? wrap(acc, i.decode) : i.decode), + void 0 + ); return { encode, decode: decode2 }; } function alphabet2(alphabet3) { return { encode: (digits) => { - if (!Array.isArray(digits) || digits.length && typeof digits[0] !== "number") - throw new Error("alphabet.encode input should be an array of numbers"); + if ( + !Array.isArray(digits) || + (digits.length && typeof digits[0] !== "number") + ) + throw new Error( + "alphabet.encode input should be an array of numbers" + ); return digits.map((i) => { assertNumber2(i); if (i < 0 || i >= alphabet3.length) - throw new Error(`Digit index outside alphabet: ${i} (alphabet: ${alphabet3.length})`); + throw new Error( + `Digit index outside alphabet: ${i} (alphabet: ${alphabet3.length})` + ); return alphabet3[i]; }); }, decode: (input) => { - if (!Array.isArray(input) || input.length && typeof input[0] !== "string") - throw new Error("alphabet.decode input should be array of strings"); + if ( + !Array.isArray(input) || + (input.length && typeof input[0] !== "string") + ) + throw new Error( + "alphabet.decode input should be array of strings" + ); return input.map((letter) => { if (typeof letter !== "string") - throw new Error(`alphabet.decode: not string element=${letter}`); + throw new Error( + `alphabet.decode: not string element=${letter}` + ); const index = alphabet3.indexOf(letter); if (index === -1) - throw new Error(`Unknown letter: "${letter}". Allowed: ${alphabet3}`); + throw new Error( + `Unknown letter: "${letter}". Allowed: ${alphabet3}` + ); return index; }); - } + }, }; } function join2(separator = "") { @@ -3143,7 +3400,10 @@ zoo`.split("\n"); throw new Error("join separator should be string"); return { encode: (from) => { - if (!Array.isArray(from) || from.length && typeof from[0] !== "string") + if ( + !Array.isArray(from) || + (from.length && typeof from[0] !== "string") + ) throw new Error("join.encode input should be array of strings"); for (let i of from) if (typeof i !== "string") @@ -3154,7 +3414,7 @@ zoo`.split("\n"); if (typeof to !== "string") throw new Error("join.decode input should be string"); return to.split(separator); - } + }, }; } function padding2(bits, chr = "=") { @@ -3163,30 +3423,41 @@ zoo`.split("\n"); throw new Error("padding chr should be string"); return { encode(data) { - if (!Array.isArray(data) || data.length && typeof data[0] !== "string") - throw new Error("padding.encode input should be array of strings"); + if ( + !Array.isArray(data) || + (data.length && typeof data[0] !== "string") + ) + throw new Error( + "padding.encode input should be array of strings" + ); for (let i of data) if (typeof i !== "string") throw new Error(`padding.encode: non-string input=${i}`); - while (data.length * bits % 8) - data.push(chr); + while ((data.length * bits) % 8) data.push(chr); return data; }, decode(input) { - if (!Array.isArray(input) || input.length && typeof input[0] !== "string") - throw new Error("padding.encode input should be array of strings"); + if ( + !Array.isArray(input) || + (input.length && typeof input[0] !== "string") + ) + throw new Error( + "padding.encode input should be array of strings" + ); for (let i of input) if (typeof i !== "string") throw new Error(`padding.decode: non-string input=${i}`); let end = input.length; - if (end * bits % 8) - throw new Error("Invalid padding: string should have whole number of bytes"); + if ((end * bits) % 8) + throw new Error( + "Invalid padding: string should have whole number of bytes" + ); for (; end > 0 && input[end - 1] === chr; end--) { - if (!((end - 1) * bits % 8)) + if (!(((end - 1) * bits) % 8)) throw new Error("Invalid padding: string has too much padding"); } return input.slice(0, end); - } + }, }; } function normalize2(fn) { @@ -3196,20 +3467,22 @@ zoo`.split("\n"); } function convertRadix3(data, from, to) { if (from < 2) - throw new Error(`convertRadix: wrong from=${from}, base cannot be less than 2`); + throw new Error( + `convertRadix: wrong from=${from}, base cannot be less than 2` + ); if (to < 2) - throw new Error(`convertRadix: wrong to=${to}, base cannot be less than 2`); + throw new Error( + `convertRadix: wrong to=${to}, base cannot be less than 2` + ); if (!Array.isArray(data)) throw new Error("convertRadix: data should be array"); - if (!data.length) - return []; + if (!data.length) return []; let pos = 0; const res = []; const digits = Array.from(data); digits.forEach((d) => { assertNumber2(d); - if (d < 0 || d >= from) - throw new Error(`Wrong integer: ${d}`); + if (d < 0 || d >= from) throw new Error(`Wrong integer: ${d}`); }); while (true) { let carry = 0; @@ -3217,29 +3490,31 @@ zoo`.split("\n"); for (let i = pos; i < digits.length; i++) { const digit = digits[i]; const digitBase = from * carry + digit; - if (!Number.isSafeInteger(digitBase) || from * carry / from !== carry || digitBase - digit !== from * carry) { + if ( + !Number.isSafeInteger(digitBase) || + (from * carry) / from !== carry || + digitBase - digit !== from * carry + ) { throw new Error("convertRadix: carry overflow"); } carry = digitBase % to; digits[i] = Math.floor(digitBase / to); - if (!Number.isSafeInteger(digits[i]) || digits[i] * to + carry !== digitBase) + if ( + !Number.isSafeInteger(digits[i]) || + digits[i] * to + carry !== digitBase + ) throw new Error("convertRadix: carry overflow"); - if (!done) - continue; - else if (!digits[i]) - pos = i; - else - done = false; + if (!done) continue; + else if (!digits[i]) pos = i; + else done = false; } res.push(carry); - if (done) - break; + if (done) break; } - for (let i = 0; i < data.length - 1 && data[i] === 0; i++) - res.push(0); + for (let i = 0; i < data.length - 1 && data[i] === 0; i++) res.push(0); return res.reverse(); } - var gcd2 = (a, b) => !b ? a : gcd2(b, a % b); + var gcd2 = (a, b) => (!b ? a : gcd2(b, a % b)); var radix2carry2 = (from, to) => from + (to - gcd2(from, to)); function convertRadix22(data, from, to, padding3) { if (!Array.isArray(data)) @@ -3249,7 +3524,12 @@ zoo`.split("\n"); if (to <= 0 || to > 32) throw new Error(`convertRadix2: wrong to=${to}`); if (radix2carry2(from, to) > 32) { - throw new Error(`convertRadix2: carry overflow from=${from} to=${to} carryBits=${radix2carry2(from, to)}`); + throw new Error( + `convertRadix2: carry overflow from=${from} to=${to} carryBits=${radix2carry2( + from, + to + )}` + ); } let carry = 0; let pos = 0; @@ -3258,22 +3538,23 @@ zoo`.split("\n"); for (const n of data) { assertNumber2(n); if (n >= 2 ** from) - throw new Error(`convertRadix2: invalid data word=${n} from=${from}`); - carry = carry << from | n; + throw new Error( + `convertRadix2: invalid data word=${n} from=${from}` + ); + carry = (carry << from) | n; if (pos + from > 32) - throw new Error(`convertRadix2: carry overflow pos=${pos} from=${from}`); + throw new Error( + `convertRadix2: carry overflow pos=${pos} from=${from}` + ); pos += from; for (; pos >= to; pos -= to) - res.push((carry >> pos - to & mask) >>> 0); + res.push(((carry >> (pos - to)) & mask) >>> 0); carry &= 2 ** pos - 1; } - carry = carry << to - pos & mask; - if (!padding3 && pos >= from) - throw new Error("Excess padding"); - if (!padding3 && carry) - throw new Error(`Non-zero padding: ${carry}`); - if (padding3 && pos > 0) - res.push(carry >>> 0); + carry = (carry << (to - pos)) & mask; + if (!padding3 && pos >= from) throw new Error("Excess padding"); + if (!padding3 && carry) throw new Error(`Non-zero padding: ${carry}`); + if (padding3 && pos > 0) res.push(carry >>> 0); return res; } function radix3(num) { @@ -3285,10 +3566,13 @@ zoo`.split("\n"); return convertRadix3(Array.from(bytes2), 2 ** 8, num); }, decode: (digits) => { - if (!Array.isArray(digits) || digits.length && typeof digits[0] !== "number") + if ( + !Array.isArray(digits) || + (digits.length && typeof digits[0] !== "number") + ) throw new Error("radix.decode input should be array of strings"); return Uint8Array.from(convertRadix3(digits, num, 2 ** 8)); - } + }, }; } function radix22(bits, revPadding = false) { @@ -3304,20 +3588,22 @@ zoo`.split("\n"); return convertRadix22(Array.from(bytes2), 8, bits, !revPadding); }, decode: (digits) => { - if (!Array.isArray(digits) || digits.length && typeof digits[0] !== "number") + if ( + !Array.isArray(digits) || + (digits.length && typeof digits[0] !== "number") + ) throw new Error("radix2.decode input should be array of strings"); return Uint8Array.from(convertRadix22(digits, bits, 8, revPadding)); - } + }, }; } function unsafeWrapper2(fn) { if (typeof fn !== "function") throw new Error("unsafeWrapper fn should be function"); - return function(...args) { + return function (...args) { try { return fn.apply(null, args); - } catch (e) { - } + } catch (e) {} }; } function checksum2(len, fn) { @@ -3344,27 +3630,78 @@ zoo`.split("\n"); if (newChecksum[i] !== oldChecksum[i]) throw new Error("Invalid checksum"); return payload; - } + }, }; } - exports.utils = { alphabet: alphabet2, chain: chain2, checksum: checksum2, radix: radix3, radix2: radix22, join: join2, padding: padding2 }; - exports.base16 = chain2(radix22(4), alphabet2("0123456789ABCDEF"), join2("")); - exports.base32 = chain2(radix22(5), alphabet2("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"), padding2(5), join2("")); - exports.base32hex = chain2(radix22(5), alphabet2("0123456789ABCDEFGHIJKLMNOPQRSTUV"), padding2(5), join2("")); - exports.base32crockford = chain2(radix22(5), alphabet2("0123456789ABCDEFGHJKMNPQRSTVWXYZ"), join2(""), normalize2((s) => s.toUpperCase().replace(/O/g, "0").replace(/[IL]/g, "1"))); - exports.base64 = chain2(radix22(6), alphabet2("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"), padding2(6), join2("")); - exports.base64url = chain2(radix22(6), alphabet2("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"), padding2(6), join2("")); + exports.utils = { + alphabet: alphabet2, + chain: chain2, + checksum: checksum2, + radix: radix3, + radix2: radix22, + join: join2, + padding: padding2, + }; + exports.base16 = chain2( + radix22(4), + alphabet2("0123456789ABCDEF"), + join2("") + ); + exports.base32 = chain2( + radix22(5), + alphabet2("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"), + padding2(5), + join2("") + ); + exports.base32hex = chain2( + radix22(5), + alphabet2("0123456789ABCDEFGHIJKLMNOPQRSTUV"), + padding2(5), + join2("") + ); + exports.base32crockford = chain2( + radix22(5), + alphabet2("0123456789ABCDEFGHJKMNPQRSTVWXYZ"), + join2(""), + normalize2((s) => + s.toUpperCase().replace(/O/g, "0").replace(/[IL]/g, "1") + ) + ); + exports.base64 = chain2( + radix22(6), + alphabet2( + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" + ), + padding2(6), + join2("") + ); + exports.base64url = chain2( + radix22(6), + alphabet2( + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_" + ), + padding2(6), + join2("") + ); var genBase582 = (abc) => chain2(radix3(58), alphabet2(abc), join2("")); - exports.base58 = genBase582("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"); - exports.base58flickr = genBase582("123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"); - exports.base58xrp = genBase582("rpshnaf39wBUDNEGHJKLM4PQRST7VWXYZ2bcdeCg65jkm8oFqi1tuvAxyz"); + exports.base58 = genBase582( + "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz" + ); + exports.base58flickr = genBase582( + "123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ" + ); + exports.base58xrp = genBase582( + "rpshnaf39wBUDNEGHJKLM4PQRST7VWXYZ2bcdeCg65jkm8oFqi1tuvAxyz" + ); var XMR_BLOCK_LEN2 = [0, 2, 3, 5, 6, 7, 9, 10, 11]; exports.base58xmr = { encode(data) { let res = ""; for (let i = 0; i < data.length; i += 8) { const block = data.subarray(i, i + 8); - res += exports.base58.encode(block).padStart(XMR_BLOCK_LEN2[block.length], "1"); + res += exports.base58 + .encode(block) + .padStart(XMR_BLOCK_LEN2[block.length], "1"); } return res; }, @@ -3375,24 +3712,31 @@ zoo`.split("\n"); const blockLen = XMR_BLOCK_LEN2.indexOf(slice.length); const block = exports.base58.decode(slice); for (let j = 0; j < block.length - blockLen; j++) { - if (block[j] !== 0) - throw new Error("base58xmr: wrong padding"); + if (block[j] !== 0) throw new Error("base58xmr: wrong padding"); } res = res.concat(Array.from(block.slice(block.length - blockLen))); } return Uint8Array.from(res); - } + }, }; - var base58check3 = (sha2562) => chain2(checksum2(4, (data) => sha2562(sha2562(data))), exports.base58); + var base58check3 = (sha2562) => + chain2( + checksum2(4, (data) => sha2562(sha2562(data))), + exports.base58 + ); exports.base58check = base58check3; - var BECH_ALPHABET2 = chain2(alphabet2("qpzry9x8gf2tvdw0s3jn54khce6mua7l"), join2("")); - var POLYMOD_GENERATORS2 = [996825010, 642813549, 513874426, 1027748829, 705979059]; + var BECH_ALPHABET2 = chain2( + alphabet2("qpzry9x8gf2tvdw0s3jn54khce6mua7l"), + join2("") + ); + var POLYMOD_GENERATORS2 = [ + 996825010, 642813549, 513874426, 1027748829, 705979059, + ]; function bech32Polymod2(pre) { const b = pre >> 25; let chk = (pre & 33554431) << 5; for (let i = 0; i < POLYMOD_GENERATORS2.length; i++) { - if ((b >> i & 1) === 1) - chk ^= POLYMOD_GENERATORS2[i]; + if (((b >> i) & 1) === 1) chk ^= POLYMOD_GENERATORS2[i]; } return chk; } @@ -3401,19 +3745,18 @@ zoo`.split("\n"); let chk = 1; for (let i = 0; i < len; i++) { const c = prefix.charCodeAt(i); - if (c < 33 || c > 126) - throw new Error(`Invalid prefix (${prefix})`); - chk = bech32Polymod2(chk) ^ c >> 5; + if (c < 33 || c > 126) throw new Error(`Invalid prefix (${prefix})`); + chk = bech32Polymod2(chk) ^ (c >> 5); } chk = bech32Polymod2(chk); for (let i = 0; i < len; i++) - chk = bech32Polymod2(chk) ^ prefix.charCodeAt(i) & 31; - for (let v of words) - chk = bech32Polymod2(chk) ^ v; - for (let i = 0; i < 6; i++) - chk = bech32Polymod2(chk); + chk = bech32Polymod2(chk) ^ (prefix.charCodeAt(i) & 31); + for (let v of words) chk = bech32Polymod2(chk) ^ v; + for (let i = 0; i < 6; i++) chk = bech32Polymod2(chk); chk ^= encodingConst; - return BECH_ALPHABET2.encode(convertRadix22([chk % 2 ** 30], 30, 5, false)); + return BECH_ALPHABET2.encode( + convertRadix22([chk % 2 ** 30], 30, 5, false) + ); } function genBech322(encoding) { const ENCODING_CONST = encoding === "bech32" ? 1 : 734539939; @@ -3423,27 +3766,46 @@ zoo`.split("\n"); const fromWordsUnsafe = unsafeWrapper2(fromWords); function encode(prefix, words, limit = 90) { if (typeof prefix !== "string") - throw new Error(`bech32.encode prefix should be string, not ${typeof prefix}`); - if (!Array.isArray(words) || words.length && typeof words[0] !== "number") - throw new Error(`bech32.encode words should be array of numbers, not ${typeof words}`); + throw new Error( + `bech32.encode prefix should be string, not ${typeof prefix}` + ); + if ( + !Array.isArray(words) || + (words.length && typeof words[0] !== "number") + ) + throw new Error( + `bech32.encode words should be array of numbers, not ${typeof words}` + ); const actualLength = prefix.length + 7 + words.length; if (limit !== false && actualLength > limit) - throw new TypeError(`Length ${actualLength} exceeds limit ${limit}`); + throw new TypeError( + `Length ${actualLength} exceeds limit ${limit}` + ); prefix = prefix.toLowerCase(); - return `${prefix}1${BECH_ALPHABET2.encode(words)}${bechChecksum2(prefix, words, ENCODING_CONST)}`; + return `${prefix}1${BECH_ALPHABET2.encode(words)}${bechChecksum2( + prefix, + words, + ENCODING_CONST + )}`; } function decode2(str, limit = 90) { if (typeof str !== "string") - throw new Error(`bech32.decode input should be string, not ${typeof str}`); - if (str.length < 8 || limit !== false && str.length > limit) - throw new TypeError(`Wrong string length: ${str.length} (${str}). Expected (8..${limit})`); + throw new Error( + `bech32.decode input should be string, not ${typeof str}` + ); + if (str.length < 8 || (limit !== false && str.length > limit)) + throw new TypeError( + `Wrong string length: ${str.length} (${str}). Expected (8..${limit})` + ); const lowered = str.toLowerCase(); if (str !== lowered && str !== str.toUpperCase()) throw new Error(`String must be lowercase or uppercase`); str = lowered; const sepIndex = str.lastIndexOf("1"); if (sepIndex === 0 || sepIndex === -1) - throw new Error(`Letter "1" must be present between prefix and data only`); + throw new Error( + `Letter "1" must be present between prefix and data only` + ); const prefix = str.slice(0, sepIndex); const _words2 = str.slice(sepIndex + 1); if (_words2.length < 6) @@ -3459,19 +3821,36 @@ zoo`.split("\n"); const { prefix, words } = decode2(str, false); return { prefix, words, bytes: fromWords(words) }; } - return { encode, decode: decode2, decodeToBytes, decodeUnsafe, fromWords, fromWordsUnsafe, toWords }; + return { + encode, + decode: decode2, + decodeToBytes, + decodeUnsafe, + fromWords, + fromWordsUnsafe, + toWords, + }; } exports.bech32 = genBech322("bech32"); exports.bech32m = genBech322("bech32m"); exports.utf8 = { encode: (data) => new TextDecoder().decode(data), - decode: (str) => new TextEncoder().encode(str) + decode: (str) => new TextEncoder().encode(str), }; - exports.hex = chain2(radix22(4), alphabet2("0123456789abcdef"), join2(""), normalize2((s) => { - if (typeof s !== "string" || s.length % 2) - throw new TypeError(`hex.decode: expected string, got ${typeof s} with length ${s.length}`); - return s.toLowerCase(); - })); + exports.hex = chain2( + radix22(4), + alphabet2("0123456789abcdef"), + join2(""), + normalize2((s) => { + if (typeof s !== "string" || s.length % 2) + throw new TypeError( + `hex.decode: expected string, got ${typeof s} with length ${ + s.length + }` + ); + return s.toLowerCase(); + }) + ); var CODERS2 = { utf8: exports.utf8, hex: exports.hex, @@ -3480,9 +3859,11 @@ zoo`.split("\n"); base64: exports.base64, base64url: exports.base64url, base58: exports.base58, - base58xmr: exports.base58xmr + base58xmr: exports.base58xmr, }; - var coderTypeError2 = `Invalid encoding type. Available types: ${Object.keys(CODERS2).join(", ")}`; + var coderTypeError2 = `Invalid encoding type. Available types: ${Object.keys( + CODERS2 + ).join(", ")}`; var bytesToString = (type, bytes2) => { if (typeof type !== "string" || !CODERS2.hasOwnProperty(type)) throw new TypeError(coderTypeError2); @@ -3493,15 +3874,14 @@ zoo`.split("\n"); exports.bytesToString = bytesToString; exports.str = exports.bytesToString; var stringToBytes = (type, str) => { - if (!CODERS2.hasOwnProperty(type)) - throw new TypeError(coderTypeError2); + if (!CODERS2.hasOwnProperty(type)) throw new TypeError(coderTypeError2); if (typeof str !== "string") throw new TypeError("stringToBytes() expects string"); return CODERS2[type].decode(str); }; exports.stringToBytes = stringToBytes; exports.bytes = exports.stringToBytes; - } + }, }); // node_modules/@scure/bip39/index.js @@ -3510,14 +3890,21 @@ zoo`.split("\n"); "use strict"; init_define_process(); Object.defineProperty(exports, "__esModule", { value: true }); - exports.mnemonicToSeedSync = exports.mnemonicToSeed = exports.validateMnemonic = exports.entropyToMnemonic = exports.mnemonicToEntropy = exports.generateMnemonic = void 0; + exports.mnemonicToSeedSync = + exports.mnemonicToSeed = + exports.validateMnemonic = + exports.entropyToMnemonic = + exports.mnemonicToEntropy = + exports.generateMnemonic = + void 0; var _assert_1 = require_assert(); var pbkdf2_1 = require_pbkdf2(); var sha256_1 = require_sha256(); var sha512_1 = require_sha512(); var utils_1 = require_utils(); var base_1 = require_lib(); - var isJapanese = (wordlist2) => wordlist2[0] === "\u3042\u3044\u3053\u304F\u3057\u3093"; + var isJapanese = (wordlist2) => + wordlist2[0] === "\u3042\u3044\u3053\u304F\u3057\u3093"; function nfkd(str) { if (typeof str !== "string") throw new TypeError(`Invalid mnemonic type: ${typeof str}`); @@ -3537,21 +3924,34 @@ zoo`.split("\n"); _assert_1.default.number(strength); if (strength % 32 !== 0 || strength > 256) throw new TypeError("Invalid entropy"); - return entropyToMnemonic((0, utils_1.randomBytes)(strength / 8), wordlist2); + return entropyToMnemonic( + (0, utils_1.randomBytes)(strength / 8), + wordlist2 + ); } exports.generateMnemonic = generateMnemonic2; var calcChecksum = (entropy) => { const bitsLeft = 8 - entropy.length / 4; - return new Uint8Array([(0, sha256_1.sha256)(entropy)[0] >> bitsLeft << bitsLeft]); + return new Uint8Array([ + ((0, sha256_1.sha256)(entropy)[0] >> bitsLeft) << bitsLeft, + ]); }; function getCoder(wordlist2) { - if (!Array.isArray(wordlist2) || wordlist2.length !== 2048 || typeof wordlist2[0] !== "string") + if ( + !Array.isArray(wordlist2) || + wordlist2.length !== 2048 || + typeof wordlist2[0] !== "string" + ) throw new Error("Worlist: expected array of 2048 strings"); wordlist2.forEach((i) => { if (typeof i !== "string") throw new Error(`Wordlist: non-string element: ${i}`); }); - return base_1.utils.chain(base_1.utils.checksum(1, calcChecksum), base_1.utils.radix2(11, true), base_1.utils.alphabet(wordlist2)); + return base_1.utils.chain( + base_1.utils.checksum(1, calcChecksum), + base_1.utils.radix2(11, true), + base_1.utils.alphabet(wordlist2) + ); } function mnemonicToEntropy(mnemonic, wordlist2) { const { words } = normalize2(mnemonic); @@ -3577,14 +3977,24 @@ zoo`.split("\n"); exports.validateMnemonic = validateMnemonic2; var salt = (passphrase) => nfkd(`mnemonic${passphrase}`); function mnemonicToSeed(mnemonic, passphrase = "") { - return (0, pbkdf2_1.pbkdf2Async)(sha512_1.sha512, normalize2(mnemonic).nfkd, salt(passphrase), { c: 2048, dkLen: 64 }); + return (0, pbkdf2_1.pbkdf2Async)( + sha512_1.sha512, + normalize2(mnemonic).nfkd, + salt(passphrase), + { c: 2048, dkLen: 64 } + ); } exports.mnemonicToSeed = mnemonicToSeed; function mnemonicToSeedSync2(mnemonic, passphrase = "") { - return (0, pbkdf2_1.pbkdf2)(sha512_1.sha512, normalize2(mnemonic).nfkd, salt(passphrase), { c: 2048, dkLen: 64 }); + return (0, pbkdf2_1.pbkdf2)( + sha512_1.sha512, + normalize2(mnemonic).nfkd, + salt(passphrase), + { c: 2048, dkLen: 64 } + ); } exports.mnemonicToSeedSync = mnemonicToSeedSync2; - } + }, }); // index.ts @@ -3623,7 +4033,7 @@ zoo`.split("\n"); signEvent: () => signEvent, utils: () => utils_exports2, validateEvent: () => validateEvent, - verifySignature: () => verifySignature + verifySignature: () => verifySignature, }); init_define_process(); @@ -3646,14 +4056,14 @@ zoo`.split("\n"); throw new Error(`Wrong positive integer: ${n}`); } function bool(b) { - if (typeof b !== "boolean") - throw new Error(`Expected boolean, not ${b}`); + if (typeof b !== "boolean") throw new Error(`Expected boolean, not ${b}`); } function bytes(b, ...lengths) { - if (!(b instanceof Uint8Array)) - throw new TypeError("Expected Uint8Array"); + if (!(b instanceof Uint8Array)) throw new TypeError("Expected Uint8Array"); if (lengths.length > 0 && !lengths.includes(b.length)) - throw new TypeError(`Expected Uint8Array of length ${lengths}, not of length=${b.length}`); + throw new TypeError( + `Expected Uint8Array of length ${lengths}, not of length=${b.length}` + ); } function hash(hash2) { if (typeof hash2 !== "function" || typeof hash2.create !== "function") @@ -3662,8 +4072,7 @@ zoo`.split("\n"); number(hash2.blockLen); } function exists(instance, checkFinished = true) { - if (instance.destroyed) - throw new Error("Hash instance has been destroyed"); + if (instance.destroyed) throw new Error("Hash instance has been destroyed"); if (checkFinished && instance.finished) throw new Error("Hash#digest() has already been called"); } @@ -3671,7 +4080,9 @@ zoo`.split("\n"); bytes(out); const min = instance.outputLen; if (out.length < min) { - throw new Error(`digestInto() expects output buffer of length at least ${min}`); + throw new Error( + `digestInto() expects output buffer of length at least ${min}` + ); } } var assert = { @@ -3680,7 +4091,7 @@ zoo`.split("\n"); bytes, hash, exists, - output + output, }; var assert_default = assert; @@ -3689,18 +4100,22 @@ zoo`.split("\n"); // node_modules/@noble/hashes/esm/crypto.js init_define_process(); - var crypto2 = typeof globalThis === "object" && "crypto" in globalThis ? globalThis.crypto : void 0; + var crypto2 = + typeof globalThis === "object" && "crypto" in globalThis + ? globalThis.crypto + : void 0; // node_modules/@noble/hashes/esm/utils.js - var createView = (arr) => new DataView(arr.buffer, arr.byteOffset, arr.byteLength); - var rotr = (word, shift) => word << 32 - shift | word >>> shift; + var createView = (arr) => + new DataView(arr.buffer, arr.byteOffset, arr.byteLength); + var rotr = (word, shift) => (word << (32 - shift)) | (word >>> shift); var isLE = new Uint8Array(new Uint32Array([287454020]).buffer)[0] === 68; - if (!isLE) - throw new Error("Non little-endian hardware is not supported"); - var hexes = Array.from({ length: 256 }, (v, i) => i.toString(16).padStart(2, "0")); + if (!isLE) throw new Error("Non little-endian hardware is not supported"); + var hexes = Array.from({ length: 256 }, (v, i) => + i.toString(16).padStart(2, "0") + ); function bytesToHex(uint8a) { - if (!(uint8a instanceof Uint8Array)) - throw new Error("Uint8Array expected"); + if (!(uint8a instanceof Uint8Array)) throw new Error("Uint8Array expected"); let hex2 = ""; for (let i = 0; i < uint8a.length; i++) { hex2 += hexes[uint8a[i]]; @@ -3731,17 +4146,17 @@ zoo`.split("\n"); return new TextEncoder().encode(str); } function toBytes(data) { - if (typeof data === "string") - data = utf8ToBytes(data); + if (typeof data === "string") data = utf8ToBytes(data); if (!(data instanceof Uint8Array)) - throw new TypeError(`Expected input type is Uint8Array (got ${typeof data})`); + throw new TypeError( + `Expected input type is Uint8Array (got ${typeof data})` + ); return data; } function concatBytes(...arrays) { if (!arrays.every((a) => a instanceof Uint8Array)) throw new Error("Uint8Array list expected"); - if (arrays.length === 1) - return arrays[0]; + if (arrays.length === 1) return arrays[0]; const length = arrays.reduce((a, arr) => a + arr.length, 0); const result = new Uint8Array(length); for (let i = 0, pad = 0; i < arrays.length; i++) { @@ -3757,7 +4172,8 @@ zoo`.split("\n"); } }; function wrapConstructor(hashConstructor) { - const hashC = (message) => hashConstructor().update(toBytes(message)).digest(); + const hashC = (message) => + hashConstructor().update(toBytes(message)).digest(); const tmp = hashConstructor(); hashC.outputLen = tmp.outputLen; hashC.blockLen = tmp.blockLen; @@ -3777,7 +4193,7 @@ zoo`.split("\n"); return view.setBigUint64(byteOffset, value, isLE2); const _32n2 = BigInt(32); const _u32_max = BigInt(4294967295); - const wh = Number(value >> _32n2 & _u32_max); + const wh = Number((value >> _32n2) & _u32_max); const wl = Number(value & _u32_max); const h = isLE2 ? 4 : 0; const l = isLE2 ? 0 : 4; @@ -3835,8 +4251,7 @@ zoo`.split("\n"); this.process(view, 0); pos = 0; } - for (let i = pos; i < blockLen; i++) - buffer[i] = 0; + for (let i = pos; i < blockLen; i++) buffer[i] = 0; setBigUint64(view, blockLen - 8, BigInt(this.length * 8), isLE2); this.process(view, 0); const oview = createView(out); @@ -3847,8 +4262,7 @@ zoo`.split("\n"); const state = this.get(); if (outLen > state.length) throw new Error("_sha2: outputLen bigger than state"); - for (let i = 0; i < outLen; i++) - oview.setUint32(4 * i, state[i], isLE2); + for (let i = 0; i < outLen; i++) oview.setUint32(4 * i, state[i], isLE2); } digest() { const { buffer, outputLen } = this; @@ -3865,90 +4279,30 @@ zoo`.split("\n"); to.pos = pos; to.finished = finished; to.destroyed = destroyed; - if (length % blockLen) - to.buffer.set(buffer); + if (length % blockLen) to.buffer.set(buffer); return to; } }; // node_modules/@noble/hashes/esm/sha256.js - var Chi = (a, b, c) => a & b ^ ~a & c; - var Maj = (a, b, c) => a & b ^ a & c ^ b & c; + var Chi = (a, b, c) => (a & b) ^ (~a & c); + var Maj = (a, b, c) => (a & b) ^ (a & c) ^ (b & c); var SHA256_K = new Uint32Array([ - 1116352408, - 1899447441, - 3049323471, - 3921009573, - 961987163, - 1508970993, - 2453635748, - 2870763221, - 3624381080, - 310598401, - 607225278, - 1426881987, - 1925078388, - 2162078206, - 2614888103, - 3248222580, - 3835390401, - 4022224774, - 264347078, - 604807628, - 770255983, - 1249150122, - 1555081692, - 1996064986, - 2554220882, - 2821834349, - 2952996808, - 3210313671, - 3336571891, - 3584528711, - 113926993, - 338241895, - 666307205, - 773529912, - 1294757372, - 1396182291, - 1695183700, - 1986661051, - 2177026350, - 2456956037, - 2730485921, - 2820302411, - 3259730800, - 3345764771, - 3516065817, - 3600352804, - 4094571909, - 275423344, - 430227734, - 506948616, - 659060556, - 883997877, - 958139571, - 1322822218, - 1537002063, - 1747873779, - 1955562222, - 2024104815, - 2227730452, - 2361852424, - 2428436474, - 2756734187, - 3204031479, - 3329325298 + 1116352408, 1899447441, 3049323471, 3921009573, 961987163, 1508970993, + 2453635748, 2870763221, 3624381080, 310598401, 607225278, 1426881987, + 1925078388, 2162078206, 2614888103, 3248222580, 3835390401, 4022224774, + 264347078, 604807628, 770255983, 1249150122, 1555081692, 1996064986, + 2554220882, 2821834349, 2952996808, 3210313671, 3336571891, 3584528711, + 113926993, 338241895, 666307205, 773529912, 1294757372, 1396182291, + 1695183700, 1986661051, 2177026350, 2456956037, 2730485921, 2820302411, + 3259730800, 3345764771, 3516065817, 3600352804, 4094571909, 275423344, + 430227734, 506948616, 659060556, 883997877, 958139571, 1322822218, + 1537002063, 1747873779, 1955562222, 2024104815, 2227730452, 2361852424, + 2428436474, 2756734187, 3204031479, 3329325298, ]); var IV = new Uint32Array([ - 1779033703, - 3144134277, - 1013904242, - 2773480762, - 1359893119, - 2600822924, - 528734635, - 1541459225 + 1779033703, 3144134277, 1013904242, 2773480762, 1359893119, 2600822924, + 528734635, 1541459225, ]); var SHA256_W = new Uint32Array(64); var SHA256 = class extends SHA2 { @@ -3983,33 +4337,33 @@ zoo`.split("\n"); for (let i = 16; i < 64; i++) { const W15 = SHA256_W[i - 15]; const W2 = SHA256_W[i - 2]; - const s0 = rotr(W15, 7) ^ rotr(W15, 18) ^ W15 >>> 3; - const s1 = rotr(W2, 17) ^ rotr(W2, 19) ^ W2 >>> 10; - SHA256_W[i] = s1 + SHA256_W[i - 7] + s0 + SHA256_W[i - 16] | 0; + const s0 = rotr(W15, 7) ^ rotr(W15, 18) ^ (W15 >>> 3); + const s1 = rotr(W2, 17) ^ rotr(W2, 19) ^ (W2 >>> 10); + SHA256_W[i] = (s1 + SHA256_W[i - 7] + s0 + SHA256_W[i - 16]) | 0; } let { A, B, C, D, E, F, G, H } = this; for (let i = 0; i < 64; i++) { const sigma1 = rotr(E, 6) ^ rotr(E, 11) ^ rotr(E, 25); - const T1 = H + sigma1 + Chi(E, F, G) + SHA256_K[i] + SHA256_W[i] | 0; + const T1 = (H + sigma1 + Chi(E, F, G) + SHA256_K[i] + SHA256_W[i]) | 0; const sigma0 = rotr(A, 2) ^ rotr(A, 13) ^ rotr(A, 22); - const T2 = sigma0 + Maj(A, B, C) | 0; + const T2 = (sigma0 + Maj(A, B, C)) | 0; H = G; G = F; F = E; - E = D + T1 | 0; + E = (D + T1) | 0; D = C; C = B; B = A; - A = T1 + T2 | 0; - } - A = A + this.A | 0; - B = B + this.B | 0; - C = C + this.C | 0; - D = D + this.D | 0; - E = E + this.E | 0; - F = F + this.F | 0; - G = G + this.G | 0; - H = H + this.H | 0; + A = (T1 + T2) | 0; + } + A = (A + this.A) | 0; + B = (B + this.B) | 0; + C = (C + this.C) | 0; + D = (D + this.D) | 0; + E = (E + this.E) | 0; + F = (F + this.F) | 0; + G = (G + this.G) | 0; + H = (H + this.H) | 0; this.set(A, B, C, D, E, F, G, H); } roundClean() { @@ -4061,17 +4415,18 @@ zoo`.split("\n"); numberToHexUnpadded: () => numberToHexUnpadded, numberToVarBytesBE: () => numberToVarBytesBE, utf8ToBytes: () => utf8ToBytes2, - validateObject: () => validateObject + validateObject: () => validateObject, }); init_define_process(); var _0n = BigInt(0); var _1n = BigInt(1); var _2n = BigInt(2); var u8a = (a) => a instanceof Uint8Array; - var hexes2 = Array.from({ length: 256 }, (v, i) => i.toString(16).padStart(2, "0")); + var hexes2 = Array.from({ length: 256 }, (v, i) => + i.toString(16).padStart(2, "0") + ); function bytesToHex2(bytes2) { - if (!u8a(bytes2)) - throw new Error("Uint8Array expected"); + if (!u8a(bytes2)) throw new Error("Uint8Array expected"); let hex2 = ""; for (let i = 0; i < bytes2.length; i++) { hex2 += hexes2[bytes2[i]]; @@ -4107,11 +4462,11 @@ zoo`.split("\n"); return hexToNumber(bytesToHex2(bytes2)); } function bytesToNumberLE(bytes2) { - if (!u8a(bytes2)) - throw new Error("Uint8Array expected"); + if (!u8a(bytes2)) throw new Error("Uint8Array expected"); return hexToNumber(bytesToHex2(Uint8Array.from(bytes2).reverse())); } - var numberToBytesBE = (n, len) => hexToBytes2(n.toString(16).padStart(len * 2, "0")); + var numberToBytesBE = (n, len) => + hexToBytes2(n.toString(16).padStart(len * 2, "0")); var numberToBytesLE = (n, len) => numberToBytesBE(n, len).reverse(); var numberToVarBytesBE = (n) => hexToBytes2(numberToHexUnpadded(n)); function ensureBytes(title, hex2, expectedLength) { @@ -4120,7 +4475,9 @@ zoo`.split("\n"); try { res = hexToBytes2(hex2); } catch (e) { - throw new Error(`${title} must be valid hex string, got "${hex2}". Cause: ${e}`); + throw new Error( + `${title} must be valid hex string, got "${hex2}". Cause: ${e}` + ); } } else if (u8a(hex2)) { res = Uint8Array.from(hex2); @@ -4136,19 +4493,15 @@ zoo`.split("\n"); const r = new Uint8Array(arrs.reduce((sum, a) => sum + a.length, 0)); let pad = 0; arrs.forEach((a) => { - if (!u8a(a)) - throw new Error("Uint8Array expected"); + if (!u8a(a)) throw new Error("Uint8Array expected"); r.set(a, pad); pad += a.length; }); return r; } function equalBytes(b1, b2) { - if (b1.length !== b2.length) - return false; - for (let i = 0; i < b1.length; i++) - if (b1[i] !== b2[i]) - return false; + if (b1.length !== b2.length) return false; + for (let i = 0; i < b1.length; i++) if (b1[i] !== b2[i]) return false; return true; } function utf8ToBytes2(str) { @@ -4159,12 +4512,11 @@ zoo`.split("\n"); } function bitLen(n) { let len; - for (len = 0; n > _0n; n >>= _1n, len += 1) - ; + for (len = 0; n > _0n; n >>= _1n, len += 1); return len; } - var bitGet = (n, pos) => n >> BigInt(pos) & _1n; - var bitSet = (n, pos, value) => n | (value ? _1n : _0n) << BigInt(pos); + var bitGet = (n, pos) => (n >> BigInt(pos)) & _1n; + var bitSet = (n, pos, value) => n | ((value ? _1n : _0n) << BigInt(pos)); var bitMask = (n) => (_2n << BigInt(n - 1)) - _1n; var u8n = (data) => new Uint8Array(data); var u8fr = (arr) => Uint8Array.from(arr); @@ -4187,14 +4539,12 @@ zoo`.split("\n"); const reseed = (seed = u8n()) => { k = h(u8fr([0]), seed); v = h(); - if (seed.length === 0) - return; + if (seed.length === 0) return; k = h(u8fr([1]), seed); v = h(); }; const gen = () => { - if (i++ >= 1e3) - throw new Error("drbg: tried 1000 values"); + if (i++ >= 1e3) throw new Error("drbg: tried 1000 values"); let len = 0; const out = []; while (len < qByteLen) { @@ -4209,8 +4559,7 @@ zoo`.split("\n"); reset(); reseed(seed); let res = void 0; - while (!(res = pred(gen()))) - reseed(); + while (!(res = pred(gen()))) reseed(); reset(); return res; }; @@ -4224,7 +4573,8 @@ zoo`.split("\n"); isSafeInteger: (val) => Number.isSafeInteger(val), array: (val) => Array.isArray(val), field: (val, object) => object.Fp.isValid(val), - hash: (val) => typeof val === "function" && Number.isSafeInteger(val.outputLen) + hash: (val) => + typeof val === "function" && Number.isSafeInteger(val.outputLen), }; function validateObject(object, validators, optValidators = {}) { const checkField = (fieldName, type, isOptional) => { @@ -4232,10 +4582,13 @@ zoo`.split("\n"); if (typeof checkVal !== "function") throw new Error(`Invalid validator "${type}", expected function`); const val = object[fieldName]; - if (isOptional && val === void 0) - return; + if (isOptional && val === void 0) return; if (!checkVal(val, object)) { - throw new Error(`Invalid param ${String(fieldName)}=${val} (${typeof val}), expected ${type}`); + throw new Error( + `Invalid param ${String( + fieldName + )}=${val} (${typeof val}), expected ${type}` + ); } }; for (const [fieldName, type] of Object.entries(validators)) @@ -4262,13 +4615,11 @@ zoo`.split("\n"); function pow(num, power, modulo) { if (modulo <= _0n2 || power < _0n2) throw new Error("Expected power/modulo > 0"); - if (modulo === _1n2) - return _0n2; + if (modulo === _1n2) return _0n2; let res = _1n2; while (power > _0n2) { - if (power & _1n2) - res = res * num % modulo; - num = num * num % modulo; + if (power & _1n2) res = (res * num) % modulo; + num = (num * num) % modulo; power >>= _1n2; } return res; @@ -4283,30 +4634,32 @@ zoo`.split("\n"); } function invert(number2, modulo) { if (number2 === _0n2 || modulo <= _0n2) { - throw new Error(`invert: expected positive integers, got n=${number2} mod=${modulo}`); + throw new Error( + `invert: expected positive integers, got n=${number2} mod=${modulo}` + ); } let a = mod(number2, modulo); let b = modulo; - let x = _0n2, y = _1n2, u = _1n2, v = _0n2; + let x = _0n2, + y = _1n2, + u = _1n2, + v = _0n2; while (a !== _0n2) { const q = b / a; const r = b % a; const m = x - u * q; const n = y - v * q; - b = a, a = r, x = u, y = v, u = m, v = n; + (b = a), (a = r), (x = u), (y = v), (u = m), (v = n); } const gcd2 = b; - if (gcd2 !== _1n2) - throw new Error("invert: does not exist"); + if (gcd2 !== _1n2) throw new Error("invert: does not exist"); return mod(x, modulo); } function tonelliShanks(P) { const legendreC = (P - _1n2) / _2n2; let Q, S, Z; - for (Q = P - _1n2, S = 0; Q % _2n2 === _0n2; Q /= _2n2, S++) - ; - for (Z = _2n2; Z < P && pow(Z, legendreC, P) !== P - _1n2; Z++) - ; + for (Q = P - _1n2, S = 0; Q % _2n2 === _0n2; Q /= _2n2, S++); + for (Z = _2n2; Z < P && pow(Z, legendreC, P) !== P - _1n2; Z++); if (S === 1) { const p1div4 = (P + _1n2) / _4n; return function tonelliFast(Fp2, n) { @@ -4325,12 +4678,10 @@ zoo`.split("\n"); let x = Fp2.pow(n, Q1div2); let b = Fp2.pow(n, Q); while (!Fp2.eql(b, Fp2.ONE)) { - if (Fp2.eql(b, Fp2.ZERO)) - return Fp2.ZERO; + if (Fp2.eql(b, Fp2.ZERO)) return Fp2.ZERO; let m = 1; for (let t2 = Fp2.sqr(b); m < r; m++) { - if (Fp2.eql(t2, Fp2.ONE)) - break; + if (Fp2.eql(t2, Fp2.ONE)) break; t2 = Fp2.sqr(t2); } const ge2 = Fp2.pow(g, _1n2 << BigInt(r - m - 1)); @@ -4386,14 +4737,14 @@ zoo`.split("\n"); "addN", "subN", "mulN", - "sqrN" + "sqrN", ]; function validateField(field) { const initial = { ORDER: "bigint", MASK: "bigint", BYTES: "isSafeInteger", - BITS: "isSafeInteger" + BITS: "isSafeInteger", }; const opts = FIELD_FIELDS.reduce((map, val) => { map[val] = "function"; @@ -4402,17 +4753,13 @@ zoo`.split("\n"); return validateObject(field, opts); } function FpPow(f2, num, power) { - if (power < _0n2) - throw new Error("Expected power > 0"); - if (power === _0n2) - return f2.ONE; - if (power === _1n2) - return num; + if (power < _0n2) throw new Error("Expected power > 0"); + if (power === _0n2) return f2.ONE; + if (power === _1n2) return num; let p = f2.ONE; let d = num; while (power > _0n2) { - if (power & _1n2) - p = f2.mul(p, d); + if (power & _1n2) p = f2.mul(p, d); d = f2.sqr(d); power >>= _1n2; } @@ -4421,28 +4768,26 @@ zoo`.split("\n"); function FpInvertBatch(f2, nums) { const tmp = new Array(nums.length); const lastMultiplied = nums.reduce((acc, num, i) => { - if (f2.is0(num)) - return acc; + if (f2.is0(num)) return acc; tmp[i] = acc; return f2.mul(acc, num); }, f2.ONE); const inverted = f2.inv(lastMultiplied); nums.reduceRight((acc, num, i) => { - if (f2.is0(num)) - return acc; + if (f2.is0(num)) return acc; tmp[i] = f2.mul(acc, tmp[i]); return f2.mul(acc, num); }, inverted); return tmp; } function nLength(n, nBitLength) { - const _nBitLength = nBitLength !== void 0 ? nBitLength : n.toString(2).length; + const _nBitLength = + nBitLength !== void 0 ? nBitLength : n.toString(2).length; const nByteLength = Math.ceil(_nBitLength / 8); return { nBitLength: _nBitLength, nByteLength }; } function Field(ORDER, bitLen2, isLE2 = false, redef = {}) { - if (ORDER <= _0n2) - throw new Error(`Expected Fp ORDER > 0, got ${ORDER}`); + if (ORDER <= _0n2) throw new Error(`Expected Fp ORDER > 0, got ${ORDER}`); const { nBitLength: BITS, nByteLength: BYTES } = nLength(ORDER, bitLen2); if (BYTES > 2048) throw new Error("Field lengths over 2048 bytes are not supported"); @@ -4457,7 +4802,9 @@ zoo`.split("\n"); create: (num) => mod(num, ORDER), isValid: (num) => { if (typeof num !== "bigint") - throw new Error(`Invalid field element: expected bigint, got ${typeof num}`); + throw new Error( + `Invalid field element: expected bigint, got ${typeof num}` + ); return _0n2 <= num && num < ORDER; }, is0: (num) => num === _0n2, @@ -4477,13 +4824,16 @@ zoo`.split("\n"); inv: (num) => invert(num, ORDER), sqrt: redef.sqrt || ((n) => sqrtP(f2, n)), invertBatch: (lst) => FpInvertBatch(f2, lst), - cmov: (a, b, c) => c ? b : a, - toBytes: (num) => isLE2 ? numberToBytesLE(num, BYTES) : numberToBytesBE(num, BYTES), + cmov: (a, b, c) => (c ? b : a), + toBytes: (num) => + isLE2 ? numberToBytesLE(num, BYTES) : numberToBytesBE(num, BYTES), fromBytes: (bytes2) => { if (bytes2.length !== BYTES) - throw new Error(`Fp.fromBytes: expected ${BYTES}, got ${bytes2.length}`); + throw new Error( + `Fp.fromBytes: expected ${BYTES}, got ${bytes2.length}` + ); return isLE2 ? bytesToNumberLE(bytes2) : bytesToNumberBE(bytes2); - } + }, }); return Object.freeze(f2); } @@ -4492,7 +4842,9 @@ zoo`.split("\n"); const hashLen = hash2.length; const minLen = nLength(groupOrder).nByteLength + 8; if (minLen < 24 || hashLen < minLen || hashLen > 1024) - throw new Error(`hashToPrivateScalar: expected ${minLen}-1024 bytes of input, got ${hashLen}`); + throw new Error( + `hashToPrivateScalar: expected ${minLen}-1024 bytes of input, got ${hashLen}` + ); const num = isLE2 ? bytesToNumberLE(hash2) : bytesToNumberBE(hash2); return mod(num, groupOrder - _1n2) + _1n2; } @@ -4520,8 +4872,7 @@ zoo`.split("\n"); let p = c.ZERO; let d = elm; while (n > _0n3) { - if (n & _1n3) - p = p.add(d); + if (n & _1n3) p = p.add(d); d = d.double(); n >>= _1n3; } @@ -4580,49 +4931,65 @@ zoo`.split("\n"); } } return this.wNAF(W, comp, n); - } + }, }; } function validateBasic(curve) { validateField(curve.Fp); - validateObject(curve, { - n: "bigint", - h: "bigint", - Gx: "field", - Gy: "field" - }, { - nBitLength: "isSafeInteger", - nByteLength: "isSafeInteger" - }); + validateObject( + curve, + { + n: "bigint", + h: "bigint", + Gx: "field", + Gy: "field", + }, + { + nBitLength: "isSafeInteger", + nByteLength: "isSafeInteger", + } + ); return Object.freeze({ ...nLength(curve.n, curve.nBitLength), ...curve, - ...{ p: curve.Fp.ORDER } + ...{ p: curve.Fp.ORDER }, }); } // node_modules/@noble/curves/esm/abstract/weierstrass.js function validatePointOpts(curve) { const opts = validateBasic(curve); - validateObject(opts, { - a: "field", - b: "field" - }, { - allowedPrivateKeyLengths: "array", - wrapPrivateKey: "boolean", - isTorsionFree: "function", - clearCofactor: "function", - allowInfinityPoint: "boolean", - fromBytes: "function", - toBytes: "function" - }); + validateObject( + opts, + { + a: "field", + b: "field", + }, + { + allowedPrivateKeyLengths: "array", + wrapPrivateKey: "boolean", + isTorsionFree: "function", + clearCofactor: "function", + allowInfinityPoint: "boolean", + fromBytes: "function", + toBytes: "function", + } + ); const { endo, Fp: Fp2, a } = opts; if (endo) { if (!Fp2.eql(a, Fp2.ZERO)) { - throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0"); + throw new Error( + "Endomorphism can only be defined for Koblitz curves that have a=0" + ); } - if (typeof endo !== "object" || typeof endo.beta !== "bigint" || typeof endo.splitScalar !== "function") { - throw new Error("Expected endomorphism with beta: bigint and splitScalar: function"); + if ( + typeof endo !== "object" || + typeof endo.beta !== "bigint" || + typeof endo.splitScalar !== "function" + ) { + throw new Error( + "Expected endomorphism with beta: bigint and splitScalar: function" + ); } } return Object.freeze({ ...opts }); @@ -4642,8 +5009,7 @@ zoo`.split("\n"); const res = data.subarray(2, len + 2); if (!len || res.length !== len) throw new E("Invalid signature integer: wrong length"); - if (res[0] & 128) - throw new E("Invalid signature integer: negative"); + if (res[0] & 128) throw new E("Invalid signature integer: negative"); if (res[0] === 0 && !(res[1] & 128)) throw new E("Invalid signature integer: unnecessary leading zero"); return { d: b2n(res), l: data.subarray(len + 2) }; @@ -4651,13 +5017,10 @@ zoo`.split("\n"); toSig(hex2) { const { Err: E } = DER; const data = typeof hex2 === "string" ? h2b(hex2) : hex2; - if (!(data instanceof Uint8Array)) - throw new Error("ui8a expected"); + if (!(data instanceof Uint8Array)) throw new Error("ui8a expected"); let l = data.length; - if (l < 2 || data[0] != 48) - throw new E("Invalid signature tag"); - if (data[1] !== l - 2) - throw new E("Invalid signature: incorrect length"); + if (l < 2 || data[0] != 48) throw new E("Invalid signature tag"); + if (data[1] !== l - 2) throw new E("Invalid signature: incorrect length"); const { d: r, l: sBytes } = DER._parseInt(data.subarray(2)); const { d: s, l: rBytesLeft } = DER._parseInt(sBytes); if (rBytesLeft.length) @@ -4665,7 +5028,7 @@ zoo`.split("\n"); return { r, s }; }, hexFromSig(sig) { - const slice = (s2) => Number.parseInt(s2[0], 16) & 8 ? "00" + s2 : s2; + const slice = (s2) => (Number.parseInt(s2[0], 16) & 8 ? "00" + s2 : s2); const h = (num) => { const hex2 = num.toString(16); return hex2.length & 1 ? `0${hex2}` : hex2; @@ -4677,7 +5040,7 @@ zoo`.split("\n"); const sl = h(shl); const rl = h(rhl); return `30${h(rhl + shl + 4)}02${rl}${r}02${sl}${s}`; - } + }, }; var _0n4 = BigInt(0); var _1n4 = BigInt(1); @@ -4687,16 +5050,24 @@ zoo`.split("\n"); function weierstrassPoints(opts) { const CURVE = validatePointOpts(opts); const { Fp: Fp2 } = CURVE; - const toBytes2 = CURVE.toBytes || ((c, point, isCompressed) => { - const a = point.toAffine(); - return concatBytes2(Uint8Array.from([4]), Fp2.toBytes(a.x), Fp2.toBytes(a.y)); - }); - const fromBytes = CURVE.fromBytes || ((bytes2) => { - const tail = bytes2.subarray(1); - const x = Fp2.fromBytes(tail.subarray(0, Fp2.BYTES)); - const y = Fp2.fromBytes(tail.subarray(Fp2.BYTES, 2 * Fp2.BYTES)); - return { x, y }; - }); + const toBytes2 = + CURVE.toBytes || + ((c, point, isCompressed) => { + const a = point.toAffine(); + return concatBytes2( + Uint8Array.from([4]), + Fp2.toBytes(a.x), + Fp2.toBytes(a.y) + ); + }); + const fromBytes = + CURVE.fromBytes || + ((bytes2) => { + const tail = bytes2.subarray(1); + const x = Fp2.fromBytes(tail.subarray(0, Fp2.BYTES)); + const y = Fp2.fromBytes(tail.subarray(Fp2.BYTES, 2 * Fp2.BYTES)); + return { x, y }; + }); function weierstrassEquation(x) { const { a, b } = CURVE; const x2 = Fp2.sqr(x); @@ -4713,22 +5084,30 @@ zoo`.split("\n"); throw new Error("Expected valid bigint: 0 < bigint < curve.n"); } function normPrivateKeyToScalar(key) { - const { allowedPrivateKeyLengths: lengths, nByteLength, wrapPrivateKey, n } = CURVE; + const { + allowedPrivateKeyLengths: lengths, + nByteLength, + wrapPrivateKey, + n, + } = CURVE; if (lengths && typeof key !== "bigint") { - if (key instanceof Uint8Array) - key = bytesToHex2(key); + if (key instanceof Uint8Array) key = bytesToHex2(key); if (typeof key !== "string" || !lengths.includes(key.length)) throw new Error("Invalid key"); key = key.padStart(nByteLength * 2, "0"); } let num; try { - num = typeof key === "bigint" ? key : bytesToNumberBE(ensureBytes("private key", key, nByteLength)); + num = + typeof key === "bigint" + ? key + : bytesToNumberBE(ensureBytes("private key", key, nByteLength)); } catch (error) { - throw new Error(`private key must be ${nByteLength} bytes, hex or bigint, not ${typeof key}`); + throw new Error( + `private key must be ${nByteLength} bytes, hex or bigint, not ${typeof key}` + ); } - if (wrapPrivateKey) - num = mod(num, n); + if (wrapPrivateKey) num = mod(num, n); assertGE(num); return num; } @@ -4742,12 +5121,9 @@ zoo`.split("\n"); this.px = px; this.py = py; this.pz = pz; - if (px == null || !Fp2.isValid(px)) - throw new Error("x required"); - if (py == null || !Fp2.isValid(py)) - throw new Error("y required"); - if (pz == null || !Fp2.isValid(pz)) - throw new Error("z required"); + if (px == null || !Fp2.isValid(px)) throw new Error("x required"); + if (py == null || !Fp2.isValid(py)) throw new Error("y required"); + if (pz == null || !Fp2.isValid(pz)) throw new Error("z required"); } static fromAffine(p) { const { x, y } = p || {}; @@ -4756,8 +5132,7 @@ zoo`.split("\n"); if (p instanceof Point3) throw new Error("projective point not allowed"); const is0 = (i) => Fp2.eql(i, Fp2.ZERO); - if (is0(x) && is0(y)) - return Point3.ZERO; + if (is0(x) && is0(y)) return Point3.ZERO; return new Point3(x, y, Fp2.ONE); } get x() { @@ -4768,7 +5143,9 @@ zoo`.split("\n"); } static normalizeZ(points) { const toInv = Fp2.invertBatch(points.map((p) => p.pz)); - return points.map((p, i) => p.toAffine(toInv[i])).map(Point3.fromAffine); + return points + .map((p, i) => p.toAffine(toInv[i])) + .map(Point3.fromAffine); } static fromHex(hex2) { const P = Point3.fromAffine(fromBytes(ensureBytes("pointHex", hex2))); @@ -4784,8 +5161,7 @@ zoo`.split("\n"); } assertValidity() { if (this.is0()) { - if (CURVE.allowInfinityPoint) - return; + if (CURVE.allowInfinityPoint) return; throw new Error("bad point: ZERO"); } const { x, y } = this.toAffine(); @@ -4800,8 +5176,7 @@ zoo`.split("\n"); } hasEvenY() { const { y } = this.toAffine(); - if (Fp2.isOdd) - return !Fp2.isOdd(y); + if (Fp2.isOdd) return !Fp2.isOdd(y); throw new Error("Field doesn't support isOdd"); } equals(other) { @@ -4819,7 +5194,9 @@ zoo`.split("\n"); const { a, b } = CURVE; const b3 = Fp2.mul(b, _3n2); const { px: X1, py: Y1, pz: Z1 } = this; - let X3 = Fp2.ZERO, Y3 = Fp2.ZERO, Z3 = Fp2.ZERO; + let X3 = Fp2.ZERO, + Y3 = Fp2.ZERO, + Z3 = Fp2.ZERO; let t0 = Fp2.mul(X1, X1); let t1 = Fp2.mul(Y1, Y1); let t2 = Fp2.mul(Z1, Z1); @@ -4857,7 +5234,9 @@ zoo`.split("\n"); assertPrjPoint(other); const { px: X1, py: Y1, pz: Z1 } = this; const { px: X2, py: Y2, pz: Z2 } = other; - let X3 = Fp2.ZERO, Y3 = Fp2.ZERO, Z3 = Fp2.ZERO; + let X3 = Fp2.ZERO, + Y3 = Fp2.ZERO, + Z3 = Fp2.ZERO; const a = CURVE.a; const b3 = Fp2.mul(CURVE.b, _3n2); let t0 = Fp2.mul(X1, X2); @@ -4911,36 +5290,31 @@ zoo`.split("\n"); wNAF(n) { return wnaf.wNAFCached(this, pointPrecomputes, n, (comp) => { const toInv = Fp2.invertBatch(comp.map((p) => p.pz)); - return comp.map((p, i) => p.toAffine(toInv[i])).map(Point3.fromAffine); + return comp + .map((p, i) => p.toAffine(toInv[i])) + .map(Point3.fromAffine); }); } multiplyUnsafe(n) { const I = Point3.ZERO; - if (n === _0n4) - return I; + if (n === _0n4) return I; assertGE(n); - if (n === _1n4) - return this; + if (n === _1n4) return this; const { endo } = CURVE; - if (!endo) - return wnaf.unsafeLadder(this, n); + if (!endo) return wnaf.unsafeLadder(this, n); let { k1neg, k1, k2neg, k2 } = endo.splitScalar(n); let k1p = I; let k2p = I; let d = this; while (k1 > _0n4 || k2 > _0n4) { - if (k1 & _1n4) - k1p = k1p.add(d); - if (k2 & _1n4) - k2p = k2p.add(d); + if (k1 & _1n4) k1p = k1p.add(d); + if (k2 & _1n4) k2p = k2p.add(d); d = d.double(); k1 >>= _1n4; k2 >>= _1n4; } - if (k1neg) - k1p = k1p.negate(); - if (k2neg) - k2p = k2p.negate(); + if (k1neg) k1p = k1p.negate(); + if (k2neg) k2p = k2p.negate(); k2p = new Point3(Fp2.mul(k2p.px, endo.beta), k2p.py, k2p.pz); return k1p.add(k2p); } @@ -4967,38 +5341,36 @@ zoo`.split("\n"); } multiplyAndAddUnsafe(Q, a, b) { const G = Point3.BASE; - const mul = (P, a2) => a2 === _0n4 || a2 === _1n4 || !P.equals(G) ? P.multiplyUnsafe(a2) : P.multiply(a2); + const mul = (P, a2) => + a2 === _0n4 || a2 === _1n4 || !P.equals(G) + ? P.multiplyUnsafe(a2) + : P.multiply(a2); const sum = mul(this, a).add(mul(Q, b)); return sum.is0() ? void 0 : sum; } toAffine(iz) { const { px: x, py: y, pz: z } = this; const is0 = this.is0(); - if (iz == null) - iz = is0 ? Fp2.ONE : Fp2.inv(z); + if (iz == null) iz = is0 ? Fp2.ONE : Fp2.inv(z); const ax = Fp2.mul(x, iz); const ay = Fp2.mul(y, iz); const zz = Fp2.mul(z, iz); - if (is0) - return { x: Fp2.ZERO, y: Fp2.ZERO }; - if (!Fp2.eql(zz, Fp2.ONE)) - throw new Error("invZ was invalid"); + if (is0) return { x: Fp2.ZERO, y: Fp2.ZERO }; + if (!Fp2.eql(zz, Fp2.ONE)) throw new Error("invZ was invalid"); return { x: ax, y: ay }; } isTorsionFree() { const { h: cofactor, isTorsionFree } = CURVE; - if (cofactor === _1n4) - return true; - if (isTorsionFree) - return isTorsionFree(Point3, this); - throw new Error("isTorsionFree() has not been declared for the elliptic curve"); + if (cofactor === _1n4) return true; + if (isTorsionFree) return isTorsionFree(Point3, this); + throw new Error( + "isTorsionFree() has not been declared for the elliptic curve" + ); } clearCofactor() { const { h: cofactor, clearCofactor } = CURVE; - if (cofactor === _1n4) - return this; - if (clearCofactor) - return clearCofactor(Point3, this); + if (cofactor === _1n4) return this; + if (clearCofactor) return clearCofactor(Point3, this); return this.multiplyUnsafe(CURVE.h); } toRawBytes(isCompressed = true) { @@ -5018,20 +5390,24 @@ zoo`.split("\n"); ProjectivePoint: Point3, normPrivateKeyToScalar, weierstrassEquation, - isWithinCurveOrder + isWithinCurveOrder, }; } function validateOpts(curve) { const opts = validateBasic(curve); - validateObject(opts, { - hash: "hash", - hmac: "function", - randomBytes: "function" - }, { - bits2int: "function", - bits2int_modN: "function", - lowS: "boolean" - }); + validateObject( + opts, + { + hash: "hash", + hmac: "function", + randomBytes: "function", + }, + { + bits2int: "function", + bits2int_modN: "function", + lowS: "boolean", + } + ); return Object.freeze({ lowS: true, ...opts }); } function weierstrass(curveDef) { @@ -5048,7 +5424,12 @@ zoo`.split("\n"); function invN(a) { return invert(a, CURVE_ORDER); } - const { ProjectivePoint: Point3, normPrivateKeyToScalar, weierstrassEquation, isWithinCurveOrder } = weierstrassPoints({ + const { + ProjectivePoint: Point3, + normPrivateKeyToScalar, + weierstrassEquation, + isWithinCurveOrder, + } = weierstrassPoints({ ...CURVE, toBytes(c, point, isCompressed) { const a = point.toAffine(); @@ -5066,25 +5447,26 @@ zoo`.split("\n"); const tail = bytes2.subarray(1); if (len === compressedLen && (head === 2 || head === 3)) { const x = bytesToNumberBE(tail); - if (!isValidFieldElement(x)) - throw new Error("Point is not on curve"); + if (!isValidFieldElement(x)) throw new Error("Point is not on curve"); const y2 = weierstrassEquation(x); let y = Fp2.sqrt(y2); const isYOdd = (y & _1n4) === _1n4; const isHeadOdd = (head & 1) === 1; - if (isHeadOdd !== isYOdd) - y = Fp2.neg(y); + if (isHeadOdd !== isYOdd) y = Fp2.neg(y); return { x, y }; } else if (len === uncompressedLen && head === 4) { const x = Fp2.fromBytes(tail.subarray(0, Fp2.BYTES)); const y = Fp2.fromBytes(tail.subarray(Fp2.BYTES, 2 * Fp2.BYTES)); return { x, y }; } else { - throw new Error(`Point of length ${len} was invalid. Expected ${compressedLen} compressed bytes or ${uncompressedLen} uncompressed bytes`); + throw new Error( + `Point of length ${len} was invalid. Expected ${compressedLen} compressed bytes or ${uncompressedLen} uncompressed bytes` + ); } - } + }, }); - const numToNByteStr = (num) => bytesToHex2(numberToBytesBE(num, CURVE.nByteLength)); + const numToNByteStr = (num) => + bytesToHex2(numberToBytesBE(num, CURVE.nByteLength)); function isBiggerThanHalfOrder(number2) { const HALF = CURVE_ORDER >> _1n4; return number2 > HALF; @@ -5124,16 +5506,14 @@ zoo`.split("\n"); if (rec == null || ![0, 1, 2, 3].includes(rec)) throw new Error("recovery id invalid"); const radj = rec === 2 || rec === 3 ? r + CURVE.n : r; - if (radj >= Fp2.ORDER) - throw new Error("recovery id 2 or 3 invalid"); + if (radj >= Fp2.ORDER) throw new Error("recovery id 2 or 3 invalid"); const prefix = (rec & 1) === 0 ? "02" : "03"; const R = Point3.fromHex(prefix + numToNByteStr(radj)); const ir = invN(radj); const u1 = modN2(-h * ir); const u2 = modN2(s * ir); const Q = Point3.BASE.multiplyAndAddUnsafe(R, u1, u2); - if (!Q) - throw new Error("point at infinify"); + if (!Q) throw new Error("point at infinify"); Q.assertValidity(); return Q; } @@ -5141,7 +5521,9 @@ zoo`.split("\n"); return isBiggerThanHalfOrder(this.s); } normalizeS() { - return this.hasHighS() ? new Signature(this.r, modN2(-this.s), this.recovery) : this; + return this.hasHighS() + ? new Signature(this.r, modN2(-this.s), this.recovery) + : this; } toDERRawBytes() { return hexToBytes2(this.toDERHex()); @@ -5175,7 +5557,7 @@ zoo`.split("\n"); point._setWindowSize(windowSize); point.multiply(BigInt(3)); return point; - } + }, }; function getPublicKey2(privateKey, isCompressed = true) { return Point3.fromPrivateKey(privateKey).toRawBytes(isCompressed); @@ -5184,34 +5566,34 @@ zoo`.split("\n"); const arr = item instanceof Uint8Array; const str = typeof item === "string"; const len = (arr || str) && item.length; - if (arr) - return len === compressedLen || len === uncompressedLen; - if (str) - return len === 2 * compressedLen || len === 2 * uncompressedLen; - if (item instanceof Point3) - return true; + if (arr) return len === compressedLen || len === uncompressedLen; + if (str) return len === 2 * compressedLen || len === 2 * uncompressedLen; + if (item instanceof Point3) return true; return false; } function getSharedSecret(privateA, publicB, isCompressed = true) { - if (isProbPub(privateA)) - throw new Error("first arg must be private key"); - if (!isProbPub(publicB)) - throw new Error("second arg must be public key"); + if (isProbPub(privateA)) throw new Error("first arg must be private key"); + if (!isProbPub(publicB)) throw new Error("second arg must be public key"); const b = Point3.fromHex(publicB); - return b.multiply(normPrivateKeyToScalar(privateA)).toRawBytes(isCompressed); - } - const bits2int = CURVE.bits2int || function(bytes2) { - const num = bytesToNumberBE(bytes2); - const delta = bytes2.length * 8 - CURVE.nBitLength; - return delta > 0 ? num >> BigInt(delta) : num; - }; - const bits2int_modN = CURVE.bits2int_modN || function(bytes2) { - return modN2(bits2int(bytes2)); - }; + return b + .multiply(normPrivateKeyToScalar(privateA)) + .toRawBytes(isCompressed); + } + const bits2int = + CURVE.bits2int || + function (bytes2) { + const num = bytesToNumberBE(bytes2); + const delta = bytes2.length * 8 - CURVE.nBitLength; + return delta > 0 ? num >> BigInt(delta) : num; + }; + const bits2int_modN = + CURVE.bits2int_modN || + function (bytes2) { + return modN2(bits2int(bytes2)); + }; const ORDER_MASK = bitMask(CURVE.nBitLength); function int2octets(num) { - if (typeof num !== "bigint") - throw new Error("bigint expected"); + if (typeof num !== "bigint") throw new Error("bigint expected"); if (!(_0n4 <= num && num < ORDER_MASK)) throw new Error(`bigint expected < 2^${CURVE.nBitLength}`); return numberToBytesBE(num, CURVE.nByteLength); @@ -5221,11 +5603,9 @@ zoo`.split("\n"); throw new Error("sign() legacy options not supported"); const { hash: hash2, randomBytes: randomBytes2 } = CURVE; let { lowS, prehash, extraEntropy: ent } = opts; - if (lowS == null) - lowS = true; + if (lowS == null) lowS = true; msgHash = ensureBytes("msgHash", msgHash); - if (prehash) - msgHash = ensureBytes("prehashed msgHash", hash2(msgHash)); + if (prehash) msgHash = ensureBytes("prehashed msgHash", hash2(msgHash)); const h1int = bits2int_modN(msgHash); const d = normPrivateKeyToScalar(privateKey); const seedArgs = [int2octets(d), int2octets(h1int)]; @@ -5237,16 +5617,13 @@ zoo`.split("\n"); const m = h1int; function k2sig(kBytes) { const k = bits2int(kBytes); - if (!isWithinCurveOrder(k)) - return; + if (!isWithinCurveOrder(k)) return; const ik = invN(k); const q = Point3.BASE.multiply(k).toAffine(); const r = modN2(q.x); - if (r === _0n4) - return; + if (r === _0n4) return; const s = modN2(ik * modN2(m + r * d)); - if (s === _0n4) - return; + if (s === _0n4) return; let recovery = (q.x === r ? 0 : 2) | Number(q.y & _1n4); let normS = s; if (lowS && isBiggerThanHalfOrder(s)) { @@ -5261,7 +5638,11 @@ zoo`.split("\n"); const defaultVerOpts = { lowS: CURVE.lowS, prehash: false }; function sign(msgHash, privKey, opts = defaultSigOpts) { const { seed, k2sig } = prepSig(msgHash, privKey, opts); - const drbg = createHmacDrbg(CURVE.hash.outputLen, CURVE.nByteLength, CURVE.hmac); + const drbg = createHmacDrbg( + CURVE.hash.outputLen, + CURVE.nByteLength, + CURVE.hmac + ); return drbg(seed, k2sig); } Point3.BASE._setWindowSize(8); @@ -5279,11 +5660,14 @@ zoo`.split("\n"); try { _sig = Signature.fromDER(sg); } catch (derError) { - if (!(derError instanceof DER.Err)) - throw derError; + if (!(derError instanceof DER.Err)) throw derError; _sig = Signature.fromCompact(sg); } - } else if (typeof sg === "object" && typeof sg.r === "bigint" && typeof sg.s === "bigint") { + } else if ( + typeof sg === "object" && + typeof sg.r === "bigint" && + typeof sg.s === "bigint" + ) { const { r: r2, s: s2 } = sg; _sig = new Signature(r2, s2); } else { @@ -5292,21 +5676,20 @@ zoo`.split("\n"); P = Point3.fromHex(publicKey); } catch (error) { if (error.message === "PARSE") - throw new Error(`signature must be Signature instance, Uint8Array or hex string`); + throw new Error( + `signature must be Signature instance, Uint8Array or hex string` + ); return false; } - if (lowS && _sig.hasHighS()) - return false; - if (prehash) - msgHash = CURVE.hash(msgHash); + if (lowS && _sig.hasHighS()) return false; + if (prehash) msgHash = CURVE.hash(msgHash); const { r, s } = _sig; const h = bits2int_modN(msgHash); const is = invN(s); const u1 = modN2(h * is); const u2 = modN2(r * is); const R = Point3.BASE.multiplyAndAddUnsafe(P, u1, u2)?.toAffine(); - if (!R) - return false; + if (!R) return false; const v = modN2(R.x); return v === r; } @@ -5318,14 +5701,13 @@ zoo`.split("\n"); verify, ProjectivePoint: Point3, Signature, - utils + utils, }; } function SWUFpSqrtRatio(Fp2, Z) { const q = Fp2.ORDER; let l = _0n4; - for (let o = q - _1n4; o % _2n3 === _0n4; o /= _2n3) - l += _1n4; + for (let o = q - _1n4; o % _2n3 === _0n4; o /= _2n3) l += _1n4; const c1 = l; const c2 = (q - _1n4) / _2n3 ** c1; const c3 = (c2 - _1n4) / _2n3; @@ -5385,8 +5767,7 @@ zoo`.split("\n"); if (!Fp2.isValid(opts.A) || !Fp2.isValid(opts.B) || !Fp2.isValid(opts.Z)) throw new Error("mapToCurveSimpleSWU: invalid opts"); const sqrtRatio = SWUFpSqrtRatio(Fp2, opts.Z); - if (!Fp2.isOdd) - throw new Error("Fp.isOdd is not implemented!"); + if (!Fp2.isOdd) throw new Error("Fp.isOdd is not implemented!"); return (u) => { let tv1, tv2, tv3, tv4, tv5, tv6, x, y; tv1 = Fp2.sqr(u); @@ -5421,15 +5802,13 @@ zoo`.split("\n"); // node_modules/@noble/curves/esm/abstract/hash-to-curve.js init_define_process(); function validateDST(dst) { - if (dst instanceof Uint8Array) - return dst; - if (typeof dst === "string") - return utf8ToBytes2(dst); + if (dst instanceof Uint8Array) return dst; + if (typeof dst === "string") return utf8ToBytes2(dst); throw new Error("DST must be Uint8Array or string"); } var os2ip = bytesToNumberBE; function i2osp(value, length) { - if (value < 0 || value >= 1 << 8 * length) { + if (value < 0 || value >= 1 << (8 * length)) { throw new Error(`bad I2OSP call: value=${value} length=${length}`); } const res = Array.from({ length }).fill(0); @@ -5447,12 +5826,10 @@ zoo`.split("\n"); return arr; } function isBytes(item) { - if (!(item instanceof Uint8Array)) - throw new Error("Uint8Array expected"); + if (!(item instanceof Uint8Array)) throw new Error("Uint8Array expected"); } function isNum(item) { - if (!Number.isSafeInteger(item)) - throw new Error("number expected"); + if (!Number.isSafeInteger(item)) throw new Error("number expected"); } function expand_message_xmd(msg, DST, lenInBytes, H) { isBytes(msg); @@ -5462,8 +5839,7 @@ zoo`.split("\n"); DST = H(concatBytes2(utf8ToBytes2("H2C-OVERSIZE-DST-"), DST)); const { outputLen: b_in_bytes, blockLen: r_in_bytes } = H; const ell = Math.ceil(lenInBytes / b_in_bytes); - if (ell > 255) - throw new Error("Invalid xmd length"); + if (ell > 255) throw new Error("Invalid xmd length"); const DST_prime = concatBytes2(DST, i2osp(DST.length, 1)); const Z_pad = i2osp(0, r_in_bytes); const l_i_b_str = i2osp(lenInBytes, 2); @@ -5482,12 +5858,20 @@ zoo`.split("\n"); isBytes(DST); isNum(lenInBytes); if (DST.length > 255) { - const dkLen = Math.ceil(2 * k / 8); - DST = H.create({ dkLen }).update(utf8ToBytes2("H2C-OVERSIZE-DST-")).update(DST).digest(); + const dkLen = Math.ceil((2 * k) / 8); + DST = H.create({ dkLen }) + .update(utf8ToBytes2("H2C-OVERSIZE-DST-")) + .update(DST) + .digest(); } if (lenInBytes > 65535 || DST.length > 255) throw new Error("expand_message_xof: invalid lenInBytes"); - return H.create({ dkLen: lenInBytes }).update(msg).update(i2osp(lenInBytes, 2)).update(DST).update(i2osp(DST.length, 1)).digest(); + return H.create({ dkLen: lenInBytes }) + .update(msg) + .update(i2osp(lenInBytes, 2)) + .update(DST) + .update(i2osp(DST.length, 1)) + .digest(); } function hash_to_field(msg, count, options) { validateObject(options, { @@ -5495,7 +5879,7 @@ zoo`.split("\n"); p: "bigint", m: "isSafeInteger", k: "isSafeInteger", - hash: "hash" + hash: "hash", }); const { p, k, m, hash: hash2, expand, DST: _DST } = options; isBytes(msg); @@ -5529,7 +5913,9 @@ zoo`.split("\n"); function isogenyMap(field, map) { const COEFF = map.map((i) => Array.from(i).reverse()); return (x, y) => { - const [xNum, xDen, yNum, yDen] = COEFF.map((val) => val.reduce((acc, i) => field.add(field.mul(acc, x), i))); + const [xNum, xDen, yNum, yDen] = COEFF.map((val) => + val.reduce((acc, i) => field.add(field.mul(acc, x), i)) + ); x = field.div(xNum, xDen); y = field.mul(y, field.div(yNum, yDen)); return { x, y }; @@ -5548,11 +5934,15 @@ zoo`.split("\n"); return P; }, encodeToCurve(msg, options) { - const u = hash_to_field(msg, 1, { ...def, DST: def.encodeDST, ...options }); + const u = hash_to_field(msg, 1, { + ...def, + DST: def.encodeDST, + ...options, + }); const P = Point3.fromAffine(mapToCurve(u[0])).clearCofactor(); P.assertValidity(); return P; - } + }, }; } @@ -5570,18 +5960,20 @@ zoo`.split("\n"); const key = toBytes(_key); this.iHash = hash2.create(); if (typeof this.iHash.update !== "function") - throw new TypeError("Expected instance of class which extends utils.Hash"); + throw new TypeError( + "Expected instance of class which extends utils.Hash" + ); this.blockLen = this.iHash.blockLen; this.outputLen = this.iHash.outputLen; const blockLen = this.blockLen; const pad = new Uint8Array(blockLen); - pad.set(key.length > blockLen ? hash2.create().update(key).digest() : key); - for (let i = 0; i < pad.length; i++) - pad[i] ^= 54; + pad.set( + key.length > blockLen ? hash2.create().update(key).digest() : key + ); + for (let i = 0; i < pad.length; i++) pad[i] ^= 54; this.iHash.update(pad); this.oHash = hash2.create(); - for (let i = 0; i < pad.length; i++) - pad[i] ^= 54 ^ 92; + for (let i = 0; i < pad.length; i++) pad[i] ^= 54 ^ 92; this.oHash.update(pad); pad.fill(0); } @@ -5622,7 +6014,8 @@ zoo`.split("\n"); this.iHash.destroy(); } }; - var hmac = (hash2, key, message) => new HMAC(hash2, key).update(message).digest(); + var hmac = (hash2, key, message) => + new HMAC(hash2, key).update(message).digest(); hmac.create = (hash2, key) => new HMAC(hash2, key); // node_modules/@noble/curves/esm/_shortw_utils.js @@ -5630,7 +6023,7 @@ zoo`.split("\n"); return { hash: hash2, hmac: (key, ...msgs) => hmac(hash2, key, concatBytes(...msgs)), - randomBytes + randomBytes, }; } function createCurve(curveDef, defHash) { @@ -5639,69 +6032,84 @@ zoo`.split("\n"); } // node_modules/@noble/curves/esm/secp256k1.js - var secp256k1P = BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"); - var secp256k1N = BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"); + var secp256k1P = BigInt( + "0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f" + ); + var secp256k1N = BigInt( + "0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141" + ); var _1n5 = BigInt(1); var _2n4 = BigInt(2); var divNearest = (a, b) => (a + b / _2n4) / b; function sqrtMod(y) { const P = secp256k1P; - const _3n3 = BigInt(3), _6n = BigInt(6), _11n = BigInt(11), _22n = BigInt(22); - const _23n = BigInt(23), _44n = BigInt(44), _88n = BigInt(88); - const b2 = y * y * y % P; - const b3 = b2 * b2 * y % P; - const b6 = pow2(b3, _3n3, P) * b3 % P; - const b9 = pow2(b6, _3n3, P) * b3 % P; - const b11 = pow2(b9, _2n4, P) * b2 % P; - const b22 = pow2(b11, _11n, P) * b11 % P; - const b44 = pow2(b22, _22n, P) * b22 % P; - const b88 = pow2(b44, _44n, P) * b44 % P; - const b176 = pow2(b88, _88n, P) * b88 % P; - const b220 = pow2(b176, _44n, P) * b44 % P; - const b223 = pow2(b220, _3n3, P) * b3 % P; - const t1 = pow2(b223, _23n, P) * b22 % P; - const t2 = pow2(t1, _6n, P) * b2 % P; + const _3n3 = BigInt(3), + _6n = BigInt(6), + _11n = BigInt(11), + _22n = BigInt(22); + const _23n = BigInt(23), + _44n = BigInt(44), + _88n = BigInt(88); + const b2 = (y * y * y) % P; + const b3 = (b2 * b2 * y) % P; + const b6 = (pow2(b3, _3n3, P) * b3) % P; + const b9 = (pow2(b6, _3n3, P) * b3) % P; + const b11 = (pow2(b9, _2n4, P) * b2) % P; + const b22 = (pow2(b11, _11n, P) * b11) % P; + const b44 = (pow2(b22, _22n, P) * b22) % P; + const b88 = (pow2(b44, _44n, P) * b44) % P; + const b176 = (pow2(b88, _88n, P) * b88) % P; + const b220 = (pow2(b176, _44n, P) * b44) % P; + const b223 = (pow2(b220, _3n3, P) * b3) % P; + const t1 = (pow2(b223, _23n, P) * b22) % P; + const t2 = (pow2(t1, _6n, P) * b2) % P; const root = pow2(t2, _2n4, P); - if (!Fp.eql(Fp.sqr(root), y)) - throw new Error("Cannot find square root"); + if (!Fp.eql(Fp.sqr(root), y)) throw new Error("Cannot find square root"); return root; } var Fp = Field(secp256k1P, void 0, void 0, { sqrt: sqrtMod }); - var secp256k1 = createCurve({ - a: BigInt(0), - b: BigInt(7), - Fp, - n: secp256k1N, - Gx: BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"), - Gy: BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"), - h: BigInt(1), - lowS: true, - endo: { - beta: BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"), - splitScalar: (k) => { - const n = secp256k1N; - const a1 = BigInt("0x3086d221a7d46bcde86c90e49284eb15"); - const b1 = -_1n5 * BigInt("0xe4437ed6010e88286f547fa90abfe4c3"); - const a2 = BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"); - const b2 = a1; - const POW_2_128 = BigInt("0x100000000000000000000000000000000"); - const c1 = divNearest(b2 * k, n); - const c2 = divNearest(-b1 * k, n); - let k1 = mod(k - c1 * a1 - c2 * a2, n); - let k2 = mod(-c1 * b1 - c2 * b2, n); - const k1neg = k1 > POW_2_128; - const k2neg = k2 > POW_2_128; - if (k1neg) - k1 = n - k1; - if (k2neg) - k2 = n - k2; - if (k1 > POW_2_128 || k2 > POW_2_128) { - throw new Error("splitScalar: Endomorphism failed, k=" + k); - } - return { k1neg, k1, k2neg, k2 }; - } - } - }, sha256); + var secp256k1 = createCurve( + { + a: BigInt(0), + b: BigInt(7), + Fp, + n: secp256k1N, + Gx: BigInt( + "55066263022277343669578718895168534326250603453777594175500187360389116729240" + ), + Gy: BigInt( + "32670510020758816978083085130507043184471273380659243275938904335757337482424" + ), + h: BigInt(1), + lowS: true, + endo: { + beta: BigInt( + "0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee" + ), + splitScalar: (k) => { + const n = secp256k1N; + const a1 = BigInt("0x3086d221a7d46bcde86c90e49284eb15"); + const b1 = -_1n5 * BigInt("0xe4437ed6010e88286f547fa90abfe4c3"); + const a2 = BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"); + const b2 = a1; + const POW_2_128 = BigInt("0x100000000000000000000000000000000"); + const c1 = divNearest(b2 * k, n); + const c2 = divNearest(-b1 * k, n); + let k1 = mod(k - c1 * a1 - c2 * a2, n); + let k2 = mod(-c1 * b1 - c2 * b2, n); + const k1neg = k1 > POW_2_128; + const k2neg = k2 > POW_2_128; + if (k1neg) k1 = n - k1; + if (k2neg) k2 = n - k2; + if (k1 > POW_2_128 || k2 > POW_2_128) { + throw new Error("splitScalar: Endomorphism failed, k=" + k); + } + return { k1neg, k1, k2neg, k2 }; + }, + }, + }, + sha256 + ); var _0n5 = BigInt(0); var fe = (x) => typeof x === "bigint" && _0n5 < x && x < secp256k1P; var ge = (x) => typeof x === "bigint" && _0n5 < x && x < secp256k1N; @@ -5728,13 +6136,11 @@ zoo`.split("\n"); return { scalar, bytes: pointToBytes(p) }; } function lift_x(x) { - if (!fe(x)) - throw new Error("bad x: need 0 < x < p"); + if (!fe(x)) throw new Error("bad x: need 0 < x < p"); const xx = modP(x * x); const c = modP(xx * x + BigInt(7)); let y = sqrtMod(c); - if (y % _2n4 !== _0n5) - y = modP(-y); + if (y % _2n4 !== _0n5) y = modP(-y); const p = new Point(x, y, _1n5); p.assertValidity(); return p; @@ -5752,8 +6158,7 @@ zoo`.split("\n"); const t = numTo32b(d ^ bytesToNumberBE(taggedHash("BIP0340/aux", a))); const rand = taggedHash("BIP0340/nonce", t, px, m); const k_ = modN(bytesToNumberBE(rand)); - if (k_ === _0n5) - throw new Error("sign failed: k is zero"); + if (k_ === _0n5) throw new Error("sign failed: k is zero"); const { bytes: rx, scalar: k } = schnorrGetExtPubKey(k_); const e = challenge(rx, px, m); const sig = new Uint8Array(64); @@ -5770,15 +6175,12 @@ zoo`.split("\n"); try { const P = lift_x(bytesToNumberBE(pub)); const r = bytesToNumberBE(sig.subarray(0, 32)); - if (!fe(r)) - return false; + if (!fe(r)) return false; const s = bytesToNumberBE(sig.subarray(32, 64)); - if (!ge(s)) - return false; + if (!ge(s)) return false; const e = challenge(numTo32b(r), pointToBytes(P), m); const R = GmulAdd(P, s, modN(-e)); - if (!R || !R.hasEvenY() || R.toAffine().x !== r) - return false; + if (!R || !R.hasEvenY() || R.toAffine().x !== r) return false; return true; } catch (error) { return false; @@ -5795,51 +6197,60 @@ zoo`.split("\n"); numberToBytesBE, bytesToNumberBE, taggedHash, - mod - } + mod, + }, }; - var isoMap = isogenyMap(Fp, [ - [ - "0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7", - "0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581", - "0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262", - "0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c" - ], - [ - "0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b", - "0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14", - "0x0000000000000000000000000000000000000000000000000000000000000001" - ], - [ - "0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c", - "0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3", - "0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931", - "0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84" - ], + var isoMap = isogenyMap( + Fp, [ - "0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b", - "0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573", - "0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f", - "0x0000000000000000000000000000000000000000000000000000000000000001" - ] - ].map((i) => i.map((j) => BigInt(j)))); + [ + "0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7", + "0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581", + "0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262", + "0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c", + ], + [ + "0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b", + "0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14", + "0x0000000000000000000000000000000000000000000000000000000000000001", + ], + [ + "0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c", + "0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3", + "0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931", + "0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84", + ], + [ + "0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b", + "0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573", + "0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f", + "0x0000000000000000000000000000000000000000000000000000000000000001", + ], + ].map((i) => i.map((j) => BigInt(j))) + ); var mapSWU = mapToCurveSimpleSWU(Fp, { - A: BigInt("0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533"), + A: BigInt( + "0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533" + ), B: BigInt("1771"), - Z: Fp.create(BigInt("-11")) - }); - var { hashToCurve, encodeToCurve } = createHasher(secp256k1.ProjectivePoint, (scalars) => { - const { x, y } = mapSWU(Fp.create(scalars[0])); - return isoMap(x, y); - }, { - DST: "secp256k1_XMD:SHA-256_SSWU_RO_", - encodeDST: "secp256k1_XMD:SHA-256_SSWU_NU_", - p: Fp.ORDER, - m: 1, - k: 128, - expand: "xmd", - hash: sha256 + Z: Fp.create(BigInt("-11")), }); + var { hashToCurve, encodeToCurve } = createHasher( + secp256k1.ProjectivePoint, + (scalars) => { + const { x, y } = mapSWU(Fp.create(scalars[0])); + return isoMap(x, y); + }, + { + DST: "secp256k1_XMD:SHA-256_SSWU_RO_", + encodeDST: "secp256k1_XMD:SHA-256_SSWU_NU_", + p: Fp.ORDER, + m: 1, + k: 128, + expand: "xmd", + hash: sha256, + } + ); // keys.ts function generatePrivateKey() { @@ -5864,7 +6275,7 @@ zoo`.split("\n"); insertEventIntoDescendingList: () => insertEventIntoDescendingList, normalizeURL: () => normalizeURL, utf8Decoder: () => utf8Decoder, - utf8Encoder: () => utf8Encoder + utf8Encoder: () => utf8Encoder, }); init_define_process(); var utf8Decoder = new TextDecoder("utf-8"); @@ -5872,9 +6283,11 @@ zoo`.split("\n"); function normalizeURL(url) { let p = new URL(url); p.pathname = p.pathname.replace(/\/+/g, "/"); - if (p.pathname.endsWith("/")) - p.pathname = p.pathname.slice(0, -1); - if (p.port === "80" && p.protocol === "ws:" || p.port === "443" && p.protocol === "wss:") + if (p.pathname.endsWith("/")) p.pathname = p.pathname.slice(0, -1); + if ( + (p.port === "80" && p.protocol === "ws:") || + (p.port === "443" && p.protocol === "wss:") + ) p.port = ""; p.searchParams.sort(); p.hash = ""; @@ -5911,7 +6324,7 @@ zoo`.split("\n"); return [ ...sortedArray.slice(0, position), event, - ...sortedArray.slice(position) + ...sortedArray.slice(position), ]; } return sortedArray; @@ -5947,7 +6360,7 @@ zoo`.split("\n"); return [ ...sortedArray.slice(0, position), event, - ...sortedArray.slice(position) + ...sortedArray.slice(position), ]; } return sortedArray; @@ -6012,8 +6425,7 @@ zoo`.split("\n"); return true; } dequeue() { - if (this._size === 0 || !this._first) - return null; + if (this._size === 0 || !this._first) return null; let prev = this._first; this._first = prev.next; prev.next = null; @@ -6024,30 +6436,30 @@ zoo`.split("\n"); // event.ts var Kind = /* @__PURE__ */ ((Kind3) => { - Kind3[Kind3["Metadata"] = 0] = "Metadata"; - Kind3[Kind3["Text"] = 1] = "Text"; - Kind3[Kind3["RecommendRelay"] = 2] = "RecommendRelay"; - Kind3[Kind3["Contacts"] = 3] = "Contacts"; - Kind3[Kind3["EncryptedDirectMessage"] = 4] = "EncryptedDirectMessage"; - Kind3[Kind3["EventDeletion"] = 5] = "EventDeletion"; - Kind3[Kind3["Repost"] = 6] = "Repost"; - Kind3[Kind3["Reaction"] = 7] = "Reaction"; - Kind3[Kind3["BadgeAward"] = 8] = "BadgeAward"; - Kind3[Kind3["ChannelCreation"] = 40] = "ChannelCreation"; - Kind3[Kind3["ChannelMetadata"] = 41] = "ChannelMetadata"; - Kind3[Kind3["ChannelMessage"] = 42] = "ChannelMessage"; - Kind3[Kind3["ChannelHideMessage"] = 43] = "ChannelHideMessage"; - Kind3[Kind3["ChannelMuteUser"] = 44] = "ChannelMuteUser"; - Kind3[Kind3["Blank"] = 255] = "Blank"; - Kind3[Kind3["Report"] = 1984] = "Report"; - Kind3[Kind3["ZapRequest"] = 9734] = "ZapRequest"; - Kind3[Kind3["Zap"] = 9735] = "Zap"; - Kind3[Kind3["RelayList"] = 10002] = "RelayList"; - Kind3[Kind3["ClientAuth"] = 22242] = "ClientAuth"; - Kind3[Kind3["HttpAuth"] = 27235] = "HttpAuth"; - Kind3[Kind3["ProfileBadge"] = 30008] = "ProfileBadge"; - Kind3[Kind3["BadgeDefinition"] = 30009] = "BadgeDefinition"; - Kind3[Kind3["Article"] = 30023] = "Article"; + Kind3[(Kind3["Metadata"] = 0)] = "Metadata"; + Kind3[(Kind3["Text"] = 1)] = "Text"; + Kind3[(Kind3["RecommendRelay"] = 2)] = "RecommendRelay"; + Kind3[(Kind3["Contacts"] = 3)] = "Contacts"; + Kind3[(Kind3["EncryptedDirectMessage"] = 4)] = "EncryptedDirectMessage"; + Kind3[(Kind3["EventDeletion"] = 5)] = "EventDeletion"; + Kind3[(Kind3["Repost"] = 6)] = "Repost"; + Kind3[(Kind3["Reaction"] = 7)] = "Reaction"; + Kind3[(Kind3["BadgeAward"] = 8)] = "BadgeAward"; + Kind3[(Kind3["ChannelCreation"] = 40)] = "ChannelCreation"; + Kind3[(Kind3["ChannelMetadata"] = 41)] = "ChannelMetadata"; + Kind3[(Kind3["ChannelMessage"] = 42)] = "ChannelMessage"; + Kind3[(Kind3["ChannelHideMessage"] = 43)] = "ChannelHideMessage"; + Kind3[(Kind3["ChannelMuteUser"] = 44)] = "ChannelMuteUser"; + Kind3[(Kind3["Blank"] = 255)] = "Blank"; + Kind3[(Kind3["Report"] = 1984)] = "Report"; + Kind3[(Kind3["ZapRequest"] = 9734)] = "ZapRequest"; + Kind3[(Kind3["Zap"] = 9735)] = "Zap"; + Kind3[(Kind3["RelayList"] = 10002)] = "RelayList"; + Kind3[(Kind3["ClientAuth"] = 22242)] = "ClientAuth"; + Kind3[(Kind3["HttpAuth"] = 27235)] = "HttpAuth"; + Kind3[(Kind3["ProfileBadge"] = 30008)] = "ProfileBadge"; + Kind3[(Kind3["BadgeDefinition"] = 30009)] = "BadgeDefinition"; + Kind3[(Kind3["Article"] = 30023)] = "Article"; return Kind3; })(Kind || {}); function getBlankEvent(kind = 255 /* Blank */) { @@ -6055,7 +6467,7 @@ zoo`.split("\n"); kind, content: "", tags: [], - created_at: 0 + created_at: 0, }; } function finishEvent(t, privateKey) { @@ -6074,7 +6486,7 @@ zoo`.split("\n"); evt.created_at, evt.kind, evt.tags, - evt.content + evt.content, ]); } function getEventHash(event) { @@ -6083,27 +6495,18 @@ zoo`.split("\n"); } var isRecord = (obj) => obj instanceof Object; function validateEvent(event) { - if (!isRecord(event)) - return false; - if (typeof event.kind !== "number") - return false; - if (typeof event.content !== "string") - return false; - if (typeof event.created_at !== "number") - return false; - if (typeof event.pubkey !== "string") - return false; - if (!event.pubkey.match(/^[a-f0-9]{64}$/)) - return false; - if (!Array.isArray(event.tags)) - return false; + if (!isRecord(event)) return false; + if (typeof event.kind !== "number") return false; + if (typeof event.content !== "string") return false; + if (typeof event.created_at !== "number") return false; + if (typeof event.pubkey !== "string") return false; + if (!event.pubkey.match(/^[a-f0-9]{64}$/)) return false; + if (!Array.isArray(event.tags)) return false; for (let i = 0; i < event.tags.length; i++) { let tag = event.tags[i]; - if (!Array.isArray(tag)) - return false; + if (!Array.isArray(tag)) return false; for (let j = 0; j < tag.length; j++) { - if (typeof tag[j] === "object") - return false; + if (typeof tag[j] === "object") return false; } } return true; @@ -6133,8 +6536,7 @@ zoo`.split("\n"); return false; } } - if (filter.kinds && filter.kinds.indexOf(event.kind) === -1) - return false; + if (filter.kinds && filter.kinds.indexOf(event.kind) === -1) return false; if (filter.authors && filter.authors.indexOf(event.pubkey) === -1) { if (!filter.authors.some((prefix) => event.pubkey.startsWith(prefix))) { return false; @@ -6144,22 +6546,22 @@ zoo`.split("\n"); if (f2[0] === "#") { let tagName = f2.slice(1); let values = filter[`#${tagName}`]; - if (values && !event.tags.find( - ([t, v]) => t === f2.slice(1) && values.indexOf(v) !== -1 - )) + if ( + values && + !event.tags.find( + ([t, v]) => t === f2.slice(1) && values.indexOf(v) !== -1 + ) + ) return false; } } - if (filter.since && event.created_at < filter.since) - return false; - if (filter.until && event.created_at > filter.until) - return false; + if (filter.since && event.created_at < filter.since) return false; + if (filter.until && event.created_at > filter.until) return false; return true; } function matchFilters(filters, event) { for (let i = 0; i < filters.length; i++) { - if (matchFilter(filters[i], event)) - return true; + if (matchFilter(filters[i], event)) return true; } return false; } @@ -6168,12 +6570,16 @@ zoo`.split("\n"); for (let i = 0; i < filters.length; i++) { let filter = filters[i]; Object.entries(filter).forEach(([property, values]) => { - if (property === "kinds" || property === "ids" || property === "authors" || property[0] === "#") { + if ( + property === "kinds" || + property === "ids" || + property === "authors" || + property[0] === "#" + ) { result[property] = result[property] || []; for (let v = 0; v < values.length; v++) { let value = values[v]; - if (!result[property].includes(value)) - result[property].push(value); + if (!result[property].includes(value)) result[property].push(value); } } }); @@ -6195,7 +6601,7 @@ zoo`.split("\n"); getSubscriptionId: () => getSubscriptionId, matchEventId: () => matchEventId, matchEventKind: () => matchEventKind, - matchEventPubkey: () => matchEventPubkey + matchEventPubkey: () => matchEventPubkey, }); init_define_process(); function getHex64(json, field) { @@ -6213,15 +6619,12 @@ zoo`.split("\n"); } function getSubscriptionId(json) { let idx = json.slice(0, 22).indexOf(`"EVENT"`); - if (idx === -1) - return null; + if (idx === -1) return null; let pstart = json.slice(idx + 7 + 1).indexOf(`"`); - if (pstart === -1) - return null; + if (pstart === -1) return null; let start = idx + 7 + 1 + pstart; let pend = json.slice(start + 1, 80).indexOf(`"`); - if (pend === -1) - return null; + if (pend === -1) return null; let end = start + 1 + pend; return json.slice(start + 1, end); } @@ -6241,7 +6644,7 @@ zoo`.split("\n"); disconnect: [], error: [], notice: [], - auth: [] + auth: [], }); function relayInit(url, options = {}) { let { listTimeout = 3e3, getTimeout = 3e3, countTimeout = 3e3 } = options; @@ -6252,8 +6655,7 @@ zoo`.split("\n"); var pubListeners = {}; var connectionPromise; async function connectRelay() { - if (connectionPromise) - return connectionPromise; + if (connectionPromise) return connectionPromise; connectionPromise = new Promise((resolve, reject) => { try { ws = new WebSocket(url); @@ -6288,12 +6690,15 @@ zoo`.split("\n"); return; } var json = incomingMessageQueue.dequeue(); - if (!json) - return; + if (!json) return; let subid = getSubscriptionId(json); if (subid) { let so = openSubs[subid]; - if (so && so.alreadyHaveEvent && so.alreadyHaveEvent(getHex64(json, "id"), url)) { + if ( + so && + so.alreadyHaveEvent && + so.alreadyHaveEvent(getHex64(json, "id"), url) + ) { return; } } @@ -6303,7 +6708,12 @@ zoo`.split("\n"); case "EVENT": { let id2 = data[1]; let event = data[2]; - if (validateEvent(event) && openSubs[id2] && (openSubs[id2].skipVerification || verifySignature(event)) && matchFilters(openSubs[id2].filters, event)) { + if ( + validateEvent(event) && + openSubs[id2] && + (openSubs[id2].skipVerification || verifySignature(event)) && + matchFilters(openSubs[id2].filters, event) + ) { openSubs[id2]; (subListeners[id2]?.event || []).forEach((cb) => cb(event)); } @@ -6313,7 +6723,6 @@ zoo`.split("\n"); let id = data[1]; let payload = data[2]; if (openSubs[id]) { - ; (subListeners[id]?.count || []).forEach((cb) => cb(payload)); } return; @@ -6330,10 +6739,8 @@ zoo`.split("\n"); let ok = data[2]; let reason = data[3] || ""; if (id2 in pubListeners) { - if (ok) - pubListeners[id2].ok.forEach((cb) => cb()); - else - pubListeners[id2].failed.forEach((cb) => cb(reason)); + if (ok) pubListeners[id2].ok.forEach((cb) => cb()); + else pubListeners[id2].failed.forEach((cb) => cb(reason)); pubListeners[id2].ok = []; pubListeners[id2].failed = []; } @@ -6360,8 +6767,7 @@ zoo`.split("\n"); return ws?.readyState === 1; } async function connect() { - if (connected()) - return; + if (connected()) return; await connectRelay(); } async function trySend(params) { @@ -6378,26 +6784,30 @@ zoo`.split("\n"); console.log(err); } } - const sub = (filters, { - verb = "REQ", - skipVerification = false, - alreadyHaveEvent = null, - id = Math.random().toString().slice(2) - } = {}) => { + const sub = ( + filters, + { + verb = "REQ", + skipVerification = false, + alreadyHaveEvent = null, + id = Math.random().toString().slice(2), + } = {} + ) => { let subid = id; openSubs[subid] = { id: subid, filters, skipVerification, - alreadyHaveEvent + alreadyHaveEvent, }; trySend([verb, subid, ...filters]); return { - sub: (newFilters, newOpts = {}) => sub(newFilters || filters, { - skipVerification: newOpts.skipVerification || skipVerification, - alreadyHaveEvent: newOpts.alreadyHaveEvent || alreadyHaveEvent, - id: subid - }), + sub: (newFilters, newOpts = {}) => + sub(newFilters || filters, { + skipVerification: newOpts.skipVerification || skipVerification, + alreadyHaveEvent: newOpts.alreadyHaveEvent || alreadyHaveEvent, + id: subid, + }), unsub: () => { delete openSubs[subid]; delete subListeners[subid]; @@ -6407,39 +6817,35 @@ zoo`.split("\n"); subListeners[subid] = subListeners[subid] || { event: [], count: [], - eose: [] + eose: [], }; subListeners[subid][type].push(cb); }, off: (type, cb) => { let listeners2 = subListeners[subid]; let idx = listeners2[type].indexOf(cb); - if (idx >= 0) - listeners2[type].splice(idx, 1); - } + if (idx >= 0) listeners2[type].splice(idx, 1); + }, }; }; function _publishEvent(event, type) { - if (!event.id) - throw new Error(`event ${event} has no id`); + if (!event.id) throw new Error(`event ${event} has no id`); let id = event.id; trySend([type, event]); return { on: (type2, cb) => { pubListeners[id] = pubListeners[id] || { ok: [], - failed: [] + failed: [], }; pubListeners[id][type2].push(cb); }, off: (type2, cb) => { let listeners2 = pubListeners[id]; - if (!listeners2) - return; + if (!listeners2) return; let idx = listeners2[type2].indexOf(cb); - if (idx >= 0) - listeners2[type2].splice(idx, 1); - } + if (idx >= 0) listeners2[type2].splice(idx, 1); + }, }; } return { @@ -6448,55 +6854,56 @@ zoo`.split("\n"); on: (type, cb) => { listeners[type].push(cb); if (type === "connect" && ws?.readyState === 1) { - ; cb(); } }, off: (type, cb) => { let index = listeners[type].indexOf(cb); - if (index !== -1) - listeners[type].splice(index, 1); + if (index !== -1) listeners[type].splice(index, 1); }, - list: (filters, opts) => new Promise((resolve) => { - let s = sub(filters, opts); - let events = []; - let timeout = setTimeout(() => { - s.unsub(); - resolve(events); - }, listTimeout); - s.on("eose", () => { - s.unsub(); - clearTimeout(timeout); - resolve(events); - }); - s.on("event", (event) => { - events.push(event); - }); - }), - get: (filter, opts) => new Promise((resolve) => { - let s = sub([filter], opts); - let timeout = setTimeout(() => { - s.unsub(); - resolve(null); - }, getTimeout); - s.on("event", (event) => { - s.unsub(); - clearTimeout(timeout); - resolve(event); - }); - }), - count: (filters) => new Promise((resolve) => { - let s = sub(filters, { ...sub, verb: "COUNT" }); - let timeout = setTimeout(() => { - s.unsub(); - resolve(null); - }, countTimeout); - s.on("count", (event) => { - s.unsub(); - clearTimeout(timeout); - resolve(event); - }); - }), + list: (filters, opts) => + new Promise((resolve) => { + let s = sub(filters, opts); + let events = []; + let timeout = setTimeout(() => { + s.unsub(); + resolve(events); + }, listTimeout); + s.on("eose", () => { + s.unsub(); + clearTimeout(timeout); + resolve(events); + }); + s.on("event", (event) => { + events.push(event); + }); + }), + get: (filter, opts) => + new Promise((resolve) => { + let s = sub([filter], opts); + let timeout = setTimeout(() => { + s.unsub(); + resolve(null); + }, getTimeout); + s.on("event", (event) => { + s.unsub(); + clearTimeout(timeout); + resolve(event); + }); + }), + count: (filters) => + new Promise((resolve) => { + let s = sub(filters, { ...sub, verb: "COUNT" }); + let timeout = setTimeout(() => { + s.unsub(); + resolve(null); + }, countTimeout); + s.on("count", (event) => { + s.unsub(); + clearTimeout(timeout); + resolve(event); + }); + }), publish(event) { return _publishEvent(event, "EVENT"); }, @@ -6514,7 +6921,7 @@ zoo`.split("\n"); }, get status() { return ws?.readyState ?? 3; - } + }, }; } @@ -6535,8 +6942,7 @@ zoo`.split("\n"); close(relays) { relays.forEach((url) => { let relay = this._conn[normalizeURL(url)]; - if (relay) - relay.close(); + if (relay) relay.close(); }); } async ensureRelay(url) { @@ -6544,7 +6950,7 @@ zoo`.split("\n"); if (!this._conn[nm]) { this._conn[nm] = relayInit(nm, { getTimeout: this.getTimeout * 0.9, - listTimeout: this.getTimeout * 0.9 + listTimeout: this.getTimeout * 0.9, }); } const relay = this._conn[nm]; @@ -6553,7 +6959,7 @@ zoo`.split("\n"); } sub(relays, filters, opts) { let _knownIds = /* @__PURE__ */ new Set(); - let modifiedOpts = { ...opts || {} }; + let modifiedOpts = { ...(opts || {}) }; modifiedOpts.alreadyHaveEvent = (id, url) => { if (opts?.alreadyHaveEvent?.(id, url)) { return true; @@ -6572,8 +6978,7 @@ zoo`.split("\n"); let eoseSent = false; let eoseTimeout = setTimeout(() => { eoseSent = true; - for (let cb of eoseListeners.values()) - cb(); + for (let cb of eoseListeners.values()) cb(); }, this.eoseSubTimeout); relays.forEach(async (relay) => { let r; @@ -6583,17 +6988,14 @@ zoo`.split("\n"); handleEose(); return; } - if (!r) - return; + if (!r) return; let s = r.sub(filters, modifiedOpts); s.on("event", (event) => { _knownIds.add(event.id); - for (let cb of eventListeners.values()) - cb(event); + for (let cb of eventListeners.values()) cb(event); }); s.on("eose", () => { - if (eoseSent) - return; + if (eoseSent) return; handleEose(); }); subs.push(s); @@ -6601,8 +7003,7 @@ zoo`.split("\n"); eosesMissing--; if (eosesMissing === 0) { clearTimeout(eoseTimeout); - for (let cb of eoseListeners.values()) - cb(); + for (let cb of eoseListeners.values()) cb(); } } }); @@ -6624,9 +7025,8 @@ zoo`.split("\n"); off(type, cb) { if (type === "event") { eventListeners.delete(cb); - } else if (type === "eose") - eoseListeners.delete(cb); - } + } else if (type === "eose") eoseListeners.delete(cb); + }, }; return greaterSub; } @@ -6664,9 +7064,7 @@ zoo`.split("\n"); r = await this.ensureRelay(relay); return r.publish(event); } catch (_) { - return { on() { - }, off() { - } }; + return { on() {}, off() {} }; } }); const callbackMap = /* @__PURE__ */ new Map(); @@ -6687,7 +7085,7 @@ zoo`.split("\n"); pub.off(type, callback); } }); - } + }, }; } seenOn(id) { @@ -6709,46 +7107,62 @@ zoo`.split("\n"); nprofileEncode: () => nprofileEncode, npubEncode: () => npubEncode, nrelayEncode: () => nrelayEncode, - nsecEncode: () => nsecEncode + nsecEncode: () => nsecEncode, }); init_define_process(); // node_modules/@scure/base/lib/esm/index.js init_define_process(); function assertNumber(n) { - if (!Number.isSafeInteger(n)) - throw new Error(`Wrong integer: ${n}`); + if (!Number.isSafeInteger(n)) throw new Error(`Wrong integer: ${n}`); } function chain(...args) { const wrap = (a, b) => (c) => a(b(c)); - const encode = Array.from(args).reverse().reduce((acc, i) => acc ? wrap(acc, i.encode) : i.encode, void 0); - const decode2 = args.reduce((acc, i) => acc ? wrap(acc, i.decode) : i.decode, void 0); + const encode = Array.from(args) + .reverse() + .reduce((acc, i) => (acc ? wrap(acc, i.encode) : i.encode), void 0); + const decode2 = args.reduce( + (acc, i) => (acc ? wrap(acc, i.decode) : i.decode), + void 0 + ); return { encode, decode: decode2 }; } function alphabet(alphabet2) { return { encode: (digits) => { - if (!Array.isArray(digits) || digits.length && typeof digits[0] !== "number") - throw new Error("alphabet.encode input should be an array of numbers"); + if ( + !Array.isArray(digits) || + (digits.length && typeof digits[0] !== "number") + ) + throw new Error( + "alphabet.encode input should be an array of numbers" + ); return digits.map((i) => { assertNumber(i); if (i < 0 || i >= alphabet2.length) - throw new Error(`Digit index outside alphabet: ${i} (alphabet: ${alphabet2.length})`); + throw new Error( + `Digit index outside alphabet: ${i} (alphabet: ${alphabet2.length})` + ); return alphabet2[i]; }); }, decode: (input) => { - if (!Array.isArray(input) || input.length && typeof input[0] !== "string") + if ( + !Array.isArray(input) || + (input.length && typeof input[0] !== "string") + ) throw new Error("alphabet.decode input should be array of strings"); return input.map((letter) => { if (typeof letter !== "string") throw new Error(`alphabet.decode: not string element=${letter}`); const index = alphabet2.indexOf(letter); if (index === -1) - throw new Error(`Unknown letter: "${letter}". Allowed: ${alphabet2}`); + throw new Error( + `Unknown letter: "${letter}". Allowed: ${alphabet2}` + ); return index; }); - } + }, }; } function join(separator = "") { @@ -6756,7 +7170,10 @@ zoo`.split("\n"); throw new Error("join separator should be string"); return { encode: (from) => { - if (!Array.isArray(from) || from.length && typeof from[0] !== "string") + if ( + !Array.isArray(from) || + (from.length && typeof from[0] !== "string") + ) throw new Error("join.encode input should be array of strings"); for (let i of from) if (typeof i !== "string") @@ -6767,7 +7184,7 @@ zoo`.split("\n"); if (typeof to !== "string") throw new Error("join.decode input should be string"); return to.split(separator); - } + }, }; } function padding(bits, chr = "=") { @@ -6776,30 +7193,37 @@ zoo`.split("\n"); throw new Error("padding chr should be string"); return { encode(data) { - if (!Array.isArray(data) || data.length && typeof data[0] !== "string") + if ( + !Array.isArray(data) || + (data.length && typeof data[0] !== "string") + ) throw new Error("padding.encode input should be array of strings"); for (let i of data) if (typeof i !== "string") throw new Error(`padding.encode: non-string input=${i}`); - while (data.length * bits % 8) - data.push(chr); + while ((data.length * bits) % 8) data.push(chr); return data; }, decode(input) { - if (!Array.isArray(input) || input.length && typeof input[0] !== "string") + if ( + !Array.isArray(input) || + (input.length && typeof input[0] !== "string") + ) throw new Error("padding.encode input should be array of strings"); for (let i of input) if (typeof i !== "string") throw new Error(`padding.decode: non-string input=${i}`); let end = input.length; - if (end * bits % 8) - throw new Error("Invalid padding: string should have whole number of bytes"); + if ((end * bits) % 8) + throw new Error( + "Invalid padding: string should have whole number of bytes" + ); for (; end > 0 && input[end - 1] === chr; end--) { - if (!((end - 1) * bits % 8)) + if (!(((end - 1) * bits) % 8)) throw new Error("Invalid padding: string has too much padding"); } return input.slice(0, end); - } + }, }; } function normalize(fn) { @@ -6809,20 +7233,22 @@ zoo`.split("\n"); } function convertRadix(data, from, to) { if (from < 2) - throw new Error(`convertRadix: wrong from=${from}, base cannot be less than 2`); + throw new Error( + `convertRadix: wrong from=${from}, base cannot be less than 2` + ); if (to < 2) - throw new Error(`convertRadix: wrong to=${to}, base cannot be less than 2`); + throw new Error( + `convertRadix: wrong to=${to}, base cannot be less than 2` + ); if (!Array.isArray(data)) throw new Error("convertRadix: data should be array"); - if (!data.length) - return []; + if (!data.length) return []; let pos = 0; const res = []; const digits = Array.from(data); digits.forEach((d) => { assertNumber(d); - if (d < 0 || d >= from) - throw new Error(`Wrong integer: ${d}`); + if (d < 0 || d >= from) throw new Error(`Wrong integer: ${d}`); }); while (true) { let carry = 0; @@ -6830,39 +7256,45 @@ zoo`.split("\n"); for (let i = pos; i < digits.length; i++) { const digit = digits[i]; const digitBase = from * carry + digit; - if (!Number.isSafeInteger(digitBase) || from * carry / from !== carry || digitBase - digit !== from * carry) { + if ( + !Number.isSafeInteger(digitBase) || + (from * carry) / from !== carry || + digitBase - digit !== from * carry + ) { throw new Error("convertRadix: carry overflow"); } carry = digitBase % to; digits[i] = Math.floor(digitBase / to); - if (!Number.isSafeInteger(digits[i]) || digits[i] * to + carry !== digitBase) + if ( + !Number.isSafeInteger(digits[i]) || + digits[i] * to + carry !== digitBase + ) throw new Error("convertRadix: carry overflow"); - if (!done) - continue; - else if (!digits[i]) - pos = i; - else - done = false; + if (!done) continue; + else if (!digits[i]) pos = i; + else done = false; } res.push(carry); - if (done) - break; + if (done) break; } - for (let i = 0; i < data.length - 1 && data[i] === 0; i++) - res.push(0); + for (let i = 0; i < data.length - 1 && data[i] === 0; i++) res.push(0); return res.reverse(); } - var gcd = (a, b) => !b ? a : gcd(b, a % b); + var gcd = (a, b) => (!b ? a : gcd(b, a % b)); var radix2carry = (from, to) => from + (to - gcd(from, to)); function convertRadix2(data, from, to, padding2) { if (!Array.isArray(data)) throw new Error("convertRadix2: data should be array"); if (from <= 0 || from > 32) throw new Error(`convertRadix2: wrong from=${from}`); - if (to <= 0 || to > 32) - throw new Error(`convertRadix2: wrong to=${to}`); + if (to <= 0 || to > 32) throw new Error(`convertRadix2: wrong to=${to}`); if (radix2carry(from, to) > 32) { - throw new Error(`convertRadix2: carry overflow from=${from} to=${to} carryBits=${radix2carry(from, to)}`); + throw new Error( + `convertRadix2: carry overflow from=${from} to=${to} carryBits=${radix2carry( + from, + to + )}` + ); } let carry = 0; let pos = 0; @@ -6872,21 +7304,20 @@ zoo`.split("\n"); assertNumber(n); if (n >= 2 ** from) throw new Error(`convertRadix2: invalid data word=${n} from=${from}`); - carry = carry << from | n; + carry = (carry << from) | n; if (pos + from > 32) - throw new Error(`convertRadix2: carry overflow pos=${pos} from=${from}`); + throw new Error( + `convertRadix2: carry overflow pos=${pos} from=${from}` + ); pos += from; for (; pos >= to; pos -= to) - res.push((carry >> pos - to & mask) >>> 0); + res.push(((carry >> (pos - to)) & mask) >>> 0); carry &= 2 ** pos - 1; } - carry = carry << to - pos & mask; - if (!padding2 && pos >= from) - throw new Error("Excess padding"); - if (!padding2 && carry) - throw new Error(`Non-zero padding: ${carry}`); - if (padding2 && pos > 0) - res.push(carry >>> 0); + carry = (carry << (to - pos)) & mask; + if (!padding2 && pos >= from) throw new Error("Excess padding"); + if (!padding2 && carry) throw new Error(`Non-zero padding: ${carry}`); + if (padding2 && pos > 0) res.push(carry >>> 0); return res; } function radix(num) { @@ -6898,10 +7329,13 @@ zoo`.split("\n"); return convertRadix(Array.from(bytes2), 2 ** 8, num); }, decode: (digits) => { - if (!Array.isArray(digits) || digits.length && typeof digits[0] !== "number") + if ( + !Array.isArray(digits) || + (digits.length && typeof digits[0] !== "number") + ) throw new Error("radix.decode input should be array of strings"); return Uint8Array.from(convertRadix(digits, num, 2 ** 8)); - } + }, }; } function radix2(bits, revPadding = false) { @@ -6917,20 +7351,22 @@ zoo`.split("\n"); return convertRadix2(Array.from(bytes2), 8, bits, !revPadding); }, decode: (digits) => { - if (!Array.isArray(digits) || digits.length && typeof digits[0] !== "number") + if ( + !Array.isArray(digits) || + (digits.length && typeof digits[0] !== "number") + ) throw new Error("radix2.decode input should be array of strings"); return Uint8Array.from(convertRadix2(digits, bits, 8, revPadding)); - } + }, }; } function unsafeWrapper(fn) { if (typeof fn !== "function") throw new Error("unsafeWrapper fn should be function"); - return function(...args) { + return function (...args) { try { return fn.apply(null, args); - } catch (e) { - } + } catch (e) {} }; } function checksum(len, fn) { @@ -6957,19 +7393,54 @@ zoo`.split("\n"); if (newChecksum[i] !== oldChecksum[i]) throw new Error("Invalid checksum"); return payload; - } + }, }; } var base16 = chain(radix2(4), alphabet("0123456789ABCDEF"), join("")); - var base32 = chain(radix2(5), alphabet("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"), padding(5), join("")); - var base32hex = chain(radix2(5), alphabet("0123456789ABCDEFGHIJKLMNOPQRSTUV"), padding(5), join("")); - var base32crockford = chain(radix2(5), alphabet("0123456789ABCDEFGHJKMNPQRSTVWXYZ"), join(""), normalize((s) => s.toUpperCase().replace(/O/g, "0").replace(/[IL]/g, "1"))); - var base64 = chain(radix2(6), alphabet("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"), padding(6), join("")); - var base64url = chain(radix2(6), alphabet("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"), padding(6), join("")); + var base32 = chain( + radix2(5), + alphabet("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"), + padding(5), + join("") + ); + var base32hex = chain( + radix2(5), + alphabet("0123456789ABCDEFGHIJKLMNOPQRSTUV"), + padding(5), + join("") + ); + var base32crockford = chain( + radix2(5), + alphabet("0123456789ABCDEFGHJKMNPQRSTVWXYZ"), + join(""), + normalize((s) => s.toUpperCase().replace(/O/g, "0").replace(/[IL]/g, "1")) + ); + var base64 = chain( + radix2(6), + alphabet( + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" + ), + padding(6), + join("") + ); + var base64url = chain( + radix2(6), + alphabet( + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_" + ), + padding(6), + join("") + ); var genBase58 = (abc) => chain(radix(58), alphabet(abc), join("")); - var base58 = genBase58("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"); - var base58flickr = genBase58("123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"); - var base58xrp = genBase58("rpshnaf39wBUDNEGHJKLM4PQRST7VWXYZ2bcdeCg65jkm8oFqi1tuvAxyz"); + var base58 = genBase58( + "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz" + ); + var base58flickr = genBase58( + "123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ" + ); + var base58xrp = genBase58( + "rpshnaf39wBUDNEGHJKLM4PQRST7VWXYZ2bcdeCg65jkm8oFqi1tuvAxyz" + ); var XMR_BLOCK_LEN = [0, 2, 3, 5, 6, 7, 9, 10, 11]; var base58xmr = { encode(data) { @@ -6987,23 +7458,30 @@ zoo`.split("\n"); const blockLen = XMR_BLOCK_LEN.indexOf(slice.length); const block = base58.decode(slice); for (let j = 0; j < block.length - blockLen; j++) { - if (block[j] !== 0) - throw new Error("base58xmr: wrong padding"); + if (block[j] !== 0) throw new Error("base58xmr: wrong padding"); } res = res.concat(Array.from(block.slice(block.length - blockLen))); } return Uint8Array.from(res); - } + }, }; - var base58check = (sha2562) => chain(checksum(4, (data) => sha2562(sha2562(data))), base58); - var BECH_ALPHABET = chain(alphabet("qpzry9x8gf2tvdw0s3jn54khce6mua7l"), join("")); - var POLYMOD_GENERATORS = [996825010, 642813549, 513874426, 1027748829, 705979059]; + var base58check = (sha2562) => + chain( + checksum(4, (data) => sha2562(sha2562(data))), + base58 + ); + var BECH_ALPHABET = chain( + alphabet("qpzry9x8gf2tvdw0s3jn54khce6mua7l"), + join("") + ); + var POLYMOD_GENERATORS = [ + 996825010, 642813549, 513874426, 1027748829, 705979059, + ]; function bech32Polymod(pre) { const b = pre >> 25; let chk = (pre & 33554431) << 5; for (let i = 0; i < POLYMOD_GENERATORS.length; i++) { - if ((b >> i & 1) === 1) - chk ^= POLYMOD_GENERATORS[i]; + if (((b >> i) & 1) === 1) chk ^= POLYMOD_GENERATORS[i]; } return chk; } @@ -7012,17 +7490,14 @@ zoo`.split("\n"); let chk = 1; for (let i = 0; i < len; i++) { const c = prefix.charCodeAt(i); - if (c < 33 || c > 126) - throw new Error(`Invalid prefix (${prefix})`); - chk = bech32Polymod(chk) ^ c >> 5; + if (c < 33 || c > 126) throw new Error(`Invalid prefix (${prefix})`); + chk = bech32Polymod(chk) ^ (c >> 5); } chk = bech32Polymod(chk); for (let i = 0; i < len; i++) - chk = bech32Polymod(chk) ^ prefix.charCodeAt(i) & 31; - for (let v of words) - chk = bech32Polymod(chk) ^ v; - for (let i = 0; i < 6; i++) - chk = bech32Polymod(chk); + chk = bech32Polymod(chk) ^ (prefix.charCodeAt(i) & 31); + for (let v of words) chk = bech32Polymod(chk) ^ v; + for (let i = 0; i < 6; i++) chk = bech32Polymod(chk); chk ^= encodingConst; return BECH_ALPHABET.encode(convertRadix2([chk % 2 ** 30], 30, 5, false)); } @@ -7034,27 +7509,44 @@ zoo`.split("\n"); const fromWordsUnsafe = unsafeWrapper(fromWords); function encode(prefix, words, limit = 90) { if (typeof prefix !== "string") - throw new Error(`bech32.encode prefix should be string, not ${typeof prefix}`); - if (!Array.isArray(words) || words.length && typeof words[0] !== "number") - throw new Error(`bech32.encode words should be array of numbers, not ${typeof words}`); + throw new Error( + `bech32.encode prefix should be string, not ${typeof prefix}` + ); + if ( + !Array.isArray(words) || + (words.length && typeof words[0] !== "number") + ) + throw new Error( + `bech32.encode words should be array of numbers, not ${typeof words}` + ); const actualLength = prefix.length + 7 + words.length; if (limit !== false && actualLength > limit) throw new TypeError(`Length ${actualLength} exceeds limit ${limit}`); prefix = prefix.toLowerCase(); - return `${prefix}1${BECH_ALPHABET.encode(words)}${bechChecksum(prefix, words, ENCODING_CONST)}`; + return `${prefix}1${BECH_ALPHABET.encode(words)}${bechChecksum( + prefix, + words, + ENCODING_CONST + )}`; } function decode2(str, limit = 90) { if (typeof str !== "string") - throw new Error(`bech32.decode input should be string, not ${typeof str}`); - if (str.length < 8 || limit !== false && str.length > limit) - throw new TypeError(`Wrong string length: ${str.length} (${str}). Expected (8..${limit})`); + throw new Error( + `bech32.decode input should be string, not ${typeof str}` + ); + if (str.length < 8 || (limit !== false && str.length > limit)) + throw new TypeError( + `Wrong string length: ${str.length} (${str}). Expected (8..${limit})` + ); const lowered = str.toLowerCase(); if (str !== lowered && str !== str.toUpperCase()) throw new Error(`String must be lowercase or uppercase`); str = lowered; const sepIndex = str.lastIndexOf("1"); if (sepIndex === 0 || sepIndex === -1) - throw new Error(`Letter "1" must be present between prefix and data only`); + throw new Error( + `Letter "1" must be present between prefix and data only` + ); const prefix = str.slice(0, sepIndex); const _words2 = str.slice(sepIndex + 1); if (_words2.length < 6) @@ -7070,19 +7562,34 @@ zoo`.split("\n"); const { prefix, words } = decode2(str, false); return { prefix, words, bytes: fromWords(words) }; } - return { encode, decode: decode2, decodeToBytes, decodeUnsafe, fromWords, fromWordsUnsafe, toWords }; + return { + encode, + decode: decode2, + decodeToBytes, + decodeUnsafe, + fromWords, + fromWordsUnsafe, + toWords, + }; } var bech32 = genBech32("bech32"); var bech32m = genBech32("bech32m"); var utf8 = { encode: (data) => new TextDecoder().decode(data), - decode: (str) => new TextEncoder().encode(str) + decode: (str) => new TextEncoder().encode(str), }; - var hex = chain(radix2(4), alphabet("0123456789abcdef"), join(""), normalize((s) => { - if (typeof s !== "string" || s.length % 2) - throw new TypeError(`hex.decode: expected string, got ${typeof s} with length ${s.length}`); - return s.toLowerCase(); - })); + var hex = chain( + radix2(4), + alphabet("0123456789abcdef"), + join(""), + normalize((s) => { + if (typeof s !== "string" || s.length % 2) + throw new TypeError( + `hex.decode: expected string, got ${typeof s} with length ${s.length}` + ); + return s.toLowerCase(); + }) + ); var CODERS = { utf8, hex, @@ -7091,9 +7598,11 @@ zoo`.split("\n"); base64, base64url, base58, - base58xmr + base58xmr, }; - var coderTypeError = `Invalid encoding type. Available types: ${Object.keys(CODERS).join(", ")}`; + var coderTypeError = `Invalid encoding type. Available types: ${Object.keys( + CODERS + ).join(", ")}`; // nip19.ts var Bech32MaxSize = 5e3; @@ -7104,22 +7613,20 @@ zoo`.split("\n"); switch (prefix) { case "nprofile": { let tlv = parseTLV(data); - if (!tlv[0]?.[0]) - throw new Error("missing TLV 0 for nprofile"); + if (!tlv[0]?.[0]) throw new Error("missing TLV 0 for nprofile"); if (tlv[0][0].length !== 32) throw new Error("TLV 0 should be 32 bytes"); return { type: "nprofile", data: { pubkey: bytesToHex(tlv[0][0]), - relays: tlv[1] ? tlv[1].map((d) => utf8Decoder.decode(d)) : [] - } + relays: tlv[1] ? tlv[1].map((d) => utf8Decoder.decode(d)) : [], + }, }; } case "nevent": { let tlv = parseTLV(data); - if (!tlv[0]?.[0]) - throw new Error("missing TLV 0 for nevent"); + if (!tlv[0]?.[0]) throw new Error("missing TLV 0 for nevent"); if (tlv[0][0].length !== 32) throw new Error("TLV 0 should be 32 bytes"); if (tlv[2] && tlv[2][0].length !== 32) @@ -7129,39 +7636,34 @@ zoo`.split("\n"); data: { id: bytesToHex(tlv[0][0]), relays: tlv[1] ? tlv[1].map((d) => utf8Decoder.decode(d)) : [], - author: tlv[2]?.[0] ? bytesToHex(tlv[2][0]) : void 0 - } + author: tlv[2]?.[0] ? bytesToHex(tlv[2][0]) : void 0, + }, }; } case "naddr": { let tlv = parseTLV(data); - if (!tlv[0]?.[0]) - throw new Error("missing TLV 0 for naddr"); - if (!tlv[2]?.[0]) - throw new Error("missing TLV 2 for naddr"); + if (!tlv[0]?.[0]) throw new Error("missing TLV 0 for naddr"); + if (!tlv[2]?.[0]) throw new Error("missing TLV 2 for naddr"); if (tlv[2][0].length !== 32) throw new Error("TLV 2 should be 32 bytes"); - if (!tlv[3]?.[0]) - throw new Error("missing TLV 3 for naddr"); - if (tlv[3][0].length !== 4) - throw new Error("TLV 3 should be 4 bytes"); + if (!tlv[3]?.[0]) throw new Error("missing TLV 3 for naddr"); + if (tlv[3][0].length !== 4) throw new Error("TLV 3 should be 4 bytes"); return { type: "naddr", data: { identifier: utf8Decoder.decode(tlv[0][0]), pubkey: bytesToHex(tlv[2][0]), kind: parseInt(bytesToHex(tlv[3][0]), 16), - relays: tlv[1] ? tlv[1].map((d) => utf8Decoder.decode(d)) : [] - } + relays: tlv[1] ? tlv[1].map((d) => utf8Decoder.decode(d)) : [], + }, }; } case "nrelay": { let tlv = parseTLV(data); - if (!tlv[0]?.[0]) - throw new Error("missing TLV 0 for nrelay"); + if (!tlv[0]?.[0]) throw new Error("missing TLV 0 for nrelay"); return { type: "nrelay", - data: utf8Decoder.decode(tlv[0][0]) + data: utf8Decoder.decode(tlv[0][0]), }; } case "nsec": @@ -7178,12 +7680,10 @@ zoo`.split("\n"); while (rest.length > 0) { let t = rest[0]; let l = rest[1]; - if (!l) - throw new Error(`malformed TLV ${t}`); + if (!l) throw new Error(`malformed TLV ${t}`); let v = rest.slice(2, 2 + l); rest = rest.slice(2 + l); - if (v.length < l) - throw new Error(`not enough data to read on TLV ${t}`); + if (v.length < l) throw new Error(`not enough data to read on TLV ${t}`); result[t] = result[t] || []; result[t].push(v); } @@ -7209,7 +7709,7 @@ zoo`.split("\n"); function nprofileEncode(profile) { let data = encodeTLV({ 0: [hexToBytes(profile.pubkey)], - 1: (profile.relays || []).map((url) => utf8Encoder.encode(url)) + 1: (profile.relays || []).map((url) => utf8Encoder.encode(url)), }); return encodeBech32("nprofile", data); } @@ -7217,7 +7717,7 @@ zoo`.split("\n"); let data = encodeTLV({ 0: [hexToBytes(event.id)], 1: (event.relays || []).map((url) => utf8Encoder.encode(url)), - 2: event.author ? [hexToBytes(event.author)] : [] + 2: event.author ? [hexToBytes(event.author)] : [], }); return encodeBech32("nevent", data); } @@ -7228,13 +7728,13 @@ zoo`.split("\n"); 0: [utf8Encoder.encode(addr.identifier)], 1: (addr.relays || []).map((url) => utf8Encoder.encode(url)), 2: [hexToBytes(addr.pubkey)], - 3: [new Uint8Array(kind)] + 3: [new Uint8Array(kind)], }); return encodeBech32("naddr", data); } function nrelayEncode(url) { let data = encodeTLV({ - 0: [utf8Encoder.encode(url)] + 0: [utf8Encoder.encode(url)], }); return encodeBech32("nrelay", data); } @@ -7253,7 +7753,8 @@ zoo`.split("\n"); } // references.ts - var mentionRegex = /\bnostr:((note|npub|naddr|nevent|nprofile)1\w+)\b|#\[(\d+)\]/g; + var mentionRegex = + /\bnostr:((note|npub|naddr|nevent|nprofile)1\w+)\b|#\[(\d+)\]/g; function parseReferences(evt) { let references = []; for (let ref of evt.content.matchAll(mentionRegex)) { @@ -7264,58 +7765,56 @@ zoo`.split("\n"); case "npub": { references.push({ text: ref[0], - profile: { pubkey: data, relays: [] } + profile: { pubkey: data, relays: [] }, }); break; } case "nprofile": { references.push({ text: ref[0], - profile: data + profile: data, }); break; } case "note": { references.push({ text: ref[0], - event: { id: data, relays: [] } + event: { id: data, relays: [] }, }); break; } case "nevent": { references.push({ text: ref[0], - event: data + event: data, }); break; } case "naddr": { references.push({ text: ref[0], - address: data + address: data, }); break; } } - } catch (err) { - } + } catch (err) {} } else if (ref[3]) { let idx = parseInt(ref[3], 10); let tag = evt.tags[idx]; - if (!tag) - continue; + if (!tag) continue; switch (tag[0]) { case "p": { references.push({ text: ref[0], - profile: { pubkey: tag[1], relays: tag[2] ? [tag[2]] : [] } + profile: { pubkey: tag[1], relays: tag[2] ? [tag[2]] : [] }, }); break; } case "e": { references.push({ text: ref[0], - event: { id: tag[1], relays: tag[2] ? [tag[2]] : [] } + event: { id: tag[1], relays: tag[2] ? [tag[2]] : [] }, }); break; } @@ -7328,11 +7827,10 @@ zoo`.split("\n"); identifier, pubkey, kind: parseInt(kind, 10), - relays: tag[2] ? [tag[2]] : [] - } + relays: tag[2] ? [tag[2]] : [], + }, }); - } catch (err) { - } + } catch (err) {} break; } } @@ -7345,7 +7843,7 @@ zoo`.split("\n"); var nip04_exports = {}; __export(nip04_exports, { decrypt: () => decrypt, - encrypt: () => encrypt + encrypt: () => encrypt, }); init_define_process(); if (typeof crypto !== "undefined" && !crypto.subtle && crypto.webcrypto) { @@ -7403,21 +7901,22 @@ zoo`.split("\n"); NIP05_REGEX: () => NIP05_REGEX, queryProfile: () => queryProfile, searchDomain: () => searchDomain, - useFetchImplementation: () => useFetchImplementation + useFetchImplementation: () => useFetchImplementation, }); init_define_process(); var NIP05_REGEX = /^(?:([\w.+-]+)@)?([\w.-]+)$/; var _fetch; try { _fetch = fetch; - } catch { - } + } catch {} function useFetchImplementation(fetchImplementation) { _fetch = fetchImplementation; } async function searchDomain(domain, query = "") { try { - let res = await (await _fetch(`https://${domain}/.well-known/nostr.json?name=${query}`)).json(); + let res = await ( + await _fetch(`https://${domain}/.well-known/nostr.json?name=${query}`) + ).json(); return res.names; } catch (_) { return {}; @@ -7425,11 +7924,12 @@ zoo`.split("\n"); } async function queryProfile(fullname) { const match = fullname.match(NIP05_REGEX); - if (!match) - return null; + if (!match) return null; const [_, name = "_", domain] = match; try { - const res = await _fetch(`https://${domain}/.well-known/nostr.json?name=${name}`); + const res = await _fetch( + `https://${domain}/.well-known/nostr.json?name=${name}` + ); const { names, relays } = parseNIP05Result(await res.json()); const pubkey = names[name]; return pubkey ? { pubkey, relays: relays?.[pubkey] } : null; @@ -7439,7 +7939,7 @@ zoo`.split("\n"); } function parseNIP05Result(json) { const result = { - names: {} + names: {}, }; for (const [name, pubkey] of Object.entries(json.names)) { if (typeof name === "string" && typeof pubkey === "string") { @@ -7450,7 +7950,9 @@ zoo`.split("\n"); result.relays = {}; for (const [pubkey, relays] of Object.entries(json.relays)) { if (typeof pubkey === "string" && Array.isArray(relays)) { - result.relays[pubkey] = relays.filter((relay) => typeof relay === "string"); + result.relays[pubkey] = relays.filter( + (relay) => typeof relay === "string" + ); } } } @@ -7462,7 +7964,7 @@ zoo`.split("\n"); __export(nip06_exports, { generateSeedWords: () => generateSeedWords, privateKeyFromSeedWords: () => privateKeyFromSeedWords, - validateWords: () => validateWords + validateWords: () => validateWords, }); init_define_process(); var import_english = __toESM(require_english()); @@ -7473,37 +7975,33 @@ zoo`.split("\n"); // node_modules/@noble/hashes/esm/ripemd160.js init_define_process(); - var Rho = new Uint8Array([7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8]); + var Rho = new Uint8Array([ + 7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8, + ]); var Id = Uint8Array.from({ length: 16 }, (_, i) => i); var Pi = Id.map((i) => (9 * i + 5) % 16); var idxL = [Id]; var idxR = [Pi]; for (let i = 0; i < 4; i++) - for (let j of [idxL, idxR]) - j.push(j[i].map((k) => Rho[k])); + for (let j of [idxL, idxR]) j.push(j[i].map((k) => Rho[k])); var shifts = [ [11, 14, 15, 12, 5, 8, 7, 9, 11, 13, 14, 15, 6, 7, 9, 8], [12, 13, 11, 15, 6, 9, 9, 7, 12, 15, 11, 13, 7, 8, 7, 7], [13, 15, 14, 11, 7, 7, 6, 8, 13, 14, 13, 12, 5, 5, 6, 9], [14, 11, 12, 14, 8, 6, 5, 5, 15, 12, 15, 14, 9, 9, 8, 6], - [15, 12, 13, 13, 9, 5, 8, 6, 14, 11, 12, 11, 8, 6, 5, 5] + [15, 12, 13, 13, 9, 5, 8, 6, 14, 11, 12, 11, 8, 6, 5, 5], ].map((i) => new Uint8Array(i)); var shiftsL = idxL.map((idx, i) => idx.map((j) => shifts[i][j])); var shiftsR = idxR.map((idx, i) => idx.map((j) => shifts[i][j])); var Kl = new Uint32Array([0, 1518500249, 1859775393, 2400959708, 2840853838]); var Kr = new Uint32Array([1352829926, 1548603684, 1836072691, 2053994217, 0]); - var rotl = (word, shift) => word << shift | word >>> 32 - shift; + var rotl = (word, shift) => (word << shift) | (word >>> (32 - shift)); function f(group, x, y, z) { - if (group === 0) - return x ^ y ^ z; - else if (group === 1) - return x & y | ~x & z; - else if (group === 2) - return (x | ~y) ^ z; - else if (group === 3) - return x & z | y & ~z; - else - return x ^ (y | ~z); + if (group === 0) return x ^ y ^ z; + else if (group === 1) return (x & y) | (~x & z); + else if (group === 2) return (x | ~y) ^ z; + else if (group === 3) return (x & z) | (y & ~z); + else return x ^ (y | ~z); } var BUF = new Uint32Array(16); var RIPEMD160 = class extends SHA2 { @@ -7529,22 +8027,44 @@ zoo`.split("\n"); process(view, offset) { for (let i = 0; i < 16; i++, offset += 4) BUF[i] = view.getUint32(offset, true); - let al = this.h0 | 0, ar = al, bl = this.h1 | 0, br = bl, cl = this.h2 | 0, cr = cl, dl = this.h3 | 0, dr = dl, el = this.h4 | 0, er = el; + let al = this.h0 | 0, + ar = al, + bl = this.h1 | 0, + br = bl, + cl = this.h2 | 0, + cr = cl, + dl = this.h3 | 0, + dr = dl, + el = this.h4 | 0, + er = el; for (let group = 0; group < 5; group++) { const rGroup = 4 - group; - const hbl = Kl[group], hbr = Kr[group]; - const rl = idxL[group], rr = idxR[group]; - const sl = shiftsL[group], sr = shiftsR[group]; + const hbl = Kl[group], + hbr = Kr[group]; + const rl = idxL[group], + rr = idxR[group]; + const sl = shiftsL[group], + sr = shiftsR[group]; for (let i = 0; i < 16; i++) { - const tl = rotl(al + f(group, bl, cl, dl) + BUF[rl[i]] + hbl, sl[i]) + el | 0; - al = el, el = dl, dl = rotl(cl, 10) | 0, cl = bl, bl = tl; + const tl = + (rotl(al + f(group, bl, cl, dl) + BUF[rl[i]] + hbl, sl[i]) + el) | + 0; + (al = el), (el = dl), (dl = rotl(cl, 10) | 0), (cl = bl), (bl = tl); } for (let i = 0; i < 16; i++) { - const tr = rotl(ar + f(rGroup, br, cr, dr) + BUF[rr[i]] + hbr, sr[i]) + er | 0; - ar = er, er = dr, dr = rotl(cr, 10) | 0, cr = br, br = tr; + const tr = + (rotl(ar + f(rGroup, br, cr, dr) + BUF[rr[i]] + hbr, sr[i]) + er) | + 0; + (ar = er), (er = dr), (dr = rotl(cr, 10) | 0), (cr = br), (br = tr); } } - this.set(this.h1 + cl + dr | 0, this.h2 + dl + er | 0, this.h3 + el + ar | 0, this.h4 + al + br | 0, this.h0 + bl + cr | 0); + this.set( + (this.h1 + cl + dr) | 0, + (this.h2 + dl + er) | 0, + (this.h3 + el + ar) | 0, + (this.h4 + al + br) | 0, + (this.h0 + bl + cr) | 0 + ); } roundClean() { BUF.fill(0); @@ -7566,8 +8086,11 @@ zoo`.split("\n"); var _32n = BigInt(32); function fromBig(n, le = false) { if (le) - return { h: Number(n & U32_MASK64), l: Number(n >> _32n & U32_MASK64) }; - return { h: Number(n >> _32n & U32_MASK64) | 0, l: Number(n & U32_MASK64) | 0 }; + return { h: Number(n & U32_MASK64), l: Number((n >> _32n) & U32_MASK64) }; + return { + h: Number((n >> _32n) & U32_MASK64) | 0, + l: Number(n & U32_MASK64) | 0, + }; } function split(lst, le = false) { let Ah = new Uint32Array(lst.length); @@ -7578,29 +8101,33 @@ zoo`.split("\n"); } return [Ah, Al]; } - var toBig = (h, l) => BigInt(h >>> 0) << _32n | BigInt(l >>> 0); + var toBig = (h, l) => (BigInt(h >>> 0) << _32n) | BigInt(l >>> 0); var shrSH = (h, l, s) => h >>> s; - var shrSL = (h, l, s) => h << 32 - s | l >>> s; - var rotrSH = (h, l, s) => h >>> s | l << 32 - s; - var rotrSL = (h, l, s) => h << 32 - s | l >>> s; - var rotrBH = (h, l, s) => h << 64 - s | l >>> s - 32; - var rotrBL = (h, l, s) => h >>> s - 32 | l << 64 - s; + var shrSL = (h, l, s) => (h << (32 - s)) | (l >>> s); + var rotrSH = (h, l, s) => (h >>> s) | (l << (32 - s)); + var rotrSL = (h, l, s) => (h << (32 - s)) | (l >>> s); + var rotrBH = (h, l, s) => (h << (64 - s)) | (l >>> (s - 32)); + var rotrBL = (h, l, s) => (h >>> (s - 32)) | (l << (64 - s)); var rotr32H = (h, l) => l; var rotr32L = (h, l) => h; - var rotlSH = (h, l, s) => h << s | l >>> 32 - s; - var rotlSL = (h, l, s) => l << s | h >>> 32 - s; - var rotlBH = (h, l, s) => l << s - 32 | h >>> 64 - s; - var rotlBL = (h, l, s) => h << s - 32 | l >>> 64 - s; + var rotlSH = (h, l, s) => (h << s) | (l >>> (32 - s)); + var rotlSL = (h, l, s) => (l << s) | (h >>> (32 - s)); + var rotlBH = (h, l, s) => (l << (s - 32)) | (h >>> (64 - s)); + var rotlBL = (h, l, s) => (h << (s - 32)) | (l >>> (64 - s)); function add(Ah, Al, Bh, Bl) { const l = (Al >>> 0) + (Bl >>> 0); - return { h: Ah + Bh + (l / 2 ** 32 | 0) | 0, l: l | 0 }; + return { h: (Ah + Bh + ((l / 2 ** 32) | 0)) | 0, l: l | 0 }; } var add3L = (Al, Bl, Cl) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0); - var add3H = (low, Ah, Bh, Ch) => Ah + Bh + Ch + (low / 2 ** 32 | 0) | 0; - var add4L = (Al, Bl, Cl, Dl) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0); - var add4H = (low, Ah, Bh, Ch, Dh) => Ah + Bh + Ch + Dh + (low / 2 ** 32 | 0) | 0; - var add5L = (Al, Bl, Cl, Dl, El) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0) + (El >>> 0); - var add5H = (low, Ah, Bh, Ch, Dh, Eh) => Ah + Bh + Ch + Dh + Eh + (low / 2 ** 32 | 0) | 0; + var add3H = (low, Ah, Bh, Ch) => (Ah + Bh + Ch + ((low / 2 ** 32) | 0)) | 0; + var add4L = (Al, Bl, Cl, Dl) => + (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0); + var add4H = (low, Ah, Bh, Ch, Dh) => + (Ah + Bh + Ch + Dh + ((low / 2 ** 32) | 0)) | 0; + var add5L = (Al, Bl, Cl, Dl, El) => + (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0) + (El >>> 0); + var add5H = (low, Ah, Bh, Ch, Dh, Eh) => + (Ah + Bh + Ch + Dh + Eh + ((low / 2 ** 32) | 0)) | 0; var u64 = { fromBig, split, @@ -7623,93 +8150,95 @@ zoo`.split("\n"); add4L, add4H, add5H, - add5L + add5L, }; var u64_default = u64; // node_modules/@noble/hashes/esm/sha512.js - var [SHA512_Kh, SHA512_Kl] = u64_default.split([ - "0x428a2f98d728ae22", - "0x7137449123ef65cd", - "0xb5c0fbcfec4d3b2f", - "0xe9b5dba58189dbbc", - "0x3956c25bf348b538", - "0x59f111f1b605d019", - "0x923f82a4af194f9b", - "0xab1c5ed5da6d8118", - "0xd807aa98a3030242", - "0x12835b0145706fbe", - "0x243185be4ee4b28c", - "0x550c7dc3d5ffb4e2", - "0x72be5d74f27b896f", - "0x80deb1fe3b1696b1", - "0x9bdc06a725c71235", - "0xc19bf174cf692694", - "0xe49b69c19ef14ad2", - "0xefbe4786384f25e3", - "0x0fc19dc68b8cd5b5", - "0x240ca1cc77ac9c65", - "0x2de92c6f592b0275", - "0x4a7484aa6ea6e483", - "0x5cb0a9dcbd41fbd4", - "0x76f988da831153b5", - "0x983e5152ee66dfab", - "0xa831c66d2db43210", - "0xb00327c898fb213f", - "0xbf597fc7beef0ee4", - "0xc6e00bf33da88fc2", - "0xd5a79147930aa725", - "0x06ca6351e003826f", - "0x142929670a0e6e70", - "0x27b70a8546d22ffc", - "0x2e1b21385c26c926", - "0x4d2c6dfc5ac42aed", - "0x53380d139d95b3df", - "0x650a73548baf63de", - "0x766a0abb3c77b2a8", - "0x81c2c92e47edaee6", - "0x92722c851482353b", - "0xa2bfe8a14cf10364", - "0xa81a664bbc423001", - "0xc24b8b70d0f89791", - "0xc76c51a30654be30", - "0xd192e819d6ef5218", - "0xd69906245565a910", - "0xf40e35855771202a", - "0x106aa07032bbd1b8", - "0x19a4c116b8d2d0c8", - "0x1e376c085141ab53", - "0x2748774cdf8eeb99", - "0x34b0bcb5e19b48a8", - "0x391c0cb3c5c95a63", - "0x4ed8aa4ae3418acb", - "0x5b9cca4f7763e373", - "0x682e6ff3d6b2b8a3", - "0x748f82ee5defb2fc", - "0x78a5636f43172f60", - "0x84c87814a1f0ab72", - "0x8cc702081a6439ec", - "0x90befffa23631e28", - "0xa4506cebde82bde9", - "0xbef9a3f7b2c67915", - "0xc67178f2e372532b", - "0xca273eceea26619c", - "0xd186b8c721c0c207", - "0xeada7dd6cde0eb1e", - "0xf57d4f7fee6ed178", - "0x06f067aa72176fba", - "0x0a637dc5a2c898a6", - "0x113f9804bef90dae", - "0x1b710b35131c471b", - "0x28db77f523047d84", - "0x32caab7b40c72493", - "0x3c9ebe0a15c9bebc", - "0x431d67c49c100d4c", - "0x4cc5d4becb3e42b6", - "0x597f299cfc657e2a", - "0x5fcb6fab3ad6faec", - "0x6c44198c4a475817" - ].map((n) => BigInt(n))); + var [SHA512_Kh, SHA512_Kl] = u64_default.split( + [ + "0x428a2f98d728ae22", + "0x7137449123ef65cd", + "0xb5c0fbcfec4d3b2f", + "0xe9b5dba58189dbbc", + "0x3956c25bf348b538", + "0x59f111f1b605d019", + "0x923f82a4af194f9b", + "0xab1c5ed5da6d8118", + "0xd807aa98a3030242", + "0x12835b0145706fbe", + "0x243185be4ee4b28c", + "0x550c7dc3d5ffb4e2", + "0x72be5d74f27b896f", + "0x80deb1fe3b1696b1", + "0x9bdc06a725c71235", + "0xc19bf174cf692694", + "0xe49b69c19ef14ad2", + "0xefbe4786384f25e3", + "0x0fc19dc68b8cd5b5", + "0x240ca1cc77ac9c65", + "0x2de92c6f592b0275", + "0x4a7484aa6ea6e483", + "0x5cb0a9dcbd41fbd4", + "0x76f988da831153b5", + "0x983e5152ee66dfab", + "0xa831c66d2db43210", + "0xb00327c898fb213f", + "0xbf597fc7beef0ee4", + "0xc6e00bf33da88fc2", + "0xd5a79147930aa725", + "0x06ca6351e003826f", + "0x142929670a0e6e70", + "0x27b70a8546d22ffc", + "0x2e1b21385c26c926", + "0x4d2c6dfc5ac42aed", + "0x53380d139d95b3df", + "0x650a73548baf63de", + "0x766a0abb3c77b2a8", + "0x81c2c92e47edaee6", + "0x92722c851482353b", + "0xa2bfe8a14cf10364", + "0xa81a664bbc423001", + "0xc24b8b70d0f89791", + "0xc76c51a30654be30", + "0xd192e819d6ef5218", + "0xd69906245565a910", + "0xf40e35855771202a", + "0x106aa07032bbd1b8", + "0x19a4c116b8d2d0c8", + "0x1e376c085141ab53", + "0x2748774cdf8eeb99", + "0x34b0bcb5e19b48a8", + "0x391c0cb3c5c95a63", + "0x4ed8aa4ae3418acb", + "0x5b9cca4f7763e373", + "0x682e6ff3d6b2b8a3", + "0x748f82ee5defb2fc", + "0x78a5636f43172f60", + "0x84c87814a1f0ab72", + "0x8cc702081a6439ec", + "0x90befffa23631e28", + "0xa4506cebde82bde9", + "0xbef9a3f7b2c67915", + "0xc67178f2e372532b", + "0xca273eceea26619c", + "0xd186b8c721c0c207", + "0xeada7dd6cde0eb1e", + "0xf57d4f7fee6ed178", + "0x06f067aa72176fba", + "0x0a637dc5a2c898a6", + "0x113f9804bef90dae", + "0x1b710b35131c471b", + "0x28db77f523047d84", + "0x32caab7b40c72493", + "0x3c9ebe0a15c9bebc", + "0x431d67c49c100d4c", + "0x4cc5d4becb3e42b6", + "0x597f299cfc657e2a", + "0x5fcb6fab3ad6faec", + "0x6c44198c4a475817", + ].map((n) => BigInt(n)) + ); var SHA512_W_H = new Uint32Array(80); var SHA512_W_L = new Uint32Array(80); var SHA512 = class extends SHA2 { @@ -7733,7 +8262,8 @@ zoo`.split("\n"); this.Hl = 327033209 | 0; } get() { - const { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this; + const { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = + this; return [Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl]; } set(Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl) { @@ -7757,35 +8287,84 @@ zoo`.split("\n"); process(view, offset) { for (let i = 0; i < 16; i++, offset += 4) { SHA512_W_H[i] = view.getUint32(offset); - SHA512_W_L[i] = view.getUint32(offset += 4); + SHA512_W_L[i] = view.getUint32((offset += 4)); } for (let i = 16; i < 80; i++) { const W15h = SHA512_W_H[i - 15] | 0; const W15l = SHA512_W_L[i - 15] | 0; - const s0h = u64_default.rotrSH(W15h, W15l, 1) ^ u64_default.rotrSH(W15h, W15l, 8) ^ u64_default.shrSH(W15h, W15l, 7); - const s0l = u64_default.rotrSL(W15h, W15l, 1) ^ u64_default.rotrSL(W15h, W15l, 8) ^ u64_default.shrSL(W15h, W15l, 7); + const s0h = + u64_default.rotrSH(W15h, W15l, 1) ^ + u64_default.rotrSH(W15h, W15l, 8) ^ + u64_default.shrSH(W15h, W15l, 7); + const s0l = + u64_default.rotrSL(W15h, W15l, 1) ^ + u64_default.rotrSL(W15h, W15l, 8) ^ + u64_default.shrSL(W15h, W15l, 7); const W2h = SHA512_W_H[i - 2] | 0; const W2l = SHA512_W_L[i - 2] | 0; - const s1h = u64_default.rotrSH(W2h, W2l, 19) ^ u64_default.rotrBH(W2h, W2l, 61) ^ u64_default.shrSH(W2h, W2l, 6); - const s1l = u64_default.rotrSL(W2h, W2l, 19) ^ u64_default.rotrBL(W2h, W2l, 61) ^ u64_default.shrSL(W2h, W2l, 6); - const SUMl = u64_default.add4L(s0l, s1l, SHA512_W_L[i - 7], SHA512_W_L[i - 16]); - const SUMh = u64_default.add4H(SUMl, s0h, s1h, SHA512_W_H[i - 7], SHA512_W_H[i - 16]); + const s1h = + u64_default.rotrSH(W2h, W2l, 19) ^ + u64_default.rotrBH(W2h, W2l, 61) ^ + u64_default.shrSH(W2h, W2l, 6); + const s1l = + u64_default.rotrSL(W2h, W2l, 19) ^ + u64_default.rotrBL(W2h, W2l, 61) ^ + u64_default.shrSL(W2h, W2l, 6); + const SUMl = u64_default.add4L( + s0l, + s1l, + SHA512_W_L[i - 7], + SHA512_W_L[i - 16] + ); + const SUMh = u64_default.add4H( + SUMl, + s0h, + s1h, + SHA512_W_H[i - 7], + SHA512_W_H[i - 16] + ); SHA512_W_H[i] = SUMh | 0; SHA512_W_L[i] = SUMl | 0; } - let { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this; + let { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = + this; for (let i = 0; i < 80; i++) { - const sigma1h = u64_default.rotrSH(Eh, El, 14) ^ u64_default.rotrSH(Eh, El, 18) ^ u64_default.rotrBH(Eh, El, 41); - const sigma1l = u64_default.rotrSL(Eh, El, 14) ^ u64_default.rotrSL(Eh, El, 18) ^ u64_default.rotrBL(Eh, El, 41); - const CHIh = Eh & Fh ^ ~Eh & Gh; - const CHIl = El & Fl ^ ~El & Gl; - const T1ll = u64_default.add5L(Hl, sigma1l, CHIl, SHA512_Kl[i], SHA512_W_L[i]); - const T1h = u64_default.add5H(T1ll, Hh, sigma1h, CHIh, SHA512_Kh[i], SHA512_W_H[i]); + const sigma1h = + u64_default.rotrSH(Eh, El, 14) ^ + u64_default.rotrSH(Eh, El, 18) ^ + u64_default.rotrBH(Eh, El, 41); + const sigma1l = + u64_default.rotrSL(Eh, El, 14) ^ + u64_default.rotrSL(Eh, El, 18) ^ + u64_default.rotrBL(Eh, El, 41); + const CHIh = (Eh & Fh) ^ (~Eh & Gh); + const CHIl = (El & Fl) ^ (~El & Gl); + const T1ll = u64_default.add5L( + Hl, + sigma1l, + CHIl, + SHA512_Kl[i], + SHA512_W_L[i] + ); + const T1h = u64_default.add5H( + T1ll, + Hh, + sigma1h, + CHIh, + SHA512_Kh[i], + SHA512_W_H[i] + ); const T1l = T1ll | 0; - const sigma0h = u64_default.rotrSH(Ah, Al, 28) ^ u64_default.rotrBH(Ah, Al, 34) ^ u64_default.rotrBH(Ah, Al, 39); - const sigma0l = u64_default.rotrSL(Ah, Al, 28) ^ u64_default.rotrBL(Ah, Al, 34) ^ u64_default.rotrBL(Ah, Al, 39); - const MAJh = Ah & Bh ^ Ah & Ch ^ Bh & Ch; - const MAJl = Al & Bl ^ Al & Cl ^ Bl & Cl; + const sigma0h = + u64_default.rotrSH(Ah, Al, 28) ^ + u64_default.rotrBH(Ah, Al, 34) ^ + u64_default.rotrBH(Ah, Al, 39); + const sigma0l = + u64_default.rotrSL(Ah, Al, 28) ^ + u64_default.rotrBL(Ah, Al, 34) ^ + u64_default.rotrBL(Ah, Al, 39); + const MAJh = (Ah & Bh) ^ (Ah & Ch) ^ (Bh & Ch); + const MAJl = (Al & Bl) ^ (Al & Cl) ^ (Bl & Cl); Hh = Gh | 0; Hl = Gl | 0; Gh = Fh | 0; @@ -7803,14 +8382,54 @@ zoo`.split("\n"); Ah = u64_default.add3H(All, T1h, sigma0h, MAJh); Al = All | 0; } - ({ h: Ah, l: Al } = u64_default.add(this.Ah | 0, this.Al | 0, Ah | 0, Al | 0)); - ({ h: Bh, l: Bl } = u64_default.add(this.Bh | 0, this.Bl | 0, Bh | 0, Bl | 0)); - ({ h: Ch, l: Cl } = u64_default.add(this.Ch | 0, this.Cl | 0, Ch | 0, Cl | 0)); - ({ h: Dh, l: Dl } = u64_default.add(this.Dh | 0, this.Dl | 0, Dh | 0, Dl | 0)); - ({ h: Eh, l: El } = u64_default.add(this.Eh | 0, this.El | 0, Eh | 0, El | 0)); - ({ h: Fh, l: Fl } = u64_default.add(this.Fh | 0, this.Fl | 0, Fh | 0, Fl | 0)); - ({ h: Gh, l: Gl } = u64_default.add(this.Gh | 0, this.Gl | 0, Gh | 0, Gl | 0)); - ({ h: Hh, l: Hl } = u64_default.add(this.Hh | 0, this.Hl | 0, Hh | 0, Hl | 0)); + ({ h: Ah, l: Al } = u64_default.add( + this.Ah | 0, + this.Al | 0, + Ah | 0, + Al | 0 + )); + ({ h: Bh, l: Bl } = u64_default.add( + this.Bh | 0, + this.Bl | 0, + Bh | 0, + Bl | 0 + )); + ({ h: Ch, l: Cl } = u64_default.add( + this.Ch | 0, + this.Cl | 0, + Ch | 0, + Cl | 0 + )); + ({ h: Dh, l: Dl } = u64_default.add( + this.Dh | 0, + this.Dl | 0, + Dh | 0, + Dl | 0 + )); + ({ h: Eh, l: El } = u64_default.add( + this.Eh | 0, + this.El | 0, + Eh | 0, + El | 0 + )); + ({ h: Fh, l: Fl } = u64_default.add( + this.Fh | 0, + this.Fl | 0, + Fh | 0, + Fl | 0 + )); + ({ h: Gh, l: Gl } = u64_default.add( + this.Gh | 0, + this.Gl | 0, + Gh | 0, + Gl | 0 + )); + ({ h: Hh, l: Hl } = u64_default.add( + this.Hh | 0, + this.Hl | 0, + Hh | 0, + Hl | 0 + )); this.set(Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl); } roundClean() { @@ -7939,24 +8558,33 @@ zoo`.split("\n"); if (!priv) { throw new Error("No private key"); } - return base58check2.encode(this.serialize(this.versions.private, concatBytes(new Uint8Array([0]), priv))); + return base58check2.encode( + this.serialize( + this.versions.private, + concatBytes(new Uint8Array([0]), priv) + ) + ); } get publicExtendedKey() { if (!this.pubKey) { throw new Error("No public key"); } - return base58check2.encode(this.serialize(this.versions.public, this.pubKey)); + return base58check2.encode( + this.serialize(this.versions.public, this.pubKey) + ); } static fromMasterSeed(seed, versions = BITCOIN_VERSIONS) { bytes(seed); if (8 * seed.length < 128 || 8 * seed.length > 512) { - throw new Error(`HDKey: wrong seed length=${seed.length}. Should be between 128 and 512 bits; 256 bits is advised)`); + throw new Error( + `HDKey: wrong seed length=${seed.length}. Should be between 128 and 512 bits; 256 bits is advised)` + ); } const I = hmac(sha512, MASTER_SECRET, seed); return new HDKey({ versions, chainCode: I.slice(32), - privateKey: I.slice(0, 32) + privateKey: I.slice(0, 32), }); } static fromExtendedKey(base58key, versions = BITCOIN_VERSIONS) { @@ -7968,7 +8596,7 @@ zoo`.split("\n"); depth: keyBuffer[4], parentFingerprint: keyView.getUint32(5, false), index: keyView.getUint32(9, false), - chainCode: keyBuffer.slice(13, 45) + chainCode: keyBuffer.slice(13, 45), }; const key = keyBuffer.slice(45); const isPriv = key[0] === 0; @@ -7999,7 +8627,9 @@ zoo`.split("\n"); this.parentFingerprint = opt.parentFingerprint || 0; if (!this.depth) { if (this.parentFingerprint || this.index) { - throw new Error("HDKey: zero depth with non-zero index/parent fingerprint"); + throw new Error( + "HDKey: zero depth with non-zero index/parent fingerprint" + ); } } if (opt.publicKey && opt.privateKey) { @@ -8009,7 +8639,10 @@ zoo`.split("\n"); if (!secp256k1.utils.isValidPrivateKey(opt.privateKey)) { throw new Error("Invalid private key"); } - this.privKey = typeof opt.privateKey === "bigint" ? opt.privateKey : bytesToNumber(opt.privateKey); + this.privKey = + typeof opt.privateKey === "bigint" + ? opt.privateKey + : bytesToNumber(opt.privateKey); this.privKeyBytes = numberToBytes(this.privKey); this.pubKey = secp256k1.getPublicKey(opt.privateKey, true); } else if (opt.publicKey) { @@ -8069,19 +8702,25 @@ zoo`.split("\n"); chainCode, depth: this.depth + 1, parentFingerprint: this.fingerprint, - index + index, }; try { if (this.privateKey) { const added = mod(this.privKey + childTweak, secp256k1.CURVE.n); if (!secp256k1.utils.isValidPrivateKey(added)) { - throw new Error("The tweak was out of range or the resulted private key is invalid"); + throw new Error( + "The tweak was out of range or the resulted private key is invalid" + ); } opt.privateKey = added; } else { - const added = Point2.fromHex(this.pubKey).add(Point2.fromPrivateKey(childTweak)); + const added = Point2.fromHex(this.pubKey).add( + Point2.fromPrivateKey(childTweak) + ); if (added.equals(Point2.ZERO)) { - throw new Error("The tweak was equal to negative P, which made the result key invalid"); + throw new Error( + "The tweak was equal to negative P, which made the result key invalid" + ); } opt.publicKey = added.toRawBytes(true); } @@ -8122,7 +8761,7 @@ zoo`.split("\n"); toJSON() { return { xpriv: this.privateExtendedKey, - xpub: this.publicExtendedKey + xpub: this.publicExtendedKey, }; } serialize(version, key) { @@ -8130,16 +8769,24 @@ zoo`.split("\n"); throw new Error("No chainCode set"); } bytes(key, 33); - return concatBytes(toU32(version), new Uint8Array([this.depth]), toU32(this.parentFingerprint), toU32(this.index), this.chainCode, key); + return concatBytes( + toU32(version), + new Uint8Array([this.depth]), + toU32(this.parentFingerprint), + toU32(this.index), + this.chainCode, + key + ); } }; // nip06.ts function privateKeyFromSeedWords(mnemonic, passphrase) { - let root = HDKey.fromMasterSeed((0, import_bip39.mnemonicToSeedSync)(mnemonic, passphrase)); + let root = HDKey.fromMasterSeed( + (0, import_bip39.mnemonicToSeedSync)(mnemonic, passphrase) + ); let privateKey = root.derive(`m/44'/1237'/0'/0/0`).privateKey; - if (!privateKey) - throw new Error("could not derive private key"); + if (!privateKey) throw new Error("could not derive private key"); return bytesToHex(privateKey); } function generateSeedWords() { @@ -8152,7 +8799,7 @@ zoo`.split("\n"); // nip10.ts var nip10_exports = {}; __export(nip10_exports, { - parse: () => parse + parse: () => parse, }); init_define_process(); function parse(event) { @@ -8160,7 +8807,7 @@ zoo`.split("\n"); reply: void 0, root: void 0, mentions: [], - profiles: [] + profiles: [], }; const eTags = []; for (const tag of event.tags) { @@ -8170,7 +8817,7 @@ zoo`.split("\n"); if (tag[0] === "p" && tag[1]) { result.profiles.push({ pubkey: tag[1], - relays: tag[2] ? [tag[2]] : [] + relays: tag[2] ? [tag[2]] : [], }); } } @@ -8179,7 +8826,7 @@ zoo`.split("\n"); const [_, eTagEventId, eTagRelayUrl, eTagMarker] = eTag; const eventPointer = { id: eTagEventId, - relays: eTagRelayUrl ? [eTagRelayUrl] : [] + relays: eTagRelayUrl ? [eTagRelayUrl] : [], }; const isFirstETag = eTagIndex === 0; const isLastETag = eTagIndex === eTags.length - 1; @@ -8211,7 +8858,7 @@ zoo`.split("\n"); // nip13.ts var nip13_exports = {}; __export(nip13_exports, { - getPow: () => getPow + getPow: () => getPow, }); init_define_process(); function getPow(id) { @@ -8233,7 +8880,7 @@ zoo`.split("\n"); if (b === 0) { return 8; } - while (b >>= 1) { + while ((b >>= 1)) { n++; } return 7 - n; @@ -8244,20 +8891,23 @@ zoo`.split("\n"); __export(nip18_exports, { finishRepostEvent: () => finishRepostEvent, getRepostedEvent: () => getRepostedEvent, - getRepostedEventPointer: () => getRepostedEventPointer + getRepostedEventPointer: () => getRepostedEventPointer, }); init_define_process(); function finishRepostEvent(t, reposted, relayUrl, privateKey) { - return finishEvent({ - kind: 6 /* Repost */, - tags: [ - ...t.tags ?? [], - ["e", reposted.id, relayUrl], - ["p", reposted.pubkey] - ], - content: t.content === "" ? "" : JSON.stringify(reposted), - created_at: t.created_at - }, privateKey); + return finishEvent( + { + kind: 6 /* Repost */, + tags: [ + ...(t.tags ?? []), + ["e", reposted.id, relayUrl], + ["p", reposted.pubkey], + ], + content: t.content === "" ? "" : JSON.stringify(reposted), + created_at: t.created_at, + }, + privateKey + ); } function getRepostedEventPointer(event) { if (event.kind !== 6 /* Repost */) { @@ -8265,7 +8915,11 @@ zoo`.split("\n"); } let lastETag; let lastPTag; - for (let i = event.tags.length - 1; i >= 0 && (lastETag === void 0 || lastPTag === void 0); i--) { + for ( + let i = event.tags.length - 1; + i >= 0 && (lastETag === void 0 || lastPTag === void 0); + i-- + ) { const tag = event.tags[i]; if (tag.length >= 2) { if (tag[0] === "e" && lastETag === void 0) { @@ -8281,7 +8935,7 @@ zoo`.split("\n"); return { id: lastETag[1], relays: [lastETag[2], lastPTag?.[2]].filter((x) => typeof x === "string"), - author: lastPTag?.[1] + author: lastPTag?.[1], }; } function getRepostedEvent(event, { skipVerification } = {}) { @@ -8309,21 +8963,23 @@ zoo`.split("\n"); __export(nip21_exports, { NOSTR_URI_REGEX: () => NOSTR_URI_REGEX, parse: () => parse2, - test: () => test + test: () => test, }); init_define_process(); var NOSTR_URI_REGEX = new RegExp(`nostr:(${BECH32_REGEX.source})`); function test(value) { - return typeof value === "string" && new RegExp(`^${NOSTR_URI_REGEX.source}$`).test(value); + return ( + typeof value === "string" && + new RegExp(`^${NOSTR_URI_REGEX.source}$`).test(value) + ); } function parse2(uri) { const match = uri.match(new RegExp(`^${NOSTR_URI_REGEX.source}$`)); - if (!match) - throw new Error(`Invalid Nostr URI: ${uri}`); + if (!match) throw new Error(`Invalid Nostr URI: ${uri}`); return { uri: match[0], value: match[1], - decoded: decode(match[1]) + decoded: decode(match[1]), }; } @@ -8331,24 +8987,27 @@ zoo`.split("\n"); var nip25_exports = {}; __export(nip25_exports, { finishReactionEvent: () => finishReactionEvent, - getReactedEventPointer: () => getReactedEventPointer + getReactedEventPointer: () => getReactedEventPointer, }); init_define_process(); function finishReactionEvent(t, reacted, privateKey) { const inheritedTags = reacted.tags.filter( (tag) => tag.length >= 2 && (tag[0] === "e" || tag[0] === "p") ); - return finishEvent({ - ...t, - kind: 7 /* Reaction */, - tags: [ - ...t.tags ?? [], - ...inheritedTags, - ["e", reacted.id], - ["p", reacted.pubkey] - ], - content: t.content ?? "+" - }, privateKey); + return finishEvent( + { + ...t, + kind: 7 /* Reaction */, + tags: [ + ...(t.tags ?? []), + ...inheritedTags, + ["e", reacted.id], + ["p", reacted.pubkey], + ], + content: t.content ?? "+", + }, + privateKey + ); } function getReactedEventPointer(event) { if (event.kind !== 7 /* Reaction */) { @@ -8356,7 +9015,11 @@ zoo`.split("\n"); } let lastETag; let lastPTag; - for (let i = event.tags.length - 1; i >= 0 && (lastETag === void 0 || lastPTag === void 0); i--) { + for ( + let i = event.tags.length - 1; + i >= 0 && (lastETag === void 0 || lastPTag === void 0); + i-- + ) { const tag = event.tags[i]; if (tag.length >= 2) { if (tag[0] === "e" && lastETag === void 0) { @@ -8372,7 +9035,7 @@ zoo`.split("\n"); return { id: lastETag[1], relays: [lastETag[2], lastPTag[2]].filter((x) => x !== void 0), - author: lastPTag[1] + author: lastPTag[1], }; } @@ -8380,37 +9043,34 @@ zoo`.split("\n"); var nip26_exports = {}; __export(nip26_exports, { createDelegation: () => createDelegation, - getDelegator: () => getDelegator + getDelegator: () => getDelegator, }); init_define_process(); function createDelegation(privateKey, parameters) { let conditions = []; if ((parameters.kind || -1) >= 0) conditions.push(`kind=${parameters.kind}`); - if (parameters.until) - conditions.push(`created_at<${parameters.until}`); - if (parameters.since) - conditions.push(`created_at>${parameters.since}`); + if (parameters.until) conditions.push(`created_at<${parameters.until}`); + if (parameters.since) conditions.push(`created_at>${parameters.since}`); let cond = conditions.join("&"); if (cond === "") throw new Error("refusing to create a delegation without any conditions"); let sighash = sha256( utf8Encoder.encode(`nostr:delegation:${parameters.pubkey}:${cond}`) ); - let sig = bytesToHex( - schnorr.sign(sighash, privateKey) - ); + let sig = bytesToHex(schnorr.sign(sighash, privateKey)); return { from: getPublicKey(privateKey), to: parameters.pubkey, cond, - sig + sig, }; } function getDelegator(event) { - let tag = event.tags.find((tag2) => tag2[0] === "delegation" && tag2.length >= 4); - if (!tag) - return null; + let tag = event.tags.find( + (tag2) => tag2[0] === "delegation" && tag2.length >= 4 + ); + if (!tag) return null; let pubkey = tag[1]; let cond = tag[2]; let sig = tag[3]; @@ -8419,18 +9079,24 @@ zoo`.split("\n"); let [key, operator, value] = conditions[i].split(/\b/); if (key === "kind" && operator === "=" && event.kind === parseInt(value)) continue; - else if (key === "created_at" && operator === "<" && event.created_at < parseInt(value)) + else if ( + key === "created_at" && + operator === "<" && + event.created_at < parseInt(value) + ) continue; - else if (key === "created_at" && operator === ">" && event.created_at > parseInt(value)) + else if ( + key === "created_at" && + operator === ">" && + event.created_at > parseInt(value) + ) continue; - else - return null; + else return null; } let sighash = sha256( utf8Encoder.encode(`nostr:delegation:${event.pubkey}:${cond}`) ); - if (!schnorr.verify(sig, sighash, pubkey)) - return null; + if (!schnorr.verify(sig, sighash, pubkey)) return null; return pubkey; } @@ -8439,7 +9105,7 @@ zoo`.split("\n"); __export(nip27_exports, { matchAll: () => matchAll, regex: () => regex, - replaceAll: () => replaceAll + replaceAll: () => replaceAll, }); init_define_process(); var regex = () => new RegExp(`\\b${NOSTR_URI_REGEX.source}\\b`, "g"); @@ -8453,10 +9119,9 @@ zoo`.split("\n"); value, decoded: decode(value), start: match.index, - end: match.index + uri.length + end: match.index + uri.length, }; - } catch (_e) { - } + } catch (_e) {} } } function replaceAll(content, replacer) { @@ -8464,7 +9129,7 @@ zoo`.split("\n"); return replacer({ uri, value, - decoded: decode(value) + decoded: decode(value), }); }); } @@ -8473,21 +9138,25 @@ zoo`.split("\n"); var nip39_exports = {}; __export(nip39_exports, { useFetchImplementation: () => useFetchImplementation2, - validateGithub: () => validateGithub + validateGithub: () => validateGithub, }); init_define_process(); var _fetch2; try { _fetch2 = fetch; - } catch { - } + } catch {} function useFetchImplementation2(fetchImplementation) { _fetch2 = fetchImplementation; } async function validateGithub(pubkey, username, proof) { try { - let res = await (await _fetch2(`https://gist.github.com/${username}/${proof}/raw`)).text(); - return res === `Verifying that I control the following Nostr public key: ${pubkey}`; + let res = await ( + await _fetch2(`https://gist.github.com/${username}/${proof}/raw`) + ).text(); + return ( + res === + `Verifying that I control the following Nostr public key: ${pubkey}` + ); } catch (_) { return false; } @@ -8496,22 +9165,18 @@ zoo`.split("\n"); // nip42.ts var nip42_exports = {}; __export(nip42_exports, { - authenticate: () => authenticate + authenticate: () => authenticate, }); init_define_process(); - var authenticate = async ({ - challenge: challenge2, - relay, - sign - }) => { + var authenticate = async ({ challenge: challenge2, relay, sign }) => { const e = { kind: 22242 /* ClientAuth */, created_at: Math.floor(Date.now() / 1e3), tags: [ ["relay", relay.url], - ["challenge", challenge2] + ["challenge", challenge2], ], - content: "" + content: "", }; const pub = relay.auth(await sign(e)); return new Promise((resolve, reject) => { @@ -8533,14 +9198,13 @@ zoo`.split("\n"); makeZapReceipt: () => makeZapReceipt, makeZapRequest: () => makeZapRequest, useFetchImplementation: () => useFetchImplementation3, - validateZapRequest: () => validateZapRequest + validateZapRequest: () => validateZapRequest, }); init_define_process(); var _fetch3; try { _fetch3 = fetch; - } catch { - } + } catch {} function useFetchImplementation3(fetchImplementation) { _fetch3 = fetchImplementation; } @@ -8563,21 +9227,12 @@ zoo`.split("\n"); if (body.allowsNostr && body.nostrPubkey) { return body.callback; } - } catch (err) { - } + } catch (err) {} return null; } - function makeZapRequest({ - profile, - event, - amount, - relays, - comment = "" - }) { - if (!amount) - throw new Error("amount not given"); - if (!profile) - throw new Error("profile not given"); + function makeZapRequest({ profile, event, amount, relays, comment = "" }) { + if (!amount) throw new Error("amount not given"); + if (!profile) throw new Error("profile not given"); let zr = { kind: 9734, created_at: Math.round(Date.now() / 1e3), @@ -8585,8 +9240,8 @@ zoo`.split("\n"); tags: [ ["p", profile], ["amount", amount.toString()], - ["relays", ...relays] - ] + ["relays", ...relays], + ], }; if (event) { zr.tags.push(["e", event]); @@ -8605,24 +9260,17 @@ zoo`.split("\n"); if (!verifySignature(zapRequest)) return "Invalid signature on zap request."; let p = zapRequest.tags.find(([t, v]) => t === "p" && v); - if (!p) - return "Zap request doesn't have a 'p' tag."; + if (!p) return "Zap request doesn't have a 'p' tag."; if (!p[1].match(/^[a-f0-9]{64}$/)) return "Zap request 'p' tag is not valid hex."; let e = zapRequest.tags.find(([t, v]) => t === "e" && v); if (e && !e[1].match(/^[a-f0-9]{64}$/)) return "Zap request 'e' tag is not valid hex."; let relays = zapRequest.tags.find(([t, v]) => t === "relays" && v); - if (!relays) - return "Zap request doesn't have a 'relays' tag."; + if (!relays) return "Zap request doesn't have a 'relays' tag."; return null; } - function makeZapReceipt({ - zapRequest, - preimage, - bolt11, - paidAt - }) { + function makeZapReceipt({ zapRequest, preimage, bolt11, paidAt }) { let zr = JSON.parse(zapRequest); let tagsFromZapRequest = zr.tags.filter( ([t]) => t === "e" || t === "p" || t === "a" @@ -8634,8 +9282,8 @@ zoo`.split("\n"); tags: [ ...tagsFromZapRequest, ["bolt11", bolt11], - ["description", zapRequest] - ] + ["description", zapRequest], + ], }; if (preimage) { zap.tags.push(["preimage", preimage]); @@ -8647,11 +9295,16 @@ zoo`.split("\n"); var nip98_exports = {}; __export(nip98_exports, { getToken: () => getToken, - validateToken: () => validateToken + validateToken: () => validateToken, }); init_define_process(); var _authorizationScheme = "Nostr "; - async function getToken(loginUrl, httpMethod, sign, includeAuthorizationScheme = false) { + async function getToken( + loginUrl, + httpMethod, + sign, + includeAuthorizationScheme = false + ) { if (!loginUrl || !httpMethod) throw new Error("Missing loginUrl or httpMethod"); if (httpMethod !== "get" /* Get */ && httpMethod !== "post" /* Post */) @@ -8659,12 +9312,17 @@ zoo`.split("\n"); const event = getBlankEvent(27235 /* HttpAuth */); event.tags = [ ["u", loginUrl], - ["method", httpMethod] + ["method", httpMethod], ]; event.created_at = Math.round(new Date().getTime() / 1e3); const signedEvent = await sign(event); - const authorizationScheme = includeAuthorizationScheme ? _authorizationScheme : ""; - return authorizationScheme + base64.encode(utf8Encoder.encode(JSON.stringify(signedEvent))); + const authorizationScheme = includeAuthorizationScheme + ? _authorizationScheme + : ""; + return ( + authorizationScheme + + base64.encode(utf8Encoder.encode(JSON.stringify(signedEvent))) + ); } async function validateToken(token, url, method) { if (!token) { @@ -8696,7 +9354,10 @@ zoo`.split("\n"); throw new Error("Invalid nostr event, url tag invalid"); } const methodTag = event.tags.find((t) => t[0] === "method"); - if (methodTag?.length !== 1 && methodTag?.[1].toLowerCase() !== method.toLowerCase()) { + if ( + methodTag?.length !== 1 && + methodTag?.[1].toLowerCase() !== method.toLowerCase() + ) { throw new Error("Invalid nostr event, method tag invalid"); } return true; diff --git a/static/market/js/utils.js b/static/market/js/utils.js index 2e41b49..56fe122 100644 --- a/static/market/js/utils.js +++ b/static/market/js/utils.js @@ -1,167 +1,186 @@ -var NostrTools = window.NostrTools +var NostrTools = window.NostrTools; var defaultRelays = [ - 'wss://relay.damus.io', - 'wss://relay.snort.social', - 'wss://nostr-pub.wellorder.net', - 'wss://nostr.zebedee.cloud', - 'wss://nostr.walletofsatoshi.com' -] -var eventToObj = event => { - try { - event.content = JSON.parse(event.content) || null - } catch { - - } - - - return { - ...event, - ...Object.values(event.tags).reduce((acc, tag) => { - let [key, value] = tag - if (key == 't') { - return { ...acc, [key]: [...(acc[key] || []), value] } - } else { - return { ...acc, [key]: value } - } - }, {}) - } -} + "wss://relay.damus.io", + "wss://relay.snort.social", + "wss://nostr-pub.wellorder.net", + "wss://nostr.zebedee.cloud", + "wss://nostr.walletofsatoshi.com", +]; +var eventToObj = (event) => { + try { + event.content = JSON.parse(event.content) || null; + } catch {} + + return { + ...event, + ...Object.values(event.tags).reduce((acc, tag) => { + let [key, value] = tag; + if (key == "t") { + return { ...acc, [key]: [...(acc[key] || []), value] }; + } else { + return { ...acc, [key]: value }; + } + }, {}), + }; +}; function confirm(message) { - return { - message, - ok: { - flat: true, - color: 'primary' - }, - cancel: { - flat: true, - color: 'grey' - } - } + return { + message, + ok: { + flat: true, + color: "primary", + }, + cancel: { + flat: true, + color: "grey", + }, + }; } - async function hash(string) { - const utf8 = new TextEncoder().encode(string) - const hashBuffer = await crypto.subtle.digest('SHA-256', utf8) - const hashArray = Array.from(new Uint8Array(hashBuffer)) - const hashHex = hashArray - .map(bytes => bytes.toString(16).padStart(2, '0')) - .join('') - return hashHex + const utf8 = new TextEncoder().encode(string); + const hashBuffer = await crypto.subtle.digest("SHA-256", utf8); + const hashArray = Array.from(new Uint8Array(hashBuffer)); + const hashHex = hashArray + .map((bytes) => bytes.toString(16).padStart(2, "0")) + .join(""); + return hashHex; } function isJson(str) { - if (typeof str !== 'string') { - return false - } - try { - JSON.parse(str) - return true - } catch (error) { - return false - } + if (typeof str !== "string") { + return false; + } + try { + JSON.parse(str); + return true; + } catch (error) { + return false; + } } function formatSat(value) { - return new Intl.NumberFormat(window.LOCALE).format(value) + return new Intl.NumberFormat(window.LOCALE).format(value); } function satOrBtc(val, showUnit = true, showSats = false) { - const value = showSats - ? formatSat(val) - : val == 0 - ? 0.0 - : (val / 100000000).toFixed(8) - if (!showUnit) return value - return showSats ? value + ' sat' : value + ' BTC' + const value = showSats + ? formatSat(val) + : val == 0 + ? 0.0 + : (val / 100000000).toFixed(8); + if (!showUnit) return value; + return showSats ? value + " sat" : value + " BTC"; } function timeFromNow(time) { - // Get timestamps - let unixTime = new Date(time).getTime() - if (!unixTime) return - let now = new Date().getTime() - - // Calculate difference - let difference = unixTime / 1000 - now / 1000 - - // Setup return object - let tfn = {} - - // Check if time is in the past, present, or future - tfn.when = 'now' - if (difference > 0) { - tfn.when = 'future' - } else if (difference < -1) { - tfn.when = 'past' - } - - // Convert difference to absolute - difference = Math.abs(difference) - - // Calculate time unit - if (difference / (60 * 60 * 24 * 365) > 1) { - // Years - tfn.unitOfTime = 'years' - tfn.time = Math.floor(difference / (60 * 60 * 24 * 365)) - } else if (difference / (60 * 60 * 24 * 45) > 1) { - // Months - tfn.unitOfTime = 'months' - tfn.time = Math.floor(difference / (60 * 60 * 24 * 45)) - } else if (difference / (60 * 60 * 24) > 1) { - // Days - tfn.unitOfTime = 'days' - tfn.time = Math.floor(difference / (60 * 60 * 24)) - } else if (difference / (60 * 60) > 1) { - // Hours - tfn.unitOfTime = 'hours' - tfn.time = Math.floor(difference / (60 * 60)) - } else if (difference / 60 > 1) { - // Minutes - tfn.unitOfTime = 'minutes' - tfn.time = Math.floor(difference / 60) - } else { - // Seconds - tfn.unitOfTime = 'seconds' - tfn.time = Math.floor(difference) - } - - // Return time from now data - return `${tfn.time} ${tfn.unitOfTime}` + // Get timestamps + let unixTime = new Date(time).getTime(); + if (!unixTime) return; + let now = new Date().getTime(); + + // Calculate difference + let difference = unixTime / 1000 - now / 1000; + + // Setup return object + let tfn = {}; + + // Check if time is in the past, present, or future + tfn.when = "now"; + if (difference > 0) { + tfn.when = "future"; + } else if (difference < -1) { + tfn.when = "past"; + } + + // Convert difference to absolute + difference = Math.abs(difference); + + // Calculate time unit + if (difference / (60 * 60 * 24 * 365) > 1) { + // Years + tfn.unitOfTime = "years"; + tfn.time = Math.floor(difference / (60 * 60 * 24 * 365)); + } else if (difference / (60 * 60 * 24 * 45) > 1) { + // Months + tfn.unitOfTime = "months"; + tfn.time = Math.floor(difference / (60 * 60 * 24 * 45)); + } else if (difference / (60 * 60 * 24) > 1) { + // Days + tfn.unitOfTime = "days"; + tfn.time = Math.floor(difference / (60 * 60 * 24)); + } else if (difference / (60 * 60) > 1) { + // Hours + tfn.unitOfTime = "hours"; + tfn.time = Math.floor(difference / (60 * 60)); + } else if (difference / 60 > 1) { + // Minutes + tfn.unitOfTime = "minutes"; + tfn.time = Math.floor(difference / 60); + } else { + // Seconds + tfn.unitOfTime = "seconds"; + tfn.time = Math.floor(difference); + } + + // Return time from now data + return `${tfn.time} ${tfn.unitOfTime}`; } function isValidImageUrl(string) { - let url - try { - url = new URL(string) - } catch (_) { - return false - } - return url.protocol === 'http:' || url.protocol === 'https:' + let url; + try { + url = new URL(string); + } catch (_) { + return false; + } + return url.protocol === "http:" || url.protocol === "https:"; } -function isValidKey(key, prefix = 'n') { - try { - if (key && key.startsWith(prefix)) { - let { _, data } = NostrTools.nip19.decode(key) - key = data - } - return isValidKeyHex(key) - } catch (error) { - return false +function isValidKey(key, prefix = "n") { + try { + if (key && key.startsWith(prefix)) { + let { _, data } = NostrTools.nip19.decode(key); + key = data; } + return isValidKeyHex(key); + } catch (error) { + return false; + } } function isValidKeyHex(key) { - return !!key?.toLowerCase()?.match(/^[0-9a-f]{64}$/) + return !!key?.toLowerCase()?.match(/^[0-9a-f]{64}$/); } function formatCurrency(value, currency) { + try { return new Intl.NumberFormat(window.LOCALE, { - style: 'currency', - currency: currency - }).format(value) + style: "currency", + currency: currency, + }).format(value); + } catch (error) { + return value; + } +} + +function productCompare(a, b, sortBy, sortOrder) { + let va = a[sortBy]; + let vb = b[sortBy]; + if (sortOrder !== "asc") { + [vb, va] = [va, vb]; + } + if (!va && !vb) return 0; + if (!va) return -1; + if (!vb) return 1; + + if (Array.isArray(va)) { + return va.join().localeCompare(vb.join()); + } + if (typeof va === "string") { + return va.localeCompare(vb); + } + return va - vb; } From 0d94b8881de05cbc81014287d30240dcfeb97149 Mon Sep 17 00:00:00 2001 From: Vlad Stan Date: Fri, 8 Nov 2024 10:27:46 +0200 Subject: [PATCH 2/9] chore: code format --- static/market/index.html | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/static/market/index.html b/static/market/index.html index c70cbe5..b4e2c59 100644 --- a/static/market/index.html +++ b/static/market/index.html @@ -1,3 +1,27 @@ -Nostr Market App + + + + + Nostr Market App + + + + + + + + + + + + + + -
\ No newline at end of file + + + +
+ + + \ No newline at end of file From d0d5d1d8c2a4db01b7d367cb7fbeff7e5754fafa Mon Sep 17 00:00:00 2001 From: Vlad Stan Date: Fri, 8 Nov 2024 10:29:01 +0200 Subject: [PATCH 3/9] chore: revert paths --- static/market/index.html | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/static/market/index.html b/static/market/index.html index b4e2c59..942d4e7 100644 --- a/static/market/index.html +++ b/static/market/index.html @@ -8,14 +8,14 @@ - - - - - - - - + + + + + + + + From 0c29ed7fd0204794cee0cfc579a370f28f11d5c5 Mon Sep 17 00:00:00 2001 From: Vlad Stan Date: Fri, 8 Nov 2024 10:34:33 +0200 Subject: [PATCH 4/9] chore: revert formattings --- static/market/js/bolt11-decoder.js | 342 ++++++++++++++--------------- 1 file changed, 170 insertions(+), 172 deletions(-) diff --git a/static/market/js/bolt11-decoder.js b/static/market/js/bolt11-decoder.js index a9a9920..7b73260 100644 --- a/static/market/js/bolt11-decoder.js +++ b/static/market/js/bolt11-decoder.js @@ -4,200 +4,198 @@ //TODO - A reader MUST use the n field to validate the signature instead of performing signature recovery if a valid n field is provided. function decode(paymentRequest) { - let input = paymentRequest.toLowerCase(); - let splitPosition = input.lastIndexOf("1"); - let humanReadablePart = input.substring(0, splitPosition); - let data = input.substring(splitPosition + 1, input.length - 6); - let checksum = input.substring(input.length - 6, input.length); + let input = paymentRequest.toLowerCase() + let splitPosition = input.lastIndexOf('1') + let humanReadablePart = input.substring(0, splitPosition) + let data = input.substring(splitPosition + 1, input.length - 6) + let checksum = input.substring(input.length - 6, input.length) if ( !verify_checksum(humanReadablePart, bech32ToFiveBitArray(data + checksum)) ) { - throw "Malformed request: checksum is incorrect"; // A reader MUST fail if the checksum is incorrect. + throw 'Malformed request: checksum is incorrect' // A reader MUST fail if the checksum is incorrect. } return { human_readable_part: decodeHumanReadablePart(humanReadablePart), data: decodeData(data, humanReadablePart), - checksum: checksum, - }; + checksum: checksum + } } function decodeHumanReadablePart(humanReadablePart) { - let prefixes = ["lnbc", "lntb", "lnbcrt", "lnsb"]; - let prefix; - prefixes.forEach((value) => { + let prefixes = ['lnbc', 'lntb', 'lnbcrt', 'lnsb'] + let prefix + prefixes.forEach(value => { if (humanReadablePart.substring(0, value.length) === value) { - prefix = value; + prefix = value } - }); - if (prefix == null) throw "Malformed request: unknown prefix"; // A reader MUST fail if it does not understand the prefix. + }) + if (prefix == null) throw 'Malformed request: unknown prefix' // A reader MUST fail if it does not understand the prefix. let amount = decodeAmount( humanReadablePart.substring(prefix.length, humanReadablePart.length) - ); + ) return { prefix: prefix, - amount: amount, - }; + amount: amount + } } function decodeData(data, humanReadablePart) { - let date32 = data.substring(0, 7); - let dateEpoch = bech32ToInt(date32); - let signature = data.substring(data.length - 104, data.length); - let tagData = data.substring(7, data.length - 104); - let decodedTags = decodeTags(tagData); - let value = bech32ToFiveBitArray(date32 + tagData); - value = fiveBitArrayTo8BitArray(value, true); - value = textToHexString(humanReadablePart).concat( - byteArrayToHexString(value) - ); + let date32 = data.substring(0, 7) + let dateEpoch = bech32ToInt(date32) + let signature = data.substring(data.length - 104, data.length) + let tagData = data.substring(7, data.length - 104) + let decodedTags = decodeTags(tagData) + let value = bech32ToFiveBitArray(date32 + tagData) + value = fiveBitArrayTo8BitArray(value, true) + value = textToHexString(humanReadablePart).concat(byteArrayToHexString(value)) return { time_stamp: dateEpoch, tags: decodedTags, signature: decodeSignature(signature), - signing_data: value, - }; + signing_data: value + } } function decodeSignature(signature) { - let data = fiveBitArrayTo8BitArray(bech32ToFiveBitArray(signature)); - let recoveryFlag = data[data.length - 1]; - let r = byteArrayToHexString(data.slice(0, 32)); - let s = byteArrayToHexString(data.slice(32, data.length - 1)); + let data = fiveBitArrayTo8BitArray(bech32ToFiveBitArray(signature)) + let recoveryFlag = data[data.length - 1] + let r = byteArrayToHexString(data.slice(0, 32)) + let s = byteArrayToHexString(data.slice(32, data.length - 1)) return { r: r, s: s, - recovery_flag: recoveryFlag, - }; + recovery_flag: recoveryFlag + } } function decodeAmount(str) { - let multiplier = str.charAt(str.length - 1); - let amount = str.substring(0, str.length - 1); - if (amount.substring(0, 1) === "0") { - throw "Malformed request: amount cannot contain leading zeros"; + let multiplier = str.charAt(str.length - 1) + let amount = str.substring(0, str.length - 1) + if (amount.substring(0, 1) === '0') { + throw 'Malformed request: amount cannot contain leading zeros' } - amount = Number(amount); + amount = Number(amount) if (amount < 0 || !Number.isInteger(amount)) { - throw "Malformed request: amount must be a positive decimal integer"; // A reader SHOULD fail if amount contains a non-digit + throw 'Malformed request: amount must be a positive decimal integer' // A reader SHOULD fail if amount contains a non-digit } switch (multiplier) { - case "": - return "Any amount"; // A reader SHOULD indicate if amount is unspecified - case "p": - return amount / 10; - case "n": - return amount * 100; - case "u": - return amount * 100000; - case "m": - return amount * 100000000; + case '': + return 'Any amount' // A reader SHOULD indicate if amount is unspecified + case 'p': + return amount / 10 + case 'n': + return amount * 100 + case 'u': + return amount * 100000 + case 'm': + return amount * 100000000 default: // A reader SHOULD fail if amount is followed by anything except a defined multiplier. - throw "Malformed request: undefined amount multiplier"; + throw 'Malformed request: undefined amount multiplier' } } function decodeTags(tagData) { - let tags = extractTags(tagData); - let decodedTags = []; - tags.forEach((value) => + let tags = extractTags(tagData) + let decodedTags = [] + tags.forEach(value => decodedTags.push(decodeTag(value.type, value.length, value.data)) - ); - return decodedTags; + ) + return decodedTags } function extractTags(str) { - let tags = []; + let tags = [] while (str.length > 0) { - let type = str.charAt(0); - let dataLength = bech32ToInt(str.substring(1, 3)); - let data = str.substring(3, dataLength + 3); + let type = str.charAt(0) + let dataLength = bech32ToInt(str.substring(1, 3)) + let data = str.substring(3, dataLength + 3) tags.push({ type: type, length: dataLength, - data: data, - }); - str = str.substring(3 + dataLength, str.length); + data: data + }) + str = str.substring(3 + dataLength, str.length) } - return tags; + return tags } function decodeTag(type, length, data) { switch (type) { - case "p": - if (length !== 52) break; // A reader MUST skip over a 'p' field that does not have data_length 52 + case 'p': + if (length !== 52) break // A reader MUST skip over a 'p' field that does not have data_length 52 return { type: type, length: length, - description: "payment_hash", + description: 'payment_hash', value: byteArrayToHexString( fiveBitArrayTo8BitArray(bech32ToFiveBitArray(data)) - ), - }; - case "d": + ) + } + case 'd': return { type: type, length: length, - description: "description", - value: bech32ToUTF8String(data), - }; - case "n": - if (length !== 53) break; // A reader MUST skip over a 'n' field that does not have data_length 53 + description: 'description', + value: bech32ToUTF8String(data) + } + case 'n': + if (length !== 53) break // A reader MUST skip over a 'n' field that does not have data_length 53 return { type: type, length: length, - description: "payee_public_key", + description: 'payee_public_key', value: byteArrayToHexString( fiveBitArrayTo8BitArray(bech32ToFiveBitArray(data)) - ), - }; - case "h": - if (length !== 52) break; // A reader MUST skip over a 'h' field that does not have data_length 52 + ) + } + case 'h': + if (length !== 52) break // A reader MUST skip over a 'h' field that does not have data_length 52 return { type: type, length: length, - description: "description_hash", - value: data, - }; - case "x": + description: 'description_hash', + value: data + } + case 'x': return { type: type, length: length, - description: "expiry", - value: bech32ToInt(data), - }; - case "c": + description: 'expiry', + value: bech32ToInt(data) + } + case 'c': return { type: type, length: length, - description: "min_final_cltv_expiry", - value: bech32ToInt(data), - }; - case "f": - let version = bech32ToFiveBitArray(data.charAt(0))[0]; - if (version < 0 || version > 18) break; // a reader MUST skip over an f field with unknown version. - data = data.substring(1, data.length); + description: 'min_final_cltv_expiry', + value: bech32ToInt(data) + } + case 'f': + let version = bech32ToFiveBitArray(data.charAt(0))[0] + if (version < 0 || version > 18) break // a reader MUST skip over an f field with unknown version. + data = data.substring(1, data.length) return { type: type, length: length, - description: "fallback_address", + description: 'fallback_address', value: { version: version, - fallback_address: data, - }, - }; - case "r": - data = fiveBitArrayTo8BitArray(bech32ToFiveBitArray(data)); - let pubkey = data.slice(0, 33); - let shortChannelId = data.slice(33, 41); - let feeBaseMsat = data.slice(41, 45); - let feeProportionalMillionths = data.slice(45, 49); - let cltvExpiryDelta = data.slice(49, 51); + fallback_address: data + } + } + case 'r': + data = fiveBitArrayTo8BitArray(bech32ToFiveBitArray(data)) + let pubkey = data.slice(0, 33) + let shortChannelId = data.slice(33, 41) + let feeBaseMsat = data.slice(41, 45) + let feeProportionalMillionths = data.slice(45, 49) + let cltvExpiryDelta = data.slice(49, 51) return { type: type, length: length, - description: "routing_information", + description: 'routing_information', value: { public_key: byteArrayToHexString(pubkey), short_channel_id: byteArrayToHexString(shortChannelId), @@ -205,145 +203,145 @@ function decodeTag(type, length, data) { fee_proportional_millionths: byteArrayToInt( feeProportionalMillionths ), - cltv_expiry_delta: byteArrayToInt(cltvExpiryDelta), - }, - }; + cltv_expiry_delta: byteArrayToInt(cltvExpiryDelta) + } + } default: // reader MUST skip over unknown fields } } function polymod(values) { - let GEN = [0x3b6a57b2, 0x26508e6d, 0x1ea119fa, 0x3d4233dd, 0x2a1462b3]; - let chk = 1; - values.forEach((value) => { - let b = chk >> 25; - chk = ((chk & 0x1ffffff) << 5) ^ value; + let GEN = [0x3b6a57b2, 0x26508e6d, 0x1ea119fa, 0x3d4233dd, 0x2a1462b3] + let chk = 1 + values.forEach(value => { + let b = chk >> 25 + chk = ((chk & 0x1ffffff) << 5) ^ value for (let i = 0; i < 5; i++) { if (((b >> i) & 1) === 1) { - chk ^= GEN[i]; + chk ^= GEN[i] } else { - chk ^= 0; + chk ^= 0 } } - }); - return chk; + }) + return chk } function expand(str) { - let array = []; + let array = [] for (let i = 0; i < str.length; i++) { - array.push(str.charCodeAt(i) >> 5); + array.push(str.charCodeAt(i) >> 5) } - array.push(0); + array.push(0) for (let i = 0; i < str.length; i++) { - array.push(str.charCodeAt(i) & 31); + array.push(str.charCodeAt(i) & 31) } - return array; + return array } function verify_checksum(hrp, data) { - hrp = expand(hrp); - let all = hrp.concat(data); - let bool = polymod(all); - return bool === 1; + hrp = expand(hrp) + let all = hrp.concat(data) + let bool = polymod(all) + return bool === 1 } -const bech32CharValues = "qpzry9x8gf2tvdw0s3jn54khce6mua7l"; +const bech32CharValues = 'qpzry9x8gf2tvdw0s3jn54khce6mua7l' function byteArrayToInt(byteArray) { - let value = 0; + let value = 0 for (let i = 0; i < byteArray.length; ++i) { - value = (value << 8) + byteArray[i]; + value = (value << 8) + byteArray[i] } - return value; + return value } function bech32ToInt(str) { - let sum = 0; + let sum = 0 for (let i = 0; i < str.length; i++) { - sum = sum * 32; - sum = sum + bech32CharValues.indexOf(str.charAt(i)); + sum = sum * 32 + sum = sum + bech32CharValues.indexOf(str.charAt(i)) } - return sum; + return sum } function bech32ToFiveBitArray(str) { - let array = []; + let array = [] for (let i = 0; i < str.length; i++) { - array.push(bech32CharValues.indexOf(str.charAt(i))); + array.push(bech32CharValues.indexOf(str.charAt(i))) } - return array; + return array } function fiveBitArrayTo8BitArray(int5Array, includeOverflow) { - let count = 0; - let buffer = 0; - let byteArray = []; - int5Array.forEach((value) => { - buffer = (buffer << 5) + value; - count += 5; + let count = 0 + let buffer = 0 + let byteArray = [] + int5Array.forEach(value => { + buffer = (buffer << 5) + value + count += 5 if (count >= 8) { - byteArray.push((buffer >> (count - 8)) & 255); - count -= 8; + byteArray.push((buffer >> (count - 8)) & 255) + count -= 8 } - }); + }) if (includeOverflow && count > 0) { - byteArray.push((buffer << (8 - count)) & 255); + byteArray.push((buffer << (8 - count)) & 255) } - return byteArray; + return byteArray } function bech32ToUTF8String(str) { - let int5Array = bech32ToFiveBitArray(str); - let byteArray = fiveBitArrayTo8BitArray(int5Array); + let int5Array = bech32ToFiveBitArray(str) + let byteArray = fiveBitArrayTo8BitArray(int5Array) - let utf8String = ""; + let utf8String = '' for (let i = 0; i < byteArray.length; i++) { - utf8String += "%" + ("0" + byteArray[i].toString(16)).slice(-2); + utf8String += '%' + ('0' + byteArray[i].toString(16)).slice(-2) } - return decodeURIComponent(utf8String); + return decodeURIComponent(utf8String) } function byteArrayToHexString(byteArray) { return Array.prototype.map .call(byteArray, function (byte) { - return ("0" + (byte & 0xff).toString(16)).slice(-2); + return ('0' + (byte & 0xff).toString(16)).slice(-2) }) - .join(""); + .join('') } function textToHexString(text) { - let hexString = ""; + let hexString = '' for (let i = 0; i < text.length; i++) { - hexString += text.charCodeAt(i).toString(16); + hexString += text.charCodeAt(i).toString(16) } - return hexString; + return hexString } function epochToDate(int) { - let date = new Date(int * 1000); - return date.toUTCString(); + let date = new Date(int * 1000) + return date.toUTCString() } function isEmptyOrSpaces(str) { - return str === null || str.match(/^ *$/) !== null; + return str === null || str.match(/^ *$/) !== null } function toFixed(x) { if (Math.abs(x) < 1.0) { - var e = parseInt(x.toString().split("e-")[1]); + var e = parseInt(x.toString().split('e-')[1]) if (e) { - x *= Math.pow(10, e - 1); - x = "0." + new Array(e).join("0") + x.toString().substring(2); + x *= Math.pow(10, e - 1) + x = '0.' + new Array(e).join('0') + x.toString().substring(2) } } else { - var e = parseInt(x.toString().split("+")[1]); + var e = parseInt(x.toString().split('+')[1]) if (e > 20) { - e -= 20; - x /= Math.pow(10, e); - x += new Array(e + 1).join("0"); + e -= 20 + x /= Math.pow(10, e) + x += new Array(e + 1).join('0') } } - return x; + return x } From 9affd4b93eee02bf2c5a6bd41192a5d658158ff0 Mon Sep 17 00:00:00 2001 From: Vlad Stan Date: Fri, 8 Nov 2024 10:36:45 +0200 Subject: [PATCH 5/9] chore: revert --- static/market/js/nostr.bundle.js | 3723 ++++++++++++------------------ 1 file changed, 1531 insertions(+), 2192 deletions(-) diff --git a/static/market/js/nostr.bundle.js b/static/market/js/nostr.bundle.js index d0bb48f..0d41aa7 100644 --- a/static/market/js/nostr.bundle.js +++ b/static/market/js/nostr.bundle.js @@ -6,52 +6,34 @@ var NostrTools = (() => { var __getOwnPropNames = Object.getOwnPropertyNames; var __getProtoOf = Object.getPrototypeOf; var __hasOwnProp = Object.prototype.hasOwnProperty; - var __esm = (fn, res) => - function __init() { - return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])((fn = 0))), res; - }; - var __commonJS = (cb, mod2) => - function __require() { - return ( - mod2 || - (0, cb[__getOwnPropNames(cb)[0]])( - (mod2 = { exports: {} }).exports, - mod2 - ), - mod2.exports - ); - }; + var __esm = (fn, res) => function __init() { + return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res; + }; + var __commonJS = (cb, mod2) => function __require() { + return mod2 || (0, cb[__getOwnPropNames(cb)[0]])((mod2 = { exports: {} }).exports, mod2), mod2.exports; + }; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { - if ((from && typeof from === "object") || typeof from === "function") { + if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { - get: () => from[key], - enumerable: - !(desc = __getOwnPropDesc(from, key)) || desc.enumerable, - }); + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; - var __toESM = (mod2, isNodeMode, target) => ( - (target = mod2 != null ? __create(__getProtoOf(mod2)) : {}), - __copyProps( - isNodeMode || !mod2 || !mod2.__esModule - ? __defProp(target, "default", { value: mod2, enumerable: true }) - : target, - mod2 - ) - ); - var __toCommonJS = (mod2) => - __copyProps(__defProp({}, "__esModule", { value: true }), mod2); + var __toESM = (mod2, isNodeMode, target) => (target = mod2 != null ? __create(__getProtoOf(mod2)) : {}, __copyProps( + isNodeMode || !mod2 || !mod2.__esModule ? __defProp(target, "default", { value: mod2, enumerable: true }) : target, + mod2 + )); + var __toCommonJS = (mod2) => __copyProps(__defProp({}, "__esModule", { value: true }), mod2); // var init_define_process = __esm({ - ""() {}, + ""() { + } }); // node_modules/@scure/bip39/wordlists/english.js @@ -2109,7 +2091,7 @@ zebra zero zone zoo`.split("\n"); - }, + } }); // node_modules/@noble/hashes/_assert.js @@ -2118,13 +2100,7 @@ zoo`.split("\n"); "use strict"; init_define_process(); Object.defineProperty(exports, "__esModule", { value: true }); - exports.output = - exports.exists = - exports.hash = - exports.bytes = - exports.bool = - exports.number = - void 0; + exports.output = exports.exists = exports.hash = exports.bytes = exports.bool = exports.number = void 0; function number2(n) { if (!Number.isSafeInteger(n) || n < 0) throw new Error(`Wrong positive integer: ${n}`); @@ -2139,9 +2115,7 @@ zoo`.split("\n"); if (!(b instanceof Uint8Array)) throw new TypeError("Expected Uint8Array"); if (lengths.length > 0 && !lengths.includes(b.length)) - throw new TypeError( - `Expected Uint8Array of length ${lengths}, not of length=${b.length}` - ); + throw new TypeError(`Expected Uint8Array of length ${lengths}, not of length=${b.length}`); } exports.bytes = bytes2; function hash2(hash3) { @@ -2162,9 +2136,7 @@ zoo`.split("\n"); bytes2(out); const min = instance.outputLen; if (out.length < min) { - throw new Error( - `digestInto() expects output buffer of length at least ${min}` - ); + throw new Error(`digestInto() expects output buffer of length at least ${min}`); } } exports.output = output2; @@ -2174,10 +2146,10 @@ zoo`.split("\n"); bytes: bytes2, hash: hash2, exists: exists2, - output: output2, + output: output2 }; exports.default = assert2; - }, + } }); // node_modules/@noble/hashes/crypto.js @@ -2187,11 +2159,8 @@ zoo`.split("\n"); init_define_process(); Object.defineProperty(exports, "__esModule", { value: true }); exports.crypto = void 0; - exports.crypto = - typeof globalThis === "object" && "crypto" in globalThis - ? globalThis.crypto - : void 0; - }, + exports.crypto = typeof globalThis === "object" && "crypto" in globalThis ? globalThis.crypto : void 0; + } }); // node_modules/@noble/hashes/utils.js @@ -2200,47 +2169,20 @@ zoo`.split("\n"); "use strict"; init_define_process(); Object.defineProperty(exports, "__esModule", { value: true }); - exports.randomBytes = - exports.wrapConstructorWithOpts = - exports.wrapConstructor = - exports.checkOpts = - exports.Hash = - exports.concatBytes = - exports.toBytes = - exports.utf8ToBytes = - exports.asyncLoop = - exports.nextTick = - exports.hexToBytes = - exports.bytesToHex = - exports.isLE = - exports.rotr = - exports.createView = - exports.u32 = - exports.u8 = - void 0; + exports.randomBytes = exports.wrapConstructorWithOpts = exports.wrapConstructor = exports.checkOpts = exports.Hash = exports.concatBytes = exports.toBytes = exports.utf8ToBytes = exports.asyncLoop = exports.nextTick = exports.hexToBytes = exports.bytesToHex = exports.isLE = exports.rotr = exports.createView = exports.u32 = exports.u8 = void 0; var crypto_1 = require_crypto(); - var u8 = (arr) => - new Uint8Array(arr.buffer, arr.byteOffset, arr.byteLength); + var u8 = (arr) => new Uint8Array(arr.buffer, arr.byteOffset, arr.byteLength); exports.u8 = u8; - var u32 = (arr) => - new Uint32Array( - arr.buffer, - arr.byteOffset, - Math.floor(arr.byteLength / 4) - ); + var u32 = (arr) => new Uint32Array(arr.buffer, arr.byteOffset, Math.floor(arr.byteLength / 4)); exports.u32 = u32; - var createView2 = (arr) => - new DataView(arr.buffer, arr.byteOffset, arr.byteLength); + var createView2 = (arr) => new DataView(arr.buffer, arr.byteOffset, arr.byteLength); exports.createView = createView2; - var rotr2 = (word, shift) => (word << (32 - shift)) | (word >>> shift); + var rotr2 = (word, shift) => word << 32 - shift | word >>> shift; exports.rotr = rotr2; - exports.isLE = - new Uint8Array(new Uint32Array([287454020]).buffer)[0] === 68; + exports.isLE = new Uint8Array(new Uint32Array([287454020]).buffer)[0] === 68; if (!exports.isLE) throw new Error("Non little-endian hardware is not supported"); - var hexes3 = Array.from({ length: 256 }, (v, i) => - i.toString(16).padStart(2, "0") - ); + var hexes3 = Array.from({ length: 256 }, (v, i) => i.toString(16).padStart(2, "0")); function bytesToHex3(uint8a) { if (!(uint8a instanceof Uint8Array)) throw new Error("Uint8Array expected"); @@ -2253,9 +2195,7 @@ zoo`.split("\n"); exports.bytesToHex = bytesToHex3; function hexToBytes3(hex2) { if (typeof hex2 !== "string") { - throw new TypeError( - "hexToBytes: expected string, got " + typeof hex2 - ); + throw new TypeError("hexToBytes: expected string, got " + typeof hex2); } if (hex2.length % 2) throw new Error("hexToBytes: received invalid unpadded hex"); @@ -2271,14 +2211,16 @@ zoo`.split("\n"); return array; } exports.hexToBytes = hexToBytes3; - var nextTick = async () => {}; + var nextTick = async () => { + }; exports.nextTick = nextTick; async function asyncLoop(iters, tick, cb) { let ts = Date.now(); for (let i = 0; i < iters; i++) { cb(i); const diff = Date.now() - ts; - if (diff >= 0 && diff < tick) continue; + if (diff >= 0 && diff < tick) + continue; await (0, exports.nextTick)(); ts += diff; } @@ -2292,18 +2234,18 @@ zoo`.split("\n"); } exports.utf8ToBytes = utf8ToBytes3; function toBytes2(data) { - if (typeof data === "string") data = utf8ToBytes3(data); + if (typeof data === "string") + data = utf8ToBytes3(data); if (!(data instanceof Uint8Array)) - throw new TypeError( - `Expected input type is Uint8Array (got ${typeof data})` - ); + throw new TypeError(`Expected input type is Uint8Array (got ${typeof data})`); return data; } exports.toBytes = toBytes2; function concatBytes3(...arrays) { if (!arrays.every((a) => a instanceof Uint8Array)) throw new Error("Uint8Array list expected"); - if (arrays.length === 1) return arrays[0]; + if (arrays.length === 1) + return arrays[0]; const length = arrays.reduce((a, arr) => a + arr.length, 0); const result = new Uint8Array(length); for (let i = 0, pad = 0; i < arrays.length; i++) { @@ -2320,22 +2262,16 @@ zoo`.split("\n"); } }; exports.Hash = Hash2; - var isPlainObject = (obj) => - Object.prototype.toString.call(obj) === "[object Object]" && - obj.constructor === Object; + var isPlainObject = (obj) => Object.prototype.toString.call(obj) === "[object Object]" && obj.constructor === Object; function checkOpts(defaults, opts) { - if ( - opts !== void 0 && - (typeof opts !== "object" || !isPlainObject(opts)) - ) + if (opts !== void 0 && (typeof opts !== "object" || !isPlainObject(opts))) throw new TypeError("Options should be object or undefined"); const merged = Object.assign(defaults, opts); return merged; } exports.checkOpts = checkOpts; function wrapConstructor2(hashConstructor) { - const hashC = (message) => - hashConstructor().update(toBytes2(message)).digest(); + const hashC = (message) => hashConstructor().update(toBytes2(message)).digest(); const tmp = hashConstructor(); hashC.outputLen = tmp.outputLen; hashC.blockLen = tmp.blockLen; @@ -2344,8 +2280,7 @@ zoo`.split("\n"); } exports.wrapConstructor = wrapConstructor2; function wrapConstructorWithOpts(hashCons) { - const hashC = (msg, opts) => - hashCons(opts).update(toBytes2(msg)).digest(); + const hashC = (msg, opts) => hashCons(opts).update(toBytes2(msg)).digest(); const tmp = hashCons({}); hashC.outputLen = tmp.outputLen; hashC.blockLen = tmp.blockLen; @@ -2354,16 +2289,13 @@ zoo`.split("\n"); } exports.wrapConstructorWithOpts = wrapConstructorWithOpts; function randomBytes2(bytesLength = 32) { - if ( - crypto_1.crypto && - typeof crypto_1.crypto.getRandomValues === "function" - ) { + if (crypto_1.crypto && typeof crypto_1.crypto.getRandomValues === "function") { return crypto_1.crypto.getRandomValues(new Uint8Array(bytesLength)); } throw new Error("crypto.getRandomValues must be defined"); } exports.randomBytes = randomBytes2; - }, + } }); // node_modules/@noble/hashes/hmac.js @@ -2384,20 +2316,18 @@ zoo`.split("\n"); const key = (0, utils_js_1.toBytes)(_key); this.iHash = hash2.create(); if (typeof this.iHash.update !== "function") - throw new TypeError( - "Expected instance of class which extends utils.Hash" - ); + throw new TypeError("Expected instance of class which extends utils.Hash"); this.blockLen = this.iHash.blockLen; this.outputLen = this.iHash.outputLen; const blockLen = this.blockLen; const pad = new Uint8Array(blockLen); - pad.set( - key.length > blockLen ? hash2.create().update(key).digest() : key - ); - for (let i = 0; i < pad.length; i++) pad[i] ^= 54; + pad.set(key.length > blockLen ? hash2.create().update(key).digest() : key); + for (let i = 0; i < pad.length; i++) + pad[i] ^= 54; this.iHash.update(pad); this.oHash = hash2.create(); - for (let i = 0; i < pad.length; i++) pad[i] ^= 54 ^ 92; + for (let i = 0; i < pad.length; i++) + pad[i] ^= 54 ^ 92; this.oHash.update(pad); pad.fill(0); } @@ -2422,8 +2352,7 @@ zoo`.split("\n"); } _cloneInto(to) { to || (to = Object.create(Object.getPrototypeOf(this), {})); - const { oHash, iHash, finished, destroyed, blockLen, outputLen } = - this; + const { oHash, iHash, finished, destroyed, blockLen, outputLen } = this; to = to; to.finished = finished; to.destroyed = destroyed; @@ -2439,11 +2368,10 @@ zoo`.split("\n"); this.iHash.destroy(); } }; - var hmac2 = (hash2, key, message) => - new HMAC2(hash2, key).update(message).digest(); + var hmac2 = (hash2, key, message) => new HMAC2(hash2, key).update(message).digest(); exports.hmac = hmac2; exports.hmac.create = (hash2, key) => new HMAC2(hash2, key); - }, + } }); // node_modules/@noble/hashes/pbkdf2.js @@ -2458,15 +2386,13 @@ zoo`.split("\n"); var utils_js_1 = require_utils(); function pbkdf2Init(hash2, _password, _salt, _opts) { _assert_js_1.default.hash(hash2); - const opts = (0, utils_js_1.checkOpts)( - { dkLen: 32, asyncTick: 10 }, - _opts - ); + const opts = (0, utils_js_1.checkOpts)({ dkLen: 32, asyncTick: 10 }, _opts); const { c, dkLen, asyncTick } = opts; _assert_js_1.default.number(c); _assert_js_1.default.number(dkLen); _assert_js_1.default.number(asyncTick); - if (c < 1) throw new Error("PBKDF2: iterations (c) should be >= 1"); + if (c < 1) + throw new Error("PBKDF2: iterations (c) should be >= 1"); const password = (0, utils_js_1.toBytes)(_password); const salt = (0, utils_js_1.toBytes)(_salt); const DK = new Uint8Array(dkLen); @@ -2477,17 +2403,13 @@ zoo`.split("\n"); function pbkdf2Output(PRF, PRFSalt, DK, prfW, u) { PRF.destroy(); PRFSalt.destroy(); - if (prfW) prfW.destroy(); + if (prfW) + prfW.destroy(); u.fill(0); return DK; } function pbkdf2(hash2, password, salt, opts) { - const { c, dkLen, DK, PRF, PRFSalt } = pbkdf2Init( - hash2, - password, - salt, - opts - ); + const { c, dkLen, DK, PRF, PRFSalt } = pbkdf2Init(hash2, password, salt, opts); let prfW; const arr = new Uint8Array(4); const view = (0, utils_js_1.createView)(arr); @@ -2499,19 +2421,15 @@ zoo`.split("\n"); Ti.set(u.subarray(0, Ti.length)); for (let ui = 1; ui < c; ui++) { PRF._cloneInto(prfW).update(u).digestInto(u); - for (let i = 0; i < Ti.length; i++) Ti[i] ^= u[i]; + for (let i = 0; i < Ti.length; i++) + Ti[i] ^= u[i]; } } return pbkdf2Output(PRF, PRFSalt, DK, prfW, u); } exports.pbkdf2 = pbkdf2; async function pbkdf2Async(hash2, password, salt, opts) { - const { c, dkLen, asyncTick, DK, PRF, PRFSalt } = pbkdf2Init( - hash2, - password, - salt, - opts - ); + const { c, dkLen, asyncTick, DK, PRF, PRFSalt } = pbkdf2Init(hash2, password, salt, opts); let prfW; const arr = new Uint8Array(4); const view = (0, utils_js_1.createView)(arr); @@ -2523,13 +2441,14 @@ zoo`.split("\n"); Ti.set(u.subarray(0, Ti.length)); await (0, utils_js_1.asyncLoop)(c - 1, asyncTick, (i) => { PRF._cloneInto(prfW).update(u).digestInto(u); - for (let i2 = 0; i2 < Ti.length; i2++) Ti[i2] ^= u[i2]; + for (let i2 = 0; i2 < Ti.length; i2++) + Ti[i2] ^= u[i2]; }); } return pbkdf2Output(PRF, PRFSalt, DK, prfW, u); } exports.pbkdf2Async = pbkdf2Async; - }, + } }); // node_modules/@noble/hashes/_sha2.js @@ -2546,7 +2465,7 @@ zoo`.split("\n"); return view.setBigUint64(byteOffset, value, isLE2); const _32n2 = BigInt(32); const _u32_max = BigInt(4294967295); - const wh = Number((value >> _32n2) & _u32_max); + const wh = Number(value >> _32n2 & _u32_max); const wl = Number(value & _u32_max); const h = isLE2 ? 4 : 0; const l = isLE2 ? 0 : 4; @@ -2604,7 +2523,8 @@ zoo`.split("\n"); this.process(view, 0); pos = 0; } - for (let i = pos; i < blockLen; i++) buffer[i] = 0; + for (let i = pos; i < blockLen; i++) + buffer[i] = 0; setBigUint642(view, blockLen - 8, BigInt(this.length * 8), isLE2); this.process(view, 0); const oview = (0, utils_js_1.createView)(out); @@ -2633,12 +2553,13 @@ zoo`.split("\n"); to.pos = pos; to.finished = finished; to.destroyed = destroyed; - if (length % blockLen) to.buffer.set(buffer); + if (length % blockLen) + to.buffer.set(buffer); return to; } }; exports.SHA2 = SHA22; - }, + } }); // node_modules/@noble/hashes/sha256.js @@ -2650,24 +2571,83 @@ zoo`.split("\n"); exports.sha224 = exports.sha256 = void 0; var _sha2_js_1 = require_sha2(); var utils_js_1 = require_utils(); - var Chi2 = (a, b, c) => (a & b) ^ (~a & c); - var Maj2 = (a, b, c) => (a & b) ^ (a & c) ^ (b & c); + var Chi2 = (a, b, c) => a & b ^ ~a & c; + var Maj2 = (a, b, c) => a & b ^ a & c ^ b & c; var SHA256_K2 = new Uint32Array([ - 1116352408, 1899447441, 3049323471, 3921009573, 961987163, 1508970993, - 2453635748, 2870763221, 3624381080, 310598401, 607225278, 1426881987, - 1925078388, 2162078206, 2614888103, 3248222580, 3835390401, 4022224774, - 264347078, 604807628, 770255983, 1249150122, 1555081692, 1996064986, - 2554220882, 2821834349, 2952996808, 3210313671, 3336571891, 3584528711, - 113926993, 338241895, 666307205, 773529912, 1294757372, 1396182291, - 1695183700, 1986661051, 2177026350, 2456956037, 2730485921, 2820302411, - 3259730800, 3345764771, 3516065817, 3600352804, 4094571909, 275423344, - 430227734, 506948616, 659060556, 883997877, 958139571, 1322822218, - 1537002063, 1747873779, 1955562222, 2024104815, 2227730452, 2361852424, - 2428436474, 2756734187, 3204031479, 3329325298, + 1116352408, + 1899447441, + 3049323471, + 3921009573, + 961987163, + 1508970993, + 2453635748, + 2870763221, + 3624381080, + 310598401, + 607225278, + 1426881987, + 1925078388, + 2162078206, + 2614888103, + 3248222580, + 3835390401, + 4022224774, + 264347078, + 604807628, + 770255983, + 1249150122, + 1555081692, + 1996064986, + 2554220882, + 2821834349, + 2952996808, + 3210313671, + 3336571891, + 3584528711, + 113926993, + 338241895, + 666307205, + 773529912, + 1294757372, + 1396182291, + 1695183700, + 1986661051, + 2177026350, + 2456956037, + 2730485921, + 2820302411, + 3259730800, + 3345764771, + 3516065817, + 3600352804, + 4094571909, + 275423344, + 430227734, + 506948616, + 659060556, + 883997877, + 958139571, + 1322822218, + 1537002063, + 1747873779, + 1955562222, + 2024104815, + 2227730452, + 2361852424, + 2428436474, + 2756734187, + 3204031479, + 3329325298 ]); var IV2 = new Uint32Array([ - 1779033703, 3144134277, 1013904242, 2773480762, 1359893119, 2600822924, - 528734635, 1541459225, + 1779033703, + 3144134277, + 1013904242, + 2773480762, + 1359893119, + 2600822924, + 528734635, + 1541459225 ]); var SHA256_W2 = new Uint32Array(64); var SHA2562 = class extends _sha2_js_1.SHA2 { @@ -2702,46 +2682,33 @@ zoo`.split("\n"); for (let i = 16; i < 64; i++) { const W15 = SHA256_W2[i - 15]; const W2 = SHA256_W2[i - 2]; - const s0 = - (0, utils_js_1.rotr)(W15, 7) ^ - (0, utils_js_1.rotr)(W15, 18) ^ - (W15 >>> 3); - const s1 = - (0, utils_js_1.rotr)(W2, 17) ^ - (0, utils_js_1.rotr)(W2, 19) ^ - (W2 >>> 10); - SHA256_W2[i] = (s1 + SHA256_W2[i - 7] + s0 + SHA256_W2[i - 16]) | 0; + const s0 = (0, utils_js_1.rotr)(W15, 7) ^ (0, utils_js_1.rotr)(W15, 18) ^ W15 >>> 3; + const s1 = (0, utils_js_1.rotr)(W2, 17) ^ (0, utils_js_1.rotr)(W2, 19) ^ W2 >>> 10; + SHA256_W2[i] = s1 + SHA256_W2[i - 7] + s0 + SHA256_W2[i - 16] | 0; } let { A, B, C, D, E, F, G, H } = this; for (let i = 0; i < 64; i++) { - const sigma1 = - (0, utils_js_1.rotr)(E, 6) ^ - (0, utils_js_1.rotr)(E, 11) ^ - (0, utils_js_1.rotr)(E, 25); - const T1 = - (H + sigma1 + Chi2(E, F, G) + SHA256_K2[i] + SHA256_W2[i]) | 0; - const sigma0 = - (0, utils_js_1.rotr)(A, 2) ^ - (0, utils_js_1.rotr)(A, 13) ^ - (0, utils_js_1.rotr)(A, 22); - const T2 = (sigma0 + Maj2(A, B, C)) | 0; + const sigma1 = (0, utils_js_1.rotr)(E, 6) ^ (0, utils_js_1.rotr)(E, 11) ^ (0, utils_js_1.rotr)(E, 25); + const T1 = H + sigma1 + Chi2(E, F, G) + SHA256_K2[i] + SHA256_W2[i] | 0; + const sigma0 = (0, utils_js_1.rotr)(A, 2) ^ (0, utils_js_1.rotr)(A, 13) ^ (0, utils_js_1.rotr)(A, 22); + const T2 = sigma0 + Maj2(A, B, C) | 0; H = G; G = F; F = E; - E = (D + T1) | 0; + E = D + T1 | 0; D = C; C = B; B = A; - A = (T1 + T2) | 0; + A = T1 + T2 | 0; } - A = (A + this.A) | 0; - B = (B + this.B) | 0; - C = (C + this.C) | 0; - D = (D + this.D) | 0; - E = (E + this.E) | 0; - F = (F + this.F) | 0; - G = (G + this.G) | 0; - H = (H + this.H) | 0; + A = A + this.A | 0; + B = B + this.B | 0; + C = C + this.C | 0; + D = D + this.D | 0; + E = E + this.E | 0; + F = F + this.F | 0; + G = G + this.G | 0; + H = H + this.H | 0; this.set(A, B, C, D, E, F, G, H); } roundClean() { @@ -2768,7 +2735,7 @@ zoo`.split("\n"); }; exports.sha256 = (0, utils_js_1.wrapConstructor)(() => new SHA2562()); exports.sha224 = (0, utils_js_1.wrapConstructor)(() => new SHA2242()); - }, + } }); // node_modules/@noble/hashes/_u64.js @@ -2782,14 +2749,8 @@ zoo`.split("\n"); var _32n2 = BigInt(32); function fromBig2(n, le = false) { if (le) - return { - h: Number(n & U32_MASK642), - l: Number((n >> _32n2) & U32_MASK642), - }; - return { - h: Number((n >> _32n2) & U32_MASK642) | 0, - l: Number(n & U32_MASK642) | 0, - }; + return { h: Number(n & U32_MASK642), l: Number(n >> _32n2 & U32_MASK642) }; + return { h: Number(n >> _32n2 & U32_MASK642) | 0, l: Number(n & U32_MASK642) | 0 }; } exports.fromBig = fromBig2; function split2(lst, le = false) { @@ -2802,36 +2763,31 @@ zoo`.split("\n"); return [Ah, Al]; } exports.split = split2; - var toBig2 = (h, l) => (BigInt(h >>> 0) << _32n2) | BigInt(l >>> 0); + var toBig2 = (h, l) => BigInt(h >>> 0) << _32n2 | BigInt(l >>> 0); exports.toBig = toBig2; var shrSH2 = (h, l, s) => h >>> s; - var shrSL2 = (h, l, s) => (h << (32 - s)) | (l >>> s); - var rotrSH2 = (h, l, s) => (h >>> s) | (l << (32 - s)); - var rotrSL2 = (h, l, s) => (h << (32 - s)) | (l >>> s); - var rotrBH2 = (h, l, s) => (h << (64 - s)) | (l >>> (s - 32)); - var rotrBL2 = (h, l, s) => (h >>> (s - 32)) | (l << (64 - s)); + var shrSL2 = (h, l, s) => h << 32 - s | l >>> s; + var rotrSH2 = (h, l, s) => h >>> s | l << 32 - s; + var rotrSL2 = (h, l, s) => h << 32 - s | l >>> s; + var rotrBH2 = (h, l, s) => h << 64 - s | l >>> s - 32; + var rotrBL2 = (h, l, s) => h >>> s - 32 | l << 64 - s; var rotr32H2 = (h, l) => l; var rotr32L2 = (h, l) => h; - var rotlSH2 = (h, l, s) => (h << s) | (l >>> (32 - s)); - var rotlSL2 = (h, l, s) => (l << s) | (h >>> (32 - s)); - var rotlBH2 = (h, l, s) => (l << (s - 32)) | (h >>> (64 - s)); - var rotlBL2 = (h, l, s) => (h << (s - 32)) | (l >>> (64 - s)); + var rotlSH2 = (h, l, s) => h << s | l >>> 32 - s; + var rotlSL2 = (h, l, s) => l << s | h >>> 32 - s; + var rotlBH2 = (h, l, s) => l << s - 32 | h >>> 64 - s; + var rotlBL2 = (h, l, s) => h << s - 32 | l >>> 64 - s; function add2(Ah, Al, Bh, Bl) { const l = (Al >>> 0) + (Bl >>> 0); - return { h: (Ah + Bh + ((l / 2 ** 32) | 0)) | 0, l: l | 0 }; + return { h: Ah + Bh + (l / 2 ** 32 | 0) | 0, l: l | 0 }; } exports.add = add2; var add3L2 = (Al, Bl, Cl) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0); - var add3H2 = (low, Ah, Bh, Ch) => - (Ah + Bh + Ch + ((low / 2 ** 32) | 0)) | 0; - var add4L2 = (Al, Bl, Cl, Dl) => - (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0); - var add4H2 = (low, Ah, Bh, Ch, Dh) => - (Ah + Bh + Ch + Dh + ((low / 2 ** 32) | 0)) | 0; - var add5L2 = (Al, Bl, Cl, Dl, El) => - (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0) + (El >>> 0); - var add5H2 = (low, Ah, Bh, Ch, Dh, Eh) => - (Ah + Bh + Ch + Dh + Eh + ((low / 2 ** 32) | 0)) | 0; + var add3H2 = (low, Ah, Bh, Ch) => Ah + Bh + Ch + (low / 2 ** 32 | 0) | 0; + var add4L2 = (Al, Bl, Cl, Dl) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0); + var add4H2 = (low, Ah, Bh, Ch, Dh) => Ah + Bh + Ch + Dh + (low / 2 ** 32 | 0) | 0; + var add5L2 = (Al, Bl, Cl, Dl, El) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0) + (El >>> 0); + var add5H2 = (low, Ah, Bh, Ch, Dh, Eh) => Ah + Bh + Ch + Dh + Eh + (low / 2 ** 32 | 0) | 0; var u642 = { fromBig: fromBig2, split: split2, @@ -2854,10 +2810,10 @@ zoo`.split("\n"); add4L: add4L2, add4H: add4H2, add5H: add5H2, - add5L: add5L2, + add5L: add5L2 }; exports.default = u642; - }, + } }); // node_modules/@noble/hashes/sha512.js @@ -2866,99 +2822,92 @@ zoo`.split("\n"); "use strict"; init_define_process(); Object.defineProperty(exports, "__esModule", { value: true }); - exports.sha384 = - exports.sha512_256 = - exports.sha512_224 = - exports.sha512 = - exports.SHA512 = - void 0; + exports.sha384 = exports.sha512_256 = exports.sha512_224 = exports.sha512 = exports.SHA512 = void 0; var _sha2_js_1 = require_sha2(); var _u64_js_1 = require_u64(); var utils_js_1 = require_utils(); - var [SHA512_Kh2, SHA512_Kl2] = _u64_js_1.default.split( - [ - "0x428a2f98d728ae22", - "0x7137449123ef65cd", - "0xb5c0fbcfec4d3b2f", - "0xe9b5dba58189dbbc", - "0x3956c25bf348b538", - "0x59f111f1b605d019", - "0x923f82a4af194f9b", - "0xab1c5ed5da6d8118", - "0xd807aa98a3030242", - "0x12835b0145706fbe", - "0x243185be4ee4b28c", - "0x550c7dc3d5ffb4e2", - "0x72be5d74f27b896f", - "0x80deb1fe3b1696b1", - "0x9bdc06a725c71235", - "0xc19bf174cf692694", - "0xe49b69c19ef14ad2", - "0xefbe4786384f25e3", - "0x0fc19dc68b8cd5b5", - "0x240ca1cc77ac9c65", - "0x2de92c6f592b0275", - "0x4a7484aa6ea6e483", - "0x5cb0a9dcbd41fbd4", - "0x76f988da831153b5", - "0x983e5152ee66dfab", - "0xa831c66d2db43210", - "0xb00327c898fb213f", - "0xbf597fc7beef0ee4", - "0xc6e00bf33da88fc2", - "0xd5a79147930aa725", - "0x06ca6351e003826f", - "0x142929670a0e6e70", - "0x27b70a8546d22ffc", - "0x2e1b21385c26c926", - "0x4d2c6dfc5ac42aed", - "0x53380d139d95b3df", - "0x650a73548baf63de", - "0x766a0abb3c77b2a8", - "0x81c2c92e47edaee6", - "0x92722c851482353b", - "0xa2bfe8a14cf10364", - "0xa81a664bbc423001", - "0xc24b8b70d0f89791", - "0xc76c51a30654be30", - "0xd192e819d6ef5218", - "0xd69906245565a910", - "0xf40e35855771202a", - "0x106aa07032bbd1b8", - "0x19a4c116b8d2d0c8", - "0x1e376c085141ab53", - "0x2748774cdf8eeb99", - "0x34b0bcb5e19b48a8", - "0x391c0cb3c5c95a63", - "0x4ed8aa4ae3418acb", - "0x5b9cca4f7763e373", - "0x682e6ff3d6b2b8a3", - "0x748f82ee5defb2fc", - "0x78a5636f43172f60", - "0x84c87814a1f0ab72", - "0x8cc702081a6439ec", - "0x90befffa23631e28", - "0xa4506cebde82bde9", - "0xbef9a3f7b2c67915", - "0xc67178f2e372532b", - "0xca273eceea26619c", - "0xd186b8c721c0c207", - "0xeada7dd6cde0eb1e", - "0xf57d4f7fee6ed178", - "0x06f067aa72176fba", - "0x0a637dc5a2c898a6", - "0x113f9804bef90dae", - "0x1b710b35131c471b", - "0x28db77f523047d84", - "0x32caab7b40c72493", - "0x3c9ebe0a15c9bebc", - "0x431d67c49c100d4c", - "0x4cc5d4becb3e42b6", - "0x597f299cfc657e2a", - "0x5fcb6fab3ad6faec", - "0x6c44198c4a475817", - ].map((n) => BigInt(n)) - ); + var [SHA512_Kh2, SHA512_Kl2] = _u64_js_1.default.split([ + "0x428a2f98d728ae22", + "0x7137449123ef65cd", + "0xb5c0fbcfec4d3b2f", + "0xe9b5dba58189dbbc", + "0x3956c25bf348b538", + "0x59f111f1b605d019", + "0x923f82a4af194f9b", + "0xab1c5ed5da6d8118", + "0xd807aa98a3030242", + "0x12835b0145706fbe", + "0x243185be4ee4b28c", + "0x550c7dc3d5ffb4e2", + "0x72be5d74f27b896f", + "0x80deb1fe3b1696b1", + "0x9bdc06a725c71235", + "0xc19bf174cf692694", + "0xe49b69c19ef14ad2", + "0xefbe4786384f25e3", + "0x0fc19dc68b8cd5b5", + "0x240ca1cc77ac9c65", + "0x2de92c6f592b0275", + "0x4a7484aa6ea6e483", + "0x5cb0a9dcbd41fbd4", + "0x76f988da831153b5", + "0x983e5152ee66dfab", + "0xa831c66d2db43210", + "0xb00327c898fb213f", + "0xbf597fc7beef0ee4", + "0xc6e00bf33da88fc2", + "0xd5a79147930aa725", + "0x06ca6351e003826f", + "0x142929670a0e6e70", + "0x27b70a8546d22ffc", + "0x2e1b21385c26c926", + "0x4d2c6dfc5ac42aed", + "0x53380d139d95b3df", + "0x650a73548baf63de", + "0x766a0abb3c77b2a8", + "0x81c2c92e47edaee6", + "0x92722c851482353b", + "0xa2bfe8a14cf10364", + "0xa81a664bbc423001", + "0xc24b8b70d0f89791", + "0xc76c51a30654be30", + "0xd192e819d6ef5218", + "0xd69906245565a910", + "0xf40e35855771202a", + "0x106aa07032bbd1b8", + "0x19a4c116b8d2d0c8", + "0x1e376c085141ab53", + "0x2748774cdf8eeb99", + "0x34b0bcb5e19b48a8", + "0x391c0cb3c5c95a63", + "0x4ed8aa4ae3418acb", + "0x5b9cca4f7763e373", + "0x682e6ff3d6b2b8a3", + "0x748f82ee5defb2fc", + "0x78a5636f43172f60", + "0x84c87814a1f0ab72", + "0x8cc702081a6439ec", + "0x90befffa23631e28", + "0xa4506cebde82bde9", + "0xbef9a3f7b2c67915", + "0xc67178f2e372532b", + "0xca273eceea26619c", + "0xd186b8c721c0c207", + "0xeada7dd6cde0eb1e", + "0xf57d4f7fee6ed178", + "0x06f067aa72176fba", + "0x0a637dc5a2c898a6", + "0x113f9804bef90dae", + "0x1b710b35131c471b", + "0x28db77f523047d84", + "0x32caab7b40c72493", + "0x3c9ebe0a15c9bebc", + "0x431d67c49c100d4c", + "0x4cc5d4becb3e42b6", + "0x597f299cfc657e2a", + "0x5fcb6fab3ad6faec", + "0x6c44198c4a475817" + ].map((n) => BigInt(n))); var SHA512_W_H2 = new Uint32Array(80); var SHA512_W_L2 = new Uint32Array(80); var SHA5122 = class extends _sha2_js_1.SHA2 { @@ -2982,42 +2931,8 @@ zoo`.split("\n"); this.Hl = 327033209 | 0; } get() { - const { - Ah, - Al, - Bh, - Bl, - Ch, - Cl, - Dh, - Dl, - Eh, - El, - Fh, - Fl, - Gh, - Gl, - Hh, - Hl, - } = this; - return [ - Ah, - Al, - Bh, - Bl, - Ch, - Cl, - Dh, - Dl, - Eh, - El, - Fh, - Fl, - Gh, - Gl, - Hh, - Hl, - ]; + const { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this; + return [Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl]; } set(Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl) { this.Ah = Ah | 0; @@ -3040,112 +2955,42 @@ zoo`.split("\n"); process(view, offset) { for (let i = 0; i < 16; i++, offset += 4) { SHA512_W_H2[i] = view.getUint32(offset); - SHA512_W_L2[i] = view.getUint32((offset += 4)); + SHA512_W_L2[i] = view.getUint32(offset += 4); } for (let i = 16; i < 80; i++) { const W15h = SHA512_W_H2[i - 15] | 0; const W15l = SHA512_W_L2[i - 15] | 0; - const s0h = - _u64_js_1.default.rotrSH(W15h, W15l, 1) ^ - _u64_js_1.default.rotrSH(W15h, W15l, 8) ^ - _u64_js_1.default.shrSH(W15h, W15l, 7); - const s0l = - _u64_js_1.default.rotrSL(W15h, W15l, 1) ^ - _u64_js_1.default.rotrSL(W15h, W15l, 8) ^ - _u64_js_1.default.shrSL(W15h, W15l, 7); + const s0h = _u64_js_1.default.rotrSH(W15h, W15l, 1) ^ _u64_js_1.default.rotrSH(W15h, W15l, 8) ^ _u64_js_1.default.shrSH(W15h, W15l, 7); + const s0l = _u64_js_1.default.rotrSL(W15h, W15l, 1) ^ _u64_js_1.default.rotrSL(W15h, W15l, 8) ^ _u64_js_1.default.shrSL(W15h, W15l, 7); const W2h = SHA512_W_H2[i - 2] | 0; const W2l = SHA512_W_L2[i - 2] | 0; - const s1h = - _u64_js_1.default.rotrSH(W2h, W2l, 19) ^ - _u64_js_1.default.rotrBH(W2h, W2l, 61) ^ - _u64_js_1.default.shrSH(W2h, W2l, 6); - const s1l = - _u64_js_1.default.rotrSL(W2h, W2l, 19) ^ - _u64_js_1.default.rotrBL(W2h, W2l, 61) ^ - _u64_js_1.default.shrSL(W2h, W2l, 6); - const SUMl = _u64_js_1.default.add4L( - s0l, - s1l, - SHA512_W_L2[i - 7], - SHA512_W_L2[i - 16] - ); - const SUMh = _u64_js_1.default.add4H( - SUMl, - s0h, - s1h, - SHA512_W_H2[i - 7], - SHA512_W_H2[i - 16] - ); + const s1h = _u64_js_1.default.rotrSH(W2h, W2l, 19) ^ _u64_js_1.default.rotrBH(W2h, W2l, 61) ^ _u64_js_1.default.shrSH(W2h, W2l, 6); + const s1l = _u64_js_1.default.rotrSL(W2h, W2l, 19) ^ _u64_js_1.default.rotrBL(W2h, W2l, 61) ^ _u64_js_1.default.shrSL(W2h, W2l, 6); + const SUMl = _u64_js_1.default.add4L(s0l, s1l, SHA512_W_L2[i - 7], SHA512_W_L2[i - 16]); + const SUMh = _u64_js_1.default.add4H(SUMl, s0h, s1h, SHA512_W_H2[i - 7], SHA512_W_H2[i - 16]); SHA512_W_H2[i] = SUMh | 0; SHA512_W_L2[i] = SUMl | 0; } - let { - Ah, - Al, - Bh, - Bl, - Ch, - Cl, - Dh, - Dl, - Eh, - El, - Fh, - Fl, - Gh, - Gl, - Hh, - Hl, - } = this; + let { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this; for (let i = 0; i < 80; i++) { - const sigma1h = - _u64_js_1.default.rotrSH(Eh, El, 14) ^ - _u64_js_1.default.rotrSH(Eh, El, 18) ^ - _u64_js_1.default.rotrBH(Eh, El, 41); - const sigma1l = - _u64_js_1.default.rotrSL(Eh, El, 14) ^ - _u64_js_1.default.rotrSL(Eh, El, 18) ^ - _u64_js_1.default.rotrBL(Eh, El, 41); - const CHIh = (Eh & Fh) ^ (~Eh & Gh); - const CHIl = (El & Fl) ^ (~El & Gl); - const T1ll = _u64_js_1.default.add5L( - Hl, - sigma1l, - CHIl, - SHA512_Kl2[i], - SHA512_W_L2[i] - ); - const T1h = _u64_js_1.default.add5H( - T1ll, - Hh, - sigma1h, - CHIh, - SHA512_Kh2[i], - SHA512_W_H2[i] - ); + const sigma1h = _u64_js_1.default.rotrSH(Eh, El, 14) ^ _u64_js_1.default.rotrSH(Eh, El, 18) ^ _u64_js_1.default.rotrBH(Eh, El, 41); + const sigma1l = _u64_js_1.default.rotrSL(Eh, El, 14) ^ _u64_js_1.default.rotrSL(Eh, El, 18) ^ _u64_js_1.default.rotrBL(Eh, El, 41); + const CHIh = Eh & Fh ^ ~Eh & Gh; + const CHIl = El & Fl ^ ~El & Gl; + const T1ll = _u64_js_1.default.add5L(Hl, sigma1l, CHIl, SHA512_Kl2[i], SHA512_W_L2[i]); + const T1h = _u64_js_1.default.add5H(T1ll, Hh, sigma1h, CHIh, SHA512_Kh2[i], SHA512_W_H2[i]); const T1l = T1ll | 0; - const sigma0h = - _u64_js_1.default.rotrSH(Ah, Al, 28) ^ - _u64_js_1.default.rotrBH(Ah, Al, 34) ^ - _u64_js_1.default.rotrBH(Ah, Al, 39); - const sigma0l = - _u64_js_1.default.rotrSL(Ah, Al, 28) ^ - _u64_js_1.default.rotrBL(Ah, Al, 34) ^ - _u64_js_1.default.rotrBL(Ah, Al, 39); - const MAJh = (Ah & Bh) ^ (Ah & Ch) ^ (Bh & Ch); - const MAJl = (Al & Bl) ^ (Al & Cl) ^ (Bl & Cl); + const sigma0h = _u64_js_1.default.rotrSH(Ah, Al, 28) ^ _u64_js_1.default.rotrBH(Ah, Al, 34) ^ _u64_js_1.default.rotrBH(Ah, Al, 39); + const sigma0l = _u64_js_1.default.rotrSL(Ah, Al, 28) ^ _u64_js_1.default.rotrBL(Ah, Al, 34) ^ _u64_js_1.default.rotrBL(Ah, Al, 39); + const MAJh = Ah & Bh ^ Ah & Ch ^ Bh & Ch; + const MAJl = Al & Bl ^ Al & Cl ^ Bl & Cl; Hh = Gh | 0; Hl = Gl | 0; Gh = Fh | 0; Gl = Fl | 0; Fh = Eh | 0; Fl = El | 0; - ({ h: Eh, l: El } = _u64_js_1.default.add( - Dh | 0, - Dl | 0, - T1h | 0, - T1l | 0 - )); + ({ h: Eh, l: El } = _u64_js_1.default.add(Dh | 0, Dl | 0, T1h | 0, T1l | 0)); Dh = Ch | 0; Dl = Cl | 0; Ch = Bh | 0; @@ -3156,72 +3001,15 @@ zoo`.split("\n"); Ah = _u64_js_1.default.add3H(All, T1h, sigma0h, MAJh); Al = All | 0; } - ({ h: Ah, l: Al } = _u64_js_1.default.add( - this.Ah | 0, - this.Al | 0, - Ah | 0, - Al | 0 - )); - ({ h: Bh, l: Bl } = _u64_js_1.default.add( - this.Bh | 0, - this.Bl | 0, - Bh | 0, - Bl | 0 - )); - ({ h: Ch, l: Cl } = _u64_js_1.default.add( - this.Ch | 0, - this.Cl | 0, - Ch | 0, - Cl | 0 - )); - ({ h: Dh, l: Dl } = _u64_js_1.default.add( - this.Dh | 0, - this.Dl | 0, - Dh | 0, - Dl | 0 - )); - ({ h: Eh, l: El } = _u64_js_1.default.add( - this.Eh | 0, - this.El | 0, - Eh | 0, - El | 0 - )); - ({ h: Fh, l: Fl } = _u64_js_1.default.add( - this.Fh | 0, - this.Fl | 0, - Fh | 0, - Fl | 0 - )); - ({ h: Gh, l: Gl } = _u64_js_1.default.add( - this.Gh | 0, - this.Gl | 0, - Gh | 0, - Gl | 0 - )); - ({ h: Hh, l: Hl } = _u64_js_1.default.add( - this.Hh | 0, - this.Hl | 0, - Hh | 0, - Hl | 0 - )); - this.set( - Ah, - Al, - Bh, - Bl, - Ch, - Cl, - Dh, - Dl, - Eh, - El, - Fh, - Fl, - Gh, - Gl, - Hh, - Hl - ); + ({ h: Ah, l: Al } = _u64_js_1.default.add(this.Ah | 0, this.Al | 0, Ah | 0, Al | 0)); + ({ h: Bh, l: Bl } = _u64_js_1.default.add(this.Bh | 0, this.Bl | 0, Bh | 0, Bl | 0)); + ({ h: Ch, l: Cl } = _u64_js_1.default.add(this.Ch | 0, this.Cl | 0, Ch | 0, Cl | 0)); + ({ h: Dh, l: Dl } = _u64_js_1.default.add(this.Dh | 0, this.Dl | 0, Dh | 0, Dl | 0)); + ({ h: Eh, l: El } = _u64_js_1.default.add(this.Eh | 0, this.El | 0, Eh | 0, El | 0)); + ({ h: Fh, l: Fl } = _u64_js_1.default.add(this.Fh | 0, this.Fl | 0, Fh | 0, Fl | 0)); + ({ h: Gh, l: Gl } = _u64_js_1.default.add(this.Gh | 0, this.Gl | 0, Gh | 0, Gl | 0)); + ({ h: Hh, l: Hl } = _u64_js_1.default.add(this.Hh | 0, this.Hl | 0, Hh | 0, Hl | 0)); + this.set(Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl); } roundClean() { SHA512_W_H2.fill(0); @@ -3300,14 +3088,10 @@ zoo`.split("\n"); } }; exports.sha512 = (0, utils_js_1.wrapConstructor)(() => new SHA5122()); - exports.sha512_224 = (0, utils_js_1.wrapConstructor)( - () => new SHA512_2242() - ); - exports.sha512_256 = (0, utils_js_1.wrapConstructor)( - () => new SHA512_2562() - ); + exports.sha512_224 = (0, utils_js_1.wrapConstructor)(() => new SHA512_2242()); + exports.sha512_256 = (0, utils_js_1.wrapConstructor)(() => new SHA512_2562()); exports.sha384 = (0, utils_js_1.wrapConstructor)(() => new SHA3842()); - }, + } }); // node_modules/@scure/base/lib/index.js @@ -3316,83 +3100,42 @@ zoo`.split("\n"); "use strict"; init_define_process(); Object.defineProperty(exports, "__esModule", { value: true }); - exports.bytes = - exports.stringToBytes = - exports.str = - exports.bytesToString = - exports.hex = - exports.utf8 = - exports.bech32m = - exports.bech32 = - exports.base58check = - exports.base58xmr = - exports.base58xrp = - exports.base58flickr = - exports.base58 = - exports.base64url = - exports.base64 = - exports.base32crockford = - exports.base32hex = - exports.base32 = - exports.base16 = - exports.utils = - exports.assertNumber = - void 0; + exports.bytes = exports.stringToBytes = exports.str = exports.bytesToString = exports.hex = exports.utf8 = exports.bech32m = exports.bech32 = exports.base58check = exports.base58xmr = exports.base58xrp = exports.base58flickr = exports.base58 = exports.base64url = exports.base64 = exports.base32crockford = exports.base32hex = exports.base32 = exports.base16 = exports.utils = exports.assertNumber = void 0; function assertNumber2(n) { - if (!Number.isSafeInteger(n)) throw new Error(`Wrong integer: ${n}`); + if (!Number.isSafeInteger(n)) + throw new Error(`Wrong integer: ${n}`); } exports.assertNumber = assertNumber2; function chain2(...args) { const wrap = (a, b) => (c) => a(b(c)); - const encode = Array.from(args) - .reverse() - .reduce((acc, i) => (acc ? wrap(acc, i.encode) : i.encode), void 0); - const decode2 = args.reduce( - (acc, i) => (acc ? wrap(acc, i.decode) : i.decode), - void 0 - ); + const encode = Array.from(args).reverse().reduce((acc, i) => acc ? wrap(acc, i.encode) : i.encode, void 0); + const decode2 = args.reduce((acc, i) => acc ? wrap(acc, i.decode) : i.decode, void 0); return { encode, decode: decode2 }; } function alphabet2(alphabet3) { return { encode: (digits) => { - if ( - !Array.isArray(digits) || - (digits.length && typeof digits[0] !== "number") - ) - throw new Error( - "alphabet.encode input should be an array of numbers" - ); + if (!Array.isArray(digits) || digits.length && typeof digits[0] !== "number") + throw new Error("alphabet.encode input should be an array of numbers"); return digits.map((i) => { assertNumber2(i); if (i < 0 || i >= alphabet3.length) - throw new Error( - `Digit index outside alphabet: ${i} (alphabet: ${alphabet3.length})` - ); + throw new Error(`Digit index outside alphabet: ${i} (alphabet: ${alphabet3.length})`); return alphabet3[i]; }); }, decode: (input) => { - if ( - !Array.isArray(input) || - (input.length && typeof input[0] !== "string") - ) - throw new Error( - "alphabet.decode input should be array of strings" - ); + if (!Array.isArray(input) || input.length && typeof input[0] !== "string") + throw new Error("alphabet.decode input should be array of strings"); return input.map((letter) => { if (typeof letter !== "string") - throw new Error( - `alphabet.decode: not string element=${letter}` - ); + throw new Error(`alphabet.decode: not string element=${letter}`); const index = alphabet3.indexOf(letter); if (index === -1) - throw new Error( - `Unknown letter: "${letter}". Allowed: ${alphabet3}` - ); + throw new Error(`Unknown letter: "${letter}". Allowed: ${alphabet3}`); return index; }); - }, + } }; } function join2(separator = "") { @@ -3400,10 +3143,7 @@ zoo`.split("\n"); throw new Error("join separator should be string"); return { encode: (from) => { - if ( - !Array.isArray(from) || - (from.length && typeof from[0] !== "string") - ) + if (!Array.isArray(from) || from.length && typeof from[0] !== "string") throw new Error("join.encode input should be array of strings"); for (let i of from) if (typeof i !== "string") @@ -3414,7 +3154,7 @@ zoo`.split("\n"); if (typeof to !== "string") throw new Error("join.decode input should be string"); return to.split(separator); - }, + } }; } function padding2(bits, chr = "=") { @@ -3423,41 +3163,30 @@ zoo`.split("\n"); throw new Error("padding chr should be string"); return { encode(data) { - if ( - !Array.isArray(data) || - (data.length && typeof data[0] !== "string") - ) - throw new Error( - "padding.encode input should be array of strings" - ); + if (!Array.isArray(data) || data.length && typeof data[0] !== "string") + throw new Error("padding.encode input should be array of strings"); for (let i of data) if (typeof i !== "string") throw new Error(`padding.encode: non-string input=${i}`); - while ((data.length * bits) % 8) data.push(chr); + while (data.length * bits % 8) + data.push(chr); return data; }, decode(input) { - if ( - !Array.isArray(input) || - (input.length && typeof input[0] !== "string") - ) - throw new Error( - "padding.encode input should be array of strings" - ); + if (!Array.isArray(input) || input.length && typeof input[0] !== "string") + throw new Error("padding.encode input should be array of strings"); for (let i of input) if (typeof i !== "string") throw new Error(`padding.decode: non-string input=${i}`); let end = input.length; - if ((end * bits) % 8) - throw new Error( - "Invalid padding: string should have whole number of bytes" - ); + if (end * bits % 8) + throw new Error("Invalid padding: string should have whole number of bytes"); for (; end > 0 && input[end - 1] === chr; end--) { - if (!(((end - 1) * bits) % 8)) + if (!((end - 1) * bits % 8)) throw new Error("Invalid padding: string has too much padding"); } return input.slice(0, end); - }, + } }; } function normalize2(fn) { @@ -3467,22 +3196,20 @@ zoo`.split("\n"); } function convertRadix3(data, from, to) { if (from < 2) - throw new Error( - `convertRadix: wrong from=${from}, base cannot be less than 2` - ); + throw new Error(`convertRadix: wrong from=${from}, base cannot be less than 2`); if (to < 2) - throw new Error( - `convertRadix: wrong to=${to}, base cannot be less than 2` - ); + throw new Error(`convertRadix: wrong to=${to}, base cannot be less than 2`); if (!Array.isArray(data)) throw new Error("convertRadix: data should be array"); - if (!data.length) return []; + if (!data.length) + return []; let pos = 0; const res = []; const digits = Array.from(data); digits.forEach((d) => { assertNumber2(d); - if (d < 0 || d >= from) throw new Error(`Wrong integer: ${d}`); + if (d < 0 || d >= from) + throw new Error(`Wrong integer: ${d}`); }); while (true) { let carry = 0; @@ -3490,31 +3217,29 @@ zoo`.split("\n"); for (let i = pos; i < digits.length; i++) { const digit = digits[i]; const digitBase = from * carry + digit; - if ( - !Number.isSafeInteger(digitBase) || - (from * carry) / from !== carry || - digitBase - digit !== from * carry - ) { + if (!Number.isSafeInteger(digitBase) || from * carry / from !== carry || digitBase - digit !== from * carry) { throw new Error("convertRadix: carry overflow"); } carry = digitBase % to; digits[i] = Math.floor(digitBase / to); - if ( - !Number.isSafeInteger(digits[i]) || - digits[i] * to + carry !== digitBase - ) + if (!Number.isSafeInteger(digits[i]) || digits[i] * to + carry !== digitBase) throw new Error("convertRadix: carry overflow"); - if (!done) continue; - else if (!digits[i]) pos = i; - else done = false; + if (!done) + continue; + else if (!digits[i]) + pos = i; + else + done = false; } res.push(carry); - if (done) break; + if (done) + break; } - for (let i = 0; i < data.length - 1 && data[i] === 0; i++) res.push(0); + for (let i = 0; i < data.length - 1 && data[i] === 0; i++) + res.push(0); return res.reverse(); } - var gcd2 = (a, b) => (!b ? a : gcd2(b, a % b)); + var gcd2 = (a, b) => !b ? a : gcd2(b, a % b); var radix2carry2 = (from, to) => from + (to - gcd2(from, to)); function convertRadix22(data, from, to, padding3) { if (!Array.isArray(data)) @@ -3524,12 +3249,7 @@ zoo`.split("\n"); if (to <= 0 || to > 32) throw new Error(`convertRadix2: wrong to=${to}`); if (radix2carry2(from, to) > 32) { - throw new Error( - `convertRadix2: carry overflow from=${from} to=${to} carryBits=${radix2carry2( - from, - to - )}` - ); + throw new Error(`convertRadix2: carry overflow from=${from} to=${to} carryBits=${radix2carry2(from, to)}`); } let carry = 0; let pos = 0; @@ -3538,23 +3258,22 @@ zoo`.split("\n"); for (const n of data) { assertNumber2(n); if (n >= 2 ** from) - throw new Error( - `convertRadix2: invalid data word=${n} from=${from}` - ); - carry = (carry << from) | n; + throw new Error(`convertRadix2: invalid data word=${n} from=${from}`); + carry = carry << from | n; if (pos + from > 32) - throw new Error( - `convertRadix2: carry overflow pos=${pos} from=${from}` - ); + throw new Error(`convertRadix2: carry overflow pos=${pos} from=${from}`); pos += from; for (; pos >= to; pos -= to) - res.push(((carry >> (pos - to)) & mask) >>> 0); + res.push((carry >> pos - to & mask) >>> 0); carry &= 2 ** pos - 1; } - carry = (carry << (to - pos)) & mask; - if (!padding3 && pos >= from) throw new Error("Excess padding"); - if (!padding3 && carry) throw new Error(`Non-zero padding: ${carry}`); - if (padding3 && pos > 0) res.push(carry >>> 0); + carry = carry << to - pos & mask; + if (!padding3 && pos >= from) + throw new Error("Excess padding"); + if (!padding3 && carry) + throw new Error(`Non-zero padding: ${carry}`); + if (padding3 && pos > 0) + res.push(carry >>> 0); return res; } function radix3(num) { @@ -3566,13 +3285,10 @@ zoo`.split("\n"); return convertRadix3(Array.from(bytes2), 2 ** 8, num); }, decode: (digits) => { - if ( - !Array.isArray(digits) || - (digits.length && typeof digits[0] !== "number") - ) + if (!Array.isArray(digits) || digits.length && typeof digits[0] !== "number") throw new Error("radix.decode input should be array of strings"); return Uint8Array.from(convertRadix3(digits, num, 2 ** 8)); - }, + } }; } function radix22(bits, revPadding = false) { @@ -3588,22 +3304,20 @@ zoo`.split("\n"); return convertRadix22(Array.from(bytes2), 8, bits, !revPadding); }, decode: (digits) => { - if ( - !Array.isArray(digits) || - (digits.length && typeof digits[0] !== "number") - ) + if (!Array.isArray(digits) || digits.length && typeof digits[0] !== "number") throw new Error("radix2.decode input should be array of strings"); return Uint8Array.from(convertRadix22(digits, bits, 8, revPadding)); - }, + } }; } function unsafeWrapper2(fn) { if (typeof fn !== "function") throw new Error("unsafeWrapper fn should be function"); - return function (...args) { + return function(...args) { try { return fn.apply(null, args); - } catch (e) {} + } catch (e) { + } }; } function checksum2(len, fn) { @@ -3630,78 +3344,27 @@ zoo`.split("\n"); if (newChecksum[i] !== oldChecksum[i]) throw new Error("Invalid checksum"); return payload; - }, + } }; } - exports.utils = { - alphabet: alphabet2, - chain: chain2, - checksum: checksum2, - radix: radix3, - radix2: radix22, - join: join2, - padding: padding2, - }; - exports.base16 = chain2( - radix22(4), - alphabet2("0123456789ABCDEF"), - join2("") - ); - exports.base32 = chain2( - radix22(5), - alphabet2("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"), - padding2(5), - join2("") - ); - exports.base32hex = chain2( - radix22(5), - alphabet2("0123456789ABCDEFGHIJKLMNOPQRSTUV"), - padding2(5), - join2("") - ); - exports.base32crockford = chain2( - radix22(5), - alphabet2("0123456789ABCDEFGHJKMNPQRSTVWXYZ"), - join2(""), - normalize2((s) => - s.toUpperCase().replace(/O/g, "0").replace(/[IL]/g, "1") - ) - ); - exports.base64 = chain2( - radix22(6), - alphabet2( - "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" - ), - padding2(6), - join2("") - ); - exports.base64url = chain2( - radix22(6), - alphabet2( - "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_" - ), - padding2(6), - join2("") - ); + exports.utils = { alphabet: alphabet2, chain: chain2, checksum: checksum2, radix: radix3, radix2: radix22, join: join2, padding: padding2 }; + exports.base16 = chain2(radix22(4), alphabet2("0123456789ABCDEF"), join2("")); + exports.base32 = chain2(radix22(5), alphabet2("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"), padding2(5), join2("")); + exports.base32hex = chain2(radix22(5), alphabet2("0123456789ABCDEFGHIJKLMNOPQRSTUV"), padding2(5), join2("")); + exports.base32crockford = chain2(radix22(5), alphabet2("0123456789ABCDEFGHJKMNPQRSTVWXYZ"), join2(""), normalize2((s) => s.toUpperCase().replace(/O/g, "0").replace(/[IL]/g, "1"))); + exports.base64 = chain2(radix22(6), alphabet2("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"), padding2(6), join2("")); + exports.base64url = chain2(radix22(6), alphabet2("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"), padding2(6), join2("")); var genBase582 = (abc) => chain2(radix3(58), alphabet2(abc), join2("")); - exports.base58 = genBase582( - "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz" - ); - exports.base58flickr = genBase582( - "123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ" - ); - exports.base58xrp = genBase582( - "rpshnaf39wBUDNEGHJKLM4PQRST7VWXYZ2bcdeCg65jkm8oFqi1tuvAxyz" - ); + exports.base58 = genBase582("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"); + exports.base58flickr = genBase582("123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"); + exports.base58xrp = genBase582("rpshnaf39wBUDNEGHJKLM4PQRST7VWXYZ2bcdeCg65jkm8oFqi1tuvAxyz"); var XMR_BLOCK_LEN2 = [0, 2, 3, 5, 6, 7, 9, 10, 11]; exports.base58xmr = { encode(data) { let res = ""; for (let i = 0; i < data.length; i += 8) { const block = data.subarray(i, i + 8); - res += exports.base58 - .encode(block) - .padStart(XMR_BLOCK_LEN2[block.length], "1"); + res += exports.base58.encode(block).padStart(XMR_BLOCK_LEN2[block.length], "1"); } return res; }, @@ -3712,31 +3375,24 @@ zoo`.split("\n"); const blockLen = XMR_BLOCK_LEN2.indexOf(slice.length); const block = exports.base58.decode(slice); for (let j = 0; j < block.length - blockLen; j++) { - if (block[j] !== 0) throw new Error("base58xmr: wrong padding"); + if (block[j] !== 0) + throw new Error("base58xmr: wrong padding"); } res = res.concat(Array.from(block.slice(block.length - blockLen))); } return Uint8Array.from(res); - }, + } }; - var base58check3 = (sha2562) => - chain2( - checksum2(4, (data) => sha2562(sha2562(data))), - exports.base58 - ); + var base58check3 = (sha2562) => chain2(checksum2(4, (data) => sha2562(sha2562(data))), exports.base58); exports.base58check = base58check3; - var BECH_ALPHABET2 = chain2( - alphabet2("qpzry9x8gf2tvdw0s3jn54khce6mua7l"), - join2("") - ); - var POLYMOD_GENERATORS2 = [ - 996825010, 642813549, 513874426, 1027748829, 705979059, - ]; + var BECH_ALPHABET2 = chain2(alphabet2("qpzry9x8gf2tvdw0s3jn54khce6mua7l"), join2("")); + var POLYMOD_GENERATORS2 = [996825010, 642813549, 513874426, 1027748829, 705979059]; function bech32Polymod2(pre) { const b = pre >> 25; let chk = (pre & 33554431) << 5; for (let i = 0; i < POLYMOD_GENERATORS2.length; i++) { - if (((b >> i) & 1) === 1) chk ^= POLYMOD_GENERATORS2[i]; + if ((b >> i & 1) === 1) + chk ^= POLYMOD_GENERATORS2[i]; } return chk; } @@ -3745,18 +3401,19 @@ zoo`.split("\n"); let chk = 1; for (let i = 0; i < len; i++) { const c = prefix.charCodeAt(i); - if (c < 33 || c > 126) throw new Error(`Invalid prefix (${prefix})`); - chk = bech32Polymod2(chk) ^ (c >> 5); + if (c < 33 || c > 126) + throw new Error(`Invalid prefix (${prefix})`); + chk = bech32Polymod2(chk) ^ c >> 5; } chk = bech32Polymod2(chk); for (let i = 0; i < len; i++) - chk = bech32Polymod2(chk) ^ (prefix.charCodeAt(i) & 31); - for (let v of words) chk = bech32Polymod2(chk) ^ v; - for (let i = 0; i < 6; i++) chk = bech32Polymod2(chk); + chk = bech32Polymod2(chk) ^ prefix.charCodeAt(i) & 31; + for (let v of words) + chk = bech32Polymod2(chk) ^ v; + for (let i = 0; i < 6; i++) + chk = bech32Polymod2(chk); chk ^= encodingConst; - return BECH_ALPHABET2.encode( - convertRadix22([chk % 2 ** 30], 30, 5, false) - ); + return BECH_ALPHABET2.encode(convertRadix22([chk % 2 ** 30], 30, 5, false)); } function genBech322(encoding) { const ENCODING_CONST = encoding === "bech32" ? 1 : 734539939; @@ -3766,46 +3423,27 @@ zoo`.split("\n"); const fromWordsUnsafe = unsafeWrapper2(fromWords); function encode(prefix, words, limit = 90) { if (typeof prefix !== "string") - throw new Error( - `bech32.encode prefix should be string, not ${typeof prefix}` - ); - if ( - !Array.isArray(words) || - (words.length && typeof words[0] !== "number") - ) - throw new Error( - `bech32.encode words should be array of numbers, not ${typeof words}` - ); + throw new Error(`bech32.encode prefix should be string, not ${typeof prefix}`); + if (!Array.isArray(words) || words.length && typeof words[0] !== "number") + throw new Error(`bech32.encode words should be array of numbers, not ${typeof words}`); const actualLength = prefix.length + 7 + words.length; if (limit !== false && actualLength > limit) - throw new TypeError( - `Length ${actualLength} exceeds limit ${limit}` - ); + throw new TypeError(`Length ${actualLength} exceeds limit ${limit}`); prefix = prefix.toLowerCase(); - return `${prefix}1${BECH_ALPHABET2.encode(words)}${bechChecksum2( - prefix, - words, - ENCODING_CONST - )}`; + return `${prefix}1${BECH_ALPHABET2.encode(words)}${bechChecksum2(prefix, words, ENCODING_CONST)}`; } function decode2(str, limit = 90) { if (typeof str !== "string") - throw new Error( - `bech32.decode input should be string, not ${typeof str}` - ); - if (str.length < 8 || (limit !== false && str.length > limit)) - throw new TypeError( - `Wrong string length: ${str.length} (${str}). Expected (8..${limit})` - ); + throw new Error(`bech32.decode input should be string, not ${typeof str}`); + if (str.length < 8 || limit !== false && str.length > limit) + throw new TypeError(`Wrong string length: ${str.length} (${str}). Expected (8..${limit})`); const lowered = str.toLowerCase(); if (str !== lowered && str !== str.toUpperCase()) throw new Error(`String must be lowercase or uppercase`); str = lowered; const sepIndex = str.lastIndexOf("1"); if (sepIndex === 0 || sepIndex === -1) - throw new Error( - `Letter "1" must be present between prefix and data only` - ); + throw new Error(`Letter "1" must be present between prefix and data only`); const prefix = str.slice(0, sepIndex); const _words2 = str.slice(sepIndex + 1); if (_words2.length < 6) @@ -3821,36 +3459,19 @@ zoo`.split("\n"); const { prefix, words } = decode2(str, false); return { prefix, words, bytes: fromWords(words) }; } - return { - encode, - decode: decode2, - decodeToBytes, - decodeUnsafe, - fromWords, - fromWordsUnsafe, - toWords, - }; + return { encode, decode: decode2, decodeToBytes, decodeUnsafe, fromWords, fromWordsUnsafe, toWords }; } exports.bech32 = genBech322("bech32"); exports.bech32m = genBech322("bech32m"); exports.utf8 = { encode: (data) => new TextDecoder().decode(data), - decode: (str) => new TextEncoder().encode(str), + decode: (str) => new TextEncoder().encode(str) }; - exports.hex = chain2( - radix22(4), - alphabet2("0123456789abcdef"), - join2(""), - normalize2((s) => { - if (typeof s !== "string" || s.length % 2) - throw new TypeError( - `hex.decode: expected string, got ${typeof s} with length ${ - s.length - }` - ); - return s.toLowerCase(); - }) - ); + exports.hex = chain2(radix22(4), alphabet2("0123456789abcdef"), join2(""), normalize2((s) => { + if (typeof s !== "string" || s.length % 2) + throw new TypeError(`hex.decode: expected string, got ${typeof s} with length ${s.length}`); + return s.toLowerCase(); + })); var CODERS2 = { utf8: exports.utf8, hex: exports.hex, @@ -3859,11 +3480,9 @@ zoo`.split("\n"); base64: exports.base64, base64url: exports.base64url, base58: exports.base58, - base58xmr: exports.base58xmr, + base58xmr: exports.base58xmr }; - var coderTypeError2 = `Invalid encoding type. Available types: ${Object.keys( - CODERS2 - ).join(", ")}`; + var coderTypeError2 = `Invalid encoding type. Available types: ${Object.keys(CODERS2).join(", ")}`; var bytesToString = (type, bytes2) => { if (typeof type !== "string" || !CODERS2.hasOwnProperty(type)) throw new TypeError(coderTypeError2); @@ -3874,14 +3493,15 @@ zoo`.split("\n"); exports.bytesToString = bytesToString; exports.str = exports.bytesToString; var stringToBytes = (type, str) => { - if (!CODERS2.hasOwnProperty(type)) throw new TypeError(coderTypeError2); + if (!CODERS2.hasOwnProperty(type)) + throw new TypeError(coderTypeError2); if (typeof str !== "string") throw new TypeError("stringToBytes() expects string"); return CODERS2[type].decode(str); }; exports.stringToBytes = stringToBytes; exports.bytes = exports.stringToBytes; - }, + } }); // node_modules/@scure/bip39/index.js @@ -3890,21 +3510,14 @@ zoo`.split("\n"); "use strict"; init_define_process(); Object.defineProperty(exports, "__esModule", { value: true }); - exports.mnemonicToSeedSync = - exports.mnemonicToSeed = - exports.validateMnemonic = - exports.entropyToMnemonic = - exports.mnemonicToEntropy = - exports.generateMnemonic = - void 0; + exports.mnemonicToSeedSync = exports.mnemonicToSeed = exports.validateMnemonic = exports.entropyToMnemonic = exports.mnemonicToEntropy = exports.generateMnemonic = void 0; var _assert_1 = require_assert(); var pbkdf2_1 = require_pbkdf2(); var sha256_1 = require_sha256(); var sha512_1 = require_sha512(); var utils_1 = require_utils(); var base_1 = require_lib(); - var isJapanese = (wordlist2) => - wordlist2[0] === "\u3042\u3044\u3053\u304F\u3057\u3093"; + var isJapanese = (wordlist2) => wordlist2[0] === "\u3042\u3044\u3053\u304F\u3057\u3093"; function nfkd(str) { if (typeof str !== "string") throw new TypeError(`Invalid mnemonic type: ${typeof str}`); @@ -3924,34 +3537,21 @@ zoo`.split("\n"); _assert_1.default.number(strength); if (strength % 32 !== 0 || strength > 256) throw new TypeError("Invalid entropy"); - return entropyToMnemonic( - (0, utils_1.randomBytes)(strength / 8), - wordlist2 - ); + return entropyToMnemonic((0, utils_1.randomBytes)(strength / 8), wordlist2); } exports.generateMnemonic = generateMnemonic2; var calcChecksum = (entropy) => { const bitsLeft = 8 - entropy.length / 4; - return new Uint8Array([ - ((0, sha256_1.sha256)(entropy)[0] >> bitsLeft) << bitsLeft, - ]); + return new Uint8Array([(0, sha256_1.sha256)(entropy)[0] >> bitsLeft << bitsLeft]); }; function getCoder(wordlist2) { - if ( - !Array.isArray(wordlist2) || - wordlist2.length !== 2048 || - typeof wordlist2[0] !== "string" - ) + if (!Array.isArray(wordlist2) || wordlist2.length !== 2048 || typeof wordlist2[0] !== "string") throw new Error("Worlist: expected array of 2048 strings"); wordlist2.forEach((i) => { if (typeof i !== "string") throw new Error(`Wordlist: non-string element: ${i}`); }); - return base_1.utils.chain( - base_1.utils.checksum(1, calcChecksum), - base_1.utils.radix2(11, true), - base_1.utils.alphabet(wordlist2) - ); + return base_1.utils.chain(base_1.utils.checksum(1, calcChecksum), base_1.utils.radix2(11, true), base_1.utils.alphabet(wordlist2)); } function mnemonicToEntropy(mnemonic, wordlist2) { const { words } = normalize2(mnemonic); @@ -3977,24 +3577,14 @@ zoo`.split("\n"); exports.validateMnemonic = validateMnemonic2; var salt = (passphrase) => nfkd(`mnemonic${passphrase}`); function mnemonicToSeed(mnemonic, passphrase = "") { - return (0, pbkdf2_1.pbkdf2Async)( - sha512_1.sha512, - normalize2(mnemonic).nfkd, - salt(passphrase), - { c: 2048, dkLen: 64 } - ); + return (0, pbkdf2_1.pbkdf2Async)(sha512_1.sha512, normalize2(mnemonic).nfkd, salt(passphrase), { c: 2048, dkLen: 64 }); } exports.mnemonicToSeed = mnemonicToSeed; function mnemonicToSeedSync2(mnemonic, passphrase = "") { - return (0, pbkdf2_1.pbkdf2)( - sha512_1.sha512, - normalize2(mnemonic).nfkd, - salt(passphrase), - { c: 2048, dkLen: 64 } - ); + return (0, pbkdf2_1.pbkdf2)(sha512_1.sha512, normalize2(mnemonic).nfkd, salt(passphrase), { c: 2048, dkLen: 64 }); } exports.mnemonicToSeedSync = mnemonicToSeedSync2; - }, + } }); // index.ts @@ -4033,7 +3623,7 @@ zoo`.split("\n"); signEvent: () => signEvent, utils: () => utils_exports2, validateEvent: () => validateEvent, - verifySignature: () => verifySignature, + verifySignature: () => verifySignature }); init_define_process(); @@ -4056,14 +3646,14 @@ zoo`.split("\n"); throw new Error(`Wrong positive integer: ${n}`); } function bool(b) { - if (typeof b !== "boolean") throw new Error(`Expected boolean, not ${b}`); + if (typeof b !== "boolean") + throw new Error(`Expected boolean, not ${b}`); } function bytes(b, ...lengths) { - if (!(b instanceof Uint8Array)) throw new TypeError("Expected Uint8Array"); + if (!(b instanceof Uint8Array)) + throw new TypeError("Expected Uint8Array"); if (lengths.length > 0 && !lengths.includes(b.length)) - throw new TypeError( - `Expected Uint8Array of length ${lengths}, not of length=${b.length}` - ); + throw new TypeError(`Expected Uint8Array of length ${lengths}, not of length=${b.length}`); } function hash(hash2) { if (typeof hash2 !== "function" || typeof hash2.create !== "function") @@ -4072,7 +3662,8 @@ zoo`.split("\n"); number(hash2.blockLen); } function exists(instance, checkFinished = true) { - if (instance.destroyed) throw new Error("Hash instance has been destroyed"); + if (instance.destroyed) + throw new Error("Hash instance has been destroyed"); if (checkFinished && instance.finished) throw new Error("Hash#digest() has already been called"); } @@ -4080,9 +3671,7 @@ zoo`.split("\n"); bytes(out); const min = instance.outputLen; if (out.length < min) { - throw new Error( - `digestInto() expects output buffer of length at least ${min}` - ); + throw new Error(`digestInto() expects output buffer of length at least ${min}`); } } var assert = { @@ -4091,7 +3680,7 @@ zoo`.split("\n"); bytes, hash, exists, - output, + output }; var assert_default = assert; @@ -4100,22 +3689,18 @@ zoo`.split("\n"); // node_modules/@noble/hashes/esm/crypto.js init_define_process(); - var crypto2 = - typeof globalThis === "object" && "crypto" in globalThis - ? globalThis.crypto - : void 0; + var crypto2 = typeof globalThis === "object" && "crypto" in globalThis ? globalThis.crypto : void 0; // node_modules/@noble/hashes/esm/utils.js - var createView = (arr) => - new DataView(arr.buffer, arr.byteOffset, arr.byteLength); - var rotr = (word, shift) => (word << (32 - shift)) | (word >>> shift); + var createView = (arr) => new DataView(arr.buffer, arr.byteOffset, arr.byteLength); + var rotr = (word, shift) => word << 32 - shift | word >>> shift; var isLE = new Uint8Array(new Uint32Array([287454020]).buffer)[0] === 68; - if (!isLE) throw new Error("Non little-endian hardware is not supported"); - var hexes = Array.from({ length: 256 }, (v, i) => - i.toString(16).padStart(2, "0") - ); + if (!isLE) + throw new Error("Non little-endian hardware is not supported"); + var hexes = Array.from({ length: 256 }, (v, i) => i.toString(16).padStart(2, "0")); function bytesToHex(uint8a) { - if (!(uint8a instanceof Uint8Array)) throw new Error("Uint8Array expected"); + if (!(uint8a instanceof Uint8Array)) + throw new Error("Uint8Array expected"); let hex2 = ""; for (let i = 0; i < uint8a.length; i++) { hex2 += hexes[uint8a[i]]; @@ -4146,17 +3731,17 @@ zoo`.split("\n"); return new TextEncoder().encode(str); } function toBytes(data) { - if (typeof data === "string") data = utf8ToBytes(data); + if (typeof data === "string") + data = utf8ToBytes(data); if (!(data instanceof Uint8Array)) - throw new TypeError( - `Expected input type is Uint8Array (got ${typeof data})` - ); + throw new TypeError(`Expected input type is Uint8Array (got ${typeof data})`); return data; } function concatBytes(...arrays) { if (!arrays.every((a) => a instanceof Uint8Array)) throw new Error("Uint8Array list expected"); - if (arrays.length === 1) return arrays[0]; + if (arrays.length === 1) + return arrays[0]; const length = arrays.reduce((a, arr) => a + arr.length, 0); const result = new Uint8Array(length); for (let i = 0, pad = 0; i < arrays.length; i++) { @@ -4172,8 +3757,7 @@ zoo`.split("\n"); } }; function wrapConstructor(hashConstructor) { - const hashC = (message) => - hashConstructor().update(toBytes(message)).digest(); + const hashC = (message) => hashConstructor().update(toBytes(message)).digest(); const tmp = hashConstructor(); hashC.outputLen = tmp.outputLen; hashC.blockLen = tmp.blockLen; @@ -4193,7 +3777,7 @@ zoo`.split("\n"); return view.setBigUint64(byteOffset, value, isLE2); const _32n2 = BigInt(32); const _u32_max = BigInt(4294967295); - const wh = Number((value >> _32n2) & _u32_max); + const wh = Number(value >> _32n2 & _u32_max); const wl = Number(value & _u32_max); const h = isLE2 ? 4 : 0; const l = isLE2 ? 0 : 4; @@ -4251,7 +3835,8 @@ zoo`.split("\n"); this.process(view, 0); pos = 0; } - for (let i = pos; i < blockLen; i++) buffer[i] = 0; + for (let i = pos; i < blockLen; i++) + buffer[i] = 0; setBigUint64(view, blockLen - 8, BigInt(this.length * 8), isLE2); this.process(view, 0); const oview = createView(out); @@ -4262,7 +3847,8 @@ zoo`.split("\n"); const state = this.get(); if (outLen > state.length) throw new Error("_sha2: outputLen bigger than state"); - for (let i = 0; i < outLen; i++) oview.setUint32(4 * i, state[i], isLE2); + for (let i = 0; i < outLen; i++) + oview.setUint32(4 * i, state[i], isLE2); } digest() { const { buffer, outputLen } = this; @@ -4279,30 +3865,90 @@ zoo`.split("\n"); to.pos = pos; to.finished = finished; to.destroyed = destroyed; - if (length % blockLen) to.buffer.set(buffer); + if (length % blockLen) + to.buffer.set(buffer); return to; } }; // node_modules/@noble/hashes/esm/sha256.js - var Chi = (a, b, c) => (a & b) ^ (~a & c); - var Maj = (a, b, c) => (a & b) ^ (a & c) ^ (b & c); + var Chi = (a, b, c) => a & b ^ ~a & c; + var Maj = (a, b, c) => a & b ^ a & c ^ b & c; var SHA256_K = new Uint32Array([ - 1116352408, 1899447441, 3049323471, 3921009573, 961987163, 1508970993, - 2453635748, 2870763221, 3624381080, 310598401, 607225278, 1426881987, - 1925078388, 2162078206, 2614888103, 3248222580, 3835390401, 4022224774, - 264347078, 604807628, 770255983, 1249150122, 1555081692, 1996064986, - 2554220882, 2821834349, 2952996808, 3210313671, 3336571891, 3584528711, - 113926993, 338241895, 666307205, 773529912, 1294757372, 1396182291, - 1695183700, 1986661051, 2177026350, 2456956037, 2730485921, 2820302411, - 3259730800, 3345764771, 3516065817, 3600352804, 4094571909, 275423344, - 430227734, 506948616, 659060556, 883997877, 958139571, 1322822218, - 1537002063, 1747873779, 1955562222, 2024104815, 2227730452, 2361852424, - 2428436474, 2756734187, 3204031479, 3329325298, + 1116352408, + 1899447441, + 3049323471, + 3921009573, + 961987163, + 1508970993, + 2453635748, + 2870763221, + 3624381080, + 310598401, + 607225278, + 1426881987, + 1925078388, + 2162078206, + 2614888103, + 3248222580, + 3835390401, + 4022224774, + 264347078, + 604807628, + 770255983, + 1249150122, + 1555081692, + 1996064986, + 2554220882, + 2821834349, + 2952996808, + 3210313671, + 3336571891, + 3584528711, + 113926993, + 338241895, + 666307205, + 773529912, + 1294757372, + 1396182291, + 1695183700, + 1986661051, + 2177026350, + 2456956037, + 2730485921, + 2820302411, + 3259730800, + 3345764771, + 3516065817, + 3600352804, + 4094571909, + 275423344, + 430227734, + 506948616, + 659060556, + 883997877, + 958139571, + 1322822218, + 1537002063, + 1747873779, + 1955562222, + 2024104815, + 2227730452, + 2361852424, + 2428436474, + 2756734187, + 3204031479, + 3329325298 ]); var IV = new Uint32Array([ - 1779033703, 3144134277, 1013904242, 2773480762, 1359893119, 2600822924, - 528734635, 1541459225, + 1779033703, + 3144134277, + 1013904242, + 2773480762, + 1359893119, + 2600822924, + 528734635, + 1541459225 ]); var SHA256_W = new Uint32Array(64); var SHA256 = class extends SHA2 { @@ -4337,33 +3983,33 @@ zoo`.split("\n"); for (let i = 16; i < 64; i++) { const W15 = SHA256_W[i - 15]; const W2 = SHA256_W[i - 2]; - const s0 = rotr(W15, 7) ^ rotr(W15, 18) ^ (W15 >>> 3); - const s1 = rotr(W2, 17) ^ rotr(W2, 19) ^ (W2 >>> 10); - SHA256_W[i] = (s1 + SHA256_W[i - 7] + s0 + SHA256_W[i - 16]) | 0; + const s0 = rotr(W15, 7) ^ rotr(W15, 18) ^ W15 >>> 3; + const s1 = rotr(W2, 17) ^ rotr(W2, 19) ^ W2 >>> 10; + SHA256_W[i] = s1 + SHA256_W[i - 7] + s0 + SHA256_W[i - 16] | 0; } let { A, B, C, D, E, F, G, H } = this; for (let i = 0; i < 64; i++) { const sigma1 = rotr(E, 6) ^ rotr(E, 11) ^ rotr(E, 25); - const T1 = (H + sigma1 + Chi(E, F, G) + SHA256_K[i] + SHA256_W[i]) | 0; + const T1 = H + sigma1 + Chi(E, F, G) + SHA256_K[i] + SHA256_W[i] | 0; const sigma0 = rotr(A, 2) ^ rotr(A, 13) ^ rotr(A, 22); - const T2 = (sigma0 + Maj(A, B, C)) | 0; + const T2 = sigma0 + Maj(A, B, C) | 0; H = G; G = F; F = E; - E = (D + T1) | 0; + E = D + T1 | 0; D = C; C = B; B = A; - A = (T1 + T2) | 0; - } - A = (A + this.A) | 0; - B = (B + this.B) | 0; - C = (C + this.C) | 0; - D = (D + this.D) | 0; - E = (E + this.E) | 0; - F = (F + this.F) | 0; - G = (G + this.G) | 0; - H = (H + this.H) | 0; + A = T1 + T2 | 0; + } + A = A + this.A | 0; + B = B + this.B | 0; + C = C + this.C | 0; + D = D + this.D | 0; + E = E + this.E | 0; + F = F + this.F | 0; + G = G + this.G | 0; + H = H + this.H | 0; this.set(A, B, C, D, E, F, G, H); } roundClean() { @@ -4415,18 +4061,17 @@ zoo`.split("\n"); numberToHexUnpadded: () => numberToHexUnpadded, numberToVarBytesBE: () => numberToVarBytesBE, utf8ToBytes: () => utf8ToBytes2, - validateObject: () => validateObject, + validateObject: () => validateObject }); init_define_process(); var _0n = BigInt(0); var _1n = BigInt(1); var _2n = BigInt(2); var u8a = (a) => a instanceof Uint8Array; - var hexes2 = Array.from({ length: 256 }, (v, i) => - i.toString(16).padStart(2, "0") - ); + var hexes2 = Array.from({ length: 256 }, (v, i) => i.toString(16).padStart(2, "0")); function bytesToHex2(bytes2) { - if (!u8a(bytes2)) throw new Error("Uint8Array expected"); + if (!u8a(bytes2)) + throw new Error("Uint8Array expected"); let hex2 = ""; for (let i = 0; i < bytes2.length; i++) { hex2 += hexes2[bytes2[i]]; @@ -4462,11 +4107,11 @@ zoo`.split("\n"); return hexToNumber(bytesToHex2(bytes2)); } function bytesToNumberLE(bytes2) { - if (!u8a(bytes2)) throw new Error("Uint8Array expected"); + if (!u8a(bytes2)) + throw new Error("Uint8Array expected"); return hexToNumber(bytesToHex2(Uint8Array.from(bytes2).reverse())); } - var numberToBytesBE = (n, len) => - hexToBytes2(n.toString(16).padStart(len * 2, "0")); + var numberToBytesBE = (n, len) => hexToBytes2(n.toString(16).padStart(len * 2, "0")); var numberToBytesLE = (n, len) => numberToBytesBE(n, len).reverse(); var numberToVarBytesBE = (n) => hexToBytes2(numberToHexUnpadded(n)); function ensureBytes(title, hex2, expectedLength) { @@ -4475,9 +4120,7 @@ zoo`.split("\n"); try { res = hexToBytes2(hex2); } catch (e) { - throw new Error( - `${title} must be valid hex string, got "${hex2}". Cause: ${e}` - ); + throw new Error(`${title} must be valid hex string, got "${hex2}". Cause: ${e}`); } } else if (u8a(hex2)) { res = Uint8Array.from(hex2); @@ -4493,15 +4136,19 @@ zoo`.split("\n"); const r = new Uint8Array(arrs.reduce((sum, a) => sum + a.length, 0)); let pad = 0; arrs.forEach((a) => { - if (!u8a(a)) throw new Error("Uint8Array expected"); + if (!u8a(a)) + throw new Error("Uint8Array expected"); r.set(a, pad); pad += a.length; }); return r; } function equalBytes(b1, b2) { - if (b1.length !== b2.length) return false; - for (let i = 0; i < b1.length; i++) if (b1[i] !== b2[i]) return false; + if (b1.length !== b2.length) + return false; + for (let i = 0; i < b1.length; i++) + if (b1[i] !== b2[i]) + return false; return true; } function utf8ToBytes2(str) { @@ -4512,11 +4159,12 @@ zoo`.split("\n"); } function bitLen(n) { let len; - for (len = 0; n > _0n; n >>= _1n, len += 1); + for (len = 0; n > _0n; n >>= _1n, len += 1) + ; return len; } - var bitGet = (n, pos) => (n >> BigInt(pos)) & _1n; - var bitSet = (n, pos, value) => n | ((value ? _1n : _0n) << BigInt(pos)); + var bitGet = (n, pos) => n >> BigInt(pos) & _1n; + var bitSet = (n, pos, value) => n | (value ? _1n : _0n) << BigInt(pos); var bitMask = (n) => (_2n << BigInt(n - 1)) - _1n; var u8n = (data) => new Uint8Array(data); var u8fr = (arr) => Uint8Array.from(arr); @@ -4539,12 +4187,14 @@ zoo`.split("\n"); const reseed = (seed = u8n()) => { k = h(u8fr([0]), seed); v = h(); - if (seed.length === 0) return; + if (seed.length === 0) + return; k = h(u8fr([1]), seed); v = h(); }; const gen = () => { - if (i++ >= 1e3) throw new Error("drbg: tried 1000 values"); + if (i++ >= 1e3) + throw new Error("drbg: tried 1000 values"); let len = 0; const out = []; while (len < qByteLen) { @@ -4559,7 +4209,8 @@ zoo`.split("\n"); reset(); reseed(seed); let res = void 0; - while (!(res = pred(gen()))) reseed(); + while (!(res = pred(gen()))) + reseed(); reset(); return res; }; @@ -4573,8 +4224,7 @@ zoo`.split("\n"); isSafeInteger: (val) => Number.isSafeInteger(val), array: (val) => Array.isArray(val), field: (val, object) => object.Fp.isValid(val), - hash: (val) => - typeof val === "function" && Number.isSafeInteger(val.outputLen), + hash: (val) => typeof val === "function" && Number.isSafeInteger(val.outputLen) }; function validateObject(object, validators, optValidators = {}) { const checkField = (fieldName, type, isOptional) => { @@ -4582,13 +4232,10 @@ zoo`.split("\n"); if (typeof checkVal !== "function") throw new Error(`Invalid validator "${type}", expected function`); const val = object[fieldName]; - if (isOptional && val === void 0) return; + if (isOptional && val === void 0) + return; if (!checkVal(val, object)) { - throw new Error( - `Invalid param ${String( - fieldName - )}=${val} (${typeof val}), expected ${type}` - ); + throw new Error(`Invalid param ${String(fieldName)}=${val} (${typeof val}), expected ${type}`); } }; for (const [fieldName, type] of Object.entries(validators)) @@ -4615,11 +4262,13 @@ zoo`.split("\n"); function pow(num, power, modulo) { if (modulo <= _0n2 || power < _0n2) throw new Error("Expected power/modulo > 0"); - if (modulo === _1n2) return _0n2; + if (modulo === _1n2) + return _0n2; let res = _1n2; while (power > _0n2) { - if (power & _1n2) res = (res * num) % modulo; - num = (num * num) % modulo; + if (power & _1n2) + res = res * num % modulo; + num = num * num % modulo; power >>= _1n2; } return res; @@ -4634,32 +4283,30 @@ zoo`.split("\n"); } function invert(number2, modulo) { if (number2 === _0n2 || modulo <= _0n2) { - throw new Error( - `invert: expected positive integers, got n=${number2} mod=${modulo}` - ); + throw new Error(`invert: expected positive integers, got n=${number2} mod=${modulo}`); } let a = mod(number2, modulo); let b = modulo; - let x = _0n2, - y = _1n2, - u = _1n2, - v = _0n2; + let x = _0n2, y = _1n2, u = _1n2, v = _0n2; while (a !== _0n2) { const q = b / a; const r = b % a; const m = x - u * q; const n = y - v * q; - (b = a), (a = r), (x = u), (y = v), (u = m), (v = n); + b = a, a = r, x = u, y = v, u = m, v = n; } const gcd2 = b; - if (gcd2 !== _1n2) throw new Error("invert: does not exist"); + if (gcd2 !== _1n2) + throw new Error("invert: does not exist"); return mod(x, modulo); } function tonelliShanks(P) { const legendreC = (P - _1n2) / _2n2; let Q, S, Z; - for (Q = P - _1n2, S = 0; Q % _2n2 === _0n2; Q /= _2n2, S++); - for (Z = _2n2; Z < P && pow(Z, legendreC, P) !== P - _1n2; Z++); + for (Q = P - _1n2, S = 0; Q % _2n2 === _0n2; Q /= _2n2, S++) + ; + for (Z = _2n2; Z < P && pow(Z, legendreC, P) !== P - _1n2; Z++) + ; if (S === 1) { const p1div4 = (P + _1n2) / _4n; return function tonelliFast(Fp2, n) { @@ -4678,10 +4325,12 @@ zoo`.split("\n"); let x = Fp2.pow(n, Q1div2); let b = Fp2.pow(n, Q); while (!Fp2.eql(b, Fp2.ONE)) { - if (Fp2.eql(b, Fp2.ZERO)) return Fp2.ZERO; + if (Fp2.eql(b, Fp2.ZERO)) + return Fp2.ZERO; let m = 1; for (let t2 = Fp2.sqr(b); m < r; m++) { - if (Fp2.eql(t2, Fp2.ONE)) break; + if (Fp2.eql(t2, Fp2.ONE)) + break; t2 = Fp2.sqr(t2); } const ge2 = Fp2.pow(g, _1n2 << BigInt(r - m - 1)); @@ -4737,14 +4386,14 @@ zoo`.split("\n"); "addN", "subN", "mulN", - "sqrN", + "sqrN" ]; function validateField(field) { const initial = { ORDER: "bigint", MASK: "bigint", BYTES: "isSafeInteger", - BITS: "isSafeInteger", + BITS: "isSafeInteger" }; const opts = FIELD_FIELDS.reduce((map, val) => { map[val] = "function"; @@ -4753,13 +4402,17 @@ zoo`.split("\n"); return validateObject(field, opts); } function FpPow(f2, num, power) { - if (power < _0n2) throw new Error("Expected power > 0"); - if (power === _0n2) return f2.ONE; - if (power === _1n2) return num; + if (power < _0n2) + throw new Error("Expected power > 0"); + if (power === _0n2) + return f2.ONE; + if (power === _1n2) + return num; let p = f2.ONE; let d = num; while (power > _0n2) { - if (power & _1n2) p = f2.mul(p, d); + if (power & _1n2) + p = f2.mul(p, d); d = f2.sqr(d); power >>= _1n2; } @@ -4768,26 +4421,28 @@ zoo`.split("\n"); function FpInvertBatch(f2, nums) { const tmp = new Array(nums.length); const lastMultiplied = nums.reduce((acc, num, i) => { - if (f2.is0(num)) return acc; + if (f2.is0(num)) + return acc; tmp[i] = acc; return f2.mul(acc, num); }, f2.ONE); const inverted = f2.inv(lastMultiplied); nums.reduceRight((acc, num, i) => { - if (f2.is0(num)) return acc; + if (f2.is0(num)) + return acc; tmp[i] = f2.mul(acc, tmp[i]); return f2.mul(acc, num); }, inverted); return tmp; } function nLength(n, nBitLength) { - const _nBitLength = - nBitLength !== void 0 ? nBitLength : n.toString(2).length; + const _nBitLength = nBitLength !== void 0 ? nBitLength : n.toString(2).length; const nByteLength = Math.ceil(_nBitLength / 8); return { nBitLength: _nBitLength, nByteLength }; } function Field(ORDER, bitLen2, isLE2 = false, redef = {}) { - if (ORDER <= _0n2) throw new Error(`Expected Fp ORDER > 0, got ${ORDER}`); + if (ORDER <= _0n2) + throw new Error(`Expected Fp ORDER > 0, got ${ORDER}`); const { nBitLength: BITS, nByteLength: BYTES } = nLength(ORDER, bitLen2); if (BYTES > 2048) throw new Error("Field lengths over 2048 bytes are not supported"); @@ -4802,9 +4457,7 @@ zoo`.split("\n"); create: (num) => mod(num, ORDER), isValid: (num) => { if (typeof num !== "bigint") - throw new Error( - `Invalid field element: expected bigint, got ${typeof num}` - ); + throw new Error(`Invalid field element: expected bigint, got ${typeof num}`); return _0n2 <= num && num < ORDER; }, is0: (num) => num === _0n2, @@ -4824,16 +4477,13 @@ zoo`.split("\n"); inv: (num) => invert(num, ORDER), sqrt: redef.sqrt || ((n) => sqrtP(f2, n)), invertBatch: (lst) => FpInvertBatch(f2, lst), - cmov: (a, b, c) => (c ? b : a), - toBytes: (num) => - isLE2 ? numberToBytesLE(num, BYTES) : numberToBytesBE(num, BYTES), + cmov: (a, b, c) => c ? b : a, + toBytes: (num) => isLE2 ? numberToBytesLE(num, BYTES) : numberToBytesBE(num, BYTES), fromBytes: (bytes2) => { if (bytes2.length !== BYTES) - throw new Error( - `Fp.fromBytes: expected ${BYTES}, got ${bytes2.length}` - ); + throw new Error(`Fp.fromBytes: expected ${BYTES}, got ${bytes2.length}`); return isLE2 ? bytesToNumberLE(bytes2) : bytesToNumberBE(bytes2); - }, + } }); return Object.freeze(f2); } @@ -4842,9 +4492,7 @@ zoo`.split("\n"); const hashLen = hash2.length; const minLen = nLength(groupOrder).nByteLength + 8; if (minLen < 24 || hashLen < minLen || hashLen > 1024) - throw new Error( - `hashToPrivateScalar: expected ${minLen}-1024 bytes of input, got ${hashLen}` - ); + throw new Error(`hashToPrivateScalar: expected ${minLen}-1024 bytes of input, got ${hashLen}`); const num = isLE2 ? bytesToNumberLE(hash2) : bytesToNumberBE(hash2); return mod(num, groupOrder - _1n2) + _1n2; } @@ -4872,7 +4520,8 @@ zoo`.split("\n"); let p = c.ZERO; let d = elm; while (n > _0n3) { - if (n & _1n3) p = p.add(d); + if (n & _1n3) + p = p.add(d); d = d.double(); n >>= _1n3; } @@ -4931,65 +4580,49 @@ zoo`.split("\n"); } } return this.wNAF(W, comp, n); - }, + } }; } function validateBasic(curve) { validateField(curve.Fp); - validateObject( - curve, - { - n: "bigint", - h: "bigint", - Gx: "field", - Gy: "field", - }, - { - nBitLength: "isSafeInteger", - nByteLength: "isSafeInteger", - } - ); + validateObject(curve, { + n: "bigint", + h: "bigint", + Gx: "field", + Gy: "field" + }, { + nBitLength: "isSafeInteger", + nByteLength: "isSafeInteger" + }); return Object.freeze({ ...nLength(curve.n, curve.nBitLength), ...curve, - ...{ p: curve.Fp.ORDER }, + ...{ p: curve.Fp.ORDER } }); } // node_modules/@noble/curves/esm/abstract/weierstrass.js function validatePointOpts(curve) { const opts = validateBasic(curve); - validateObject( - opts, - { - a: "field", - b: "field", - }, - { - allowedPrivateKeyLengths: "array", - wrapPrivateKey: "boolean", - isTorsionFree: "function", - clearCofactor: "function", - allowInfinityPoint: "boolean", - fromBytes: "function", - toBytes: "function", - } - ); + validateObject(opts, { + a: "field", + b: "field" + }, { + allowedPrivateKeyLengths: "array", + wrapPrivateKey: "boolean", + isTorsionFree: "function", + clearCofactor: "function", + allowInfinityPoint: "boolean", + fromBytes: "function", + toBytes: "function" + }); const { endo, Fp: Fp2, a } = opts; if (endo) { if (!Fp2.eql(a, Fp2.ZERO)) { - throw new Error( - "Endomorphism can only be defined for Koblitz curves that have a=0" - ); + throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0"); } - if ( - typeof endo !== "object" || - typeof endo.beta !== "bigint" || - typeof endo.splitScalar !== "function" - ) { - throw new Error( - "Expected endomorphism with beta: bigint and splitScalar: function" - ); + if (typeof endo !== "object" || typeof endo.beta !== "bigint" || typeof endo.splitScalar !== "function") { + throw new Error("Expected endomorphism with beta: bigint and splitScalar: function"); } } return Object.freeze({ ...opts }); @@ -5009,7 +4642,8 @@ zoo`.split("\n"); const res = data.subarray(2, len + 2); if (!len || res.length !== len) throw new E("Invalid signature integer: wrong length"); - if (res[0] & 128) throw new E("Invalid signature integer: negative"); + if (res[0] & 128) + throw new E("Invalid signature integer: negative"); if (res[0] === 0 && !(res[1] & 128)) throw new E("Invalid signature integer: unnecessary leading zero"); return { d: b2n(res), l: data.subarray(len + 2) }; @@ -5017,10 +4651,13 @@ zoo`.split("\n"); toSig(hex2) { const { Err: E } = DER; const data = typeof hex2 === "string" ? h2b(hex2) : hex2; - if (!(data instanceof Uint8Array)) throw new Error("ui8a expected"); + if (!(data instanceof Uint8Array)) + throw new Error("ui8a expected"); let l = data.length; - if (l < 2 || data[0] != 48) throw new E("Invalid signature tag"); - if (data[1] !== l - 2) throw new E("Invalid signature: incorrect length"); + if (l < 2 || data[0] != 48) + throw new E("Invalid signature tag"); + if (data[1] !== l - 2) + throw new E("Invalid signature: incorrect length"); const { d: r, l: sBytes } = DER._parseInt(data.subarray(2)); const { d: s, l: rBytesLeft } = DER._parseInt(sBytes); if (rBytesLeft.length) @@ -5028,7 +4665,7 @@ zoo`.split("\n"); return { r, s }; }, hexFromSig(sig) { - const slice = (s2) => (Number.parseInt(s2[0], 16) & 8 ? "00" + s2 : s2); + const slice = (s2) => Number.parseInt(s2[0], 16) & 8 ? "00" + s2 : s2; const h = (num) => { const hex2 = num.toString(16); return hex2.length & 1 ? `0${hex2}` : hex2; @@ -5040,7 +4677,7 @@ zoo`.split("\n"); const sl = h(shl); const rl = h(rhl); return `30${h(rhl + shl + 4)}02${rl}${r}02${sl}${s}`; - }, + } }; var _0n4 = BigInt(0); var _1n4 = BigInt(1); @@ -5050,24 +4687,16 @@ zoo`.split("\n"); function weierstrassPoints(opts) { const CURVE = validatePointOpts(opts); const { Fp: Fp2 } = CURVE; - const toBytes2 = - CURVE.toBytes || - ((c, point, isCompressed) => { - const a = point.toAffine(); - return concatBytes2( - Uint8Array.from([4]), - Fp2.toBytes(a.x), - Fp2.toBytes(a.y) - ); - }); - const fromBytes = - CURVE.fromBytes || - ((bytes2) => { - const tail = bytes2.subarray(1); - const x = Fp2.fromBytes(tail.subarray(0, Fp2.BYTES)); - const y = Fp2.fromBytes(tail.subarray(Fp2.BYTES, 2 * Fp2.BYTES)); - return { x, y }; - }); + const toBytes2 = CURVE.toBytes || ((c, point, isCompressed) => { + const a = point.toAffine(); + return concatBytes2(Uint8Array.from([4]), Fp2.toBytes(a.x), Fp2.toBytes(a.y)); + }); + const fromBytes = CURVE.fromBytes || ((bytes2) => { + const tail = bytes2.subarray(1); + const x = Fp2.fromBytes(tail.subarray(0, Fp2.BYTES)); + const y = Fp2.fromBytes(tail.subarray(Fp2.BYTES, 2 * Fp2.BYTES)); + return { x, y }; + }); function weierstrassEquation(x) { const { a, b } = CURVE; const x2 = Fp2.sqr(x); @@ -5084,30 +4713,22 @@ zoo`.split("\n"); throw new Error("Expected valid bigint: 0 < bigint < curve.n"); } function normPrivateKeyToScalar(key) { - const { - allowedPrivateKeyLengths: lengths, - nByteLength, - wrapPrivateKey, - n, - } = CURVE; + const { allowedPrivateKeyLengths: lengths, nByteLength, wrapPrivateKey, n } = CURVE; if (lengths && typeof key !== "bigint") { - if (key instanceof Uint8Array) key = bytesToHex2(key); + if (key instanceof Uint8Array) + key = bytesToHex2(key); if (typeof key !== "string" || !lengths.includes(key.length)) throw new Error("Invalid key"); key = key.padStart(nByteLength * 2, "0"); } let num; try { - num = - typeof key === "bigint" - ? key - : bytesToNumberBE(ensureBytes("private key", key, nByteLength)); + num = typeof key === "bigint" ? key : bytesToNumberBE(ensureBytes("private key", key, nByteLength)); } catch (error) { - throw new Error( - `private key must be ${nByteLength} bytes, hex or bigint, not ${typeof key}` - ); + throw new Error(`private key must be ${nByteLength} bytes, hex or bigint, not ${typeof key}`); } - if (wrapPrivateKey) num = mod(num, n); + if (wrapPrivateKey) + num = mod(num, n); assertGE(num); return num; } @@ -5121,9 +4742,12 @@ zoo`.split("\n"); this.px = px; this.py = py; this.pz = pz; - if (px == null || !Fp2.isValid(px)) throw new Error("x required"); - if (py == null || !Fp2.isValid(py)) throw new Error("y required"); - if (pz == null || !Fp2.isValid(pz)) throw new Error("z required"); + if (px == null || !Fp2.isValid(px)) + throw new Error("x required"); + if (py == null || !Fp2.isValid(py)) + throw new Error("y required"); + if (pz == null || !Fp2.isValid(pz)) + throw new Error("z required"); } static fromAffine(p) { const { x, y } = p || {}; @@ -5132,7 +4756,8 @@ zoo`.split("\n"); if (p instanceof Point3) throw new Error("projective point not allowed"); const is0 = (i) => Fp2.eql(i, Fp2.ZERO); - if (is0(x) && is0(y)) return Point3.ZERO; + if (is0(x) && is0(y)) + return Point3.ZERO; return new Point3(x, y, Fp2.ONE); } get x() { @@ -5143,9 +4768,7 @@ zoo`.split("\n"); } static normalizeZ(points) { const toInv = Fp2.invertBatch(points.map((p) => p.pz)); - return points - .map((p, i) => p.toAffine(toInv[i])) - .map(Point3.fromAffine); + return points.map((p, i) => p.toAffine(toInv[i])).map(Point3.fromAffine); } static fromHex(hex2) { const P = Point3.fromAffine(fromBytes(ensureBytes("pointHex", hex2))); @@ -5161,7 +4784,8 @@ zoo`.split("\n"); } assertValidity() { if (this.is0()) { - if (CURVE.allowInfinityPoint) return; + if (CURVE.allowInfinityPoint) + return; throw new Error("bad point: ZERO"); } const { x, y } = this.toAffine(); @@ -5176,7 +4800,8 @@ zoo`.split("\n"); } hasEvenY() { const { y } = this.toAffine(); - if (Fp2.isOdd) return !Fp2.isOdd(y); + if (Fp2.isOdd) + return !Fp2.isOdd(y); throw new Error("Field doesn't support isOdd"); } equals(other) { @@ -5194,9 +4819,7 @@ zoo`.split("\n"); const { a, b } = CURVE; const b3 = Fp2.mul(b, _3n2); const { px: X1, py: Y1, pz: Z1 } = this; - let X3 = Fp2.ZERO, - Y3 = Fp2.ZERO, - Z3 = Fp2.ZERO; + let X3 = Fp2.ZERO, Y3 = Fp2.ZERO, Z3 = Fp2.ZERO; let t0 = Fp2.mul(X1, X1); let t1 = Fp2.mul(Y1, Y1); let t2 = Fp2.mul(Z1, Z1); @@ -5234,9 +4857,7 @@ zoo`.split("\n"); assertPrjPoint(other); const { px: X1, py: Y1, pz: Z1 } = this; const { px: X2, py: Y2, pz: Z2 } = other; - let X3 = Fp2.ZERO, - Y3 = Fp2.ZERO, - Z3 = Fp2.ZERO; + let X3 = Fp2.ZERO, Y3 = Fp2.ZERO, Z3 = Fp2.ZERO; const a = CURVE.a; const b3 = Fp2.mul(CURVE.b, _3n2); let t0 = Fp2.mul(X1, X2); @@ -5290,31 +4911,36 @@ zoo`.split("\n"); wNAF(n) { return wnaf.wNAFCached(this, pointPrecomputes, n, (comp) => { const toInv = Fp2.invertBatch(comp.map((p) => p.pz)); - return comp - .map((p, i) => p.toAffine(toInv[i])) - .map(Point3.fromAffine); + return comp.map((p, i) => p.toAffine(toInv[i])).map(Point3.fromAffine); }); } multiplyUnsafe(n) { const I = Point3.ZERO; - if (n === _0n4) return I; + if (n === _0n4) + return I; assertGE(n); - if (n === _1n4) return this; + if (n === _1n4) + return this; const { endo } = CURVE; - if (!endo) return wnaf.unsafeLadder(this, n); + if (!endo) + return wnaf.unsafeLadder(this, n); let { k1neg, k1, k2neg, k2 } = endo.splitScalar(n); let k1p = I; let k2p = I; let d = this; while (k1 > _0n4 || k2 > _0n4) { - if (k1 & _1n4) k1p = k1p.add(d); - if (k2 & _1n4) k2p = k2p.add(d); + if (k1 & _1n4) + k1p = k1p.add(d); + if (k2 & _1n4) + k2p = k2p.add(d); d = d.double(); k1 >>= _1n4; k2 >>= _1n4; } - if (k1neg) k1p = k1p.negate(); - if (k2neg) k2p = k2p.negate(); + if (k1neg) + k1p = k1p.negate(); + if (k2neg) + k2p = k2p.negate(); k2p = new Point3(Fp2.mul(k2p.px, endo.beta), k2p.py, k2p.pz); return k1p.add(k2p); } @@ -5341,36 +4967,38 @@ zoo`.split("\n"); } multiplyAndAddUnsafe(Q, a, b) { const G = Point3.BASE; - const mul = (P, a2) => - a2 === _0n4 || a2 === _1n4 || !P.equals(G) - ? P.multiplyUnsafe(a2) - : P.multiply(a2); + const mul = (P, a2) => a2 === _0n4 || a2 === _1n4 || !P.equals(G) ? P.multiplyUnsafe(a2) : P.multiply(a2); const sum = mul(this, a).add(mul(Q, b)); return sum.is0() ? void 0 : sum; } toAffine(iz) { const { px: x, py: y, pz: z } = this; const is0 = this.is0(); - if (iz == null) iz = is0 ? Fp2.ONE : Fp2.inv(z); + if (iz == null) + iz = is0 ? Fp2.ONE : Fp2.inv(z); const ax = Fp2.mul(x, iz); const ay = Fp2.mul(y, iz); const zz = Fp2.mul(z, iz); - if (is0) return { x: Fp2.ZERO, y: Fp2.ZERO }; - if (!Fp2.eql(zz, Fp2.ONE)) throw new Error("invZ was invalid"); + if (is0) + return { x: Fp2.ZERO, y: Fp2.ZERO }; + if (!Fp2.eql(zz, Fp2.ONE)) + throw new Error("invZ was invalid"); return { x: ax, y: ay }; } isTorsionFree() { const { h: cofactor, isTorsionFree } = CURVE; - if (cofactor === _1n4) return true; - if (isTorsionFree) return isTorsionFree(Point3, this); - throw new Error( - "isTorsionFree() has not been declared for the elliptic curve" - ); + if (cofactor === _1n4) + return true; + if (isTorsionFree) + return isTorsionFree(Point3, this); + throw new Error("isTorsionFree() has not been declared for the elliptic curve"); } clearCofactor() { const { h: cofactor, clearCofactor } = CURVE; - if (cofactor === _1n4) return this; - if (clearCofactor) return clearCofactor(Point3, this); + if (cofactor === _1n4) + return this; + if (clearCofactor) + return clearCofactor(Point3, this); return this.multiplyUnsafe(CURVE.h); } toRawBytes(isCompressed = true) { @@ -5390,24 +5018,20 @@ zoo`.split("\n"); ProjectivePoint: Point3, normPrivateKeyToScalar, weierstrassEquation, - isWithinCurveOrder, + isWithinCurveOrder }; } function validateOpts(curve) { const opts = validateBasic(curve); - validateObject( - opts, - { - hash: "hash", - hmac: "function", - randomBytes: "function", - }, - { - bits2int: "function", - bits2int_modN: "function", - lowS: "boolean", - } - ); + validateObject(opts, { + hash: "hash", + hmac: "function", + randomBytes: "function" + }, { + bits2int: "function", + bits2int_modN: "function", + lowS: "boolean" + }); return Object.freeze({ lowS: true, ...opts }); } function weierstrass(curveDef) { @@ -5424,12 +5048,7 @@ zoo`.split("\n"); function invN(a) { return invert(a, CURVE_ORDER); } - const { - ProjectivePoint: Point3, - normPrivateKeyToScalar, - weierstrassEquation, - isWithinCurveOrder, - } = weierstrassPoints({ + const { ProjectivePoint: Point3, normPrivateKeyToScalar, weierstrassEquation, isWithinCurveOrder } = weierstrassPoints({ ...CURVE, toBytes(c, point, isCompressed) { const a = point.toAffine(); @@ -5447,26 +5066,25 @@ zoo`.split("\n"); const tail = bytes2.subarray(1); if (len === compressedLen && (head === 2 || head === 3)) { const x = bytesToNumberBE(tail); - if (!isValidFieldElement(x)) throw new Error("Point is not on curve"); + if (!isValidFieldElement(x)) + throw new Error("Point is not on curve"); const y2 = weierstrassEquation(x); let y = Fp2.sqrt(y2); const isYOdd = (y & _1n4) === _1n4; const isHeadOdd = (head & 1) === 1; - if (isHeadOdd !== isYOdd) y = Fp2.neg(y); + if (isHeadOdd !== isYOdd) + y = Fp2.neg(y); return { x, y }; } else if (len === uncompressedLen && head === 4) { const x = Fp2.fromBytes(tail.subarray(0, Fp2.BYTES)); const y = Fp2.fromBytes(tail.subarray(Fp2.BYTES, 2 * Fp2.BYTES)); return { x, y }; } else { - throw new Error( - `Point of length ${len} was invalid. Expected ${compressedLen} compressed bytes or ${uncompressedLen} uncompressed bytes` - ); + throw new Error(`Point of length ${len} was invalid. Expected ${compressedLen} compressed bytes or ${uncompressedLen} uncompressed bytes`); } - }, + } }); - const numToNByteStr = (num) => - bytesToHex2(numberToBytesBE(num, CURVE.nByteLength)); + const numToNByteStr = (num) => bytesToHex2(numberToBytesBE(num, CURVE.nByteLength)); function isBiggerThanHalfOrder(number2) { const HALF = CURVE_ORDER >> _1n4; return number2 > HALF; @@ -5506,14 +5124,16 @@ zoo`.split("\n"); if (rec == null || ![0, 1, 2, 3].includes(rec)) throw new Error("recovery id invalid"); const radj = rec === 2 || rec === 3 ? r + CURVE.n : r; - if (radj >= Fp2.ORDER) throw new Error("recovery id 2 or 3 invalid"); + if (radj >= Fp2.ORDER) + throw new Error("recovery id 2 or 3 invalid"); const prefix = (rec & 1) === 0 ? "02" : "03"; const R = Point3.fromHex(prefix + numToNByteStr(radj)); const ir = invN(radj); const u1 = modN2(-h * ir); const u2 = modN2(s * ir); const Q = Point3.BASE.multiplyAndAddUnsafe(R, u1, u2); - if (!Q) throw new Error("point at infinify"); + if (!Q) + throw new Error("point at infinify"); Q.assertValidity(); return Q; } @@ -5521,9 +5141,7 @@ zoo`.split("\n"); return isBiggerThanHalfOrder(this.s); } normalizeS() { - return this.hasHighS() - ? new Signature(this.r, modN2(-this.s), this.recovery) - : this; + return this.hasHighS() ? new Signature(this.r, modN2(-this.s), this.recovery) : this; } toDERRawBytes() { return hexToBytes2(this.toDERHex()); @@ -5557,7 +5175,7 @@ zoo`.split("\n"); point._setWindowSize(windowSize); point.multiply(BigInt(3)); return point; - }, + } }; function getPublicKey2(privateKey, isCompressed = true) { return Point3.fromPrivateKey(privateKey).toRawBytes(isCompressed); @@ -5566,34 +5184,34 @@ zoo`.split("\n"); const arr = item instanceof Uint8Array; const str = typeof item === "string"; const len = (arr || str) && item.length; - if (arr) return len === compressedLen || len === uncompressedLen; - if (str) return len === 2 * compressedLen || len === 2 * uncompressedLen; - if (item instanceof Point3) return true; + if (arr) + return len === compressedLen || len === uncompressedLen; + if (str) + return len === 2 * compressedLen || len === 2 * uncompressedLen; + if (item instanceof Point3) + return true; return false; } function getSharedSecret(privateA, publicB, isCompressed = true) { - if (isProbPub(privateA)) throw new Error("first arg must be private key"); - if (!isProbPub(publicB)) throw new Error("second arg must be public key"); + if (isProbPub(privateA)) + throw new Error("first arg must be private key"); + if (!isProbPub(publicB)) + throw new Error("second arg must be public key"); const b = Point3.fromHex(publicB); - return b - .multiply(normPrivateKeyToScalar(privateA)) - .toRawBytes(isCompressed); - } - const bits2int = - CURVE.bits2int || - function (bytes2) { - const num = bytesToNumberBE(bytes2); - const delta = bytes2.length * 8 - CURVE.nBitLength; - return delta > 0 ? num >> BigInt(delta) : num; - }; - const bits2int_modN = - CURVE.bits2int_modN || - function (bytes2) { - return modN2(bits2int(bytes2)); - }; + return b.multiply(normPrivateKeyToScalar(privateA)).toRawBytes(isCompressed); + } + const bits2int = CURVE.bits2int || function(bytes2) { + const num = bytesToNumberBE(bytes2); + const delta = bytes2.length * 8 - CURVE.nBitLength; + return delta > 0 ? num >> BigInt(delta) : num; + }; + const bits2int_modN = CURVE.bits2int_modN || function(bytes2) { + return modN2(bits2int(bytes2)); + }; const ORDER_MASK = bitMask(CURVE.nBitLength); function int2octets(num) { - if (typeof num !== "bigint") throw new Error("bigint expected"); + if (typeof num !== "bigint") + throw new Error("bigint expected"); if (!(_0n4 <= num && num < ORDER_MASK)) throw new Error(`bigint expected < 2^${CURVE.nBitLength}`); return numberToBytesBE(num, CURVE.nByteLength); @@ -5603,9 +5221,11 @@ zoo`.split("\n"); throw new Error("sign() legacy options not supported"); const { hash: hash2, randomBytes: randomBytes2 } = CURVE; let { lowS, prehash, extraEntropy: ent } = opts; - if (lowS == null) lowS = true; + if (lowS == null) + lowS = true; msgHash = ensureBytes("msgHash", msgHash); - if (prehash) msgHash = ensureBytes("prehashed msgHash", hash2(msgHash)); + if (prehash) + msgHash = ensureBytes("prehashed msgHash", hash2(msgHash)); const h1int = bits2int_modN(msgHash); const d = normPrivateKeyToScalar(privateKey); const seedArgs = [int2octets(d), int2octets(h1int)]; @@ -5617,13 +5237,16 @@ zoo`.split("\n"); const m = h1int; function k2sig(kBytes) { const k = bits2int(kBytes); - if (!isWithinCurveOrder(k)) return; + if (!isWithinCurveOrder(k)) + return; const ik = invN(k); const q = Point3.BASE.multiply(k).toAffine(); const r = modN2(q.x); - if (r === _0n4) return; + if (r === _0n4) + return; const s = modN2(ik * modN2(m + r * d)); - if (s === _0n4) return; + if (s === _0n4) + return; let recovery = (q.x === r ? 0 : 2) | Number(q.y & _1n4); let normS = s; if (lowS && isBiggerThanHalfOrder(s)) { @@ -5638,11 +5261,7 @@ zoo`.split("\n"); const defaultVerOpts = { lowS: CURVE.lowS, prehash: false }; function sign(msgHash, privKey, opts = defaultSigOpts) { const { seed, k2sig } = prepSig(msgHash, privKey, opts); - const drbg = createHmacDrbg( - CURVE.hash.outputLen, - CURVE.nByteLength, - CURVE.hmac - ); + const drbg = createHmacDrbg(CURVE.hash.outputLen, CURVE.nByteLength, CURVE.hmac); return drbg(seed, k2sig); } Point3.BASE._setWindowSize(8); @@ -5660,14 +5279,11 @@ zoo`.split("\n"); try { _sig = Signature.fromDER(sg); } catch (derError) { - if (!(derError instanceof DER.Err)) throw derError; + if (!(derError instanceof DER.Err)) + throw derError; _sig = Signature.fromCompact(sg); } - } else if ( - typeof sg === "object" && - typeof sg.r === "bigint" && - typeof sg.s === "bigint" - ) { + } else if (typeof sg === "object" && typeof sg.r === "bigint" && typeof sg.s === "bigint") { const { r: r2, s: s2 } = sg; _sig = new Signature(r2, s2); } else { @@ -5676,20 +5292,21 @@ zoo`.split("\n"); P = Point3.fromHex(publicKey); } catch (error) { if (error.message === "PARSE") - throw new Error( - `signature must be Signature instance, Uint8Array or hex string` - ); + throw new Error(`signature must be Signature instance, Uint8Array or hex string`); return false; } - if (lowS && _sig.hasHighS()) return false; - if (prehash) msgHash = CURVE.hash(msgHash); + if (lowS && _sig.hasHighS()) + return false; + if (prehash) + msgHash = CURVE.hash(msgHash); const { r, s } = _sig; const h = bits2int_modN(msgHash); const is = invN(s); const u1 = modN2(h * is); const u2 = modN2(r * is); const R = Point3.BASE.multiplyAndAddUnsafe(P, u1, u2)?.toAffine(); - if (!R) return false; + if (!R) + return false; const v = modN2(R.x); return v === r; } @@ -5701,13 +5318,14 @@ zoo`.split("\n"); verify, ProjectivePoint: Point3, Signature, - utils, + utils }; } function SWUFpSqrtRatio(Fp2, Z) { const q = Fp2.ORDER; let l = _0n4; - for (let o = q - _1n4; o % _2n3 === _0n4; o /= _2n3) l += _1n4; + for (let o = q - _1n4; o % _2n3 === _0n4; o /= _2n3) + l += _1n4; const c1 = l; const c2 = (q - _1n4) / _2n3 ** c1; const c3 = (c2 - _1n4) / _2n3; @@ -5767,7 +5385,8 @@ zoo`.split("\n"); if (!Fp2.isValid(opts.A) || !Fp2.isValid(opts.B) || !Fp2.isValid(opts.Z)) throw new Error("mapToCurveSimpleSWU: invalid opts"); const sqrtRatio = SWUFpSqrtRatio(Fp2, opts.Z); - if (!Fp2.isOdd) throw new Error("Fp.isOdd is not implemented!"); + if (!Fp2.isOdd) + throw new Error("Fp.isOdd is not implemented!"); return (u) => { let tv1, tv2, tv3, tv4, tv5, tv6, x, y; tv1 = Fp2.sqr(u); @@ -5802,13 +5421,15 @@ zoo`.split("\n"); // node_modules/@noble/curves/esm/abstract/hash-to-curve.js init_define_process(); function validateDST(dst) { - if (dst instanceof Uint8Array) return dst; - if (typeof dst === "string") return utf8ToBytes2(dst); + if (dst instanceof Uint8Array) + return dst; + if (typeof dst === "string") + return utf8ToBytes2(dst); throw new Error("DST must be Uint8Array or string"); } var os2ip = bytesToNumberBE; function i2osp(value, length) { - if (value < 0 || value >= 1 << (8 * length)) { + if (value < 0 || value >= 1 << 8 * length) { throw new Error(`bad I2OSP call: value=${value} length=${length}`); } const res = Array.from({ length }).fill(0); @@ -5826,10 +5447,12 @@ zoo`.split("\n"); return arr; } function isBytes(item) { - if (!(item instanceof Uint8Array)) throw new Error("Uint8Array expected"); + if (!(item instanceof Uint8Array)) + throw new Error("Uint8Array expected"); } function isNum(item) { - if (!Number.isSafeInteger(item)) throw new Error("number expected"); + if (!Number.isSafeInteger(item)) + throw new Error("number expected"); } function expand_message_xmd(msg, DST, lenInBytes, H) { isBytes(msg); @@ -5839,7 +5462,8 @@ zoo`.split("\n"); DST = H(concatBytes2(utf8ToBytes2("H2C-OVERSIZE-DST-"), DST)); const { outputLen: b_in_bytes, blockLen: r_in_bytes } = H; const ell = Math.ceil(lenInBytes / b_in_bytes); - if (ell > 255) throw new Error("Invalid xmd length"); + if (ell > 255) + throw new Error("Invalid xmd length"); const DST_prime = concatBytes2(DST, i2osp(DST.length, 1)); const Z_pad = i2osp(0, r_in_bytes); const l_i_b_str = i2osp(lenInBytes, 2); @@ -5858,20 +5482,12 @@ zoo`.split("\n"); isBytes(DST); isNum(lenInBytes); if (DST.length > 255) { - const dkLen = Math.ceil((2 * k) / 8); - DST = H.create({ dkLen }) - .update(utf8ToBytes2("H2C-OVERSIZE-DST-")) - .update(DST) - .digest(); + const dkLen = Math.ceil(2 * k / 8); + DST = H.create({ dkLen }).update(utf8ToBytes2("H2C-OVERSIZE-DST-")).update(DST).digest(); } if (lenInBytes > 65535 || DST.length > 255) throw new Error("expand_message_xof: invalid lenInBytes"); - return H.create({ dkLen: lenInBytes }) - .update(msg) - .update(i2osp(lenInBytes, 2)) - .update(DST) - .update(i2osp(DST.length, 1)) - .digest(); + return H.create({ dkLen: lenInBytes }).update(msg).update(i2osp(lenInBytes, 2)).update(DST).update(i2osp(DST.length, 1)).digest(); } function hash_to_field(msg, count, options) { validateObject(options, { @@ -5879,7 +5495,7 @@ zoo`.split("\n"); p: "bigint", m: "isSafeInteger", k: "isSafeInteger", - hash: "hash", + hash: "hash" }); const { p, k, m, hash: hash2, expand, DST: _DST } = options; isBytes(msg); @@ -5913,9 +5529,7 @@ zoo`.split("\n"); function isogenyMap(field, map) { const COEFF = map.map((i) => Array.from(i).reverse()); return (x, y) => { - const [xNum, xDen, yNum, yDen] = COEFF.map((val) => - val.reduce((acc, i) => field.add(field.mul(acc, x), i)) - ); + const [xNum, xDen, yNum, yDen] = COEFF.map((val) => val.reduce((acc, i) => field.add(field.mul(acc, x), i))); x = field.div(xNum, xDen); y = field.mul(y, field.div(yNum, yDen)); return { x, y }; @@ -5934,15 +5548,11 @@ zoo`.split("\n"); return P; }, encodeToCurve(msg, options) { - const u = hash_to_field(msg, 1, { - ...def, - DST: def.encodeDST, - ...options, - }); + const u = hash_to_field(msg, 1, { ...def, DST: def.encodeDST, ...options }); const P = Point3.fromAffine(mapToCurve(u[0])).clearCofactor(); P.assertValidity(); return P; - }, + } }; } @@ -5960,20 +5570,18 @@ zoo`.split("\n"); const key = toBytes(_key); this.iHash = hash2.create(); if (typeof this.iHash.update !== "function") - throw new TypeError( - "Expected instance of class which extends utils.Hash" - ); + throw new TypeError("Expected instance of class which extends utils.Hash"); this.blockLen = this.iHash.blockLen; this.outputLen = this.iHash.outputLen; const blockLen = this.blockLen; const pad = new Uint8Array(blockLen); - pad.set( - key.length > blockLen ? hash2.create().update(key).digest() : key - ); - for (let i = 0; i < pad.length; i++) pad[i] ^= 54; + pad.set(key.length > blockLen ? hash2.create().update(key).digest() : key); + for (let i = 0; i < pad.length; i++) + pad[i] ^= 54; this.iHash.update(pad); this.oHash = hash2.create(); - for (let i = 0; i < pad.length; i++) pad[i] ^= 54 ^ 92; + for (let i = 0; i < pad.length; i++) + pad[i] ^= 54 ^ 92; this.oHash.update(pad); pad.fill(0); } @@ -6014,8 +5622,7 @@ zoo`.split("\n"); this.iHash.destroy(); } }; - var hmac = (hash2, key, message) => - new HMAC(hash2, key).update(message).digest(); + var hmac = (hash2, key, message) => new HMAC(hash2, key).update(message).digest(); hmac.create = (hash2, key) => new HMAC(hash2, key); // node_modules/@noble/curves/esm/_shortw_utils.js @@ -6023,7 +5630,7 @@ zoo`.split("\n"); return { hash: hash2, hmac: (key, ...msgs) => hmac(hash2, key, concatBytes(...msgs)), - randomBytes, + randomBytes }; } function createCurve(curveDef, defHash) { @@ -6032,84 +5639,69 @@ zoo`.split("\n"); } // node_modules/@noble/curves/esm/secp256k1.js - var secp256k1P = BigInt( - "0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f" - ); - var secp256k1N = BigInt( - "0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141" - ); + var secp256k1P = BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"); + var secp256k1N = BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"); var _1n5 = BigInt(1); var _2n4 = BigInt(2); var divNearest = (a, b) => (a + b / _2n4) / b; function sqrtMod(y) { const P = secp256k1P; - const _3n3 = BigInt(3), - _6n = BigInt(6), - _11n = BigInt(11), - _22n = BigInt(22); - const _23n = BigInt(23), - _44n = BigInt(44), - _88n = BigInt(88); - const b2 = (y * y * y) % P; - const b3 = (b2 * b2 * y) % P; - const b6 = (pow2(b3, _3n3, P) * b3) % P; - const b9 = (pow2(b6, _3n3, P) * b3) % P; - const b11 = (pow2(b9, _2n4, P) * b2) % P; - const b22 = (pow2(b11, _11n, P) * b11) % P; - const b44 = (pow2(b22, _22n, P) * b22) % P; - const b88 = (pow2(b44, _44n, P) * b44) % P; - const b176 = (pow2(b88, _88n, P) * b88) % P; - const b220 = (pow2(b176, _44n, P) * b44) % P; - const b223 = (pow2(b220, _3n3, P) * b3) % P; - const t1 = (pow2(b223, _23n, P) * b22) % P; - const t2 = (pow2(t1, _6n, P) * b2) % P; + const _3n3 = BigInt(3), _6n = BigInt(6), _11n = BigInt(11), _22n = BigInt(22); + const _23n = BigInt(23), _44n = BigInt(44), _88n = BigInt(88); + const b2 = y * y * y % P; + const b3 = b2 * b2 * y % P; + const b6 = pow2(b3, _3n3, P) * b3 % P; + const b9 = pow2(b6, _3n3, P) * b3 % P; + const b11 = pow2(b9, _2n4, P) * b2 % P; + const b22 = pow2(b11, _11n, P) * b11 % P; + const b44 = pow2(b22, _22n, P) * b22 % P; + const b88 = pow2(b44, _44n, P) * b44 % P; + const b176 = pow2(b88, _88n, P) * b88 % P; + const b220 = pow2(b176, _44n, P) * b44 % P; + const b223 = pow2(b220, _3n3, P) * b3 % P; + const t1 = pow2(b223, _23n, P) * b22 % P; + const t2 = pow2(t1, _6n, P) * b2 % P; const root = pow2(t2, _2n4, P); - if (!Fp.eql(Fp.sqr(root), y)) throw new Error("Cannot find square root"); + if (!Fp.eql(Fp.sqr(root), y)) + throw new Error("Cannot find square root"); return root; } var Fp = Field(secp256k1P, void 0, void 0, { sqrt: sqrtMod }); - var secp256k1 = createCurve( - { - a: BigInt(0), - b: BigInt(7), - Fp, - n: secp256k1N, - Gx: BigInt( - "55066263022277343669578718895168534326250603453777594175500187360389116729240" - ), - Gy: BigInt( - "32670510020758816978083085130507043184471273380659243275938904335757337482424" - ), - h: BigInt(1), - lowS: true, - endo: { - beta: BigInt( - "0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee" - ), - splitScalar: (k) => { - const n = secp256k1N; - const a1 = BigInt("0x3086d221a7d46bcde86c90e49284eb15"); - const b1 = -_1n5 * BigInt("0xe4437ed6010e88286f547fa90abfe4c3"); - const a2 = BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"); - const b2 = a1; - const POW_2_128 = BigInt("0x100000000000000000000000000000000"); - const c1 = divNearest(b2 * k, n); - const c2 = divNearest(-b1 * k, n); - let k1 = mod(k - c1 * a1 - c2 * a2, n); - let k2 = mod(-c1 * b1 - c2 * b2, n); - const k1neg = k1 > POW_2_128; - const k2neg = k2 > POW_2_128; - if (k1neg) k1 = n - k1; - if (k2neg) k2 = n - k2; - if (k1 > POW_2_128 || k2 > POW_2_128) { - throw new Error("splitScalar: Endomorphism failed, k=" + k); - } - return { k1neg, k1, k2neg, k2 }; - }, - }, - }, - sha256 - ); + var secp256k1 = createCurve({ + a: BigInt(0), + b: BigInt(7), + Fp, + n: secp256k1N, + Gx: BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"), + Gy: BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"), + h: BigInt(1), + lowS: true, + endo: { + beta: BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"), + splitScalar: (k) => { + const n = secp256k1N; + const a1 = BigInt("0x3086d221a7d46bcde86c90e49284eb15"); + const b1 = -_1n5 * BigInt("0xe4437ed6010e88286f547fa90abfe4c3"); + const a2 = BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"); + const b2 = a1; + const POW_2_128 = BigInt("0x100000000000000000000000000000000"); + const c1 = divNearest(b2 * k, n); + const c2 = divNearest(-b1 * k, n); + let k1 = mod(k - c1 * a1 - c2 * a2, n); + let k2 = mod(-c1 * b1 - c2 * b2, n); + const k1neg = k1 > POW_2_128; + const k2neg = k2 > POW_2_128; + if (k1neg) + k1 = n - k1; + if (k2neg) + k2 = n - k2; + if (k1 > POW_2_128 || k2 > POW_2_128) { + throw new Error("splitScalar: Endomorphism failed, k=" + k); + } + return { k1neg, k1, k2neg, k2 }; + } + } + }, sha256); var _0n5 = BigInt(0); var fe = (x) => typeof x === "bigint" && _0n5 < x && x < secp256k1P; var ge = (x) => typeof x === "bigint" && _0n5 < x && x < secp256k1N; @@ -6136,11 +5728,13 @@ zoo`.split("\n"); return { scalar, bytes: pointToBytes(p) }; } function lift_x(x) { - if (!fe(x)) throw new Error("bad x: need 0 < x < p"); + if (!fe(x)) + throw new Error("bad x: need 0 < x < p"); const xx = modP(x * x); const c = modP(xx * x + BigInt(7)); let y = sqrtMod(c); - if (y % _2n4 !== _0n5) y = modP(-y); + if (y % _2n4 !== _0n5) + y = modP(-y); const p = new Point(x, y, _1n5); p.assertValidity(); return p; @@ -6158,7 +5752,8 @@ zoo`.split("\n"); const t = numTo32b(d ^ bytesToNumberBE(taggedHash("BIP0340/aux", a))); const rand = taggedHash("BIP0340/nonce", t, px, m); const k_ = modN(bytesToNumberBE(rand)); - if (k_ === _0n5) throw new Error("sign failed: k is zero"); + if (k_ === _0n5) + throw new Error("sign failed: k is zero"); const { bytes: rx, scalar: k } = schnorrGetExtPubKey(k_); const e = challenge(rx, px, m); const sig = new Uint8Array(64); @@ -6175,12 +5770,15 @@ zoo`.split("\n"); try { const P = lift_x(bytesToNumberBE(pub)); const r = bytesToNumberBE(sig.subarray(0, 32)); - if (!fe(r)) return false; + if (!fe(r)) + return false; const s = bytesToNumberBE(sig.subarray(32, 64)); - if (!ge(s)) return false; + if (!ge(s)) + return false; const e = challenge(numTo32b(r), pointToBytes(P), m); const R = GmulAdd(P, s, modN(-e)); - if (!R || !R.hasEvenY() || R.toAffine().x !== r) return false; + if (!R || !R.hasEvenY() || R.toAffine().x !== r) + return false; return true; } catch (error) { return false; @@ -6197,60 +5795,51 @@ zoo`.split("\n"); numberToBytesBE, bytesToNumberBE, taggedHash, - mod, - }, + mod + } }; - var isoMap = isogenyMap( - Fp, + var isoMap = isogenyMap(Fp, [ [ - [ - "0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7", - "0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581", - "0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262", - "0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c", - ], - [ - "0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b", - "0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14", - "0x0000000000000000000000000000000000000000000000000000000000000001", - ], - [ - "0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c", - "0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3", - "0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931", - "0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84", - ], - [ - "0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b", - "0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573", - "0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f", - "0x0000000000000000000000000000000000000000000000000000000000000001", - ], - ].map((i) => i.map((j) => BigInt(j))) - ); + "0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7", + "0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581", + "0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262", + "0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c" + ], + [ + "0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b", + "0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14", + "0x0000000000000000000000000000000000000000000000000000000000000001" + ], + [ + "0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c", + "0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3", + "0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931", + "0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84" + ], + [ + "0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b", + "0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573", + "0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f", + "0x0000000000000000000000000000000000000000000000000000000000000001" + ] + ].map((i) => i.map((j) => BigInt(j)))); var mapSWU = mapToCurveSimpleSWU(Fp, { - A: BigInt( - "0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533" - ), + A: BigInt("0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533"), B: BigInt("1771"), - Z: Fp.create(BigInt("-11")), + Z: Fp.create(BigInt("-11")) + }); + var { hashToCurve, encodeToCurve } = createHasher(secp256k1.ProjectivePoint, (scalars) => { + const { x, y } = mapSWU(Fp.create(scalars[0])); + return isoMap(x, y); + }, { + DST: "secp256k1_XMD:SHA-256_SSWU_RO_", + encodeDST: "secp256k1_XMD:SHA-256_SSWU_NU_", + p: Fp.ORDER, + m: 1, + k: 128, + expand: "xmd", + hash: sha256 }); - var { hashToCurve, encodeToCurve } = createHasher( - secp256k1.ProjectivePoint, - (scalars) => { - const { x, y } = mapSWU(Fp.create(scalars[0])); - return isoMap(x, y); - }, - { - DST: "secp256k1_XMD:SHA-256_SSWU_RO_", - encodeDST: "secp256k1_XMD:SHA-256_SSWU_NU_", - p: Fp.ORDER, - m: 1, - k: 128, - expand: "xmd", - hash: sha256, - } - ); // keys.ts function generatePrivateKey() { @@ -6275,7 +5864,7 @@ zoo`.split("\n"); insertEventIntoDescendingList: () => insertEventIntoDescendingList, normalizeURL: () => normalizeURL, utf8Decoder: () => utf8Decoder, - utf8Encoder: () => utf8Encoder, + utf8Encoder: () => utf8Encoder }); init_define_process(); var utf8Decoder = new TextDecoder("utf-8"); @@ -6283,11 +5872,9 @@ zoo`.split("\n"); function normalizeURL(url) { let p = new URL(url); p.pathname = p.pathname.replace(/\/+/g, "/"); - if (p.pathname.endsWith("/")) p.pathname = p.pathname.slice(0, -1); - if ( - (p.port === "80" && p.protocol === "ws:") || - (p.port === "443" && p.protocol === "wss:") - ) + if (p.pathname.endsWith("/")) + p.pathname = p.pathname.slice(0, -1); + if (p.port === "80" && p.protocol === "ws:" || p.port === "443" && p.protocol === "wss:") p.port = ""; p.searchParams.sort(); p.hash = ""; @@ -6324,7 +5911,7 @@ zoo`.split("\n"); return [ ...sortedArray.slice(0, position), event, - ...sortedArray.slice(position), + ...sortedArray.slice(position) ]; } return sortedArray; @@ -6360,7 +5947,7 @@ zoo`.split("\n"); return [ ...sortedArray.slice(0, position), event, - ...sortedArray.slice(position), + ...sortedArray.slice(position) ]; } return sortedArray; @@ -6425,7 +6012,8 @@ zoo`.split("\n"); return true; } dequeue() { - if (this._size === 0 || !this._first) return null; + if (this._size === 0 || !this._first) + return null; let prev = this._first; this._first = prev.next; prev.next = null; @@ -6436,30 +6024,30 @@ zoo`.split("\n"); // event.ts var Kind = /* @__PURE__ */ ((Kind3) => { - Kind3[(Kind3["Metadata"] = 0)] = "Metadata"; - Kind3[(Kind3["Text"] = 1)] = "Text"; - Kind3[(Kind3["RecommendRelay"] = 2)] = "RecommendRelay"; - Kind3[(Kind3["Contacts"] = 3)] = "Contacts"; - Kind3[(Kind3["EncryptedDirectMessage"] = 4)] = "EncryptedDirectMessage"; - Kind3[(Kind3["EventDeletion"] = 5)] = "EventDeletion"; - Kind3[(Kind3["Repost"] = 6)] = "Repost"; - Kind3[(Kind3["Reaction"] = 7)] = "Reaction"; - Kind3[(Kind3["BadgeAward"] = 8)] = "BadgeAward"; - Kind3[(Kind3["ChannelCreation"] = 40)] = "ChannelCreation"; - Kind3[(Kind3["ChannelMetadata"] = 41)] = "ChannelMetadata"; - Kind3[(Kind3["ChannelMessage"] = 42)] = "ChannelMessage"; - Kind3[(Kind3["ChannelHideMessage"] = 43)] = "ChannelHideMessage"; - Kind3[(Kind3["ChannelMuteUser"] = 44)] = "ChannelMuteUser"; - Kind3[(Kind3["Blank"] = 255)] = "Blank"; - Kind3[(Kind3["Report"] = 1984)] = "Report"; - Kind3[(Kind3["ZapRequest"] = 9734)] = "ZapRequest"; - Kind3[(Kind3["Zap"] = 9735)] = "Zap"; - Kind3[(Kind3["RelayList"] = 10002)] = "RelayList"; - Kind3[(Kind3["ClientAuth"] = 22242)] = "ClientAuth"; - Kind3[(Kind3["HttpAuth"] = 27235)] = "HttpAuth"; - Kind3[(Kind3["ProfileBadge"] = 30008)] = "ProfileBadge"; - Kind3[(Kind3["BadgeDefinition"] = 30009)] = "BadgeDefinition"; - Kind3[(Kind3["Article"] = 30023)] = "Article"; + Kind3[Kind3["Metadata"] = 0] = "Metadata"; + Kind3[Kind3["Text"] = 1] = "Text"; + Kind3[Kind3["RecommendRelay"] = 2] = "RecommendRelay"; + Kind3[Kind3["Contacts"] = 3] = "Contacts"; + Kind3[Kind3["EncryptedDirectMessage"] = 4] = "EncryptedDirectMessage"; + Kind3[Kind3["EventDeletion"] = 5] = "EventDeletion"; + Kind3[Kind3["Repost"] = 6] = "Repost"; + Kind3[Kind3["Reaction"] = 7] = "Reaction"; + Kind3[Kind3["BadgeAward"] = 8] = "BadgeAward"; + Kind3[Kind3["ChannelCreation"] = 40] = "ChannelCreation"; + Kind3[Kind3["ChannelMetadata"] = 41] = "ChannelMetadata"; + Kind3[Kind3["ChannelMessage"] = 42] = "ChannelMessage"; + Kind3[Kind3["ChannelHideMessage"] = 43] = "ChannelHideMessage"; + Kind3[Kind3["ChannelMuteUser"] = 44] = "ChannelMuteUser"; + Kind3[Kind3["Blank"] = 255] = "Blank"; + Kind3[Kind3["Report"] = 1984] = "Report"; + Kind3[Kind3["ZapRequest"] = 9734] = "ZapRequest"; + Kind3[Kind3["Zap"] = 9735] = "Zap"; + Kind3[Kind3["RelayList"] = 10002] = "RelayList"; + Kind3[Kind3["ClientAuth"] = 22242] = "ClientAuth"; + Kind3[Kind3["HttpAuth"] = 27235] = "HttpAuth"; + Kind3[Kind3["ProfileBadge"] = 30008] = "ProfileBadge"; + Kind3[Kind3["BadgeDefinition"] = 30009] = "BadgeDefinition"; + Kind3[Kind3["Article"] = 30023] = "Article"; return Kind3; })(Kind || {}); function getBlankEvent(kind = 255 /* Blank */) { @@ -6467,7 +6055,7 @@ zoo`.split("\n"); kind, content: "", tags: [], - created_at: 0, + created_at: 0 }; } function finishEvent(t, privateKey) { @@ -6486,7 +6074,7 @@ zoo`.split("\n"); evt.created_at, evt.kind, evt.tags, - evt.content, + evt.content ]); } function getEventHash(event) { @@ -6495,18 +6083,27 @@ zoo`.split("\n"); } var isRecord = (obj) => obj instanceof Object; function validateEvent(event) { - if (!isRecord(event)) return false; - if (typeof event.kind !== "number") return false; - if (typeof event.content !== "string") return false; - if (typeof event.created_at !== "number") return false; - if (typeof event.pubkey !== "string") return false; - if (!event.pubkey.match(/^[a-f0-9]{64}$/)) return false; - if (!Array.isArray(event.tags)) return false; + if (!isRecord(event)) + return false; + if (typeof event.kind !== "number") + return false; + if (typeof event.content !== "string") + return false; + if (typeof event.created_at !== "number") + return false; + if (typeof event.pubkey !== "string") + return false; + if (!event.pubkey.match(/^[a-f0-9]{64}$/)) + return false; + if (!Array.isArray(event.tags)) + return false; for (let i = 0; i < event.tags.length; i++) { let tag = event.tags[i]; - if (!Array.isArray(tag)) return false; + if (!Array.isArray(tag)) + return false; for (let j = 0; j < tag.length; j++) { - if (typeof tag[j] === "object") return false; + if (typeof tag[j] === "object") + return false; } } return true; @@ -6536,7 +6133,8 @@ zoo`.split("\n"); return false; } } - if (filter.kinds && filter.kinds.indexOf(event.kind) === -1) return false; + if (filter.kinds && filter.kinds.indexOf(event.kind) === -1) + return false; if (filter.authors && filter.authors.indexOf(event.pubkey) === -1) { if (!filter.authors.some((prefix) => event.pubkey.startsWith(prefix))) { return false; @@ -6546,22 +6144,22 @@ zoo`.split("\n"); if (f2[0] === "#") { let tagName = f2.slice(1); let values = filter[`#${tagName}`]; - if ( - values && - !event.tags.find( - ([t, v]) => t === f2.slice(1) && values.indexOf(v) !== -1 - ) - ) + if (values && !event.tags.find( + ([t, v]) => t === f2.slice(1) && values.indexOf(v) !== -1 + )) return false; } } - if (filter.since && event.created_at < filter.since) return false; - if (filter.until && event.created_at > filter.until) return false; + if (filter.since && event.created_at < filter.since) + return false; + if (filter.until && event.created_at > filter.until) + return false; return true; } function matchFilters(filters, event) { for (let i = 0; i < filters.length; i++) { - if (matchFilter(filters[i], event)) return true; + if (matchFilter(filters[i], event)) + return true; } return false; } @@ -6570,16 +6168,12 @@ zoo`.split("\n"); for (let i = 0; i < filters.length; i++) { let filter = filters[i]; Object.entries(filter).forEach(([property, values]) => { - if ( - property === "kinds" || - property === "ids" || - property === "authors" || - property[0] === "#" - ) { + if (property === "kinds" || property === "ids" || property === "authors" || property[0] === "#") { result[property] = result[property] || []; for (let v = 0; v < values.length; v++) { let value = values[v]; - if (!result[property].includes(value)) result[property].push(value); + if (!result[property].includes(value)) + result[property].push(value); } } }); @@ -6601,7 +6195,7 @@ zoo`.split("\n"); getSubscriptionId: () => getSubscriptionId, matchEventId: () => matchEventId, matchEventKind: () => matchEventKind, - matchEventPubkey: () => matchEventPubkey, + matchEventPubkey: () => matchEventPubkey }); init_define_process(); function getHex64(json, field) { @@ -6619,12 +6213,15 @@ zoo`.split("\n"); } function getSubscriptionId(json) { let idx = json.slice(0, 22).indexOf(`"EVENT"`); - if (idx === -1) return null; + if (idx === -1) + return null; let pstart = json.slice(idx + 7 + 1).indexOf(`"`); - if (pstart === -1) return null; + if (pstart === -1) + return null; let start = idx + 7 + 1 + pstart; let pend = json.slice(start + 1, 80).indexOf(`"`); - if (pend === -1) return null; + if (pend === -1) + return null; let end = start + 1 + pend; return json.slice(start + 1, end); } @@ -6644,7 +6241,7 @@ zoo`.split("\n"); disconnect: [], error: [], notice: [], - auth: [], + auth: [] }); function relayInit(url, options = {}) { let { listTimeout = 3e3, getTimeout = 3e3, countTimeout = 3e3 } = options; @@ -6655,7 +6252,8 @@ zoo`.split("\n"); var pubListeners = {}; var connectionPromise; async function connectRelay() { - if (connectionPromise) return connectionPromise; + if (connectionPromise) + return connectionPromise; connectionPromise = new Promise((resolve, reject) => { try { ws = new WebSocket(url); @@ -6690,15 +6288,12 @@ zoo`.split("\n"); return; } var json = incomingMessageQueue.dequeue(); - if (!json) return; + if (!json) + return; let subid = getSubscriptionId(json); if (subid) { let so = openSubs[subid]; - if ( - so && - so.alreadyHaveEvent && - so.alreadyHaveEvent(getHex64(json, "id"), url) - ) { + if (so && so.alreadyHaveEvent && so.alreadyHaveEvent(getHex64(json, "id"), url)) { return; } } @@ -6708,12 +6303,7 @@ zoo`.split("\n"); case "EVENT": { let id2 = data[1]; let event = data[2]; - if ( - validateEvent(event) && - openSubs[id2] && - (openSubs[id2].skipVerification || verifySignature(event)) && - matchFilters(openSubs[id2].filters, event) - ) { + if (validateEvent(event) && openSubs[id2] && (openSubs[id2].skipVerification || verifySignature(event)) && matchFilters(openSubs[id2].filters, event)) { openSubs[id2]; (subListeners[id2]?.event || []).forEach((cb) => cb(event)); } @@ -6723,6 +6313,7 @@ zoo`.split("\n"); let id = data[1]; let payload = data[2]; if (openSubs[id]) { + ; (subListeners[id]?.count || []).forEach((cb) => cb(payload)); } return; @@ -6739,8 +6330,10 @@ zoo`.split("\n"); let ok = data[2]; let reason = data[3] || ""; if (id2 in pubListeners) { - if (ok) pubListeners[id2].ok.forEach((cb) => cb()); - else pubListeners[id2].failed.forEach((cb) => cb(reason)); + if (ok) + pubListeners[id2].ok.forEach((cb) => cb()); + else + pubListeners[id2].failed.forEach((cb) => cb(reason)); pubListeners[id2].ok = []; pubListeners[id2].failed = []; } @@ -6767,7 +6360,8 @@ zoo`.split("\n"); return ws?.readyState === 1; } async function connect() { - if (connected()) return; + if (connected()) + return; await connectRelay(); } async function trySend(params) { @@ -6784,30 +6378,26 @@ zoo`.split("\n"); console.log(err); } } - const sub = ( - filters, - { - verb = "REQ", - skipVerification = false, - alreadyHaveEvent = null, - id = Math.random().toString().slice(2), - } = {} - ) => { + const sub = (filters, { + verb = "REQ", + skipVerification = false, + alreadyHaveEvent = null, + id = Math.random().toString().slice(2) + } = {}) => { let subid = id; openSubs[subid] = { id: subid, filters, skipVerification, - alreadyHaveEvent, + alreadyHaveEvent }; trySend([verb, subid, ...filters]); return { - sub: (newFilters, newOpts = {}) => - sub(newFilters || filters, { - skipVerification: newOpts.skipVerification || skipVerification, - alreadyHaveEvent: newOpts.alreadyHaveEvent || alreadyHaveEvent, - id: subid, - }), + sub: (newFilters, newOpts = {}) => sub(newFilters || filters, { + skipVerification: newOpts.skipVerification || skipVerification, + alreadyHaveEvent: newOpts.alreadyHaveEvent || alreadyHaveEvent, + id: subid + }), unsub: () => { delete openSubs[subid]; delete subListeners[subid]; @@ -6817,35 +6407,39 @@ zoo`.split("\n"); subListeners[subid] = subListeners[subid] || { event: [], count: [], - eose: [], + eose: [] }; subListeners[subid][type].push(cb); }, off: (type, cb) => { let listeners2 = subListeners[subid]; let idx = listeners2[type].indexOf(cb); - if (idx >= 0) listeners2[type].splice(idx, 1); - }, + if (idx >= 0) + listeners2[type].splice(idx, 1); + } }; }; function _publishEvent(event, type) { - if (!event.id) throw new Error(`event ${event} has no id`); + if (!event.id) + throw new Error(`event ${event} has no id`); let id = event.id; trySend([type, event]); return { on: (type2, cb) => { pubListeners[id] = pubListeners[id] || { ok: [], - failed: [], + failed: [] }; pubListeners[id][type2].push(cb); }, off: (type2, cb) => { let listeners2 = pubListeners[id]; - if (!listeners2) return; + if (!listeners2) + return; let idx = listeners2[type2].indexOf(cb); - if (idx >= 0) listeners2[type2].splice(idx, 1); - }, + if (idx >= 0) + listeners2[type2].splice(idx, 1); + } }; } return { @@ -6854,56 +6448,55 @@ zoo`.split("\n"); on: (type, cb) => { listeners[type].push(cb); if (type === "connect" && ws?.readyState === 1) { + ; cb(); } }, off: (type, cb) => { let index = listeners[type].indexOf(cb); - if (index !== -1) listeners[type].splice(index, 1); + if (index !== -1) + listeners[type].splice(index, 1); }, - list: (filters, opts) => - new Promise((resolve) => { - let s = sub(filters, opts); - let events = []; - let timeout = setTimeout(() => { - s.unsub(); - resolve(events); - }, listTimeout); - s.on("eose", () => { - s.unsub(); - clearTimeout(timeout); - resolve(events); - }); - s.on("event", (event) => { - events.push(event); - }); - }), - get: (filter, opts) => - new Promise((resolve) => { - let s = sub([filter], opts); - let timeout = setTimeout(() => { - s.unsub(); - resolve(null); - }, getTimeout); - s.on("event", (event) => { - s.unsub(); - clearTimeout(timeout); - resolve(event); - }); - }), - count: (filters) => - new Promise((resolve) => { - let s = sub(filters, { ...sub, verb: "COUNT" }); - let timeout = setTimeout(() => { - s.unsub(); - resolve(null); - }, countTimeout); - s.on("count", (event) => { - s.unsub(); - clearTimeout(timeout); - resolve(event); - }); - }), + list: (filters, opts) => new Promise((resolve) => { + let s = sub(filters, opts); + let events = []; + let timeout = setTimeout(() => { + s.unsub(); + resolve(events); + }, listTimeout); + s.on("eose", () => { + s.unsub(); + clearTimeout(timeout); + resolve(events); + }); + s.on("event", (event) => { + events.push(event); + }); + }), + get: (filter, opts) => new Promise((resolve) => { + let s = sub([filter], opts); + let timeout = setTimeout(() => { + s.unsub(); + resolve(null); + }, getTimeout); + s.on("event", (event) => { + s.unsub(); + clearTimeout(timeout); + resolve(event); + }); + }), + count: (filters) => new Promise((resolve) => { + let s = sub(filters, { ...sub, verb: "COUNT" }); + let timeout = setTimeout(() => { + s.unsub(); + resolve(null); + }, countTimeout); + s.on("count", (event) => { + s.unsub(); + clearTimeout(timeout); + resolve(event); + }); + }), publish(event) { return _publishEvent(event, "EVENT"); }, @@ -6921,7 +6514,7 @@ zoo`.split("\n"); }, get status() { return ws?.readyState ?? 3; - }, + } }; } @@ -6942,7 +6535,8 @@ zoo`.split("\n"); close(relays) { relays.forEach((url) => { let relay = this._conn[normalizeURL(url)]; - if (relay) relay.close(); + if (relay) + relay.close(); }); } async ensureRelay(url) { @@ -6950,7 +6544,7 @@ zoo`.split("\n"); if (!this._conn[nm]) { this._conn[nm] = relayInit(nm, { getTimeout: this.getTimeout * 0.9, - listTimeout: this.getTimeout * 0.9, + listTimeout: this.getTimeout * 0.9 }); } const relay = this._conn[nm]; @@ -6959,7 +6553,7 @@ zoo`.split("\n"); } sub(relays, filters, opts) { let _knownIds = /* @__PURE__ */ new Set(); - let modifiedOpts = { ...(opts || {}) }; + let modifiedOpts = { ...opts || {} }; modifiedOpts.alreadyHaveEvent = (id, url) => { if (opts?.alreadyHaveEvent?.(id, url)) { return true; @@ -6978,7 +6572,8 @@ zoo`.split("\n"); let eoseSent = false; let eoseTimeout = setTimeout(() => { eoseSent = true; - for (let cb of eoseListeners.values()) cb(); + for (let cb of eoseListeners.values()) + cb(); }, this.eoseSubTimeout); relays.forEach(async (relay) => { let r; @@ -6988,14 +6583,17 @@ zoo`.split("\n"); handleEose(); return; } - if (!r) return; + if (!r) + return; let s = r.sub(filters, modifiedOpts); s.on("event", (event) => { _knownIds.add(event.id); - for (let cb of eventListeners.values()) cb(event); + for (let cb of eventListeners.values()) + cb(event); }); s.on("eose", () => { - if (eoseSent) return; + if (eoseSent) + return; handleEose(); }); subs.push(s); @@ -7003,7 +6601,8 @@ zoo`.split("\n"); eosesMissing--; if (eosesMissing === 0) { clearTimeout(eoseTimeout); - for (let cb of eoseListeners.values()) cb(); + for (let cb of eoseListeners.values()) + cb(); } } }); @@ -7025,8 +6624,9 @@ zoo`.split("\n"); off(type, cb) { if (type === "event") { eventListeners.delete(cb); - } else if (type === "eose") eoseListeners.delete(cb); - }, + } else if (type === "eose") + eoseListeners.delete(cb); + } }; return greaterSub; } @@ -7064,7 +6664,9 @@ zoo`.split("\n"); r = await this.ensureRelay(relay); return r.publish(event); } catch (_) { - return { on() {}, off() {} }; + return { on() { + }, off() { + } }; } }); const callbackMap = /* @__PURE__ */ new Map(); @@ -7085,7 +6687,7 @@ zoo`.split("\n"); pub.off(type, callback); } }); - }, + } }; } seenOn(id) { @@ -7107,62 +6709,46 @@ zoo`.split("\n"); nprofileEncode: () => nprofileEncode, npubEncode: () => npubEncode, nrelayEncode: () => nrelayEncode, - nsecEncode: () => nsecEncode, + nsecEncode: () => nsecEncode }); init_define_process(); // node_modules/@scure/base/lib/esm/index.js init_define_process(); function assertNumber(n) { - if (!Number.isSafeInteger(n)) throw new Error(`Wrong integer: ${n}`); + if (!Number.isSafeInteger(n)) + throw new Error(`Wrong integer: ${n}`); } function chain(...args) { const wrap = (a, b) => (c) => a(b(c)); - const encode = Array.from(args) - .reverse() - .reduce((acc, i) => (acc ? wrap(acc, i.encode) : i.encode), void 0); - const decode2 = args.reduce( - (acc, i) => (acc ? wrap(acc, i.decode) : i.decode), - void 0 - ); + const encode = Array.from(args).reverse().reduce((acc, i) => acc ? wrap(acc, i.encode) : i.encode, void 0); + const decode2 = args.reduce((acc, i) => acc ? wrap(acc, i.decode) : i.decode, void 0); return { encode, decode: decode2 }; } function alphabet(alphabet2) { return { encode: (digits) => { - if ( - !Array.isArray(digits) || - (digits.length && typeof digits[0] !== "number") - ) - throw new Error( - "alphabet.encode input should be an array of numbers" - ); + if (!Array.isArray(digits) || digits.length && typeof digits[0] !== "number") + throw new Error("alphabet.encode input should be an array of numbers"); return digits.map((i) => { assertNumber(i); if (i < 0 || i >= alphabet2.length) - throw new Error( - `Digit index outside alphabet: ${i} (alphabet: ${alphabet2.length})` - ); + throw new Error(`Digit index outside alphabet: ${i} (alphabet: ${alphabet2.length})`); return alphabet2[i]; }); }, decode: (input) => { - if ( - !Array.isArray(input) || - (input.length && typeof input[0] !== "string") - ) + if (!Array.isArray(input) || input.length && typeof input[0] !== "string") throw new Error("alphabet.decode input should be array of strings"); return input.map((letter) => { if (typeof letter !== "string") throw new Error(`alphabet.decode: not string element=${letter}`); const index = alphabet2.indexOf(letter); if (index === -1) - throw new Error( - `Unknown letter: "${letter}". Allowed: ${alphabet2}` - ); + throw new Error(`Unknown letter: "${letter}". Allowed: ${alphabet2}`); return index; }); - }, + } }; } function join(separator = "") { @@ -7170,10 +6756,7 @@ zoo`.split("\n"); throw new Error("join separator should be string"); return { encode: (from) => { - if ( - !Array.isArray(from) || - (from.length && typeof from[0] !== "string") - ) + if (!Array.isArray(from) || from.length && typeof from[0] !== "string") throw new Error("join.encode input should be array of strings"); for (let i of from) if (typeof i !== "string") @@ -7184,7 +6767,7 @@ zoo`.split("\n"); if (typeof to !== "string") throw new Error("join.decode input should be string"); return to.split(separator); - }, + } }; } function padding(bits, chr = "=") { @@ -7193,37 +6776,30 @@ zoo`.split("\n"); throw new Error("padding chr should be string"); return { encode(data) { - if ( - !Array.isArray(data) || - (data.length && typeof data[0] !== "string") - ) + if (!Array.isArray(data) || data.length && typeof data[0] !== "string") throw new Error("padding.encode input should be array of strings"); for (let i of data) if (typeof i !== "string") throw new Error(`padding.encode: non-string input=${i}`); - while ((data.length * bits) % 8) data.push(chr); + while (data.length * bits % 8) + data.push(chr); return data; }, decode(input) { - if ( - !Array.isArray(input) || - (input.length && typeof input[0] !== "string") - ) + if (!Array.isArray(input) || input.length && typeof input[0] !== "string") throw new Error("padding.encode input should be array of strings"); for (let i of input) if (typeof i !== "string") throw new Error(`padding.decode: non-string input=${i}`); let end = input.length; - if ((end * bits) % 8) - throw new Error( - "Invalid padding: string should have whole number of bytes" - ); + if (end * bits % 8) + throw new Error("Invalid padding: string should have whole number of bytes"); for (; end > 0 && input[end - 1] === chr; end--) { - if (!(((end - 1) * bits) % 8)) + if (!((end - 1) * bits % 8)) throw new Error("Invalid padding: string has too much padding"); } return input.slice(0, end); - }, + } }; } function normalize(fn) { @@ -7233,22 +6809,20 @@ zoo`.split("\n"); } function convertRadix(data, from, to) { if (from < 2) - throw new Error( - `convertRadix: wrong from=${from}, base cannot be less than 2` - ); + throw new Error(`convertRadix: wrong from=${from}, base cannot be less than 2`); if (to < 2) - throw new Error( - `convertRadix: wrong to=${to}, base cannot be less than 2` - ); + throw new Error(`convertRadix: wrong to=${to}, base cannot be less than 2`); if (!Array.isArray(data)) throw new Error("convertRadix: data should be array"); - if (!data.length) return []; + if (!data.length) + return []; let pos = 0; const res = []; const digits = Array.from(data); digits.forEach((d) => { assertNumber(d); - if (d < 0 || d >= from) throw new Error(`Wrong integer: ${d}`); + if (d < 0 || d >= from) + throw new Error(`Wrong integer: ${d}`); }); while (true) { let carry = 0; @@ -7256,45 +6830,39 @@ zoo`.split("\n"); for (let i = pos; i < digits.length; i++) { const digit = digits[i]; const digitBase = from * carry + digit; - if ( - !Number.isSafeInteger(digitBase) || - (from * carry) / from !== carry || - digitBase - digit !== from * carry - ) { + if (!Number.isSafeInteger(digitBase) || from * carry / from !== carry || digitBase - digit !== from * carry) { throw new Error("convertRadix: carry overflow"); } carry = digitBase % to; digits[i] = Math.floor(digitBase / to); - if ( - !Number.isSafeInteger(digits[i]) || - digits[i] * to + carry !== digitBase - ) + if (!Number.isSafeInteger(digits[i]) || digits[i] * to + carry !== digitBase) throw new Error("convertRadix: carry overflow"); - if (!done) continue; - else if (!digits[i]) pos = i; - else done = false; + if (!done) + continue; + else if (!digits[i]) + pos = i; + else + done = false; } res.push(carry); - if (done) break; + if (done) + break; } - for (let i = 0; i < data.length - 1 && data[i] === 0; i++) res.push(0); + for (let i = 0; i < data.length - 1 && data[i] === 0; i++) + res.push(0); return res.reverse(); } - var gcd = (a, b) => (!b ? a : gcd(b, a % b)); + var gcd = (a, b) => !b ? a : gcd(b, a % b); var radix2carry = (from, to) => from + (to - gcd(from, to)); function convertRadix2(data, from, to, padding2) { if (!Array.isArray(data)) throw new Error("convertRadix2: data should be array"); if (from <= 0 || from > 32) throw new Error(`convertRadix2: wrong from=${from}`); - if (to <= 0 || to > 32) throw new Error(`convertRadix2: wrong to=${to}`); + if (to <= 0 || to > 32) + throw new Error(`convertRadix2: wrong to=${to}`); if (radix2carry(from, to) > 32) { - throw new Error( - `convertRadix2: carry overflow from=${from} to=${to} carryBits=${radix2carry( - from, - to - )}` - ); + throw new Error(`convertRadix2: carry overflow from=${from} to=${to} carryBits=${radix2carry(from, to)}`); } let carry = 0; let pos = 0; @@ -7304,20 +6872,21 @@ zoo`.split("\n"); assertNumber(n); if (n >= 2 ** from) throw new Error(`convertRadix2: invalid data word=${n} from=${from}`); - carry = (carry << from) | n; + carry = carry << from | n; if (pos + from > 32) - throw new Error( - `convertRadix2: carry overflow pos=${pos} from=${from}` - ); + throw new Error(`convertRadix2: carry overflow pos=${pos} from=${from}`); pos += from; for (; pos >= to; pos -= to) - res.push(((carry >> (pos - to)) & mask) >>> 0); + res.push((carry >> pos - to & mask) >>> 0); carry &= 2 ** pos - 1; } - carry = (carry << (to - pos)) & mask; - if (!padding2 && pos >= from) throw new Error("Excess padding"); - if (!padding2 && carry) throw new Error(`Non-zero padding: ${carry}`); - if (padding2 && pos > 0) res.push(carry >>> 0); + carry = carry << to - pos & mask; + if (!padding2 && pos >= from) + throw new Error("Excess padding"); + if (!padding2 && carry) + throw new Error(`Non-zero padding: ${carry}`); + if (padding2 && pos > 0) + res.push(carry >>> 0); return res; } function radix(num) { @@ -7329,13 +6898,10 @@ zoo`.split("\n"); return convertRadix(Array.from(bytes2), 2 ** 8, num); }, decode: (digits) => { - if ( - !Array.isArray(digits) || - (digits.length && typeof digits[0] !== "number") - ) + if (!Array.isArray(digits) || digits.length && typeof digits[0] !== "number") throw new Error("radix.decode input should be array of strings"); return Uint8Array.from(convertRadix(digits, num, 2 ** 8)); - }, + } }; } function radix2(bits, revPadding = false) { @@ -7351,22 +6917,20 @@ zoo`.split("\n"); return convertRadix2(Array.from(bytes2), 8, bits, !revPadding); }, decode: (digits) => { - if ( - !Array.isArray(digits) || - (digits.length && typeof digits[0] !== "number") - ) + if (!Array.isArray(digits) || digits.length && typeof digits[0] !== "number") throw new Error("radix2.decode input should be array of strings"); return Uint8Array.from(convertRadix2(digits, bits, 8, revPadding)); - }, + } }; } function unsafeWrapper(fn) { if (typeof fn !== "function") throw new Error("unsafeWrapper fn should be function"); - return function (...args) { + return function(...args) { try { return fn.apply(null, args); - } catch (e) {} + } catch (e) { + } }; } function checksum(len, fn) { @@ -7393,54 +6957,19 @@ zoo`.split("\n"); if (newChecksum[i] !== oldChecksum[i]) throw new Error("Invalid checksum"); return payload; - }, + } }; } var base16 = chain(radix2(4), alphabet("0123456789ABCDEF"), join("")); - var base32 = chain( - radix2(5), - alphabet("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"), - padding(5), - join("") - ); - var base32hex = chain( - radix2(5), - alphabet("0123456789ABCDEFGHIJKLMNOPQRSTUV"), - padding(5), - join("") - ); - var base32crockford = chain( - radix2(5), - alphabet("0123456789ABCDEFGHJKMNPQRSTVWXYZ"), - join(""), - normalize((s) => s.toUpperCase().replace(/O/g, "0").replace(/[IL]/g, "1")) - ); - var base64 = chain( - radix2(6), - alphabet( - "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" - ), - padding(6), - join("") - ); - var base64url = chain( - radix2(6), - alphabet( - "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_" - ), - padding(6), - join("") - ); + var base32 = chain(radix2(5), alphabet("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"), padding(5), join("")); + var base32hex = chain(radix2(5), alphabet("0123456789ABCDEFGHIJKLMNOPQRSTUV"), padding(5), join("")); + var base32crockford = chain(radix2(5), alphabet("0123456789ABCDEFGHJKMNPQRSTVWXYZ"), join(""), normalize((s) => s.toUpperCase().replace(/O/g, "0").replace(/[IL]/g, "1"))); + var base64 = chain(radix2(6), alphabet("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"), padding(6), join("")); + var base64url = chain(radix2(6), alphabet("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"), padding(6), join("")); var genBase58 = (abc) => chain(radix(58), alphabet(abc), join("")); - var base58 = genBase58( - "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz" - ); - var base58flickr = genBase58( - "123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ" - ); - var base58xrp = genBase58( - "rpshnaf39wBUDNEGHJKLM4PQRST7VWXYZ2bcdeCg65jkm8oFqi1tuvAxyz" - ); + var base58 = genBase58("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"); + var base58flickr = genBase58("123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"); + var base58xrp = genBase58("rpshnaf39wBUDNEGHJKLM4PQRST7VWXYZ2bcdeCg65jkm8oFqi1tuvAxyz"); var XMR_BLOCK_LEN = [0, 2, 3, 5, 6, 7, 9, 10, 11]; var base58xmr = { encode(data) { @@ -7458,30 +6987,23 @@ zoo`.split("\n"); const blockLen = XMR_BLOCK_LEN.indexOf(slice.length); const block = base58.decode(slice); for (let j = 0; j < block.length - blockLen; j++) { - if (block[j] !== 0) throw new Error("base58xmr: wrong padding"); + if (block[j] !== 0) + throw new Error("base58xmr: wrong padding"); } res = res.concat(Array.from(block.slice(block.length - blockLen))); } return Uint8Array.from(res); - }, + } }; - var base58check = (sha2562) => - chain( - checksum(4, (data) => sha2562(sha2562(data))), - base58 - ); - var BECH_ALPHABET = chain( - alphabet("qpzry9x8gf2tvdw0s3jn54khce6mua7l"), - join("") - ); - var POLYMOD_GENERATORS = [ - 996825010, 642813549, 513874426, 1027748829, 705979059, - ]; + var base58check = (sha2562) => chain(checksum(4, (data) => sha2562(sha2562(data))), base58); + var BECH_ALPHABET = chain(alphabet("qpzry9x8gf2tvdw0s3jn54khce6mua7l"), join("")); + var POLYMOD_GENERATORS = [996825010, 642813549, 513874426, 1027748829, 705979059]; function bech32Polymod(pre) { const b = pre >> 25; let chk = (pre & 33554431) << 5; for (let i = 0; i < POLYMOD_GENERATORS.length; i++) { - if (((b >> i) & 1) === 1) chk ^= POLYMOD_GENERATORS[i]; + if ((b >> i & 1) === 1) + chk ^= POLYMOD_GENERATORS[i]; } return chk; } @@ -7490,14 +7012,17 @@ zoo`.split("\n"); let chk = 1; for (let i = 0; i < len; i++) { const c = prefix.charCodeAt(i); - if (c < 33 || c > 126) throw new Error(`Invalid prefix (${prefix})`); - chk = bech32Polymod(chk) ^ (c >> 5); + if (c < 33 || c > 126) + throw new Error(`Invalid prefix (${prefix})`); + chk = bech32Polymod(chk) ^ c >> 5; } chk = bech32Polymod(chk); for (let i = 0; i < len; i++) - chk = bech32Polymod(chk) ^ (prefix.charCodeAt(i) & 31); - for (let v of words) chk = bech32Polymod(chk) ^ v; - for (let i = 0; i < 6; i++) chk = bech32Polymod(chk); + chk = bech32Polymod(chk) ^ prefix.charCodeAt(i) & 31; + for (let v of words) + chk = bech32Polymod(chk) ^ v; + for (let i = 0; i < 6; i++) + chk = bech32Polymod(chk); chk ^= encodingConst; return BECH_ALPHABET.encode(convertRadix2([chk % 2 ** 30], 30, 5, false)); } @@ -7509,44 +7034,27 @@ zoo`.split("\n"); const fromWordsUnsafe = unsafeWrapper(fromWords); function encode(prefix, words, limit = 90) { if (typeof prefix !== "string") - throw new Error( - `bech32.encode prefix should be string, not ${typeof prefix}` - ); - if ( - !Array.isArray(words) || - (words.length && typeof words[0] !== "number") - ) - throw new Error( - `bech32.encode words should be array of numbers, not ${typeof words}` - ); + throw new Error(`bech32.encode prefix should be string, not ${typeof prefix}`); + if (!Array.isArray(words) || words.length && typeof words[0] !== "number") + throw new Error(`bech32.encode words should be array of numbers, not ${typeof words}`); const actualLength = prefix.length + 7 + words.length; if (limit !== false && actualLength > limit) throw new TypeError(`Length ${actualLength} exceeds limit ${limit}`); prefix = prefix.toLowerCase(); - return `${prefix}1${BECH_ALPHABET.encode(words)}${bechChecksum( - prefix, - words, - ENCODING_CONST - )}`; + return `${prefix}1${BECH_ALPHABET.encode(words)}${bechChecksum(prefix, words, ENCODING_CONST)}`; } function decode2(str, limit = 90) { if (typeof str !== "string") - throw new Error( - `bech32.decode input should be string, not ${typeof str}` - ); - if (str.length < 8 || (limit !== false && str.length > limit)) - throw new TypeError( - `Wrong string length: ${str.length} (${str}). Expected (8..${limit})` - ); + throw new Error(`bech32.decode input should be string, not ${typeof str}`); + if (str.length < 8 || limit !== false && str.length > limit) + throw new TypeError(`Wrong string length: ${str.length} (${str}). Expected (8..${limit})`); const lowered = str.toLowerCase(); if (str !== lowered && str !== str.toUpperCase()) throw new Error(`String must be lowercase or uppercase`); str = lowered; const sepIndex = str.lastIndexOf("1"); if (sepIndex === 0 || sepIndex === -1) - throw new Error( - `Letter "1" must be present between prefix and data only` - ); + throw new Error(`Letter "1" must be present between prefix and data only`); const prefix = str.slice(0, sepIndex); const _words2 = str.slice(sepIndex + 1); if (_words2.length < 6) @@ -7562,34 +7070,19 @@ zoo`.split("\n"); const { prefix, words } = decode2(str, false); return { prefix, words, bytes: fromWords(words) }; } - return { - encode, - decode: decode2, - decodeToBytes, - decodeUnsafe, - fromWords, - fromWordsUnsafe, - toWords, - }; + return { encode, decode: decode2, decodeToBytes, decodeUnsafe, fromWords, fromWordsUnsafe, toWords }; } var bech32 = genBech32("bech32"); var bech32m = genBech32("bech32m"); var utf8 = { encode: (data) => new TextDecoder().decode(data), - decode: (str) => new TextEncoder().encode(str), + decode: (str) => new TextEncoder().encode(str) }; - var hex = chain( - radix2(4), - alphabet("0123456789abcdef"), - join(""), - normalize((s) => { - if (typeof s !== "string" || s.length % 2) - throw new TypeError( - `hex.decode: expected string, got ${typeof s} with length ${s.length}` - ); - return s.toLowerCase(); - }) - ); + var hex = chain(radix2(4), alphabet("0123456789abcdef"), join(""), normalize((s) => { + if (typeof s !== "string" || s.length % 2) + throw new TypeError(`hex.decode: expected string, got ${typeof s} with length ${s.length}`); + return s.toLowerCase(); + })); var CODERS = { utf8, hex, @@ -7598,11 +7091,9 @@ zoo`.split("\n"); base64, base64url, base58, - base58xmr, + base58xmr }; - var coderTypeError = `Invalid encoding type. Available types: ${Object.keys( - CODERS - ).join(", ")}`; + var coderTypeError = `Invalid encoding type. Available types: ${Object.keys(CODERS).join(", ")}`; // nip19.ts var Bech32MaxSize = 5e3; @@ -7613,20 +7104,22 @@ zoo`.split("\n"); switch (prefix) { case "nprofile": { let tlv = parseTLV(data); - if (!tlv[0]?.[0]) throw new Error("missing TLV 0 for nprofile"); + if (!tlv[0]?.[0]) + throw new Error("missing TLV 0 for nprofile"); if (tlv[0][0].length !== 32) throw new Error("TLV 0 should be 32 bytes"); return { type: "nprofile", data: { pubkey: bytesToHex(tlv[0][0]), - relays: tlv[1] ? tlv[1].map((d) => utf8Decoder.decode(d)) : [], - }, + relays: tlv[1] ? tlv[1].map((d) => utf8Decoder.decode(d)) : [] + } }; } case "nevent": { let tlv = parseTLV(data); - if (!tlv[0]?.[0]) throw new Error("missing TLV 0 for nevent"); + if (!tlv[0]?.[0]) + throw new Error("missing TLV 0 for nevent"); if (tlv[0][0].length !== 32) throw new Error("TLV 0 should be 32 bytes"); if (tlv[2] && tlv[2][0].length !== 32) @@ -7636,34 +7129,39 @@ zoo`.split("\n"); data: { id: bytesToHex(tlv[0][0]), relays: tlv[1] ? tlv[1].map((d) => utf8Decoder.decode(d)) : [], - author: tlv[2]?.[0] ? bytesToHex(tlv[2][0]) : void 0, - }, + author: tlv[2]?.[0] ? bytesToHex(tlv[2][0]) : void 0 + } }; } case "naddr": { let tlv = parseTLV(data); - if (!tlv[0]?.[0]) throw new Error("missing TLV 0 for naddr"); - if (!tlv[2]?.[0]) throw new Error("missing TLV 2 for naddr"); + if (!tlv[0]?.[0]) + throw new Error("missing TLV 0 for naddr"); + if (!tlv[2]?.[0]) + throw new Error("missing TLV 2 for naddr"); if (tlv[2][0].length !== 32) throw new Error("TLV 2 should be 32 bytes"); - if (!tlv[3]?.[0]) throw new Error("missing TLV 3 for naddr"); - if (tlv[3][0].length !== 4) throw new Error("TLV 3 should be 4 bytes"); + if (!tlv[3]?.[0]) + throw new Error("missing TLV 3 for naddr"); + if (tlv[3][0].length !== 4) + throw new Error("TLV 3 should be 4 bytes"); return { type: "naddr", data: { identifier: utf8Decoder.decode(tlv[0][0]), pubkey: bytesToHex(tlv[2][0]), kind: parseInt(bytesToHex(tlv[3][0]), 16), - relays: tlv[1] ? tlv[1].map((d) => utf8Decoder.decode(d)) : [], - }, + relays: tlv[1] ? tlv[1].map((d) => utf8Decoder.decode(d)) : [] + } }; } case "nrelay": { let tlv = parseTLV(data); - if (!tlv[0]?.[0]) throw new Error("missing TLV 0 for nrelay"); + if (!tlv[0]?.[0]) + throw new Error("missing TLV 0 for nrelay"); return { type: "nrelay", - data: utf8Decoder.decode(tlv[0][0]), + data: utf8Decoder.decode(tlv[0][0]) }; } case "nsec": @@ -7680,10 +7178,12 @@ zoo`.split("\n"); while (rest.length > 0) { let t = rest[0]; let l = rest[1]; - if (!l) throw new Error(`malformed TLV ${t}`); + if (!l) + throw new Error(`malformed TLV ${t}`); let v = rest.slice(2, 2 + l); rest = rest.slice(2 + l); - if (v.length < l) throw new Error(`not enough data to read on TLV ${t}`); + if (v.length < l) + throw new Error(`not enough data to read on TLV ${t}`); result[t] = result[t] || []; result[t].push(v); } @@ -7709,7 +7209,7 @@ zoo`.split("\n"); function nprofileEncode(profile) { let data = encodeTLV({ 0: [hexToBytes(profile.pubkey)], - 1: (profile.relays || []).map((url) => utf8Encoder.encode(url)), + 1: (profile.relays || []).map((url) => utf8Encoder.encode(url)) }); return encodeBech32("nprofile", data); } @@ -7717,7 +7217,7 @@ zoo`.split("\n"); let data = encodeTLV({ 0: [hexToBytes(event.id)], 1: (event.relays || []).map((url) => utf8Encoder.encode(url)), - 2: event.author ? [hexToBytes(event.author)] : [], + 2: event.author ? [hexToBytes(event.author)] : [] }); return encodeBech32("nevent", data); } @@ -7728,13 +7228,13 @@ zoo`.split("\n"); 0: [utf8Encoder.encode(addr.identifier)], 1: (addr.relays || []).map((url) => utf8Encoder.encode(url)), 2: [hexToBytes(addr.pubkey)], - 3: [new Uint8Array(kind)], + 3: [new Uint8Array(kind)] }); return encodeBech32("naddr", data); } function nrelayEncode(url) { let data = encodeTLV({ - 0: [utf8Encoder.encode(url)], + 0: [utf8Encoder.encode(url)] }); return encodeBech32("nrelay", data); } @@ -7753,8 +7253,7 @@ zoo`.split("\n"); } // references.ts - var mentionRegex = - /\bnostr:((note|npub|naddr|nevent|nprofile)1\w+)\b|#\[(\d+)\]/g; + var mentionRegex = /\bnostr:((note|npub|naddr|nevent|nprofile)1\w+)\b|#\[(\d+)\]/g; function parseReferences(evt) { let references = []; for (let ref of evt.content.matchAll(mentionRegex)) { @@ -7765,56 +7264,58 @@ zoo`.split("\n"); case "npub": { references.push({ text: ref[0], - profile: { pubkey: data, relays: [] }, + profile: { pubkey: data, relays: [] } }); break; } case "nprofile": { references.push({ text: ref[0], - profile: data, + profile: data }); break; } case "note": { references.push({ text: ref[0], - event: { id: data, relays: [] }, + event: { id: data, relays: [] } }); break; } case "nevent": { references.push({ text: ref[0], - event: data, + event: data }); break; } case "naddr": { references.push({ text: ref[0], - address: data, + address: data }); break; } } - } catch (err) {} + } catch (err) { + } } else if (ref[3]) { let idx = parseInt(ref[3], 10); let tag = evt.tags[idx]; - if (!tag) continue; + if (!tag) + continue; switch (tag[0]) { case "p": { references.push({ text: ref[0], - profile: { pubkey: tag[1], relays: tag[2] ? [tag[2]] : [] }, + profile: { pubkey: tag[1], relays: tag[2] ? [tag[2]] : [] } }); break; } case "e": { references.push({ text: ref[0], - event: { id: tag[1], relays: tag[2] ? [tag[2]] : [] }, + event: { id: tag[1], relays: tag[2] ? [tag[2]] : [] } }); break; } @@ -7827,10 +7328,11 @@ zoo`.split("\n"); identifier, pubkey, kind: parseInt(kind, 10), - relays: tag[2] ? [tag[2]] : [], - }, + relays: tag[2] ? [tag[2]] : [] + } }); - } catch (err) {} + } catch (err) { + } break; } } @@ -7843,7 +7345,7 @@ zoo`.split("\n"); var nip04_exports = {}; __export(nip04_exports, { decrypt: () => decrypt, - encrypt: () => encrypt, + encrypt: () => encrypt }); init_define_process(); if (typeof crypto !== "undefined" && !crypto.subtle && crypto.webcrypto) { @@ -7901,22 +7403,21 @@ zoo`.split("\n"); NIP05_REGEX: () => NIP05_REGEX, queryProfile: () => queryProfile, searchDomain: () => searchDomain, - useFetchImplementation: () => useFetchImplementation, + useFetchImplementation: () => useFetchImplementation }); init_define_process(); var NIP05_REGEX = /^(?:([\w.+-]+)@)?([\w.-]+)$/; var _fetch; try { _fetch = fetch; - } catch {} + } catch { + } function useFetchImplementation(fetchImplementation) { _fetch = fetchImplementation; } async function searchDomain(domain, query = "") { try { - let res = await ( - await _fetch(`https://${domain}/.well-known/nostr.json?name=${query}`) - ).json(); + let res = await (await _fetch(`https://${domain}/.well-known/nostr.json?name=${query}`)).json(); return res.names; } catch (_) { return {}; @@ -7924,12 +7425,11 @@ zoo`.split("\n"); } async function queryProfile(fullname) { const match = fullname.match(NIP05_REGEX); - if (!match) return null; + if (!match) + return null; const [_, name = "_", domain] = match; try { - const res = await _fetch( - `https://${domain}/.well-known/nostr.json?name=${name}` - ); + const res = await _fetch(`https://${domain}/.well-known/nostr.json?name=${name}`); const { names, relays } = parseNIP05Result(await res.json()); const pubkey = names[name]; return pubkey ? { pubkey, relays: relays?.[pubkey] } : null; @@ -7939,7 +7439,7 @@ zoo`.split("\n"); } function parseNIP05Result(json) { const result = { - names: {}, + names: {} }; for (const [name, pubkey] of Object.entries(json.names)) { if (typeof name === "string" && typeof pubkey === "string") { @@ -7950,9 +7450,7 @@ zoo`.split("\n"); result.relays = {}; for (const [pubkey, relays] of Object.entries(json.relays)) { if (typeof pubkey === "string" && Array.isArray(relays)) { - result.relays[pubkey] = relays.filter( - (relay) => typeof relay === "string" - ); + result.relays[pubkey] = relays.filter((relay) => typeof relay === "string"); } } } @@ -7964,7 +7462,7 @@ zoo`.split("\n"); __export(nip06_exports, { generateSeedWords: () => generateSeedWords, privateKeyFromSeedWords: () => privateKeyFromSeedWords, - validateWords: () => validateWords, + validateWords: () => validateWords }); init_define_process(); var import_english = __toESM(require_english()); @@ -7975,33 +7473,37 @@ zoo`.split("\n"); // node_modules/@noble/hashes/esm/ripemd160.js init_define_process(); - var Rho = new Uint8Array([ - 7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8, - ]); + var Rho = new Uint8Array([7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8]); var Id = Uint8Array.from({ length: 16 }, (_, i) => i); var Pi = Id.map((i) => (9 * i + 5) % 16); var idxL = [Id]; var idxR = [Pi]; for (let i = 0; i < 4; i++) - for (let j of [idxL, idxR]) j.push(j[i].map((k) => Rho[k])); + for (let j of [idxL, idxR]) + j.push(j[i].map((k) => Rho[k])); var shifts = [ [11, 14, 15, 12, 5, 8, 7, 9, 11, 13, 14, 15, 6, 7, 9, 8], [12, 13, 11, 15, 6, 9, 9, 7, 12, 15, 11, 13, 7, 8, 7, 7], [13, 15, 14, 11, 7, 7, 6, 8, 13, 14, 13, 12, 5, 5, 6, 9], [14, 11, 12, 14, 8, 6, 5, 5, 15, 12, 15, 14, 9, 9, 8, 6], - [15, 12, 13, 13, 9, 5, 8, 6, 14, 11, 12, 11, 8, 6, 5, 5], + [15, 12, 13, 13, 9, 5, 8, 6, 14, 11, 12, 11, 8, 6, 5, 5] ].map((i) => new Uint8Array(i)); var shiftsL = idxL.map((idx, i) => idx.map((j) => shifts[i][j])); var shiftsR = idxR.map((idx, i) => idx.map((j) => shifts[i][j])); var Kl = new Uint32Array([0, 1518500249, 1859775393, 2400959708, 2840853838]); var Kr = new Uint32Array([1352829926, 1548603684, 1836072691, 2053994217, 0]); - var rotl = (word, shift) => (word << shift) | (word >>> (32 - shift)); + var rotl = (word, shift) => word << shift | word >>> 32 - shift; function f(group, x, y, z) { - if (group === 0) return x ^ y ^ z; - else if (group === 1) return (x & y) | (~x & z); - else if (group === 2) return (x | ~y) ^ z; - else if (group === 3) return (x & z) | (y & ~z); - else return x ^ (y | ~z); + if (group === 0) + return x ^ y ^ z; + else if (group === 1) + return x & y | ~x & z; + else if (group === 2) + return (x | ~y) ^ z; + else if (group === 3) + return x & z | y & ~z; + else + return x ^ (y | ~z); } var BUF = new Uint32Array(16); var RIPEMD160 = class extends SHA2 { @@ -8027,44 +7529,22 @@ zoo`.split("\n"); process(view, offset) { for (let i = 0; i < 16; i++, offset += 4) BUF[i] = view.getUint32(offset, true); - let al = this.h0 | 0, - ar = al, - bl = this.h1 | 0, - br = bl, - cl = this.h2 | 0, - cr = cl, - dl = this.h3 | 0, - dr = dl, - el = this.h4 | 0, - er = el; + let al = this.h0 | 0, ar = al, bl = this.h1 | 0, br = bl, cl = this.h2 | 0, cr = cl, dl = this.h3 | 0, dr = dl, el = this.h4 | 0, er = el; for (let group = 0; group < 5; group++) { const rGroup = 4 - group; - const hbl = Kl[group], - hbr = Kr[group]; - const rl = idxL[group], - rr = idxR[group]; - const sl = shiftsL[group], - sr = shiftsR[group]; + const hbl = Kl[group], hbr = Kr[group]; + const rl = idxL[group], rr = idxR[group]; + const sl = shiftsL[group], sr = shiftsR[group]; for (let i = 0; i < 16; i++) { - const tl = - (rotl(al + f(group, bl, cl, dl) + BUF[rl[i]] + hbl, sl[i]) + el) | - 0; - (al = el), (el = dl), (dl = rotl(cl, 10) | 0), (cl = bl), (bl = tl); + const tl = rotl(al + f(group, bl, cl, dl) + BUF[rl[i]] + hbl, sl[i]) + el | 0; + al = el, el = dl, dl = rotl(cl, 10) | 0, cl = bl, bl = tl; } for (let i = 0; i < 16; i++) { - const tr = - (rotl(ar + f(rGroup, br, cr, dr) + BUF[rr[i]] + hbr, sr[i]) + er) | - 0; - (ar = er), (er = dr), (dr = rotl(cr, 10) | 0), (cr = br), (br = tr); + const tr = rotl(ar + f(rGroup, br, cr, dr) + BUF[rr[i]] + hbr, sr[i]) + er | 0; + ar = er, er = dr, dr = rotl(cr, 10) | 0, cr = br, br = tr; } } - this.set( - (this.h1 + cl + dr) | 0, - (this.h2 + dl + er) | 0, - (this.h3 + el + ar) | 0, - (this.h4 + al + br) | 0, - (this.h0 + bl + cr) | 0 - ); + this.set(this.h1 + cl + dr | 0, this.h2 + dl + er | 0, this.h3 + el + ar | 0, this.h4 + al + br | 0, this.h0 + bl + cr | 0); } roundClean() { BUF.fill(0); @@ -8086,11 +7566,8 @@ zoo`.split("\n"); var _32n = BigInt(32); function fromBig(n, le = false) { if (le) - return { h: Number(n & U32_MASK64), l: Number((n >> _32n) & U32_MASK64) }; - return { - h: Number((n >> _32n) & U32_MASK64) | 0, - l: Number(n & U32_MASK64) | 0, - }; + return { h: Number(n & U32_MASK64), l: Number(n >> _32n & U32_MASK64) }; + return { h: Number(n >> _32n & U32_MASK64) | 0, l: Number(n & U32_MASK64) | 0 }; } function split(lst, le = false) { let Ah = new Uint32Array(lst.length); @@ -8101,33 +7578,29 @@ zoo`.split("\n"); } return [Ah, Al]; } - var toBig = (h, l) => (BigInt(h >>> 0) << _32n) | BigInt(l >>> 0); + var toBig = (h, l) => BigInt(h >>> 0) << _32n | BigInt(l >>> 0); var shrSH = (h, l, s) => h >>> s; - var shrSL = (h, l, s) => (h << (32 - s)) | (l >>> s); - var rotrSH = (h, l, s) => (h >>> s) | (l << (32 - s)); - var rotrSL = (h, l, s) => (h << (32 - s)) | (l >>> s); - var rotrBH = (h, l, s) => (h << (64 - s)) | (l >>> (s - 32)); - var rotrBL = (h, l, s) => (h >>> (s - 32)) | (l << (64 - s)); + var shrSL = (h, l, s) => h << 32 - s | l >>> s; + var rotrSH = (h, l, s) => h >>> s | l << 32 - s; + var rotrSL = (h, l, s) => h << 32 - s | l >>> s; + var rotrBH = (h, l, s) => h << 64 - s | l >>> s - 32; + var rotrBL = (h, l, s) => h >>> s - 32 | l << 64 - s; var rotr32H = (h, l) => l; var rotr32L = (h, l) => h; - var rotlSH = (h, l, s) => (h << s) | (l >>> (32 - s)); - var rotlSL = (h, l, s) => (l << s) | (h >>> (32 - s)); - var rotlBH = (h, l, s) => (l << (s - 32)) | (h >>> (64 - s)); - var rotlBL = (h, l, s) => (h << (s - 32)) | (l >>> (64 - s)); + var rotlSH = (h, l, s) => h << s | l >>> 32 - s; + var rotlSL = (h, l, s) => l << s | h >>> 32 - s; + var rotlBH = (h, l, s) => l << s - 32 | h >>> 64 - s; + var rotlBL = (h, l, s) => h << s - 32 | l >>> 64 - s; function add(Ah, Al, Bh, Bl) { const l = (Al >>> 0) + (Bl >>> 0); - return { h: (Ah + Bh + ((l / 2 ** 32) | 0)) | 0, l: l | 0 }; + return { h: Ah + Bh + (l / 2 ** 32 | 0) | 0, l: l | 0 }; } var add3L = (Al, Bl, Cl) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0); - var add3H = (low, Ah, Bh, Ch) => (Ah + Bh + Ch + ((low / 2 ** 32) | 0)) | 0; - var add4L = (Al, Bl, Cl, Dl) => - (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0); - var add4H = (low, Ah, Bh, Ch, Dh) => - (Ah + Bh + Ch + Dh + ((low / 2 ** 32) | 0)) | 0; - var add5L = (Al, Bl, Cl, Dl, El) => - (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0) + (El >>> 0); - var add5H = (low, Ah, Bh, Ch, Dh, Eh) => - (Ah + Bh + Ch + Dh + Eh + ((low / 2 ** 32) | 0)) | 0; + var add3H = (low, Ah, Bh, Ch) => Ah + Bh + Ch + (low / 2 ** 32 | 0) | 0; + var add4L = (Al, Bl, Cl, Dl) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0); + var add4H = (low, Ah, Bh, Ch, Dh) => Ah + Bh + Ch + Dh + (low / 2 ** 32 | 0) | 0; + var add5L = (Al, Bl, Cl, Dl, El) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0) + (El >>> 0); + var add5H = (low, Ah, Bh, Ch, Dh, Eh) => Ah + Bh + Ch + Dh + Eh + (low / 2 ** 32 | 0) | 0; var u64 = { fromBig, split, @@ -8150,95 +7623,93 @@ zoo`.split("\n"); add4L, add4H, add5H, - add5L, + add5L }; var u64_default = u64; // node_modules/@noble/hashes/esm/sha512.js - var [SHA512_Kh, SHA512_Kl] = u64_default.split( - [ - "0x428a2f98d728ae22", - "0x7137449123ef65cd", - "0xb5c0fbcfec4d3b2f", - "0xe9b5dba58189dbbc", - "0x3956c25bf348b538", - "0x59f111f1b605d019", - "0x923f82a4af194f9b", - "0xab1c5ed5da6d8118", - "0xd807aa98a3030242", - "0x12835b0145706fbe", - "0x243185be4ee4b28c", - "0x550c7dc3d5ffb4e2", - "0x72be5d74f27b896f", - "0x80deb1fe3b1696b1", - "0x9bdc06a725c71235", - "0xc19bf174cf692694", - "0xe49b69c19ef14ad2", - "0xefbe4786384f25e3", - "0x0fc19dc68b8cd5b5", - "0x240ca1cc77ac9c65", - "0x2de92c6f592b0275", - "0x4a7484aa6ea6e483", - "0x5cb0a9dcbd41fbd4", - "0x76f988da831153b5", - "0x983e5152ee66dfab", - "0xa831c66d2db43210", - "0xb00327c898fb213f", - "0xbf597fc7beef0ee4", - "0xc6e00bf33da88fc2", - "0xd5a79147930aa725", - "0x06ca6351e003826f", - "0x142929670a0e6e70", - "0x27b70a8546d22ffc", - "0x2e1b21385c26c926", - "0x4d2c6dfc5ac42aed", - "0x53380d139d95b3df", - "0x650a73548baf63de", - "0x766a0abb3c77b2a8", - "0x81c2c92e47edaee6", - "0x92722c851482353b", - "0xa2bfe8a14cf10364", - "0xa81a664bbc423001", - "0xc24b8b70d0f89791", - "0xc76c51a30654be30", - "0xd192e819d6ef5218", - "0xd69906245565a910", - "0xf40e35855771202a", - "0x106aa07032bbd1b8", - "0x19a4c116b8d2d0c8", - "0x1e376c085141ab53", - "0x2748774cdf8eeb99", - "0x34b0bcb5e19b48a8", - "0x391c0cb3c5c95a63", - "0x4ed8aa4ae3418acb", - "0x5b9cca4f7763e373", - "0x682e6ff3d6b2b8a3", - "0x748f82ee5defb2fc", - "0x78a5636f43172f60", - "0x84c87814a1f0ab72", - "0x8cc702081a6439ec", - "0x90befffa23631e28", - "0xa4506cebde82bde9", - "0xbef9a3f7b2c67915", - "0xc67178f2e372532b", - "0xca273eceea26619c", - "0xd186b8c721c0c207", - "0xeada7dd6cde0eb1e", - "0xf57d4f7fee6ed178", - "0x06f067aa72176fba", - "0x0a637dc5a2c898a6", - "0x113f9804bef90dae", - "0x1b710b35131c471b", - "0x28db77f523047d84", - "0x32caab7b40c72493", - "0x3c9ebe0a15c9bebc", - "0x431d67c49c100d4c", - "0x4cc5d4becb3e42b6", - "0x597f299cfc657e2a", - "0x5fcb6fab3ad6faec", - "0x6c44198c4a475817", - ].map((n) => BigInt(n)) - ); + var [SHA512_Kh, SHA512_Kl] = u64_default.split([ + "0x428a2f98d728ae22", + "0x7137449123ef65cd", + "0xb5c0fbcfec4d3b2f", + "0xe9b5dba58189dbbc", + "0x3956c25bf348b538", + "0x59f111f1b605d019", + "0x923f82a4af194f9b", + "0xab1c5ed5da6d8118", + "0xd807aa98a3030242", + "0x12835b0145706fbe", + "0x243185be4ee4b28c", + "0x550c7dc3d5ffb4e2", + "0x72be5d74f27b896f", + "0x80deb1fe3b1696b1", + "0x9bdc06a725c71235", + "0xc19bf174cf692694", + "0xe49b69c19ef14ad2", + "0xefbe4786384f25e3", + "0x0fc19dc68b8cd5b5", + "0x240ca1cc77ac9c65", + "0x2de92c6f592b0275", + "0x4a7484aa6ea6e483", + "0x5cb0a9dcbd41fbd4", + "0x76f988da831153b5", + "0x983e5152ee66dfab", + "0xa831c66d2db43210", + "0xb00327c898fb213f", + "0xbf597fc7beef0ee4", + "0xc6e00bf33da88fc2", + "0xd5a79147930aa725", + "0x06ca6351e003826f", + "0x142929670a0e6e70", + "0x27b70a8546d22ffc", + "0x2e1b21385c26c926", + "0x4d2c6dfc5ac42aed", + "0x53380d139d95b3df", + "0x650a73548baf63de", + "0x766a0abb3c77b2a8", + "0x81c2c92e47edaee6", + "0x92722c851482353b", + "0xa2bfe8a14cf10364", + "0xa81a664bbc423001", + "0xc24b8b70d0f89791", + "0xc76c51a30654be30", + "0xd192e819d6ef5218", + "0xd69906245565a910", + "0xf40e35855771202a", + "0x106aa07032bbd1b8", + "0x19a4c116b8d2d0c8", + "0x1e376c085141ab53", + "0x2748774cdf8eeb99", + "0x34b0bcb5e19b48a8", + "0x391c0cb3c5c95a63", + "0x4ed8aa4ae3418acb", + "0x5b9cca4f7763e373", + "0x682e6ff3d6b2b8a3", + "0x748f82ee5defb2fc", + "0x78a5636f43172f60", + "0x84c87814a1f0ab72", + "0x8cc702081a6439ec", + "0x90befffa23631e28", + "0xa4506cebde82bde9", + "0xbef9a3f7b2c67915", + "0xc67178f2e372532b", + "0xca273eceea26619c", + "0xd186b8c721c0c207", + "0xeada7dd6cde0eb1e", + "0xf57d4f7fee6ed178", + "0x06f067aa72176fba", + "0x0a637dc5a2c898a6", + "0x113f9804bef90dae", + "0x1b710b35131c471b", + "0x28db77f523047d84", + "0x32caab7b40c72493", + "0x3c9ebe0a15c9bebc", + "0x431d67c49c100d4c", + "0x4cc5d4becb3e42b6", + "0x597f299cfc657e2a", + "0x5fcb6fab3ad6faec", + "0x6c44198c4a475817" + ].map((n) => BigInt(n))); var SHA512_W_H = new Uint32Array(80); var SHA512_W_L = new Uint32Array(80); var SHA512 = class extends SHA2 { @@ -8262,8 +7733,7 @@ zoo`.split("\n"); this.Hl = 327033209 | 0; } get() { - const { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = - this; + const { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this; return [Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl]; } set(Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl) { @@ -8287,84 +7757,35 @@ zoo`.split("\n"); process(view, offset) { for (let i = 0; i < 16; i++, offset += 4) { SHA512_W_H[i] = view.getUint32(offset); - SHA512_W_L[i] = view.getUint32((offset += 4)); + SHA512_W_L[i] = view.getUint32(offset += 4); } for (let i = 16; i < 80; i++) { const W15h = SHA512_W_H[i - 15] | 0; const W15l = SHA512_W_L[i - 15] | 0; - const s0h = - u64_default.rotrSH(W15h, W15l, 1) ^ - u64_default.rotrSH(W15h, W15l, 8) ^ - u64_default.shrSH(W15h, W15l, 7); - const s0l = - u64_default.rotrSL(W15h, W15l, 1) ^ - u64_default.rotrSL(W15h, W15l, 8) ^ - u64_default.shrSL(W15h, W15l, 7); + const s0h = u64_default.rotrSH(W15h, W15l, 1) ^ u64_default.rotrSH(W15h, W15l, 8) ^ u64_default.shrSH(W15h, W15l, 7); + const s0l = u64_default.rotrSL(W15h, W15l, 1) ^ u64_default.rotrSL(W15h, W15l, 8) ^ u64_default.shrSL(W15h, W15l, 7); const W2h = SHA512_W_H[i - 2] | 0; const W2l = SHA512_W_L[i - 2] | 0; - const s1h = - u64_default.rotrSH(W2h, W2l, 19) ^ - u64_default.rotrBH(W2h, W2l, 61) ^ - u64_default.shrSH(W2h, W2l, 6); - const s1l = - u64_default.rotrSL(W2h, W2l, 19) ^ - u64_default.rotrBL(W2h, W2l, 61) ^ - u64_default.shrSL(W2h, W2l, 6); - const SUMl = u64_default.add4L( - s0l, - s1l, - SHA512_W_L[i - 7], - SHA512_W_L[i - 16] - ); - const SUMh = u64_default.add4H( - SUMl, - s0h, - s1h, - SHA512_W_H[i - 7], - SHA512_W_H[i - 16] - ); + const s1h = u64_default.rotrSH(W2h, W2l, 19) ^ u64_default.rotrBH(W2h, W2l, 61) ^ u64_default.shrSH(W2h, W2l, 6); + const s1l = u64_default.rotrSL(W2h, W2l, 19) ^ u64_default.rotrBL(W2h, W2l, 61) ^ u64_default.shrSL(W2h, W2l, 6); + const SUMl = u64_default.add4L(s0l, s1l, SHA512_W_L[i - 7], SHA512_W_L[i - 16]); + const SUMh = u64_default.add4H(SUMl, s0h, s1h, SHA512_W_H[i - 7], SHA512_W_H[i - 16]); SHA512_W_H[i] = SUMh | 0; SHA512_W_L[i] = SUMl | 0; } - let { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = - this; + let { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this; for (let i = 0; i < 80; i++) { - const sigma1h = - u64_default.rotrSH(Eh, El, 14) ^ - u64_default.rotrSH(Eh, El, 18) ^ - u64_default.rotrBH(Eh, El, 41); - const sigma1l = - u64_default.rotrSL(Eh, El, 14) ^ - u64_default.rotrSL(Eh, El, 18) ^ - u64_default.rotrBL(Eh, El, 41); - const CHIh = (Eh & Fh) ^ (~Eh & Gh); - const CHIl = (El & Fl) ^ (~El & Gl); - const T1ll = u64_default.add5L( - Hl, - sigma1l, - CHIl, - SHA512_Kl[i], - SHA512_W_L[i] - ); - const T1h = u64_default.add5H( - T1ll, - Hh, - sigma1h, - CHIh, - SHA512_Kh[i], - SHA512_W_H[i] - ); + const sigma1h = u64_default.rotrSH(Eh, El, 14) ^ u64_default.rotrSH(Eh, El, 18) ^ u64_default.rotrBH(Eh, El, 41); + const sigma1l = u64_default.rotrSL(Eh, El, 14) ^ u64_default.rotrSL(Eh, El, 18) ^ u64_default.rotrBL(Eh, El, 41); + const CHIh = Eh & Fh ^ ~Eh & Gh; + const CHIl = El & Fl ^ ~El & Gl; + const T1ll = u64_default.add5L(Hl, sigma1l, CHIl, SHA512_Kl[i], SHA512_W_L[i]); + const T1h = u64_default.add5H(T1ll, Hh, sigma1h, CHIh, SHA512_Kh[i], SHA512_W_H[i]); const T1l = T1ll | 0; - const sigma0h = - u64_default.rotrSH(Ah, Al, 28) ^ - u64_default.rotrBH(Ah, Al, 34) ^ - u64_default.rotrBH(Ah, Al, 39); - const sigma0l = - u64_default.rotrSL(Ah, Al, 28) ^ - u64_default.rotrBL(Ah, Al, 34) ^ - u64_default.rotrBL(Ah, Al, 39); - const MAJh = (Ah & Bh) ^ (Ah & Ch) ^ (Bh & Ch); - const MAJl = (Al & Bl) ^ (Al & Cl) ^ (Bl & Cl); + const sigma0h = u64_default.rotrSH(Ah, Al, 28) ^ u64_default.rotrBH(Ah, Al, 34) ^ u64_default.rotrBH(Ah, Al, 39); + const sigma0l = u64_default.rotrSL(Ah, Al, 28) ^ u64_default.rotrBL(Ah, Al, 34) ^ u64_default.rotrBL(Ah, Al, 39); + const MAJh = Ah & Bh ^ Ah & Ch ^ Bh & Ch; + const MAJl = Al & Bl ^ Al & Cl ^ Bl & Cl; Hh = Gh | 0; Hl = Gl | 0; Gh = Fh | 0; @@ -8382,54 +7803,14 @@ zoo`.split("\n"); Ah = u64_default.add3H(All, T1h, sigma0h, MAJh); Al = All | 0; } - ({ h: Ah, l: Al } = u64_default.add( - this.Ah | 0, - this.Al | 0, - Ah | 0, - Al | 0 - )); - ({ h: Bh, l: Bl } = u64_default.add( - this.Bh | 0, - this.Bl | 0, - Bh | 0, - Bl | 0 - )); - ({ h: Ch, l: Cl } = u64_default.add( - this.Ch | 0, - this.Cl | 0, - Ch | 0, - Cl | 0 - )); - ({ h: Dh, l: Dl } = u64_default.add( - this.Dh | 0, - this.Dl | 0, - Dh | 0, - Dl | 0 - )); - ({ h: Eh, l: El } = u64_default.add( - this.Eh | 0, - this.El | 0, - Eh | 0, - El | 0 - )); - ({ h: Fh, l: Fl } = u64_default.add( - this.Fh | 0, - this.Fl | 0, - Fh | 0, - Fl | 0 - )); - ({ h: Gh, l: Gl } = u64_default.add( - this.Gh | 0, - this.Gl | 0, - Gh | 0, - Gl | 0 - )); - ({ h: Hh, l: Hl } = u64_default.add( - this.Hh | 0, - this.Hl | 0, - Hh | 0, - Hl | 0 - )); + ({ h: Ah, l: Al } = u64_default.add(this.Ah | 0, this.Al | 0, Ah | 0, Al | 0)); + ({ h: Bh, l: Bl } = u64_default.add(this.Bh | 0, this.Bl | 0, Bh | 0, Bl | 0)); + ({ h: Ch, l: Cl } = u64_default.add(this.Ch | 0, this.Cl | 0, Ch | 0, Cl | 0)); + ({ h: Dh, l: Dl } = u64_default.add(this.Dh | 0, this.Dl | 0, Dh | 0, Dl | 0)); + ({ h: Eh, l: El } = u64_default.add(this.Eh | 0, this.El | 0, Eh | 0, El | 0)); + ({ h: Fh, l: Fl } = u64_default.add(this.Fh | 0, this.Fl | 0, Fh | 0, Fl | 0)); + ({ h: Gh, l: Gl } = u64_default.add(this.Gh | 0, this.Gl | 0, Gh | 0, Gl | 0)); + ({ h: Hh, l: Hl } = u64_default.add(this.Hh | 0, this.Hl | 0, Hh | 0, Hl | 0)); this.set(Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl); } roundClean() { @@ -8558,33 +7939,24 @@ zoo`.split("\n"); if (!priv) { throw new Error("No private key"); } - return base58check2.encode( - this.serialize( - this.versions.private, - concatBytes(new Uint8Array([0]), priv) - ) - ); + return base58check2.encode(this.serialize(this.versions.private, concatBytes(new Uint8Array([0]), priv))); } get publicExtendedKey() { if (!this.pubKey) { throw new Error("No public key"); } - return base58check2.encode( - this.serialize(this.versions.public, this.pubKey) - ); + return base58check2.encode(this.serialize(this.versions.public, this.pubKey)); } static fromMasterSeed(seed, versions = BITCOIN_VERSIONS) { bytes(seed); if (8 * seed.length < 128 || 8 * seed.length > 512) { - throw new Error( - `HDKey: wrong seed length=${seed.length}. Should be between 128 and 512 bits; 256 bits is advised)` - ); + throw new Error(`HDKey: wrong seed length=${seed.length}. Should be between 128 and 512 bits; 256 bits is advised)`); } const I = hmac(sha512, MASTER_SECRET, seed); return new HDKey({ versions, chainCode: I.slice(32), - privateKey: I.slice(0, 32), + privateKey: I.slice(0, 32) }); } static fromExtendedKey(base58key, versions = BITCOIN_VERSIONS) { @@ -8596,7 +7968,7 @@ zoo`.split("\n"); depth: keyBuffer[4], parentFingerprint: keyView.getUint32(5, false), index: keyView.getUint32(9, false), - chainCode: keyBuffer.slice(13, 45), + chainCode: keyBuffer.slice(13, 45) }; const key = keyBuffer.slice(45); const isPriv = key[0] === 0; @@ -8627,9 +7999,7 @@ zoo`.split("\n"); this.parentFingerprint = opt.parentFingerprint || 0; if (!this.depth) { if (this.parentFingerprint || this.index) { - throw new Error( - "HDKey: zero depth with non-zero index/parent fingerprint" - ); + throw new Error("HDKey: zero depth with non-zero index/parent fingerprint"); } } if (opt.publicKey && opt.privateKey) { @@ -8639,10 +8009,7 @@ zoo`.split("\n"); if (!secp256k1.utils.isValidPrivateKey(opt.privateKey)) { throw new Error("Invalid private key"); } - this.privKey = - typeof opt.privateKey === "bigint" - ? opt.privateKey - : bytesToNumber(opt.privateKey); + this.privKey = typeof opt.privateKey === "bigint" ? opt.privateKey : bytesToNumber(opt.privateKey); this.privKeyBytes = numberToBytes(this.privKey); this.pubKey = secp256k1.getPublicKey(opt.privateKey, true); } else if (opt.publicKey) { @@ -8702,25 +8069,19 @@ zoo`.split("\n"); chainCode, depth: this.depth + 1, parentFingerprint: this.fingerprint, - index, + index }; try { if (this.privateKey) { const added = mod(this.privKey + childTweak, secp256k1.CURVE.n); if (!secp256k1.utils.isValidPrivateKey(added)) { - throw new Error( - "The tweak was out of range or the resulted private key is invalid" - ); + throw new Error("The tweak was out of range or the resulted private key is invalid"); } opt.privateKey = added; } else { - const added = Point2.fromHex(this.pubKey).add( - Point2.fromPrivateKey(childTweak) - ); + const added = Point2.fromHex(this.pubKey).add(Point2.fromPrivateKey(childTweak)); if (added.equals(Point2.ZERO)) { - throw new Error( - "The tweak was equal to negative P, which made the result key invalid" - ); + throw new Error("The tweak was equal to negative P, which made the result key invalid"); } opt.publicKey = added.toRawBytes(true); } @@ -8761,7 +8122,7 @@ zoo`.split("\n"); toJSON() { return { xpriv: this.privateExtendedKey, - xpub: this.publicExtendedKey, + xpub: this.publicExtendedKey }; } serialize(version, key) { @@ -8769,24 +8130,16 @@ zoo`.split("\n"); throw new Error("No chainCode set"); } bytes(key, 33); - return concatBytes( - toU32(version), - new Uint8Array([this.depth]), - toU32(this.parentFingerprint), - toU32(this.index), - this.chainCode, - key - ); + return concatBytes(toU32(version), new Uint8Array([this.depth]), toU32(this.parentFingerprint), toU32(this.index), this.chainCode, key); } }; // nip06.ts function privateKeyFromSeedWords(mnemonic, passphrase) { - let root = HDKey.fromMasterSeed( - (0, import_bip39.mnemonicToSeedSync)(mnemonic, passphrase) - ); + let root = HDKey.fromMasterSeed((0, import_bip39.mnemonicToSeedSync)(mnemonic, passphrase)); let privateKey = root.derive(`m/44'/1237'/0'/0/0`).privateKey; - if (!privateKey) throw new Error("could not derive private key"); + if (!privateKey) + throw new Error("could not derive private key"); return bytesToHex(privateKey); } function generateSeedWords() { @@ -8799,7 +8152,7 @@ zoo`.split("\n"); // nip10.ts var nip10_exports = {}; __export(nip10_exports, { - parse: () => parse, + parse: () => parse }); init_define_process(); function parse(event) { @@ -8807,7 +8160,7 @@ zoo`.split("\n"); reply: void 0, root: void 0, mentions: [], - profiles: [], + profiles: [] }; const eTags = []; for (const tag of event.tags) { @@ -8817,7 +8170,7 @@ zoo`.split("\n"); if (tag[0] === "p" && tag[1]) { result.profiles.push({ pubkey: tag[1], - relays: tag[2] ? [tag[2]] : [], + relays: tag[2] ? [tag[2]] : [] }); } } @@ -8826,7 +8179,7 @@ zoo`.split("\n"); const [_, eTagEventId, eTagRelayUrl, eTagMarker] = eTag; const eventPointer = { id: eTagEventId, - relays: eTagRelayUrl ? [eTagRelayUrl] : [], + relays: eTagRelayUrl ? [eTagRelayUrl] : [] }; const isFirstETag = eTagIndex === 0; const isLastETag = eTagIndex === eTags.length - 1; @@ -8858,7 +8211,7 @@ zoo`.split("\n"); // nip13.ts var nip13_exports = {}; __export(nip13_exports, { - getPow: () => getPow, + getPow: () => getPow }); init_define_process(); function getPow(id) { @@ -8880,7 +8233,7 @@ zoo`.split("\n"); if (b === 0) { return 8; } - while ((b >>= 1)) { + while (b >>= 1) { n++; } return 7 - n; @@ -8891,23 +8244,20 @@ zoo`.split("\n"); __export(nip18_exports, { finishRepostEvent: () => finishRepostEvent, getRepostedEvent: () => getRepostedEvent, - getRepostedEventPointer: () => getRepostedEventPointer, + getRepostedEventPointer: () => getRepostedEventPointer }); init_define_process(); function finishRepostEvent(t, reposted, relayUrl, privateKey) { - return finishEvent( - { - kind: 6 /* Repost */, - tags: [ - ...(t.tags ?? []), - ["e", reposted.id, relayUrl], - ["p", reposted.pubkey], - ], - content: t.content === "" ? "" : JSON.stringify(reposted), - created_at: t.created_at, - }, - privateKey - ); + return finishEvent({ + kind: 6 /* Repost */, + tags: [ + ...t.tags ?? [], + ["e", reposted.id, relayUrl], + ["p", reposted.pubkey] + ], + content: t.content === "" ? "" : JSON.stringify(reposted), + created_at: t.created_at + }, privateKey); } function getRepostedEventPointer(event) { if (event.kind !== 6 /* Repost */) { @@ -8915,11 +8265,7 @@ zoo`.split("\n"); } let lastETag; let lastPTag; - for ( - let i = event.tags.length - 1; - i >= 0 && (lastETag === void 0 || lastPTag === void 0); - i-- - ) { + for (let i = event.tags.length - 1; i >= 0 && (lastETag === void 0 || lastPTag === void 0); i--) { const tag = event.tags[i]; if (tag.length >= 2) { if (tag[0] === "e" && lastETag === void 0) { @@ -8935,7 +8281,7 @@ zoo`.split("\n"); return { id: lastETag[1], relays: [lastETag[2], lastPTag?.[2]].filter((x) => typeof x === "string"), - author: lastPTag?.[1], + author: lastPTag?.[1] }; } function getRepostedEvent(event, { skipVerification } = {}) { @@ -8963,23 +8309,21 @@ zoo`.split("\n"); __export(nip21_exports, { NOSTR_URI_REGEX: () => NOSTR_URI_REGEX, parse: () => parse2, - test: () => test, + test: () => test }); init_define_process(); var NOSTR_URI_REGEX = new RegExp(`nostr:(${BECH32_REGEX.source})`); function test(value) { - return ( - typeof value === "string" && - new RegExp(`^${NOSTR_URI_REGEX.source}$`).test(value) - ); + return typeof value === "string" && new RegExp(`^${NOSTR_URI_REGEX.source}$`).test(value); } function parse2(uri) { const match = uri.match(new RegExp(`^${NOSTR_URI_REGEX.source}$`)); - if (!match) throw new Error(`Invalid Nostr URI: ${uri}`); + if (!match) + throw new Error(`Invalid Nostr URI: ${uri}`); return { uri: match[0], value: match[1], - decoded: decode(match[1]), + decoded: decode(match[1]) }; } @@ -8987,27 +8331,24 @@ zoo`.split("\n"); var nip25_exports = {}; __export(nip25_exports, { finishReactionEvent: () => finishReactionEvent, - getReactedEventPointer: () => getReactedEventPointer, + getReactedEventPointer: () => getReactedEventPointer }); init_define_process(); function finishReactionEvent(t, reacted, privateKey) { const inheritedTags = reacted.tags.filter( (tag) => tag.length >= 2 && (tag[0] === "e" || tag[0] === "p") ); - return finishEvent( - { - ...t, - kind: 7 /* Reaction */, - tags: [ - ...(t.tags ?? []), - ...inheritedTags, - ["e", reacted.id], - ["p", reacted.pubkey], - ], - content: t.content ?? "+", - }, - privateKey - ); + return finishEvent({ + ...t, + kind: 7 /* Reaction */, + tags: [ + ...t.tags ?? [], + ...inheritedTags, + ["e", reacted.id], + ["p", reacted.pubkey] + ], + content: t.content ?? "+" + }, privateKey); } function getReactedEventPointer(event) { if (event.kind !== 7 /* Reaction */) { @@ -9015,11 +8356,7 @@ zoo`.split("\n"); } let lastETag; let lastPTag; - for ( - let i = event.tags.length - 1; - i >= 0 && (lastETag === void 0 || lastPTag === void 0); - i-- - ) { + for (let i = event.tags.length - 1; i >= 0 && (lastETag === void 0 || lastPTag === void 0); i--) { const tag = event.tags[i]; if (tag.length >= 2) { if (tag[0] === "e" && lastETag === void 0) { @@ -9035,7 +8372,7 @@ zoo`.split("\n"); return { id: lastETag[1], relays: [lastETag[2], lastPTag[2]].filter((x) => x !== void 0), - author: lastPTag[1], + author: lastPTag[1] }; } @@ -9043,34 +8380,37 @@ zoo`.split("\n"); var nip26_exports = {}; __export(nip26_exports, { createDelegation: () => createDelegation, - getDelegator: () => getDelegator, + getDelegator: () => getDelegator }); init_define_process(); function createDelegation(privateKey, parameters) { let conditions = []; if ((parameters.kind || -1) >= 0) conditions.push(`kind=${parameters.kind}`); - if (parameters.until) conditions.push(`created_at<${parameters.until}`); - if (parameters.since) conditions.push(`created_at>${parameters.since}`); + if (parameters.until) + conditions.push(`created_at<${parameters.until}`); + if (parameters.since) + conditions.push(`created_at>${parameters.since}`); let cond = conditions.join("&"); if (cond === "") throw new Error("refusing to create a delegation without any conditions"); let sighash = sha256( utf8Encoder.encode(`nostr:delegation:${parameters.pubkey}:${cond}`) ); - let sig = bytesToHex(schnorr.sign(sighash, privateKey)); + let sig = bytesToHex( + schnorr.sign(sighash, privateKey) + ); return { from: getPublicKey(privateKey), to: parameters.pubkey, cond, - sig, + sig }; } function getDelegator(event) { - let tag = event.tags.find( - (tag2) => tag2[0] === "delegation" && tag2.length >= 4 - ); - if (!tag) return null; + let tag = event.tags.find((tag2) => tag2[0] === "delegation" && tag2.length >= 4); + if (!tag) + return null; let pubkey = tag[1]; let cond = tag[2]; let sig = tag[3]; @@ -9079,24 +8419,18 @@ zoo`.split("\n"); let [key, operator, value] = conditions[i].split(/\b/); if (key === "kind" && operator === "=" && event.kind === parseInt(value)) continue; - else if ( - key === "created_at" && - operator === "<" && - event.created_at < parseInt(value) - ) + else if (key === "created_at" && operator === "<" && event.created_at < parseInt(value)) continue; - else if ( - key === "created_at" && - operator === ">" && - event.created_at > parseInt(value) - ) + else if (key === "created_at" && operator === ">" && event.created_at > parseInt(value)) continue; - else return null; + else + return null; } let sighash = sha256( utf8Encoder.encode(`nostr:delegation:${event.pubkey}:${cond}`) ); - if (!schnorr.verify(sig, sighash, pubkey)) return null; + if (!schnorr.verify(sig, sighash, pubkey)) + return null; return pubkey; } @@ -9105,7 +8439,7 @@ zoo`.split("\n"); __export(nip27_exports, { matchAll: () => matchAll, regex: () => regex, - replaceAll: () => replaceAll, + replaceAll: () => replaceAll }); init_define_process(); var regex = () => new RegExp(`\\b${NOSTR_URI_REGEX.source}\\b`, "g"); @@ -9119,9 +8453,10 @@ zoo`.split("\n"); value, decoded: decode(value), start: match.index, - end: match.index + uri.length, + end: match.index + uri.length }; - } catch (_e) {} + } catch (_e) { + } } } function replaceAll(content, replacer) { @@ -9129,7 +8464,7 @@ zoo`.split("\n"); return replacer({ uri, value, - decoded: decode(value), + decoded: decode(value) }); }); } @@ -9138,25 +8473,21 @@ zoo`.split("\n"); var nip39_exports = {}; __export(nip39_exports, { useFetchImplementation: () => useFetchImplementation2, - validateGithub: () => validateGithub, + validateGithub: () => validateGithub }); init_define_process(); var _fetch2; try { _fetch2 = fetch; - } catch {} + } catch { + } function useFetchImplementation2(fetchImplementation) { _fetch2 = fetchImplementation; } async function validateGithub(pubkey, username, proof) { try { - let res = await ( - await _fetch2(`https://gist.github.com/${username}/${proof}/raw`) - ).text(); - return ( - res === - `Verifying that I control the following Nostr public key: ${pubkey}` - ); + let res = await (await _fetch2(`https://gist.github.com/${username}/${proof}/raw`)).text(); + return res === `Verifying that I control the following Nostr public key: ${pubkey}`; } catch (_) { return false; } @@ -9165,18 +8496,22 @@ zoo`.split("\n"); // nip42.ts var nip42_exports = {}; __export(nip42_exports, { - authenticate: () => authenticate, + authenticate: () => authenticate }); init_define_process(); - var authenticate = async ({ challenge: challenge2, relay, sign }) => { + var authenticate = async ({ + challenge: challenge2, + relay, + sign + }) => { const e = { kind: 22242 /* ClientAuth */, created_at: Math.floor(Date.now() / 1e3), tags: [ ["relay", relay.url], - ["challenge", challenge2], + ["challenge", challenge2] ], - content: "", + content: "" }; const pub = relay.auth(await sign(e)); return new Promise((resolve, reject) => { @@ -9198,13 +8533,14 @@ zoo`.split("\n"); makeZapReceipt: () => makeZapReceipt, makeZapRequest: () => makeZapRequest, useFetchImplementation: () => useFetchImplementation3, - validateZapRequest: () => validateZapRequest, + validateZapRequest: () => validateZapRequest }); init_define_process(); var _fetch3; try { _fetch3 = fetch; - } catch {} + } catch { + } function useFetchImplementation3(fetchImplementation) { _fetch3 = fetchImplementation; } @@ -9227,12 +8563,21 @@ zoo`.split("\n"); if (body.allowsNostr && body.nostrPubkey) { return body.callback; } - } catch (err) {} + } catch (err) { + } return null; } - function makeZapRequest({ profile, event, amount, relays, comment = "" }) { - if (!amount) throw new Error("amount not given"); - if (!profile) throw new Error("profile not given"); + function makeZapRequest({ + profile, + event, + amount, + relays, + comment = "" + }) { + if (!amount) + throw new Error("amount not given"); + if (!profile) + throw new Error("profile not given"); let zr = { kind: 9734, created_at: Math.round(Date.now() / 1e3), @@ -9240,8 +8585,8 @@ zoo`.split("\n"); tags: [ ["p", profile], ["amount", amount.toString()], - ["relays", ...relays], - ], + ["relays", ...relays] + ] }; if (event) { zr.tags.push(["e", event]); @@ -9260,17 +8605,24 @@ zoo`.split("\n"); if (!verifySignature(zapRequest)) return "Invalid signature on zap request."; let p = zapRequest.tags.find(([t, v]) => t === "p" && v); - if (!p) return "Zap request doesn't have a 'p' tag."; + if (!p) + return "Zap request doesn't have a 'p' tag."; if (!p[1].match(/^[a-f0-9]{64}$/)) return "Zap request 'p' tag is not valid hex."; let e = zapRequest.tags.find(([t, v]) => t === "e" && v); if (e && !e[1].match(/^[a-f0-9]{64}$/)) return "Zap request 'e' tag is not valid hex."; let relays = zapRequest.tags.find(([t, v]) => t === "relays" && v); - if (!relays) return "Zap request doesn't have a 'relays' tag."; + if (!relays) + return "Zap request doesn't have a 'relays' tag."; return null; } - function makeZapReceipt({ zapRequest, preimage, bolt11, paidAt }) { + function makeZapReceipt({ + zapRequest, + preimage, + bolt11, + paidAt + }) { let zr = JSON.parse(zapRequest); let tagsFromZapRequest = zr.tags.filter( ([t]) => t === "e" || t === "p" || t === "a" @@ -9282,8 +8634,8 @@ zoo`.split("\n"); tags: [ ...tagsFromZapRequest, ["bolt11", bolt11], - ["description", zapRequest], - ], + ["description", zapRequest] + ] }; if (preimage) { zap.tags.push(["preimage", preimage]); @@ -9295,16 +8647,11 @@ zoo`.split("\n"); var nip98_exports = {}; __export(nip98_exports, { getToken: () => getToken, - validateToken: () => validateToken, + validateToken: () => validateToken }); init_define_process(); var _authorizationScheme = "Nostr "; - async function getToken( - loginUrl, - httpMethod, - sign, - includeAuthorizationScheme = false - ) { + async function getToken(loginUrl, httpMethod, sign, includeAuthorizationScheme = false) { if (!loginUrl || !httpMethod) throw new Error("Missing loginUrl or httpMethod"); if (httpMethod !== "get" /* Get */ && httpMethod !== "post" /* Post */) @@ -9312,17 +8659,12 @@ zoo`.split("\n"); const event = getBlankEvent(27235 /* HttpAuth */); event.tags = [ ["u", loginUrl], - ["method", httpMethod], + ["method", httpMethod] ]; event.created_at = Math.round(new Date().getTime() / 1e3); const signedEvent = await sign(event); - const authorizationScheme = includeAuthorizationScheme - ? _authorizationScheme - : ""; - return ( - authorizationScheme + - base64.encode(utf8Encoder.encode(JSON.stringify(signedEvent))) - ); + const authorizationScheme = includeAuthorizationScheme ? _authorizationScheme : ""; + return authorizationScheme + base64.encode(utf8Encoder.encode(JSON.stringify(signedEvent))); } async function validateToken(token, url, method) { if (!token) { @@ -9354,10 +8696,7 @@ zoo`.split("\n"); throw new Error("Invalid nostr event, url tag invalid"); } const methodTag = event.tags.find((t) => t[0] === "method"); - if ( - methodTag?.length !== 1 && - methodTag?.[1].toLowerCase() !== method.toLowerCase() - ) { + if (methodTag?.length !== 1 && methodTag?.[1].toLowerCase() !== method.toLowerCase()) { throw new Error("Invalid nostr event, method tag invalid"); } return true; From eb589e354b71cb20e9e0ca4123fa395344912647 Mon Sep 17 00:00:00 2001 From: Patrick Mulligan Date: Fri, 29 Nov 2024 17:32:18 -0600 Subject: [PATCH 6/9] chore: revert paths --- static/market/index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/static/market/index.html b/static/market/index.html index 942d4e7..ae74553 100644 --- a/static/market/index.html +++ b/static/market/index.html @@ -16,8 +16,8 @@ - - + + From 582506b8863e73adb7122d20c012ac0d000252a8 Mon Sep 17 00:00:00 2001 From: Patrick Mulligan Date: Fri, 29 Nov 2024 17:34:16 -0600 Subject: [PATCH 7/9] chore: update .js and .css build IDs --- templates/nostrmarket/market.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/templates/nostrmarket/market.html b/templates/nostrmarket/market.html index b03a7a4..553c2e1 100644 --- a/templates/nostrmarket/market.html +++ b/templates/nostrmarket/market.html @@ -25,8 +25,8 @@ - + src="{{ url_for('nostrmarket_static', path='market/assets/index.dfb4e5db.js')}}"> + From 0ba25021fb03cabc5c26a184a8d45a0a1aa8e0b5 Mon Sep 17 00:00:00 2001 From: Patrick Mulligan Date: Fri, 29 Nov 2024 18:54:18 -0600 Subject: [PATCH 8/9] manually edit to change staticPath and publicPath to /nostrmarket/static/market/ --- static/market/assets/index.de281aed.css | 2 +- static/market/assets/index.dfb4e5db.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/static/market/assets/index.de281aed.css b/static/market/assets/index.de281aed.css index f903024..3af9c0d 100644 --- a/static/market/assets/index.de281aed.css +++ b/static/market/assets/index.de281aed.css @@ -1 +1 @@ -@font-face{font-family:Roboto;font-style:normal;font-weight:100;src:url(/assets/KFOkCnqEu92Fr1MmgVxIIzQ.34e9582c.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-weight:300;src:url(/assets/KFOlCnqEu92Fr1MmSU5fBBc-.bf14c7d7.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-weight:400;src:url(/assets/KFOmCnqEu92Fr1Mu4mxM.f2abf7fb.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-weight:500;src:url(/assets/KFOlCnqEu92Fr1MmEU9fBBc-.9ce7f3ac.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-weight:700;src:url(/assets/KFOlCnqEu92Fr1MmWUlfBBc-.e0fd57c0.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-weight:900;src:url(/assets/KFOlCnqEu92Fr1MmYUtfBBc-.f6537e32.woff) format("woff")}@font-face{font-family:Material Icons;font-style:normal;font-weight:400;font-display:block;src:url(/assets/flUhRq6tzZclQEJ-Vdg-IuiaDsNcIhQ8tQ.4a4dbc62.woff2) format("woff2"),url(/assets/flUhRq6tzZclQEJ-Vdg-IuiaDsNa.fd84f88b.woff) format("woff")}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;display:inline-block;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:"liga"}*,*:before,*:after{box-sizing:inherit;-webkit-tap-highlight-color:transparent;-moz-tap-highlight-color:transparent}html,body,#q-app{width:100%;direction:ltr}body.platform-ios.within-iframe,body.platform-ios.within-iframe #q-app{width:100px;min-width:100%}html,body{margin:0;box-sizing:border-box}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}img{border-style:none}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}hr{box-sizing:content-box;height:0;overflow:visible}button,input,optgroup,select,textarea{font:inherit;font-family:inherit;margin:0}optgroup{font-weight:700}button,input,select{overflow:visible;text-transform:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}button:-moz-focusring,input:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.q-icon{line-height:1;width:1em;height:1em;flex-shrink:0;letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;direction:ltr;text-align:center;position:relative;box-sizing:content-box;fill:currentColor}.q-icon:before,.q-icon:after{width:100%;height:100%;display:flex!important;align-items:center;justify-content:center}.q-icon>svg,.q-icon>img{width:100%;height:100%}.q-icon,.material-icons,.material-icons-outlined,.material-icons-round,.material-icons-sharp,.material-symbols-outlined,.material-symbols-rounded,.material-symbols-sharp{-webkit-user-select:none;user-select:none;cursor:inherit;font-size:inherit;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle}.q-panel{height:100%;width:100%}.q-panel>div{height:100%;width:100%}.q-panel-parent{overflow:hidden;position:relative}.q-loading-bar{position:fixed;z-index:9998;transition:transform .5s cubic-bezier(0,0,.2,1),opacity .5s;background:#f44336}.q-loading-bar--top{left:0;right:0;top:0;width:100%}.q-loading-bar--bottom{left:0;right:0;bottom:0;width:100%}.q-loading-bar--right{top:0;bottom:0;right:0;height:100%}.q-loading-bar--left{top:0;bottom:0;left:0;height:100%}.q-avatar{position:relative;vertical-align:middle;display:inline-block;border-radius:50%;font-size:48px;height:1em;width:1em}.q-avatar__content{font-size:.5em;line-height:.5em}.q-avatar__content,.q-avatar img:not(.q-icon):not(.q-img__image){border-radius:inherit;height:inherit;width:inherit}.q-avatar--square{border-radius:0}.q-badge{background-color:var(--q-primary);color:#fff;padding:2px 6px;border-radius:4px;font-size:12px;line-height:12px;min-height:12px;font-weight:400;vertical-align:baseline}.q-badge--single-line{white-space:nowrap}.q-badge--multi-line{word-break:break-all;word-wrap:break-word}.q-badge--floating{position:absolute;top:-4px;right:-3px;cursor:inherit}.q-badge--transparent{opacity:.8}.q-badge--outline{background-color:transparent;border:1px solid currentColor}.q-badge--rounded{border-radius:1em}.q-banner{min-height:54px;padding:8px 16px;background:#fff}.q-banner--top-padding{padding-top:14px}.q-banner__avatar{min-width:1px!important}.q-banner__avatar>.q-avatar{font-size:46px}.q-banner__avatar>.q-icon{font-size:40px}.q-banner__avatar:not(:empty)+.q-banner__content{padding-left:16px}.q-banner__actions.col-auto{padding-left:16px}.q-banner__actions.col-all .q-btn-item{margin:4px 0 0 4px}.q-banner--dense{min-height:32px;padding:8px}.q-banner--dense.q-banner--top-padding{padding-top:12px}.q-banner--dense .q-banner__avatar>.q-avatar,.q-banner--dense .q-banner__avatar>.q-icon{font-size:28px}.q-banner--dense .q-banner__avatar:not(:empty)+.q-banner__content{padding-left:8px}.q-banner--dense .q-banner__actions.col-auto{padding-left:8px}.q-bar{background:rgba(0,0,0,.2)}.q-bar>.q-icon{margin-left:2px}.q-bar>div,.q-bar>div+.q-icon{margin-left:8px}.q-bar>.q-btn{margin-left:2px}.q-bar>.q-icon:first-child,.q-bar>.q-btn:first-child,.q-bar>div:first-child{margin-left:0}.q-bar--standard{padding:0 12px;height:32px;font-size:18px}.q-bar--standard>div{font-size:16px}.q-bar--standard .q-btn{font-size:11px}.q-bar--dense{padding:0 8px;height:24px;font-size:14px}.q-bar--dense .q-btn{font-size:8px}.q-bar--dark{background:rgba(255,255,255,.15)}.q-breadcrumbs__el{color:inherit}.q-breadcrumbs__el-icon{font-size:125%}.q-breadcrumbs__el-icon--with-label{margin-right:8px}[dir=rtl] .q-breadcrumbs__separator .q-icon{transform:scaleX(-1)}.q-btn{display:inline-flex;flex-direction:column;align-items:stretch;position:relative;outline:0;border:0;vertical-align:middle;font-size:14px;line-height:1.715em;text-decoration:none;color:inherit;background:transparent;font-weight:500;text-transform:uppercase;text-align:center;width:auto;height:auto;cursor:default;padding:4px 16px;min-height:2.572em}.q-btn .q-icon,.q-btn .q-spinner{font-size:1.715em}.q-btn.disabled{opacity:.7!important}.q-btn:before{content:"";display:block;position:absolute;left:0;right:0;top:0;bottom:0;border-radius:inherit;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f}.q-btn--actionable{cursor:pointer}.q-btn--actionable.q-btn--standard:before{transition:box-shadow .3s cubic-bezier(.25,.8,.5,1)}.q-btn--actionable.q-btn--standard:active:before,.q-btn--actionable.q-btn--standard.q-btn--active:before{box-shadow:0 3px 5px -1px #0003,0 5px 8px #00000024,0 1px 14px #0000001f}.q-btn--no-uppercase{text-transform:none}.q-btn--rectangle{border-radius:3px}.q-btn--outline{background:transparent!important}.q-btn--outline:before{border:1px solid currentColor}.q-btn--push{border-radius:7px}.q-btn--push:before{border-bottom:3px solid rgba(0,0,0,.15)}.q-btn--push.q-btn--actionable{transition:transform .3s cubic-bezier(.25,.8,.5,1)}.q-btn--push.q-btn--actionable:before{transition:border-width .3s cubic-bezier(.25,.8,.5,1)}.q-btn--push.q-btn--actionable:active,.q-btn--push.q-btn--actionable.q-btn--active{transform:translateY(2px)}.q-btn--push.q-btn--actionable:active:before,.q-btn--push.q-btn--actionable.q-btn--active:before{border-bottom-width:0}.q-btn--rounded{border-radius:28px}.q-btn--round{border-radius:50%;padding:0;min-width:3em;min-height:3em}.q-btn--square{border-radius:0}.q-btn--flat:before,.q-btn--outline:before,.q-btn--unelevated:before{box-shadow:none}.q-btn--dense{padding:.285em;min-height:2em}.q-btn--dense.q-btn--round{padding:0;min-height:2.4em;min-width:2.4em}.q-btn--dense .on-left{margin-right:6px}.q-btn--dense .on-right{margin-left:6px}.q-btn--fab .q-icon,.q-btn--fab-mini .q-icon{font-size:24px}.q-btn--fab{padding:16px;min-height:56px;min-width:56px}.q-btn--fab .q-icon{margin:auto}.q-btn--fab-mini{padding:8px;min-height:40px;min-width:40px}.q-btn__content{transition:opacity .3s;z-index:0}.q-btn__content--hidden{opacity:0;pointer-events:none}.q-btn__progress{border-radius:inherit;z-index:0}.q-btn__progress-indicator{z-index:-1;transform:translate(-100%);background:rgba(255,255,255,.25)}.q-btn__progress--dark .q-btn__progress-indicator{background:rgba(0,0,0,.2)}.q-btn--flat .q-btn__progress-indicator,.q-btn--outline .q-btn__progress-indicator{opacity:.2;background:currentColor}.q-btn-dropdown--split .q-btn-dropdown__arrow-container{padding:0 4px}.q-btn-dropdown--split .q-btn-dropdown__arrow-container.q-btn--outline{border-left:1px solid currentColor}.q-btn-dropdown--split .q-btn-dropdown__arrow-container:not(.q-btn--outline){border-left:1px solid rgba(255,255,255,.3)}.q-btn-dropdown--simple *+.q-btn-dropdown__arrow{margin-left:8px}.q-btn-dropdown__arrow{transition:transform .28s}.q-btn-dropdown--current{flex-grow:1}.q-btn-group{border-radius:3px;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;vertical-align:middle}.q-btn-group>.q-btn-item{border-radius:inherit;align-self:stretch}.q-btn-group>.q-btn-item:before{box-shadow:none}.q-btn-group>.q-btn-item .q-badge--floating{right:0}.q-btn-group>.q-btn-group{box-shadow:none}.q-btn-group>.q-btn-group:first-child>.q-btn:first-child{border-top-left-radius:inherit;border-bottom-left-radius:inherit}.q-btn-group>.q-btn-group:last-child>.q-btn:last-child{border-top-right-radius:inherit;border-bottom-right-radius:inherit}.q-btn-group>.q-btn-group:not(:first-child)>.q-btn:first-child:before{border-left:0}.q-btn-group>.q-btn-group:not(:last-child)>.q-btn:last-child:before{border-right:0}.q-btn-group>.q-btn-item:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.q-btn-group>.q-btn-item:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.q-btn-group>.q-btn-item.q-btn--standard:before{z-index:-1}.q-btn-group--push{border-radius:7px}.q-btn-group--push>.q-btn--push.q-btn--actionable{transform:none}.q-btn-group--push>.q-btn--push.q-btn--actionable .q-btn__content{transition:margin-top .3s cubic-bezier(.25,.8,.5,1),margin-bottom .3s cubic-bezier(.25,.8,.5,1)}.q-btn-group--push>.q-btn--push.q-btn--actionable:active .q-btn__content,.q-btn-group--push>.q-btn--push.q-btn--actionable.q-btn--active .q-btn__content{margin-top:2px;margin-bottom:-2px}.q-btn-group--rounded{border-radius:28px}.q-btn-group--square{border-radius:0}.q-btn-group--flat,.q-btn-group--outline,.q-btn-group--unelevated{box-shadow:none}.q-btn-group--outline>.q-separator{display:none}.q-btn-group--outline>.q-btn-item+.q-btn-item:before{border-left:0}.q-btn-group--outline>.q-btn-item:not(:last-child):before{border-right:0}.q-btn-group--stretch{align-self:stretch;border-radius:0}.q-btn-group--glossy>.q-btn-item{background-image:linear-gradient(to bottom,rgba(255,255,255,.3),rgba(255,255,255,0) 50%,rgba(0,0,0,.12) 51%,rgba(0,0,0,.04))!important}.q-btn-group--spread>.q-btn-group{display:flex!important}.q-btn-group--spread>.q-btn-item,.q-btn-group--spread>.q-btn-group>.q-btn-item:not(.q-btn-dropdown__arrow-container){width:auto;min-width:0;max-width:100%;flex:10000 1 0%}.q-btn-toggle{position:relative}.q-card{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;vertical-align:top;background:#fff;position:relative}.q-card>div:first-child,.q-card>img:first-child{border-top:0;border-top-left-radius:inherit;border-top-right-radius:inherit}.q-card>div:last-child,.q-card>img:last-child{border-bottom:0;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.q-card>div:not(:first-child),.q-card>img:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.q-card>div:not(:last-child),.q-card>img:not(:last-child){border-bottom-left-radius:0;border-bottom-right-radius:0}.q-card>div{border-left:0;border-right:0;box-shadow:none}.q-card--bordered{border:1px solid rgba(0,0,0,.12)}.q-card--dark{border-color:#ffffff47;box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-card__section{position:relative}.q-card__section--vert{padding:16px}.q-card__section--horiz>div:first-child,.q-card__section--horiz>img:first-child{border-top-left-radius:inherit;border-bottom-left-radius:inherit}.q-card__section--horiz>div:last-child,.q-card__section--horiz>img:last-child{border-top-right-radius:inherit;border-bottom-right-radius:inherit}.q-card__section--horiz>div:not(:first-child),.q-card__section--horiz>img:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.q-card__section--horiz>div:not(:last-child),.q-card__section--horiz>img:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.q-card__section--horiz>div{border-top:0;border-bottom:0;box-shadow:none}.q-card__actions{padding:8px;align-items:center}.q-card__actions .q-btn--rectangle{padding:0 8px}.q-card__actions--horiz>.q-btn-item+.q-btn-item,.q-card__actions--horiz>.q-btn-group+.q-btn-item,.q-card__actions--horiz>.q-btn-item+.q-btn-group{margin-left:8px}.q-card__actions--vert>.q-btn-item.q-btn--round{align-self:center}.q-card__actions--vert>.q-btn-item+.q-btn-item,.q-card__actions--vert>.q-btn-group+.q-btn-item,.q-card__actions--vert>.q-btn-item+.q-btn-group{margin-top:4px}.q-card__actions--vert>.q-btn-group>.q-btn-item{flex-grow:1}.q-card>img{display:block;width:100%;max-width:100%;border:0}.q-carousel{background-color:#fff;height:400px}.q-carousel__slide{min-height:100%;background-size:cover;background-position:50%}.q-carousel__slide,.q-carousel .q-carousel--padding{padding:16px}.q-carousel__slides-container{height:100%}.q-carousel__control{color:#fff}.q-carousel__arrow{pointer-events:none}.q-carousel__arrow .q-icon{font-size:28px}.q-carousel__arrow .q-btn{pointer-events:all}.q-carousel__prev-arrow--horizontal,.q-carousel__next-arrow--horizontal{top:16px;bottom:16px}.q-carousel__prev-arrow--horizontal{left:16px}.q-carousel__next-arrow--horizontal{right:16px}.q-carousel__prev-arrow--vertical,.q-carousel__next-arrow--vertical{left:16px;right:16px}.q-carousel__prev-arrow--vertical{top:16px}.q-carousel__next-arrow--vertical{bottom:16px}.q-carousel__navigation--top,.q-carousel__navigation--bottom{left:16px;right:16px;overflow-x:auto;overflow-y:hidden}.q-carousel__navigation--top{top:16px}.q-carousel__navigation--bottom{bottom:16px}.q-carousel__navigation--left,.q-carousel__navigation--right{top:16px;bottom:16px;overflow-x:hidden;overflow-y:auto}.q-carousel__navigation--left>.q-carousel__navigation-inner,.q-carousel__navigation--right>.q-carousel__navigation-inner{flex-direction:column}.q-carousel__navigation--left{left:16px}.q-carousel__navigation--right{right:16px}.q-carousel__navigation-inner{flex:1 1 auto}.q-carousel__navigation .q-btn{margin:6px 4px;padding:5px}.q-carousel__navigation-icon--inactive{opacity:.7}.q-carousel .q-carousel__thumbnail{margin:2px;height:50px;width:auto;display:inline-block;cursor:pointer;border:1px solid transparent;border-radius:4px;vertical-align:middle;opacity:.7;transition:opacity .3s}.q-carousel .q-carousel__thumbnail:hover,.q-carousel .q-carousel__thumbnail--active{opacity:1}.q-carousel .q-carousel__thumbnail--active{border-color:currentColor;cursor:default}.q-carousel--navigation-top.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-top .q-carousel--padding,.q-carousel--arrows-vertical.q-carousel--with-padding .q-carousel__slide,.q-carousel--arrows-vertical .q-carousel--padding{padding-top:60px}.q-carousel--navigation-bottom.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-bottom .q-carousel--padding,.q-carousel--arrows-vertical.q-carousel--with-padding .q-carousel__slide,.q-carousel--arrows-vertical .q-carousel--padding{padding-bottom:60px}.q-carousel--navigation-left.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-left .q-carousel--padding,.q-carousel--arrows-horizontal.q-carousel--with-padding .q-carousel__slide,.q-carousel--arrows-horizontal .q-carousel--padding{padding-left:60px}.q-carousel--navigation-right.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-right .q-carousel--padding,.q-carousel--arrows-horizontal.q-carousel--with-padding .q-carousel__slide,.q-carousel--arrows-horizontal .q-carousel--padding{padding-right:60px}.q-carousel.fullscreen{height:100%}.q-message-name,.q-message-stamp,.q-message-label{font-size:small}.q-message-label{margin:24px 0;text-align:center}.q-message-stamp{color:inherit;margin-top:4px;opacity:.6;display:none}.q-message-avatar{border-radius:50%;width:48px;height:48px;min-width:48px}.q-message{margin-bottom:8px}.q-message:first-child .q-message-label{margin-top:0}.q-message-avatar--received{margin-right:8px}.q-message-text--received{color:#81c784;border-radius:4px 4px 4px 0}.q-message-text--received:last-child:before{right:100%;border-right:0 solid transparent;border-left:8px solid transparent;border-bottom:8px solid currentColor}.q-message-text-content--received{color:#000}.q-message-name--sent{text-align:right}.q-message-avatar--sent{margin-left:8px}.q-message-container--sent{flex-direction:row-reverse}.q-message-text--sent{color:#e0e0e0;border-radius:4px 4px 0}.q-message-text--sent:last-child:before{left:100%;border-left:0 solid transparent;border-right:8px solid transparent;border-bottom:8px solid currentColor}.q-message-text-content--sent{color:#000}.q-message-text{background:currentColor;padding:8px;line-height:1.2;word-break:break-word;position:relative}.q-message-text+.q-message-text{margin-top:3px}.q-message-text:last-child{min-height:48px}.q-message-text:last-child .q-message-stamp{display:block}.q-message-text:last-child:before{content:"";position:absolute;bottom:0;width:0;height:0}.q-checkbox{vertical-align:middle}.q-checkbox__native{width:1px;height:1px}.q-checkbox__bg,.q-checkbox__icon-container{-webkit-user-select:none;user-select:none}.q-checkbox__bg{top:25%;left:25%;width:50%;height:50%;border:2px solid currentColor;border-radius:2px;transition:background .22s cubic-bezier(0,0,.2,1) 0ms;-webkit-print-color-adjust:exact}.q-checkbox__icon{color:currentColor;font-size:.5em}.q-checkbox__svg{color:#fff}.q-checkbox__truthy{stroke:currentColor;stroke-width:3.12px;stroke-dashoffset:29.78334;stroke-dasharray:29.78334}.q-checkbox__indet{fill:currentColor;transform-origin:50% 50%;transform:rotate(-280deg) scale(0)}.q-checkbox__inner{font-size:40px;width:1em;min-width:1em;height:1em;outline:0;border-radius:50%;color:#0000008a}.q-checkbox__inner--truthy,.q-checkbox__inner--indet{color:var(--q-primary)}.q-checkbox__inner--truthy .q-checkbox__bg,.q-checkbox__inner--indet .q-checkbox__bg{background:currentColor}.q-checkbox__inner--truthy path{stroke-dashoffset:0;transition:stroke-dashoffset .18s cubic-bezier(.4,0,.6,1) 0ms}.q-checkbox__inner--indet .q-checkbox__indet{transform:rotate(0) scale(1);transition:transform .22s cubic-bezier(0,0,.2,1) 0ms}.q-checkbox.disabled{opacity:.75!important}.q-checkbox--dark .q-checkbox__inner{color:#ffffffb3}.q-checkbox--dark .q-checkbox__inner:before{opacity:.32!important}.q-checkbox--dark .q-checkbox__inner--truthy,.q-checkbox--dark .q-checkbox__inner--indet{color:var(--q-primary)}.q-checkbox--dense .q-checkbox__inner{width:.5em;min-width:.5em;height:.5em}.q-checkbox--dense .q-checkbox__bg{left:5%;top:5%;width:90%;height:90%}.q-checkbox--dense .q-checkbox__label{padding-left:.5em}.q-checkbox--dense.reverse .q-checkbox__label{padding-left:0;padding-right:.5em}body.desktop .q-checkbox:not(.disabled) .q-checkbox__inner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:currentColor;opacity:.12;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0,0,.2,1)}body.desktop .q-checkbox:not(.disabled):focus .q-checkbox__inner:before,body.desktop .q-checkbox:not(.disabled):hover .q-checkbox__inner:before{transform:scaleZ(1)}body.desktop .q-checkbox--dense:not(.disabled):focus .q-checkbox__inner:before,body.desktop .q-checkbox--dense:not(.disabled):hover .q-checkbox__inner:before{transform:scale3d(1.4,1.4,1)}.q-chip{vertical-align:middle;border-radius:16px;outline:0;position:relative;height:2em;max-width:100%;margin:4px;background:#e0e0e0;color:#000000de;font-size:14px;padding:.5em .9em}.q-chip--colored .q-chip__icon,.q-chip--dark .q-chip__icon{color:inherit}.q-chip--outline{background:transparent!important;border:1px solid currentColor}.q-chip .q-avatar{font-size:2em;margin-left:-.45em;margin-right:.2em;border-radius:16px}.q-chip--selected .q-avatar{display:none}.q-chip__icon{color:#0000008a;font-size:1.5em;margin:-.2em}.q-chip__icon--left{margin-right:.2em}.q-chip__icon--right{margin-left:.2em}.q-chip__icon--remove{margin-left:.1em;margin-right:-.5em;opacity:.6;outline:0}.q-chip__icon--remove:hover,.q-chip__icon--remove:focus{opacity:1}.q-chip__content{white-space:nowrap}.q-chip--dense{border-radius:12px;padding:0 .4em;height:1.5em}.q-chip--dense .q-avatar{font-size:1.5em;margin-left:-.27em;margin-right:.1em;border-radius:12px}.q-chip--dense .q-chip__icon{font-size:1.25em}.q-chip--dense .q-chip__icon--left{margin-right:.195em}.q-chip--dense .q-chip__icon--remove{margin-right:-.25em}.q-chip--square{border-radius:4px}.q-chip--square .q-avatar{border-radius:3px 0 0 3px}body.desktop .q-chip--clickable:focus{box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f}body.desktop.body--dark .q-chip--clickable:focus{box-shadow:0 1px 3px #fff3,0 1px 1px #ffffff24,0 2px 1px -1px #ffffff1f}.q-circular-progress{display:inline-block;position:relative;vertical-align:middle;width:1em;height:1em;line-height:1}.q-circular-progress.q-focusable{border-radius:50%}.q-circular-progress__svg{width:100%;height:100%}.q-circular-progress__text{font-size:.25em}.q-circular-progress--indeterminate .q-circular-progress__svg{transform-origin:50% 50%;animation:q-spin 2s linear infinite}.q-circular-progress--indeterminate .q-circular-progress__circle{stroke-dasharray:1 400;stroke-dashoffset:0;animation:q-circular-progress-circle 1.5s ease-in-out infinite}@keyframes q-circular-progress-circle{0%{stroke-dasharray:1,400;stroke-dashoffset:0}50%{stroke-dasharray:400,400;stroke-dashoffset:-100}to{stroke-dasharray:400,400;stroke-dashoffset:-300}}.q-color-picker{overflow:hidden;background:#fff;max-width:350px;vertical-align:top;min-width:180px;border-radius:4px;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f}.q-color-picker .q-tab{padding:0!important}.q-color-picker--bordered{border:1px solid rgba(0,0,0,.12)}.q-color-picker__header-tabs{height:32px}.q-color-picker__header input{line-height:24px;border:0}.q-color-picker__header .q-tab{min-height:32px!important;height:32px!important}.q-color-picker__header .q-tab--inactive{background:linear-gradient(to top,rgba(0,0,0,.3) 0%,rgba(0,0,0,.15) 25%,rgba(0,0,0,.1))}.q-color-picker__error-icon{bottom:2px;right:2px;font-size:24px;opacity:0;transition:opacity .3s ease-in}.q-color-picker__header-content{position:relative;background:#fff}.q-color-picker__header-content--light{color:#000}.q-color-picker__header-content--dark{color:#fff}.q-color-picker__header-content--dark .q-tab--inactive:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(255,255,255,.2)}.q-color-picker__header-banner{height:36px}.q-color-picker__header-bg{background:#fff;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAH0lEQVQoU2NkYGAwZkAFZ5G5jPRRgOYEVDeB3EBjBQBOZwTVugIGyAAAAABJRU5ErkJggg==)!important}.q-color-picker__footer{height:36px}.q-color-picker__footer .q-tab{min-height:36px!important;height:36px!important}.q-color-picker__footer .q-tab--inactive{background:linear-gradient(to bottom,rgba(0,0,0,.3) 0%,rgba(0,0,0,.15) 25%,rgba(0,0,0,.1))}.q-color-picker__spectrum{width:100%;height:100%}.q-color-picker__spectrum-tab{padding:0!important}.q-color-picker__spectrum-white{background:linear-gradient(to right,#fff,rgba(255,255,255,0))}.q-color-picker__spectrum-black{background:linear-gradient(to top,#000,rgba(0,0,0,0))}.q-color-picker__spectrum-circle{width:10px;height:10px;box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px #0000004d,0 0 1px 2px #0006;border-radius:50%;transform:translate(-5px,-5px)}.q-color-picker__hue .q-slider__track{background:linear-gradient(to right,#f00 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,#f00 100%)!important;opacity:1}.q-color-picker__alpha .q-slider__track-container{padding-top:0}.q-color-picker__alpha .q-slider__track:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(90deg,rgba(255,255,255,0),#757575)}.q-color-picker__sliders{padding:0 16px}.q-color-picker__sliders .q-slider__thumb{color:#424242}.q-color-picker__sliders .q-slider__thumb path{stroke-width:2px;fill:transparent}.q-color-picker__sliders .q-slider--active path{stroke-width:3px}.q-color-picker__tune-tab .q-slider{margin-left:18px;margin-right:18px}.q-color-picker__tune-tab input{font-size:11px;border:1px solid #e0e0e0;border-radius:4px;width:3.5em}.q-color-picker__palette-tab{padding:0!important}.q-color-picker__palette-rows--editable .q-color-picker__cube{cursor:pointer}.q-color-picker__cube{padding-bottom:10%;width:10%!important}.q-color-picker input{color:inherit;background:transparent;outline:0;text-align:center}.q-color-picker .q-tabs{overflow:hidden}.q-color-picker .q-tab--active{box-shadow:0 0 14px 3px #0003}.q-color-picker .q-tab--active .q-focus-helper,.q-color-picker .q-tab__indicator{display:none}.q-color-picker .q-tab-panels{background:inherit}.q-color-picker--dark{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-color-picker--dark .q-color-picker__tune-tab input{border:1px solid rgba(255,255,255,.3)}.q-color-picker--dark .q-slider__thumb{color:#fafafa}.q-date{display:inline-flex;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;background:#fff;width:290px;min-width:290px;max-width:100%}.q-date--bordered{border:1px solid rgba(0,0,0,.12)}.q-date__header{border-top-left-radius:inherit;color:#fff;background-color:var(--q-primary);padding:16px}.q-date__actions{padding:0 16px 16px}.q-date__content,.q-date__main{outline:0}.q-date__content .q-btn{font-weight:400}.q-date__header-link{opacity:.64;outline:0;transition:opacity .3s ease-out}.q-date__header-link--active,.q-date__header-link:hover,.q-date__header-link:focus{opacity:1}.q-date__header-subtitle{font-size:14px;line-height:1.75;letter-spacing:.00938em}.q-date__header-title-label{font-size:24px;line-height:1.2;letter-spacing:.00735em}.q-date__view{height:100%;width:100%;min-height:290px;padding:16px}.q-date__navigation{height:12.5%}.q-date__navigation>div:first-child{width:8%;min-width:24px;justify-content:flex-end}.q-date__navigation>div:last-child{width:8%;min-width:24px;justify-content:flex-start}.q-date__calendar-weekdays{height:12.5%}.q-date__calendar-weekdays>div{opacity:.38;font-size:12px}.q-date__calendar-item{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;width:14.285%!important;height:12.5%!important;position:relative;padding:1px}.q-date__calendar-item:after{content:"";position:absolute;pointer-events:none;top:1px;right:0;bottom:1px;left:0;border-style:dashed;border-color:transparent;border-width:1px}.q-date__calendar-item>div,.q-date__calendar-item button{width:30px;height:30px;border-radius:50%}.q-date__calendar-item>div{line-height:30px;text-align:center}.q-date__calendar-item>button{line-height:22px}.q-date__calendar-item--out{opacity:.18}.q-date__calendar-item--fill{visibility:hidden}.q-date__range:before,.q-date__range-from:before,.q-date__range-to:before{content:"";background-color:currentColor;position:absolute;top:1px;bottom:1px;left:0;right:0;opacity:.3}.q-date__range:nth-child(7n-6):before,.q-date__range-from:nth-child(7n-6):before,.q-date__range-to:nth-child(7n-6):before{border-top-left-radius:0;border-bottom-left-radius:0}.q-date__range:nth-child(7n):before,.q-date__range-from:nth-child(7n):before,.q-date__range-to:nth-child(7n):before{border-top-right-radius:0;border-bottom-right-radius:0}.q-date__range-from:before{left:50%}.q-date__range-to:before{right:50%}.q-date__edit-range:after{border-color:currentColor transparent}.q-date__edit-range:nth-child(7n-6):after{border-top-left-radius:0;border-bottom-left-radius:0}.q-date__edit-range:nth-child(7n):after{border-top-right-radius:0;border-bottom-right-radius:0}.q-date__edit-range-from:after,.q-date__edit-range-from-to:after{left:4px;border-left-color:currentColor;border-top-color:currentColor;border-bottom-color:currentColor;border-top-left-radius:28px;border-bottom-left-radius:28px}.q-date__edit-range-to:after,.q-date__edit-range-from-to:after{right:4px;border-right-color:currentColor;border-top-color:currentColor;border-bottom-color:currentColor;border-top-right-radius:28px;border-bottom-right-radius:28px}.q-date__calendar-days-container{height:75%;min-height:192px}.q-date__calendar-days>div{height:16.66%!important}.q-date__event{position:absolute;bottom:2px;left:50%;height:5px;width:8px;border-radius:5px;background-color:var(--q-secondary);transform:translate3d(-50%,0,0)}.q-date__today{box-shadow:0 0 1px 0 currentColor}.q-date__years-content{padding:0 8px}.q-date__years-item,.q-date__months-item{flex:0 0 33.3333%}.q-date.disabled .q-date__header,.q-date.disabled .q-date__content,.q-date--readonly .q-date__header,.q-date--readonly .q-date__content{pointer-events:none}.q-date--readonly .q-date__navigation{display:none}.q-date--portrait{flex-direction:column}.q-date--portrait-standard .q-date__content{height:calc(100% - 86px)}.q-date--portrait-standard .q-date__header{border-top-right-radius:inherit;height:86px}.q-date--portrait-standard .q-date__header-title{align-items:center;height:30px}.q-date--portrait-minimal .q-date__content{height:100%}.q-date--landscape{flex-direction:row;align-items:stretch;min-width:420px}.q-date--landscape>div{display:flex;flex-direction:column}.q-date--landscape .q-date__content{height:100%}.q-date--landscape-standard{min-width:420px}.q-date--landscape-standard .q-date__header{border-bottom-left-radius:inherit;min-width:110px;width:110px}.q-date--landscape-standard .q-date__header-title{flex-direction:column}.q-date--landscape-standard .q-date__header-today{margin-top:12px;margin-left:-8px}.q-date--landscape-minimal{width:310px}.q-date--dark{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f;border-color:#ffffff47}.q-dialog__title{font-size:1.25rem;font-weight:500;line-height:2rem;letter-spacing:.0125em}.q-dialog__progress{font-size:4rem}.q-dialog__inner{outline:0}.q-dialog__inner>div{pointer-events:all;overflow:auto;-webkit-overflow-scrolling:touch;will-change:scroll-position;border-radius:4px}.q-dialog__inner--square>div{border-radius:0!important}.q-dialog__inner>.q-card>.q-card__actions .q-btn--rectangle{min-width:64px}.q-dialog__inner--minimized{padding:24px}.q-dialog__inner--minimized>div{max-height:calc(100vh - 48px)}.q-dialog__inner--maximized>div{height:100%;width:100%;max-height:100vh;max-width:100vw;border-radius:0!important;top:0!important;left:0!important}.q-dialog__inner--top,.q-dialog__inner--bottom{padding-top:0!important;padding-bottom:0!important}.q-dialog__inner--right,.q-dialog__inner--left{padding-right:0!important;padding-left:0!important}.q-dialog__inner--left:not(.q-dialog__inner--animating)>div,.q-dialog__inner--top:not(.q-dialog__inner--animating)>div{border-top-left-radius:0}.q-dialog__inner--right:not(.q-dialog__inner--animating)>div,.q-dialog__inner--top:not(.q-dialog__inner--animating)>div{border-top-right-radius:0}.q-dialog__inner--left:not(.q-dialog__inner--animating)>div,.q-dialog__inner--bottom:not(.q-dialog__inner--animating)>div{border-bottom-left-radius:0}.q-dialog__inner--right:not(.q-dialog__inner--animating)>div,.q-dialog__inner--bottom:not(.q-dialog__inner--animating)>div{border-bottom-right-radius:0}.q-dialog__inner--fullwidth>div{width:100%!important;max-width:100%!important}.q-dialog__inner--fullheight>div{height:100%!important;max-height:100%!important}.q-dialog__backdrop{z-index:-1;pointer-events:all;outline:0;background:rgba(0,0,0,.4)}body.platform-ios .q-dialog__inner--minimized>div,body.platform-android:not(.native-mobile) .q-dialog__inner--minimized>div{max-height:calc(100vh - 108px)}body.q-ios-padding .q-dialog__inner{padding-top:20px!important;padding-top:env(safe-area-inset-top)!important;padding-bottom:env(safe-area-inset-bottom)!important}body.q-ios-padding .q-dialog__inner>div{max-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom))!important}@media (max-width: 599.98px){.q-dialog__inner--top,.q-dialog__inner--bottom{padding-left:0;padding-right:0}.q-dialog__inner--top>div,.q-dialog__inner--bottom>div{width:100%!important}}@media (min-width: 600px){.q-dialog__inner--minimized>div{max-width:560px}}.q-body--dialog{overflow:hidden}.q-bottom-sheet{padding-bottom:8px}.q-bottom-sheet__avatar{border-radius:50%}.q-bottom-sheet--list{width:400px}.q-bottom-sheet--list .q-icon,.q-bottom-sheet--list img{font-size:24px;width:24px;height:24px}.q-bottom-sheet--grid{width:700px}.q-bottom-sheet--grid .q-bottom-sheet__item{padding:8px;text-align:center;min-width:100px}.q-bottom-sheet--grid .q-icon,.q-bottom-sheet--grid img,.q-bottom-sheet--grid .q-bottom-sheet__empty-icon{font-size:48px;width:48px;height:48px;margin-bottom:8px}.q-bottom-sheet--grid .q-separator{margin:12px 0}.q-bottom-sheet__item{flex:0 0 33.3333%}@media (min-width: 600px){.q-bottom-sheet__item{flex:0 0 25%}}.q-dialog-plugin{width:400px}.q-dialog-plugin__form{max-height:50vh}.q-dialog-plugin .q-card__section+.q-card__section{padding-top:0}.q-dialog-plugin--progress{text-align:center}.q-editor{border:1px solid rgba(0,0,0,.12);border-radius:4px;background-color:#fff}.q-editor.disabled{border-style:dashed}.q-editor>div:first-child,.q-editor__toolbars-container,.q-editor__toolbars-container>div:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.q-editor__content{outline:0;padding:10px;min-height:10em;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;overflow:auto;max-width:100%}.q-editor__content pre{white-space:pre-wrap}.q-editor__content hr{border:0;outline:0;margin:1px;height:1px;background:rgba(0,0,0,.12)}.q-editor__content:empty:not(:focus):before{content:attr(placeholder);opacity:.7}.q-editor__toolbar{border-bottom:1px solid rgba(0,0,0,.12);min-height:32px}.q-editor__toolbars-container{max-width:100%}.q-editor .q-btn{margin:4px}.q-editor__toolbar-group{position:relative;margin:0 4px}.q-editor__toolbar-group+.q-editor__toolbar-group:before{content:"";position:absolute;left:-4px;top:4px;bottom:4px;width:1px;background:rgba(0,0,0,.12)}.q-editor__link-input{color:inherit;text-decoration:none;text-transform:none;border:none;border-radius:0;background:none;outline:0}.q-editor--flat,.q-editor--flat .q-editor__toolbar{border:0}.q-editor--dense .q-editor__toolbar-group{display:flex;align-items:center;flex-wrap:nowrap}.q-editor--dark{border-color:#ffffff47}.q-editor--dark .q-editor__content hr{background:rgba(255,255,255,.28)}.q-editor--dark .q-editor__toolbar{border-color:#ffffff47}.q-editor--dark .q-editor__toolbar-group+.q-editor__toolbar-group:before{background:rgba(255,255,255,.28)}.q-expansion-item__border{opacity:0}.q-expansion-item__toggle-icon{position:relative;transition:transform .3s}.q-expansion-item__toggle-icon--rotated{transform:rotate(180deg)}.q-expansion-item__toggle-focus{width:1em!important;height:1em!important;position:relative!important}.q-expansion-item__toggle-focus+.q-expansion-item__toggle-icon{margin-top:-1em}.q-expansion-item--standard.q-expansion-item--expanded>div>.q-expansion-item__border{opacity:1}.q-expansion-item--popup{transition:padding .5s}.q-expansion-item--popup>.q-expansion-item__container{border:1px solid rgba(0,0,0,.12)}.q-expansion-item--popup>.q-expansion-item__container>.q-separator{display:none}.q-expansion-item--popup.q-expansion-item--collapsed{padding:0 15px}.q-expansion-item--popup.q-expansion-item--expanded{padding:15px 0}.q-expansion-item--popup.q-expansion-item--expanded+.q-expansion-item--popup.q-expansion-item--expanded{padding-top:0}.q-expansion-item--popup.q-expansion-item--collapsed:not(:first-child)>.q-expansion-item__container{border-top-width:0}.q-expansion-item--popup.q-expansion-item--expanded+.q-expansion-item--popup.q-expansion-item--collapsed>.q-expansion-item__container{border-top-width:1px}.q-expansion-item__content>.q-card{box-shadow:none;border-radius:0}.q-expansion-item:first-child>div>.q-expansion-item__border--top{opacity:0}.q-expansion-item:last-child>div>.q-expansion-item__border--bottom{opacity:0}.q-expansion-item--expanded+.q-expansion-item--expanded>div>.q-expansion-item__border--top{opacity:0}.q-expansion-item--expanded .q-textarea--autogrow textarea{animation:q-expansion-done 0s}@keyframes q-expansion-done{0%{--q-exp-done: 1}}.z-fab{z-index:990}.q-fab{position:relative;vertical-align:middle}.q-fab>.q-btn{width:100%}.q-fab--form-rounded{border-radius:28px}.q-fab--form-square{border-radius:4px}.q-fab__icon,.q-fab__active-icon{transition:opacity .4s,transform .4s}.q-fab__icon{opacity:1;transform:rotate(0)}.q-fab__active-icon{opacity:0;transform:rotate(-180deg)}.q-fab__label--external{position:absolute;padding:0 8px;transition:opacity .18s cubic-bezier(.65,.815,.735,.395)}.q-fab__label--external-hidden{opacity:0;pointer-events:none}.q-fab__label--external-left{top:50%;left:-12px;transform:translate(-100%,-50%)}.q-fab__label--external-right{top:50%;right:-12px;transform:translate(100%,-50%)}.q-fab__label--external-bottom{bottom:-12px;left:50%;transform:translate(-50%,100%)}.q-fab__label--external-top{top:-12px;left:50%;transform:translate(-50%,-100%)}.q-fab__label--internal{padding:0;transition:font-size .12s cubic-bezier(.65,.815,.735,.395),max-height .12s cubic-bezier(.65,.815,.735,.395),opacity .07s cubic-bezier(.65,.815,.735,.395);max-height:30px}.q-fab__label--internal-hidden{font-size:0;opacity:0}.q-fab__label--internal-top{padding-bottom:.12em}.q-fab__label--internal-bottom{padding-top:.12em}.q-fab__label--internal-top.q-fab__label--internal-hidden,.q-fab__label--internal-bottom.q-fab__label--internal-hidden{max-height:0}.q-fab__label--internal-left{padding-left:.285em;padding-right:.571em}.q-fab__label--internal-right{padding-right:.285em;padding-left:.571em}.q-fab__icon-holder{min-width:24px;min-height:24px;position:relative}.q-fab__icon-holder--opened .q-fab__icon{transform:rotate(180deg);opacity:0}.q-fab__icon-holder--opened .q-fab__active-icon{transform:rotate(0);opacity:1}.q-fab__actions{position:absolute;opacity:0;transition:transform .18s ease-in,opacity .18s ease-in;pointer-events:none;align-items:center;justify-content:center;align-self:center;padding:3px}.q-fab__actions .q-btn{margin:5px}.q-fab__actions--right{transform-origin:0 50%;transform:scale(.4) translate(-62px);height:56px;left:100%;margin-left:9px}.q-fab__actions--left{transform-origin:100% 50%;transform:scale(.4) translate(62px);height:56px;right:100%;margin-right:9px;flex-direction:row-reverse}.q-fab__actions--up{transform-origin:50% 100%;transform:scale(.4) translateY(62px);width:56px;bottom:100%;margin-bottom:9px;flex-direction:column-reverse}.q-fab__actions--down{transform-origin:50% 0;transform:scale(.4) translateY(-62px);width:56px;top:100%;margin-top:9px;flex-direction:column}.q-fab__actions--up,.q-fab__actions--down{left:50%;margin-left:-28px}.q-fab__actions--opened{opacity:1;transform:scale(1) translate(.1px);pointer-events:all}.q-fab--align-left>.q-fab__actions--up,.q-fab--align-left>.q-fab__actions--down{align-items:flex-start;left:28px}.q-fab--align-right>.q-fab__actions--up,.q-fab--align-right>.q-fab__actions--down{align-items:flex-end;left:auto;right:0}.q-field{font-size:14px}.q-field ::-ms-clear,.q-field ::-ms-reveal{display:none}.q-field--with-bottom{padding-bottom:20px}.q-field__marginal{height:56px;color:#0000008a;font-size:24px}.q-field__marginal>*+*{margin-left:2px}.q-field__marginal .q-avatar{font-size:32px}.q-field__before,.q-field__prepend{padding-right:12px}.q-field__after,.q-field__append{padding-left:12px}.q-field__after:empty,.q-field__append:empty{display:none}.q-field__append+.q-field__append{padding-left:2px}.q-field__inner{text-align:left}.q-field__bottom{font-size:12px;min-height:20px;line-height:1;color:#0000008a;padding:8px 12px 0;backface-visibility:hidden}.q-field__bottom--animated{transform:translateY(100%);position:absolute;left:0;right:0;bottom:0}.q-field__messages{line-height:1}.q-field__messages>div{word-break:break-word;word-wrap:break-word;overflow-wrap:break-word}.q-field__messages>div+div{margin-top:4px}.q-field__counter{padding-left:8px;line-height:1}.q-field--item-aligned{padding:8px 16px}.q-field--item-aligned .q-field__before{min-width:56px}.q-field__control-container{height:inherit}.q-field__control{color:var(--q-primary);height:56px;max-width:100%;outline:none}.q-field__control:before,.q-field__control:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.q-field__control:before{border-radius:inherit}.q-field__shadow{top:8px;opacity:0;overflow:hidden;white-space:pre-wrap;transition:opacity .36s cubic-bezier(.4,0,.2,1)}.q-field__shadow+.q-field__native::placeholder{transition:opacity .36s cubic-bezier(.4,0,.2,1)}.q-field__shadow+.q-field__native:focus::placeholder{opacity:0}.q-field__native,.q-field__prefix,.q-field__suffix,.q-field__input{font-weight:400;line-height:28px;letter-spacing:.00937em;text-decoration:inherit;text-transform:inherit;border:none;border-radius:0;background:none;color:#000000de;outline:0;padding:6px 0}.q-field__native,.q-field__input{width:100%;min-width:0;outline:0!important;-webkit-user-select:auto;user-select:auto}.q-field__native:-webkit-autofill,.q-field__input:-webkit-autofill{-webkit-animation-name:q-autofill;-webkit-animation-fill-mode:both}.q-field__native:-webkit-autofill+.q-field__label,.q-field__input:-webkit-autofill+.q-field__label{transform:translateY(-40%) scale(.75)}.q-field__native[type=color]+.q-field__label,.q-field__native[type=date]+.q-field__label,.q-field__native[type=datetime-local]+.q-field__label,.q-field__native[type=month]+.q-field__label,.q-field__native[type=time]+.q-field__label,.q-field__native[type=week]+.q-field__label,.q-field__input[type=color]+.q-field__label,.q-field__input[type=date]+.q-field__label,.q-field__input[type=datetime-local]+.q-field__label,.q-field__input[type=month]+.q-field__label,.q-field__input[type=time]+.q-field__label,.q-field__input[type=week]+.q-field__label{transform:translateY(-40%) scale(.75)}.q-field__native:invalid,.q-field__input:invalid{box-shadow:none}.q-field__native[type=file]{line-height:1em}.q-field__input{padding:0;height:0;min-height:24px;line-height:24px}.q-field__prefix,.q-field__suffix{transition:opacity .36s cubic-bezier(.4,0,.2,1);white-space:nowrap}.q-field__prefix{padding-right:4px}.q-field__suffix{padding-left:4px}.q-field--readonly .q-placeholder,.q-field--disabled .q-placeholder{opacity:1!important}.q-field--readonly.q-field--labeled .q-field__native,.q-field--readonly.q-field--labeled .q-field__input{cursor:default}.q-field--readonly.q-field--float .q-field__native,.q-field--readonly.q-field--float .q-field__input{cursor:text}.q-field--disabled .q-field__inner{cursor:not-allowed}.q-field--disabled .q-field__control{pointer-events:none}.q-field--disabled .q-field__control>div{opacity:.6!important}.q-field--disabled .q-field__control>div,.q-field--disabled .q-field__control>div *{outline:0!important}.q-field__label{left:0;top:18px;max-width:100%;color:#0009;font-size:16px;line-height:20px;font-weight:400;letter-spacing:.00937em;text-decoration:inherit;text-transform:inherit;transform-origin:left top;transition:transform .36s cubic-bezier(.4,0,.2,1),max-width .324s cubic-bezier(.4,0,.2,1);backface-visibility:hidden}.q-field--float .q-field__label{max-width:133%;transform:translateY(-40%) scale(.75);transition:transform .36s cubic-bezier(.4,0,.2,1),max-width .396s cubic-bezier(.4,0,.2,1)}.q-field--highlighted .q-field__label{color:currentColor}.q-field--highlighted .q-field__shadow{opacity:.5}.q-field--filled .q-field__control{padding:0 12px;background:rgba(0,0,0,.05);border-radius:4px 4px 0 0}.q-field--filled .q-field__control:before{background:rgba(0,0,0,.05);border-bottom:1px solid rgba(0,0,0,.42);opacity:0;transition:opacity .36s cubic-bezier(.4,0,.2,1),background .36s cubic-bezier(.4,0,.2,1)}.q-field--filled .q-field__control:hover:before{opacity:1}.q-field--filled .q-field__control:after{height:2px;top:auto;transform-origin:center bottom;transform:scale3d(0,1,1);background:currentColor;transition:transform .36s cubic-bezier(.4,0,.2,1)}.q-field--filled.q-field--rounded .q-field__control{border-radius:28px 28px 0 0}.q-field--filled.q-field--highlighted .q-field__control:before{opacity:1;background:rgba(0,0,0,.12)}.q-field--filled.q-field--highlighted .q-field__control:after{transform:scaleZ(1)}.q-field--filled.q-field--dark .q-field__control,.q-field--filled.q-field--dark .q-field__control:before{background:rgba(255,255,255,.07)}.q-field--filled.q-field--dark.q-field--highlighted .q-field__control:before{background:rgba(255,255,255,.1)}.q-field--filled.q-field--readonly .q-field__control:before{opacity:1;background:transparent;border-bottom-style:dashed}.q-field--outlined .q-field__control{border-radius:4px;padding:0 12px}.q-field--outlined .q-field__control:before{border:1px solid rgba(0,0,0,.24);transition:border-color .36s cubic-bezier(.4,0,.2,1)}.q-field--outlined .q-field__control:hover:before{border-color:#000}.q-field--outlined .q-field__control:after{height:inherit;border-radius:inherit;border:2px solid transparent;transition:border-color .36s cubic-bezier(.4,0,.2,1)}.q-field--outlined .q-field__native:-webkit-autofill,.q-field--outlined .q-field__input:-webkit-autofill{margin-top:1px;margin-bottom:1px}.q-field--outlined.q-field--rounded .q-field__control{border-radius:28px}.q-field--outlined.q-field--highlighted .q-field__control:hover:before{border-color:transparent}.q-field--outlined.q-field--highlighted .q-field__control:after{border-color:currentColor;border-width:2px;transform:scaleZ(1)}.q-field--outlined.q-field--readonly .q-field__control:before{border-style:dashed}.q-field--standard .q-field__control:before{border-bottom:1px solid rgba(0,0,0,.24);transition:border-color .36s cubic-bezier(.4,0,.2,1)}.q-field--standard .q-field__control:hover:before{border-color:#000}.q-field--standard .q-field__control:after{height:2px;top:auto;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;transform-origin:center bottom;transform:scale3d(0,1,1);background:currentColor;transition:transform .36s cubic-bezier(.4,0,.2,1)}.q-field--standard.q-field--highlighted .q-field__control:after{transform:scaleZ(1)}.q-field--standard.q-field--readonly .q-field__control:before{border-bottom-style:dashed}.q-field--dark .q-field__control:before{border-color:#fff9}.q-field--dark .q-field__control:hover:before{border-color:#fff}.q-field--dark .q-field__native,.q-field--dark .q-field__prefix,.q-field--dark .q-field__suffix,.q-field--dark .q-field__input{color:#fff}.q-field--dark:not(.q-field--highlighted) .q-field__label,.q-field--dark .q-field__marginal,.q-field--dark .q-field__bottom{color:#ffffffb3}.q-field--standout .q-field__control{padding:0 12px;background:rgba(0,0,0,.05);border-radius:4px;transition:box-shadow .36s cubic-bezier(.4,0,.2,1),background-color .36s cubic-bezier(.4,0,.2,1)}.q-field--standout .q-field__control:before{background:rgba(0,0,0,.07);opacity:0;transition:opacity .36s cubic-bezier(.4,0,.2,1),background .36s cubic-bezier(.4,0,.2,1)}.q-field--standout .q-field__control:hover:before{opacity:1}.q-field--standout.q-field--rounded .q-field__control{border-radius:28px}.q-field--standout.q-field--highlighted .q-field__control{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;background:#000}.q-field--standout.q-field--highlighted .q-field__native,.q-field--standout.q-field--highlighted .q-field__prefix,.q-field--standout.q-field--highlighted .q-field__suffix,.q-field--standout.q-field--highlighted .q-field__prepend,.q-field--standout.q-field--highlighted .q-field__append,.q-field--standout.q-field--highlighted .q-field__input{color:#fff}.q-field--standout.q-field--readonly .q-field__control:before{opacity:1;background:transparent;border:1px dashed rgba(0,0,0,.24)}.q-field--standout.q-field--dark .q-field__control{background:rgba(255,255,255,.07)}.q-field--standout.q-field--dark .q-field__control:before{background:rgba(255,255,255,.07)}.q-field--standout.q-field--dark.q-field--highlighted .q-field__control{background:#fff}.q-field--standout.q-field--dark.q-field--highlighted .q-field__native,.q-field--standout.q-field--dark.q-field--highlighted .q-field__prefix,.q-field--standout.q-field--dark.q-field--highlighted .q-field__suffix,.q-field--standout.q-field--dark.q-field--highlighted .q-field__prepend,.q-field--standout.q-field--dark.q-field--highlighted .q-field__append,.q-field--standout.q-field--dark.q-field--highlighted .q-field__input{color:#000}.q-field--standout.q-field--dark.q-field--readonly .q-field__control:before{border-color:#ffffff3d}.q-field--labeled .q-field__native,.q-field--labeled .q-field__prefix,.q-field--labeled .q-field__suffix{line-height:24px;padding-top:24px;padding-bottom:8px}.q-field--labeled .q-field__shadow{top:0}.q-field--labeled:not(.q-field--float) .q-field__prefix,.q-field--labeled:not(.q-field--float) .q-field__suffix{opacity:0}.q-field--labeled:not(.q-field--float) .q-field__native::placeholder,.q-field--labeled:not(.q-field--float) .q-field__input::placeholder{color:transparent}.q-field--labeled.q-field--dense .q-field__native,.q-field--labeled.q-field--dense .q-field__prefix,.q-field--labeled.q-field--dense .q-field__suffix{padding-top:14px;padding-bottom:2px}.q-field--dense .q-field__shadow{top:0}.q-field--dense .q-field__control,.q-field--dense .q-field__marginal{height:40px}.q-field--dense .q-field__bottom{font-size:11px}.q-field--dense .q-field__label{font-size:14px;top:10px}.q-field--dense .q-field__before,.q-field--dense .q-field__prepend{padding-right:6px}.q-field--dense .q-field__after,.q-field--dense .q-field__append{padding-left:6px}.q-field--dense .q-field__append+.q-field__append{padding-left:2px}.q-field--dense .q-field__marginal .q-avatar{font-size:24px}.q-field--dense.q-field--float .q-field__label{transform:translateY(-30%) scale(.75)}.q-field--dense .q-field__native:-webkit-autofill+.q-field__label,.q-field--dense .q-field__input:-webkit-autofill+.q-field__label{transform:translateY(-30%) scale(.75)}.q-field--dense .q-field__native[type=color]+.q-field__label,.q-field--dense .q-field__native[type=date]+.q-field__label,.q-field--dense .q-field__native[type=datetime-local]+.q-field__label,.q-field--dense .q-field__native[type=month]+.q-field__label,.q-field--dense .q-field__native[type=time]+.q-field__label,.q-field--dense .q-field__native[type=week]+.q-field__label,.q-field--dense .q-field__input[type=color]+.q-field__label,.q-field--dense .q-field__input[type=date]+.q-field__label,.q-field--dense .q-field__input[type=datetime-local]+.q-field__label,.q-field--dense .q-field__input[type=month]+.q-field__label,.q-field--dense .q-field__input[type=time]+.q-field__label,.q-field--dense .q-field__input[type=week]+.q-field__label{transform:translateY(-30%) scale(.75)}.q-field--borderless .q-field__bottom,.q-field--borderless.q-field--dense .q-field__control,.q-field--standard .q-field__bottom,.q-field--standard.q-field--dense .q-field__control{padding-left:0;padding-right:0}.q-field--error .q-field__label{animation:q-field-label .36s}.q-field--error .q-field__bottom{color:var(--q-negative)}.q-field__focusable-action{opacity:.6;cursor:pointer;outline:0!important;border:0;color:inherit;background:transparent;padding:0}.q-field__focusable-action:hover,.q-field__focusable-action:focus{opacity:1}.q-field--auto-height .q-field__control{height:auto}.q-field--auto-height .q-field__control,.q-field--auto-height .q-field__native{min-height:56px}.q-field--auto-height .q-field__native{align-items:center}.q-field--auto-height .q-field__control-container{padding-top:0}.q-field--auto-height .q-field__native,.q-field--auto-height .q-field__prefix,.q-field--auto-height .q-field__suffix{line-height:18px}.q-field--auto-height.q-field--labeled .q-field__control-container{padding-top:24px}.q-field--auto-height.q-field--labeled .q-field__shadow{top:24px}.q-field--auto-height.q-field--labeled .q-field__native,.q-field--auto-height.q-field--labeled .q-field__prefix,.q-field--auto-height.q-field--labeled .q-field__suffix{padding-top:0}.q-field--auto-height.q-field--labeled .q-field__native{min-height:24px}.q-field--auto-height.q-field--dense .q-field__control,.q-field--auto-height.q-field--dense .q-field__native{min-height:40px}.q-field--auto-height.q-field--dense.q-field--labeled .q-field__control-container{padding-top:14px}.q-field--auto-height.q-field--dense.q-field--labeled .q-field__shadow{top:14px}.q-field--auto-height.q-field--dense.q-field--labeled .q-field__native{min-height:24px}.q-field--square .q-field__control{border-radius:0!important}.q-transition--field-message-enter-active,.q-transition--field-message-leave-active{transition:transform .6s cubic-bezier(.86,0,.07,1),opacity .6s cubic-bezier(.86,0,.07,1)}.q-transition--field-message-enter-from,.q-transition--field-message-leave-to{opacity:0;transform:translateY(-10px)}.q-transition--field-message-leave-from,.q-transition--field-message-leave-active{position:absolute}@keyframes q-field-label{40%{margin-left:2px}60%,80%{margin-left:-2px}70%,90%{margin-left:2px}}@keyframes q-autofill{to{background:transparent;color:inherit}}.q-file .q-field__native{word-break:break-all;overflow:hidden}.q-file .q-field__input{opacity:0!important}.q-file .q-field__input::-webkit-file-upload-button{cursor:pointer}.q-file__filler{visibility:hidden;width:100%;border:none;padding:0}.q-file__dnd{outline:1px dashed currentColor;outline-offset:-4px}.q-form{position:relative}.q-img{position:relative;width:100%;display:inline-block;vertical-align:middle;overflow:hidden}.q-img__loading .q-spinner{font-size:50px}.q-img__container{border-radius:inherit;font-size:0}.q-img__image{border-radius:inherit;width:100%;height:100%;opacity:0}.q-img__image--with-transition{transition:opacity .28s ease-in}.q-img__image--loaded{opacity:1}.q-img__content{border-radius:inherit;pointer-events:none}.q-img__content>div{pointer-events:all;position:absolute;padding:16px;color:#fff;background:rgba(0,0,0,.47)}.q-img--no-menu .q-img__image,.q-img--no-menu .q-img__placeholder{pointer-events:none}.q-inner-loading{background:rgba(255,255,255,.6)}.q-inner-loading--dark{background:rgba(0,0,0,.4)}.q-inner-loading__label{margin-top:8px}.q-textarea .q-field__control{min-height:56px;height:auto}.q-textarea .q-field__control-container{padding-top:2px;padding-bottom:2px}.q-textarea .q-field__shadow{top:2px;bottom:2px}.q-textarea .q-field__native,.q-textarea .q-field__prefix,.q-textarea .q-field__suffix{line-height:18px}.q-textarea .q-field__native{resize:vertical;padding-top:17px;min-height:52px}.q-textarea.q-field--labeled .q-field__control-container{padding-top:26px}.q-textarea.q-field--labeled .q-field__shadow{top:26px}.q-textarea.q-field--labeled .q-field__native,.q-textarea.q-field--labeled .q-field__prefix,.q-textarea.q-field--labeled .q-field__suffix{padding-top:0}.q-textarea.q-field--labeled .q-field__native{min-height:26px;padding-top:1px}.q-textarea--autogrow .q-field__native{resize:none}.q-textarea.q-field--dense .q-field__control,.q-textarea.q-field--dense .q-field__native{min-height:36px}.q-textarea.q-field--dense .q-field__native{padding-top:9px}.q-textarea.q-field--dense.q-field--labeled .q-field__control-container{padding-top:14px}.q-textarea.q-field--dense.q-field--labeled .q-field__shadow{top:14px}.q-textarea.q-field--dense.q-field--labeled .q-field__native{min-height:24px;padding-top:3px}.q-textarea.q-field--dense.q-field--labeled .q-field__prefix,.q-textarea.q-field--dense.q-field--labeled .q-field__suffix{padding-top:2px}body.mobile .q-textarea .q-field__native,.q-textarea.disabled .q-field__native{resize:none}.q-intersection{position:relative}.q-item{min-height:48px;padding:8px 16px;color:inherit;transition:color .3s,background-color .3s}.q-item__section--side{color:#757575;align-items:flex-start;padding-right:16px;width:auto;min-width:0;max-width:100%}.q-item__section--side>.q-icon{font-size:24px}.q-item__section--side>.q-avatar{font-size:40px}.q-item__section--avatar{color:inherit;min-width:56px}.q-item__section--thumbnail img{width:100px;height:56px}.q-item__section--nowrap{white-space:nowrap}.q-item>.q-item__section--thumbnail:first-child,.q-item>.q-focus-helper+.q-item__section--thumbnail{margin-left:-16px}.q-item>.q-item__section--thumbnail:last-of-type{margin-right:-16px}.q-item__label{line-height:1.2em!important;max-width:100%}.q-item__label--overline{color:#000000b3}.q-item__label--caption{color:#0000008a}.q-item__label--header{color:#757575;padding:16px;font-size:.875rem;line-height:1.25rem;letter-spacing:.01786em}.q-separator--spaced+.q-item__label--header,.q-list--padding .q-item__label--header{padding-top:8px}.q-item__label+.q-item__label{margin-top:4px}.q-item__section--main{width:auto;min-width:0;max-width:100%;flex:10000 1 0%}.q-item__section--main+.q-item__section--main{margin-left:8px}.q-item__section--main~.q-item__section--side{align-items:flex-end;padding-right:0;padding-left:16px}.q-item__section--main.q-item__section--thumbnail{margin-left:0;margin-right:-16px}.q-list--bordered{border:1px solid rgba(0,0,0,.12)}.q-list--separator>.q-item-type+.q-item-type,.q-list--separator>.q-virtual-scroll__content>.q-item-type+.q-item-type{border-top:1px solid rgba(0,0,0,.12)}.q-list--padding{padding:8px 0}.q-list--dense>.q-item,.q-item--dense{min-height:32px;padding:2px 16px}.q-list--dark.q-list--separator>.q-item-type+.q-item-type,.q-list--dark.q-list--separator>.q-virtual-scroll__content>.q-item-type+.q-item-type{border-top-color:#ffffff47}.q-list--dark,.q-item--dark{color:#fff;border-color:#ffffff47}.q-list--dark .q-item__section--side:not(.q-item__section--avatar),.q-item--dark .q-item__section--side:not(.q-item__section--avatar){color:#ffffffb3}.q-list--dark .q-item__label--header,.q-item--dark .q-item__label--header{color:#ffffffa3}.q-list--dark .q-item__label--overline,.q-list--dark .q-item__label--caption,.q-item--dark .q-item__label--overline,.q-item--dark .q-item__label--caption{color:#fffc}.q-item{position:relative}.q-item.q-router-link--active,.q-item--active{color:var(--q-primary)}.q-knob{font-size:48px}.q-knob--editable{cursor:pointer;outline:0}.q-knob--editable:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;box-shadow:none;transition:box-shadow .24s ease-in-out}.q-knob--editable:focus:before{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f}body.body--dark .q-knob--editable:focus:before{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-layout{width:100%;outline:0}.q-layout-container{position:relative;width:100%;height:100%}.q-layout-container .q-layout{min-height:100%}.q-layout-container>div{transform:translateZ(0)}.q-layout-container>div>div{min-height:0;max-height:100%}.q-layout__shadow{width:100%}.q-layout__shadow:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:0 0 10px 2px #0003,0 0 10px #0000003d}.q-layout__section--marginal{background-color:var(--q-primary);color:#fff}.q-header--hidden{transform:translateY(-110%)}.q-header--bordered{border-bottom:1px solid rgba(0,0,0,.12)}.q-header .q-layout__shadow{bottom:-10px}.q-header .q-layout__shadow:after{bottom:10px}.q-footer--hidden{transform:translateY(110%)}.q-footer--bordered{border-top:1px solid rgba(0,0,0,.12)}.q-footer .q-layout__shadow{top:-10px}.q-footer .q-layout__shadow:after{top:10px}.q-header,.q-footer{z-index:2000}.q-drawer{position:absolute;top:0;bottom:0;background:#fff;z-index:1000}.q-drawer--on-top{z-index:3000}.q-drawer--left{left:0;transform:translate(-100%)}.q-drawer--left.q-drawer--bordered{border-right:1px solid rgba(0,0,0,.12)}.q-drawer--left .q-layout__shadow{left:10px;right:-10px}.q-drawer--left .q-layout__shadow:after{right:10px}.q-drawer--right{right:0;transform:translate(100%)}.q-drawer--right.q-drawer--bordered{border-left:1px solid rgba(0,0,0,.12)}.q-drawer--right .q-layout__shadow{left:-10px}.q-drawer--right .q-layout__shadow:after{left:10px}.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini{padding:0!important}.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item,.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__section{text-align:center;justify-content:center;padding-left:0;padding-right:0;min-width:0}.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__label,.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__section--main,.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__section--side~.q-item__section--side{display:none}.q-drawer--mini .q-mini-drawer-hide,.q-drawer--mini .q-expansion-item__content{display:none}.q-drawer--mini-animate .q-drawer__content{overflow-x:hidden!important;white-space:nowrap}.q-drawer--standard .q-mini-drawer-only,.q-drawer--mobile .q-mini-drawer-only,.q-drawer--mobile .q-mini-drawer-hide{display:none}.q-drawer__backdrop{z-index:2999!important;will-change:background-color}.q-drawer__opener{z-index:2001;height:100%;width:15px;-webkit-user-select:none;user-select:none}.q-layout,.q-header,.q-footer,.q-page{position:relative}.q-page-sticky--shrink{pointer-events:none}.q-page-sticky--shrink>div{display:inline-block;pointer-events:auto}body.q-ios-padding .q-layout--standard .q-header>.q-toolbar:nth-child(1),body.q-ios-padding .q-layout--standard .q-header>.q-tabs:nth-child(1) .q-tabs-head,body.q-ios-padding .q-layout--standard .q-drawer--top-padding .q-drawer__content{padding-top:20px;min-height:70px;padding-top:env(safe-area-inset-top);min-height:calc(env(safe-area-inset-top) + 50px)}body.q-ios-padding .q-layout--standard .q-footer>.q-toolbar:last-child,body.q-ios-padding .q-layout--standard .q-footer>.q-tabs:last-child .q-tabs-head,body.q-ios-padding .q-layout--standard .q-drawer--top-padding .q-drawer__content{padding-bottom:env(safe-area-inset-bottom);min-height:calc(env(safe-area-inset-bottom) + 50px)}.q-body--layout-animate .q-drawer__backdrop{transition:background-color .12s!important}.q-body--layout-animate .q-drawer{transition:transform .12s,width .12s,top .12s,bottom .12s!important}.q-body--layout-animate .q-layout__section--marginal{transition:transform .12s,left .12s,right .12s!important}.q-body--layout-animate .q-page-container{transition:padding-top .12s,padding-right .12s,padding-bottom .12s,padding-left .12s!important}.q-body--layout-animate .q-page-sticky{transition:transform .12s,left .12s,right .12s,top .12s,bottom .12s!important}body:not(.q-body--layout-animate) .q-layout--prevent-focus{visibility:hidden}.q-body--drawer-toggle{overflow-x:hidden!important}@media (max-width: 599.98px){.q-layout-padding{padding:8px}}@media (min-width: 600px) and (max-width: 1439.98px){.q-layout-padding{padding:16px}}@media (min-width: 1440px){.q-layout-padding{padding:24px}}body.body--dark .q-header,body.body--dark .q-footer,body.body--dark .q-drawer{border-color:#ffffff47}body.body--dark .q-layout__shadow:after{box-shadow:0 0 10px 2px #fff3,0 0 10px #ffffff3d}body.platform-ios .q-layout--containerized{position:unset!important}.q-linear-progress{--q-linear-progress-speed: .3s;position:relative;width:100%;overflow:hidden;font-size:4px;height:1em;color:var(--q-primary);transform:scaleZ(1)}.q-linear-progress__model,.q-linear-progress__track{transform-origin:0 0}.q-linear-progress__model--with-transition,.q-linear-progress__track--with-transition{transition:transform var(--q-linear-progress-speed)}.q-linear-progress--reverse .q-linear-progress__model,.q-linear-progress--reverse .q-linear-progress__track{transform-origin:0 100%}.q-linear-progress__model--determinate{background:currentColor}.q-linear-progress__model--indeterminate,.q-linear-progress__model--query{transition:none}.q-linear-progress__model--indeterminate:before,.q-linear-progress__model--indeterminate:after,.q-linear-progress__model--query:before,.q-linear-progress__model--query:after{background:currentColor;content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:0 0}.q-linear-progress__model--indeterminate:before,.q-linear-progress__model--query:before{animation:q-linear-progress--indeterminate 2.1s cubic-bezier(.65,.815,.735,.395) infinite}.q-linear-progress__model--indeterminate:after,.q-linear-progress__model--query:after{transform:translate3d(-101%,0,0) scaleZ(1);animation:q-linear-progress--indeterminate-short 2.1s cubic-bezier(.165,.84,.44,1) infinite;animation-delay:1.15s}.q-linear-progress__track{opacity:.4}.q-linear-progress__track--light{background:rgba(0,0,0,.26)}.q-linear-progress__track--dark{background:rgba(255,255,255,.6)}.q-linear-progress__stripe{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,rgba(255,255,255,0) 25%,rgba(255,255,255,0) 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,rgba(255,255,255,0) 75%,rgba(255,255,255,0))!important;background-size:40px 40px!important}.q-linear-progress__stripe--with-transition{transition:width var(--q-linear-progress-speed)}@keyframes q-linear-progress--indeterminate{0%{transform:translate3d(-35%,0,0) scale3d(.35,1,1)}60%{transform:translate3d(100%,0,0) scale3d(.9,1,1)}to{transform:translate3d(100%,0,0) scale3d(.9,1,1)}}@keyframes q-linear-progress--indeterminate-short{0%{transform:translate3d(-101%,0,0) scaleZ(1)}60%{transform:translate3d(107%,0,0) scale3d(.01,1,1)}to{transform:translate3d(107%,0,0) scale3d(.01,1,1)}}.q-menu{position:fixed!important;display:inline-block;max-width:95vw;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;background:#fff;border-radius:4px;overflow-y:auto;overflow-x:hidden;outline:0;max-height:65vh;z-index:6000}.q-menu--square{border-radius:0}.q-menu--dark{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-option-group--inline>div{display:inline-block}.q-pagination input{text-align:center;-moz-appearance:textfield}.q-pagination input::-webkit-outer-spin-button,.q-pagination input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.q-pagination__content{--q-pagination-gutter-parent: -2px;--q-pagination-gutter-child: 2px;margin-top:var(--q-pagination-gutter-parent);margin-left:var(--q-pagination-gutter-parent)}.q-pagination__content>.q-btn,.q-pagination__content>.q-input,.q-pagination__middle>.q-btn{margin-top:var(--q-pagination-gutter-child);margin-left:var(--q-pagination-gutter-child)}.q-parallax{position:relative;width:100%;overflow:hidden;border-radius:inherit}.q-parallax__media>img,.q-parallax__media>video{position:absolute;left:50%;bottom:0;min-width:100%;min-height:100%;will-change:transform;display:none}.q-popup-edit{padding:8px 16px}.q-popup-edit__buttons{margin-top:8px}.q-popup-edit__buttons .q-btn+.q-btn{margin-left:8px}.q-pull-to-refresh{position:relative}.q-pull-to-refresh__puller{border-radius:50%;width:40px;height:40px;color:var(--q-primary);background:#fff;box-shadow:0 0 4px #0000004d}.q-pull-to-refresh__puller--animating{transition:transform .3s,opacity .3s}.q-radio{vertical-align:middle}.q-radio__native{width:1px;height:1px}.q-radio__bg,.q-radio__icon-container{-webkit-user-select:none;user-select:none}.q-radio__bg{top:25%;left:25%;width:50%;height:50%;-webkit-print-color-adjust:exact}.q-radio__bg path{fill:currentColor}.q-radio__icon{color:currentColor;font-size:.5em}.q-radio__check{transform-origin:50% 50%;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0,0,.2,1) 0ms}.q-radio__inner{font-size:40px;width:1em;min-width:1em;height:1em;outline:0;border-radius:50%;color:#0000008a}.q-radio__inner--truthy{color:var(--q-primary)}.q-radio__inner--truthy .q-radio__check{transform:scaleZ(1)}.q-radio.disabled{opacity:.75!important}.q-radio--dark .q-radio__inner{color:#ffffffb3}.q-radio--dark .q-radio__inner:before{opacity:.32!important}.q-radio--dark .q-radio__inner--truthy{color:var(--q-primary)}.q-radio--dense .q-radio__inner{width:.5em;min-width:.5em;height:.5em}.q-radio--dense .q-radio__bg{left:0;top:0;width:100%;height:100%}.q-radio--dense .q-radio__label{padding-left:.5em}.q-radio--dense.reverse .q-radio__label{padding-left:0;padding-right:.5em}body.desktop .q-radio:not(.disabled) .q-radio__inner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:currentColor;opacity:.12;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0,0,.2,1) 0ms}body.desktop .q-radio:not(.disabled):focus .q-radio__inner:before,body.desktop .q-radio:not(.disabled):hover .q-radio__inner:before{transform:scaleZ(1)}body.desktop .q-radio--dense:not(.disabled):focus .q-radio__inner:before,body.desktop .q-radio--dense:not(.disabled):hover .q-radio__inner:before{transform:scale3d(1.5,1.5,1)}.q-rating{color:#ffeb3b;vertical-align:middle}.q-rating__icon-container{height:1em;outline:0}.q-rating__icon-container+.q-rating__icon-container{margin-left:2px}.q-rating__icon{color:currentColor;text-shadow:0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24);position:relative;opacity:.4;transition:transform .2s ease-in,opacity .2s ease-in}.q-rating__icon--hovered{transform:scale(1.3)}.q-rating__icon--active{opacity:1}.q-rating__icon--exselected{opacity:.7}.q-rating--no-dimming .q-rating__icon{opacity:1}.q-rating--editable .q-rating__icon-container{cursor:pointer}.q-responsive{position:relative;max-width:100%;max-height:100%}.q-responsive__filler{width:inherit;max-width:inherit;height:inherit;max-height:inherit}.q-responsive__content{border-radius:inherit}.q-responsive__content>*{width:100%!important;height:100%!important;max-height:100%!important;max-width:100%!important}.q-scrollarea{position:relative;contain:strict}.q-scrollarea__bar,.q-scrollarea__thumb{opacity:.2;transition:opacity .3s;will-change:opacity;cursor:grab}.q-scrollarea__bar--v,.q-scrollarea__thumb--v{right:0;width:10px}.q-scrollarea__bar--h,.q-scrollarea__thumb--h{bottom:0;height:10px}.q-scrollarea__bar--invisible,.q-scrollarea__thumb--invisible{opacity:0!important;pointer-events:none}.q-scrollarea__thumb{background:#000;border-radius:3px}.q-scrollarea__thumb:hover{opacity:.3}.q-scrollarea__thumb:active{opacity:.5}.q-scrollarea__content{min-height:100%;min-width:100%}.q-scrollarea--dark .q-scrollarea__thumb{background:#fff}.q-select--without-input .q-field__control{cursor:pointer}.q-select--with-input .q-field__control{cursor:text}.q-select .q-field__input{min-width:50px!important;cursor:text}.q-select .q-field__input--padding{padding-left:4px}.q-select__focus-target,.q-select__autocomplete-input{position:absolute;outline:0!important;width:1px;height:1px;padding:0;border:0;opacity:0}.q-select__dropdown-icon{cursor:pointer;transition:transform .28s}.q-select.q-field--readonly .q-field__control,.q-select.q-field--readonly .q-select__dropdown-icon{cursor:default}.q-select__dialog{width:90vw!important;max-width:90vw!important;max-height:calc(100vh - 70px)!important;background:#fff;display:flex;flex-direction:column}.q-select__dialog>.scroll{position:relative;background:inherit}body.mobile:not(.native-mobile) .q-select__dialog{max-height:calc(100vh - 108px)!important}body.platform-android.native-mobile .q-dialog__inner--top .q-select__dialog{max-height:calc(100vh - 24px)!important}body.platform-android:not(.native-mobile) .q-dialog__inner--top .q-select__dialog{max-height:calc(100vh - 80px)!important}body.platform-ios.native-mobile .q-dialog__inner--top>div{border-radius:4px}body.platform-ios.native-mobile .q-dialog__inner--top .q-select__dialog--focused{max-height:47vh!important}body.platform-ios:not(.native-mobile) .q-dialog__inner--top .q-select__dialog--focused{max-height:50vh!important}.q-separator{border:0;background:rgba(0,0,0,.12);margin:0;transition:background .3s,opacity .3s;flex-shrink:0}.q-separator--dark{background:rgba(255,255,255,.28)}.q-separator--horizontal{display:block;height:1px}.q-separator--horizontal-inset{margin-left:16px;margin-right:16px}.q-separator--horizontal-item-inset{margin-left:72px;margin-right:0}.q-separator--horizontal-item-thumbnail-inset{margin-left:116px;margin-right:0}.q-separator--vertical{width:1px;height:auto;align-self:stretch}.q-separator--vertical-inset{margin-top:8px;margin-bottom:8px}.q-skeleton{--q-skeleton-speed: 1.5s;background:rgba(0,0,0,.12);border-radius:4px;box-sizing:border-box}.q-skeleton--anim{cursor:wait}.q-skeleton:before{content:"\a0"}.q-skeleton--type-text{transform:scaleY(.5)}.q-skeleton--type-circle,.q-skeleton--type-QAvatar{height:48px;width:48px;border-radius:50%}.q-skeleton--type-QBtn{width:90px;height:36px}.q-skeleton--type-QBadge{width:70px;height:16px}.q-skeleton--type-QChip{width:90px;height:28px;border-radius:16px}.q-skeleton--type-QToolbar{height:50px}.q-skeleton--type-QCheckbox,.q-skeleton--type-QRadio{width:40px;height:40px;border-radius:50%}.q-skeleton--type-QToggle{width:56px;height:40px;border-radius:7px}.q-skeleton--type-QSlider,.q-skeleton--type-QRange{height:40px}.q-skeleton--type-QInput{height:56px}.q-skeleton--bordered{border:1px solid rgba(0,0,0,.05)}.q-skeleton--square{border-radius:0}.q-skeleton--anim-fade{animation:q-skeleton--fade var(--q-skeleton-speed) linear .5s infinite}.q-skeleton--anim-pulse{animation:q-skeleton--pulse var(--q-skeleton-speed) ease-in-out .5s infinite}.q-skeleton--anim-pulse-x{animation:q-skeleton--pulse-x var(--q-skeleton-speed) ease-in-out .5s infinite}.q-skeleton--anim-pulse-y{animation:q-skeleton--pulse-y var(--q-skeleton-speed) ease-in-out .5s infinite}.q-skeleton--anim-wave,.q-skeleton--anim-blink,.q-skeleton--anim-pop{position:relative;overflow:hidden;z-index:1}.q-skeleton--anim-wave:after,.q-skeleton--anim-blink:after,.q-skeleton--anim-pop:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.q-skeleton--anim-blink:after{background:rgba(255,255,255,.7);animation:q-skeleton--fade var(--q-skeleton-speed) linear .5s infinite}.q-skeleton--anim-wave:after{background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.5),rgba(255,255,255,0));animation:q-skeleton--wave var(--q-skeleton-speed) linear .5s infinite}.q-skeleton--dark{background:rgba(255,255,255,.05)}.q-skeleton--dark.q-skeleton--bordered{border:1px solid rgba(255,255,255,.25)}.q-skeleton--dark.q-skeleton--anim-wave:after{background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.1),rgba(255,255,255,0))}.q-skeleton--dark.q-skeleton--anim-blink:after{background:rgba(255,255,255,.2)}@keyframes q-skeleton--fade{0%{opacity:1}50%{opacity:.4}to{opacity:1}}@keyframes q-skeleton--pulse{0%{transform:scale(1)}50%{transform:scale(.85)}to{transform:scale(1)}}@keyframes q-skeleton--pulse-x{0%{transform:scaleX(1)}50%{transform:scaleX(.75)}to{transform:scaleX(1)}}@keyframes q-skeleton--pulse-y{0%{transform:scaleY(1)}50%{transform:scaleY(.75)}to{transform:scaleY(1)}}@keyframes q-skeleton--wave{0%{transform:translate(-100%)}to{transform:translate(100%)}}.q-slide-item{position:relative;background:white}.q-slide-item__left,.q-slide-item__right,.q-slide-item__top,.q-slide-item__bottom{visibility:hidden;font-size:14px;color:#fff}.q-slide-item__left .q-icon,.q-slide-item__right .q-icon,.q-slide-item__top .q-icon,.q-slide-item__bottom .q-icon{font-size:1.714em}.q-slide-item__left{background:#4caf50;padding:8px 16px}.q-slide-item__left>div{transform-origin:left center}.q-slide-item__right{background:#ff9800;padding:8px 16px}.q-slide-item__right>div{transform-origin:right center}.q-slide-item__top{background:#2196f3;padding:16px 8px}.q-slide-item__top>div{transform-origin:top center}.q-slide-item__bottom{background:#9c27b0;padding:16px 8px}.q-slide-item__bottom>div{transform-origin:bottom center}.q-slide-item__content{background:inherit;transition:transform .2s ease-in;-webkit-user-select:none;user-select:none;cursor:pointer}.q-slider{position:relative}.q-slider--h{width:100%}.q-slider--v{height:200px}.q-slider--editable .q-slider__track-container{cursor:grab}.q-slider__track-container{outline:0}.q-slider__track-container--h{width:100%;padding:12px 0}.q-slider__track-container--h .q-slider__selection{will-change:width,left}.q-slider__track-container--v{height:100%;padding:0 12px}.q-slider__track-container--v .q-slider__selection{will-change:height,top}.q-slider__track{color:var(--q-primary);background:rgba(0,0,0,.1);border-radius:4px;width:inherit;height:inherit}.q-slider__inner{background:rgba(0,0,0,.1);border-radius:inherit;width:100%;height:100%}.q-slider__selection{background:currentColor;border-radius:inherit;width:100%;height:100%}.q-slider__markers{color:#0000004d;border-radius:inherit;width:100%;height:100%}.q-slider__markers:after{content:"";position:absolute;background:currentColor}.q-slider__markers--h{background-image:repeating-linear-gradient(to right,currentColor,currentColor 2px,rgba(255,255,255,0) 0,rgba(255,255,255,0))}.q-slider__markers--h:after{height:100%;width:2px;top:0;right:0}.q-slider__markers--v{background-image:repeating-linear-gradient(to bottom,currentColor,currentColor 2px,rgba(255,255,255,0) 0,rgba(255,255,255,0))}.q-slider__markers--v:after{width:100%;height:2px;left:0;bottom:0}.q-slider__marker-labels-container{position:relative;width:100%;height:100%;min-height:24px;min-width:24px}.q-slider__marker-labels{position:absolute}.q-slider__marker-labels--h-standard{top:0}.q-slider__marker-labels--h-switched{bottom:0}.q-slider__marker-labels--h-ltr{transform:translate(-50%)}.q-slider__marker-labels--h-rtl{transform:translate(50%)}.q-slider__marker-labels--v-standard{left:4px}.q-slider__marker-labels--v-switched{right:4px}.q-slider__marker-labels--v-ltr{transform:translateY(-50%)}.q-slider__marker-labels--v-rtl{transform:translateY(50%)}.q-slider__thumb{z-index:1;outline:0;color:var(--q-primary);transition:transform .18s ease-out,fill .18s ease-out,stroke .18s ease-out}.q-slider__thumb.q-slider--focus{opacity:1!important}.q-slider__thumb--h{top:50%;will-change:left}.q-slider__thumb--h-ltr{transform:scale(1) translate(-50%,-50%)}.q-slider__thumb--h-rtl{transform:scale(1) translate(50%,-50%)}.q-slider__thumb--v{left:50%;will-change:top}.q-slider__thumb--v-ltr{transform:scale(1) translate(-50%,-50%)}.q-slider__thumb--v-rtl{transform:scale(1) translate(-50%,50%)}.q-slider__thumb-shape{top:0;left:0;stroke-width:3.5;stroke:currentColor;transition:transform .28s}.q-slider__thumb-shape path{stroke:currentColor;fill:currentColor}.q-slider__focus-ring{border-radius:50%;opacity:0;transition:transform .26667s ease-out,opacity .26667s ease-out,background-color .26667s ease-out;transition-delay:.14s}.q-slider__pin{opacity:0;white-space:nowrap;transition:opacity .28s ease-out;transition-delay:.14s}.q-slider__pin:before{content:"";width:0;height:0;position:absolute}.q-slider__pin--h:before{border-left:6px solid transparent;border-right:6px solid transparent;left:50%;transform:translate(-50%)}.q-slider__pin--h-standard{bottom:100%}.q-slider__pin--h-standard:before{bottom:2px;border-top:6px solid currentColor}.q-slider__pin--h-switched{top:100%}.q-slider__pin--h-switched:before{top:2px;border-bottom:6px solid currentColor}.q-slider__pin--v{top:0}.q-slider__pin--v:before{top:50%;transform:translateY(-50%);border-top:6px solid transparent;border-bottom:6px solid transparent}.q-slider__pin--v-standard{left:100%}.q-slider__pin--v-standard:before{left:2px;border-right:6px solid currentColor}.q-slider__pin--v-switched{right:100%}.q-slider__pin--v-switched:before{right:2px;border-left:6px solid currentColor}.q-slider__label{z-index:1;white-space:nowrap;position:absolute}.q-slider__label--h{left:50%;transform:translate(-50%)}.q-slider__label--h-standard{bottom:7px}.q-slider__label--h-switched{top:7px}.q-slider__label--v{top:50%;transform:translateY(-50%)}.q-slider__label--v-standard{left:7px}.q-slider__label--v-switched{right:7px}.q-slider__text-container{min-height:25px;padding:2px 8px;border-radius:4px;background:currentColor;position:relative;text-align:center}.q-slider__text{color:#fff;font-size:12px}.q-slider--no-value .q-slider__thumb,.q-slider--no-value .q-slider__inner,.q-slider--no-value .q-slider__selection{opacity:0}.q-slider--focus .q-slider__focus-ring,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__focus-ring{background:currentColor;transform:scale3d(1.55,1.55,1);opacity:.25}.q-slider--focus .q-slider__thumb,.q-slider--focus .q-slider__inner,.q-slider--focus .q-slider__selection,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__thumb,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__inner,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__selection{opacity:1}.q-slider--inactive .q-slider__thumb--h{transition:left .28s,right .28s}.q-slider--inactive .q-slider__thumb--v{transition:top .28s,bottom .28s}.q-slider--inactive .q-slider__selection{transition:width .28s,left .28s,right .28s,height .28s,top .28s,bottom .28s}.q-slider--inactive .q-slider__text-container{transition:transform .28s}.q-slider--active{cursor:grabbing}.q-slider--active .q-slider__thumb-shape{transform:scale(1.5)}.q-slider--active .q-slider__focus-ring,.q-slider--active.q-slider--label .q-slider__thumb-shape{transform:scale(0)!important}body.desktop .q-slider.q-slider--enabled .q-slider__track-container:hover .q-slider__pin,.q-slider--label.q-slider--active .q-slider__pin,.q-slider--label .q-slider--focus .q-slider__pin,.q-slider--label.q-slider--label-always .q-slider__pin{opacity:1}.q-slider--dark .q-slider__track,.q-slider--dark .q-slider__inner{background:rgba(255,255,255,.1)}.q-slider--dark .q-slider__markers{color:#ffffff4d}.q-slider--dense .q-slider__track-container--h{padding:6px 0}.q-slider--dense .q-slider__track-container--v{padding:0 6px}.q-space{flex-grow:1!important}.q-spinner{vertical-align:middle}.q-spinner-mat{animation:q-spin 2s linear infinite;transform-origin:center center}.q-spinner-mat .path{stroke-dasharray:1,200;stroke-dashoffset:0;animation:q-mat-dash 1.5s ease-in-out infinite}@keyframes q-spin{0%{transform:rotate3d(0,0,1,0)}25%{transform:rotate3d(0,0,1,90deg)}50%{transform:rotate3d(0,0,1,180deg)}75%{transform:rotate3d(0,0,1,270deg)}to{transform:rotate3d(0,0,1,359deg)}}@keyframes q-mat-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}to{stroke-dasharray:89,200;stroke-dashoffset:-124px}}.q-splitter__panel{position:relative;z-index:0}.q-splitter__panel>.q-splitter{width:100%;height:100%}.q-splitter__separator{background-color:#0000001f;-webkit-user-select:none;user-select:none;position:relative;z-index:1}.q-splitter__separator-area>*{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.q-splitter--dark .q-splitter__separator{background-color:#ffffff47}.q-splitter--vertical>.q-splitter__panel{height:100%}.q-splitter--vertical.q-splitter--active{cursor:col-resize}.q-splitter--vertical>.q-splitter__separator{width:1px}.q-splitter--vertical>.q-splitter__separator>div{left:-6px;right:-6px}.q-splitter--vertical.q-splitter--workable>.q-splitter__separator{cursor:col-resize}.q-splitter--horizontal>.q-splitter__panel{width:100%}.q-splitter--horizontal.q-splitter--active{cursor:row-resize}.q-splitter--horizontal>.q-splitter__separator{height:1px}.q-splitter--horizontal>.q-splitter__separator>div{top:-6px;bottom:-6px}.q-splitter--horizontal.q-splitter--workable>.q-splitter__separator{cursor:row-resize}.q-splitter__before,.q-splitter__after{overflow:auto}.q-stepper{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;background:#fff}.q-stepper__title{font-size:14px;line-height:18px;letter-spacing:.1px}.q-stepper__caption{font-size:12px;line-height:14px}.q-stepper__dot{contain:layout;margin-right:8px;font-size:14px;width:24px;min-width:24px;height:24px;border-radius:50%;background:currentColor}.q-stepper__dot span{color:#fff}.q-stepper__tab{padding:8px 24px;font-size:14px;color:#9e9e9e;flex-direction:row}.q-stepper--dark{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-stepper--dark .q-stepper__dot span{color:#000}.q-stepper__tab--navigation{-webkit-user-select:none;user-select:none;cursor:pointer}.q-stepper__tab--active,.q-stepper__tab--done{color:var(--q-primary)}.q-stepper__tab--active .q-stepper__dot,.q-stepper__tab--active .q-stepper__label,.q-stepper__tab--done .q-stepper__dot,.q-stepper__tab--done .q-stepper__label{text-shadow:0 0 0 currentColor}.q-stepper__tab--disabled .q-stepper__dot{background:rgba(0,0,0,.22)}.q-stepper__tab--disabled .q-stepper__label{color:#00000052}.q-stepper__tab--error{color:var(--q-negative)}.q-stepper__tab--error-with-icon .q-stepper__dot{background:transparent!important}.q-stepper__tab--error-with-icon .q-stepper__dot span{color:currentColor;font-size:24px}.q-stepper__header{border-top-left-radius:inherit;border-top-right-radius:inherit}.q-stepper__header--border{border-bottom:1px solid rgba(0,0,0,.12)}.q-stepper__header--standard-labels .q-stepper__tab{min-height:72px;justify-content:center}.q-stepper__header--standard-labels .q-stepper__tab:first-child{justify-content:flex-start}.q-stepper__header--standard-labels .q-stepper__tab:last-child{justify-content:flex-end}.q-stepper__header--standard-labels .q-stepper__tab:only-child{justify-content:center}.q-stepper__header--standard-labels .q-stepper__dot:after{display:none}.q-stepper__header--alternative-labels .q-stepper__tab{min-height:104px;padding:24px 32px;flex-direction:column;justify-content:flex-start}.q-stepper__header--alternative-labels .q-stepper__dot{margin-right:0}.q-stepper__header--alternative-labels .q-stepper__label{margin-top:8px;text-align:center}.q-stepper__header--alternative-labels .q-stepper__label:before,.q-stepper__header--alternative-labels .q-stepper__label:after{display:none}.q-stepper__header--contracted,.q-stepper__header--contracted.q-stepper__header--alternative-labels .q-stepper__tab{min-height:72px}.q-stepper__header--contracted.q-stepper__header--alternative-labels .q-stepper__tab:first-child{align-items:flex-start}.q-stepper__header--contracted.q-stepper__header--alternative-labels .q-stepper__tab:last-child{align-items:flex-end}.q-stepper__header--contracted .q-stepper__tab{padding:24px 0}.q-stepper__header--contracted .q-stepper__tab:first-child .q-stepper__dot{transform:translate(24px)}.q-stepper__header--contracted .q-stepper__tab:last-child .q-stepper__dot{transform:translate(-24px)}.q-stepper__header--contracted .q-stepper__tab:not(:last-child) .q-stepper__dot:after{display:block!important}.q-stepper__header--contracted .q-stepper__dot{margin:0}.q-stepper__header--contracted .q-stepper__label{display:none}.q-stepper__nav{padding-top:24px}.q-stepper--flat{box-shadow:none}.q-stepper--bordered{border:1px solid rgba(0,0,0,.12)}.q-stepper--horizontal .q-stepper__step-inner{padding:24px}.q-stepper--horizontal .q-stepper__tab:first-child{border-top-left-radius:inherit}.q-stepper--horizontal .q-stepper__tab:last-child{border-top-right-radius:inherit}.q-stepper--horizontal .q-stepper__tab:first-child .q-stepper__dot:before,.q-stepper--horizontal .q-stepper__tab:last-child .q-stepper__label:after,.q-stepper--horizontal .q-stepper__tab:last-child .q-stepper__dot:after{display:none}.q-stepper--horizontal .q-stepper__tab{overflow:hidden}.q-stepper--horizontal .q-stepper__line{contain:layout}.q-stepper--horizontal .q-stepper__line:before,.q-stepper--horizontal .q-stepper__line:after{position:absolute;top:50%;height:1px;width:100vw;background:rgba(0,0,0,.12)}.q-stepper--horizontal .q-stepper__label:after,.q-stepper--horizontal .q-stepper__dot:after{content:"";left:100%;margin-left:8px}.q-stepper--horizontal .q-stepper__dot:before{content:"";right:100%;margin-right:8px}.q-stepper--horizontal>.q-stepper__nav{padding:0 24px 24px}.q-stepper--vertical{padding:16px 0}.q-stepper--vertical .q-stepper__tab{padding:12px 24px}.q-stepper--vertical .q-stepper__title{line-height:18px}.q-stepper--vertical .q-stepper__step-inner{padding:0 24px 32px 60px}.q-stepper--vertical>.q-stepper__nav{padding:24px 24px 0}.q-stepper--vertical .q-stepper__step{overflow:hidden}.q-stepper--vertical .q-stepper__dot{margin-right:12px}.q-stepper--vertical .q-stepper__dot:before,.q-stepper--vertical .q-stepper__dot:after{content:"";position:absolute;left:50%;width:1px;height:99999px;background:rgba(0,0,0,.12)}.q-stepper--vertical .q-stepper__dot:before{bottom:100%;margin-bottom:8px}.q-stepper--vertical .q-stepper__dot:after{top:100%;margin-top:8px}.q-stepper--vertical .q-stepper__step:first-child .q-stepper__dot:before,.q-stepper--vertical .q-stepper__step:last-child .q-stepper__dot:after{display:none}.q-stepper--vertical .q-stepper__step:last-child .q-stepper__step-inner{padding-bottom:8px}.q-stepper--dark.q-stepper--bordered,.q-stepper--dark .q-stepper__header--border{border-color:#ffffff47}.q-stepper--dark.q-stepper--horizontal .q-stepper__line:before,.q-stepper--dark.q-stepper--horizontal .q-stepper__line:after{background:rgba(255,255,255,.28)}.q-stepper--dark.q-stepper--vertical .q-stepper__dot:before,.q-stepper--dark.q-stepper--vertical .q-stepper__dot:after{background:rgba(255,255,255,.28)}.q-stepper--dark .q-stepper__tab--disabled{color:#ffffff47}.q-stepper--dark .q-stepper__tab--disabled .q-stepper__dot{background:rgba(255,255,255,.28)}.q-stepper--dark .q-stepper__tab--disabled .q-stepper__label{color:#ffffff8a}.q-tab-panels{background:#fff}.q-tab-panel{padding:16px}.q-markup-table{overflow:auto;background:#fff}.q-table{width:100%;max-width:100%;border-collapse:separate;border-spacing:0}.q-table thead tr,.q-table tbody td{height:48px}.q-table th{font-weight:500;font-size:12px;-webkit-user-select:none;user-select:none}.q-table th.sortable{cursor:pointer}.q-table th.sortable:hover .q-table__sort-icon{opacity:.64}.q-table th.sorted .q-table__sort-icon{opacity:.86!important}.q-table th.sort-desc .q-table__sort-icon{transform:rotate(180deg)}.q-table th,.q-table td{padding:7px 16px;background-color:inherit}.q-table thead,.q-table td,.q-table th{border-style:solid;border-width:0}.q-table tbody td{font-size:13px}.q-table__card{color:#000;background-color:#fff;border-radius:4px;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f}.q-table__card .q-table__middle{flex:1 1 auto}.q-table__card .q-table__top,.q-table__card .q-table__bottom{flex:0 0 auto}.q-table__container{position:relative}.q-table__container>div:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.q-table__container>div:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.q-table__container>.q-inner-loading{border-radius:inherit!important}.q-table__top{padding:12px 16px}.q-table__top .q-table__control{flex-wrap:wrap}.q-table__title{font-size:20px;letter-spacing:.005em;font-weight:400}.q-table__separator{min-width:8px!important}.q-table__progress{height:0!important}.q-table__progress th{padding:0!important;border:0!important}.q-table__progress .q-linear-progress{position:absolute;bottom:0}.q-table__middle{max-width:100%}.q-table__bottom{min-height:50px;padding:4px 14px 4px 16px;font-size:12px}.q-table__bottom .q-table__control{min-height:24px}.q-table__bottom-nodata-icon{font-size:200%;margin-right:8px}.q-table__bottom-item{margin-right:16px}.q-table__control{display:flex;align-items:center}.q-table__sort-icon{transition:transform .3s cubic-bezier(.25,.8,.5,1);opacity:0;font-size:120%}.q-table__sort-icon--left,.q-table__sort-icon--center{margin-left:4px}.q-table__sort-icon--right{margin-right:4px}.q-table--col-auto-width{width:1px}.q-table__card--dark,.q-table--dark{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-table--flat{box-shadow:none}.q-table--bordered{border:1px solid rgba(0,0,0,.12)}.q-table--square{border-radius:0}.q-table__linear-progress{height:2px}.q-table--no-wrap th,.q-table--no-wrap td{white-space:nowrap}.q-table--grid{box-shadow:none;border-radius:4px}.q-table--grid .q-table__top{padding-bottom:4px}.q-table--grid .q-table__middle{min-height:2px;margin-bottom:4px}.q-table--grid .q-table__middle thead,.q-table--grid .q-table__middle thead th{border:0!important}.q-table--grid .q-table__linear-progress{bottom:0}.q-table--grid .q-table__bottom{border-top:0}.q-table--grid .q-table__grid-content{flex:1 1 auto}.q-table--grid.fullscreen{background:inherit}.q-table__grid-item-card{vertical-align:top;padding:12px}.q-table__grid-item-card .q-separator{margin:12px 0}.q-table__grid-item-row+.q-table__grid-item-row{margin-top:8px}.q-table__grid-item-title{opacity:.54;font-weight:500;font-size:12px}.q-table__grid-item-value{font-size:13px}.q-table__grid-item{padding:4px;transition:transform .3s cubic-bezier(.25,.8,.5,1)}.q-table__grid-item--selected{transform:scale(.95)}.q-table--horizontal-separator thead th,.q-table--horizontal-separator tbody tr:not(:last-child)>td,.q-table--cell-separator thead th,.q-table--cell-separator tbody tr:not(:last-child)>td{border-bottom-width:1px}.q-table--vertical-separator td,.q-table--vertical-separator th,.q-table--cell-separator td,.q-table--cell-separator th{border-left-width:1px}.q-table--vertical-separator thead tr:last-child th,.q-table--vertical-separator.q-table--loading tr:nth-last-child(2) th,.q-table--cell-separator thead tr:last-child th,.q-table--cell-separator.q-table--loading tr:nth-last-child(2) th{border-bottom-width:1px}.q-table--vertical-separator td:first-child,.q-table--vertical-separator th:first-child,.q-table--cell-separator td:first-child,.q-table--cell-separator th:first-child{border-left:0}.q-table--vertical-separator .q-table__top,.q-table--cell-separator .q-table__top{border-bottom:1px solid rgba(0,0,0,.12)}.q-table--dense .q-table__top{padding:6px 16px}.q-table--dense .q-table__bottom{min-height:33px}.q-table--dense .q-table__sort-icon{font-size:110%}.q-table--dense .q-table th,.q-table--dense .q-table td{padding:4px 8px}.q-table--dense .q-table thead tr,.q-table--dense .q-table tbody tr,.q-table--dense .q-table tbody td{height:28px}.q-table--dense .q-table th:first-child,.q-table--dense .q-table td:first-child{padding-left:16px}.q-table--dense .q-table th:last-child,.q-table--dense .q-table td:last-child{padding-right:16px}.q-table--dense .q-table__bottom-item{margin-right:8px}.q-table--dense .q-table__select .q-field__control,.q-table--dense .q-table__select .q-field__native{min-height:24px;padding:0}.q-table--dense .q-table__select .q-field__marginal{height:24px}.q-table__bottom{border-top:1px solid rgba(0,0,0,.12)}.q-table thead,.q-table tr,.q-table th,.q-table td{border-color:#0000001f}.q-table tbody td{position:relative}.q-table tbody td:before,.q-table tbody td:after{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.q-table tbody td:before{background:rgba(0,0,0,.03)}.q-table tbody td:after{background:rgba(0,0,0,.06)}.q-table tbody tr.selected td:after{content:""}body.desktop .q-table>tbody>tr:not(.q-tr--no-hover):hover>td:not(.q-td--no-hover):before{content:""}.q-table__card--dark,.q-table--dark,.q-table--dark .q-table__bottom,.q-table--dark thead,.q-table--dark tr,.q-table--dark th,.q-table--dark td{border-color:#ffffff47}.q-table--dark tbody td:before{background:rgba(255,255,255,.07)}.q-table--dark tbody td:after{background:rgba(255,255,255,.1)}.q-table--dark.q-table--vertical-separator .q-table__top,.q-table--dark.q-table--cell-separator .q-table__top{border-color:#ffffff47}.q-tab{padding:0 16px;min-height:48px;transition:color .3s,background-color .3s;text-transform:uppercase;white-space:nowrap;color:inherit;text-decoration:none}.q-tab--full{min-height:72px}.q-tab--no-caps{text-transform:none}.q-tab__content{height:inherit;padding:4px 0;min-width:40px}.q-tab__content--inline .q-tab__icon+.q-tab__label{padding-left:8px}.q-tab__content .q-chip--floating{top:0;right:-16px}.q-tab__icon{width:24px;height:24px;font-size:24px}.q-tab__label{font-size:14px;line-height:1.715em;font-weight:500}.q-tab .q-badge{top:3px;right:-12px}.q-tab__alert,.q-tab__alert-icon{position:absolute}.q-tab__alert{top:7px;right:-9px;height:10px;width:10px;border-radius:50%;background:currentColor}.q-tab__alert-icon{top:2px;right:-12px;font-size:18px}.q-tab__indicator{opacity:0;height:2px;background:currentColor}.q-tab--active .q-tab__indicator{opacity:1;transform-origin:left}.q-tab--inactive{opacity:.85}.q-tabs{position:relative;transition:color .3s,background-color .3s}.q-tabs--scrollable.q-tabs__arrows--outside.q-tabs--horizontal{padding-left:36px;padding-right:36px}.q-tabs--scrollable.q-tabs__arrows--outside.q-tabs--vertical{padding-top:36px;padding-bottom:36px}.q-tabs--scrollable.q-tabs__arrows--outside .q-tabs__arrow--faded{opacity:.3;pointer-events:none}.q-tabs--scrollable.q-tabs__arrows--inside .q-tabs__arrow--faded{display:none}.q-tabs--not-scrollable.q-tabs__arrows--outside,body.mobile .q-tabs--scrollable.q-tabs--mobile-without-arrows.q-tabs__arrows--outside{padding-left:0;padding-right:0}.q-tabs--not-scrollable .q-tabs__arrow,body.mobile .q-tabs--scrollable.q-tabs--mobile-without-arrows .q-tabs__arrow{display:none}.q-tabs--not-scrollable .q-tabs__content,body.mobile .q-tabs--scrollable.q-tabs--mobile-without-arrows .q-tabs__content{border-radius:inherit}.q-tabs__arrow{cursor:pointer;font-size:32px;min-width:36px;text-shadow:0 0 3px #fff,0 0 1px #fff,0 0 1px #000;transition:opacity .3s}.q-tabs__content{overflow:hidden;flex:1 1 auto}.q-tabs__content--align-center{justify-content:center}.q-tabs__content--align-right{justify-content:flex-end}.q-tabs__content--align-justify .q-tab{flex:1 1 auto}.q-tabs__offset{display:none}.q-tabs--horizontal .q-tabs__arrow{height:100%}.q-tabs--horizontal .q-tabs__arrow--left{top:0;left:0;bottom:0}.q-tabs--horizontal .q-tabs__arrow--right{top:0;right:0;bottom:0}.q-tabs--vertical,.q-tabs--vertical .q-tabs__content{display:block!important;height:100%}.q-tabs--vertical .q-tabs__arrow{width:100%;height:36px;text-align:center}.q-tabs--vertical .q-tabs__arrow--left{top:0;left:0;right:0}.q-tabs--vertical .q-tabs__arrow--right{left:0;right:0;bottom:0}.q-tabs--vertical .q-tab{padding:0 8px}.q-tabs--vertical .q-tab__indicator{height:unset;width:2px}.q-tabs--vertical.q-tabs--not-scrollable .q-tabs__content{height:100%}.q-tabs--vertical.q-tabs--dense .q-tab__content{min-width:24px}.q-tabs--dense .q-tab{min-height:36px}.q-tabs--dense .q-tab--full{min-height:52px}.q-time{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;background:#fff;outline:0;width:290px;min-width:290px;max-width:100%}.q-time--bordered{border:1px solid rgba(0,0,0,.12)}.q-time__header{border-top-left-radius:inherit;color:#fff;background-color:var(--q-primary);padding:16px;font-weight:300}.q-time__actions{padding:0 16px 16px}.q-time__header-label{font-size:28px;line-height:1;letter-spacing:-.00833em}.q-time__header-label>div+div{margin-left:4px}.q-time__link{opacity:.56;outline:0;transition:opacity .3s ease-out}.q-time__link--active,.q-time__link:hover,.q-time__link:focus{opacity:1}.q-time__header-ampm{font-size:16px;letter-spacing:.1em}.q-time__content{padding:16px}.q-time__content:before{content:"";display:block;padding-bottom:100%}.q-time__container-parent{padding:16px}.q-time__container-child{border-radius:50%;background:rgba(0,0,0,.12)}.q-time__clock{padding:24px;width:100%;height:100%;max-width:100%;max-height:100%;font-size:14px}.q-time__clock-circle{position:relative}.q-time__clock-center{height:6px;width:6px;margin:auto;border-radius:50%;min-height:0;background:currentColor}.q-time__clock-pointer{width:2px;height:50%;transform-origin:0 0;min-height:0;position:absolute;left:50%;right:0;bottom:0;color:var(--q-primary);background:currentColor;transform:translate(-50%)}.q-time__clock-pointer:before,.q-time__clock-pointer:after{content:"";position:absolute;left:50%;border-radius:50%;background:currentColor;transform:translate(-50%)}.q-time__clock-pointer:before{bottom:-4px;width:8px;height:8px}.q-time__clock-pointer:after{top:-3px;height:6px;width:6px}.q-time__clock-position{position:absolute;min-height:32px;width:32px;height:32px;font-size:12px;line-height:32px;margin:0;padding:0;transform:translate(-50%,-50%);border-radius:50%}.q-time__clock-position--disable{opacity:.4}.q-time__clock-position--active{background-color:var(--q-primary);color:#fff}.q-time__clock-pos-0{top:0%;left:50%}.q-time__clock-pos-1{top:6.7%;left:75%}.q-time__clock-pos-2{top:25%;left:93.3%}.q-time__clock-pos-3{top:50%;left:100%}.q-time__clock-pos-4{top:75%;left:93.3%}.q-time__clock-pos-5{top:93.3%;left:75%}.q-time__clock-pos-6{top:100%;left:50%}.q-time__clock-pos-7{top:93.3%;left:25%}.q-time__clock-pos-8{top:75%;left:6.7%}.q-time__clock-pos-9{top:50%;left:0%}.q-time__clock-pos-10{top:25%;left:6.7%}.q-time__clock-pos-11{top:6.7%;left:25%}.q-time__clock-pos-12{top:15%;left:50%}.q-time__clock-pos-13{top:19.69%;left:67.5%}.q-time__clock-pos-14{top:32.5%;left:80.31%}.q-time__clock-pos-15{top:50%;left:85%}.q-time__clock-pos-16{top:67.5%;left:80.31%}.q-time__clock-pos-17{top:80.31%;left:67.5%}.q-time__clock-pos-18{top:85%;left:50%}.q-time__clock-pos-19{top:80.31%;left:32.5%}.q-time__clock-pos-20{top:67.5%;left:19.69%}.q-time__clock-pos-21{top:50%;left:15%}.q-time__clock-pos-22{top:32.5%;left:19.69%}.q-time__clock-pos-23{top:19.69%;left:32.5%}.q-time__now-button{background-color:var(--q-primary);color:#fff;top:12px;right:12px}.q-time.disabled .q-time__header-ampm,.q-time.disabled .q-time__content,.q-time--readonly .q-time__header-ampm,.q-time--readonly .q-time__content{pointer-events:none}.q-time--portrait{display:inline-flex;flex-direction:column}.q-time--portrait .q-time__header{border-top-right-radius:inherit;min-height:86px}.q-time--portrait .q-time__header-ampm{margin-left:12px}.q-time--portrait.q-time--bordered .q-time__content{margin:1px 0}.q-time--landscape{display:inline-flex;align-items:stretch;min-width:420px}.q-time--landscape>div{display:flex;flex-direction:column;justify-content:center}.q-time--landscape .q-time__header{border-bottom-left-radius:inherit;min-width:156px}.q-time--landscape .q-time__header-ampm{margin-top:12px}.q-time--dark{border-color:#ffffff47;box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-timeline{padding:0;width:100%;list-style:none}.q-timeline h6{line-height:inherit}.q-timeline--dark{color:#fff}.q-timeline--dark .q-timeline__subtitle{opacity:.7}.q-timeline__content{padding-bottom:24px}.q-timeline__title{margin-top:0;margin-bottom:16px}.q-timeline__subtitle{font-size:12px;margin-bottom:8px;opacity:.6;text-transform:uppercase;letter-spacing:1px;font-weight:700}.q-timeline__dot{position:absolute;top:0;bottom:0;width:15px}.q-timeline__dot:before,.q-timeline__dot:after{content:"";background:currentColor;display:block;position:absolute}.q-timeline__dot:before{border:3px solid transparent;border-radius:100%;height:15px;width:15px;top:4px;left:0;transition:background .3s ease-in-out,border .3s ease-in-out}.q-timeline__dot:after{width:3px;opacity:.4;top:24px;bottom:0;left:6px}.q-timeline__dot .q-icon{position:absolute;top:0;left:0;right:0;font-size:16px;height:38px;line-height:38px;width:100%;color:#fff}.q-timeline__dot .q-icon>svg,.q-timeline__dot .q-icon>img{width:1em;height:1em}.q-timeline__dot-img{position:absolute;top:4px;left:0;right:0;height:31px;width:31px;background:currentColor;border-radius:50%}.q-timeline__heading{position:relative}.q-timeline__heading:first-child .q-timeline__heading-title{padding-top:0}.q-timeline__heading:last-child .q-timeline__heading-title{padding-bottom:0}.q-timeline__heading-title{padding:32px 0;margin:0}.q-timeline__entry{position:relative;line-height:22px}.q-timeline__entry:last-child{padding-bottom:0!important}.q-timeline__entry:last-child .q-timeline__dot:after{content:none}.q-timeline__entry--icon .q-timeline__dot{width:31px}.q-timeline__entry--icon .q-timeline__dot:before{height:31px;width:31px}.q-timeline__entry--icon .q-timeline__dot:after{top:41px;left:14px}.q-timeline__entry--icon .q-timeline__subtitle{padding-top:8px}.q-timeline--dense--right .q-timeline__entry{padding-left:40px}.q-timeline--dense--right .q-timeline__entry--icon .q-timeline__dot{left:-8px}.q-timeline--dense--right .q-timeline__dot{left:0}.q-timeline--dense--left .q-timeline__heading{text-align:right}.q-timeline--dense--left .q-timeline__entry{padding-right:40px}.q-timeline--dense--left .q-timeline__entry--icon .q-timeline__dot{right:-8px}.q-timeline--dense--left .q-timeline__content,.q-timeline--dense--left .q-timeline__title,.q-timeline--dense--left .q-timeline__subtitle{text-align:right}.q-timeline--dense--left .q-timeline__dot{right:0}.q-timeline--comfortable{display:table}.q-timeline--comfortable .q-timeline__heading{display:table-row;font-size:200%}.q-timeline--comfortable .q-timeline__heading>div{display:table-cell}.q-timeline--comfortable .q-timeline__entry{display:table-row;padding:0}.q-timeline--comfortable .q-timeline__entry--icon .q-timeline__content{padding-top:8px}.q-timeline--comfortable .q-timeline__subtitle,.q-timeline--comfortable .q-timeline__dot,.q-timeline--comfortable .q-timeline__content{display:table-cell;vertical-align:top}.q-timeline--comfortable .q-timeline__subtitle{width:35%}.q-timeline--comfortable .q-timeline__dot{position:relative;min-width:31px}.q-timeline--comfortable--right .q-timeline__heading .q-timeline__heading-title{margin-left:-50px}.q-timeline--comfortable--right .q-timeline__subtitle{text-align:right;padding-right:30px}.q-timeline--comfortable--right .q-timeline__content{padding-left:30px}.q-timeline--comfortable--right .q-timeline__entry--icon .q-timeline__dot{left:-8px}.q-timeline--comfortable--left .q-timeline__heading{text-align:right}.q-timeline--comfortable--left .q-timeline__heading .q-timeline__heading-title{margin-right:-50px}.q-timeline--comfortable--left .q-timeline__subtitle{padding-left:30px}.q-timeline--comfortable--left .q-timeline__content{padding-right:30px}.q-timeline--comfortable--left .q-timeline__content,.q-timeline--comfortable--left .q-timeline__title{text-align:right}.q-timeline--comfortable--left .q-timeline__entry--icon .q-timeline__dot{right:0}.q-timeline--comfortable--left .q-timeline__dot{right:-8px}.q-timeline--loose .q-timeline__heading-title{text-align:center;margin-left:0}.q-timeline--loose .q-timeline__entry,.q-timeline--loose .q-timeline__subtitle,.q-timeline--loose .q-timeline__dot,.q-timeline--loose .q-timeline__content{display:block;margin:0;padding:0}.q-timeline--loose .q-timeline__dot{position:absolute;left:50%;margin-left:-7.15px}.q-timeline--loose .q-timeline__entry{padding-bottom:24px;overflow:hidden}.q-timeline--loose .q-timeline__entry--icon .q-timeline__dot{margin-left:-15px}.q-timeline--loose .q-timeline__entry--icon .q-timeline__subtitle{line-height:38px}.q-timeline--loose .q-timeline__entry--icon .q-timeline__content{padding-top:8px}.q-timeline--loose .q-timeline__entry--left .q-timeline__content,.q-timeline--loose .q-timeline__entry--right .q-timeline__subtitle{float:left;padding-right:30px;text-align:right}.q-timeline--loose .q-timeline__entry--left .q-timeline__subtitle,.q-timeline--loose .q-timeline__entry--right .q-timeline__content{float:right;text-align:left;padding-left:30px}.q-timeline--loose .q-timeline__subtitle,.q-timeline--loose .q-timeline__content{width:50%}.q-toggle{vertical-align:middle}.q-toggle__native{width:1px;height:1px}.q-toggle__track{height:.35em;border-radius:.175em;opacity:.38;background:currentColor}.q-toggle__thumb{top:.25em;left:.25em;width:.5em;height:.5em;transition:left .22s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none;z-index:0}.q-toggle__thumb:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:#fff;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.q-toggle__thumb .q-icon{font-size:.3em;min-width:1em;color:#000;opacity:.54;z-index:1}.q-toggle__inner{font-size:40px;width:1.4em;min-width:1.4em;height:1em;padding:.325em .3em;-webkit-print-color-adjust:exact}.q-toggle__inner--indet .q-toggle__thumb{left:.45em}.q-toggle__inner--truthy{color:var(--q-primary)}.q-toggle__inner--truthy .q-toggle__track{opacity:.54}.q-toggle__inner--truthy .q-toggle__thumb{left:.65em}.q-toggle__inner--truthy .q-toggle__thumb:after{background-color:currentColor}.q-toggle__inner--truthy .q-toggle__thumb .q-icon{color:#fff;opacity:1}.q-toggle.disabled{opacity:.75!important}.q-toggle--dark .q-toggle__inner{color:#fff}.q-toggle--dark .q-toggle__inner--truthy{color:var(--q-primary)}.q-toggle--dark .q-toggle__thumb:after{box-shadow:none}.q-toggle--dark .q-toggle__thumb:before{opacity:.32!important}.q-toggle--dense .q-toggle__inner{width:.8em;min-width:.8em;height:.5em;padding:.07625em 0}.q-toggle--dense .q-toggle__thumb{top:0;left:0}.q-toggle--dense .q-toggle__inner--indet .q-toggle__thumb{left:.15em}.q-toggle--dense .q-toggle__inner--truthy .q-toggle__thumb{left:.3em}.q-toggle--dense .q-toggle__label{padding-left:.5em}.q-toggle--dense.reverse .q-toggle__label{padding-left:0;padding-right:.5em}body.desktop .q-toggle:not(.disabled) .q-toggle__thumb:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:currentColor;opacity:.12;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0,0,.2,1)}body.desktop .q-toggle:not(.disabled):focus .q-toggle__thumb:before,body.desktop .q-toggle:not(.disabled):hover .q-toggle__thumb:before{transform:scale3d(2,2,1)}body.desktop .q-toggle--dense:not(.disabled):focus .q-toggle__thumb:before,body.desktop .q-toggle--dense:not(.disabled):hover .q-toggle__thumb:before{transform:scale3d(1.5,1.5,1)}.q-toolbar{position:relative;padding:0 12px;min-height:50px;width:100%}.q-toolbar--inset{padding-left:58px}.q-toolbar .q-avatar{font-size:38px}.q-toolbar__title{flex:1 1 0%;min-width:1px;max-width:100%;font-size:21px;font-weight:400;letter-spacing:.01em;padding:0 12px}.q-toolbar__title:first-child{padding-left:0}.q-toolbar__title:last-child{padding-right:0}.q-tooltip--style{font-size:10px;color:#fafafa;background:#757575;border-radius:4px;text-transform:none;font-weight:400}.q-tooltip{z-index:9000;position:fixed!important;overflow-y:auto;overflow-x:hidden;padding:6px 10px}@media (max-width: 599.98px){.q-tooltip{font-size:14px;padding:8px 16px}}.q-tree{position:relative;color:#9e9e9e}.q-tree__node{padding:0 0 3px 22px}.q-tree__node:after{content:"";position:absolute;top:-3px;bottom:0;width:2px;right:auto;left:-13px;border-left:1px solid currentColor}.q-tree__node:last-child:after{display:none}.q-tree__node--disabled{pointer-events:none}.q-tree__node--disabled .disabled{opacity:1!important}.q-tree__node--disabled>div,.q-tree__node--disabled>i,.q-tree__node--disabled>.disabled{opacity:.6!important}.q-tree__node--disabled>div .q-tree__node--disabled>div,.q-tree__node--disabled>div .q-tree__node--disabled>i,.q-tree__node--disabled>div .q-tree__node--disabled>.disabled,.q-tree__node--disabled>i .q-tree__node--disabled>div,.q-tree__node--disabled>i .q-tree__node--disabled>i,.q-tree__node--disabled>i .q-tree__node--disabled>.disabled,.q-tree__node--disabled>.disabled .q-tree__node--disabled>div,.q-tree__node--disabled>.disabled .q-tree__node--disabled>i,.q-tree__node--disabled>.disabled .q-tree__node--disabled>.disabled{opacity:1!important}.q-tree__node-header:before{content:"";position:absolute;top:-3px;bottom:50%;width:31px;left:-35px;border-left:1px solid currentColor;border-bottom:1px solid currentColor}.q-tree__children{padding-left:25px}.q-tree__node-body{padding:5px 0 8px 5px}.q-tree__node--parent{padding-left:2px}.q-tree__node--parent>.q-tree__node-header:before{width:15px;left:-15px}.q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body{padding:5px 0 8px 27px}.q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body:after{content:"";position:absolute;top:0;width:2px;height:100%;right:auto;left:12px;border-left:1px solid currentColor;bottom:50px}.q-tree__node--link{cursor:pointer}.q-tree__node-header{padding:4px;margin-top:3px;border-radius:4px;outline:0}.q-tree__node-header-content{color:#000;transition:color .3s}.q-tree__node--selected .q-tree__node-header-content{color:#9e9e9e}.q-tree__icon,.q-tree__node-header-content .q-icon{font-size:21px}.q-tree__img{height:42px;border-radius:2px}.q-tree__avatar,.q-tree__node-header-content .q-avatar{font-size:28px;border-radius:50%;width:28px;height:28px}.q-tree__arrow,.q-tree__spinner{font-size:16px;margin-right:4px}.q-tree__arrow{transition:transform .3s}.q-tree__arrow--rotate{transform:rotate3d(0,0,1,90deg)}.q-tree__tickbox{margin-right:4px}.q-tree>.q-tree__node{padding:0}.q-tree>.q-tree__node:after,.q-tree>.q-tree__node>.q-tree__node-header:before{display:none}.q-tree>.q-tree__node--child>.q-tree__node-header{padding-left:24px}.q-tree--dark .q-tree__node-header-content{color:#fff}.q-tree--no-connectors .q-tree__node:after,.q-tree--no-connectors .q-tree__node-header:before,.q-tree--no-connectors .q-tree__node-body:after{display:none!important}.q-tree--dense>.q-tree__node--child>.q-tree__node-header{padding-left:1px}.q-tree--dense .q-tree__arrow,.q-tree--dense .q-tree__spinner{margin-right:1px}.q-tree--dense .q-tree__img{height:32px}.q-tree--dense .q-tree__tickbox{margin-right:3px}.q-tree--dense .q-tree__node{padding:0}.q-tree--dense .q-tree__node:after{top:0;left:-8px}.q-tree--dense .q-tree__node-header{margin-top:0;padding:1px}.q-tree--dense .q-tree__node-header:before{top:0;left:-8px;width:8px}.q-tree--dense .q-tree__node--child{padding-left:17px}.q-tree--dense .q-tree__node--child>.q-tree__node-header:before{left:-25px;width:21px}.q-tree--dense .q-tree__node-body{padding:0 0 2px}.q-tree--dense .q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body{padding:0 0 2px 20px}.q-tree--dense .q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body:after{left:8px}.q-tree--dense .q-tree__children{padding-left:16px}[dir=rtl] .q-tree__arrow{transform:rotate3d(0,0,1,180deg)}[dir=rtl] .q-tree__arrow--rotate{transform:rotate3d(0,0,1,90deg)}.q-uploader{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;vertical-align:top;background:#fff;position:relative;width:320px;max-height:320px}.q-uploader--bordered{border:1px solid rgba(0,0,0,.12)}.q-uploader__input{opacity:0;width:100%;height:100%;cursor:pointer!important;z-index:1}.q-uploader__input::-webkit-file-upload-button{cursor:pointer}.q-uploader__file:before{content:"";border-top-left-radius:inherit;border-top-right-radius:inherit;position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:currentColor;opacity:.04}.q-uploader__header{position:relative;border-top-left-radius:inherit;border-top-right-radius:inherit;background-color:var(--q-primary);color:#fff;width:100%}.q-uploader__spinner{font-size:24px;margin-right:4px}.q-uploader__header-content{padding:8px}.q-uploader__dnd{outline:1px dashed currentColor;outline-offset:-4px;background:rgba(255,255,255,.6)}.q-uploader__overlay{font-size:36px;color:#000;background-color:#fff9}.q-uploader__list{position:relative;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;padding:8px;min-height:60px;flex:1 1 auto}.q-uploader__file{border-radius:4px 4px 0 0;border:1px solid rgba(0,0,0,.12)}.q-uploader__file .q-circular-progress{font-size:24px}.q-uploader__file--img{color:#fff;height:200px;min-width:200px;background-position:50% 50%;background-size:cover;background-repeat:no-repeat}.q-uploader__file--img:before{content:none}.q-uploader__file--img .q-circular-progress{color:#fff}.q-uploader__file--img .q-uploader__file-header{padding-bottom:24px;background:linear-gradient(to bottom,rgba(0,0,0,.7) 20%,rgba(255,255,255,0))}.q-uploader__file+.q-uploader__file{margin-top:8px}.q-uploader__file-header{position:relative;padding:4px 8px;border-top-left-radius:inherit;border-top-right-radius:inherit}.q-uploader__file-header-content{padding-right:8px}.q-uploader__file-status{font-size:24px;margin-right:4px}.q-uploader__title{font-size:14px;font-weight:700;line-height:18px;word-break:break-word}.q-uploader__subtitle{font-size:12px;line-height:18px}.q-uploader--disable .q-uploader__header,.q-uploader--disable .q-uploader__list{pointer-events:none}.q-uploader--dark{border-color:#ffffff47;box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-uploader--dark .q-uploader__file{border-color:#ffffff47}.q-uploader--dark .q-uploader__dnd,.q-uploader--dark .q-uploader__overlay{background:rgba(255,255,255,.3)}.q-uploader--dark .q-uploader__overlay{color:#fff}img.responsive{max-width:100%;height:auto}.q-video{position:relative;overflow:hidden;border-radius:inherit}.q-video iframe,.q-video object,.q-video embed{width:100%;height:100%}.q-video--responsive{height:0}.q-video--responsive iframe,.q-video--responsive object,.q-video--responsive embed{position:absolute;top:0;left:0}.q-virtual-scroll:focus{outline:0}.q-virtual-scroll__content{outline:none;contain:content}.q-virtual-scroll__content>*{overflow-anchor:none}.q-virtual-scroll__content>[data-q-vs-anchor]{overflow-anchor:auto}.q-virtual-scroll__padding{background:linear-gradient(rgba(255,255,255,0),rgba(255,255,255,0) 20%,rgba(128,128,128,.03) 20%,rgba(128,128,128,.08) 50%,rgba(128,128,128,.03) 80%,rgba(255,255,255,0) 80%,rgba(255,255,255,0));background-size:var(--q-virtual-scroll-item-width, 100%) var(--q-virtual-scroll-item-height, 50px)}.q-table .q-virtual-scroll__padding tr{height:0!important}.q-table .q-virtual-scroll__padding td{padding:0!important}.q-virtual-scroll--horizontal{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:stretch}.q-virtual-scroll--horizontal .q-virtual-scroll__content{display:flex;flex-direction:row;flex-wrap:nowrap}.q-virtual-scroll--horizontal .q-virtual-scroll__padding,.q-virtual-scroll--horizontal .q-virtual-scroll__content,.q-virtual-scroll--horizontal .q-virtual-scroll__content>*{flex:0 0 auto}.q-virtual-scroll--horizontal .q-virtual-scroll__padding{background:linear-gradient(to left,rgba(255,255,255,0),rgba(255,255,255,0) 20%,rgba(128,128,128,.03) 20%,rgba(128,128,128,.08) 50%,rgba(128,128,128,.03) 80%,rgba(255,255,255,0) 80%,rgba(255,255,255,0));background-size:var(--q-virtual-scroll-item-width, 50px) var(--q-virtual-scroll-item-height, 100%)}.q-ripple{position:absolute;top:0;left:0;width:100%;height:100%;color:inherit;border-radius:inherit;z-index:0;pointer-events:none;overflow:hidden;contain:strict}.q-ripple__inner{position:absolute;top:0;left:0;opacity:0;color:inherit;border-radius:50%;background:currentColor;pointer-events:none;will-change:transform,opacity}.q-ripple__inner--enter{transition:transform .225s cubic-bezier(.4,0,.2,1),opacity .1s cubic-bezier(.4,0,.2,1)}.q-ripple__inner--leave{transition:opacity .25s cubic-bezier(.4,0,.2,1)}.q-morph--invisible,.q-morph--internal{opacity:0!important;pointer-events:none!important;position:fixed!important;right:200vw!important;bottom:200vh!important}.q-loading{color:#000;position:fixed!important}.q-loading__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;opacity:.5;z-index:-1;background-color:#000;transition:background-color .28s}.q-loading__box{border-radius:4px;padding:18px;color:#fff;max-width:450px}.q-loading__message{margin:40px 20px 0;text-align:center}.q-notifications__list{z-index:9500;pointer-events:none;left:0;right:0;margin-bottom:10px;position:relative}.q-notifications__list--center{top:0;bottom:0}.q-notifications__list--top{top:0}.q-notifications__list--bottom{bottom:0}body.q-ios-padding .q-notifications__list--center,body.q-ios-padding .q-notifications__list--top{top:20px;top:env(safe-area-inset-top)}body.q-ios-padding .q-notifications__list--center,body.q-ios-padding .q-notifications__list--bottom{bottom:env(safe-area-inset-bottom)}.q-notification{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;pointer-events:all;display:inline-flex;margin:10px 10px 0;transition:transform 1s,opacity 1s;z-index:9500;flex-shrink:0;max-width:95vw;background:#323232;color:#fff;font-size:14px}.q-notification__icon{font-size:24px;flex:0 0 1em}.q-notification__icon--additional{margin-right:16px}.q-notification__avatar{font-size:32px}.q-notification__avatar--additional{margin-right:8px}.q-notification__spinner{font-size:32px}.q-notification__spinner--additional{margin-right:8px}.q-notification__message{padding:8px 0}.q-notification__caption{font-size:.9em;opacity:.7}.q-notification__actions{color:var(--q-primary)}.q-notification__badge{animation:q-notif-badge .42s;padding:4px 8px;position:absolute;box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f;background-color:var(--q-negative);color:#fff;border-radius:4px;font-size:12px;line-height:12px}.q-notification__badge--top-left,.q-notification__badge--top-right{top:-6px}.q-notification__badge--bottom-left,.q-notification__badge--bottom-right{bottom:-6px}.q-notification__badge--top-left,.q-notification__badge--bottom-left{left:-22px}.q-notification__badge--top-right,.q-notification__badge--bottom-right{right:-22px}.q-notification__progress{z-index:-1;position:absolute;height:3px;bottom:0;left:-10px;right:-10px;animation:q-notif-progress linear;background:currentColor;opacity:.3;border-radius:4px 4px 0 0;transform-origin:0 50%;transform:scaleX(0)}.q-notification--standard{padding:0 16px;min-height:48px}.q-notification--standard .q-notification__actions{padding:6px 0 6px 8px;margin-right:-8px}.q-notification--multi-line{min-height:68px;padding:8px 16px}.q-notification--multi-line .q-notification__badge--top-left,.q-notification--multi-line .q-notification__badge--top-right{top:-15px}.q-notification--multi-line .q-notification__badge--bottom-left,.q-notification--multi-line .q-notification__badge--bottom-right{bottom:-15px}.q-notification--multi-line .q-notification__progress{bottom:-8px}.q-notification--multi-line .q-notification__actions{padding:0}.q-notification--multi-line .q-notification__actions--with-media{padding-left:25px}.q-notification--top-left-enter-from,.q-notification--top-left-leave-to,.q-notification--top-enter-from,.q-notification--top-leave-to,.q-notification--top-right-enter-from,.q-notification--top-right-leave-to{opacity:0;transform:translateY(-50px);z-index:9499}.q-notification--left-enter-from,.q-notification--left-leave-to,.q-notification--center-enter-from,.q-notification--center-leave-to,.q-notification--right-enter-from,.q-notification--right-leave-to{opacity:0;transform:rotateX(90deg);z-index:9499}.q-notification--bottom-left-enter-from,.q-notification--bottom-left-leave-to,.q-notification--bottom-enter-from,.q-notification--bottom-leave-to,.q-notification--bottom-right-enter-from,.q-notification--bottom-right-leave-to{opacity:0;transform:translateY(50px);z-index:9499}.q-notification--top-left-leave-active,.q-notification--top-leave-active,.q-notification--top-right-leave-active,.q-notification--left-leave-active,.q-notification--center-leave-active,.q-notification--right-leave-active,.q-notification--bottom-left-leave-active,.q-notification--bottom-leave-active,.q-notification--bottom-right-leave-active{position:absolute;z-index:9499;margin-left:0;margin-right:0}.q-notification--top-leave-active,.q-notification--center-leave-active{top:0}.q-notification--bottom-left-leave-active,.q-notification--bottom-leave-active,.q-notification--bottom-right-leave-active{bottom:0}@media (min-width: 600px){.q-notification{max-width:65vw}}@keyframes q-notif-badge{15%{transform:translate3d(-25%,0,0) rotate3d(0,0,1,-5deg)}30%{transform:translate3d(20%,0,0) rotate3d(0,0,1,3deg)}45%{transform:translate3d(-15%,0,0) rotate3d(0,0,1,-3deg)}60%{transform:translate3d(10%,0,0) rotate3d(0,0,1,2deg)}75%{transform:translate3d(-5%,0,0) rotate3d(0,0,1,-1deg)}}@keyframes q-notif-progress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}:root{--animate-duration: .3s;--animate-delay: .3s;--animate-repeat: 1}.animated{animation-duration:var(--animate-duration);animation-fill-mode:both}.animated.infinite{animation-iteration-count:infinite}.animated.hinge{animation-duration:2s}.animated.repeat-1{animation-iteration-count:var(--animate-repeat)}.animated.repeat-2{animation-iteration-count:calc(var(--animate-repeat) * 2)}.animated.repeat-3{animation-iteration-count:calc(var(--animate-repeat) * 3)}.animated.delay-1s{animation-delay:var(--animate-delay)}.animated.delay-2s{animation-delay:calc(var(--animate-delay) * 2)}.animated.delay-3s{animation-delay:calc(var(--animate-delay) * 3)}.animated.delay-4s{animation-delay:calc(var(--animate-delay) * 4)}.animated.delay-5s{animation-delay:calc(var(--animate-delay) * 5)}.animated.faster{animation-duration:calc(var(--animate-duration) / 2)}.animated.fast{animation-duration:calc(var(--animate-duration) * .8)}.animated.slow{animation-duration:calc(var(--animate-duration) * 2)}.animated.slower{animation-duration:calc(var(--animate-duration) * 3)}@media print,(prefers-reduced-motion: reduce){.animated{animation-duration:1ms!important;transition-duration:1ms!important;animation-iteration-count:1!important}.animated[class*=Out]{opacity:0}}.q-animate--scale{animation:q-scale .15s;animation-timing-function:cubic-bezier(.25,.8,.25,1)}@keyframes q-scale{0%{transform:scale(1)}50%{transform:scale(1.04)}to{transform:scale(1)}}.q-animate--fade{animation:q-fade .2s}@keyframes q-fade{0%{opacity:0}to{opacity:1}}:root{--q-primary: #1976D2;--q-secondary: #26A69A;--q-accent: #9C27B0;--q-positive: #21BA45;--q-negative: #C10015;--q-info: #31CCEC;--q-warning: #F2C037;--q-dark: #1d1d1d;--q-dark-page: #121212}.text-dark{color:var(--q-dark)!important}.bg-dark{background:var(--q-dark)!important}.text-primary{color:var(--q-primary)!important}.bg-primary{background:var(--q-primary)!important}.text-secondary{color:var(--q-secondary)!important}.bg-secondary{background:var(--q-secondary)!important}.text-accent{color:var(--q-accent)!important}.bg-accent{background:var(--q-accent)!important}.text-positive{color:var(--q-positive)!important}.bg-positive{background:var(--q-positive)!important}.text-negative{color:var(--q-negative)!important}.bg-negative{background:var(--q-negative)!important}.text-info{color:var(--q-info)!important}.bg-info{background:var(--q-info)!important}.text-warning{color:var(--q-warning)!important}.bg-warning{background:var(--q-warning)!important}.text-white{color:#fff!important}.bg-white{background:#fff!important}.text-black{color:#000!important}.bg-black{background:#000!important}.text-transparent{color:transparent!important}.bg-transparent{background:transparent!important}.text-separator{color:#0000001f!important}.bg-separator{background:rgba(0,0,0,.12)!important}.text-dark-separator{color:#ffffff47!important}.bg-dark-separator{background:rgba(255,255,255,.28)!important}.text-red{color:#f44336!important}.text-red-1{color:#ffebee!important}.text-red-2{color:#ffcdd2!important}.text-red-3{color:#ef9a9a!important}.text-red-4{color:#e57373!important}.text-red-5{color:#ef5350!important}.text-red-6{color:#f44336!important}.text-red-7{color:#e53935!important}.text-red-8{color:#d32f2f!important}.text-red-9{color:#c62828!important}.text-red-10{color:#b71c1c!important}.text-red-11{color:#ff8a80!important}.text-red-12{color:#ff5252!important}.text-red-13{color:#ff1744!important}.text-red-14{color:#d50000!important}.text-pink{color:#e91e63!important}.text-pink-1{color:#fce4ec!important}.text-pink-2{color:#f8bbd0!important}.text-pink-3{color:#f48fb1!important}.text-pink-4{color:#f06292!important}.text-pink-5{color:#ec407a!important}.text-pink-6{color:#e91e63!important}.text-pink-7{color:#d81b60!important}.text-pink-8{color:#c2185b!important}.text-pink-9{color:#ad1457!important}.text-pink-10{color:#880e4f!important}.text-pink-11{color:#ff80ab!important}.text-pink-12{color:#ff4081!important}.text-pink-13{color:#f50057!important}.text-pink-14{color:#c51162!important}.text-purple{color:#9c27b0!important}.text-purple-1{color:#f3e5f5!important}.text-purple-2{color:#e1bee7!important}.text-purple-3{color:#ce93d8!important}.text-purple-4{color:#ba68c8!important}.text-purple-5{color:#ab47bc!important}.text-purple-6{color:#9c27b0!important}.text-purple-7{color:#8e24aa!important}.text-purple-8{color:#7b1fa2!important}.text-purple-9{color:#6a1b9a!important}.text-purple-10{color:#4a148c!important}.text-purple-11{color:#ea80fc!important}.text-purple-12{color:#e040fb!important}.text-purple-13{color:#d500f9!important}.text-purple-14{color:#a0f!important}.text-deep-purple{color:#673ab7!important}.text-deep-purple-1{color:#ede7f6!important}.text-deep-purple-2{color:#d1c4e9!important}.text-deep-purple-3{color:#b39ddb!important}.text-deep-purple-4{color:#9575cd!important}.text-deep-purple-5{color:#7e57c2!important}.text-deep-purple-6{color:#673ab7!important}.text-deep-purple-7{color:#5e35b1!important}.text-deep-purple-8{color:#512da8!important}.text-deep-purple-9{color:#4527a0!important}.text-deep-purple-10{color:#311b92!important}.text-deep-purple-11{color:#b388ff!important}.text-deep-purple-12{color:#7c4dff!important}.text-deep-purple-13{color:#651fff!important}.text-deep-purple-14{color:#6200ea!important}.text-indigo{color:#3f51b5!important}.text-indigo-1{color:#e8eaf6!important}.text-indigo-2{color:#c5cae9!important}.text-indigo-3{color:#9fa8da!important}.text-indigo-4{color:#7986cb!important}.text-indigo-5{color:#5c6bc0!important}.text-indigo-6{color:#3f51b5!important}.text-indigo-7{color:#3949ab!important}.text-indigo-8{color:#303f9f!important}.text-indigo-9{color:#283593!important}.text-indigo-10{color:#1a237e!important}.text-indigo-11{color:#8c9eff!important}.text-indigo-12{color:#536dfe!important}.text-indigo-13{color:#3d5afe!important}.text-indigo-14{color:#304ffe!important}.text-blue{color:#2196f3!important}.text-blue-1{color:#e3f2fd!important}.text-blue-2{color:#bbdefb!important}.text-blue-3{color:#90caf9!important}.text-blue-4{color:#64b5f6!important}.text-blue-5{color:#42a5f5!important}.text-blue-6{color:#2196f3!important}.text-blue-7{color:#1e88e5!important}.text-blue-8{color:#1976d2!important}.text-blue-9{color:#1565c0!important}.text-blue-10{color:#0d47a1!important}.text-blue-11{color:#82b1ff!important}.text-blue-12{color:#448aff!important}.text-blue-13{color:#2979ff!important}.text-blue-14{color:#2962ff!important}.text-light-blue{color:#03a9f4!important}.text-light-blue-1{color:#e1f5fe!important}.text-light-blue-2{color:#b3e5fc!important}.text-light-blue-3{color:#81d4fa!important}.text-light-blue-4{color:#4fc3f7!important}.text-light-blue-5{color:#29b6f6!important}.text-light-blue-6{color:#03a9f4!important}.text-light-blue-7{color:#039be5!important}.text-light-blue-8{color:#0288d1!important}.text-light-blue-9{color:#0277bd!important}.text-light-blue-10{color:#01579b!important}.text-light-blue-11{color:#80d8ff!important}.text-light-blue-12{color:#40c4ff!important}.text-light-blue-13{color:#00b0ff!important}.text-light-blue-14{color:#0091ea!important}.text-cyan{color:#00bcd4!important}.text-cyan-1{color:#e0f7fa!important}.text-cyan-2{color:#b2ebf2!important}.text-cyan-3{color:#80deea!important}.text-cyan-4{color:#4dd0e1!important}.text-cyan-5{color:#26c6da!important}.text-cyan-6{color:#00bcd4!important}.text-cyan-7{color:#00acc1!important}.text-cyan-8{color:#0097a7!important}.text-cyan-9{color:#00838f!important}.text-cyan-10{color:#006064!important}.text-cyan-11{color:#84ffff!important}.text-cyan-12{color:#18ffff!important}.text-cyan-13{color:#00e5ff!important}.text-cyan-14{color:#00b8d4!important}.text-teal{color:#009688!important}.text-teal-1{color:#e0f2f1!important}.text-teal-2{color:#b2dfdb!important}.text-teal-3{color:#80cbc4!important}.text-teal-4{color:#4db6ac!important}.text-teal-5{color:#26a69a!important}.text-teal-6{color:#009688!important}.text-teal-7{color:#00897b!important}.text-teal-8{color:#00796b!important}.text-teal-9{color:#00695c!important}.text-teal-10{color:#004d40!important}.text-teal-11{color:#a7ffeb!important}.text-teal-12{color:#64ffda!important}.text-teal-13{color:#1de9b6!important}.text-teal-14{color:#00bfa5!important}.text-green{color:#4caf50!important}.text-green-1{color:#e8f5e9!important}.text-green-2{color:#c8e6c9!important}.text-green-3{color:#a5d6a7!important}.text-green-4{color:#81c784!important}.text-green-5{color:#66bb6a!important}.text-green-6{color:#4caf50!important}.text-green-7{color:#43a047!important}.text-green-8{color:#388e3c!important}.text-green-9{color:#2e7d32!important}.text-green-10{color:#1b5e20!important}.text-green-11{color:#b9f6ca!important}.text-green-12{color:#69f0ae!important}.text-green-13{color:#00e676!important}.text-green-14{color:#00c853!important}.text-light-green{color:#8bc34a!important}.text-light-green-1{color:#f1f8e9!important}.text-light-green-2{color:#dcedc8!important}.text-light-green-3{color:#c5e1a5!important}.text-light-green-4{color:#aed581!important}.text-light-green-5{color:#9ccc65!important}.text-light-green-6{color:#8bc34a!important}.text-light-green-7{color:#7cb342!important}.text-light-green-8{color:#689f38!important}.text-light-green-9{color:#558b2f!important}.text-light-green-10{color:#33691e!important}.text-light-green-11{color:#ccff90!important}.text-light-green-12{color:#b2ff59!important}.text-light-green-13{color:#76ff03!important}.text-light-green-14{color:#64dd17!important}.text-lime{color:#cddc39!important}.text-lime-1{color:#f9fbe7!important}.text-lime-2{color:#f0f4c3!important}.text-lime-3{color:#e6ee9c!important}.text-lime-4{color:#dce775!important}.text-lime-5{color:#d4e157!important}.text-lime-6{color:#cddc39!important}.text-lime-7{color:#c0ca33!important}.text-lime-8{color:#afb42b!important}.text-lime-9{color:#9e9d24!important}.text-lime-10{color:#827717!important}.text-lime-11{color:#f4ff81!important}.text-lime-12{color:#eeff41!important}.text-lime-13{color:#c6ff00!important}.text-lime-14{color:#aeea00!important}.text-yellow{color:#ffeb3b!important}.text-yellow-1{color:#fffde7!important}.text-yellow-2{color:#fff9c4!important}.text-yellow-3{color:#fff59d!important}.text-yellow-4{color:#fff176!important}.text-yellow-5{color:#ffee58!important}.text-yellow-6{color:#ffeb3b!important}.text-yellow-7{color:#fdd835!important}.text-yellow-8{color:#fbc02d!important}.text-yellow-9{color:#f9a825!important}.text-yellow-10{color:#f57f17!important}.text-yellow-11{color:#ffff8d!important}.text-yellow-12{color:#ff0!important}.text-yellow-13{color:#ffea00!important}.text-yellow-14{color:#ffd600!important}.text-amber{color:#ffc107!important}.text-amber-1{color:#fff8e1!important}.text-amber-2{color:#ffecb3!important}.text-amber-3{color:#ffe082!important}.text-amber-4{color:#ffd54f!important}.text-amber-5{color:#ffca28!important}.text-amber-6{color:#ffc107!important}.text-amber-7{color:#ffb300!important}.text-amber-8{color:#ffa000!important}.text-amber-9{color:#ff8f00!important}.text-amber-10{color:#ff6f00!important}.text-amber-11{color:#ffe57f!important}.text-amber-12{color:#ffd740!important}.text-amber-13{color:#ffc400!important}.text-amber-14{color:#ffab00!important}.text-orange{color:#ff9800!important}.text-orange-1{color:#fff3e0!important}.text-orange-2{color:#ffe0b2!important}.text-orange-3{color:#ffcc80!important}.text-orange-4{color:#ffb74d!important}.text-orange-5{color:#ffa726!important}.text-orange-6{color:#ff9800!important}.text-orange-7{color:#fb8c00!important}.text-orange-8{color:#f57c00!important}.text-orange-9{color:#ef6c00!important}.text-orange-10{color:#e65100!important}.text-orange-11{color:#ffd180!important}.text-orange-12{color:#ffab40!important}.text-orange-13{color:#ff9100!important}.text-orange-14{color:#ff6d00!important}.text-deep-orange{color:#ff5722!important}.text-deep-orange-1{color:#fbe9e7!important}.text-deep-orange-2{color:#ffccbc!important}.text-deep-orange-3{color:#ffab91!important}.text-deep-orange-4{color:#ff8a65!important}.text-deep-orange-5{color:#ff7043!important}.text-deep-orange-6{color:#ff5722!important}.text-deep-orange-7{color:#f4511e!important}.text-deep-orange-8{color:#e64a19!important}.text-deep-orange-9{color:#d84315!important}.text-deep-orange-10{color:#bf360c!important}.text-deep-orange-11{color:#ff9e80!important}.text-deep-orange-12{color:#ff6e40!important}.text-deep-orange-13{color:#ff3d00!important}.text-deep-orange-14{color:#dd2c00!important}.text-brown{color:#795548!important}.text-brown-1{color:#efebe9!important}.text-brown-2{color:#d7ccc8!important}.text-brown-3{color:#bcaaa4!important}.text-brown-4{color:#a1887f!important}.text-brown-5{color:#8d6e63!important}.text-brown-6{color:#795548!important}.text-brown-7{color:#6d4c41!important}.text-brown-8{color:#5d4037!important}.text-brown-9{color:#4e342e!important}.text-brown-10{color:#3e2723!important}.text-brown-11{color:#d7ccc8!important}.text-brown-12{color:#bcaaa4!important}.text-brown-13{color:#8d6e63!important}.text-brown-14{color:#5d4037!important}.text-grey{color:#9e9e9e!important}.text-grey-1{color:#fafafa!important}.text-grey-2{color:#f5f5f5!important}.text-grey-3{color:#eee!important}.text-grey-4{color:#e0e0e0!important}.text-grey-5{color:#bdbdbd!important}.text-grey-6{color:#9e9e9e!important}.text-grey-7{color:#757575!important}.text-grey-8{color:#616161!important}.text-grey-9{color:#424242!important}.text-grey-10{color:#212121!important}.text-grey-11{color:#f5f5f5!important}.text-grey-12{color:#eee!important}.text-grey-13{color:#bdbdbd!important}.text-grey-14{color:#616161!important}.text-blue-grey{color:#607d8b!important}.text-blue-grey-1{color:#eceff1!important}.text-blue-grey-2{color:#cfd8dc!important}.text-blue-grey-3{color:#b0bec5!important}.text-blue-grey-4{color:#90a4ae!important}.text-blue-grey-5{color:#78909c!important}.text-blue-grey-6{color:#607d8b!important}.text-blue-grey-7{color:#546e7a!important}.text-blue-grey-8{color:#455a64!important}.text-blue-grey-9{color:#37474f!important}.text-blue-grey-10{color:#263238!important}.text-blue-grey-11{color:#cfd8dc!important}.text-blue-grey-12{color:#b0bec5!important}.text-blue-grey-13{color:#78909c!important}.text-blue-grey-14{color:#455a64!important}.bg-red{background:#f44336!important}.bg-red-1{background:#ffebee!important}.bg-red-2{background:#ffcdd2!important}.bg-red-3{background:#ef9a9a!important}.bg-red-4{background:#e57373!important}.bg-red-5{background:#ef5350!important}.bg-red-6{background:#f44336!important}.bg-red-7{background:#e53935!important}.bg-red-8{background:#d32f2f!important}.bg-red-9{background:#c62828!important}.bg-red-10{background:#b71c1c!important}.bg-red-11{background:#ff8a80!important}.bg-red-12{background:#ff5252!important}.bg-red-13{background:#ff1744!important}.bg-red-14{background:#d50000!important}.bg-pink{background:#e91e63!important}.bg-pink-1{background:#fce4ec!important}.bg-pink-2{background:#f8bbd0!important}.bg-pink-3{background:#f48fb1!important}.bg-pink-4{background:#f06292!important}.bg-pink-5{background:#ec407a!important}.bg-pink-6{background:#e91e63!important}.bg-pink-7{background:#d81b60!important}.bg-pink-8{background:#c2185b!important}.bg-pink-9{background:#ad1457!important}.bg-pink-10{background:#880e4f!important}.bg-pink-11{background:#ff80ab!important}.bg-pink-12{background:#ff4081!important}.bg-pink-13{background:#f50057!important}.bg-pink-14{background:#c51162!important}.bg-purple{background:#9c27b0!important}.bg-purple-1{background:#f3e5f5!important}.bg-purple-2{background:#e1bee7!important}.bg-purple-3{background:#ce93d8!important}.bg-purple-4{background:#ba68c8!important}.bg-purple-5{background:#ab47bc!important}.bg-purple-6{background:#9c27b0!important}.bg-purple-7{background:#8e24aa!important}.bg-purple-8{background:#7b1fa2!important}.bg-purple-9{background:#6a1b9a!important}.bg-purple-10{background:#4a148c!important}.bg-purple-11{background:#ea80fc!important}.bg-purple-12{background:#e040fb!important}.bg-purple-13{background:#d500f9!important}.bg-purple-14{background:#aa00ff!important}.bg-deep-purple{background:#673ab7!important}.bg-deep-purple-1{background:#ede7f6!important}.bg-deep-purple-2{background:#d1c4e9!important}.bg-deep-purple-3{background:#b39ddb!important}.bg-deep-purple-4{background:#9575cd!important}.bg-deep-purple-5{background:#7e57c2!important}.bg-deep-purple-6{background:#673ab7!important}.bg-deep-purple-7{background:#5e35b1!important}.bg-deep-purple-8{background:#512da8!important}.bg-deep-purple-9{background:#4527a0!important}.bg-deep-purple-10{background:#311b92!important}.bg-deep-purple-11{background:#b388ff!important}.bg-deep-purple-12{background:#7c4dff!important}.bg-deep-purple-13{background:#651fff!important}.bg-deep-purple-14{background:#6200ea!important}.bg-indigo{background:#3f51b5!important}.bg-indigo-1{background:#e8eaf6!important}.bg-indigo-2{background:#c5cae9!important}.bg-indigo-3{background:#9fa8da!important}.bg-indigo-4{background:#7986cb!important}.bg-indigo-5{background:#5c6bc0!important}.bg-indigo-6{background:#3f51b5!important}.bg-indigo-7{background:#3949ab!important}.bg-indigo-8{background:#303f9f!important}.bg-indigo-9{background:#283593!important}.bg-indigo-10{background:#1a237e!important}.bg-indigo-11{background:#8c9eff!important}.bg-indigo-12{background:#536dfe!important}.bg-indigo-13{background:#3d5afe!important}.bg-indigo-14{background:#304ffe!important}.bg-blue{background:#2196f3!important}.bg-blue-1{background:#e3f2fd!important}.bg-blue-2{background:#bbdefb!important}.bg-blue-3{background:#90caf9!important}.bg-blue-4{background:#64b5f6!important}.bg-blue-5{background:#42a5f5!important}.bg-blue-6{background:#2196f3!important}.bg-blue-7{background:#1e88e5!important}.bg-blue-8{background:#1976d2!important}.bg-blue-9{background:#1565c0!important}.bg-blue-10{background:#0d47a1!important}.bg-blue-11{background:#82b1ff!important}.bg-blue-12{background:#448aff!important}.bg-blue-13{background:#2979ff!important}.bg-blue-14{background:#2962ff!important}.bg-light-blue{background:#03a9f4!important}.bg-light-blue-1{background:#e1f5fe!important}.bg-light-blue-2{background:#b3e5fc!important}.bg-light-blue-3{background:#81d4fa!important}.bg-light-blue-4{background:#4fc3f7!important}.bg-light-blue-5{background:#29b6f6!important}.bg-light-blue-6{background:#03a9f4!important}.bg-light-blue-7{background:#039be5!important}.bg-light-blue-8{background:#0288d1!important}.bg-light-blue-9{background:#0277bd!important}.bg-light-blue-10{background:#01579b!important}.bg-light-blue-11{background:#80d8ff!important}.bg-light-blue-12{background:#40c4ff!important}.bg-light-blue-13{background:#00b0ff!important}.bg-light-blue-14{background:#0091ea!important}.bg-cyan{background:#00bcd4!important}.bg-cyan-1{background:#e0f7fa!important}.bg-cyan-2{background:#b2ebf2!important}.bg-cyan-3{background:#80deea!important}.bg-cyan-4{background:#4dd0e1!important}.bg-cyan-5{background:#26c6da!important}.bg-cyan-6{background:#00bcd4!important}.bg-cyan-7{background:#00acc1!important}.bg-cyan-8{background:#0097a7!important}.bg-cyan-9{background:#00838f!important}.bg-cyan-10{background:#006064!important}.bg-cyan-11{background:#84ffff!important}.bg-cyan-12{background:#18ffff!important}.bg-cyan-13{background:#00e5ff!important}.bg-cyan-14{background:#00b8d4!important}.bg-teal{background:#009688!important}.bg-teal-1{background:#e0f2f1!important}.bg-teal-2{background:#b2dfdb!important}.bg-teal-3{background:#80cbc4!important}.bg-teal-4{background:#4db6ac!important}.bg-teal-5{background:#26a69a!important}.bg-teal-6{background:#009688!important}.bg-teal-7{background:#00897b!important}.bg-teal-8{background:#00796b!important}.bg-teal-9{background:#00695c!important}.bg-teal-10{background:#004d40!important}.bg-teal-11{background:#a7ffeb!important}.bg-teal-12{background:#64ffda!important}.bg-teal-13{background:#1de9b6!important}.bg-teal-14{background:#00bfa5!important}.bg-green{background:#4caf50!important}.bg-green-1{background:#e8f5e9!important}.bg-green-2{background:#c8e6c9!important}.bg-green-3{background:#a5d6a7!important}.bg-green-4{background:#81c784!important}.bg-green-5{background:#66bb6a!important}.bg-green-6{background:#4caf50!important}.bg-green-7{background:#43a047!important}.bg-green-8{background:#388e3c!important}.bg-green-9{background:#2e7d32!important}.bg-green-10{background:#1b5e20!important}.bg-green-11{background:#b9f6ca!important}.bg-green-12{background:#69f0ae!important}.bg-green-13{background:#00e676!important}.bg-green-14{background:#00c853!important}.bg-light-green{background:#8bc34a!important}.bg-light-green-1{background:#f1f8e9!important}.bg-light-green-2{background:#dcedc8!important}.bg-light-green-3{background:#c5e1a5!important}.bg-light-green-4{background:#aed581!important}.bg-light-green-5{background:#9ccc65!important}.bg-light-green-6{background:#8bc34a!important}.bg-light-green-7{background:#7cb342!important}.bg-light-green-8{background:#689f38!important}.bg-light-green-9{background:#558b2f!important}.bg-light-green-10{background:#33691e!important}.bg-light-green-11{background:#ccff90!important}.bg-light-green-12{background:#b2ff59!important}.bg-light-green-13{background:#76ff03!important}.bg-light-green-14{background:#64dd17!important}.bg-lime{background:#cddc39!important}.bg-lime-1{background:#f9fbe7!important}.bg-lime-2{background:#f0f4c3!important}.bg-lime-3{background:#e6ee9c!important}.bg-lime-4{background:#dce775!important}.bg-lime-5{background:#d4e157!important}.bg-lime-6{background:#cddc39!important}.bg-lime-7{background:#c0ca33!important}.bg-lime-8{background:#afb42b!important}.bg-lime-9{background:#9e9d24!important}.bg-lime-10{background:#827717!important}.bg-lime-11{background:#f4ff81!important}.bg-lime-12{background:#eeff41!important}.bg-lime-13{background:#c6ff00!important}.bg-lime-14{background:#aeea00!important}.bg-yellow{background:#ffeb3b!important}.bg-yellow-1{background:#fffde7!important}.bg-yellow-2{background:#fff9c4!important}.bg-yellow-3{background:#fff59d!important}.bg-yellow-4{background:#fff176!important}.bg-yellow-5{background:#ffee58!important}.bg-yellow-6{background:#ffeb3b!important}.bg-yellow-7{background:#fdd835!important}.bg-yellow-8{background:#fbc02d!important}.bg-yellow-9{background:#f9a825!important}.bg-yellow-10{background:#f57f17!important}.bg-yellow-11{background:#ffff8d!important}.bg-yellow-12{background:#ffff00!important}.bg-yellow-13{background:#ffea00!important}.bg-yellow-14{background:#ffd600!important}.bg-amber{background:#ffc107!important}.bg-amber-1{background:#fff8e1!important}.bg-amber-2{background:#ffecb3!important}.bg-amber-3{background:#ffe082!important}.bg-amber-4{background:#ffd54f!important}.bg-amber-5{background:#ffca28!important}.bg-amber-6{background:#ffc107!important}.bg-amber-7{background:#ffb300!important}.bg-amber-8{background:#ffa000!important}.bg-amber-9{background:#ff8f00!important}.bg-amber-10{background:#ff6f00!important}.bg-amber-11{background:#ffe57f!important}.bg-amber-12{background:#ffd740!important}.bg-amber-13{background:#ffc400!important}.bg-amber-14{background:#ffab00!important}.bg-orange{background:#ff9800!important}.bg-orange-1{background:#fff3e0!important}.bg-orange-2{background:#ffe0b2!important}.bg-orange-3{background:#ffcc80!important}.bg-orange-4{background:#ffb74d!important}.bg-orange-5{background:#ffa726!important}.bg-orange-6{background:#ff9800!important}.bg-orange-7{background:#fb8c00!important}.bg-orange-8{background:#f57c00!important}.bg-orange-9{background:#ef6c00!important}.bg-orange-10{background:#e65100!important}.bg-orange-11{background:#ffd180!important}.bg-orange-12{background:#ffab40!important}.bg-orange-13{background:#ff9100!important}.bg-orange-14{background:#ff6d00!important}.bg-deep-orange{background:#ff5722!important}.bg-deep-orange-1{background:#fbe9e7!important}.bg-deep-orange-2{background:#ffccbc!important}.bg-deep-orange-3{background:#ffab91!important}.bg-deep-orange-4{background:#ff8a65!important}.bg-deep-orange-5{background:#ff7043!important}.bg-deep-orange-6{background:#ff5722!important}.bg-deep-orange-7{background:#f4511e!important}.bg-deep-orange-8{background:#e64a19!important}.bg-deep-orange-9{background:#d84315!important}.bg-deep-orange-10{background:#bf360c!important}.bg-deep-orange-11{background:#ff9e80!important}.bg-deep-orange-12{background:#ff6e40!important}.bg-deep-orange-13{background:#ff3d00!important}.bg-deep-orange-14{background:#dd2c00!important}.bg-brown{background:#795548!important}.bg-brown-1{background:#efebe9!important}.bg-brown-2{background:#d7ccc8!important}.bg-brown-3{background:#bcaaa4!important}.bg-brown-4{background:#a1887f!important}.bg-brown-5{background:#8d6e63!important}.bg-brown-6{background:#795548!important}.bg-brown-7{background:#6d4c41!important}.bg-brown-8{background:#5d4037!important}.bg-brown-9{background:#4e342e!important}.bg-brown-10{background:#3e2723!important}.bg-brown-11{background:#d7ccc8!important}.bg-brown-12{background:#bcaaa4!important}.bg-brown-13{background:#8d6e63!important}.bg-brown-14{background:#5d4037!important}.bg-grey{background:#9e9e9e!important}.bg-grey-1{background:#fafafa!important}.bg-grey-2{background:#f5f5f5!important}.bg-grey-3{background:#eeeeee!important}.bg-grey-4{background:#e0e0e0!important}.bg-grey-5{background:#bdbdbd!important}.bg-grey-6{background:#9e9e9e!important}.bg-grey-7{background:#757575!important}.bg-grey-8{background:#616161!important}.bg-grey-9{background:#424242!important}.bg-grey-10{background:#212121!important}.bg-grey-11{background:#f5f5f5!important}.bg-grey-12{background:#eeeeee!important}.bg-grey-13{background:#bdbdbd!important}.bg-grey-14{background:#616161!important}.bg-blue-grey{background:#607d8b!important}.bg-blue-grey-1{background:#eceff1!important}.bg-blue-grey-2{background:#cfd8dc!important}.bg-blue-grey-3{background:#b0bec5!important}.bg-blue-grey-4{background:#90a4ae!important}.bg-blue-grey-5{background:#78909c!important}.bg-blue-grey-6{background:#607d8b!important}.bg-blue-grey-7{background:#546e7a!important}.bg-blue-grey-8{background:#455a64!important}.bg-blue-grey-9{background:#37474f!important}.bg-blue-grey-10{background:#263238!important}.bg-blue-grey-11{background:#cfd8dc!important}.bg-blue-grey-12{background:#b0bec5!important}.bg-blue-grey-13{background:#78909c!important}.bg-blue-grey-14{background:#455a64!important}.shadow-transition{transition:box-shadow .28s cubic-bezier(.4,0,.2,1)!important}.shadow-1{box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f}.shadow-up-1{box-shadow:0 -1px 3px #0003,0 -1px 1px #00000024,0 -2px 1px -1px #0000001f}.shadow-2{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f}.shadow-up-2{box-shadow:0 -1px 5px #0003,0 -2px 2px #00000024,0 -3px 1px -2px #0000001f}.shadow-3{box-shadow:0 1px 8px #0003,0 3px 4px #00000024,0 3px 3px -2px #0000001f}.shadow-up-3{box-shadow:0 -1px 8px #0003,0 -3px 4px #00000024,0 -3px 3px -2px #0000001f}.shadow-4{box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f}.shadow-up-4{box-shadow:0 -2px 4px -1px #0003,0 -4px 5px #00000024,0 -1px 10px #0000001f}.shadow-5{box-shadow:0 3px 5px -1px #0003,0 5px 8px #00000024,0 1px 14px #0000001f}.shadow-up-5{box-shadow:0 -3px 5px -1px #0003,0 -5px 8px #00000024,0 -1px 14px #0000001f}.shadow-6{box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}.shadow-up-6{box-shadow:0 -3px 5px -1px #0003,0 -6px 10px #00000024,0 -1px 18px #0000001f}.shadow-7{box-shadow:0 4px 5px -2px #0003,0 7px 10px 1px #00000024,0 2px 16px 1px #0000001f}.shadow-up-7{box-shadow:0 -4px 5px -2px #0003,0 -7px 10px 1px #00000024,0 -2px 16px 1px #0000001f}.shadow-8{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.shadow-up-8{box-shadow:0 -5px 5px -3px #0003,0 -8px 10px 1px #00000024,0 -3px 14px 2px #0000001f}.shadow-9{box-shadow:0 5px 6px -3px #0003,0 9px 12px 1px #00000024,0 3px 16px 2px #0000001f}.shadow-up-9{box-shadow:0 -5px 6px -3px #0003,0 -9px 12px 1px #00000024,0 -3px 16px 2px #0000001f}.shadow-10{box-shadow:0 6px 6px -3px #0003,0 10px 14px 1px #00000024,0 4px 18px 3px #0000001f}.shadow-up-10{box-shadow:0 -6px 6px -3px #0003,0 -10px 14px 1px #00000024,0 -4px 18px 3px #0000001f}.shadow-11{box-shadow:0 6px 7px -4px #0003,0 11px 15px 1px #00000024,0 4px 20px 3px #0000001f}.shadow-up-11{box-shadow:0 -6px 7px -4px #0003,0 -11px 15px 1px #00000024,0 -4px 20px 3px #0000001f}.shadow-12{box-shadow:0 7px 8px -4px #0003,0 12px 17px 2px #00000024,0 5px 22px 4px #0000001f}.shadow-up-12{box-shadow:0 -7px 8px -4px #0003,0 -12px 17px 2px #00000024,0 -5px 22px 4px #0000001f}.shadow-13{box-shadow:0 7px 8px -4px #0003,0 13px 19px 2px #00000024,0 5px 24px 4px #0000001f}.shadow-up-13{box-shadow:0 -7px 8px -4px #0003,0 -13px 19px 2px #00000024,0 -5px 24px 4px #0000001f}.shadow-14{box-shadow:0 7px 9px -4px #0003,0 14px 21px 2px #00000024,0 5px 26px 4px #0000001f}.shadow-up-14{box-shadow:0 -7px 9px -4px #0003,0 -14px 21px 2px #00000024,0 -5px 26px 4px #0000001f}.shadow-15{box-shadow:0 8px 9px -5px #0003,0 15px 22px 2px #00000024,0 6px 28px 5px #0000001f}.shadow-up-15{box-shadow:0 -8px 9px -5px #0003,0 -15px 22px 2px #00000024,0 -6px 28px 5px #0000001f}.shadow-16{box-shadow:0 8px 10px -5px #0003,0 16px 24px 2px #00000024,0 6px 30px 5px #0000001f}.shadow-up-16{box-shadow:0 -8px 10px -5px #0003,0 -16px 24px 2px #00000024,0 -6px 30px 5px #0000001f}.shadow-17{box-shadow:0 8px 11px -5px #0003,0 17px 26px 2px #00000024,0 6px 32px 5px #0000001f}.shadow-up-17{box-shadow:0 -8px 11px -5px #0003,0 -17px 26px 2px #00000024,0 -6px 32px 5px #0000001f}.shadow-18{box-shadow:0 9px 11px -5px #0003,0 18px 28px 2px #00000024,0 7px 34px 6px #0000001f}.shadow-up-18{box-shadow:0 -9px 11px -5px #0003,0 -18px 28px 2px #00000024,0 -7px 34px 6px #0000001f}.shadow-19{box-shadow:0 9px 12px -6px #0003,0 19px 29px 2px #00000024,0 7px 36px 6px #0000001f}.shadow-up-19{box-shadow:0 -9px 12px -6px #0003,0 -19px 29px 2px #00000024,0 -7px 36px 6px #0000001f}.shadow-20{box-shadow:0 10px 13px -6px #0003,0 20px 31px 3px #00000024,0 8px 38px 7px #0000001f}.shadow-up-20{box-shadow:0 -10px 13px -6px #0003,0 -20px 31px 3px #00000024,0 -8px 38px 7px #0000001f}.shadow-21{box-shadow:0 10px 13px -6px #0003,0 21px 33px 3px #00000024,0 8px 40px 7px #0000001f}.shadow-up-21{box-shadow:0 -10px 13px -6px #0003,0 -21px 33px 3px #00000024,0 -8px 40px 7px #0000001f}.shadow-22{box-shadow:0 10px 14px -6px #0003,0 22px 35px 3px #00000024,0 8px 42px 7px #0000001f}.shadow-up-22{box-shadow:0 -10px 14px -6px #0003,0 -22px 35px 3px #00000024,0 -8px 42px 7px #0000001f}.shadow-23{box-shadow:0 11px 14px -7px #0003,0 23px 36px 3px #00000024,0 9px 44px 8px #0000001f}.shadow-up-23{box-shadow:0 -11px 14px -7px #0003,0 -23px 36px 3px #00000024,0 -9px 44px 8px #0000001f}.shadow-24{box-shadow:0 11px 15px -7px #0003,0 24px 38px 3px #00000024,0 9px 46px 8px #0000001f}.shadow-up-24{box-shadow:0 -11px 15px -7px #0003,0 -24px 38px 3px #00000024,0 -9px 46px 8px #0000001f}.inset-shadow{box-shadow:0 7px 9px -7px #000000b3 inset}.inset-shadow-down{box-shadow:0 -7px 9px -7px #000000b3 inset}body.body--dark .shadow-1{box-shadow:0 1px 3px #fff3,0 1px 1px #ffffff24,0 2px 1px -1px #ffffff1f}body.body--dark .shadow-up-1{box-shadow:0 -1px 3px #fff3,0 -1px 1px #ffffff24,0 -2px 1px -1px #ffffff1f}body.body--dark .shadow-2{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}body.body--dark .shadow-up-2{box-shadow:0 -1px 5px #fff3,0 -2px 2px #ffffff24,0 -3px 1px -2px #ffffff1f}body.body--dark .shadow-3{box-shadow:0 1px 8px #fff3,0 3px 4px #ffffff24,0 3px 3px -2px #ffffff1f}body.body--dark .shadow-up-3{box-shadow:0 -1px 8px #fff3,0 -3px 4px #ffffff24,0 -3px 3px -2px #ffffff1f}body.body--dark .shadow-4{box-shadow:0 2px 4px -1px #fff3,0 4px 5px #ffffff24,0 1px 10px #ffffff1f}body.body--dark .shadow-up-4{box-shadow:0 -2px 4px -1px #fff3,0 -4px 5px #ffffff24,0 -1px 10px #ffffff1f}body.body--dark .shadow-5{box-shadow:0 3px 5px -1px #fff3,0 5px 8px #ffffff24,0 1px 14px #ffffff1f}body.body--dark .shadow-up-5{box-shadow:0 -3px 5px -1px #fff3,0 -5px 8px #ffffff24,0 -1px 14px #ffffff1f}body.body--dark .shadow-6{box-shadow:0 3px 5px -1px #fff3,0 6px 10px #ffffff24,0 1px 18px #ffffff1f}body.body--dark .shadow-up-6{box-shadow:0 -3px 5px -1px #fff3,0 -6px 10px #ffffff24,0 -1px 18px #ffffff1f}body.body--dark .shadow-7{box-shadow:0 4px 5px -2px #fff3,0 7px 10px 1px #ffffff24,0 2px 16px 1px #ffffff1f}body.body--dark .shadow-up-7{box-shadow:0 -4px 5px -2px #fff3,0 -7px 10px 1px #ffffff24,0 -2px 16px 1px #ffffff1f}body.body--dark .shadow-8{box-shadow:0 5px 5px -3px #fff3,0 8px 10px 1px #ffffff24,0 3px 14px 2px #ffffff1f}body.body--dark .shadow-up-8{box-shadow:0 -5px 5px -3px #fff3,0 -8px 10px 1px #ffffff24,0 -3px 14px 2px #ffffff1f}body.body--dark .shadow-9{box-shadow:0 5px 6px -3px #fff3,0 9px 12px 1px #ffffff24,0 3px 16px 2px #ffffff1f}body.body--dark .shadow-up-9{box-shadow:0 -5px 6px -3px #fff3,0 -9px 12px 1px #ffffff24,0 -3px 16px 2px #ffffff1f}body.body--dark .shadow-10{box-shadow:0 6px 6px -3px #fff3,0 10px 14px 1px #ffffff24,0 4px 18px 3px #ffffff1f}body.body--dark .shadow-up-10{box-shadow:0 -6px 6px -3px #fff3,0 -10px 14px 1px #ffffff24,0 -4px 18px 3px #ffffff1f}body.body--dark .shadow-11{box-shadow:0 6px 7px -4px #fff3,0 11px 15px 1px #ffffff24,0 4px 20px 3px #ffffff1f}body.body--dark .shadow-up-11{box-shadow:0 -6px 7px -4px #fff3,0 -11px 15px 1px #ffffff24,0 -4px 20px 3px #ffffff1f}body.body--dark .shadow-12{box-shadow:0 7px 8px -4px #fff3,0 12px 17px 2px #ffffff24,0 5px 22px 4px #ffffff1f}body.body--dark .shadow-up-12{box-shadow:0 -7px 8px -4px #fff3,0 -12px 17px 2px #ffffff24,0 -5px 22px 4px #ffffff1f}body.body--dark .shadow-13{box-shadow:0 7px 8px -4px #fff3,0 13px 19px 2px #ffffff24,0 5px 24px 4px #ffffff1f}body.body--dark .shadow-up-13{box-shadow:0 -7px 8px -4px #fff3,0 -13px 19px 2px #ffffff24,0 -5px 24px 4px #ffffff1f}body.body--dark .shadow-14{box-shadow:0 7px 9px -4px #fff3,0 14px 21px 2px #ffffff24,0 5px 26px 4px #ffffff1f}body.body--dark .shadow-up-14{box-shadow:0 -7px 9px -4px #fff3,0 -14px 21px 2px #ffffff24,0 -5px 26px 4px #ffffff1f}body.body--dark .shadow-15{box-shadow:0 8px 9px -5px #fff3,0 15px 22px 2px #ffffff24,0 6px 28px 5px #ffffff1f}body.body--dark .shadow-up-15{box-shadow:0 -8px 9px -5px #fff3,0 -15px 22px 2px #ffffff24,0 -6px 28px 5px #ffffff1f}body.body--dark .shadow-16{box-shadow:0 8px 10px -5px #fff3,0 16px 24px 2px #ffffff24,0 6px 30px 5px #ffffff1f}body.body--dark .shadow-up-16{box-shadow:0 -8px 10px -5px #fff3,0 -16px 24px 2px #ffffff24,0 -6px 30px 5px #ffffff1f}body.body--dark .shadow-17{box-shadow:0 8px 11px -5px #fff3,0 17px 26px 2px #ffffff24,0 6px 32px 5px #ffffff1f}body.body--dark .shadow-up-17{box-shadow:0 -8px 11px -5px #fff3,0 -17px 26px 2px #ffffff24,0 -6px 32px 5px #ffffff1f}body.body--dark .shadow-18{box-shadow:0 9px 11px -5px #fff3,0 18px 28px 2px #ffffff24,0 7px 34px 6px #ffffff1f}body.body--dark .shadow-up-18{box-shadow:0 -9px 11px -5px #fff3,0 -18px 28px 2px #ffffff24,0 -7px 34px 6px #ffffff1f}body.body--dark .shadow-19{box-shadow:0 9px 12px -6px #fff3,0 19px 29px 2px #ffffff24,0 7px 36px 6px #ffffff1f}body.body--dark .shadow-up-19{box-shadow:0 -9px 12px -6px #fff3,0 -19px 29px 2px #ffffff24,0 -7px 36px 6px #ffffff1f}body.body--dark .shadow-20{box-shadow:0 10px 13px -6px #fff3,0 20px 31px 3px #ffffff24,0 8px 38px 7px #ffffff1f}body.body--dark .shadow-up-20{box-shadow:0 -10px 13px -6px #fff3,0 -20px 31px 3px #ffffff24,0 -8px 38px 7px #ffffff1f}body.body--dark .shadow-21{box-shadow:0 10px 13px -6px #fff3,0 21px 33px 3px #ffffff24,0 8px 40px 7px #ffffff1f}body.body--dark .shadow-up-21{box-shadow:0 -10px 13px -6px #fff3,0 -21px 33px 3px #ffffff24,0 -8px 40px 7px #ffffff1f}body.body--dark .shadow-22{box-shadow:0 10px 14px -6px #fff3,0 22px 35px 3px #ffffff24,0 8px 42px 7px #ffffff1f}body.body--dark .shadow-up-22{box-shadow:0 -10px 14px -6px #fff3,0 -22px 35px 3px #ffffff24,0 -8px 42px 7px #ffffff1f}body.body--dark .shadow-23{box-shadow:0 11px 14px -7px #fff3,0 23px 36px 3px #ffffff24,0 9px 44px 8px #ffffff1f}body.body--dark .shadow-up-23{box-shadow:0 -11px 14px -7px #fff3,0 -23px 36px 3px #ffffff24,0 -9px 44px 8px #ffffff1f}body.body--dark .shadow-24{box-shadow:0 11px 15px -7px #fff3,0 24px 38px 3px #ffffff24,0 9px 46px 8px #ffffff1f}body.body--dark .shadow-up-24{box-shadow:0 -11px 15px -7px #fff3,0 -24px 38px 3px #ffffff24,0 -9px 46px 8px #ffffff1f}body.body--dark .inset-shadow{box-shadow:0 7px 9px -7px #ffffffb3 inset}body.body--dark .inset-shadow-down{box-shadow:0 -7px 9px -7px #ffffffb3 inset}.no-shadow,.shadow-0{box-shadow:none!important}.z-marginals{z-index:2000}.z-notify{z-index:9500}.z-fullscreen{z-index:6000}.z-inherit{z-index:inherit!important}.row,.column,.flex{display:flex;flex-wrap:wrap}.row.inline,.column.inline,.flex.inline{display:inline-flex}.row.reverse{flex-direction:row-reverse}.column{flex-direction:column}.column.reverse{flex-direction:column-reverse}.wrap{flex-wrap:wrap}.no-wrap{flex-wrap:nowrap}.reverse-wrap{flex-wrap:wrap-reverse}.order-first{order:-10000}.order-last{order:10000}.order-none{order:0}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center,.flex-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center,.flex-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.content-start{align-content:flex-start}.content-end{align-content:flex-end}.content-center{align-content:center}.content-stretch{align-content:stretch}.content-between{align-content:space-between}.content-around{align-content:space-around}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.self-baseline{align-self:baseline}.self-stretch{align-self:stretch}.q-gutter-x-none,.q-gutter-none{margin-left:0}.q-gutter-x-none>*,.q-gutter-none>*{margin-left:0}.q-gutter-y-none,.q-gutter-none{margin-top:0}.q-gutter-y-none>*,.q-gutter-none>*{margin-top:0}.q-col-gutter-x-none,.q-col-gutter-none{margin-left:0}.q-col-gutter-x-none>*,.q-col-gutter-none>*{padding-left:0}.q-col-gutter-y-none,.q-col-gutter-none{margin-top:0}.q-col-gutter-y-none>*,.q-col-gutter-none>*{padding-top:0}.q-gutter-x-xs,.q-gutter-xs{margin-left:-4px}.q-gutter-x-xs>*,.q-gutter-xs>*{margin-left:4px}.q-gutter-y-xs,.q-gutter-xs{margin-top:-4px}.q-gutter-y-xs>*,.q-gutter-xs>*{margin-top:4px}.q-col-gutter-x-xs,.q-col-gutter-xs{margin-left:-4px}.q-col-gutter-x-xs>*,.q-col-gutter-xs>*{padding-left:4px}.q-col-gutter-y-xs,.q-col-gutter-xs{margin-top:-4px}.q-col-gutter-y-xs>*,.q-col-gutter-xs>*{padding-top:4px}.q-gutter-x-sm,.q-gutter-sm{margin-left:-8px}.q-gutter-x-sm>*,.q-gutter-sm>*{margin-left:8px}.q-gutter-y-sm,.q-gutter-sm{margin-top:-8px}.q-gutter-y-sm>*,.q-gutter-sm>*{margin-top:8px}.q-col-gutter-x-sm,.q-col-gutter-sm{margin-left:-8px}.q-col-gutter-x-sm>*,.q-col-gutter-sm>*{padding-left:8px}.q-col-gutter-y-sm,.q-col-gutter-sm{margin-top:-8px}.q-col-gutter-y-sm>*,.q-col-gutter-sm>*{padding-top:8px}.q-gutter-x-md,.q-gutter-md{margin-left:-16px}.q-gutter-x-md>*,.q-gutter-md>*{margin-left:16px}.q-gutter-y-md,.q-gutter-md{margin-top:-16px}.q-gutter-y-md>*,.q-gutter-md>*{margin-top:16px}.q-col-gutter-x-md,.q-col-gutter-md{margin-left:-16px}.q-col-gutter-x-md>*,.q-col-gutter-md>*{padding-left:16px}.q-col-gutter-y-md,.q-col-gutter-md{margin-top:-16px}.q-col-gutter-y-md>*,.q-col-gutter-md>*{padding-top:16px}.q-gutter-x-lg,.q-gutter-lg{margin-left:-24px}.q-gutter-x-lg>*,.q-gutter-lg>*{margin-left:24px}.q-gutter-y-lg,.q-gutter-lg{margin-top:-24px}.q-gutter-y-lg>*,.q-gutter-lg>*{margin-top:24px}.q-col-gutter-x-lg,.q-col-gutter-lg{margin-left:-24px}.q-col-gutter-x-lg>*,.q-col-gutter-lg>*{padding-left:24px}.q-col-gutter-y-lg,.q-col-gutter-lg{margin-top:-24px}.q-col-gutter-y-lg>*,.q-col-gutter-lg>*{padding-top:24px}.q-gutter-x-xl,.q-gutter-xl{margin-left:-48px}.q-gutter-x-xl>*,.q-gutter-xl>*{margin-left:48px}.q-gutter-y-xl,.q-gutter-xl{margin-top:-48px}.q-gutter-y-xl>*,.q-gutter-xl>*{margin-top:48px}.q-col-gutter-x-xl,.q-col-gutter-xl{margin-left:-48px}.q-col-gutter-x-xl>*,.q-col-gutter-xl>*{padding-left:48px}.q-col-gutter-y-xl,.q-col-gutter-xl{margin-top:-48px}.q-col-gutter-y-xl>*,.q-col-gutter-xl>*{padding-top:48px}@media (min-width: 0){.row>.col,.flex>.col,.row>.col-auto,.flex>.col-auto,.row>.col-grow,.flex>.col-grow,.row>.col-shrink,.flex>.col-shrink,.row>.col-xs,.flex>.col-xs,.row>.col-xs-auto,.row>.col-12,.row>.col-xs-12,.row>.col-11,.row>.col-xs-11,.row>.col-10,.row>.col-xs-10,.row>.col-9,.row>.col-xs-9,.row>.col-8,.row>.col-xs-8,.row>.col-7,.row>.col-xs-7,.row>.col-6,.row>.col-xs-6,.row>.col-5,.row>.col-xs-5,.row>.col-4,.row>.col-xs-4,.row>.col-3,.row>.col-xs-3,.row>.col-2,.row>.col-xs-2,.row>.col-1,.row>.col-xs-1,.row>.col-0,.row>.col-xs-0,.flex>.col-xs-auto,.flex>.col-12,.flex>.col-xs-12,.flex>.col-11,.flex>.col-xs-11,.flex>.col-10,.flex>.col-xs-10,.flex>.col-9,.flex>.col-xs-9,.flex>.col-8,.flex>.col-xs-8,.flex>.col-7,.flex>.col-xs-7,.flex>.col-6,.flex>.col-xs-6,.flex>.col-5,.flex>.col-xs-5,.flex>.col-4,.flex>.col-xs-4,.flex>.col-3,.flex>.col-xs-3,.flex>.col-2,.flex>.col-xs-2,.flex>.col-1,.flex>.col-xs-1,.flex>.col-0,.flex>.col-xs-0,.row>.col-xs-grow,.flex>.col-xs-grow,.row>.col-xs-shrink,.flex>.col-xs-shrink{width:auto;min-width:0;max-width:100%}.column>.col,.flex>.col,.column>.col-auto,.flex>.col-auto,.column>.col-grow,.flex>.col-grow,.column>.col-shrink,.flex>.col-shrink,.column>.col-xs,.flex>.col-xs,.column>.col-xs-auto,.column>.col-12,.column>.col-xs-12,.column>.col-11,.column>.col-xs-11,.column>.col-10,.column>.col-xs-10,.column>.col-9,.column>.col-xs-9,.column>.col-8,.column>.col-xs-8,.column>.col-7,.column>.col-xs-7,.column>.col-6,.column>.col-xs-6,.column>.col-5,.column>.col-xs-5,.column>.col-4,.column>.col-xs-4,.column>.col-3,.column>.col-xs-3,.column>.col-2,.column>.col-xs-2,.column>.col-1,.column>.col-xs-1,.column>.col-0,.column>.col-xs-0,.flex>.col-xs-auto,.flex>.col-12,.flex>.col-xs-12,.flex>.col-11,.flex>.col-xs-11,.flex>.col-10,.flex>.col-xs-10,.flex>.col-9,.flex>.col-xs-9,.flex>.col-8,.flex>.col-xs-8,.flex>.col-7,.flex>.col-xs-7,.flex>.col-6,.flex>.col-xs-6,.flex>.col-5,.flex>.col-xs-5,.flex>.col-4,.flex>.col-xs-4,.flex>.col-3,.flex>.col-xs-3,.flex>.col-2,.flex>.col-xs-2,.flex>.col-1,.flex>.col-xs-1,.flex>.col-0,.flex>.col-xs-0,.column>.col-xs-grow,.flex>.col-xs-grow,.column>.col-xs-shrink,.flex>.col-xs-shrink{height:auto;min-height:0;max-height:100%}.col,.col-xs{flex:10000 1 0%}.col-auto,.col-xs-auto,.col-12,.col-xs-12,.col-11,.col-xs-11,.col-10,.col-xs-10,.col-9,.col-xs-9,.col-8,.col-xs-8,.col-7,.col-xs-7,.col-6,.col-xs-6,.col-5,.col-xs-5,.col-4,.col-xs-4,.col-3,.col-xs-3,.col-2,.col-xs-2,.col-1,.col-xs-1,.col-0,.col-xs-0{flex:0 0 auto}.col-grow,.col-xs-grow{flex:1 0 auto}.col-shrink,.col-xs-shrink{flex:0 1 auto}.row>.col-0,.row>.col-xs-0{height:auto;width:0%}.row>.offset-0,.row>.offset-xs-0{margin-left:0%}.column>.col-0,.column>.col-xs-0{height:0%;width:auto}.row>.col-1,.row>.col-xs-1{height:auto;width:8.3333%}.row>.offset-1,.row>.offset-xs-1{margin-left:8.3333%}.column>.col-1,.column>.col-xs-1{height:8.3333%;width:auto}.row>.col-2,.row>.col-xs-2{height:auto;width:16.6667%}.row>.offset-2,.row>.offset-xs-2{margin-left:16.6667%}.column>.col-2,.column>.col-xs-2{height:16.6667%;width:auto}.row>.col-3,.row>.col-xs-3{height:auto;width:25%}.row>.offset-3,.row>.offset-xs-3{margin-left:25%}.column>.col-3,.column>.col-xs-3{height:25%;width:auto}.row>.col-4,.row>.col-xs-4{height:auto;width:33.3333%}.row>.offset-4,.row>.offset-xs-4{margin-left:33.3333%}.column>.col-4,.column>.col-xs-4{height:33.3333%;width:auto}.row>.col-5,.row>.col-xs-5{height:auto;width:41.6667%}.row>.offset-5,.row>.offset-xs-5{margin-left:41.6667%}.column>.col-5,.column>.col-xs-5{height:41.6667%;width:auto}.row>.col-6,.row>.col-xs-6{height:auto;width:50%}.row>.offset-6,.row>.offset-xs-6{margin-left:50%}.column>.col-6,.column>.col-xs-6{height:50%;width:auto}.row>.col-7,.row>.col-xs-7{height:auto;width:58.3333%}.row>.offset-7,.row>.offset-xs-7{margin-left:58.3333%}.column>.col-7,.column>.col-xs-7{height:58.3333%;width:auto}.row>.col-8,.row>.col-xs-8{height:auto;width:66.6667%}.row>.offset-8,.row>.offset-xs-8{margin-left:66.6667%}.column>.col-8,.column>.col-xs-8{height:66.6667%;width:auto}.row>.col-9,.row>.col-xs-9{height:auto;width:75%}.row>.offset-9,.row>.offset-xs-9{margin-left:75%}.column>.col-9,.column>.col-xs-9{height:75%;width:auto}.row>.col-10,.row>.col-xs-10{height:auto;width:83.3333%}.row>.offset-10,.row>.offset-xs-10{margin-left:83.3333%}.column>.col-10,.column>.col-xs-10{height:83.3333%;width:auto}.row>.col-11,.row>.col-xs-11{height:auto;width:91.6667%}.row>.offset-11,.row>.offset-xs-11{margin-left:91.6667%}.column>.col-11,.column>.col-xs-11{height:91.6667%;width:auto}.row>.col-12,.row>.col-xs-12{height:auto;width:100%}.row>.offset-12,.row>.offset-xs-12{margin-left:100%}.column>.col-12,.column>.col-xs-12{height:100%;width:auto}.row>.col-all{height:auto;flex:0 0 100%}}@media (min-width: 600px){.row>.col-sm,.flex>.col-sm,.row>.col-sm-auto,.row>.col-sm-12,.row>.col-sm-11,.row>.col-sm-10,.row>.col-sm-9,.row>.col-sm-8,.row>.col-sm-7,.row>.col-sm-6,.row>.col-sm-5,.row>.col-sm-4,.row>.col-sm-3,.row>.col-sm-2,.row>.col-sm-1,.row>.col-sm-0,.flex>.col-sm-auto,.flex>.col-sm-12,.flex>.col-sm-11,.flex>.col-sm-10,.flex>.col-sm-9,.flex>.col-sm-8,.flex>.col-sm-7,.flex>.col-sm-6,.flex>.col-sm-5,.flex>.col-sm-4,.flex>.col-sm-3,.flex>.col-sm-2,.flex>.col-sm-1,.flex>.col-sm-0,.row>.col-sm-grow,.flex>.col-sm-grow,.row>.col-sm-shrink,.flex>.col-sm-shrink{width:auto;min-width:0;max-width:100%}.column>.col-sm,.flex>.col-sm,.column>.col-sm-auto,.column>.col-sm-12,.column>.col-sm-11,.column>.col-sm-10,.column>.col-sm-9,.column>.col-sm-8,.column>.col-sm-7,.column>.col-sm-6,.column>.col-sm-5,.column>.col-sm-4,.column>.col-sm-3,.column>.col-sm-2,.column>.col-sm-1,.column>.col-sm-0,.flex>.col-sm-auto,.flex>.col-sm-12,.flex>.col-sm-11,.flex>.col-sm-10,.flex>.col-sm-9,.flex>.col-sm-8,.flex>.col-sm-7,.flex>.col-sm-6,.flex>.col-sm-5,.flex>.col-sm-4,.flex>.col-sm-3,.flex>.col-sm-2,.flex>.col-sm-1,.flex>.col-sm-0,.column>.col-sm-grow,.flex>.col-sm-grow,.column>.col-sm-shrink,.flex>.col-sm-shrink{height:auto;min-height:0;max-height:100%}.col-sm{flex:10000 1 0%}.col-sm-auto,.col-sm-12,.col-sm-11,.col-sm-10,.col-sm-9,.col-sm-8,.col-sm-7,.col-sm-6,.col-sm-5,.col-sm-4,.col-sm-3,.col-sm-2,.col-sm-1,.col-sm-0{flex:0 0 auto}.col-sm-grow{flex:1 0 auto}.col-sm-shrink{flex:0 1 auto}.row>.col-sm-0{height:auto;width:0%}.row>.offset-sm-0{margin-left:0%}.column>.col-sm-0{height:0%;width:auto}.row>.col-sm-1{height:auto;width:8.3333%}.row>.offset-sm-1{margin-left:8.3333%}.column>.col-sm-1{height:8.3333%;width:auto}.row>.col-sm-2{height:auto;width:16.6667%}.row>.offset-sm-2{margin-left:16.6667%}.column>.col-sm-2{height:16.6667%;width:auto}.row>.col-sm-3{height:auto;width:25%}.row>.offset-sm-3{margin-left:25%}.column>.col-sm-3{height:25%;width:auto}.row>.col-sm-4{height:auto;width:33.3333%}.row>.offset-sm-4{margin-left:33.3333%}.column>.col-sm-4{height:33.3333%;width:auto}.row>.col-sm-5{height:auto;width:41.6667%}.row>.offset-sm-5{margin-left:41.6667%}.column>.col-sm-5{height:41.6667%;width:auto}.row>.col-sm-6{height:auto;width:50%}.row>.offset-sm-6{margin-left:50%}.column>.col-sm-6{height:50%;width:auto}.row>.col-sm-7{height:auto;width:58.3333%}.row>.offset-sm-7{margin-left:58.3333%}.column>.col-sm-7{height:58.3333%;width:auto}.row>.col-sm-8{height:auto;width:66.6667%}.row>.offset-sm-8{margin-left:66.6667%}.column>.col-sm-8{height:66.6667%;width:auto}.row>.col-sm-9{height:auto;width:75%}.row>.offset-sm-9{margin-left:75%}.column>.col-sm-9{height:75%;width:auto}.row>.col-sm-10{height:auto;width:83.3333%}.row>.offset-sm-10{margin-left:83.3333%}.column>.col-sm-10{height:83.3333%;width:auto}.row>.col-sm-11{height:auto;width:91.6667%}.row>.offset-sm-11{margin-left:91.6667%}.column>.col-sm-11{height:91.6667%;width:auto}.row>.col-sm-12{height:auto;width:100%}.row>.offset-sm-12{margin-left:100%}.column>.col-sm-12{height:100%;width:auto}}@media (min-width: 1024px){.row>.col-md,.flex>.col-md,.row>.col-md-auto,.row>.col-md-12,.row>.col-md-11,.row>.col-md-10,.row>.col-md-9,.row>.col-md-8,.row>.col-md-7,.row>.col-md-6,.row>.col-md-5,.row>.col-md-4,.row>.col-md-3,.row>.col-md-2,.row>.col-md-1,.row>.col-md-0,.flex>.col-md-auto,.flex>.col-md-12,.flex>.col-md-11,.flex>.col-md-10,.flex>.col-md-9,.flex>.col-md-8,.flex>.col-md-7,.flex>.col-md-6,.flex>.col-md-5,.flex>.col-md-4,.flex>.col-md-3,.flex>.col-md-2,.flex>.col-md-1,.flex>.col-md-0,.row>.col-md-grow,.flex>.col-md-grow,.row>.col-md-shrink,.flex>.col-md-shrink{width:auto;min-width:0;max-width:100%}.column>.col-md,.flex>.col-md,.column>.col-md-auto,.column>.col-md-12,.column>.col-md-11,.column>.col-md-10,.column>.col-md-9,.column>.col-md-8,.column>.col-md-7,.column>.col-md-6,.column>.col-md-5,.column>.col-md-4,.column>.col-md-3,.column>.col-md-2,.column>.col-md-1,.column>.col-md-0,.flex>.col-md-auto,.flex>.col-md-12,.flex>.col-md-11,.flex>.col-md-10,.flex>.col-md-9,.flex>.col-md-8,.flex>.col-md-7,.flex>.col-md-6,.flex>.col-md-5,.flex>.col-md-4,.flex>.col-md-3,.flex>.col-md-2,.flex>.col-md-1,.flex>.col-md-0,.column>.col-md-grow,.flex>.col-md-grow,.column>.col-md-shrink,.flex>.col-md-shrink{height:auto;min-height:0;max-height:100%}.col-md{flex:10000 1 0%}.col-md-auto,.col-md-12,.col-md-11,.col-md-10,.col-md-9,.col-md-8,.col-md-7,.col-md-6,.col-md-5,.col-md-4,.col-md-3,.col-md-2,.col-md-1,.col-md-0{flex:0 0 auto}.col-md-grow{flex:1 0 auto}.col-md-shrink{flex:0 1 auto}.row>.col-md-0{height:auto;width:0%}.row>.offset-md-0{margin-left:0%}.column>.col-md-0{height:0%;width:auto}.row>.col-md-1{height:auto;width:8.3333%}.row>.offset-md-1{margin-left:8.3333%}.column>.col-md-1{height:8.3333%;width:auto}.row>.col-md-2{height:auto;width:16.6667%}.row>.offset-md-2{margin-left:16.6667%}.column>.col-md-2{height:16.6667%;width:auto}.row>.col-md-3{height:auto;width:25%}.row>.offset-md-3{margin-left:25%}.column>.col-md-3{height:25%;width:auto}.row>.col-md-4{height:auto;width:33.3333%}.row>.offset-md-4{margin-left:33.3333%}.column>.col-md-4{height:33.3333%;width:auto}.row>.col-md-5{height:auto;width:41.6667%}.row>.offset-md-5{margin-left:41.6667%}.column>.col-md-5{height:41.6667%;width:auto}.row>.col-md-6{height:auto;width:50%}.row>.offset-md-6{margin-left:50%}.column>.col-md-6{height:50%;width:auto}.row>.col-md-7{height:auto;width:58.3333%}.row>.offset-md-7{margin-left:58.3333%}.column>.col-md-7{height:58.3333%;width:auto}.row>.col-md-8{height:auto;width:66.6667%}.row>.offset-md-8{margin-left:66.6667%}.column>.col-md-8{height:66.6667%;width:auto}.row>.col-md-9{height:auto;width:75%}.row>.offset-md-9{margin-left:75%}.column>.col-md-9{height:75%;width:auto}.row>.col-md-10{height:auto;width:83.3333%}.row>.offset-md-10{margin-left:83.3333%}.column>.col-md-10{height:83.3333%;width:auto}.row>.col-md-11{height:auto;width:91.6667%}.row>.offset-md-11{margin-left:91.6667%}.column>.col-md-11{height:91.6667%;width:auto}.row>.col-md-12{height:auto;width:100%}.row>.offset-md-12{margin-left:100%}.column>.col-md-12{height:100%;width:auto}}@media (min-width: 1440px){.row>.col-lg,.flex>.col-lg,.row>.col-lg-auto,.row>.col-lg-12,.row>.col-lg-11,.row>.col-lg-10,.row>.col-lg-9,.row>.col-lg-8,.row>.col-lg-7,.row>.col-lg-6,.row>.col-lg-5,.row>.col-lg-4,.row>.col-lg-3,.row>.col-lg-2,.row>.col-lg-1,.row>.col-lg-0,.flex>.col-lg-auto,.flex>.col-lg-12,.flex>.col-lg-11,.flex>.col-lg-10,.flex>.col-lg-9,.flex>.col-lg-8,.flex>.col-lg-7,.flex>.col-lg-6,.flex>.col-lg-5,.flex>.col-lg-4,.flex>.col-lg-3,.flex>.col-lg-2,.flex>.col-lg-1,.flex>.col-lg-0,.row>.col-lg-grow,.flex>.col-lg-grow,.row>.col-lg-shrink,.flex>.col-lg-shrink{width:auto;min-width:0;max-width:100%}.column>.col-lg,.flex>.col-lg,.column>.col-lg-auto,.column>.col-lg-12,.column>.col-lg-11,.column>.col-lg-10,.column>.col-lg-9,.column>.col-lg-8,.column>.col-lg-7,.column>.col-lg-6,.column>.col-lg-5,.column>.col-lg-4,.column>.col-lg-3,.column>.col-lg-2,.column>.col-lg-1,.column>.col-lg-0,.flex>.col-lg-auto,.flex>.col-lg-12,.flex>.col-lg-11,.flex>.col-lg-10,.flex>.col-lg-9,.flex>.col-lg-8,.flex>.col-lg-7,.flex>.col-lg-6,.flex>.col-lg-5,.flex>.col-lg-4,.flex>.col-lg-3,.flex>.col-lg-2,.flex>.col-lg-1,.flex>.col-lg-0,.column>.col-lg-grow,.flex>.col-lg-grow,.column>.col-lg-shrink,.flex>.col-lg-shrink{height:auto;min-height:0;max-height:100%}.col-lg{flex:10000 1 0%}.col-lg-auto,.col-lg-12,.col-lg-11,.col-lg-10,.col-lg-9,.col-lg-8,.col-lg-7,.col-lg-6,.col-lg-5,.col-lg-4,.col-lg-3,.col-lg-2,.col-lg-1,.col-lg-0{flex:0 0 auto}.col-lg-grow{flex:1 0 auto}.col-lg-shrink{flex:0 1 auto}.row>.col-lg-0{height:auto;width:0%}.row>.offset-lg-0{margin-left:0%}.column>.col-lg-0{height:0%;width:auto}.row>.col-lg-1{height:auto;width:8.3333%}.row>.offset-lg-1{margin-left:8.3333%}.column>.col-lg-1{height:8.3333%;width:auto}.row>.col-lg-2{height:auto;width:16.6667%}.row>.offset-lg-2{margin-left:16.6667%}.column>.col-lg-2{height:16.6667%;width:auto}.row>.col-lg-3{height:auto;width:25%}.row>.offset-lg-3{margin-left:25%}.column>.col-lg-3{height:25%;width:auto}.row>.col-lg-4{height:auto;width:33.3333%}.row>.offset-lg-4{margin-left:33.3333%}.column>.col-lg-4{height:33.3333%;width:auto}.row>.col-lg-5{height:auto;width:41.6667%}.row>.offset-lg-5{margin-left:41.6667%}.column>.col-lg-5{height:41.6667%;width:auto}.row>.col-lg-6{height:auto;width:50%}.row>.offset-lg-6{margin-left:50%}.column>.col-lg-6{height:50%;width:auto}.row>.col-lg-7{height:auto;width:58.3333%}.row>.offset-lg-7{margin-left:58.3333%}.column>.col-lg-7{height:58.3333%;width:auto}.row>.col-lg-8{height:auto;width:66.6667%}.row>.offset-lg-8{margin-left:66.6667%}.column>.col-lg-8{height:66.6667%;width:auto}.row>.col-lg-9{height:auto;width:75%}.row>.offset-lg-9{margin-left:75%}.column>.col-lg-9{height:75%;width:auto}.row>.col-lg-10{height:auto;width:83.3333%}.row>.offset-lg-10{margin-left:83.3333%}.column>.col-lg-10{height:83.3333%;width:auto}.row>.col-lg-11{height:auto;width:91.6667%}.row>.offset-lg-11{margin-left:91.6667%}.column>.col-lg-11{height:91.6667%;width:auto}.row>.col-lg-12{height:auto;width:100%}.row>.offset-lg-12{margin-left:100%}.column>.col-lg-12{height:100%;width:auto}}@media (min-width: 1920px){.row>.col-xl,.flex>.col-xl,.row>.col-xl-auto,.row>.col-xl-12,.row>.col-xl-11,.row>.col-xl-10,.row>.col-xl-9,.row>.col-xl-8,.row>.col-xl-7,.row>.col-xl-6,.row>.col-xl-5,.row>.col-xl-4,.row>.col-xl-3,.row>.col-xl-2,.row>.col-xl-1,.row>.col-xl-0,.flex>.col-xl-auto,.flex>.col-xl-12,.flex>.col-xl-11,.flex>.col-xl-10,.flex>.col-xl-9,.flex>.col-xl-8,.flex>.col-xl-7,.flex>.col-xl-6,.flex>.col-xl-5,.flex>.col-xl-4,.flex>.col-xl-3,.flex>.col-xl-2,.flex>.col-xl-1,.flex>.col-xl-0,.row>.col-xl-grow,.flex>.col-xl-grow,.row>.col-xl-shrink,.flex>.col-xl-shrink{width:auto;min-width:0;max-width:100%}.column>.col-xl,.flex>.col-xl,.column>.col-xl-auto,.column>.col-xl-12,.column>.col-xl-11,.column>.col-xl-10,.column>.col-xl-9,.column>.col-xl-8,.column>.col-xl-7,.column>.col-xl-6,.column>.col-xl-5,.column>.col-xl-4,.column>.col-xl-3,.column>.col-xl-2,.column>.col-xl-1,.column>.col-xl-0,.flex>.col-xl-auto,.flex>.col-xl-12,.flex>.col-xl-11,.flex>.col-xl-10,.flex>.col-xl-9,.flex>.col-xl-8,.flex>.col-xl-7,.flex>.col-xl-6,.flex>.col-xl-5,.flex>.col-xl-4,.flex>.col-xl-3,.flex>.col-xl-2,.flex>.col-xl-1,.flex>.col-xl-0,.column>.col-xl-grow,.flex>.col-xl-grow,.column>.col-xl-shrink,.flex>.col-xl-shrink{height:auto;min-height:0;max-height:100%}.col-xl{flex:10000 1 0%}.col-xl-auto,.col-xl-12,.col-xl-11,.col-xl-10,.col-xl-9,.col-xl-8,.col-xl-7,.col-xl-6,.col-xl-5,.col-xl-4,.col-xl-3,.col-xl-2,.col-xl-1,.col-xl-0{flex:0 0 auto}.col-xl-grow{flex:1 0 auto}.col-xl-shrink{flex:0 1 auto}.row>.col-xl-0{height:auto;width:0%}.row>.offset-xl-0{margin-left:0%}.column>.col-xl-0{height:0%;width:auto}.row>.col-xl-1{height:auto;width:8.3333%}.row>.offset-xl-1{margin-left:8.3333%}.column>.col-xl-1{height:8.3333%;width:auto}.row>.col-xl-2{height:auto;width:16.6667%}.row>.offset-xl-2{margin-left:16.6667%}.column>.col-xl-2{height:16.6667%;width:auto}.row>.col-xl-3{height:auto;width:25%}.row>.offset-xl-3{margin-left:25%}.column>.col-xl-3{height:25%;width:auto}.row>.col-xl-4{height:auto;width:33.3333%}.row>.offset-xl-4{margin-left:33.3333%}.column>.col-xl-4{height:33.3333%;width:auto}.row>.col-xl-5{height:auto;width:41.6667%}.row>.offset-xl-5{margin-left:41.6667%}.column>.col-xl-5{height:41.6667%;width:auto}.row>.col-xl-6{height:auto;width:50%}.row>.offset-xl-6{margin-left:50%}.column>.col-xl-6{height:50%;width:auto}.row>.col-xl-7{height:auto;width:58.3333%}.row>.offset-xl-7{margin-left:58.3333%}.column>.col-xl-7{height:58.3333%;width:auto}.row>.col-xl-8{height:auto;width:66.6667%}.row>.offset-xl-8{margin-left:66.6667%}.column>.col-xl-8{height:66.6667%;width:auto}.row>.col-xl-9{height:auto;width:75%}.row>.offset-xl-9{margin-left:75%}.column>.col-xl-9{height:75%;width:auto}.row>.col-xl-10{height:auto;width:83.3333%}.row>.offset-xl-10{margin-left:83.3333%}.column>.col-xl-10{height:83.3333%;width:auto}.row>.col-xl-11{height:auto;width:91.6667%}.row>.offset-xl-11{margin-left:91.6667%}.column>.col-xl-11{height:91.6667%;width:auto}.row>.col-xl-12{height:auto;width:100%}.row>.offset-xl-12{margin-left:100%}.column>.col-xl-12{height:100%;width:auto}}.rounded-borders{border-radius:4px}.border-radius-inherit{border-radius:inherit}.no-transition{transition:none!important}.transition-0{transition:0s!important}.glossy{background-image:linear-gradient(to bottom,rgba(255,255,255,.3),rgba(255,255,255,0) 50%,rgba(0,0,0,.12) 51%,rgba(0,0,0,.04))!important}.q-placeholder::placeholder{color:inherit;opacity:.7}.q-body--fullscreen-mixin,.q-body--prevent-scroll{position:fixed!important}.q-body--force-scrollbar-x{overflow-x:scroll}.q-body--force-scrollbar-y{overflow-y:scroll}.q-no-input-spinner{-moz-appearance:textfield!important}.q-no-input-spinner::-webkit-outer-spin-button,.q-no-input-spinner::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.q-link{outline:0;text-decoration:none}.q-link--focusable:focus-visible{-webkit-text-decoration:underline dashed currentColor 1px;text-decoration:underline dashed currentColor 1px}body.electron .q-electron-drag{-webkit-user-select:none;-webkit-app-region:drag}body.electron .q-electron-drag .q-btn-item,body.electron .q-electron-drag--exception{-webkit-app-region:no-drag}img.responsive{max-width:100%;height:auto}.non-selectable{-webkit-user-select:none!important;user-select:none!important}.scroll,body.mobile .scroll--mobile{overflow:auto}.scroll,.scroll-x,.scroll-y{-webkit-overflow-scrolling:touch;will-change:scroll-position}.scroll-x{overflow-x:auto}.scroll-y{overflow-y:auto}.no-scroll{overflow:hidden!important}.no-pointer-events,.no-pointer-events--children,.no-pointer-events--children *{pointer-events:none!important}.all-pointer-events{pointer-events:all!important}.cursor-pointer{cursor:pointer!important}.cursor-not-allowed{cursor:not-allowed!important}.cursor-inherit{cursor:inherit!important}.cursor-none{cursor:none!important}[aria-busy=true]{cursor:progress}[aria-controls]{cursor:pointer}[aria-disabled]{cursor:default}.rotate-45{transform:rotate(45deg)}.rotate-90{transform:rotate(90deg)}.rotate-135{transform:rotate(135deg)}.rotate-180{transform:rotate(180deg)}.rotate-225{transform:rotate(225deg)}.rotate-270{transform:rotate(270deg)}.rotate-315{transform:rotate(315deg)}.flip-horizontal{transform:scaleX(-1)}.flip-vertical{transform:scaleY(-1)}.float-left{float:left}.float-right{float:right}.relative-position{position:relative}.fixed,.fixed-full,.fullscreen,.fixed-center,.fixed-bottom,.fixed-left,.fixed-right,.fixed-top,.fixed-top-left,.fixed-top-right,.fixed-bottom-left,.fixed-bottom-right{position:fixed}.absolute,.absolute-full,.absolute-center,.absolute-bottom,.absolute-left,.absolute-right,.absolute-top,.absolute-top-left,.absolute-top-right,.absolute-bottom-left,.absolute-bottom-right{position:absolute}.fixed-top,.absolute-top{top:0;left:0;right:0}.fixed-right,.absolute-right{top:0;right:0;bottom:0}.fixed-bottom,.absolute-bottom{right:0;bottom:0;left:0}.fixed-left,.absolute-left{top:0;bottom:0;left:0}.fixed-top-left,.absolute-top-left{top:0;left:0}.fixed-top-right,.absolute-top-right{top:0;right:0}.fixed-bottom-left,.absolute-bottom-left{bottom:0;left:0}.fixed-bottom-right,.absolute-bottom-right{bottom:0;right:0}.fullscreen{z-index:6000;border-radius:0!important;max-width:100vw;max-height:100vh}body.q-ios-padding .fullscreen{padding-top:20px!important;padding-top:env(safe-area-inset-top)!important;padding-bottom:env(safe-area-inset-bottom)!important}.absolute-full,.fullscreen,.fixed-full{top:0;right:0;bottom:0;left:0}.fixed-center,.absolute-center{top:50%;left:50%;transform:translate(-50%,-50%)}.vertical-top{vertical-align:top!important}.vertical-middle{vertical-align:middle!important}.vertical-bottom{vertical-align:bottom!important}.on-left{margin-right:12px}.on-right{margin-left:12px}.q-position-engine{margin-top:var(--q-pe-top, 0)!important;margin-left:var(--q-pe-left, 0)!important;will-change:auto;visibility:collapse}:root{--q-size-xs: 0;--q-size-sm: 600px;--q-size-md: 1024px;--q-size-lg: 1440px;--q-size-xl: 1920px}.fit{width:100%!important;height:100%!important}.full-height{height:100%!important}.full-width{width:100%!important;margin-left:0!important;margin-right:0!important}.window-height{margin-top:0!important;margin-bottom:0!important;height:100vh!important}.window-width{margin-left:0!important;margin-right:0!important;width:100vw!important}.block{display:block!important}.inline-block{display:inline-block!important}.q-pa-none{padding:0}.q-pl-none{padding-left:0}.q-pr-none{padding-right:0}.q-pt-none{padding-top:0}.q-pb-none{padding-bottom:0}.q-px-none{padding-left:0;padding-right:0}.q-py-none{padding-top:0;padding-bottom:0}.q-ma-none{margin:0}.q-ml-none{margin-left:0}.q-mr-none{margin-right:0}.q-mt-none{margin-top:0}.q-mb-none{margin-bottom:0}.q-mx-none{margin-left:0;margin-right:0}.q-my-none{margin-top:0;margin-bottom:0}.q-pa-xs{padding:4px}.q-pl-xs{padding-left:4px}.q-pr-xs{padding-right:4px}.q-pt-xs{padding-top:4px}.q-pb-xs{padding-bottom:4px}.q-px-xs{padding-left:4px;padding-right:4px}.q-py-xs{padding-top:4px;padding-bottom:4px}.q-ma-xs{margin:4px}.q-ml-xs{margin-left:4px}.q-mr-xs{margin-right:4px}.q-mt-xs{margin-top:4px}.q-mb-xs{margin-bottom:4px}.q-mx-xs{margin-left:4px;margin-right:4px}.q-my-xs{margin-top:4px;margin-bottom:4px}.q-pa-sm{padding:8px}.q-pl-sm{padding-left:8px}.q-pr-sm{padding-right:8px}.q-pt-sm{padding-top:8px}.q-pb-sm{padding-bottom:8px}.q-px-sm{padding-left:8px;padding-right:8px}.q-py-sm{padding-top:8px;padding-bottom:8px}.q-ma-sm{margin:8px}.q-ml-sm{margin-left:8px}.q-mr-sm{margin-right:8px}.q-mt-sm{margin-top:8px}.q-mb-sm{margin-bottom:8px}.q-mx-sm{margin-left:8px;margin-right:8px}.q-my-sm{margin-top:8px;margin-bottom:8px}.q-pa-md{padding:16px}.q-pl-md{padding-left:16px}.q-pr-md{padding-right:16px}.q-pt-md{padding-top:16px}.q-pb-md{padding-bottom:16px}.q-px-md{padding-left:16px;padding-right:16px}.q-py-md{padding-top:16px;padding-bottom:16px}.q-ma-md{margin:16px}.q-ml-md{margin-left:16px}.q-mr-md{margin-right:16px}.q-mt-md{margin-top:16px}.q-mb-md{margin-bottom:16px}.q-mx-md{margin-left:16px;margin-right:16px}.q-my-md{margin-top:16px;margin-bottom:16px}.q-pa-lg{padding:24px}.q-pl-lg{padding-left:24px}.q-pr-lg{padding-right:24px}.q-pt-lg{padding-top:24px}.q-pb-lg{padding-bottom:24px}.q-px-lg{padding-left:24px;padding-right:24px}.q-py-lg{padding-top:24px;padding-bottom:24px}.q-ma-lg{margin:24px}.q-ml-lg{margin-left:24px}.q-mr-lg{margin-right:24px}.q-mt-lg{margin-top:24px}.q-mb-lg{margin-bottom:24px}.q-mx-lg{margin-left:24px;margin-right:24px}.q-my-lg{margin-top:24px;margin-bottom:24px}.q-pa-xl{padding:48px}.q-pl-xl{padding-left:48px}.q-pr-xl{padding-right:48px}.q-pt-xl{padding-top:48px}.q-pb-xl{padding-bottom:48px}.q-px-xl{padding-left:48px;padding-right:48px}.q-py-xl{padding-top:48px;padding-bottom:48px}.q-ma-xl{margin:48px}.q-ml-xl{margin-left:48px}.q-mr-xl{margin-right:48px}.q-mt-xl{margin-top:48px}.q-mb-xl{margin-bottom:48px}.q-mx-xl{margin-left:48px;margin-right:48px}.q-my-xl{margin-top:48px;margin-bottom:48px}.q-mt-auto,.q-my-auto{margin-top:auto}.q-ml-auto{margin-left:auto}.q-mb-auto,.q-my-auto{margin-bottom:auto}.q-mr-auto{margin-right:auto}.q-mx-auto{margin-left:auto;margin-right:auto}.q-touch{-webkit-user-select:none;user-select:none;user-drag:none;-khtml-user-drag:none;-webkit-user-drag:none}.q-touch-x{touch-action:pan-x}.q-touch-y{touch-action:pan-y}:root{--q-transition-duration: .3s}.q-transition--slide-right-enter-active,.q-transition--slide-right-leave-active,.q-transition--slide-left-enter-active,.q-transition--slide-left-leave-active,.q-transition--slide-up-enter-active,.q-transition--slide-up-leave-active,.q-transition--slide-down-enter-active,.q-transition--slide-down-leave-active,.q-transition--jump-right-enter-active,.q-transition--jump-right-leave-active,.q-transition--jump-left-enter-active,.q-transition--jump-left-leave-active,.q-transition--jump-up-enter-active,.q-transition--jump-up-leave-active,.q-transition--jump-down-enter-active,.q-transition--jump-down-leave-active,.q-transition--fade-enter-active,.q-transition--fade-leave-active,.q-transition--scale-enter-active,.q-transition--scale-leave-active,.q-transition--rotate-enter-active,.q-transition--rotate-leave-active,.q-transition--flip-enter-active,.q-transition--flip-leave-active{--q-transition-duration: .3s;--q-transition-easing: cubic-bezier(.215,.61,.355,1)}.q-transition--slide-right-leave-active,.q-transition--slide-left-leave-active,.q-transition--slide-up-leave-active,.q-transition--slide-down-leave-active,.q-transition--jump-right-leave-active,.q-transition--jump-left-leave-active,.q-transition--jump-up-leave-active,.q-transition--jump-down-leave-active,.q-transition--fade-leave-active,.q-transition--scale-leave-active,.q-transition--rotate-leave-active,.q-transition--flip-leave-active{position:absolute}.q-transition--slide-right-enter-active,.q-transition--slide-right-leave-active,.q-transition--slide-left-enter-active,.q-transition--slide-left-leave-active,.q-transition--slide-up-enter-active,.q-transition--slide-up-leave-active,.q-transition--slide-down-enter-active,.q-transition--slide-down-leave-active{transition:transform var(--q-transition-duration) var(--q-transition-easing)}.q-transition--slide-right-enter-from{transform:translate3d(-100%,0,0)}.q-transition--slide-right-leave-to,.q-transition--slide-left-enter-from{transform:translate3d(100%,0,0)}.q-transition--slide-left-leave-to{transform:translate3d(-100%,0,0)}.q-transition--slide-up-enter-from{transform:translate3d(0,100%,0)}.q-transition--slide-up-leave-to,.q-transition--slide-down-enter-from{transform:translate3d(0,-100%,0)}.q-transition--slide-down-leave-to{transform:translate3d(0,100%,0)}.q-transition--jump-right-enter-active,.q-transition--jump-right-leave-active,.q-transition--jump-left-enter-active,.q-transition--jump-left-leave-active,.q-transition--jump-up-enter-active,.q-transition--jump-up-leave-active,.q-transition--jump-down-enter-active,.q-transition--jump-down-leave-active{transition:opacity var(--q-transition-duration),transform var(--q-transition-duration)}.q-transition--jump-right-enter-from,.q-transition--jump-right-leave-to,.q-transition--jump-left-enter-from,.q-transition--jump-left-leave-to,.q-transition--jump-up-enter-from,.q-transition--jump-up-leave-to,.q-transition--jump-down-enter-from,.q-transition--jump-down-leave-to{opacity:0}.q-transition--jump-right-enter-from{transform:translate3d(-15px,0,0)}.q-transition--jump-right-leave-to,.q-transition--jump-left-enter-from{transform:translate3d(15px,0,0)}.q-transition--jump-left-leave-to{transform:translate(-15px)}.q-transition--jump-up-enter-from{transform:translate3d(0,15px,0)}.q-transition--jump-up-leave-to,.q-transition--jump-down-enter-from{transform:translate3d(0,-15px,0)}.q-transition--jump-down-leave-to{transform:translate3d(0,15px,0)}.q-transition--fade-enter-active,.q-transition--fade-leave-active{transition:opacity var(--q-transition-duration) ease-out}.q-transition--fade-enter-from,.q-transition--fade-leave-to{opacity:0}.q-transition--scale-enter-active,.q-transition--scale-leave-active{transition:opacity var(--q-transition-duration),transform var(--q-transition-duration) var(--q-transition-easing)}.q-transition--scale-enter-from,.q-transition--scale-leave-to{opacity:0;transform:scale3d(0,0,1)}.q-transition--rotate-enter-active,.q-transition--rotate-leave-active{transition:opacity var(--q-transition-duration),transform var(--q-transition-duration) var(--q-transition-easing);transform-style:preserve-3d}.q-transition--rotate-enter-from,.q-transition--rotate-leave-to{opacity:0;transform:scale3d(0,0,1) rotate3d(0,0,1,90deg)}.q-transition--flip-right-enter-active,.q-transition--flip-right-leave-active,.q-transition--flip-left-enter-active,.q-transition--flip-left-leave-active,.q-transition--flip-up-enter-active,.q-transition--flip-up-leave-active,.q-transition--flip-down-enter-active,.q-transition--flip-down-leave-active{transition:transform var(--q-transition-duration);backface-visibility:hidden}.q-transition--flip-right-enter-to,.q-transition--flip-right-leave-from,.q-transition--flip-left-enter-to,.q-transition--flip-left-leave-from,.q-transition--flip-up-enter-to,.q-transition--flip-up-leave-from,.q-transition--flip-down-enter-to,.q-transition--flip-down-leave-from{transform:perspective(400px) rotate3d(1,1,0,0)}.q-transition--flip-right-enter-from{transform:perspective(400px) rotateY(-180deg)}.q-transition--flip-right-leave-to,.q-transition--flip-left-enter-from{transform:perspective(400px) rotateY(180deg)}.q-transition--flip-left-leave-to{transform:perspective(400px) rotateY(-180deg)}.q-transition--flip-up-enter-from{transform:perspective(400px) rotateX(-180deg)}.q-transition--flip-up-leave-to,.q-transition--flip-down-enter-from{transform:perspective(400px) rotateX(180deg)}.q-transition--flip-down-leave-to{transform:perspective(400px) rotateX(-180deg)}body{min-width:100px;min-height:100%;font-family:Roboto,-apple-system,Helvetica Neue,Helvetica,Arial,sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-smoothing:antialiased;line-height:1.5;font-size:14px}h1{font-size:6rem;font-weight:300;line-height:6rem;letter-spacing:-.01562em}h2{font-size:3.75rem;font-weight:300;line-height:3.75rem;letter-spacing:-.00833em}h3{font-size:3rem;font-weight:400;line-height:3.125rem;letter-spacing:normal}h4{font-size:2.125rem;font-weight:400;line-height:2.5rem;letter-spacing:.00735em}h5{font-size:1.5rem;font-weight:400;line-height:2rem;letter-spacing:normal}h6{font-size:1.25rem;font-weight:500;line-height:2rem;letter-spacing:.0125em}p{margin:0 0 16px}.text-h1{font-size:6rem;font-weight:300;line-height:6rem;letter-spacing:-.01562em}.text-h2{font-size:3.75rem;font-weight:300;line-height:3.75rem;letter-spacing:-.00833em}.text-h3{font-size:3rem;font-weight:400;line-height:3.125rem;letter-spacing:normal}.text-h4{font-size:2.125rem;font-weight:400;line-height:2.5rem;letter-spacing:.00735em}.text-h5{font-size:1.5rem;font-weight:400;line-height:2rem;letter-spacing:normal}.text-h6{font-size:1.25rem;font-weight:500;line-height:2rem;letter-spacing:.0125em}.text-subtitle1{font-size:1rem;font-weight:400;line-height:1.75rem;letter-spacing:.00937em}.text-subtitle2{font-size:.875rem;font-weight:500;line-height:1.375rem;letter-spacing:.00714em}.text-body1{font-size:1rem;font-weight:400;line-height:1.5rem;letter-spacing:.03125em}.text-body2{font-size:.875rem;font-weight:400;line-height:1.25rem;letter-spacing:.01786em}.text-overline{font-size:.75rem;font-weight:500;line-height:2rem;letter-spacing:.16667em}.text-caption{font-size:.75rem;font-weight:400;line-height:1.25rem;letter-spacing:.03333em}.text-uppercase{text-transform:uppercase}.text-lowercase{text-transform:lowercase}.text-capitalize{text-transform:capitalize}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-justify{text-align:justify;-webkit-hyphens:auto;hyphens:auto}.text-italic{font-style:italic}.text-bold{font-weight:700}.text-no-wrap{white-space:nowrap}.text-strike{text-decoration:line-through}.text-weight-thin{font-weight:100}.text-weight-light{font-weight:300}.text-weight-regular{font-weight:400}.text-weight-medium{font-weight:500}.text-weight-bold{font-weight:700}.text-weight-bolder{font-weight:900}small{font-size:80%}big{font-size:170%}sub{bottom:-.25em}sup{top:-.5em}.no-margin{margin:0!important}.no-padding{padding:0!important}.no-border{border:0!important}.no-border-radius{border-radius:0!important}.no-box-shadow{box-shadow:none!important}.no-outline{outline:0!important}.ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ellipsis-2-lines,.ellipsis-3-lines{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.ellipsis-2-lines{-webkit-line-clamp:2}.ellipsis-3-lines{-webkit-line-clamp:3}.readonly{cursor:default!important}.disabled,.disabled *,[disabled],[disabled] *{outline:0!important;cursor:not-allowed!important}.disabled,[disabled]{opacity:.6!important}.hidden{display:none!important}.invisible,.invisible *{visibility:hidden!important;transition:none!important;animation:none!important}.transparent{background:transparent!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.overflow-hidden-y{overflow-y:hidden!important}.hide-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.hide-scrollbar::-webkit-scrollbar{width:0;height:0;display:none}.dimmed:after,.light-dimmed:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0}.dimmed:after{background:rgba(0,0,0,.4)!important}.light-dimmed:after{background:rgba(255,255,255,.6)!important}.z-top{z-index:7000!important}.z-max{z-index:9998!important}body:not(.desktop) .desktop-only,body.desktop .desktop-hide{display:none!important}body:not(.mobile) .mobile-only,body.mobile .mobile-hide{display:none!important}body:not(.native-mobile) .native-mobile-only,body.native-mobile .native-mobile-hide{display:none!important}body:not(.cordova) .cordova-only,body.cordova .cordova-hide{display:none!important}body:not(.capacitor) .capacitor-only,body.capacitor .capacitor-hide{display:none!important}body:not(.electron) .electron-only,body.electron .electron-hide{display:none!important}body:not(.touch) .touch-only,body.touch .touch-hide{display:none!important}body:not(.within-iframe) .within-iframe-only,body.within-iframe .within-iframe-hide{display:none!important}body:not(.platform-ios) .platform-ios-only,body.platform-ios .platform-ios-hide{display:none!important}body:not(.platform-android) .platform-android-only,body.platform-android .platform-android-hide{display:none!important}@media all and (orientation: portrait){.orientation-landscape{display:none!important}}@media all and (orientation: landscape){.orientation-portrait{display:none!important}}@media screen{.print-only{display:none!important}}@media print{.print-hide{display:none!important}}@media (max-width: 599.98px){.xs-hide,.gt-xs,.sm,.gt-sm,.md,.gt-md,.lg,.gt-lg,.xl{display:none!important}}@media (min-width: 600px) and (max-width: 1023.98px){.sm-hide,.xs,.lt-sm,.gt-sm,.md,.gt-md,.lg,.gt-lg,.xl{display:none!important}}@media (min-width: 1024px) and (max-width: 1439.98px){.md-hide,.xs,.lt-sm,.sm,.lt-md,.gt-md,.lg,.gt-lg,.xl{display:none!important}}@media (min-width: 1440px) and (max-width: 1919.98px){.lg-hide,.xs,.lt-sm,.sm,.lt-md,.md,.lt-lg,.gt-lg,.xl{display:none!important}}@media (min-width: 1920px){.xl-hide,.xs,.lt-sm,.sm,.lt-md,.md,.lt-lg,.lg,.lt-xl{display:none!important}}.q-focus-helper,.q-focusable,.q-manual-focusable,.q-hoverable{outline:0}body.desktop .q-focus-helper{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;border-radius:inherit;opacity:0;transition:background-color .3s cubic-bezier(.25,.8,.5,1),opacity .4s cubic-bezier(.25,.8,.5,1)}body.desktop .q-focus-helper:before,body.desktop .q-focus-helper:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;border-radius:inherit;transition:background-color .3s cubic-bezier(.25,.8,.5,1),opacity .6s cubic-bezier(.25,.8,.5,1)}body.desktop .q-focus-helper:before{background:#000}body.desktop .q-focus-helper:after{background:#fff}body.desktop .q-focus-helper--rounded{border-radius:4px}body.desktop .q-focus-helper--round{border-radius:50%}body.desktop .q-focusable:focus>.q-focus-helper,body.desktop .q-manual-focusable--focused>.q-focus-helper,body.desktop .q-hoverable:hover>.q-focus-helper{background:currentColor;opacity:.15}body.desktop .q-focusable:focus>.q-focus-helper:before,body.desktop .q-manual-focusable--focused>.q-focus-helper:before,body.desktop .q-hoverable:hover>.q-focus-helper:before{opacity:.1}body.desktop .q-focusable:focus>.q-focus-helper:after,body.desktop .q-manual-focusable--focused>.q-focus-helper:after,body.desktop .q-hoverable:hover>.q-focus-helper:after{opacity:.4}body.desktop .q-focusable:focus>.q-focus-helper,body.desktop .q-manual-focusable--focused>.q-focus-helper{opacity:.22}body.body--dark{color:#fff;background:var(--q-dark-page)}.q-dark{color:#fff;background:var(--q-dark)}[data-theme=classic] .q-drawer--dark,body[data-theme=classic].body--dark,[data-theme=classic] .q-menu--dark{background:#1f2234!important}[data-theme=classic] .q-card--dark,[data-theme=classic] .q-stepper--dark{background:#333646!important}[data-theme=classic] .bg-primary{background:#673ab7!important}[data-theme=classic] .text-primary{color:#673ab7!important}[data-theme=classic] .bg-secondary{background:#9c27b0!important}[data-theme=classic] .text-secondary{color:#9c27b0!important}[data-theme=classic] .bg-dark{background:#1f2234!important}[data-theme=classic] .text-dark{color:#1f2234!important}[data-theme=classic] .bg-info{background:#333646!important}[data-theme=classic] .text-info{color:#333646!important}[data-theme=classic] .bg-marginal-bg{background:#1f2234!important}[data-theme=classic] .text-marginal-bg{color:#1f2234!important}[data-theme=classic] .bg-marginal-text{background:#fff!important}[data-theme=classic] .text-marginal-text{color:#fff!important}[data-theme=bitcoin] .q-drawer--dark,body[data-theme=bitcoin].body--dark,[data-theme=bitcoin] .q-menu--dark{background:#2d293b!important}[data-theme=bitcoin] .q-card--dark,[data-theme=bitcoin] .q-stepper--dark{background:#333646!important}[data-theme=bitcoin] .bg-primary{background:#ff9853!important}[data-theme=bitcoin] .text-primary{color:#ff9853!important}[data-theme=bitcoin] .bg-secondary{background:#ff7353!important}[data-theme=bitcoin] .text-secondary{color:#ff7353!important}[data-theme=bitcoin] .bg-dark{background:#2d293b!important}[data-theme=bitcoin] .text-dark{color:#2d293b!important}[data-theme=bitcoin] .bg-info{background:#333646!important}[data-theme=bitcoin] .text-info{color:#333646!important}[data-theme=bitcoin] .bg-marginal-bg{background:#2d293b!important}[data-theme=bitcoin] .text-marginal-bg{color:#2d293b!important}[data-theme=bitcoin] .bg-marginal-text{background:#fff!important}[data-theme=bitcoin] .text-marginal-text{color:#fff!important}[data-theme=freedom] .q-drawer--dark,body[data-theme=freedom].body--dark,[data-theme=freedom] .q-menu--dark{background:#0a0a0a!important}[data-theme=freedom] .q-card--dark,[data-theme=freedom] .q-stepper--dark{background:#1b1b1b!important}[data-theme=freedom] .bg-primary{background:#e22156!important}[data-theme=freedom] .text-primary{color:#e22156!important}[data-theme=freedom] .bg-secondary{background:#b91a45!important}[data-theme=freedom] .text-secondary{color:#b91a45!important}[data-theme=freedom] .bg-dark{background:#0a0a0a!important}[data-theme=freedom] .text-dark{color:#0a0a0a!important}[data-theme=freedom] .bg-info{background:#1b1b1b!important}[data-theme=freedom] .text-info{color:#1b1b1b!important}[data-theme=freedom] .bg-marginal-bg{background:#2d293b!important}[data-theme=freedom] .text-marginal-bg{color:#2d293b!important}[data-theme=freedom] .bg-marginal-text{background:#fff!important}[data-theme=freedom] .text-marginal-text{color:#fff!important}[data-theme=cyber] .q-drawer--dark,body[data-theme=cyber].body--dark,[data-theme=cyber] .q-menu--dark{background:#0a0a0a!important}[data-theme=cyber] .q-card--dark,[data-theme=cyber] .q-stepper--dark{background:#1b1b1b!important}[data-theme=cyber] .bg-primary{background:#7cb342!important}[data-theme=cyber] .text-primary{color:#7cb342!important}[data-theme=cyber] .bg-secondary{background:#558b2f!important}[data-theme=cyber] .text-secondary{color:#558b2f!important}[data-theme=cyber] .bg-dark{background:#0a0a0a!important}[data-theme=cyber] .text-dark{color:#0a0a0a!important}[data-theme=cyber] .bg-info{background:#1b1b1b!important}[data-theme=cyber] .text-info{color:#1b1b1b!important}[data-theme=cyber] .bg-marginal-bg{background:#2d293b!important}[data-theme=cyber] .text-marginal-bg{color:#2d293b!important}[data-theme=cyber] .bg-marginal-text{background:#fff!important}[data-theme=cyber] .text-marginal-text{color:#fff!important}[data-theme=mint] .q-drawer--dark,body[data-theme=mint].body--dark,[data-theme=mint] .q-menu--dark{background:#1f342b!important}[data-theme=mint] .q-card--dark,[data-theme=mint] .q-stepper--dark{background:#334642!important}[data-theme=mint] .bg-primary{background:#3ab77d!important}[data-theme=mint] .text-primary{color:#3ab77d!important}[data-theme=mint] .bg-secondary{background:#27b065!important}[data-theme=mint] .text-secondary{color:#27b065!important}[data-theme=mint] .bg-dark{background:#1f342b!important}[data-theme=mint] .text-dark{color:#1f342b!important}[data-theme=mint] .bg-info{background:#334642!important}[data-theme=mint] .text-info{color:#334642!important}[data-theme=mint] .bg-marginal-bg{background:#1f342b!important}[data-theme=mint] .text-marginal-bg{color:#1f342b!important}[data-theme=mint] .bg-marginal-text{background:#fff!important}[data-theme=mint] .text-marginal-text{color:#fff!important}[data-theme=autumn] .q-drawer--dark,body[data-theme=autumn].body--dark,[data-theme=autumn] .q-menu--dark{background:#34291f!important}[data-theme=autumn] .q-card--dark,[data-theme=autumn] .q-stepper--dark{background:#463f33!important}[data-theme=autumn] .bg-primary{background:#b7763a!important}[data-theme=autumn] .text-primary{color:#b7763a!important}[data-theme=autumn] .bg-secondary{background:#b07927!important}[data-theme=autumn] .text-secondary{color:#b07927!important}[data-theme=autumn] .bg-dark{background:#34291f!important}[data-theme=autumn] .text-dark{color:#34291f!important}[data-theme=autumn] .bg-info{background:#463f33!important}[data-theme=autumn] .text-info{color:#463f33!important}[data-theme=autumn] .bg-marginal-bg{background:#342a1f!important}[data-theme=autumn] .text-marginal-bg{color:#342a1f!important}[data-theme=autumn] .bg-marginal-text{background:rgb(255,255,255)!important}[data-theme=autumn] .text-marginal-text{color:#fff!important}[data-theme=flamingo] .q-drawer--dark,body[data-theme=flamingo].body--dark,[data-theme=flamingo] .q-menu--dark{background:#2f032f!important}[data-theme=flamingo] .q-card--dark,[data-theme=flamingo] .q-stepper--dark{background:#bc23bc!important}[data-theme=flamingo] .bg-primary{background:#ff00ff!important}[data-theme=flamingo] .text-primary{color:#f0f!important}[data-theme=flamingo] .bg-secondary{background:#fda3fd!important}[data-theme=flamingo] .text-secondary{color:#fda3fd!important}[data-theme=flamingo] .bg-dark{background:#2f032f!important}[data-theme=flamingo] .text-dark{color:#2f032f!important}[data-theme=flamingo] .bg-info{background:#bc23bc!important}[data-theme=flamingo] .text-info{color:#bc23bc!important}[data-theme=flamingo] .bg-marginal-bg{background:#311231!important}[data-theme=flamingo] .text-marginal-bg{color:#311231!important}[data-theme=flamingo] .bg-marginal-text{background:rgb(255,255,255)!important}[data-theme=flamingo] .text-marginal-text{color:#fff!important}[data-theme=monochrome] .q-drawer--dark,body[data-theme=monochrome].body--dark,[data-theme=monochrome] .q-menu--dark{background:#000!important}[data-theme=monochrome] .q-card--dark,[data-theme=monochrome] .q-stepper--dark{background:rgb(39,39,39)!important}[data-theme=monochrome] .bg-primary{background:#494949!important}[data-theme=monochrome] .text-primary{color:#494949!important}[data-theme=monochrome] .bg-secondary{background:#6b6b6b!important}[data-theme=monochrome] .text-secondary{color:#6b6b6b!important}[data-theme=monochrome] .bg-dark{background:#000!important}[data-theme=monochrome] .text-dark{color:#000!important}[data-theme=monochrome] .bg-info{background:rgb(39,39,39)!important}[data-theme=monochrome] .text-info{color:#272727!important}[data-theme=monochrome] .bg-marginal-bg{background:#000!important}[data-theme=monochrome] .text-marginal-bg{color:#000!important}[data-theme=monochrome] .bg-marginal-text{background:rgb(255,255,255)!important}[data-theme=monochrome] .text-marginal-text{color:#fff!important}[data-theme=freedom] .q-drawer--dark,[data-theme=freedom] .q-header,[data-theme=cyber] .q-drawer--dark,[data-theme=cyber] .q-header{background:#0a0a0a!important}[data-theme=salvador] .q-drawer--dark{background:#242424!important}[data-theme=salvador] .q-header{background:#0f47af!important}[v-cloak]{display:none}body.body--dark .q-table--dark{background:transparent}body.body--dark .q-field--error .text-negative,body.body--dark .q-field--error .q-field__messages{color:#ff0!important}.lnbits-drawer__q-list .q-item{padding-top:5px!important;padding-bottom:5px!important;border-top-right-radius:3px;border-bottom-right-radius:3px}.lnbits-drawer__q-list .q-item.q-item--active{color:inherit;font-weight:700}.lnbits__dialog-card{width:500px}.q-table--dense th:first-child,.q-table--dense td:first-child,.q-table--dense .q-table__bottom{padding-left:6px!important}.q-table--dense th:last-child,.q-table--dense td:last-child,.q-table--dense .q-table__bottom{padding-right:6px!important}a.inherit{color:inherit;text-decoration:none}video{border-radius:3px}@font-face{font-family:Material Icons;font-style:normal;font-weight:400;src:url(/static/fonts/material-icons-v50.woff2) format("woff2")}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-moz-font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale}.q-rating__icon{font-size:1em}.text-wrap{word-break:break-word}.q-card code{overflow-wrap:break-word} +@font-face{font-family:Roboto;font-style:normal;font-weight:100;src:url(/nostrmarket/static/market/assets/KFOkCnqEu92Fr1MmgVxIIzQ.34e9582c.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-weight:300;src:url(/nostrmarket/static/market/assets/KFOlCnqEu92Fr1MmSU5fBBc-.bf14c7d7.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-weight:400;src:url(/nostrmarket/static/market/assets/KFOmCnqEu92Fr1Mu4mxM.f2abf7fb.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-weight:500;src:url(/nostrmarket/static/market/assets/KFOlCnqEu92Fr1MmEU9fBBc-.9ce7f3ac.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-weight:700;src:url(/nostrmarket/static/market/assets/KFOlCnqEu92Fr1MmWUlfBBc-.e0fd57c0.woff) format("woff")}@font-face{font-family:Roboto;font-style:normal;font-weight:900;src:url(/nostrmarket/static/market/assets/KFOlCnqEu92Fr1MmYUtfBBc-.f6537e32.woff) format("woff")}@font-face{font-family:Material Icons;font-style:normal;font-weight:400;font-display:block;src:url(/nostrmarket/static/market/assets/flUhRq6tzZclQEJ-Vdg-IuiaDsNcIhQ8tQ.4a4dbc62.woff2) format("woff2"),url(/nostrmarket/static/market/assets/flUhRq6tzZclQEJ-Vdg-IuiaDsNa.fd84f88b.woff) format("woff")}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;display:inline-block;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:"liga"}*,*:before,*:after{box-sizing:inherit;-webkit-tap-highlight-color:transparent;-moz-tap-highlight-color:transparent}html,body,#q-app{width:100%;direction:ltr}body.platform-ios.within-iframe,body.platform-ios.within-iframe #q-app{width:100px;min-width:100%}html,body{margin:0;box-sizing:border-box}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}img{border-style:none}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}hr{box-sizing:content-box;height:0;overflow:visible}button,input,optgroup,select,textarea{font:inherit;font-family:inherit;margin:0}optgroup{font-weight:700}button,input,select{overflow:visible;text-transform:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}button:-moz-focusring,input:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.q-icon{line-height:1;width:1em;height:1em;flex-shrink:0;letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;direction:ltr;text-align:center;position:relative;box-sizing:content-box;fill:currentColor}.q-icon:before,.q-icon:after{width:100%;height:100%;display:flex!important;align-items:center;justify-content:center}.q-icon>svg,.q-icon>img{width:100%;height:100%}.q-icon,.material-icons,.material-icons-outlined,.material-icons-round,.material-icons-sharp,.material-symbols-outlined,.material-symbols-rounded,.material-symbols-sharp{-webkit-user-select:none;user-select:none;cursor:inherit;font-size:inherit;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle}.q-panel{height:100%;width:100%}.q-panel>div{height:100%;width:100%}.q-panel-parent{overflow:hidden;position:relative}.q-loading-bar{position:fixed;z-index:9998;transition:transform .5s cubic-bezier(0,0,.2,1),opacity .5s;background:#f44336}.q-loading-bar--top{left:0;right:0;top:0;width:100%}.q-loading-bar--bottom{left:0;right:0;bottom:0;width:100%}.q-loading-bar--right{top:0;bottom:0;right:0;height:100%}.q-loading-bar--left{top:0;bottom:0;left:0;height:100%}.q-avatar{position:relative;vertical-align:middle;display:inline-block;border-radius:50%;font-size:48px;height:1em;width:1em}.q-avatar__content{font-size:.5em;line-height:.5em}.q-avatar__content,.q-avatar img:not(.q-icon):not(.q-img__image){border-radius:inherit;height:inherit;width:inherit}.q-avatar--square{border-radius:0}.q-badge{background-color:var(--q-primary);color:#fff;padding:2px 6px;border-radius:4px;font-size:12px;line-height:12px;min-height:12px;font-weight:400;vertical-align:baseline}.q-badge--single-line{white-space:nowrap}.q-badge--multi-line{word-break:break-all;word-wrap:break-word}.q-badge--floating{position:absolute;top:-4px;right:-3px;cursor:inherit}.q-badge--transparent{opacity:.8}.q-badge--outline{background-color:transparent;border:1px solid currentColor}.q-badge--rounded{border-radius:1em}.q-banner{min-height:54px;padding:8px 16px;background:#fff}.q-banner--top-padding{padding-top:14px}.q-banner__avatar{min-width:1px!important}.q-banner__avatar>.q-avatar{font-size:46px}.q-banner__avatar>.q-icon{font-size:40px}.q-banner__avatar:not(:empty)+.q-banner__content{padding-left:16px}.q-banner__actions.col-auto{padding-left:16px}.q-banner__actions.col-all .q-btn-item{margin:4px 0 0 4px}.q-banner--dense{min-height:32px;padding:8px}.q-banner--dense.q-banner--top-padding{padding-top:12px}.q-banner--dense .q-banner__avatar>.q-avatar,.q-banner--dense .q-banner__avatar>.q-icon{font-size:28px}.q-banner--dense .q-banner__avatar:not(:empty)+.q-banner__content{padding-left:8px}.q-banner--dense .q-banner__actions.col-auto{padding-left:8px}.q-bar{background:rgba(0,0,0,.2)}.q-bar>.q-icon{margin-left:2px}.q-bar>div,.q-bar>div+.q-icon{margin-left:8px}.q-bar>.q-btn{margin-left:2px}.q-bar>.q-icon:first-child,.q-bar>.q-btn:first-child,.q-bar>div:first-child{margin-left:0}.q-bar--standard{padding:0 12px;height:32px;font-size:18px}.q-bar--standard>div{font-size:16px}.q-bar--standard .q-btn{font-size:11px}.q-bar--dense{padding:0 8px;height:24px;font-size:14px}.q-bar--dense .q-btn{font-size:8px}.q-bar--dark{background:rgba(255,255,255,.15)}.q-breadcrumbs__el{color:inherit}.q-breadcrumbs__el-icon{font-size:125%}.q-breadcrumbs__el-icon--with-label{margin-right:8px}[dir=rtl] .q-breadcrumbs__separator .q-icon{transform:scaleX(-1)}.q-btn{display:inline-flex;flex-direction:column;align-items:stretch;position:relative;outline:0;border:0;vertical-align:middle;font-size:14px;line-height:1.715em;text-decoration:none;color:inherit;background:transparent;font-weight:500;text-transform:uppercase;text-align:center;width:auto;height:auto;cursor:default;padding:4px 16px;min-height:2.572em}.q-btn .q-icon,.q-btn .q-spinner{font-size:1.715em}.q-btn.disabled{opacity:.7!important}.q-btn:before{content:"";display:block;position:absolute;left:0;right:0;top:0;bottom:0;border-radius:inherit;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f}.q-btn--actionable{cursor:pointer}.q-btn--actionable.q-btn--standard:before{transition:box-shadow .3s cubic-bezier(.25,.8,.5,1)}.q-btn--actionable.q-btn--standard:active:before,.q-btn--actionable.q-btn--standard.q-btn--active:before{box-shadow:0 3px 5px -1px #0003,0 5px 8px #00000024,0 1px 14px #0000001f}.q-btn--no-uppercase{text-transform:none}.q-btn--rectangle{border-radius:3px}.q-btn--outline{background:transparent!important}.q-btn--outline:before{border:1px solid currentColor}.q-btn--push{border-radius:7px}.q-btn--push:before{border-bottom:3px solid rgba(0,0,0,.15)}.q-btn--push.q-btn--actionable{transition:transform .3s cubic-bezier(.25,.8,.5,1)}.q-btn--push.q-btn--actionable:before{transition:border-width .3s cubic-bezier(.25,.8,.5,1)}.q-btn--push.q-btn--actionable:active,.q-btn--push.q-btn--actionable.q-btn--active{transform:translateY(2px)}.q-btn--push.q-btn--actionable:active:before,.q-btn--push.q-btn--actionable.q-btn--active:before{border-bottom-width:0}.q-btn--rounded{border-radius:28px}.q-btn--round{border-radius:50%;padding:0;min-width:3em;min-height:3em}.q-btn--square{border-radius:0}.q-btn--flat:before,.q-btn--outline:before,.q-btn--unelevated:before{box-shadow:none}.q-btn--dense{padding:.285em;min-height:2em}.q-btn--dense.q-btn--round{padding:0;min-height:2.4em;min-width:2.4em}.q-btn--dense .on-left{margin-right:6px}.q-btn--dense .on-right{margin-left:6px}.q-btn--fab .q-icon,.q-btn--fab-mini .q-icon{font-size:24px}.q-btn--fab{padding:16px;min-height:56px;min-width:56px}.q-btn--fab .q-icon{margin:auto}.q-btn--fab-mini{padding:8px;min-height:40px;min-width:40px}.q-btn__content{transition:opacity .3s;z-index:0}.q-btn__content--hidden{opacity:0;pointer-events:none}.q-btn__progress{border-radius:inherit;z-index:0}.q-btn__progress-indicator{z-index:-1;transform:translate(-100%);background:rgba(255,255,255,.25)}.q-btn__progress--dark .q-btn__progress-indicator{background:rgba(0,0,0,.2)}.q-btn--flat .q-btn__progress-indicator,.q-btn--outline .q-btn__progress-indicator{opacity:.2;background:currentColor}.q-btn-dropdown--split .q-btn-dropdown__arrow-container{padding:0 4px}.q-btn-dropdown--split .q-btn-dropdown__arrow-container.q-btn--outline{border-left:1px solid currentColor}.q-btn-dropdown--split .q-btn-dropdown__arrow-container:not(.q-btn--outline){border-left:1px solid rgba(255,255,255,.3)}.q-btn-dropdown--simple *+.q-btn-dropdown__arrow{margin-left:8px}.q-btn-dropdown__arrow{transition:transform .28s}.q-btn-dropdown--current{flex-grow:1}.q-btn-group{border-radius:3px;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;vertical-align:middle}.q-btn-group>.q-btn-item{border-radius:inherit;align-self:stretch}.q-btn-group>.q-btn-item:before{box-shadow:none}.q-btn-group>.q-btn-item .q-badge--floating{right:0}.q-btn-group>.q-btn-group{box-shadow:none}.q-btn-group>.q-btn-group:first-child>.q-btn:first-child{border-top-left-radius:inherit;border-bottom-left-radius:inherit}.q-btn-group>.q-btn-group:last-child>.q-btn:last-child{border-top-right-radius:inherit;border-bottom-right-radius:inherit}.q-btn-group>.q-btn-group:not(:first-child)>.q-btn:first-child:before{border-left:0}.q-btn-group>.q-btn-group:not(:last-child)>.q-btn:last-child:before{border-right:0}.q-btn-group>.q-btn-item:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.q-btn-group>.q-btn-item:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.q-btn-group>.q-btn-item.q-btn--standard:before{z-index:-1}.q-btn-group--push{border-radius:7px}.q-btn-group--push>.q-btn--push.q-btn--actionable{transform:none}.q-btn-group--push>.q-btn--push.q-btn--actionable .q-btn__content{transition:margin-top .3s cubic-bezier(.25,.8,.5,1),margin-bottom .3s cubic-bezier(.25,.8,.5,1)}.q-btn-group--push>.q-btn--push.q-btn--actionable:active .q-btn__content,.q-btn-group--push>.q-btn--push.q-btn--actionable.q-btn--active .q-btn__content{margin-top:2px;margin-bottom:-2px}.q-btn-group--rounded{border-radius:28px}.q-btn-group--square{border-radius:0}.q-btn-group--flat,.q-btn-group--outline,.q-btn-group--unelevated{box-shadow:none}.q-btn-group--outline>.q-separator{display:none}.q-btn-group--outline>.q-btn-item+.q-btn-item:before{border-left:0}.q-btn-group--outline>.q-btn-item:not(:last-child):before{border-right:0}.q-btn-group--stretch{align-self:stretch;border-radius:0}.q-btn-group--glossy>.q-btn-item{background-image:linear-gradient(to bottom,rgba(255,255,255,.3),rgba(255,255,255,0) 50%,rgba(0,0,0,.12) 51%,rgba(0,0,0,.04))!important}.q-btn-group--spread>.q-btn-group{display:flex!important}.q-btn-group--spread>.q-btn-item,.q-btn-group--spread>.q-btn-group>.q-btn-item:not(.q-btn-dropdown__arrow-container){width:auto;min-width:0;max-width:100%;flex:10000 1 0%}.q-btn-toggle{position:relative}.q-card{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;vertical-align:top;background:#fff;position:relative}.q-card>div:first-child,.q-card>img:first-child{border-top:0;border-top-left-radius:inherit;border-top-right-radius:inherit}.q-card>div:last-child,.q-card>img:last-child{border-bottom:0;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.q-card>div:not(:first-child),.q-card>img:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.q-card>div:not(:last-child),.q-card>img:not(:last-child){border-bottom-left-radius:0;border-bottom-right-radius:0}.q-card>div{border-left:0;border-right:0;box-shadow:none}.q-card--bordered{border:1px solid rgba(0,0,0,.12)}.q-card--dark{border-color:#ffffff47;box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-card__section{position:relative}.q-card__section--vert{padding:16px}.q-card__section--horiz>div:first-child,.q-card__section--horiz>img:first-child{border-top-left-radius:inherit;border-bottom-left-radius:inherit}.q-card__section--horiz>div:last-child,.q-card__section--horiz>img:last-child{border-top-right-radius:inherit;border-bottom-right-radius:inherit}.q-card__section--horiz>div:not(:first-child),.q-card__section--horiz>img:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.q-card__section--horiz>div:not(:last-child),.q-card__section--horiz>img:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.q-card__section--horiz>div{border-top:0;border-bottom:0;box-shadow:none}.q-card__actions{padding:8px;align-items:center}.q-card__actions .q-btn--rectangle{padding:0 8px}.q-card__actions--horiz>.q-btn-item+.q-btn-item,.q-card__actions--horiz>.q-btn-group+.q-btn-item,.q-card__actions--horiz>.q-btn-item+.q-btn-group{margin-left:8px}.q-card__actions--vert>.q-btn-item.q-btn--round{align-self:center}.q-card__actions--vert>.q-btn-item+.q-btn-item,.q-card__actions--vert>.q-btn-group+.q-btn-item,.q-card__actions--vert>.q-btn-item+.q-btn-group{margin-top:4px}.q-card__actions--vert>.q-btn-group>.q-btn-item{flex-grow:1}.q-card>img{display:block;width:100%;max-width:100%;border:0}.q-carousel{background-color:#fff;height:400px}.q-carousel__slide{min-height:100%;background-size:cover;background-position:50%}.q-carousel__slide,.q-carousel .q-carousel--padding{padding:16px}.q-carousel__slides-container{height:100%}.q-carousel__control{color:#fff}.q-carousel__arrow{pointer-events:none}.q-carousel__arrow .q-icon{font-size:28px}.q-carousel__arrow .q-btn{pointer-events:all}.q-carousel__prev-arrow--horizontal,.q-carousel__next-arrow--horizontal{top:16px;bottom:16px}.q-carousel__prev-arrow--horizontal{left:16px}.q-carousel__next-arrow--horizontal{right:16px}.q-carousel__prev-arrow--vertical,.q-carousel__next-arrow--vertical{left:16px;right:16px}.q-carousel__prev-arrow--vertical{top:16px}.q-carousel__next-arrow--vertical{bottom:16px}.q-carousel__navigation--top,.q-carousel__navigation--bottom{left:16px;right:16px;overflow-x:auto;overflow-y:hidden}.q-carousel__navigation--top{top:16px}.q-carousel__navigation--bottom{bottom:16px}.q-carousel__navigation--left,.q-carousel__navigation--right{top:16px;bottom:16px;overflow-x:hidden;overflow-y:auto}.q-carousel__navigation--left>.q-carousel__navigation-inner,.q-carousel__navigation--right>.q-carousel__navigation-inner{flex-direction:column}.q-carousel__navigation--left{left:16px}.q-carousel__navigation--right{right:16px}.q-carousel__navigation-inner{flex:1 1 auto}.q-carousel__navigation .q-btn{margin:6px 4px;padding:5px}.q-carousel__navigation-icon--inactive{opacity:.7}.q-carousel .q-carousel__thumbnail{margin:2px;height:50px;width:auto;display:inline-block;cursor:pointer;border:1px solid transparent;border-radius:4px;vertical-align:middle;opacity:.7;transition:opacity .3s}.q-carousel .q-carousel__thumbnail:hover,.q-carousel .q-carousel__thumbnail--active{opacity:1}.q-carousel .q-carousel__thumbnail--active{border-color:currentColor;cursor:default}.q-carousel--navigation-top.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-top .q-carousel--padding,.q-carousel--arrows-vertical.q-carousel--with-padding .q-carousel__slide,.q-carousel--arrows-vertical .q-carousel--padding{padding-top:60px}.q-carousel--navigation-bottom.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-bottom .q-carousel--padding,.q-carousel--arrows-vertical.q-carousel--with-padding .q-carousel__slide,.q-carousel--arrows-vertical .q-carousel--padding{padding-bottom:60px}.q-carousel--navigation-left.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-left .q-carousel--padding,.q-carousel--arrows-horizontal.q-carousel--with-padding .q-carousel__slide,.q-carousel--arrows-horizontal .q-carousel--padding{padding-left:60px}.q-carousel--navigation-right.q-carousel--with-padding .q-carousel__slide,.q-carousel--navigation-right .q-carousel--padding,.q-carousel--arrows-horizontal.q-carousel--with-padding .q-carousel__slide,.q-carousel--arrows-horizontal .q-carousel--padding{padding-right:60px}.q-carousel.fullscreen{height:100%}.q-message-name,.q-message-stamp,.q-message-label{font-size:small}.q-message-label{margin:24px 0;text-align:center}.q-message-stamp{color:inherit;margin-top:4px;opacity:.6;display:none}.q-message-avatar{border-radius:50%;width:48px;height:48px;min-width:48px}.q-message{margin-bottom:8px}.q-message:first-child .q-message-label{margin-top:0}.q-message-avatar--received{margin-right:8px}.q-message-text--received{color:#81c784;border-radius:4px 4px 4px 0}.q-message-text--received:last-child:before{right:100%;border-right:0 solid transparent;border-left:8px solid transparent;border-bottom:8px solid currentColor}.q-message-text-content--received{color:#000}.q-message-name--sent{text-align:right}.q-message-avatar--sent{margin-left:8px}.q-message-container--sent{flex-direction:row-reverse}.q-message-text--sent{color:#e0e0e0;border-radius:4px 4px 0}.q-message-text--sent:last-child:before{left:100%;border-left:0 solid transparent;border-right:8px solid transparent;border-bottom:8px solid currentColor}.q-message-text-content--sent{color:#000}.q-message-text{background:currentColor;padding:8px;line-height:1.2;word-break:break-word;position:relative}.q-message-text+.q-message-text{margin-top:3px}.q-message-text:last-child{min-height:48px}.q-message-text:last-child .q-message-stamp{display:block}.q-message-text:last-child:before{content:"";position:absolute;bottom:0;width:0;height:0}.q-checkbox{vertical-align:middle}.q-checkbox__native{width:1px;height:1px}.q-checkbox__bg,.q-checkbox__icon-container{-webkit-user-select:none;user-select:none}.q-checkbox__bg{top:25%;left:25%;width:50%;height:50%;border:2px solid currentColor;border-radius:2px;transition:background .22s cubic-bezier(0,0,.2,1) 0ms;-webkit-print-color-adjust:exact}.q-checkbox__icon{color:currentColor;font-size:.5em}.q-checkbox__svg{color:#fff}.q-checkbox__truthy{stroke:currentColor;stroke-width:3.12px;stroke-dashoffset:29.78334;stroke-dasharray:29.78334}.q-checkbox__indet{fill:currentColor;transform-origin:50% 50%;transform:rotate(-280deg) scale(0)}.q-checkbox__inner{font-size:40px;width:1em;min-width:1em;height:1em;outline:0;border-radius:50%;color:#0000008a}.q-checkbox__inner--truthy,.q-checkbox__inner--indet{color:var(--q-primary)}.q-checkbox__inner--truthy .q-checkbox__bg,.q-checkbox__inner--indet .q-checkbox__bg{background:currentColor}.q-checkbox__inner--truthy path{stroke-dashoffset:0;transition:stroke-dashoffset .18s cubic-bezier(.4,0,.6,1) 0ms}.q-checkbox__inner--indet .q-checkbox__indet{transform:rotate(0) scale(1);transition:transform .22s cubic-bezier(0,0,.2,1) 0ms}.q-checkbox.disabled{opacity:.75!important}.q-checkbox--dark .q-checkbox__inner{color:#ffffffb3}.q-checkbox--dark .q-checkbox__inner:before{opacity:.32!important}.q-checkbox--dark .q-checkbox__inner--truthy,.q-checkbox--dark .q-checkbox__inner--indet{color:var(--q-primary)}.q-checkbox--dense .q-checkbox__inner{width:.5em;min-width:.5em;height:.5em}.q-checkbox--dense .q-checkbox__bg{left:5%;top:5%;width:90%;height:90%}.q-checkbox--dense .q-checkbox__label{padding-left:.5em}.q-checkbox--dense.reverse .q-checkbox__label{padding-left:0;padding-right:.5em}body.desktop .q-checkbox:not(.disabled) .q-checkbox__inner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:currentColor;opacity:.12;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0,0,.2,1)}body.desktop .q-checkbox:not(.disabled):focus .q-checkbox__inner:before,body.desktop .q-checkbox:not(.disabled):hover .q-checkbox__inner:before{transform:scaleZ(1)}body.desktop .q-checkbox--dense:not(.disabled):focus .q-checkbox__inner:before,body.desktop .q-checkbox--dense:not(.disabled):hover .q-checkbox__inner:before{transform:scale3d(1.4,1.4,1)}.q-chip{vertical-align:middle;border-radius:16px;outline:0;position:relative;height:2em;max-width:100%;margin:4px;background:#e0e0e0;color:#000000de;font-size:14px;padding:.5em .9em}.q-chip--colored .q-chip__icon,.q-chip--dark .q-chip__icon{color:inherit}.q-chip--outline{background:transparent!important;border:1px solid currentColor}.q-chip .q-avatar{font-size:2em;margin-left:-.45em;margin-right:.2em;border-radius:16px}.q-chip--selected .q-avatar{display:none}.q-chip__icon{color:#0000008a;font-size:1.5em;margin:-.2em}.q-chip__icon--left{margin-right:.2em}.q-chip__icon--right{margin-left:.2em}.q-chip__icon--remove{margin-left:.1em;margin-right:-.5em;opacity:.6;outline:0}.q-chip__icon--remove:hover,.q-chip__icon--remove:focus{opacity:1}.q-chip__content{white-space:nowrap}.q-chip--dense{border-radius:12px;padding:0 .4em;height:1.5em}.q-chip--dense .q-avatar{font-size:1.5em;margin-left:-.27em;margin-right:.1em;border-radius:12px}.q-chip--dense .q-chip__icon{font-size:1.25em}.q-chip--dense .q-chip__icon--left{margin-right:.195em}.q-chip--dense .q-chip__icon--remove{margin-right:-.25em}.q-chip--square{border-radius:4px}.q-chip--square .q-avatar{border-radius:3px 0 0 3px}body.desktop .q-chip--clickable:focus{box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f}body.desktop.body--dark .q-chip--clickable:focus{box-shadow:0 1px 3px #fff3,0 1px 1px #ffffff24,0 2px 1px -1px #ffffff1f}.q-circular-progress{display:inline-block;position:relative;vertical-align:middle;width:1em;height:1em;line-height:1}.q-circular-progress.q-focusable{border-radius:50%}.q-circular-progress__svg{width:100%;height:100%}.q-circular-progress__text{font-size:.25em}.q-circular-progress--indeterminate .q-circular-progress__svg{transform-origin:50% 50%;animation:q-spin 2s linear infinite}.q-circular-progress--indeterminate .q-circular-progress__circle{stroke-dasharray:1 400;stroke-dashoffset:0;animation:q-circular-progress-circle 1.5s ease-in-out infinite}@keyframes q-circular-progress-circle{0%{stroke-dasharray:1,400;stroke-dashoffset:0}50%{stroke-dasharray:400,400;stroke-dashoffset:-100}to{stroke-dasharray:400,400;stroke-dashoffset:-300}}.q-color-picker{overflow:hidden;background:#fff;max-width:350px;vertical-align:top;min-width:180px;border-radius:4px;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f}.q-color-picker .q-tab{padding:0!important}.q-color-picker--bordered{border:1px solid rgba(0,0,0,.12)}.q-color-picker__header-tabs{height:32px}.q-color-picker__header input{line-height:24px;border:0}.q-color-picker__header .q-tab{min-height:32px!important;height:32px!important}.q-color-picker__header .q-tab--inactive{background:linear-gradient(to top,rgba(0,0,0,.3) 0%,rgba(0,0,0,.15) 25%,rgba(0,0,0,.1))}.q-color-picker__error-icon{bottom:2px;right:2px;font-size:24px;opacity:0;transition:opacity .3s ease-in}.q-color-picker__header-content{position:relative;background:#fff}.q-color-picker__header-content--light{color:#000}.q-color-picker__header-content--dark{color:#fff}.q-color-picker__header-content--dark .q-tab--inactive:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(255,255,255,.2)}.q-color-picker__header-banner{height:36px}.q-color-picker__header-bg{background:#fff;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAH0lEQVQoU2NkYGAwZkAFZ5G5jPRRgOYEVDeB3EBjBQBOZwTVugIGyAAAAABJRU5ErkJggg==)!important}.q-color-picker__footer{height:36px}.q-color-picker__footer .q-tab{min-height:36px!important;height:36px!important}.q-color-picker__footer .q-tab--inactive{background:linear-gradient(to bottom,rgba(0,0,0,.3) 0%,rgba(0,0,0,.15) 25%,rgba(0,0,0,.1))}.q-color-picker__spectrum{width:100%;height:100%}.q-color-picker__spectrum-tab{padding:0!important}.q-color-picker__spectrum-white{background:linear-gradient(to right,#fff,rgba(255,255,255,0))}.q-color-picker__spectrum-black{background:linear-gradient(to top,#000,rgba(0,0,0,0))}.q-color-picker__spectrum-circle{width:10px;height:10px;box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px #0000004d,0 0 1px 2px #0006;border-radius:50%;transform:translate(-5px,-5px)}.q-color-picker__hue .q-slider__track{background:linear-gradient(to right,#f00 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,#f00 100%)!important;opacity:1}.q-color-picker__alpha .q-slider__track-container{padding-top:0}.q-color-picker__alpha .q-slider__track:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(90deg,rgba(255,255,255,0),#757575)}.q-color-picker__sliders{padding:0 16px}.q-color-picker__sliders .q-slider__thumb{color:#424242}.q-color-picker__sliders .q-slider__thumb path{stroke-width:2px;fill:transparent}.q-color-picker__sliders .q-slider--active path{stroke-width:3px}.q-color-picker__tune-tab .q-slider{margin-left:18px;margin-right:18px}.q-color-picker__tune-tab input{font-size:11px;border:1px solid #e0e0e0;border-radius:4px;width:3.5em}.q-color-picker__palette-tab{padding:0!important}.q-color-picker__palette-rows--editable .q-color-picker__cube{cursor:pointer}.q-color-picker__cube{padding-bottom:10%;width:10%!important}.q-color-picker input{color:inherit;background:transparent;outline:0;text-align:center}.q-color-picker .q-tabs{overflow:hidden}.q-color-picker .q-tab--active{box-shadow:0 0 14px 3px #0003}.q-color-picker .q-tab--active .q-focus-helper,.q-color-picker .q-tab__indicator{display:none}.q-color-picker .q-tab-panels{background:inherit}.q-color-picker--dark{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-color-picker--dark .q-color-picker__tune-tab input{border:1px solid rgba(255,255,255,.3)}.q-color-picker--dark .q-slider__thumb{color:#fafafa}.q-date{display:inline-flex;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;background:#fff;width:290px;min-width:290px;max-width:100%}.q-date--bordered{border:1px solid rgba(0,0,0,.12)}.q-date__header{border-top-left-radius:inherit;color:#fff;background-color:var(--q-primary);padding:16px}.q-date__actions{padding:0 16px 16px}.q-date__content,.q-date__main{outline:0}.q-date__content .q-btn{font-weight:400}.q-date__header-link{opacity:.64;outline:0;transition:opacity .3s ease-out}.q-date__header-link--active,.q-date__header-link:hover,.q-date__header-link:focus{opacity:1}.q-date__header-subtitle{font-size:14px;line-height:1.75;letter-spacing:.00938em}.q-date__header-title-label{font-size:24px;line-height:1.2;letter-spacing:.00735em}.q-date__view{height:100%;width:100%;min-height:290px;padding:16px}.q-date__navigation{height:12.5%}.q-date__navigation>div:first-child{width:8%;min-width:24px;justify-content:flex-end}.q-date__navigation>div:last-child{width:8%;min-width:24px;justify-content:flex-start}.q-date__calendar-weekdays{height:12.5%}.q-date__calendar-weekdays>div{opacity:.38;font-size:12px}.q-date__calendar-item{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;width:14.285%!important;height:12.5%!important;position:relative;padding:1px}.q-date__calendar-item:after{content:"";position:absolute;pointer-events:none;top:1px;right:0;bottom:1px;left:0;border-style:dashed;border-color:transparent;border-width:1px}.q-date__calendar-item>div,.q-date__calendar-item button{width:30px;height:30px;border-radius:50%}.q-date__calendar-item>div{line-height:30px;text-align:center}.q-date__calendar-item>button{line-height:22px}.q-date__calendar-item--out{opacity:.18}.q-date__calendar-item--fill{visibility:hidden}.q-date__range:before,.q-date__range-from:before,.q-date__range-to:before{content:"";background-color:currentColor;position:absolute;top:1px;bottom:1px;left:0;right:0;opacity:.3}.q-date__range:nth-child(7n-6):before,.q-date__range-from:nth-child(7n-6):before,.q-date__range-to:nth-child(7n-6):before{border-top-left-radius:0;border-bottom-left-radius:0}.q-date__range:nth-child(7n):before,.q-date__range-from:nth-child(7n):before,.q-date__range-to:nth-child(7n):before{border-top-right-radius:0;border-bottom-right-radius:0}.q-date__range-from:before{left:50%}.q-date__range-to:before{right:50%}.q-date__edit-range:after{border-color:currentColor transparent}.q-date__edit-range:nth-child(7n-6):after{border-top-left-radius:0;border-bottom-left-radius:0}.q-date__edit-range:nth-child(7n):after{border-top-right-radius:0;border-bottom-right-radius:0}.q-date__edit-range-from:after,.q-date__edit-range-from-to:after{left:4px;border-left-color:currentColor;border-top-color:currentColor;border-bottom-color:currentColor;border-top-left-radius:28px;border-bottom-left-radius:28px}.q-date__edit-range-to:after,.q-date__edit-range-from-to:after{right:4px;border-right-color:currentColor;border-top-color:currentColor;border-bottom-color:currentColor;border-top-right-radius:28px;border-bottom-right-radius:28px}.q-date__calendar-days-container{height:75%;min-height:192px}.q-date__calendar-days>div{height:16.66%!important}.q-date__event{position:absolute;bottom:2px;left:50%;height:5px;width:8px;border-radius:5px;background-color:var(--q-secondary);transform:translate3d(-50%,0,0)}.q-date__today{box-shadow:0 0 1px 0 currentColor}.q-date__years-content{padding:0 8px}.q-date__years-item,.q-date__months-item{flex:0 0 33.3333%}.q-date.disabled .q-date__header,.q-date.disabled .q-date__content,.q-date--readonly .q-date__header,.q-date--readonly .q-date__content{pointer-events:none}.q-date--readonly .q-date__navigation{display:none}.q-date--portrait{flex-direction:column}.q-date--portrait-standard .q-date__content{height:calc(100% - 86px)}.q-date--portrait-standard .q-date__header{border-top-right-radius:inherit;height:86px}.q-date--portrait-standard .q-date__header-title{align-items:center;height:30px}.q-date--portrait-minimal .q-date__content{height:100%}.q-date--landscape{flex-direction:row;align-items:stretch;min-width:420px}.q-date--landscape>div{display:flex;flex-direction:column}.q-date--landscape .q-date__content{height:100%}.q-date--landscape-standard{min-width:420px}.q-date--landscape-standard .q-date__header{border-bottom-left-radius:inherit;min-width:110px;width:110px}.q-date--landscape-standard .q-date__header-title{flex-direction:column}.q-date--landscape-standard .q-date__header-today{margin-top:12px;margin-left:-8px}.q-date--landscape-minimal{width:310px}.q-date--dark{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f;border-color:#ffffff47}.q-dialog__title{font-size:1.25rem;font-weight:500;line-height:2rem;letter-spacing:.0125em}.q-dialog__progress{font-size:4rem}.q-dialog__inner{outline:0}.q-dialog__inner>div{pointer-events:all;overflow:auto;-webkit-overflow-scrolling:touch;will-change:scroll-position;border-radius:4px}.q-dialog__inner--square>div{border-radius:0!important}.q-dialog__inner>.q-card>.q-card__actions .q-btn--rectangle{min-width:64px}.q-dialog__inner--minimized{padding:24px}.q-dialog__inner--minimized>div{max-height:calc(100vh - 48px)}.q-dialog__inner--maximized>div{height:100%;width:100%;max-height:100vh;max-width:100vw;border-radius:0!important;top:0!important;left:0!important}.q-dialog__inner--top,.q-dialog__inner--bottom{padding-top:0!important;padding-bottom:0!important}.q-dialog__inner--right,.q-dialog__inner--left{padding-right:0!important;padding-left:0!important}.q-dialog__inner--left:not(.q-dialog__inner--animating)>div,.q-dialog__inner--top:not(.q-dialog__inner--animating)>div{border-top-left-radius:0}.q-dialog__inner--right:not(.q-dialog__inner--animating)>div,.q-dialog__inner--top:not(.q-dialog__inner--animating)>div{border-top-right-radius:0}.q-dialog__inner--left:not(.q-dialog__inner--animating)>div,.q-dialog__inner--bottom:not(.q-dialog__inner--animating)>div{border-bottom-left-radius:0}.q-dialog__inner--right:not(.q-dialog__inner--animating)>div,.q-dialog__inner--bottom:not(.q-dialog__inner--animating)>div{border-bottom-right-radius:0}.q-dialog__inner--fullwidth>div{width:100%!important;max-width:100%!important}.q-dialog__inner--fullheight>div{height:100%!important;max-height:100%!important}.q-dialog__backdrop{z-index:-1;pointer-events:all;outline:0;background:rgba(0,0,0,.4)}body.platform-ios .q-dialog__inner--minimized>div,body.platform-android:not(.native-mobile) .q-dialog__inner--minimized>div{max-height:calc(100vh - 108px)}body.q-ios-padding .q-dialog__inner{padding-top:20px!important;padding-top:env(safe-area-inset-top)!important;padding-bottom:env(safe-area-inset-bottom)!important}body.q-ios-padding .q-dialog__inner>div{max-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom))!important}@media (max-width: 599.98px){.q-dialog__inner--top,.q-dialog__inner--bottom{padding-left:0;padding-right:0}.q-dialog__inner--top>div,.q-dialog__inner--bottom>div{width:100%!important}}@media (min-width: 600px){.q-dialog__inner--minimized>div{max-width:560px}}.q-body--dialog{overflow:hidden}.q-bottom-sheet{padding-bottom:8px}.q-bottom-sheet__avatar{border-radius:50%}.q-bottom-sheet--list{width:400px}.q-bottom-sheet--list .q-icon,.q-bottom-sheet--list img{font-size:24px;width:24px;height:24px}.q-bottom-sheet--grid{width:700px}.q-bottom-sheet--grid .q-bottom-sheet__item{padding:8px;text-align:center;min-width:100px}.q-bottom-sheet--grid .q-icon,.q-bottom-sheet--grid img,.q-bottom-sheet--grid .q-bottom-sheet__empty-icon{font-size:48px;width:48px;height:48px;margin-bottom:8px}.q-bottom-sheet--grid .q-separator{margin:12px 0}.q-bottom-sheet__item{flex:0 0 33.3333%}@media (min-width: 600px){.q-bottom-sheet__item{flex:0 0 25%}}.q-dialog-plugin{width:400px}.q-dialog-plugin__form{max-height:50vh}.q-dialog-plugin .q-card__section+.q-card__section{padding-top:0}.q-dialog-plugin--progress{text-align:center}.q-editor{border:1px solid rgba(0,0,0,.12);border-radius:4px;background-color:#fff}.q-editor.disabled{border-style:dashed}.q-editor>div:first-child,.q-editor__toolbars-container,.q-editor__toolbars-container>div:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.q-editor__content{outline:0;padding:10px;min-height:10em;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;overflow:auto;max-width:100%}.q-editor__content pre{white-space:pre-wrap}.q-editor__content hr{border:0;outline:0;margin:1px;height:1px;background:rgba(0,0,0,.12)}.q-editor__content:empty:not(:focus):before{content:attr(placeholder);opacity:.7}.q-editor__toolbar{border-bottom:1px solid rgba(0,0,0,.12);min-height:32px}.q-editor__toolbars-container{max-width:100%}.q-editor .q-btn{margin:4px}.q-editor__toolbar-group{position:relative;margin:0 4px}.q-editor__toolbar-group+.q-editor__toolbar-group:before{content:"";position:absolute;left:-4px;top:4px;bottom:4px;width:1px;background:rgba(0,0,0,.12)}.q-editor__link-input{color:inherit;text-decoration:none;text-transform:none;border:none;border-radius:0;background:none;outline:0}.q-editor--flat,.q-editor--flat .q-editor__toolbar{border:0}.q-editor--dense .q-editor__toolbar-group{display:flex;align-items:center;flex-wrap:nowrap}.q-editor--dark{border-color:#ffffff47}.q-editor--dark .q-editor__content hr{background:rgba(255,255,255,.28)}.q-editor--dark .q-editor__toolbar{border-color:#ffffff47}.q-editor--dark .q-editor__toolbar-group+.q-editor__toolbar-group:before{background:rgba(255,255,255,.28)}.q-expansion-item__border{opacity:0}.q-expansion-item__toggle-icon{position:relative;transition:transform .3s}.q-expansion-item__toggle-icon--rotated{transform:rotate(180deg)}.q-expansion-item__toggle-focus{width:1em!important;height:1em!important;position:relative!important}.q-expansion-item__toggle-focus+.q-expansion-item__toggle-icon{margin-top:-1em}.q-expansion-item--standard.q-expansion-item--expanded>div>.q-expansion-item__border{opacity:1}.q-expansion-item--popup{transition:padding .5s}.q-expansion-item--popup>.q-expansion-item__container{border:1px solid rgba(0,0,0,.12)}.q-expansion-item--popup>.q-expansion-item__container>.q-separator{display:none}.q-expansion-item--popup.q-expansion-item--collapsed{padding:0 15px}.q-expansion-item--popup.q-expansion-item--expanded{padding:15px 0}.q-expansion-item--popup.q-expansion-item--expanded+.q-expansion-item--popup.q-expansion-item--expanded{padding-top:0}.q-expansion-item--popup.q-expansion-item--collapsed:not(:first-child)>.q-expansion-item__container{border-top-width:0}.q-expansion-item--popup.q-expansion-item--expanded+.q-expansion-item--popup.q-expansion-item--collapsed>.q-expansion-item__container{border-top-width:1px}.q-expansion-item__content>.q-card{box-shadow:none;border-radius:0}.q-expansion-item:first-child>div>.q-expansion-item__border--top{opacity:0}.q-expansion-item:last-child>div>.q-expansion-item__border--bottom{opacity:0}.q-expansion-item--expanded+.q-expansion-item--expanded>div>.q-expansion-item__border--top{opacity:0}.q-expansion-item--expanded .q-textarea--autogrow textarea{animation:q-expansion-done 0s}@keyframes q-expansion-done{0%{--q-exp-done: 1}}.z-fab{z-index:990}.q-fab{position:relative;vertical-align:middle}.q-fab>.q-btn{width:100%}.q-fab--form-rounded{border-radius:28px}.q-fab--form-square{border-radius:4px}.q-fab__icon,.q-fab__active-icon{transition:opacity .4s,transform .4s}.q-fab__icon{opacity:1;transform:rotate(0)}.q-fab__active-icon{opacity:0;transform:rotate(-180deg)}.q-fab__label--external{position:absolute;padding:0 8px;transition:opacity .18s cubic-bezier(.65,.815,.735,.395)}.q-fab__label--external-hidden{opacity:0;pointer-events:none}.q-fab__label--external-left{top:50%;left:-12px;transform:translate(-100%,-50%)}.q-fab__label--external-right{top:50%;right:-12px;transform:translate(100%,-50%)}.q-fab__label--external-bottom{bottom:-12px;left:50%;transform:translate(-50%,100%)}.q-fab__label--external-top{top:-12px;left:50%;transform:translate(-50%,-100%)}.q-fab__label--internal{padding:0;transition:font-size .12s cubic-bezier(.65,.815,.735,.395),max-height .12s cubic-bezier(.65,.815,.735,.395),opacity .07s cubic-bezier(.65,.815,.735,.395);max-height:30px}.q-fab__label--internal-hidden{font-size:0;opacity:0}.q-fab__label--internal-top{padding-bottom:.12em}.q-fab__label--internal-bottom{padding-top:.12em}.q-fab__label--internal-top.q-fab__label--internal-hidden,.q-fab__label--internal-bottom.q-fab__label--internal-hidden{max-height:0}.q-fab__label--internal-left{padding-left:.285em;padding-right:.571em}.q-fab__label--internal-right{padding-right:.285em;padding-left:.571em}.q-fab__icon-holder{min-width:24px;min-height:24px;position:relative}.q-fab__icon-holder--opened .q-fab__icon{transform:rotate(180deg);opacity:0}.q-fab__icon-holder--opened .q-fab__active-icon{transform:rotate(0);opacity:1}.q-fab__actions{position:absolute;opacity:0;transition:transform .18s ease-in,opacity .18s ease-in;pointer-events:none;align-items:center;justify-content:center;align-self:center;padding:3px}.q-fab__actions .q-btn{margin:5px}.q-fab__actions--right{transform-origin:0 50%;transform:scale(.4) translate(-62px);height:56px;left:100%;margin-left:9px}.q-fab__actions--left{transform-origin:100% 50%;transform:scale(.4) translate(62px);height:56px;right:100%;margin-right:9px;flex-direction:row-reverse}.q-fab__actions--up{transform-origin:50% 100%;transform:scale(.4) translateY(62px);width:56px;bottom:100%;margin-bottom:9px;flex-direction:column-reverse}.q-fab__actions--down{transform-origin:50% 0;transform:scale(.4) translateY(-62px);width:56px;top:100%;margin-top:9px;flex-direction:column}.q-fab__actions--up,.q-fab__actions--down{left:50%;margin-left:-28px}.q-fab__actions--opened{opacity:1;transform:scale(1) translate(.1px);pointer-events:all}.q-fab--align-left>.q-fab__actions--up,.q-fab--align-left>.q-fab__actions--down{align-items:flex-start;left:28px}.q-fab--align-right>.q-fab__actions--up,.q-fab--align-right>.q-fab__actions--down{align-items:flex-end;left:auto;right:0}.q-field{font-size:14px}.q-field ::-ms-clear,.q-field ::-ms-reveal{display:none}.q-field--with-bottom{padding-bottom:20px}.q-field__marginal{height:56px;color:#0000008a;font-size:24px}.q-field__marginal>*+*{margin-left:2px}.q-field__marginal .q-avatar{font-size:32px}.q-field__before,.q-field__prepend{padding-right:12px}.q-field__after,.q-field__append{padding-left:12px}.q-field__after:empty,.q-field__append:empty{display:none}.q-field__append+.q-field__append{padding-left:2px}.q-field__inner{text-align:left}.q-field__bottom{font-size:12px;min-height:20px;line-height:1;color:#0000008a;padding:8px 12px 0;backface-visibility:hidden}.q-field__bottom--animated{transform:translateY(100%);position:absolute;left:0;right:0;bottom:0}.q-field__messages{line-height:1}.q-field__messages>div{word-break:break-word;word-wrap:break-word;overflow-wrap:break-word}.q-field__messages>div+div{margin-top:4px}.q-field__counter{padding-left:8px;line-height:1}.q-field--item-aligned{padding:8px 16px}.q-field--item-aligned .q-field__before{min-width:56px}.q-field__control-container{height:inherit}.q-field__control{color:var(--q-primary);height:56px;max-width:100%;outline:none}.q-field__control:before,.q-field__control:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.q-field__control:before{border-radius:inherit}.q-field__shadow{top:8px;opacity:0;overflow:hidden;white-space:pre-wrap;transition:opacity .36s cubic-bezier(.4,0,.2,1)}.q-field__shadow+.q-field__native::placeholder{transition:opacity .36s cubic-bezier(.4,0,.2,1)}.q-field__shadow+.q-field__native:focus::placeholder{opacity:0}.q-field__native,.q-field__prefix,.q-field__suffix,.q-field__input{font-weight:400;line-height:28px;letter-spacing:.00937em;text-decoration:inherit;text-transform:inherit;border:none;border-radius:0;background:none;color:#000000de;outline:0;padding:6px 0}.q-field__native,.q-field__input{width:100%;min-width:0;outline:0!important;-webkit-user-select:auto;user-select:auto}.q-field__native:-webkit-autofill,.q-field__input:-webkit-autofill{-webkit-animation-name:q-autofill;-webkit-animation-fill-mode:both}.q-field__native:-webkit-autofill+.q-field__label,.q-field__input:-webkit-autofill+.q-field__label{transform:translateY(-40%) scale(.75)}.q-field__native[type=color]+.q-field__label,.q-field__native[type=date]+.q-field__label,.q-field__native[type=datetime-local]+.q-field__label,.q-field__native[type=month]+.q-field__label,.q-field__native[type=time]+.q-field__label,.q-field__native[type=week]+.q-field__label,.q-field__input[type=color]+.q-field__label,.q-field__input[type=date]+.q-field__label,.q-field__input[type=datetime-local]+.q-field__label,.q-field__input[type=month]+.q-field__label,.q-field__input[type=time]+.q-field__label,.q-field__input[type=week]+.q-field__label{transform:translateY(-40%) scale(.75)}.q-field__native:invalid,.q-field__input:invalid{box-shadow:none}.q-field__native[type=file]{line-height:1em}.q-field__input{padding:0;height:0;min-height:24px;line-height:24px}.q-field__prefix,.q-field__suffix{transition:opacity .36s cubic-bezier(.4,0,.2,1);white-space:nowrap}.q-field__prefix{padding-right:4px}.q-field__suffix{padding-left:4px}.q-field--readonly .q-placeholder,.q-field--disabled .q-placeholder{opacity:1!important}.q-field--readonly.q-field--labeled .q-field__native,.q-field--readonly.q-field--labeled .q-field__input{cursor:default}.q-field--readonly.q-field--float .q-field__native,.q-field--readonly.q-field--float .q-field__input{cursor:text}.q-field--disabled .q-field__inner{cursor:not-allowed}.q-field--disabled .q-field__control{pointer-events:none}.q-field--disabled .q-field__control>div{opacity:.6!important}.q-field--disabled .q-field__control>div,.q-field--disabled .q-field__control>div *{outline:0!important}.q-field__label{left:0;top:18px;max-width:100%;color:#0009;font-size:16px;line-height:20px;font-weight:400;letter-spacing:.00937em;text-decoration:inherit;text-transform:inherit;transform-origin:left top;transition:transform .36s cubic-bezier(.4,0,.2,1),max-width .324s cubic-bezier(.4,0,.2,1);backface-visibility:hidden}.q-field--float .q-field__label{max-width:133%;transform:translateY(-40%) scale(.75);transition:transform .36s cubic-bezier(.4,0,.2,1),max-width .396s cubic-bezier(.4,0,.2,1)}.q-field--highlighted .q-field__label{color:currentColor}.q-field--highlighted .q-field__shadow{opacity:.5}.q-field--filled .q-field__control{padding:0 12px;background:rgba(0,0,0,.05);border-radius:4px 4px 0 0}.q-field--filled .q-field__control:before{background:rgba(0,0,0,.05);border-bottom:1px solid rgba(0,0,0,.42);opacity:0;transition:opacity .36s cubic-bezier(.4,0,.2,1),background .36s cubic-bezier(.4,0,.2,1)}.q-field--filled .q-field__control:hover:before{opacity:1}.q-field--filled .q-field__control:after{height:2px;top:auto;transform-origin:center bottom;transform:scale3d(0,1,1);background:currentColor;transition:transform .36s cubic-bezier(.4,0,.2,1)}.q-field--filled.q-field--rounded .q-field__control{border-radius:28px 28px 0 0}.q-field--filled.q-field--highlighted .q-field__control:before{opacity:1;background:rgba(0,0,0,.12)}.q-field--filled.q-field--highlighted .q-field__control:after{transform:scaleZ(1)}.q-field--filled.q-field--dark .q-field__control,.q-field--filled.q-field--dark .q-field__control:before{background:rgba(255,255,255,.07)}.q-field--filled.q-field--dark.q-field--highlighted .q-field__control:before{background:rgba(255,255,255,.1)}.q-field--filled.q-field--readonly .q-field__control:before{opacity:1;background:transparent;border-bottom-style:dashed}.q-field--outlined .q-field__control{border-radius:4px;padding:0 12px}.q-field--outlined .q-field__control:before{border:1px solid rgba(0,0,0,.24);transition:border-color .36s cubic-bezier(.4,0,.2,1)}.q-field--outlined .q-field__control:hover:before{border-color:#000}.q-field--outlined .q-field__control:after{height:inherit;border-radius:inherit;border:2px solid transparent;transition:border-color .36s cubic-bezier(.4,0,.2,1)}.q-field--outlined .q-field__native:-webkit-autofill,.q-field--outlined .q-field__input:-webkit-autofill{margin-top:1px;margin-bottom:1px}.q-field--outlined.q-field--rounded .q-field__control{border-radius:28px}.q-field--outlined.q-field--highlighted .q-field__control:hover:before{border-color:transparent}.q-field--outlined.q-field--highlighted .q-field__control:after{border-color:currentColor;border-width:2px;transform:scaleZ(1)}.q-field--outlined.q-field--readonly .q-field__control:before{border-style:dashed}.q-field--standard .q-field__control:before{border-bottom:1px solid rgba(0,0,0,.24);transition:border-color .36s cubic-bezier(.4,0,.2,1)}.q-field--standard .q-field__control:hover:before{border-color:#000}.q-field--standard .q-field__control:after{height:2px;top:auto;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;transform-origin:center bottom;transform:scale3d(0,1,1);background:currentColor;transition:transform .36s cubic-bezier(.4,0,.2,1)}.q-field--standard.q-field--highlighted .q-field__control:after{transform:scaleZ(1)}.q-field--standard.q-field--readonly .q-field__control:before{border-bottom-style:dashed}.q-field--dark .q-field__control:before{border-color:#fff9}.q-field--dark .q-field__control:hover:before{border-color:#fff}.q-field--dark .q-field__native,.q-field--dark .q-field__prefix,.q-field--dark .q-field__suffix,.q-field--dark .q-field__input{color:#fff}.q-field--dark:not(.q-field--highlighted) .q-field__label,.q-field--dark .q-field__marginal,.q-field--dark .q-field__bottom{color:#ffffffb3}.q-field--standout .q-field__control{padding:0 12px;background:rgba(0,0,0,.05);border-radius:4px;transition:box-shadow .36s cubic-bezier(.4,0,.2,1),background-color .36s cubic-bezier(.4,0,.2,1)}.q-field--standout .q-field__control:before{background:rgba(0,0,0,.07);opacity:0;transition:opacity .36s cubic-bezier(.4,0,.2,1),background .36s cubic-bezier(.4,0,.2,1)}.q-field--standout .q-field__control:hover:before{opacity:1}.q-field--standout.q-field--rounded .q-field__control{border-radius:28px}.q-field--standout.q-field--highlighted .q-field__control{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;background:#000}.q-field--standout.q-field--highlighted .q-field__native,.q-field--standout.q-field--highlighted .q-field__prefix,.q-field--standout.q-field--highlighted .q-field__suffix,.q-field--standout.q-field--highlighted .q-field__prepend,.q-field--standout.q-field--highlighted .q-field__append,.q-field--standout.q-field--highlighted .q-field__input{color:#fff}.q-field--standout.q-field--readonly .q-field__control:before{opacity:1;background:transparent;border:1px dashed rgba(0,0,0,.24)}.q-field--standout.q-field--dark .q-field__control{background:rgba(255,255,255,.07)}.q-field--standout.q-field--dark .q-field__control:before{background:rgba(255,255,255,.07)}.q-field--standout.q-field--dark.q-field--highlighted .q-field__control{background:#fff}.q-field--standout.q-field--dark.q-field--highlighted .q-field__native,.q-field--standout.q-field--dark.q-field--highlighted .q-field__prefix,.q-field--standout.q-field--dark.q-field--highlighted .q-field__suffix,.q-field--standout.q-field--dark.q-field--highlighted .q-field__prepend,.q-field--standout.q-field--dark.q-field--highlighted .q-field__append,.q-field--standout.q-field--dark.q-field--highlighted .q-field__input{color:#000}.q-field--standout.q-field--dark.q-field--readonly .q-field__control:before{border-color:#ffffff3d}.q-field--labeled .q-field__native,.q-field--labeled .q-field__prefix,.q-field--labeled .q-field__suffix{line-height:24px;padding-top:24px;padding-bottom:8px}.q-field--labeled .q-field__shadow{top:0}.q-field--labeled:not(.q-field--float) .q-field__prefix,.q-field--labeled:not(.q-field--float) .q-field__suffix{opacity:0}.q-field--labeled:not(.q-field--float) .q-field__native::placeholder,.q-field--labeled:not(.q-field--float) .q-field__input::placeholder{color:transparent}.q-field--labeled.q-field--dense .q-field__native,.q-field--labeled.q-field--dense .q-field__prefix,.q-field--labeled.q-field--dense .q-field__suffix{padding-top:14px;padding-bottom:2px}.q-field--dense .q-field__shadow{top:0}.q-field--dense .q-field__control,.q-field--dense .q-field__marginal{height:40px}.q-field--dense .q-field__bottom{font-size:11px}.q-field--dense .q-field__label{font-size:14px;top:10px}.q-field--dense .q-field__before,.q-field--dense .q-field__prepend{padding-right:6px}.q-field--dense .q-field__after,.q-field--dense .q-field__append{padding-left:6px}.q-field--dense .q-field__append+.q-field__append{padding-left:2px}.q-field--dense .q-field__marginal .q-avatar{font-size:24px}.q-field--dense.q-field--float .q-field__label{transform:translateY(-30%) scale(.75)}.q-field--dense .q-field__native:-webkit-autofill+.q-field__label,.q-field--dense .q-field__input:-webkit-autofill+.q-field__label{transform:translateY(-30%) scale(.75)}.q-field--dense .q-field__native[type=color]+.q-field__label,.q-field--dense .q-field__native[type=date]+.q-field__label,.q-field--dense .q-field__native[type=datetime-local]+.q-field__label,.q-field--dense .q-field__native[type=month]+.q-field__label,.q-field--dense .q-field__native[type=time]+.q-field__label,.q-field--dense .q-field__native[type=week]+.q-field__label,.q-field--dense .q-field__input[type=color]+.q-field__label,.q-field--dense .q-field__input[type=date]+.q-field__label,.q-field--dense .q-field__input[type=datetime-local]+.q-field__label,.q-field--dense .q-field__input[type=month]+.q-field__label,.q-field--dense .q-field__input[type=time]+.q-field__label,.q-field--dense .q-field__input[type=week]+.q-field__label{transform:translateY(-30%) scale(.75)}.q-field--borderless .q-field__bottom,.q-field--borderless.q-field--dense .q-field__control,.q-field--standard .q-field__bottom,.q-field--standard.q-field--dense .q-field__control{padding-left:0;padding-right:0}.q-field--error .q-field__label{animation:q-field-label .36s}.q-field--error .q-field__bottom{color:var(--q-negative)}.q-field__focusable-action{opacity:.6;cursor:pointer;outline:0!important;border:0;color:inherit;background:transparent;padding:0}.q-field__focusable-action:hover,.q-field__focusable-action:focus{opacity:1}.q-field--auto-height .q-field__control{height:auto}.q-field--auto-height .q-field__control,.q-field--auto-height .q-field__native{min-height:56px}.q-field--auto-height .q-field__native{align-items:center}.q-field--auto-height .q-field__control-container{padding-top:0}.q-field--auto-height .q-field__native,.q-field--auto-height .q-field__prefix,.q-field--auto-height .q-field__suffix{line-height:18px}.q-field--auto-height.q-field--labeled .q-field__control-container{padding-top:24px}.q-field--auto-height.q-field--labeled .q-field__shadow{top:24px}.q-field--auto-height.q-field--labeled .q-field__native,.q-field--auto-height.q-field--labeled .q-field__prefix,.q-field--auto-height.q-field--labeled .q-field__suffix{padding-top:0}.q-field--auto-height.q-field--labeled .q-field__native{min-height:24px}.q-field--auto-height.q-field--dense .q-field__control,.q-field--auto-height.q-field--dense .q-field__native{min-height:40px}.q-field--auto-height.q-field--dense.q-field--labeled .q-field__control-container{padding-top:14px}.q-field--auto-height.q-field--dense.q-field--labeled .q-field__shadow{top:14px}.q-field--auto-height.q-field--dense.q-field--labeled .q-field__native{min-height:24px}.q-field--square .q-field__control{border-radius:0!important}.q-transition--field-message-enter-active,.q-transition--field-message-leave-active{transition:transform .6s cubic-bezier(.86,0,.07,1),opacity .6s cubic-bezier(.86,0,.07,1)}.q-transition--field-message-enter-from,.q-transition--field-message-leave-to{opacity:0;transform:translateY(-10px)}.q-transition--field-message-leave-from,.q-transition--field-message-leave-active{position:absolute}@keyframes q-field-label{40%{margin-left:2px}60%,80%{margin-left:-2px}70%,90%{margin-left:2px}}@keyframes q-autofill{to{background:transparent;color:inherit}}.q-file .q-field__native{word-break:break-all;overflow:hidden}.q-file .q-field__input{opacity:0!important}.q-file .q-field__input::-webkit-file-upload-button{cursor:pointer}.q-file__filler{visibility:hidden;width:100%;border:none;padding:0}.q-file__dnd{outline:1px dashed currentColor;outline-offset:-4px}.q-form{position:relative}.q-img{position:relative;width:100%;display:inline-block;vertical-align:middle;overflow:hidden}.q-img__loading .q-spinner{font-size:50px}.q-img__container{border-radius:inherit;font-size:0}.q-img__image{border-radius:inherit;width:100%;height:100%;opacity:0}.q-img__image--with-transition{transition:opacity .28s ease-in}.q-img__image--loaded{opacity:1}.q-img__content{border-radius:inherit;pointer-events:none}.q-img__content>div{pointer-events:all;position:absolute;padding:16px;color:#fff;background:rgba(0,0,0,.47)}.q-img--no-menu .q-img__image,.q-img--no-menu .q-img__placeholder{pointer-events:none}.q-inner-loading{background:rgba(255,255,255,.6)}.q-inner-loading--dark{background:rgba(0,0,0,.4)}.q-inner-loading__label{margin-top:8px}.q-textarea .q-field__control{min-height:56px;height:auto}.q-textarea .q-field__control-container{padding-top:2px;padding-bottom:2px}.q-textarea .q-field__shadow{top:2px;bottom:2px}.q-textarea .q-field__native,.q-textarea .q-field__prefix,.q-textarea .q-field__suffix{line-height:18px}.q-textarea .q-field__native{resize:vertical;padding-top:17px;min-height:52px}.q-textarea.q-field--labeled .q-field__control-container{padding-top:26px}.q-textarea.q-field--labeled .q-field__shadow{top:26px}.q-textarea.q-field--labeled .q-field__native,.q-textarea.q-field--labeled .q-field__prefix,.q-textarea.q-field--labeled .q-field__suffix{padding-top:0}.q-textarea.q-field--labeled .q-field__native{min-height:26px;padding-top:1px}.q-textarea--autogrow .q-field__native{resize:none}.q-textarea.q-field--dense .q-field__control,.q-textarea.q-field--dense .q-field__native{min-height:36px}.q-textarea.q-field--dense .q-field__native{padding-top:9px}.q-textarea.q-field--dense.q-field--labeled .q-field__control-container{padding-top:14px}.q-textarea.q-field--dense.q-field--labeled .q-field__shadow{top:14px}.q-textarea.q-field--dense.q-field--labeled .q-field__native{min-height:24px;padding-top:3px}.q-textarea.q-field--dense.q-field--labeled .q-field__prefix,.q-textarea.q-field--dense.q-field--labeled .q-field__suffix{padding-top:2px}body.mobile .q-textarea .q-field__native,.q-textarea.disabled .q-field__native{resize:none}.q-intersection{position:relative}.q-item{min-height:48px;padding:8px 16px;color:inherit;transition:color .3s,background-color .3s}.q-item__section--side{color:#757575;align-items:flex-start;padding-right:16px;width:auto;min-width:0;max-width:100%}.q-item__section--side>.q-icon{font-size:24px}.q-item__section--side>.q-avatar{font-size:40px}.q-item__section--avatar{color:inherit;min-width:56px}.q-item__section--thumbnail img{width:100px;height:56px}.q-item__section--nowrap{white-space:nowrap}.q-item>.q-item__section--thumbnail:first-child,.q-item>.q-focus-helper+.q-item__section--thumbnail{margin-left:-16px}.q-item>.q-item__section--thumbnail:last-of-type{margin-right:-16px}.q-item__label{line-height:1.2em!important;max-width:100%}.q-item__label--overline{color:#000000b3}.q-item__label--caption{color:#0000008a}.q-item__label--header{color:#757575;padding:16px;font-size:.875rem;line-height:1.25rem;letter-spacing:.01786em}.q-separator--spaced+.q-item__label--header,.q-list--padding .q-item__label--header{padding-top:8px}.q-item__label+.q-item__label{margin-top:4px}.q-item__section--main{width:auto;min-width:0;max-width:100%;flex:10000 1 0%}.q-item__section--main+.q-item__section--main{margin-left:8px}.q-item__section--main~.q-item__section--side{align-items:flex-end;padding-right:0;padding-left:16px}.q-item__section--main.q-item__section--thumbnail{margin-left:0;margin-right:-16px}.q-list--bordered{border:1px solid rgba(0,0,0,.12)}.q-list--separator>.q-item-type+.q-item-type,.q-list--separator>.q-virtual-scroll__content>.q-item-type+.q-item-type{border-top:1px solid rgba(0,0,0,.12)}.q-list--padding{padding:8px 0}.q-list--dense>.q-item,.q-item--dense{min-height:32px;padding:2px 16px}.q-list--dark.q-list--separator>.q-item-type+.q-item-type,.q-list--dark.q-list--separator>.q-virtual-scroll__content>.q-item-type+.q-item-type{border-top-color:#ffffff47}.q-list--dark,.q-item--dark{color:#fff;border-color:#ffffff47}.q-list--dark .q-item__section--side:not(.q-item__section--avatar),.q-item--dark .q-item__section--side:not(.q-item__section--avatar){color:#ffffffb3}.q-list--dark .q-item__label--header,.q-item--dark .q-item__label--header{color:#ffffffa3}.q-list--dark .q-item__label--overline,.q-list--dark .q-item__label--caption,.q-item--dark .q-item__label--overline,.q-item--dark .q-item__label--caption{color:#fffc}.q-item{position:relative}.q-item.q-router-link--active,.q-item--active{color:var(--q-primary)}.q-knob{font-size:48px}.q-knob--editable{cursor:pointer;outline:0}.q-knob--editable:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;box-shadow:none;transition:box-shadow .24s ease-in-out}.q-knob--editable:focus:before{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f}body.body--dark .q-knob--editable:focus:before{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-layout{width:100%;outline:0}.q-layout-container{position:relative;width:100%;height:100%}.q-layout-container .q-layout{min-height:100%}.q-layout-container>div{transform:translateZ(0)}.q-layout-container>div>div{min-height:0;max-height:100%}.q-layout__shadow{width:100%}.q-layout__shadow:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:0 0 10px 2px #0003,0 0 10px #0000003d}.q-layout__section--marginal{background-color:var(--q-primary);color:#fff}.q-header--hidden{transform:translateY(-110%)}.q-header--bordered{border-bottom:1px solid rgba(0,0,0,.12)}.q-header .q-layout__shadow{bottom:-10px}.q-header .q-layout__shadow:after{bottom:10px}.q-footer--hidden{transform:translateY(110%)}.q-footer--bordered{border-top:1px solid rgba(0,0,0,.12)}.q-footer .q-layout__shadow{top:-10px}.q-footer .q-layout__shadow:after{top:10px}.q-header,.q-footer{z-index:2000}.q-drawer{position:absolute;top:0;bottom:0;background:#fff;z-index:1000}.q-drawer--on-top{z-index:3000}.q-drawer--left{left:0;transform:translate(-100%)}.q-drawer--left.q-drawer--bordered{border-right:1px solid rgba(0,0,0,.12)}.q-drawer--left .q-layout__shadow{left:10px;right:-10px}.q-drawer--left .q-layout__shadow:after{right:10px}.q-drawer--right{right:0;transform:translate(100%)}.q-drawer--right.q-drawer--bordered{border-left:1px solid rgba(0,0,0,.12)}.q-drawer--right .q-layout__shadow{left:-10px}.q-drawer--right .q-layout__shadow:after{left:10px}.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini{padding:0!important}.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item,.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__section{text-align:center;justify-content:center;padding-left:0;padding-right:0;min-width:0}.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__label,.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__section--main,.q-drawer-container:not(.q-drawer--mini-animate) .q-drawer--mini .q-item__section--side~.q-item__section--side{display:none}.q-drawer--mini .q-mini-drawer-hide,.q-drawer--mini .q-expansion-item__content{display:none}.q-drawer--mini-animate .q-drawer__content{overflow-x:hidden!important;white-space:nowrap}.q-drawer--standard .q-mini-drawer-only,.q-drawer--mobile .q-mini-drawer-only,.q-drawer--mobile .q-mini-drawer-hide{display:none}.q-drawer__backdrop{z-index:2999!important;will-change:background-color}.q-drawer__opener{z-index:2001;height:100%;width:15px;-webkit-user-select:none;user-select:none}.q-layout,.q-header,.q-footer,.q-page{position:relative}.q-page-sticky--shrink{pointer-events:none}.q-page-sticky--shrink>div{display:inline-block;pointer-events:auto}body.q-ios-padding .q-layout--standard .q-header>.q-toolbar:nth-child(1),body.q-ios-padding .q-layout--standard .q-header>.q-tabs:nth-child(1) .q-tabs-head,body.q-ios-padding .q-layout--standard .q-drawer--top-padding .q-drawer__content{padding-top:20px;min-height:70px;padding-top:env(safe-area-inset-top);min-height:calc(env(safe-area-inset-top) + 50px)}body.q-ios-padding .q-layout--standard .q-footer>.q-toolbar:last-child,body.q-ios-padding .q-layout--standard .q-footer>.q-tabs:last-child .q-tabs-head,body.q-ios-padding .q-layout--standard .q-drawer--top-padding .q-drawer__content{padding-bottom:env(safe-area-inset-bottom);min-height:calc(env(safe-area-inset-bottom) + 50px)}.q-body--layout-animate .q-drawer__backdrop{transition:background-color .12s!important}.q-body--layout-animate .q-drawer{transition:transform .12s,width .12s,top .12s,bottom .12s!important}.q-body--layout-animate .q-layout__section--marginal{transition:transform .12s,left .12s,right .12s!important}.q-body--layout-animate .q-page-container{transition:padding-top .12s,padding-right .12s,padding-bottom .12s,padding-left .12s!important}.q-body--layout-animate .q-page-sticky{transition:transform .12s,left .12s,right .12s,top .12s,bottom .12s!important}body:not(.q-body--layout-animate) .q-layout--prevent-focus{visibility:hidden}.q-body--drawer-toggle{overflow-x:hidden!important}@media (max-width: 599.98px){.q-layout-padding{padding:8px}}@media (min-width: 600px) and (max-width: 1439.98px){.q-layout-padding{padding:16px}}@media (min-width: 1440px){.q-layout-padding{padding:24px}}body.body--dark .q-header,body.body--dark .q-footer,body.body--dark .q-drawer{border-color:#ffffff47}body.body--dark .q-layout__shadow:after{box-shadow:0 0 10px 2px #fff3,0 0 10px #ffffff3d}body.platform-ios .q-layout--containerized{position:unset!important}.q-linear-progress{--q-linear-progress-speed: .3s;position:relative;width:100%;overflow:hidden;font-size:4px;height:1em;color:var(--q-primary);transform:scaleZ(1)}.q-linear-progress__model,.q-linear-progress__track{transform-origin:0 0}.q-linear-progress__model--with-transition,.q-linear-progress__track--with-transition{transition:transform var(--q-linear-progress-speed)}.q-linear-progress--reverse .q-linear-progress__model,.q-linear-progress--reverse .q-linear-progress__track{transform-origin:0 100%}.q-linear-progress__model--determinate{background:currentColor}.q-linear-progress__model--indeterminate,.q-linear-progress__model--query{transition:none}.q-linear-progress__model--indeterminate:before,.q-linear-progress__model--indeterminate:after,.q-linear-progress__model--query:before,.q-linear-progress__model--query:after{background:currentColor;content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:0 0}.q-linear-progress__model--indeterminate:before,.q-linear-progress__model--query:before{animation:q-linear-progress--indeterminate 2.1s cubic-bezier(.65,.815,.735,.395) infinite}.q-linear-progress__model--indeterminate:after,.q-linear-progress__model--query:after{transform:translate3d(-101%,0,0) scaleZ(1);animation:q-linear-progress--indeterminate-short 2.1s cubic-bezier(.165,.84,.44,1) infinite;animation-delay:1.15s}.q-linear-progress__track{opacity:.4}.q-linear-progress__track--light{background:rgba(0,0,0,.26)}.q-linear-progress__track--dark{background:rgba(255,255,255,.6)}.q-linear-progress__stripe{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,rgba(255,255,255,0) 25%,rgba(255,255,255,0) 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,rgba(255,255,255,0) 75%,rgba(255,255,255,0))!important;background-size:40px 40px!important}.q-linear-progress__stripe--with-transition{transition:width var(--q-linear-progress-speed)}@keyframes q-linear-progress--indeterminate{0%{transform:translate3d(-35%,0,0) scale3d(.35,1,1)}60%{transform:translate3d(100%,0,0) scale3d(.9,1,1)}to{transform:translate3d(100%,0,0) scale3d(.9,1,1)}}@keyframes q-linear-progress--indeterminate-short{0%{transform:translate3d(-101%,0,0) scaleZ(1)}60%{transform:translate3d(107%,0,0) scale3d(.01,1,1)}to{transform:translate3d(107%,0,0) scale3d(.01,1,1)}}.q-menu{position:fixed!important;display:inline-block;max-width:95vw;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;background:#fff;border-radius:4px;overflow-y:auto;overflow-x:hidden;outline:0;max-height:65vh;z-index:6000}.q-menu--square{border-radius:0}.q-menu--dark{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-option-group--inline>div{display:inline-block}.q-pagination input{text-align:center;-moz-appearance:textfield}.q-pagination input::-webkit-outer-spin-button,.q-pagination input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.q-pagination__content{--q-pagination-gutter-parent: -2px;--q-pagination-gutter-child: 2px;margin-top:var(--q-pagination-gutter-parent);margin-left:var(--q-pagination-gutter-parent)}.q-pagination__content>.q-btn,.q-pagination__content>.q-input,.q-pagination__middle>.q-btn{margin-top:var(--q-pagination-gutter-child);margin-left:var(--q-pagination-gutter-child)}.q-parallax{position:relative;width:100%;overflow:hidden;border-radius:inherit}.q-parallax__media>img,.q-parallax__media>video{position:absolute;left:50%;bottom:0;min-width:100%;min-height:100%;will-change:transform;display:none}.q-popup-edit{padding:8px 16px}.q-popup-edit__buttons{margin-top:8px}.q-popup-edit__buttons .q-btn+.q-btn{margin-left:8px}.q-pull-to-refresh{position:relative}.q-pull-to-refresh__puller{border-radius:50%;width:40px;height:40px;color:var(--q-primary);background:#fff;box-shadow:0 0 4px #0000004d}.q-pull-to-refresh__puller--animating{transition:transform .3s,opacity .3s}.q-radio{vertical-align:middle}.q-radio__native{width:1px;height:1px}.q-radio__bg,.q-radio__icon-container{-webkit-user-select:none;user-select:none}.q-radio__bg{top:25%;left:25%;width:50%;height:50%;-webkit-print-color-adjust:exact}.q-radio__bg path{fill:currentColor}.q-radio__icon{color:currentColor;font-size:.5em}.q-radio__check{transform-origin:50% 50%;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0,0,.2,1) 0ms}.q-radio__inner{font-size:40px;width:1em;min-width:1em;height:1em;outline:0;border-radius:50%;color:#0000008a}.q-radio__inner--truthy{color:var(--q-primary)}.q-radio__inner--truthy .q-radio__check{transform:scaleZ(1)}.q-radio.disabled{opacity:.75!important}.q-radio--dark .q-radio__inner{color:#ffffffb3}.q-radio--dark .q-radio__inner:before{opacity:.32!important}.q-radio--dark .q-radio__inner--truthy{color:var(--q-primary)}.q-radio--dense .q-radio__inner{width:.5em;min-width:.5em;height:.5em}.q-radio--dense .q-radio__bg{left:0;top:0;width:100%;height:100%}.q-radio--dense .q-radio__label{padding-left:.5em}.q-radio--dense.reverse .q-radio__label{padding-left:0;padding-right:.5em}body.desktop .q-radio:not(.disabled) .q-radio__inner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:currentColor;opacity:.12;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0,0,.2,1) 0ms}body.desktop .q-radio:not(.disabled):focus .q-radio__inner:before,body.desktop .q-radio:not(.disabled):hover .q-radio__inner:before{transform:scaleZ(1)}body.desktop .q-radio--dense:not(.disabled):focus .q-radio__inner:before,body.desktop .q-radio--dense:not(.disabled):hover .q-radio__inner:before{transform:scale3d(1.5,1.5,1)}.q-rating{color:#ffeb3b;vertical-align:middle}.q-rating__icon-container{height:1em;outline:0}.q-rating__icon-container+.q-rating__icon-container{margin-left:2px}.q-rating__icon{color:currentColor;text-shadow:0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24);position:relative;opacity:.4;transition:transform .2s ease-in,opacity .2s ease-in}.q-rating__icon--hovered{transform:scale(1.3)}.q-rating__icon--active{opacity:1}.q-rating__icon--exselected{opacity:.7}.q-rating--no-dimming .q-rating__icon{opacity:1}.q-rating--editable .q-rating__icon-container{cursor:pointer}.q-responsive{position:relative;max-width:100%;max-height:100%}.q-responsive__filler{width:inherit;max-width:inherit;height:inherit;max-height:inherit}.q-responsive__content{border-radius:inherit}.q-responsive__content>*{width:100%!important;height:100%!important;max-height:100%!important;max-width:100%!important}.q-scrollarea{position:relative;contain:strict}.q-scrollarea__bar,.q-scrollarea__thumb{opacity:.2;transition:opacity .3s;will-change:opacity;cursor:grab}.q-scrollarea__bar--v,.q-scrollarea__thumb--v{right:0;width:10px}.q-scrollarea__bar--h,.q-scrollarea__thumb--h{bottom:0;height:10px}.q-scrollarea__bar--invisible,.q-scrollarea__thumb--invisible{opacity:0!important;pointer-events:none}.q-scrollarea__thumb{background:#000;border-radius:3px}.q-scrollarea__thumb:hover{opacity:.3}.q-scrollarea__thumb:active{opacity:.5}.q-scrollarea__content{min-height:100%;min-width:100%}.q-scrollarea--dark .q-scrollarea__thumb{background:#fff}.q-select--without-input .q-field__control{cursor:pointer}.q-select--with-input .q-field__control{cursor:text}.q-select .q-field__input{min-width:50px!important;cursor:text}.q-select .q-field__input--padding{padding-left:4px}.q-select__focus-target,.q-select__autocomplete-input{position:absolute;outline:0!important;width:1px;height:1px;padding:0;border:0;opacity:0}.q-select__dropdown-icon{cursor:pointer;transition:transform .28s}.q-select.q-field--readonly .q-field__control,.q-select.q-field--readonly .q-select__dropdown-icon{cursor:default}.q-select__dialog{width:90vw!important;max-width:90vw!important;max-height:calc(100vh - 70px)!important;background:#fff;display:flex;flex-direction:column}.q-select__dialog>.scroll{position:relative;background:inherit}body.mobile:not(.native-mobile) .q-select__dialog{max-height:calc(100vh - 108px)!important}body.platform-android.native-mobile .q-dialog__inner--top .q-select__dialog{max-height:calc(100vh - 24px)!important}body.platform-android:not(.native-mobile) .q-dialog__inner--top .q-select__dialog{max-height:calc(100vh - 80px)!important}body.platform-ios.native-mobile .q-dialog__inner--top>div{border-radius:4px}body.platform-ios.native-mobile .q-dialog__inner--top .q-select__dialog--focused{max-height:47vh!important}body.platform-ios:not(.native-mobile) .q-dialog__inner--top .q-select__dialog--focused{max-height:50vh!important}.q-separator{border:0;background:rgba(0,0,0,.12);margin:0;transition:background .3s,opacity .3s;flex-shrink:0}.q-separator--dark{background:rgba(255,255,255,.28)}.q-separator--horizontal{display:block;height:1px}.q-separator--horizontal-inset{margin-left:16px;margin-right:16px}.q-separator--horizontal-item-inset{margin-left:72px;margin-right:0}.q-separator--horizontal-item-thumbnail-inset{margin-left:116px;margin-right:0}.q-separator--vertical{width:1px;height:auto;align-self:stretch}.q-separator--vertical-inset{margin-top:8px;margin-bottom:8px}.q-skeleton{--q-skeleton-speed: 1.5s;background:rgba(0,0,0,.12);border-radius:4px;box-sizing:border-box}.q-skeleton--anim{cursor:wait}.q-skeleton:before{content:"\a0"}.q-skeleton--type-text{transform:scaleY(.5)}.q-skeleton--type-circle,.q-skeleton--type-QAvatar{height:48px;width:48px;border-radius:50%}.q-skeleton--type-QBtn{width:90px;height:36px}.q-skeleton--type-QBadge{width:70px;height:16px}.q-skeleton--type-QChip{width:90px;height:28px;border-radius:16px}.q-skeleton--type-QToolbar{height:50px}.q-skeleton--type-QCheckbox,.q-skeleton--type-QRadio{width:40px;height:40px;border-radius:50%}.q-skeleton--type-QToggle{width:56px;height:40px;border-radius:7px}.q-skeleton--type-QSlider,.q-skeleton--type-QRange{height:40px}.q-skeleton--type-QInput{height:56px}.q-skeleton--bordered{border:1px solid rgba(0,0,0,.05)}.q-skeleton--square{border-radius:0}.q-skeleton--anim-fade{animation:q-skeleton--fade var(--q-skeleton-speed) linear .5s infinite}.q-skeleton--anim-pulse{animation:q-skeleton--pulse var(--q-skeleton-speed) ease-in-out .5s infinite}.q-skeleton--anim-pulse-x{animation:q-skeleton--pulse-x var(--q-skeleton-speed) ease-in-out .5s infinite}.q-skeleton--anim-pulse-y{animation:q-skeleton--pulse-y var(--q-skeleton-speed) ease-in-out .5s infinite}.q-skeleton--anim-wave,.q-skeleton--anim-blink,.q-skeleton--anim-pop{position:relative;overflow:hidden;z-index:1}.q-skeleton--anim-wave:after,.q-skeleton--anim-blink:after,.q-skeleton--anim-pop:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.q-skeleton--anim-blink:after{background:rgba(255,255,255,.7);animation:q-skeleton--fade var(--q-skeleton-speed) linear .5s infinite}.q-skeleton--anim-wave:after{background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.5),rgba(255,255,255,0));animation:q-skeleton--wave var(--q-skeleton-speed) linear .5s infinite}.q-skeleton--dark{background:rgba(255,255,255,.05)}.q-skeleton--dark.q-skeleton--bordered{border:1px solid rgba(255,255,255,.25)}.q-skeleton--dark.q-skeleton--anim-wave:after{background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.1),rgba(255,255,255,0))}.q-skeleton--dark.q-skeleton--anim-blink:after{background:rgba(255,255,255,.2)}@keyframes q-skeleton--fade{0%{opacity:1}50%{opacity:.4}to{opacity:1}}@keyframes q-skeleton--pulse{0%{transform:scale(1)}50%{transform:scale(.85)}to{transform:scale(1)}}@keyframes q-skeleton--pulse-x{0%{transform:scaleX(1)}50%{transform:scaleX(.75)}to{transform:scaleX(1)}}@keyframes q-skeleton--pulse-y{0%{transform:scaleY(1)}50%{transform:scaleY(.75)}to{transform:scaleY(1)}}@keyframes q-skeleton--wave{0%{transform:translate(-100%)}to{transform:translate(100%)}}.q-slide-item{position:relative;background:white}.q-slide-item__left,.q-slide-item__right,.q-slide-item__top,.q-slide-item__bottom{visibility:hidden;font-size:14px;color:#fff}.q-slide-item__left .q-icon,.q-slide-item__right .q-icon,.q-slide-item__top .q-icon,.q-slide-item__bottom .q-icon{font-size:1.714em}.q-slide-item__left{background:#4caf50;padding:8px 16px}.q-slide-item__left>div{transform-origin:left center}.q-slide-item__right{background:#ff9800;padding:8px 16px}.q-slide-item__right>div{transform-origin:right center}.q-slide-item__top{background:#2196f3;padding:16px 8px}.q-slide-item__top>div{transform-origin:top center}.q-slide-item__bottom{background:#9c27b0;padding:16px 8px}.q-slide-item__bottom>div{transform-origin:bottom center}.q-slide-item__content{background:inherit;transition:transform .2s ease-in;-webkit-user-select:none;user-select:none;cursor:pointer}.q-slider{position:relative}.q-slider--h{width:100%}.q-slider--v{height:200px}.q-slider--editable .q-slider__track-container{cursor:grab}.q-slider__track-container{outline:0}.q-slider__track-container--h{width:100%;padding:12px 0}.q-slider__track-container--h .q-slider__selection{will-change:width,left}.q-slider__track-container--v{height:100%;padding:0 12px}.q-slider__track-container--v .q-slider__selection{will-change:height,top}.q-slider__track{color:var(--q-primary);background:rgba(0,0,0,.1);border-radius:4px;width:inherit;height:inherit}.q-slider__inner{background:rgba(0,0,0,.1);border-radius:inherit;width:100%;height:100%}.q-slider__selection{background:currentColor;border-radius:inherit;width:100%;height:100%}.q-slider__markers{color:#0000004d;border-radius:inherit;width:100%;height:100%}.q-slider__markers:after{content:"";position:absolute;background:currentColor}.q-slider__markers--h{background-image:repeating-linear-gradient(to right,currentColor,currentColor 2px,rgba(255,255,255,0) 0,rgba(255,255,255,0))}.q-slider__markers--h:after{height:100%;width:2px;top:0;right:0}.q-slider__markers--v{background-image:repeating-linear-gradient(to bottom,currentColor,currentColor 2px,rgba(255,255,255,0) 0,rgba(255,255,255,0))}.q-slider__markers--v:after{width:100%;height:2px;left:0;bottom:0}.q-slider__marker-labels-container{position:relative;width:100%;height:100%;min-height:24px;min-width:24px}.q-slider__marker-labels{position:absolute}.q-slider__marker-labels--h-standard{top:0}.q-slider__marker-labels--h-switched{bottom:0}.q-slider__marker-labels--h-ltr{transform:translate(-50%)}.q-slider__marker-labels--h-rtl{transform:translate(50%)}.q-slider__marker-labels--v-standard{left:4px}.q-slider__marker-labels--v-switched{right:4px}.q-slider__marker-labels--v-ltr{transform:translateY(-50%)}.q-slider__marker-labels--v-rtl{transform:translateY(50%)}.q-slider__thumb{z-index:1;outline:0;color:var(--q-primary);transition:transform .18s ease-out,fill .18s ease-out,stroke .18s ease-out}.q-slider__thumb.q-slider--focus{opacity:1!important}.q-slider__thumb--h{top:50%;will-change:left}.q-slider__thumb--h-ltr{transform:scale(1) translate(-50%,-50%)}.q-slider__thumb--h-rtl{transform:scale(1) translate(50%,-50%)}.q-slider__thumb--v{left:50%;will-change:top}.q-slider__thumb--v-ltr{transform:scale(1) translate(-50%,-50%)}.q-slider__thumb--v-rtl{transform:scale(1) translate(-50%,50%)}.q-slider__thumb-shape{top:0;left:0;stroke-width:3.5;stroke:currentColor;transition:transform .28s}.q-slider__thumb-shape path{stroke:currentColor;fill:currentColor}.q-slider__focus-ring{border-radius:50%;opacity:0;transition:transform .26667s ease-out,opacity .26667s ease-out,background-color .26667s ease-out;transition-delay:.14s}.q-slider__pin{opacity:0;white-space:nowrap;transition:opacity .28s ease-out;transition-delay:.14s}.q-slider__pin:before{content:"";width:0;height:0;position:absolute}.q-slider__pin--h:before{border-left:6px solid transparent;border-right:6px solid transparent;left:50%;transform:translate(-50%)}.q-slider__pin--h-standard{bottom:100%}.q-slider__pin--h-standard:before{bottom:2px;border-top:6px solid currentColor}.q-slider__pin--h-switched{top:100%}.q-slider__pin--h-switched:before{top:2px;border-bottom:6px solid currentColor}.q-slider__pin--v{top:0}.q-slider__pin--v:before{top:50%;transform:translateY(-50%);border-top:6px solid transparent;border-bottom:6px solid transparent}.q-slider__pin--v-standard{left:100%}.q-slider__pin--v-standard:before{left:2px;border-right:6px solid currentColor}.q-slider__pin--v-switched{right:100%}.q-slider__pin--v-switched:before{right:2px;border-left:6px solid currentColor}.q-slider__label{z-index:1;white-space:nowrap;position:absolute}.q-slider__label--h{left:50%;transform:translate(-50%)}.q-slider__label--h-standard{bottom:7px}.q-slider__label--h-switched{top:7px}.q-slider__label--v{top:50%;transform:translateY(-50%)}.q-slider__label--v-standard{left:7px}.q-slider__label--v-switched{right:7px}.q-slider__text-container{min-height:25px;padding:2px 8px;border-radius:4px;background:currentColor;position:relative;text-align:center}.q-slider__text{color:#fff;font-size:12px}.q-slider--no-value .q-slider__thumb,.q-slider--no-value .q-slider__inner,.q-slider--no-value .q-slider__selection{opacity:0}.q-slider--focus .q-slider__focus-ring,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__focus-ring{background:currentColor;transform:scale3d(1.55,1.55,1);opacity:.25}.q-slider--focus .q-slider__thumb,.q-slider--focus .q-slider__inner,.q-slider--focus .q-slider__selection,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__thumb,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__inner,body.desktop .q-slider.q-slider--editable .q-slider__track-container:hover .q-slider__selection{opacity:1}.q-slider--inactive .q-slider__thumb--h{transition:left .28s,right .28s}.q-slider--inactive .q-slider__thumb--v{transition:top .28s,bottom .28s}.q-slider--inactive .q-slider__selection{transition:width .28s,left .28s,right .28s,height .28s,top .28s,bottom .28s}.q-slider--inactive .q-slider__text-container{transition:transform .28s}.q-slider--active{cursor:grabbing}.q-slider--active .q-slider__thumb-shape{transform:scale(1.5)}.q-slider--active .q-slider__focus-ring,.q-slider--active.q-slider--label .q-slider__thumb-shape{transform:scale(0)!important}body.desktop .q-slider.q-slider--enabled .q-slider__track-container:hover .q-slider__pin,.q-slider--label.q-slider--active .q-slider__pin,.q-slider--label .q-slider--focus .q-slider__pin,.q-slider--label.q-slider--label-always .q-slider__pin{opacity:1}.q-slider--dark .q-slider__track,.q-slider--dark .q-slider__inner{background:rgba(255,255,255,.1)}.q-slider--dark .q-slider__markers{color:#ffffff4d}.q-slider--dense .q-slider__track-container--h{padding:6px 0}.q-slider--dense .q-slider__track-container--v{padding:0 6px}.q-space{flex-grow:1!important}.q-spinner{vertical-align:middle}.q-spinner-mat{animation:q-spin 2s linear infinite;transform-origin:center center}.q-spinner-mat .path{stroke-dasharray:1,200;stroke-dashoffset:0;animation:q-mat-dash 1.5s ease-in-out infinite}@keyframes q-spin{0%{transform:rotate3d(0,0,1,0)}25%{transform:rotate3d(0,0,1,90deg)}50%{transform:rotate3d(0,0,1,180deg)}75%{transform:rotate3d(0,0,1,270deg)}to{transform:rotate3d(0,0,1,359deg)}}@keyframes q-mat-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}to{stroke-dasharray:89,200;stroke-dashoffset:-124px}}.q-splitter__panel{position:relative;z-index:0}.q-splitter__panel>.q-splitter{width:100%;height:100%}.q-splitter__separator{background-color:#0000001f;-webkit-user-select:none;user-select:none;position:relative;z-index:1}.q-splitter__separator-area>*{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.q-splitter--dark .q-splitter__separator{background-color:#ffffff47}.q-splitter--vertical>.q-splitter__panel{height:100%}.q-splitter--vertical.q-splitter--active{cursor:col-resize}.q-splitter--vertical>.q-splitter__separator{width:1px}.q-splitter--vertical>.q-splitter__separator>div{left:-6px;right:-6px}.q-splitter--vertical.q-splitter--workable>.q-splitter__separator{cursor:col-resize}.q-splitter--horizontal>.q-splitter__panel{width:100%}.q-splitter--horizontal.q-splitter--active{cursor:row-resize}.q-splitter--horizontal>.q-splitter__separator{height:1px}.q-splitter--horizontal>.q-splitter__separator>div{top:-6px;bottom:-6px}.q-splitter--horizontal.q-splitter--workable>.q-splitter__separator{cursor:row-resize}.q-splitter__before,.q-splitter__after{overflow:auto}.q-stepper{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;background:#fff}.q-stepper__title{font-size:14px;line-height:18px;letter-spacing:.1px}.q-stepper__caption{font-size:12px;line-height:14px}.q-stepper__dot{contain:layout;margin-right:8px;font-size:14px;width:24px;min-width:24px;height:24px;border-radius:50%;background:currentColor}.q-stepper__dot span{color:#fff}.q-stepper__tab{padding:8px 24px;font-size:14px;color:#9e9e9e;flex-direction:row}.q-stepper--dark{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-stepper--dark .q-stepper__dot span{color:#000}.q-stepper__tab--navigation{-webkit-user-select:none;user-select:none;cursor:pointer}.q-stepper__tab--active,.q-stepper__tab--done{color:var(--q-primary)}.q-stepper__tab--active .q-stepper__dot,.q-stepper__tab--active .q-stepper__label,.q-stepper__tab--done .q-stepper__dot,.q-stepper__tab--done .q-stepper__label{text-shadow:0 0 0 currentColor}.q-stepper__tab--disabled .q-stepper__dot{background:rgba(0,0,0,.22)}.q-stepper__tab--disabled .q-stepper__label{color:#00000052}.q-stepper__tab--error{color:var(--q-negative)}.q-stepper__tab--error-with-icon .q-stepper__dot{background:transparent!important}.q-stepper__tab--error-with-icon .q-stepper__dot span{color:currentColor;font-size:24px}.q-stepper__header{border-top-left-radius:inherit;border-top-right-radius:inherit}.q-stepper__header--border{border-bottom:1px solid rgba(0,0,0,.12)}.q-stepper__header--standard-labels .q-stepper__tab{min-height:72px;justify-content:center}.q-stepper__header--standard-labels .q-stepper__tab:first-child{justify-content:flex-start}.q-stepper__header--standard-labels .q-stepper__tab:last-child{justify-content:flex-end}.q-stepper__header--standard-labels .q-stepper__tab:only-child{justify-content:center}.q-stepper__header--standard-labels .q-stepper__dot:after{display:none}.q-stepper__header--alternative-labels .q-stepper__tab{min-height:104px;padding:24px 32px;flex-direction:column;justify-content:flex-start}.q-stepper__header--alternative-labels .q-stepper__dot{margin-right:0}.q-stepper__header--alternative-labels .q-stepper__label{margin-top:8px;text-align:center}.q-stepper__header--alternative-labels .q-stepper__label:before,.q-stepper__header--alternative-labels .q-stepper__label:after{display:none}.q-stepper__header--contracted,.q-stepper__header--contracted.q-stepper__header--alternative-labels .q-stepper__tab{min-height:72px}.q-stepper__header--contracted.q-stepper__header--alternative-labels .q-stepper__tab:first-child{align-items:flex-start}.q-stepper__header--contracted.q-stepper__header--alternative-labels .q-stepper__tab:last-child{align-items:flex-end}.q-stepper__header--contracted .q-stepper__tab{padding:24px 0}.q-stepper__header--contracted .q-stepper__tab:first-child .q-stepper__dot{transform:translate(24px)}.q-stepper__header--contracted .q-stepper__tab:last-child .q-stepper__dot{transform:translate(-24px)}.q-stepper__header--contracted .q-stepper__tab:not(:last-child) .q-stepper__dot:after{display:block!important}.q-stepper__header--contracted .q-stepper__dot{margin:0}.q-stepper__header--contracted .q-stepper__label{display:none}.q-stepper__nav{padding-top:24px}.q-stepper--flat{box-shadow:none}.q-stepper--bordered{border:1px solid rgba(0,0,0,.12)}.q-stepper--horizontal .q-stepper__step-inner{padding:24px}.q-stepper--horizontal .q-stepper__tab:first-child{border-top-left-radius:inherit}.q-stepper--horizontal .q-stepper__tab:last-child{border-top-right-radius:inherit}.q-stepper--horizontal .q-stepper__tab:first-child .q-stepper__dot:before,.q-stepper--horizontal .q-stepper__tab:last-child .q-stepper__label:after,.q-stepper--horizontal .q-stepper__tab:last-child .q-stepper__dot:after{display:none}.q-stepper--horizontal .q-stepper__tab{overflow:hidden}.q-stepper--horizontal .q-stepper__line{contain:layout}.q-stepper--horizontal .q-stepper__line:before,.q-stepper--horizontal .q-stepper__line:after{position:absolute;top:50%;height:1px;width:100vw;background:rgba(0,0,0,.12)}.q-stepper--horizontal .q-stepper__label:after,.q-stepper--horizontal .q-stepper__dot:after{content:"";left:100%;margin-left:8px}.q-stepper--horizontal .q-stepper__dot:before{content:"";right:100%;margin-right:8px}.q-stepper--horizontal>.q-stepper__nav{padding:0 24px 24px}.q-stepper--vertical{padding:16px 0}.q-stepper--vertical .q-stepper__tab{padding:12px 24px}.q-stepper--vertical .q-stepper__title{line-height:18px}.q-stepper--vertical .q-stepper__step-inner{padding:0 24px 32px 60px}.q-stepper--vertical>.q-stepper__nav{padding:24px 24px 0}.q-stepper--vertical .q-stepper__step{overflow:hidden}.q-stepper--vertical .q-stepper__dot{margin-right:12px}.q-stepper--vertical .q-stepper__dot:before,.q-stepper--vertical .q-stepper__dot:after{content:"";position:absolute;left:50%;width:1px;height:99999px;background:rgba(0,0,0,.12)}.q-stepper--vertical .q-stepper__dot:before{bottom:100%;margin-bottom:8px}.q-stepper--vertical .q-stepper__dot:after{top:100%;margin-top:8px}.q-stepper--vertical .q-stepper__step:first-child .q-stepper__dot:before,.q-stepper--vertical .q-stepper__step:last-child .q-stepper__dot:after{display:none}.q-stepper--vertical .q-stepper__step:last-child .q-stepper__step-inner{padding-bottom:8px}.q-stepper--dark.q-stepper--bordered,.q-stepper--dark .q-stepper__header--border{border-color:#ffffff47}.q-stepper--dark.q-stepper--horizontal .q-stepper__line:before,.q-stepper--dark.q-stepper--horizontal .q-stepper__line:after{background:rgba(255,255,255,.28)}.q-stepper--dark.q-stepper--vertical .q-stepper__dot:before,.q-stepper--dark.q-stepper--vertical .q-stepper__dot:after{background:rgba(255,255,255,.28)}.q-stepper--dark .q-stepper__tab--disabled{color:#ffffff47}.q-stepper--dark .q-stepper__tab--disabled .q-stepper__dot{background:rgba(255,255,255,.28)}.q-stepper--dark .q-stepper__tab--disabled .q-stepper__label{color:#ffffff8a}.q-tab-panels{background:#fff}.q-tab-panel{padding:16px}.q-markup-table{overflow:auto;background:#fff}.q-table{width:100%;max-width:100%;border-collapse:separate;border-spacing:0}.q-table thead tr,.q-table tbody td{height:48px}.q-table th{font-weight:500;font-size:12px;-webkit-user-select:none;user-select:none}.q-table th.sortable{cursor:pointer}.q-table th.sortable:hover .q-table__sort-icon{opacity:.64}.q-table th.sorted .q-table__sort-icon{opacity:.86!important}.q-table th.sort-desc .q-table__sort-icon{transform:rotate(180deg)}.q-table th,.q-table td{padding:7px 16px;background-color:inherit}.q-table thead,.q-table td,.q-table th{border-style:solid;border-width:0}.q-table tbody td{font-size:13px}.q-table__card{color:#000;background-color:#fff;border-radius:4px;box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f}.q-table__card .q-table__middle{flex:1 1 auto}.q-table__card .q-table__top,.q-table__card .q-table__bottom{flex:0 0 auto}.q-table__container{position:relative}.q-table__container>div:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.q-table__container>div:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.q-table__container>.q-inner-loading{border-radius:inherit!important}.q-table__top{padding:12px 16px}.q-table__top .q-table__control{flex-wrap:wrap}.q-table__title{font-size:20px;letter-spacing:.005em;font-weight:400}.q-table__separator{min-width:8px!important}.q-table__progress{height:0!important}.q-table__progress th{padding:0!important;border:0!important}.q-table__progress .q-linear-progress{position:absolute;bottom:0}.q-table__middle{max-width:100%}.q-table__bottom{min-height:50px;padding:4px 14px 4px 16px;font-size:12px}.q-table__bottom .q-table__control{min-height:24px}.q-table__bottom-nodata-icon{font-size:200%;margin-right:8px}.q-table__bottom-item{margin-right:16px}.q-table__control{display:flex;align-items:center}.q-table__sort-icon{transition:transform .3s cubic-bezier(.25,.8,.5,1);opacity:0;font-size:120%}.q-table__sort-icon--left,.q-table__sort-icon--center{margin-left:4px}.q-table__sort-icon--right{margin-right:4px}.q-table--col-auto-width{width:1px}.q-table__card--dark,.q-table--dark{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-table--flat{box-shadow:none}.q-table--bordered{border:1px solid rgba(0,0,0,.12)}.q-table--square{border-radius:0}.q-table__linear-progress{height:2px}.q-table--no-wrap th,.q-table--no-wrap td{white-space:nowrap}.q-table--grid{box-shadow:none;border-radius:4px}.q-table--grid .q-table__top{padding-bottom:4px}.q-table--grid .q-table__middle{min-height:2px;margin-bottom:4px}.q-table--grid .q-table__middle thead,.q-table--grid .q-table__middle thead th{border:0!important}.q-table--grid .q-table__linear-progress{bottom:0}.q-table--grid .q-table__bottom{border-top:0}.q-table--grid .q-table__grid-content{flex:1 1 auto}.q-table--grid.fullscreen{background:inherit}.q-table__grid-item-card{vertical-align:top;padding:12px}.q-table__grid-item-card .q-separator{margin:12px 0}.q-table__grid-item-row+.q-table__grid-item-row{margin-top:8px}.q-table__grid-item-title{opacity:.54;font-weight:500;font-size:12px}.q-table__grid-item-value{font-size:13px}.q-table__grid-item{padding:4px;transition:transform .3s cubic-bezier(.25,.8,.5,1)}.q-table__grid-item--selected{transform:scale(.95)}.q-table--horizontal-separator thead th,.q-table--horizontal-separator tbody tr:not(:last-child)>td,.q-table--cell-separator thead th,.q-table--cell-separator tbody tr:not(:last-child)>td{border-bottom-width:1px}.q-table--vertical-separator td,.q-table--vertical-separator th,.q-table--cell-separator td,.q-table--cell-separator th{border-left-width:1px}.q-table--vertical-separator thead tr:last-child th,.q-table--vertical-separator.q-table--loading tr:nth-last-child(2) th,.q-table--cell-separator thead tr:last-child th,.q-table--cell-separator.q-table--loading tr:nth-last-child(2) th{border-bottom-width:1px}.q-table--vertical-separator td:first-child,.q-table--vertical-separator th:first-child,.q-table--cell-separator td:first-child,.q-table--cell-separator th:first-child{border-left:0}.q-table--vertical-separator .q-table__top,.q-table--cell-separator .q-table__top{border-bottom:1px solid rgba(0,0,0,.12)}.q-table--dense .q-table__top{padding:6px 16px}.q-table--dense .q-table__bottom{min-height:33px}.q-table--dense .q-table__sort-icon{font-size:110%}.q-table--dense .q-table th,.q-table--dense .q-table td{padding:4px 8px}.q-table--dense .q-table thead tr,.q-table--dense .q-table tbody tr,.q-table--dense .q-table tbody td{height:28px}.q-table--dense .q-table th:first-child,.q-table--dense .q-table td:first-child{padding-left:16px}.q-table--dense .q-table th:last-child,.q-table--dense .q-table td:last-child{padding-right:16px}.q-table--dense .q-table__bottom-item{margin-right:8px}.q-table--dense .q-table__select .q-field__control,.q-table--dense .q-table__select .q-field__native{min-height:24px;padding:0}.q-table--dense .q-table__select .q-field__marginal{height:24px}.q-table__bottom{border-top:1px solid rgba(0,0,0,.12)}.q-table thead,.q-table tr,.q-table th,.q-table td{border-color:#0000001f}.q-table tbody td{position:relative}.q-table tbody td:before,.q-table tbody td:after{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.q-table tbody td:before{background:rgba(0,0,0,.03)}.q-table tbody td:after{background:rgba(0,0,0,.06)}.q-table tbody tr.selected td:after{content:""}body.desktop .q-table>tbody>tr:not(.q-tr--no-hover):hover>td:not(.q-td--no-hover):before{content:""}.q-table__card--dark,.q-table--dark,.q-table--dark .q-table__bottom,.q-table--dark thead,.q-table--dark tr,.q-table--dark th,.q-table--dark td{border-color:#ffffff47}.q-table--dark tbody td:before{background:rgba(255,255,255,.07)}.q-table--dark tbody td:after{background:rgba(255,255,255,.1)}.q-table--dark.q-table--vertical-separator .q-table__top,.q-table--dark.q-table--cell-separator .q-table__top{border-color:#ffffff47}.q-tab{padding:0 16px;min-height:48px;transition:color .3s,background-color .3s;text-transform:uppercase;white-space:nowrap;color:inherit;text-decoration:none}.q-tab--full{min-height:72px}.q-tab--no-caps{text-transform:none}.q-tab__content{height:inherit;padding:4px 0;min-width:40px}.q-tab__content--inline .q-tab__icon+.q-tab__label{padding-left:8px}.q-tab__content .q-chip--floating{top:0;right:-16px}.q-tab__icon{width:24px;height:24px;font-size:24px}.q-tab__label{font-size:14px;line-height:1.715em;font-weight:500}.q-tab .q-badge{top:3px;right:-12px}.q-tab__alert,.q-tab__alert-icon{position:absolute}.q-tab__alert{top:7px;right:-9px;height:10px;width:10px;border-radius:50%;background:currentColor}.q-tab__alert-icon{top:2px;right:-12px;font-size:18px}.q-tab__indicator{opacity:0;height:2px;background:currentColor}.q-tab--active .q-tab__indicator{opacity:1;transform-origin:left}.q-tab--inactive{opacity:.85}.q-tabs{position:relative;transition:color .3s,background-color .3s}.q-tabs--scrollable.q-tabs__arrows--outside.q-tabs--horizontal{padding-left:36px;padding-right:36px}.q-tabs--scrollable.q-tabs__arrows--outside.q-tabs--vertical{padding-top:36px;padding-bottom:36px}.q-tabs--scrollable.q-tabs__arrows--outside .q-tabs__arrow--faded{opacity:.3;pointer-events:none}.q-tabs--scrollable.q-tabs__arrows--inside .q-tabs__arrow--faded{display:none}.q-tabs--not-scrollable.q-tabs__arrows--outside,body.mobile .q-tabs--scrollable.q-tabs--mobile-without-arrows.q-tabs__arrows--outside{padding-left:0;padding-right:0}.q-tabs--not-scrollable .q-tabs__arrow,body.mobile .q-tabs--scrollable.q-tabs--mobile-without-arrows .q-tabs__arrow{display:none}.q-tabs--not-scrollable .q-tabs__content,body.mobile .q-tabs--scrollable.q-tabs--mobile-without-arrows .q-tabs__content{border-radius:inherit}.q-tabs__arrow{cursor:pointer;font-size:32px;min-width:36px;text-shadow:0 0 3px #fff,0 0 1px #fff,0 0 1px #000;transition:opacity .3s}.q-tabs__content{overflow:hidden;flex:1 1 auto}.q-tabs__content--align-center{justify-content:center}.q-tabs__content--align-right{justify-content:flex-end}.q-tabs__content--align-justify .q-tab{flex:1 1 auto}.q-tabs__offset{display:none}.q-tabs--horizontal .q-tabs__arrow{height:100%}.q-tabs--horizontal .q-tabs__arrow--left{top:0;left:0;bottom:0}.q-tabs--horizontal .q-tabs__arrow--right{top:0;right:0;bottom:0}.q-tabs--vertical,.q-tabs--vertical .q-tabs__content{display:block!important;height:100%}.q-tabs--vertical .q-tabs__arrow{width:100%;height:36px;text-align:center}.q-tabs--vertical .q-tabs__arrow--left{top:0;left:0;right:0}.q-tabs--vertical .q-tabs__arrow--right{left:0;right:0;bottom:0}.q-tabs--vertical .q-tab{padding:0 8px}.q-tabs--vertical .q-tab__indicator{height:unset;width:2px}.q-tabs--vertical.q-tabs--not-scrollable .q-tabs__content{height:100%}.q-tabs--vertical.q-tabs--dense .q-tab__content{min-width:24px}.q-tabs--dense .q-tab{min-height:36px}.q-tabs--dense .q-tab--full{min-height:52px}.q-time{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;background:#fff;outline:0;width:290px;min-width:290px;max-width:100%}.q-time--bordered{border:1px solid rgba(0,0,0,.12)}.q-time__header{border-top-left-radius:inherit;color:#fff;background-color:var(--q-primary);padding:16px;font-weight:300}.q-time__actions{padding:0 16px 16px}.q-time__header-label{font-size:28px;line-height:1;letter-spacing:-.00833em}.q-time__header-label>div+div{margin-left:4px}.q-time__link{opacity:.56;outline:0;transition:opacity .3s ease-out}.q-time__link--active,.q-time__link:hover,.q-time__link:focus{opacity:1}.q-time__header-ampm{font-size:16px;letter-spacing:.1em}.q-time__content{padding:16px}.q-time__content:before{content:"";display:block;padding-bottom:100%}.q-time__container-parent{padding:16px}.q-time__container-child{border-radius:50%;background:rgba(0,0,0,.12)}.q-time__clock{padding:24px;width:100%;height:100%;max-width:100%;max-height:100%;font-size:14px}.q-time__clock-circle{position:relative}.q-time__clock-center{height:6px;width:6px;margin:auto;border-radius:50%;min-height:0;background:currentColor}.q-time__clock-pointer{width:2px;height:50%;transform-origin:0 0;min-height:0;position:absolute;left:50%;right:0;bottom:0;color:var(--q-primary);background:currentColor;transform:translate(-50%)}.q-time__clock-pointer:before,.q-time__clock-pointer:after{content:"";position:absolute;left:50%;border-radius:50%;background:currentColor;transform:translate(-50%)}.q-time__clock-pointer:before{bottom:-4px;width:8px;height:8px}.q-time__clock-pointer:after{top:-3px;height:6px;width:6px}.q-time__clock-position{position:absolute;min-height:32px;width:32px;height:32px;font-size:12px;line-height:32px;margin:0;padding:0;transform:translate(-50%,-50%);border-radius:50%}.q-time__clock-position--disable{opacity:.4}.q-time__clock-position--active{background-color:var(--q-primary);color:#fff}.q-time__clock-pos-0{top:0%;left:50%}.q-time__clock-pos-1{top:6.7%;left:75%}.q-time__clock-pos-2{top:25%;left:93.3%}.q-time__clock-pos-3{top:50%;left:100%}.q-time__clock-pos-4{top:75%;left:93.3%}.q-time__clock-pos-5{top:93.3%;left:75%}.q-time__clock-pos-6{top:100%;left:50%}.q-time__clock-pos-7{top:93.3%;left:25%}.q-time__clock-pos-8{top:75%;left:6.7%}.q-time__clock-pos-9{top:50%;left:0%}.q-time__clock-pos-10{top:25%;left:6.7%}.q-time__clock-pos-11{top:6.7%;left:25%}.q-time__clock-pos-12{top:15%;left:50%}.q-time__clock-pos-13{top:19.69%;left:67.5%}.q-time__clock-pos-14{top:32.5%;left:80.31%}.q-time__clock-pos-15{top:50%;left:85%}.q-time__clock-pos-16{top:67.5%;left:80.31%}.q-time__clock-pos-17{top:80.31%;left:67.5%}.q-time__clock-pos-18{top:85%;left:50%}.q-time__clock-pos-19{top:80.31%;left:32.5%}.q-time__clock-pos-20{top:67.5%;left:19.69%}.q-time__clock-pos-21{top:50%;left:15%}.q-time__clock-pos-22{top:32.5%;left:19.69%}.q-time__clock-pos-23{top:19.69%;left:32.5%}.q-time__now-button{background-color:var(--q-primary);color:#fff;top:12px;right:12px}.q-time.disabled .q-time__header-ampm,.q-time.disabled .q-time__content,.q-time--readonly .q-time__header-ampm,.q-time--readonly .q-time__content{pointer-events:none}.q-time--portrait{display:inline-flex;flex-direction:column}.q-time--portrait .q-time__header{border-top-right-radius:inherit;min-height:86px}.q-time--portrait .q-time__header-ampm{margin-left:12px}.q-time--portrait.q-time--bordered .q-time__content{margin:1px 0}.q-time--landscape{display:inline-flex;align-items:stretch;min-width:420px}.q-time--landscape>div{display:flex;flex-direction:column;justify-content:center}.q-time--landscape .q-time__header{border-bottom-left-radius:inherit;min-width:156px}.q-time--landscape .q-time__header-ampm{margin-top:12px}.q-time--dark{border-color:#ffffff47;box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-timeline{padding:0;width:100%;list-style:none}.q-timeline h6{line-height:inherit}.q-timeline--dark{color:#fff}.q-timeline--dark .q-timeline__subtitle{opacity:.7}.q-timeline__content{padding-bottom:24px}.q-timeline__title{margin-top:0;margin-bottom:16px}.q-timeline__subtitle{font-size:12px;margin-bottom:8px;opacity:.6;text-transform:uppercase;letter-spacing:1px;font-weight:700}.q-timeline__dot{position:absolute;top:0;bottom:0;width:15px}.q-timeline__dot:before,.q-timeline__dot:after{content:"";background:currentColor;display:block;position:absolute}.q-timeline__dot:before{border:3px solid transparent;border-radius:100%;height:15px;width:15px;top:4px;left:0;transition:background .3s ease-in-out,border .3s ease-in-out}.q-timeline__dot:after{width:3px;opacity:.4;top:24px;bottom:0;left:6px}.q-timeline__dot .q-icon{position:absolute;top:0;left:0;right:0;font-size:16px;height:38px;line-height:38px;width:100%;color:#fff}.q-timeline__dot .q-icon>svg,.q-timeline__dot .q-icon>img{width:1em;height:1em}.q-timeline__dot-img{position:absolute;top:4px;left:0;right:0;height:31px;width:31px;background:currentColor;border-radius:50%}.q-timeline__heading{position:relative}.q-timeline__heading:first-child .q-timeline__heading-title{padding-top:0}.q-timeline__heading:last-child .q-timeline__heading-title{padding-bottom:0}.q-timeline__heading-title{padding:32px 0;margin:0}.q-timeline__entry{position:relative;line-height:22px}.q-timeline__entry:last-child{padding-bottom:0!important}.q-timeline__entry:last-child .q-timeline__dot:after{content:none}.q-timeline__entry--icon .q-timeline__dot{width:31px}.q-timeline__entry--icon .q-timeline__dot:before{height:31px;width:31px}.q-timeline__entry--icon .q-timeline__dot:after{top:41px;left:14px}.q-timeline__entry--icon .q-timeline__subtitle{padding-top:8px}.q-timeline--dense--right .q-timeline__entry{padding-left:40px}.q-timeline--dense--right .q-timeline__entry--icon .q-timeline__dot{left:-8px}.q-timeline--dense--right .q-timeline__dot{left:0}.q-timeline--dense--left .q-timeline__heading{text-align:right}.q-timeline--dense--left .q-timeline__entry{padding-right:40px}.q-timeline--dense--left .q-timeline__entry--icon .q-timeline__dot{right:-8px}.q-timeline--dense--left .q-timeline__content,.q-timeline--dense--left .q-timeline__title,.q-timeline--dense--left .q-timeline__subtitle{text-align:right}.q-timeline--dense--left .q-timeline__dot{right:0}.q-timeline--comfortable{display:table}.q-timeline--comfortable .q-timeline__heading{display:table-row;font-size:200%}.q-timeline--comfortable .q-timeline__heading>div{display:table-cell}.q-timeline--comfortable .q-timeline__entry{display:table-row;padding:0}.q-timeline--comfortable .q-timeline__entry--icon .q-timeline__content{padding-top:8px}.q-timeline--comfortable .q-timeline__subtitle,.q-timeline--comfortable .q-timeline__dot,.q-timeline--comfortable .q-timeline__content{display:table-cell;vertical-align:top}.q-timeline--comfortable .q-timeline__subtitle{width:35%}.q-timeline--comfortable .q-timeline__dot{position:relative;min-width:31px}.q-timeline--comfortable--right .q-timeline__heading .q-timeline__heading-title{margin-left:-50px}.q-timeline--comfortable--right .q-timeline__subtitle{text-align:right;padding-right:30px}.q-timeline--comfortable--right .q-timeline__content{padding-left:30px}.q-timeline--comfortable--right .q-timeline__entry--icon .q-timeline__dot{left:-8px}.q-timeline--comfortable--left .q-timeline__heading{text-align:right}.q-timeline--comfortable--left .q-timeline__heading .q-timeline__heading-title{margin-right:-50px}.q-timeline--comfortable--left .q-timeline__subtitle{padding-left:30px}.q-timeline--comfortable--left .q-timeline__content{padding-right:30px}.q-timeline--comfortable--left .q-timeline__content,.q-timeline--comfortable--left .q-timeline__title{text-align:right}.q-timeline--comfortable--left .q-timeline__entry--icon .q-timeline__dot{right:0}.q-timeline--comfortable--left .q-timeline__dot{right:-8px}.q-timeline--loose .q-timeline__heading-title{text-align:center;margin-left:0}.q-timeline--loose .q-timeline__entry,.q-timeline--loose .q-timeline__subtitle,.q-timeline--loose .q-timeline__dot,.q-timeline--loose .q-timeline__content{display:block;margin:0;padding:0}.q-timeline--loose .q-timeline__dot{position:absolute;left:50%;margin-left:-7.15px}.q-timeline--loose .q-timeline__entry{padding-bottom:24px;overflow:hidden}.q-timeline--loose .q-timeline__entry--icon .q-timeline__dot{margin-left:-15px}.q-timeline--loose .q-timeline__entry--icon .q-timeline__subtitle{line-height:38px}.q-timeline--loose .q-timeline__entry--icon .q-timeline__content{padding-top:8px}.q-timeline--loose .q-timeline__entry--left .q-timeline__content,.q-timeline--loose .q-timeline__entry--right .q-timeline__subtitle{float:left;padding-right:30px;text-align:right}.q-timeline--loose .q-timeline__entry--left .q-timeline__subtitle,.q-timeline--loose .q-timeline__entry--right .q-timeline__content{float:right;text-align:left;padding-left:30px}.q-timeline--loose .q-timeline__subtitle,.q-timeline--loose .q-timeline__content{width:50%}.q-toggle{vertical-align:middle}.q-toggle__native{width:1px;height:1px}.q-toggle__track{height:.35em;border-radius:.175em;opacity:.38;background:currentColor}.q-toggle__thumb{top:.25em;left:.25em;width:.5em;height:.5em;transition:left .22s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none;z-index:0}.q-toggle__thumb:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:#fff;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.q-toggle__thumb .q-icon{font-size:.3em;min-width:1em;color:#000;opacity:.54;z-index:1}.q-toggle__inner{font-size:40px;width:1.4em;min-width:1.4em;height:1em;padding:.325em .3em;-webkit-print-color-adjust:exact}.q-toggle__inner--indet .q-toggle__thumb{left:.45em}.q-toggle__inner--truthy{color:var(--q-primary)}.q-toggle__inner--truthy .q-toggle__track{opacity:.54}.q-toggle__inner--truthy .q-toggle__thumb{left:.65em}.q-toggle__inner--truthy .q-toggle__thumb:after{background-color:currentColor}.q-toggle__inner--truthy .q-toggle__thumb .q-icon{color:#fff;opacity:1}.q-toggle.disabled{opacity:.75!important}.q-toggle--dark .q-toggle__inner{color:#fff}.q-toggle--dark .q-toggle__inner--truthy{color:var(--q-primary)}.q-toggle--dark .q-toggle__thumb:after{box-shadow:none}.q-toggle--dark .q-toggle__thumb:before{opacity:.32!important}.q-toggle--dense .q-toggle__inner{width:.8em;min-width:.8em;height:.5em;padding:.07625em 0}.q-toggle--dense .q-toggle__thumb{top:0;left:0}.q-toggle--dense .q-toggle__inner--indet .q-toggle__thumb{left:.15em}.q-toggle--dense .q-toggle__inner--truthy .q-toggle__thumb{left:.3em}.q-toggle--dense .q-toggle__label{padding-left:.5em}.q-toggle--dense.reverse .q-toggle__label{padding-left:0;padding-right:.5em}body.desktop .q-toggle:not(.disabled) .q-toggle__thumb:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:currentColor;opacity:.12;transform:scale3d(0,0,1);transition:transform .22s cubic-bezier(0,0,.2,1)}body.desktop .q-toggle:not(.disabled):focus .q-toggle__thumb:before,body.desktop .q-toggle:not(.disabled):hover .q-toggle__thumb:before{transform:scale3d(2,2,1)}body.desktop .q-toggle--dense:not(.disabled):focus .q-toggle__thumb:before,body.desktop .q-toggle--dense:not(.disabled):hover .q-toggle__thumb:before{transform:scale3d(1.5,1.5,1)}.q-toolbar{position:relative;padding:0 12px;min-height:50px;width:100%}.q-toolbar--inset{padding-left:58px}.q-toolbar .q-avatar{font-size:38px}.q-toolbar__title{flex:1 1 0%;min-width:1px;max-width:100%;font-size:21px;font-weight:400;letter-spacing:.01em;padding:0 12px}.q-toolbar__title:first-child{padding-left:0}.q-toolbar__title:last-child{padding-right:0}.q-tooltip--style{font-size:10px;color:#fafafa;background:#757575;border-radius:4px;text-transform:none;font-weight:400}.q-tooltip{z-index:9000;position:fixed!important;overflow-y:auto;overflow-x:hidden;padding:6px 10px}@media (max-width: 599.98px){.q-tooltip{font-size:14px;padding:8px 16px}}.q-tree{position:relative;color:#9e9e9e}.q-tree__node{padding:0 0 3px 22px}.q-tree__node:after{content:"";position:absolute;top:-3px;bottom:0;width:2px;right:auto;left:-13px;border-left:1px solid currentColor}.q-tree__node:last-child:after{display:none}.q-tree__node--disabled{pointer-events:none}.q-tree__node--disabled .disabled{opacity:1!important}.q-tree__node--disabled>div,.q-tree__node--disabled>i,.q-tree__node--disabled>.disabled{opacity:.6!important}.q-tree__node--disabled>div .q-tree__node--disabled>div,.q-tree__node--disabled>div .q-tree__node--disabled>i,.q-tree__node--disabled>div .q-tree__node--disabled>.disabled,.q-tree__node--disabled>i .q-tree__node--disabled>div,.q-tree__node--disabled>i .q-tree__node--disabled>i,.q-tree__node--disabled>i .q-tree__node--disabled>.disabled,.q-tree__node--disabled>.disabled .q-tree__node--disabled>div,.q-tree__node--disabled>.disabled .q-tree__node--disabled>i,.q-tree__node--disabled>.disabled .q-tree__node--disabled>.disabled{opacity:1!important}.q-tree__node-header:before{content:"";position:absolute;top:-3px;bottom:50%;width:31px;left:-35px;border-left:1px solid currentColor;border-bottom:1px solid currentColor}.q-tree__children{padding-left:25px}.q-tree__node-body{padding:5px 0 8px 5px}.q-tree__node--parent{padding-left:2px}.q-tree__node--parent>.q-tree__node-header:before{width:15px;left:-15px}.q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body{padding:5px 0 8px 27px}.q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body:after{content:"";position:absolute;top:0;width:2px;height:100%;right:auto;left:12px;border-left:1px solid currentColor;bottom:50px}.q-tree__node--link{cursor:pointer}.q-tree__node-header{padding:4px;margin-top:3px;border-radius:4px;outline:0}.q-tree__node-header-content{color:#000;transition:color .3s}.q-tree__node--selected .q-tree__node-header-content{color:#9e9e9e}.q-tree__icon,.q-tree__node-header-content .q-icon{font-size:21px}.q-tree__img{height:42px;border-radius:2px}.q-tree__avatar,.q-tree__node-header-content .q-avatar{font-size:28px;border-radius:50%;width:28px;height:28px}.q-tree__arrow,.q-tree__spinner{font-size:16px;margin-right:4px}.q-tree__arrow{transition:transform .3s}.q-tree__arrow--rotate{transform:rotate3d(0,0,1,90deg)}.q-tree__tickbox{margin-right:4px}.q-tree>.q-tree__node{padding:0}.q-tree>.q-tree__node:after,.q-tree>.q-tree__node>.q-tree__node-header:before{display:none}.q-tree>.q-tree__node--child>.q-tree__node-header{padding-left:24px}.q-tree--dark .q-tree__node-header-content{color:#fff}.q-tree--no-connectors .q-tree__node:after,.q-tree--no-connectors .q-tree__node-header:before,.q-tree--no-connectors .q-tree__node-body:after{display:none!important}.q-tree--dense>.q-tree__node--child>.q-tree__node-header{padding-left:1px}.q-tree--dense .q-tree__arrow,.q-tree--dense .q-tree__spinner{margin-right:1px}.q-tree--dense .q-tree__img{height:32px}.q-tree--dense .q-tree__tickbox{margin-right:3px}.q-tree--dense .q-tree__node{padding:0}.q-tree--dense .q-tree__node:after{top:0;left:-8px}.q-tree--dense .q-tree__node-header{margin-top:0;padding:1px}.q-tree--dense .q-tree__node-header:before{top:0;left:-8px;width:8px}.q-tree--dense .q-tree__node--child{padding-left:17px}.q-tree--dense .q-tree__node--child>.q-tree__node-header:before{left:-25px;width:21px}.q-tree--dense .q-tree__node-body{padding:0 0 2px}.q-tree--dense .q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body{padding:0 0 2px 20px}.q-tree--dense .q-tree__node--parent>.q-tree__node-collapsible>.q-tree__node-body:after{left:8px}.q-tree--dense .q-tree__children{padding-left:16px}[dir=rtl] .q-tree__arrow{transform:rotate3d(0,0,1,180deg)}[dir=rtl] .q-tree__arrow--rotate{transform:rotate3d(0,0,1,90deg)}.q-uploader{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;vertical-align:top;background:#fff;position:relative;width:320px;max-height:320px}.q-uploader--bordered{border:1px solid rgba(0,0,0,.12)}.q-uploader__input{opacity:0;width:100%;height:100%;cursor:pointer!important;z-index:1}.q-uploader__input::-webkit-file-upload-button{cursor:pointer}.q-uploader__file:before{content:"";border-top-left-radius:inherit;border-top-right-radius:inherit;position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:currentColor;opacity:.04}.q-uploader__header{position:relative;border-top-left-radius:inherit;border-top-right-radius:inherit;background-color:var(--q-primary);color:#fff;width:100%}.q-uploader__spinner{font-size:24px;margin-right:4px}.q-uploader__header-content{padding:8px}.q-uploader__dnd{outline:1px dashed currentColor;outline-offset:-4px;background:rgba(255,255,255,.6)}.q-uploader__overlay{font-size:36px;color:#000;background-color:#fff9}.q-uploader__list{position:relative;border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;padding:8px;min-height:60px;flex:1 1 auto}.q-uploader__file{border-radius:4px 4px 0 0;border:1px solid rgba(0,0,0,.12)}.q-uploader__file .q-circular-progress{font-size:24px}.q-uploader__file--img{color:#fff;height:200px;min-width:200px;background-position:50% 50%;background-size:cover;background-repeat:no-repeat}.q-uploader__file--img:before{content:none}.q-uploader__file--img .q-circular-progress{color:#fff}.q-uploader__file--img .q-uploader__file-header{padding-bottom:24px;background:linear-gradient(to bottom,rgba(0,0,0,.7) 20%,rgba(255,255,255,0))}.q-uploader__file+.q-uploader__file{margin-top:8px}.q-uploader__file-header{position:relative;padding:4px 8px;border-top-left-radius:inherit;border-top-right-radius:inherit}.q-uploader__file-header-content{padding-right:8px}.q-uploader__file-status{font-size:24px;margin-right:4px}.q-uploader__title{font-size:14px;font-weight:700;line-height:18px;word-break:break-word}.q-uploader__subtitle{font-size:12px;line-height:18px}.q-uploader--disable .q-uploader__header,.q-uploader--disable .q-uploader__list{pointer-events:none}.q-uploader--dark{border-color:#ffffff47;box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}.q-uploader--dark .q-uploader__file{border-color:#ffffff47}.q-uploader--dark .q-uploader__dnd,.q-uploader--dark .q-uploader__overlay{background:rgba(255,255,255,.3)}.q-uploader--dark .q-uploader__overlay{color:#fff}img.responsive{max-width:100%;height:auto}.q-video{position:relative;overflow:hidden;border-radius:inherit}.q-video iframe,.q-video object,.q-video embed{width:100%;height:100%}.q-video--responsive{height:0}.q-video--responsive iframe,.q-video--responsive object,.q-video--responsive embed{position:absolute;top:0;left:0}.q-virtual-scroll:focus{outline:0}.q-virtual-scroll__content{outline:none;contain:content}.q-virtual-scroll__content>*{overflow-anchor:none}.q-virtual-scroll__content>[data-q-vs-anchor]{overflow-anchor:auto}.q-virtual-scroll__padding{background:linear-gradient(rgba(255,255,255,0),rgba(255,255,255,0) 20%,rgba(128,128,128,.03) 20%,rgba(128,128,128,.08) 50%,rgba(128,128,128,.03) 80%,rgba(255,255,255,0) 80%,rgba(255,255,255,0));background-size:var(--q-virtual-scroll-item-width, 100%) var(--q-virtual-scroll-item-height, 50px)}.q-table .q-virtual-scroll__padding tr{height:0!important}.q-table .q-virtual-scroll__padding td{padding:0!important}.q-virtual-scroll--horizontal{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:stretch}.q-virtual-scroll--horizontal .q-virtual-scroll__content{display:flex;flex-direction:row;flex-wrap:nowrap}.q-virtual-scroll--horizontal .q-virtual-scroll__padding,.q-virtual-scroll--horizontal .q-virtual-scroll__content,.q-virtual-scroll--horizontal .q-virtual-scroll__content>*{flex:0 0 auto}.q-virtual-scroll--horizontal .q-virtual-scroll__padding{background:linear-gradient(to left,rgba(255,255,255,0),rgba(255,255,255,0) 20%,rgba(128,128,128,.03) 20%,rgba(128,128,128,.08) 50%,rgba(128,128,128,.03) 80%,rgba(255,255,255,0) 80%,rgba(255,255,255,0));background-size:var(--q-virtual-scroll-item-width, 50px) var(--q-virtual-scroll-item-height, 100%)}.q-ripple{position:absolute;top:0;left:0;width:100%;height:100%;color:inherit;border-radius:inherit;z-index:0;pointer-events:none;overflow:hidden;contain:strict}.q-ripple__inner{position:absolute;top:0;left:0;opacity:0;color:inherit;border-radius:50%;background:currentColor;pointer-events:none;will-change:transform,opacity}.q-ripple__inner--enter{transition:transform .225s cubic-bezier(.4,0,.2,1),opacity .1s cubic-bezier(.4,0,.2,1)}.q-ripple__inner--leave{transition:opacity .25s cubic-bezier(.4,0,.2,1)}.q-morph--invisible,.q-morph--internal{opacity:0!important;pointer-events:none!important;position:fixed!important;right:200vw!important;bottom:200vh!important}.q-loading{color:#000;position:fixed!important}.q-loading__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;opacity:.5;z-index:-1;background-color:#000;transition:background-color .28s}.q-loading__box{border-radius:4px;padding:18px;color:#fff;max-width:450px}.q-loading__message{margin:40px 20px 0;text-align:center}.q-notifications__list{z-index:9500;pointer-events:none;left:0;right:0;margin-bottom:10px;position:relative}.q-notifications__list--center{top:0;bottom:0}.q-notifications__list--top{top:0}.q-notifications__list--bottom{bottom:0}body.q-ios-padding .q-notifications__list--center,body.q-ios-padding .q-notifications__list--top{top:20px;top:env(safe-area-inset-top)}body.q-ios-padding .q-notifications__list--center,body.q-ios-padding .q-notifications__list--bottom{bottom:env(safe-area-inset-bottom)}.q-notification{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f;border-radius:4px;pointer-events:all;display:inline-flex;margin:10px 10px 0;transition:transform 1s,opacity 1s;z-index:9500;flex-shrink:0;max-width:95vw;background:#323232;color:#fff;font-size:14px}.q-notification__icon{font-size:24px;flex:0 0 1em}.q-notification__icon--additional{margin-right:16px}.q-notification__avatar{font-size:32px}.q-notification__avatar--additional{margin-right:8px}.q-notification__spinner{font-size:32px}.q-notification__spinner--additional{margin-right:8px}.q-notification__message{padding:8px 0}.q-notification__caption{font-size:.9em;opacity:.7}.q-notification__actions{color:var(--q-primary)}.q-notification__badge{animation:q-notif-badge .42s;padding:4px 8px;position:absolute;box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f;background-color:var(--q-negative);color:#fff;border-radius:4px;font-size:12px;line-height:12px}.q-notification__badge--top-left,.q-notification__badge--top-right{top:-6px}.q-notification__badge--bottom-left,.q-notification__badge--bottom-right{bottom:-6px}.q-notification__badge--top-left,.q-notification__badge--bottom-left{left:-22px}.q-notification__badge--top-right,.q-notification__badge--bottom-right{right:-22px}.q-notification__progress{z-index:-1;position:absolute;height:3px;bottom:0;left:-10px;right:-10px;animation:q-notif-progress linear;background:currentColor;opacity:.3;border-radius:4px 4px 0 0;transform-origin:0 50%;transform:scaleX(0)}.q-notification--standard{padding:0 16px;min-height:48px}.q-notification--standard .q-notification__actions{padding:6px 0 6px 8px;margin-right:-8px}.q-notification--multi-line{min-height:68px;padding:8px 16px}.q-notification--multi-line .q-notification__badge--top-left,.q-notification--multi-line .q-notification__badge--top-right{top:-15px}.q-notification--multi-line .q-notification__badge--bottom-left,.q-notification--multi-line .q-notification__badge--bottom-right{bottom:-15px}.q-notification--multi-line .q-notification__progress{bottom:-8px}.q-notification--multi-line .q-notification__actions{padding:0}.q-notification--multi-line .q-notification__actions--with-media{padding-left:25px}.q-notification--top-left-enter-from,.q-notification--top-left-leave-to,.q-notification--top-enter-from,.q-notification--top-leave-to,.q-notification--top-right-enter-from,.q-notification--top-right-leave-to{opacity:0;transform:translateY(-50px);z-index:9499}.q-notification--left-enter-from,.q-notification--left-leave-to,.q-notification--center-enter-from,.q-notification--center-leave-to,.q-notification--right-enter-from,.q-notification--right-leave-to{opacity:0;transform:rotateX(90deg);z-index:9499}.q-notification--bottom-left-enter-from,.q-notification--bottom-left-leave-to,.q-notification--bottom-enter-from,.q-notification--bottom-leave-to,.q-notification--bottom-right-enter-from,.q-notification--bottom-right-leave-to{opacity:0;transform:translateY(50px);z-index:9499}.q-notification--top-left-leave-active,.q-notification--top-leave-active,.q-notification--top-right-leave-active,.q-notification--left-leave-active,.q-notification--center-leave-active,.q-notification--right-leave-active,.q-notification--bottom-left-leave-active,.q-notification--bottom-leave-active,.q-notification--bottom-right-leave-active{position:absolute;z-index:9499;margin-left:0;margin-right:0}.q-notification--top-leave-active,.q-notification--center-leave-active{top:0}.q-notification--bottom-left-leave-active,.q-notification--bottom-leave-active,.q-notification--bottom-right-leave-active{bottom:0}@media (min-width: 600px){.q-notification{max-width:65vw}}@keyframes q-notif-badge{15%{transform:translate3d(-25%,0,0) rotate3d(0,0,1,-5deg)}30%{transform:translate3d(20%,0,0) rotate3d(0,0,1,3deg)}45%{transform:translate3d(-15%,0,0) rotate3d(0,0,1,-3deg)}60%{transform:translate3d(10%,0,0) rotate3d(0,0,1,2deg)}75%{transform:translate3d(-5%,0,0) rotate3d(0,0,1,-1deg)}}@keyframes q-notif-progress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}:root{--animate-duration: .3s;--animate-delay: .3s;--animate-repeat: 1}.animated{animation-duration:var(--animate-duration);animation-fill-mode:both}.animated.infinite{animation-iteration-count:infinite}.animated.hinge{animation-duration:2s}.animated.repeat-1{animation-iteration-count:var(--animate-repeat)}.animated.repeat-2{animation-iteration-count:calc(var(--animate-repeat) * 2)}.animated.repeat-3{animation-iteration-count:calc(var(--animate-repeat) * 3)}.animated.delay-1s{animation-delay:var(--animate-delay)}.animated.delay-2s{animation-delay:calc(var(--animate-delay) * 2)}.animated.delay-3s{animation-delay:calc(var(--animate-delay) * 3)}.animated.delay-4s{animation-delay:calc(var(--animate-delay) * 4)}.animated.delay-5s{animation-delay:calc(var(--animate-delay) * 5)}.animated.faster{animation-duration:calc(var(--animate-duration) / 2)}.animated.fast{animation-duration:calc(var(--animate-duration) * .8)}.animated.slow{animation-duration:calc(var(--animate-duration) * 2)}.animated.slower{animation-duration:calc(var(--animate-duration) * 3)}@media print,(prefers-reduced-motion: reduce){.animated{animation-duration:1ms!important;transition-duration:1ms!important;animation-iteration-count:1!important}.animated[class*=Out]{opacity:0}}.q-animate--scale{animation:q-scale .15s;animation-timing-function:cubic-bezier(.25,.8,.25,1)}@keyframes q-scale{0%{transform:scale(1)}50%{transform:scale(1.04)}to{transform:scale(1)}}.q-animate--fade{animation:q-fade .2s}@keyframes q-fade{0%{opacity:0}to{opacity:1}}:root{--q-primary: #1976D2;--q-secondary: #26A69A;--q-accent: #9C27B0;--q-positive: #21BA45;--q-negative: #C10015;--q-info: #31CCEC;--q-warning: #F2C037;--q-dark: #1d1d1d;--q-dark-page: #121212}.text-dark{color:var(--q-dark)!important}.bg-dark{background:var(--q-dark)!important}.text-primary{color:var(--q-primary)!important}.bg-primary{background:var(--q-primary)!important}.text-secondary{color:var(--q-secondary)!important}.bg-secondary{background:var(--q-secondary)!important}.text-accent{color:var(--q-accent)!important}.bg-accent{background:var(--q-accent)!important}.text-positive{color:var(--q-positive)!important}.bg-positive{background:var(--q-positive)!important}.text-negative{color:var(--q-negative)!important}.bg-negative{background:var(--q-negative)!important}.text-info{color:var(--q-info)!important}.bg-info{background:var(--q-info)!important}.text-warning{color:var(--q-warning)!important}.bg-warning{background:var(--q-warning)!important}.text-white{color:#fff!important}.bg-white{background:#fff!important}.text-black{color:#000!important}.bg-black{background:#000!important}.text-transparent{color:transparent!important}.bg-transparent{background:transparent!important}.text-separator{color:#0000001f!important}.bg-separator{background:rgba(0,0,0,.12)!important}.text-dark-separator{color:#ffffff47!important}.bg-dark-separator{background:rgba(255,255,255,.28)!important}.text-red{color:#f44336!important}.text-red-1{color:#ffebee!important}.text-red-2{color:#ffcdd2!important}.text-red-3{color:#ef9a9a!important}.text-red-4{color:#e57373!important}.text-red-5{color:#ef5350!important}.text-red-6{color:#f44336!important}.text-red-7{color:#e53935!important}.text-red-8{color:#d32f2f!important}.text-red-9{color:#c62828!important}.text-red-10{color:#b71c1c!important}.text-red-11{color:#ff8a80!important}.text-red-12{color:#ff5252!important}.text-red-13{color:#ff1744!important}.text-red-14{color:#d50000!important}.text-pink{color:#e91e63!important}.text-pink-1{color:#fce4ec!important}.text-pink-2{color:#f8bbd0!important}.text-pink-3{color:#f48fb1!important}.text-pink-4{color:#f06292!important}.text-pink-5{color:#ec407a!important}.text-pink-6{color:#e91e63!important}.text-pink-7{color:#d81b60!important}.text-pink-8{color:#c2185b!important}.text-pink-9{color:#ad1457!important}.text-pink-10{color:#880e4f!important}.text-pink-11{color:#ff80ab!important}.text-pink-12{color:#ff4081!important}.text-pink-13{color:#f50057!important}.text-pink-14{color:#c51162!important}.text-purple{color:#9c27b0!important}.text-purple-1{color:#f3e5f5!important}.text-purple-2{color:#e1bee7!important}.text-purple-3{color:#ce93d8!important}.text-purple-4{color:#ba68c8!important}.text-purple-5{color:#ab47bc!important}.text-purple-6{color:#9c27b0!important}.text-purple-7{color:#8e24aa!important}.text-purple-8{color:#7b1fa2!important}.text-purple-9{color:#6a1b9a!important}.text-purple-10{color:#4a148c!important}.text-purple-11{color:#ea80fc!important}.text-purple-12{color:#e040fb!important}.text-purple-13{color:#d500f9!important}.text-purple-14{color:#a0f!important}.text-deep-purple{color:#673ab7!important}.text-deep-purple-1{color:#ede7f6!important}.text-deep-purple-2{color:#d1c4e9!important}.text-deep-purple-3{color:#b39ddb!important}.text-deep-purple-4{color:#9575cd!important}.text-deep-purple-5{color:#7e57c2!important}.text-deep-purple-6{color:#673ab7!important}.text-deep-purple-7{color:#5e35b1!important}.text-deep-purple-8{color:#512da8!important}.text-deep-purple-9{color:#4527a0!important}.text-deep-purple-10{color:#311b92!important}.text-deep-purple-11{color:#b388ff!important}.text-deep-purple-12{color:#7c4dff!important}.text-deep-purple-13{color:#651fff!important}.text-deep-purple-14{color:#6200ea!important}.text-indigo{color:#3f51b5!important}.text-indigo-1{color:#e8eaf6!important}.text-indigo-2{color:#c5cae9!important}.text-indigo-3{color:#9fa8da!important}.text-indigo-4{color:#7986cb!important}.text-indigo-5{color:#5c6bc0!important}.text-indigo-6{color:#3f51b5!important}.text-indigo-7{color:#3949ab!important}.text-indigo-8{color:#303f9f!important}.text-indigo-9{color:#283593!important}.text-indigo-10{color:#1a237e!important}.text-indigo-11{color:#8c9eff!important}.text-indigo-12{color:#536dfe!important}.text-indigo-13{color:#3d5afe!important}.text-indigo-14{color:#304ffe!important}.text-blue{color:#2196f3!important}.text-blue-1{color:#e3f2fd!important}.text-blue-2{color:#bbdefb!important}.text-blue-3{color:#90caf9!important}.text-blue-4{color:#64b5f6!important}.text-blue-5{color:#42a5f5!important}.text-blue-6{color:#2196f3!important}.text-blue-7{color:#1e88e5!important}.text-blue-8{color:#1976d2!important}.text-blue-9{color:#1565c0!important}.text-blue-10{color:#0d47a1!important}.text-blue-11{color:#82b1ff!important}.text-blue-12{color:#448aff!important}.text-blue-13{color:#2979ff!important}.text-blue-14{color:#2962ff!important}.text-light-blue{color:#03a9f4!important}.text-light-blue-1{color:#e1f5fe!important}.text-light-blue-2{color:#b3e5fc!important}.text-light-blue-3{color:#81d4fa!important}.text-light-blue-4{color:#4fc3f7!important}.text-light-blue-5{color:#29b6f6!important}.text-light-blue-6{color:#03a9f4!important}.text-light-blue-7{color:#039be5!important}.text-light-blue-8{color:#0288d1!important}.text-light-blue-9{color:#0277bd!important}.text-light-blue-10{color:#01579b!important}.text-light-blue-11{color:#80d8ff!important}.text-light-blue-12{color:#40c4ff!important}.text-light-blue-13{color:#00b0ff!important}.text-light-blue-14{color:#0091ea!important}.text-cyan{color:#00bcd4!important}.text-cyan-1{color:#e0f7fa!important}.text-cyan-2{color:#b2ebf2!important}.text-cyan-3{color:#80deea!important}.text-cyan-4{color:#4dd0e1!important}.text-cyan-5{color:#26c6da!important}.text-cyan-6{color:#00bcd4!important}.text-cyan-7{color:#00acc1!important}.text-cyan-8{color:#0097a7!important}.text-cyan-9{color:#00838f!important}.text-cyan-10{color:#006064!important}.text-cyan-11{color:#84ffff!important}.text-cyan-12{color:#18ffff!important}.text-cyan-13{color:#00e5ff!important}.text-cyan-14{color:#00b8d4!important}.text-teal{color:#009688!important}.text-teal-1{color:#e0f2f1!important}.text-teal-2{color:#b2dfdb!important}.text-teal-3{color:#80cbc4!important}.text-teal-4{color:#4db6ac!important}.text-teal-5{color:#26a69a!important}.text-teal-6{color:#009688!important}.text-teal-7{color:#00897b!important}.text-teal-8{color:#00796b!important}.text-teal-9{color:#00695c!important}.text-teal-10{color:#004d40!important}.text-teal-11{color:#a7ffeb!important}.text-teal-12{color:#64ffda!important}.text-teal-13{color:#1de9b6!important}.text-teal-14{color:#00bfa5!important}.text-green{color:#4caf50!important}.text-green-1{color:#e8f5e9!important}.text-green-2{color:#c8e6c9!important}.text-green-3{color:#a5d6a7!important}.text-green-4{color:#81c784!important}.text-green-5{color:#66bb6a!important}.text-green-6{color:#4caf50!important}.text-green-7{color:#43a047!important}.text-green-8{color:#388e3c!important}.text-green-9{color:#2e7d32!important}.text-green-10{color:#1b5e20!important}.text-green-11{color:#b9f6ca!important}.text-green-12{color:#69f0ae!important}.text-green-13{color:#00e676!important}.text-green-14{color:#00c853!important}.text-light-green{color:#8bc34a!important}.text-light-green-1{color:#f1f8e9!important}.text-light-green-2{color:#dcedc8!important}.text-light-green-3{color:#c5e1a5!important}.text-light-green-4{color:#aed581!important}.text-light-green-5{color:#9ccc65!important}.text-light-green-6{color:#8bc34a!important}.text-light-green-7{color:#7cb342!important}.text-light-green-8{color:#689f38!important}.text-light-green-9{color:#558b2f!important}.text-light-green-10{color:#33691e!important}.text-light-green-11{color:#ccff90!important}.text-light-green-12{color:#b2ff59!important}.text-light-green-13{color:#76ff03!important}.text-light-green-14{color:#64dd17!important}.text-lime{color:#cddc39!important}.text-lime-1{color:#f9fbe7!important}.text-lime-2{color:#f0f4c3!important}.text-lime-3{color:#e6ee9c!important}.text-lime-4{color:#dce775!important}.text-lime-5{color:#d4e157!important}.text-lime-6{color:#cddc39!important}.text-lime-7{color:#c0ca33!important}.text-lime-8{color:#afb42b!important}.text-lime-9{color:#9e9d24!important}.text-lime-10{color:#827717!important}.text-lime-11{color:#f4ff81!important}.text-lime-12{color:#eeff41!important}.text-lime-13{color:#c6ff00!important}.text-lime-14{color:#aeea00!important}.text-yellow{color:#ffeb3b!important}.text-yellow-1{color:#fffde7!important}.text-yellow-2{color:#fff9c4!important}.text-yellow-3{color:#fff59d!important}.text-yellow-4{color:#fff176!important}.text-yellow-5{color:#ffee58!important}.text-yellow-6{color:#ffeb3b!important}.text-yellow-7{color:#fdd835!important}.text-yellow-8{color:#fbc02d!important}.text-yellow-9{color:#f9a825!important}.text-yellow-10{color:#f57f17!important}.text-yellow-11{color:#ffff8d!important}.text-yellow-12{color:#ff0!important}.text-yellow-13{color:#ffea00!important}.text-yellow-14{color:#ffd600!important}.text-amber{color:#ffc107!important}.text-amber-1{color:#fff8e1!important}.text-amber-2{color:#ffecb3!important}.text-amber-3{color:#ffe082!important}.text-amber-4{color:#ffd54f!important}.text-amber-5{color:#ffca28!important}.text-amber-6{color:#ffc107!important}.text-amber-7{color:#ffb300!important}.text-amber-8{color:#ffa000!important}.text-amber-9{color:#ff8f00!important}.text-amber-10{color:#ff6f00!important}.text-amber-11{color:#ffe57f!important}.text-amber-12{color:#ffd740!important}.text-amber-13{color:#ffc400!important}.text-amber-14{color:#ffab00!important}.text-orange{color:#ff9800!important}.text-orange-1{color:#fff3e0!important}.text-orange-2{color:#ffe0b2!important}.text-orange-3{color:#ffcc80!important}.text-orange-4{color:#ffb74d!important}.text-orange-5{color:#ffa726!important}.text-orange-6{color:#ff9800!important}.text-orange-7{color:#fb8c00!important}.text-orange-8{color:#f57c00!important}.text-orange-9{color:#ef6c00!important}.text-orange-10{color:#e65100!important}.text-orange-11{color:#ffd180!important}.text-orange-12{color:#ffab40!important}.text-orange-13{color:#ff9100!important}.text-orange-14{color:#ff6d00!important}.text-deep-orange{color:#ff5722!important}.text-deep-orange-1{color:#fbe9e7!important}.text-deep-orange-2{color:#ffccbc!important}.text-deep-orange-3{color:#ffab91!important}.text-deep-orange-4{color:#ff8a65!important}.text-deep-orange-5{color:#ff7043!important}.text-deep-orange-6{color:#ff5722!important}.text-deep-orange-7{color:#f4511e!important}.text-deep-orange-8{color:#e64a19!important}.text-deep-orange-9{color:#d84315!important}.text-deep-orange-10{color:#bf360c!important}.text-deep-orange-11{color:#ff9e80!important}.text-deep-orange-12{color:#ff6e40!important}.text-deep-orange-13{color:#ff3d00!important}.text-deep-orange-14{color:#dd2c00!important}.text-brown{color:#795548!important}.text-brown-1{color:#efebe9!important}.text-brown-2{color:#d7ccc8!important}.text-brown-3{color:#bcaaa4!important}.text-brown-4{color:#a1887f!important}.text-brown-5{color:#8d6e63!important}.text-brown-6{color:#795548!important}.text-brown-7{color:#6d4c41!important}.text-brown-8{color:#5d4037!important}.text-brown-9{color:#4e342e!important}.text-brown-10{color:#3e2723!important}.text-brown-11{color:#d7ccc8!important}.text-brown-12{color:#bcaaa4!important}.text-brown-13{color:#8d6e63!important}.text-brown-14{color:#5d4037!important}.text-grey{color:#9e9e9e!important}.text-grey-1{color:#fafafa!important}.text-grey-2{color:#f5f5f5!important}.text-grey-3{color:#eee!important}.text-grey-4{color:#e0e0e0!important}.text-grey-5{color:#bdbdbd!important}.text-grey-6{color:#9e9e9e!important}.text-grey-7{color:#757575!important}.text-grey-8{color:#616161!important}.text-grey-9{color:#424242!important}.text-grey-10{color:#212121!important}.text-grey-11{color:#f5f5f5!important}.text-grey-12{color:#eee!important}.text-grey-13{color:#bdbdbd!important}.text-grey-14{color:#616161!important}.text-blue-grey{color:#607d8b!important}.text-blue-grey-1{color:#eceff1!important}.text-blue-grey-2{color:#cfd8dc!important}.text-blue-grey-3{color:#b0bec5!important}.text-blue-grey-4{color:#90a4ae!important}.text-blue-grey-5{color:#78909c!important}.text-blue-grey-6{color:#607d8b!important}.text-blue-grey-7{color:#546e7a!important}.text-blue-grey-8{color:#455a64!important}.text-blue-grey-9{color:#37474f!important}.text-blue-grey-10{color:#263238!important}.text-blue-grey-11{color:#cfd8dc!important}.text-blue-grey-12{color:#b0bec5!important}.text-blue-grey-13{color:#78909c!important}.text-blue-grey-14{color:#455a64!important}.bg-red{background:#f44336!important}.bg-red-1{background:#ffebee!important}.bg-red-2{background:#ffcdd2!important}.bg-red-3{background:#ef9a9a!important}.bg-red-4{background:#e57373!important}.bg-red-5{background:#ef5350!important}.bg-red-6{background:#f44336!important}.bg-red-7{background:#e53935!important}.bg-red-8{background:#d32f2f!important}.bg-red-9{background:#c62828!important}.bg-red-10{background:#b71c1c!important}.bg-red-11{background:#ff8a80!important}.bg-red-12{background:#ff5252!important}.bg-red-13{background:#ff1744!important}.bg-red-14{background:#d50000!important}.bg-pink{background:#e91e63!important}.bg-pink-1{background:#fce4ec!important}.bg-pink-2{background:#f8bbd0!important}.bg-pink-3{background:#f48fb1!important}.bg-pink-4{background:#f06292!important}.bg-pink-5{background:#ec407a!important}.bg-pink-6{background:#e91e63!important}.bg-pink-7{background:#d81b60!important}.bg-pink-8{background:#c2185b!important}.bg-pink-9{background:#ad1457!important}.bg-pink-10{background:#880e4f!important}.bg-pink-11{background:#ff80ab!important}.bg-pink-12{background:#ff4081!important}.bg-pink-13{background:#f50057!important}.bg-pink-14{background:#c51162!important}.bg-purple{background:#9c27b0!important}.bg-purple-1{background:#f3e5f5!important}.bg-purple-2{background:#e1bee7!important}.bg-purple-3{background:#ce93d8!important}.bg-purple-4{background:#ba68c8!important}.bg-purple-5{background:#ab47bc!important}.bg-purple-6{background:#9c27b0!important}.bg-purple-7{background:#8e24aa!important}.bg-purple-8{background:#7b1fa2!important}.bg-purple-9{background:#6a1b9a!important}.bg-purple-10{background:#4a148c!important}.bg-purple-11{background:#ea80fc!important}.bg-purple-12{background:#e040fb!important}.bg-purple-13{background:#d500f9!important}.bg-purple-14{background:#aa00ff!important}.bg-deep-purple{background:#673ab7!important}.bg-deep-purple-1{background:#ede7f6!important}.bg-deep-purple-2{background:#d1c4e9!important}.bg-deep-purple-3{background:#b39ddb!important}.bg-deep-purple-4{background:#9575cd!important}.bg-deep-purple-5{background:#7e57c2!important}.bg-deep-purple-6{background:#673ab7!important}.bg-deep-purple-7{background:#5e35b1!important}.bg-deep-purple-8{background:#512da8!important}.bg-deep-purple-9{background:#4527a0!important}.bg-deep-purple-10{background:#311b92!important}.bg-deep-purple-11{background:#b388ff!important}.bg-deep-purple-12{background:#7c4dff!important}.bg-deep-purple-13{background:#651fff!important}.bg-deep-purple-14{background:#6200ea!important}.bg-indigo{background:#3f51b5!important}.bg-indigo-1{background:#e8eaf6!important}.bg-indigo-2{background:#c5cae9!important}.bg-indigo-3{background:#9fa8da!important}.bg-indigo-4{background:#7986cb!important}.bg-indigo-5{background:#5c6bc0!important}.bg-indigo-6{background:#3f51b5!important}.bg-indigo-7{background:#3949ab!important}.bg-indigo-8{background:#303f9f!important}.bg-indigo-9{background:#283593!important}.bg-indigo-10{background:#1a237e!important}.bg-indigo-11{background:#8c9eff!important}.bg-indigo-12{background:#536dfe!important}.bg-indigo-13{background:#3d5afe!important}.bg-indigo-14{background:#304ffe!important}.bg-blue{background:#2196f3!important}.bg-blue-1{background:#e3f2fd!important}.bg-blue-2{background:#bbdefb!important}.bg-blue-3{background:#90caf9!important}.bg-blue-4{background:#64b5f6!important}.bg-blue-5{background:#42a5f5!important}.bg-blue-6{background:#2196f3!important}.bg-blue-7{background:#1e88e5!important}.bg-blue-8{background:#1976d2!important}.bg-blue-9{background:#1565c0!important}.bg-blue-10{background:#0d47a1!important}.bg-blue-11{background:#82b1ff!important}.bg-blue-12{background:#448aff!important}.bg-blue-13{background:#2979ff!important}.bg-blue-14{background:#2962ff!important}.bg-light-blue{background:#03a9f4!important}.bg-light-blue-1{background:#e1f5fe!important}.bg-light-blue-2{background:#b3e5fc!important}.bg-light-blue-3{background:#81d4fa!important}.bg-light-blue-4{background:#4fc3f7!important}.bg-light-blue-5{background:#29b6f6!important}.bg-light-blue-6{background:#03a9f4!important}.bg-light-blue-7{background:#039be5!important}.bg-light-blue-8{background:#0288d1!important}.bg-light-blue-9{background:#0277bd!important}.bg-light-blue-10{background:#01579b!important}.bg-light-blue-11{background:#80d8ff!important}.bg-light-blue-12{background:#40c4ff!important}.bg-light-blue-13{background:#00b0ff!important}.bg-light-blue-14{background:#0091ea!important}.bg-cyan{background:#00bcd4!important}.bg-cyan-1{background:#e0f7fa!important}.bg-cyan-2{background:#b2ebf2!important}.bg-cyan-3{background:#80deea!important}.bg-cyan-4{background:#4dd0e1!important}.bg-cyan-5{background:#26c6da!important}.bg-cyan-6{background:#00bcd4!important}.bg-cyan-7{background:#00acc1!important}.bg-cyan-8{background:#0097a7!important}.bg-cyan-9{background:#00838f!important}.bg-cyan-10{background:#006064!important}.bg-cyan-11{background:#84ffff!important}.bg-cyan-12{background:#18ffff!important}.bg-cyan-13{background:#00e5ff!important}.bg-cyan-14{background:#00b8d4!important}.bg-teal{background:#009688!important}.bg-teal-1{background:#e0f2f1!important}.bg-teal-2{background:#b2dfdb!important}.bg-teal-3{background:#80cbc4!important}.bg-teal-4{background:#4db6ac!important}.bg-teal-5{background:#26a69a!important}.bg-teal-6{background:#009688!important}.bg-teal-7{background:#00897b!important}.bg-teal-8{background:#00796b!important}.bg-teal-9{background:#00695c!important}.bg-teal-10{background:#004d40!important}.bg-teal-11{background:#a7ffeb!important}.bg-teal-12{background:#64ffda!important}.bg-teal-13{background:#1de9b6!important}.bg-teal-14{background:#00bfa5!important}.bg-green{background:#4caf50!important}.bg-green-1{background:#e8f5e9!important}.bg-green-2{background:#c8e6c9!important}.bg-green-3{background:#a5d6a7!important}.bg-green-4{background:#81c784!important}.bg-green-5{background:#66bb6a!important}.bg-green-6{background:#4caf50!important}.bg-green-7{background:#43a047!important}.bg-green-8{background:#388e3c!important}.bg-green-9{background:#2e7d32!important}.bg-green-10{background:#1b5e20!important}.bg-green-11{background:#b9f6ca!important}.bg-green-12{background:#69f0ae!important}.bg-green-13{background:#00e676!important}.bg-green-14{background:#00c853!important}.bg-light-green{background:#8bc34a!important}.bg-light-green-1{background:#f1f8e9!important}.bg-light-green-2{background:#dcedc8!important}.bg-light-green-3{background:#c5e1a5!important}.bg-light-green-4{background:#aed581!important}.bg-light-green-5{background:#9ccc65!important}.bg-light-green-6{background:#8bc34a!important}.bg-light-green-7{background:#7cb342!important}.bg-light-green-8{background:#689f38!important}.bg-light-green-9{background:#558b2f!important}.bg-light-green-10{background:#33691e!important}.bg-light-green-11{background:#ccff90!important}.bg-light-green-12{background:#b2ff59!important}.bg-light-green-13{background:#76ff03!important}.bg-light-green-14{background:#64dd17!important}.bg-lime{background:#cddc39!important}.bg-lime-1{background:#f9fbe7!important}.bg-lime-2{background:#f0f4c3!important}.bg-lime-3{background:#e6ee9c!important}.bg-lime-4{background:#dce775!important}.bg-lime-5{background:#d4e157!important}.bg-lime-6{background:#cddc39!important}.bg-lime-7{background:#c0ca33!important}.bg-lime-8{background:#afb42b!important}.bg-lime-9{background:#9e9d24!important}.bg-lime-10{background:#827717!important}.bg-lime-11{background:#f4ff81!important}.bg-lime-12{background:#eeff41!important}.bg-lime-13{background:#c6ff00!important}.bg-lime-14{background:#aeea00!important}.bg-yellow{background:#ffeb3b!important}.bg-yellow-1{background:#fffde7!important}.bg-yellow-2{background:#fff9c4!important}.bg-yellow-3{background:#fff59d!important}.bg-yellow-4{background:#fff176!important}.bg-yellow-5{background:#ffee58!important}.bg-yellow-6{background:#ffeb3b!important}.bg-yellow-7{background:#fdd835!important}.bg-yellow-8{background:#fbc02d!important}.bg-yellow-9{background:#f9a825!important}.bg-yellow-10{background:#f57f17!important}.bg-yellow-11{background:#ffff8d!important}.bg-yellow-12{background:#ffff00!important}.bg-yellow-13{background:#ffea00!important}.bg-yellow-14{background:#ffd600!important}.bg-amber{background:#ffc107!important}.bg-amber-1{background:#fff8e1!important}.bg-amber-2{background:#ffecb3!important}.bg-amber-3{background:#ffe082!important}.bg-amber-4{background:#ffd54f!important}.bg-amber-5{background:#ffca28!important}.bg-amber-6{background:#ffc107!important}.bg-amber-7{background:#ffb300!important}.bg-amber-8{background:#ffa000!important}.bg-amber-9{background:#ff8f00!important}.bg-amber-10{background:#ff6f00!important}.bg-amber-11{background:#ffe57f!important}.bg-amber-12{background:#ffd740!important}.bg-amber-13{background:#ffc400!important}.bg-amber-14{background:#ffab00!important}.bg-orange{background:#ff9800!important}.bg-orange-1{background:#fff3e0!important}.bg-orange-2{background:#ffe0b2!important}.bg-orange-3{background:#ffcc80!important}.bg-orange-4{background:#ffb74d!important}.bg-orange-5{background:#ffa726!important}.bg-orange-6{background:#ff9800!important}.bg-orange-7{background:#fb8c00!important}.bg-orange-8{background:#f57c00!important}.bg-orange-9{background:#ef6c00!important}.bg-orange-10{background:#e65100!important}.bg-orange-11{background:#ffd180!important}.bg-orange-12{background:#ffab40!important}.bg-orange-13{background:#ff9100!important}.bg-orange-14{background:#ff6d00!important}.bg-deep-orange{background:#ff5722!important}.bg-deep-orange-1{background:#fbe9e7!important}.bg-deep-orange-2{background:#ffccbc!important}.bg-deep-orange-3{background:#ffab91!important}.bg-deep-orange-4{background:#ff8a65!important}.bg-deep-orange-5{background:#ff7043!important}.bg-deep-orange-6{background:#ff5722!important}.bg-deep-orange-7{background:#f4511e!important}.bg-deep-orange-8{background:#e64a19!important}.bg-deep-orange-9{background:#d84315!important}.bg-deep-orange-10{background:#bf360c!important}.bg-deep-orange-11{background:#ff9e80!important}.bg-deep-orange-12{background:#ff6e40!important}.bg-deep-orange-13{background:#ff3d00!important}.bg-deep-orange-14{background:#dd2c00!important}.bg-brown{background:#795548!important}.bg-brown-1{background:#efebe9!important}.bg-brown-2{background:#d7ccc8!important}.bg-brown-3{background:#bcaaa4!important}.bg-brown-4{background:#a1887f!important}.bg-brown-5{background:#8d6e63!important}.bg-brown-6{background:#795548!important}.bg-brown-7{background:#6d4c41!important}.bg-brown-8{background:#5d4037!important}.bg-brown-9{background:#4e342e!important}.bg-brown-10{background:#3e2723!important}.bg-brown-11{background:#d7ccc8!important}.bg-brown-12{background:#bcaaa4!important}.bg-brown-13{background:#8d6e63!important}.bg-brown-14{background:#5d4037!important}.bg-grey{background:#9e9e9e!important}.bg-grey-1{background:#fafafa!important}.bg-grey-2{background:#f5f5f5!important}.bg-grey-3{background:#eeeeee!important}.bg-grey-4{background:#e0e0e0!important}.bg-grey-5{background:#bdbdbd!important}.bg-grey-6{background:#9e9e9e!important}.bg-grey-7{background:#757575!important}.bg-grey-8{background:#616161!important}.bg-grey-9{background:#424242!important}.bg-grey-10{background:#212121!important}.bg-grey-11{background:#f5f5f5!important}.bg-grey-12{background:#eeeeee!important}.bg-grey-13{background:#bdbdbd!important}.bg-grey-14{background:#616161!important}.bg-blue-grey{background:#607d8b!important}.bg-blue-grey-1{background:#eceff1!important}.bg-blue-grey-2{background:#cfd8dc!important}.bg-blue-grey-3{background:#b0bec5!important}.bg-blue-grey-4{background:#90a4ae!important}.bg-blue-grey-5{background:#78909c!important}.bg-blue-grey-6{background:#607d8b!important}.bg-blue-grey-7{background:#546e7a!important}.bg-blue-grey-8{background:#455a64!important}.bg-blue-grey-9{background:#37474f!important}.bg-blue-grey-10{background:#263238!important}.bg-blue-grey-11{background:#cfd8dc!important}.bg-blue-grey-12{background:#b0bec5!important}.bg-blue-grey-13{background:#78909c!important}.bg-blue-grey-14{background:#455a64!important}.shadow-transition{transition:box-shadow .28s cubic-bezier(.4,0,.2,1)!important}.shadow-1{box-shadow:0 1px 3px #0003,0 1px 1px #00000024,0 2px 1px -1px #0000001f}.shadow-up-1{box-shadow:0 -1px 3px #0003,0 -1px 1px #00000024,0 -2px 1px -1px #0000001f}.shadow-2{box-shadow:0 1px 5px #0003,0 2px 2px #00000024,0 3px 1px -2px #0000001f}.shadow-up-2{box-shadow:0 -1px 5px #0003,0 -2px 2px #00000024,0 -3px 1px -2px #0000001f}.shadow-3{box-shadow:0 1px 8px #0003,0 3px 4px #00000024,0 3px 3px -2px #0000001f}.shadow-up-3{box-shadow:0 -1px 8px #0003,0 -3px 4px #00000024,0 -3px 3px -2px #0000001f}.shadow-4{box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f}.shadow-up-4{box-shadow:0 -2px 4px -1px #0003,0 -4px 5px #00000024,0 -1px 10px #0000001f}.shadow-5{box-shadow:0 3px 5px -1px #0003,0 5px 8px #00000024,0 1px 14px #0000001f}.shadow-up-5{box-shadow:0 -3px 5px -1px #0003,0 -5px 8px #00000024,0 -1px 14px #0000001f}.shadow-6{box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}.shadow-up-6{box-shadow:0 -3px 5px -1px #0003,0 -6px 10px #00000024,0 -1px 18px #0000001f}.shadow-7{box-shadow:0 4px 5px -2px #0003,0 7px 10px 1px #00000024,0 2px 16px 1px #0000001f}.shadow-up-7{box-shadow:0 -4px 5px -2px #0003,0 -7px 10px 1px #00000024,0 -2px 16px 1px #0000001f}.shadow-8{box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.shadow-up-8{box-shadow:0 -5px 5px -3px #0003,0 -8px 10px 1px #00000024,0 -3px 14px 2px #0000001f}.shadow-9{box-shadow:0 5px 6px -3px #0003,0 9px 12px 1px #00000024,0 3px 16px 2px #0000001f}.shadow-up-9{box-shadow:0 -5px 6px -3px #0003,0 -9px 12px 1px #00000024,0 -3px 16px 2px #0000001f}.shadow-10{box-shadow:0 6px 6px -3px #0003,0 10px 14px 1px #00000024,0 4px 18px 3px #0000001f}.shadow-up-10{box-shadow:0 -6px 6px -3px #0003,0 -10px 14px 1px #00000024,0 -4px 18px 3px #0000001f}.shadow-11{box-shadow:0 6px 7px -4px #0003,0 11px 15px 1px #00000024,0 4px 20px 3px #0000001f}.shadow-up-11{box-shadow:0 -6px 7px -4px #0003,0 -11px 15px 1px #00000024,0 -4px 20px 3px #0000001f}.shadow-12{box-shadow:0 7px 8px -4px #0003,0 12px 17px 2px #00000024,0 5px 22px 4px #0000001f}.shadow-up-12{box-shadow:0 -7px 8px -4px #0003,0 -12px 17px 2px #00000024,0 -5px 22px 4px #0000001f}.shadow-13{box-shadow:0 7px 8px -4px #0003,0 13px 19px 2px #00000024,0 5px 24px 4px #0000001f}.shadow-up-13{box-shadow:0 -7px 8px -4px #0003,0 -13px 19px 2px #00000024,0 -5px 24px 4px #0000001f}.shadow-14{box-shadow:0 7px 9px -4px #0003,0 14px 21px 2px #00000024,0 5px 26px 4px #0000001f}.shadow-up-14{box-shadow:0 -7px 9px -4px #0003,0 -14px 21px 2px #00000024,0 -5px 26px 4px #0000001f}.shadow-15{box-shadow:0 8px 9px -5px #0003,0 15px 22px 2px #00000024,0 6px 28px 5px #0000001f}.shadow-up-15{box-shadow:0 -8px 9px -5px #0003,0 -15px 22px 2px #00000024,0 -6px 28px 5px #0000001f}.shadow-16{box-shadow:0 8px 10px -5px #0003,0 16px 24px 2px #00000024,0 6px 30px 5px #0000001f}.shadow-up-16{box-shadow:0 -8px 10px -5px #0003,0 -16px 24px 2px #00000024,0 -6px 30px 5px #0000001f}.shadow-17{box-shadow:0 8px 11px -5px #0003,0 17px 26px 2px #00000024,0 6px 32px 5px #0000001f}.shadow-up-17{box-shadow:0 -8px 11px -5px #0003,0 -17px 26px 2px #00000024,0 -6px 32px 5px #0000001f}.shadow-18{box-shadow:0 9px 11px -5px #0003,0 18px 28px 2px #00000024,0 7px 34px 6px #0000001f}.shadow-up-18{box-shadow:0 -9px 11px -5px #0003,0 -18px 28px 2px #00000024,0 -7px 34px 6px #0000001f}.shadow-19{box-shadow:0 9px 12px -6px #0003,0 19px 29px 2px #00000024,0 7px 36px 6px #0000001f}.shadow-up-19{box-shadow:0 -9px 12px -6px #0003,0 -19px 29px 2px #00000024,0 -7px 36px 6px #0000001f}.shadow-20{box-shadow:0 10px 13px -6px #0003,0 20px 31px 3px #00000024,0 8px 38px 7px #0000001f}.shadow-up-20{box-shadow:0 -10px 13px -6px #0003,0 -20px 31px 3px #00000024,0 -8px 38px 7px #0000001f}.shadow-21{box-shadow:0 10px 13px -6px #0003,0 21px 33px 3px #00000024,0 8px 40px 7px #0000001f}.shadow-up-21{box-shadow:0 -10px 13px -6px #0003,0 -21px 33px 3px #00000024,0 -8px 40px 7px #0000001f}.shadow-22{box-shadow:0 10px 14px -6px #0003,0 22px 35px 3px #00000024,0 8px 42px 7px #0000001f}.shadow-up-22{box-shadow:0 -10px 14px -6px #0003,0 -22px 35px 3px #00000024,0 -8px 42px 7px #0000001f}.shadow-23{box-shadow:0 11px 14px -7px #0003,0 23px 36px 3px #00000024,0 9px 44px 8px #0000001f}.shadow-up-23{box-shadow:0 -11px 14px -7px #0003,0 -23px 36px 3px #00000024,0 -9px 44px 8px #0000001f}.shadow-24{box-shadow:0 11px 15px -7px #0003,0 24px 38px 3px #00000024,0 9px 46px 8px #0000001f}.shadow-up-24{box-shadow:0 -11px 15px -7px #0003,0 -24px 38px 3px #00000024,0 -9px 46px 8px #0000001f}.inset-shadow{box-shadow:0 7px 9px -7px #000000b3 inset}.inset-shadow-down{box-shadow:0 -7px 9px -7px #000000b3 inset}body.body--dark .shadow-1{box-shadow:0 1px 3px #fff3,0 1px 1px #ffffff24,0 2px 1px -1px #ffffff1f}body.body--dark .shadow-up-1{box-shadow:0 -1px 3px #fff3,0 -1px 1px #ffffff24,0 -2px 1px -1px #ffffff1f}body.body--dark .shadow-2{box-shadow:0 1px 5px #fff3,0 2px 2px #ffffff24,0 3px 1px -2px #ffffff1f}body.body--dark .shadow-up-2{box-shadow:0 -1px 5px #fff3,0 -2px 2px #ffffff24,0 -3px 1px -2px #ffffff1f}body.body--dark .shadow-3{box-shadow:0 1px 8px #fff3,0 3px 4px #ffffff24,0 3px 3px -2px #ffffff1f}body.body--dark .shadow-up-3{box-shadow:0 -1px 8px #fff3,0 -3px 4px #ffffff24,0 -3px 3px -2px #ffffff1f}body.body--dark .shadow-4{box-shadow:0 2px 4px -1px #fff3,0 4px 5px #ffffff24,0 1px 10px #ffffff1f}body.body--dark .shadow-up-4{box-shadow:0 -2px 4px -1px #fff3,0 -4px 5px #ffffff24,0 -1px 10px #ffffff1f}body.body--dark .shadow-5{box-shadow:0 3px 5px -1px #fff3,0 5px 8px #ffffff24,0 1px 14px #ffffff1f}body.body--dark .shadow-up-5{box-shadow:0 -3px 5px -1px #fff3,0 -5px 8px #ffffff24,0 -1px 14px #ffffff1f}body.body--dark .shadow-6{box-shadow:0 3px 5px -1px #fff3,0 6px 10px #ffffff24,0 1px 18px #ffffff1f}body.body--dark .shadow-up-6{box-shadow:0 -3px 5px -1px #fff3,0 -6px 10px #ffffff24,0 -1px 18px #ffffff1f}body.body--dark .shadow-7{box-shadow:0 4px 5px -2px #fff3,0 7px 10px 1px #ffffff24,0 2px 16px 1px #ffffff1f}body.body--dark .shadow-up-7{box-shadow:0 -4px 5px -2px #fff3,0 -7px 10px 1px #ffffff24,0 -2px 16px 1px #ffffff1f}body.body--dark .shadow-8{box-shadow:0 5px 5px -3px #fff3,0 8px 10px 1px #ffffff24,0 3px 14px 2px #ffffff1f}body.body--dark .shadow-up-8{box-shadow:0 -5px 5px -3px #fff3,0 -8px 10px 1px #ffffff24,0 -3px 14px 2px #ffffff1f}body.body--dark .shadow-9{box-shadow:0 5px 6px -3px #fff3,0 9px 12px 1px #ffffff24,0 3px 16px 2px #ffffff1f}body.body--dark .shadow-up-9{box-shadow:0 -5px 6px -3px #fff3,0 -9px 12px 1px #ffffff24,0 -3px 16px 2px #ffffff1f}body.body--dark .shadow-10{box-shadow:0 6px 6px -3px #fff3,0 10px 14px 1px #ffffff24,0 4px 18px 3px #ffffff1f}body.body--dark .shadow-up-10{box-shadow:0 -6px 6px -3px #fff3,0 -10px 14px 1px #ffffff24,0 -4px 18px 3px #ffffff1f}body.body--dark .shadow-11{box-shadow:0 6px 7px -4px #fff3,0 11px 15px 1px #ffffff24,0 4px 20px 3px #ffffff1f}body.body--dark .shadow-up-11{box-shadow:0 -6px 7px -4px #fff3,0 -11px 15px 1px #ffffff24,0 -4px 20px 3px #ffffff1f}body.body--dark .shadow-12{box-shadow:0 7px 8px -4px #fff3,0 12px 17px 2px #ffffff24,0 5px 22px 4px #ffffff1f}body.body--dark .shadow-up-12{box-shadow:0 -7px 8px -4px #fff3,0 -12px 17px 2px #ffffff24,0 -5px 22px 4px #ffffff1f}body.body--dark .shadow-13{box-shadow:0 7px 8px -4px #fff3,0 13px 19px 2px #ffffff24,0 5px 24px 4px #ffffff1f}body.body--dark .shadow-up-13{box-shadow:0 -7px 8px -4px #fff3,0 -13px 19px 2px #ffffff24,0 -5px 24px 4px #ffffff1f}body.body--dark .shadow-14{box-shadow:0 7px 9px -4px #fff3,0 14px 21px 2px #ffffff24,0 5px 26px 4px #ffffff1f}body.body--dark .shadow-up-14{box-shadow:0 -7px 9px -4px #fff3,0 -14px 21px 2px #ffffff24,0 -5px 26px 4px #ffffff1f}body.body--dark .shadow-15{box-shadow:0 8px 9px -5px #fff3,0 15px 22px 2px #ffffff24,0 6px 28px 5px #ffffff1f}body.body--dark .shadow-up-15{box-shadow:0 -8px 9px -5px #fff3,0 -15px 22px 2px #ffffff24,0 -6px 28px 5px #ffffff1f}body.body--dark .shadow-16{box-shadow:0 8px 10px -5px #fff3,0 16px 24px 2px #ffffff24,0 6px 30px 5px #ffffff1f}body.body--dark .shadow-up-16{box-shadow:0 -8px 10px -5px #fff3,0 -16px 24px 2px #ffffff24,0 -6px 30px 5px #ffffff1f}body.body--dark .shadow-17{box-shadow:0 8px 11px -5px #fff3,0 17px 26px 2px #ffffff24,0 6px 32px 5px #ffffff1f}body.body--dark .shadow-up-17{box-shadow:0 -8px 11px -5px #fff3,0 -17px 26px 2px #ffffff24,0 -6px 32px 5px #ffffff1f}body.body--dark .shadow-18{box-shadow:0 9px 11px -5px #fff3,0 18px 28px 2px #ffffff24,0 7px 34px 6px #ffffff1f}body.body--dark .shadow-up-18{box-shadow:0 -9px 11px -5px #fff3,0 -18px 28px 2px #ffffff24,0 -7px 34px 6px #ffffff1f}body.body--dark .shadow-19{box-shadow:0 9px 12px -6px #fff3,0 19px 29px 2px #ffffff24,0 7px 36px 6px #ffffff1f}body.body--dark .shadow-up-19{box-shadow:0 -9px 12px -6px #fff3,0 -19px 29px 2px #ffffff24,0 -7px 36px 6px #ffffff1f}body.body--dark .shadow-20{box-shadow:0 10px 13px -6px #fff3,0 20px 31px 3px #ffffff24,0 8px 38px 7px #ffffff1f}body.body--dark .shadow-up-20{box-shadow:0 -10px 13px -6px #fff3,0 -20px 31px 3px #ffffff24,0 -8px 38px 7px #ffffff1f}body.body--dark .shadow-21{box-shadow:0 10px 13px -6px #fff3,0 21px 33px 3px #ffffff24,0 8px 40px 7px #ffffff1f}body.body--dark .shadow-up-21{box-shadow:0 -10px 13px -6px #fff3,0 -21px 33px 3px #ffffff24,0 -8px 40px 7px #ffffff1f}body.body--dark .shadow-22{box-shadow:0 10px 14px -6px #fff3,0 22px 35px 3px #ffffff24,0 8px 42px 7px #ffffff1f}body.body--dark .shadow-up-22{box-shadow:0 -10px 14px -6px #fff3,0 -22px 35px 3px #ffffff24,0 -8px 42px 7px #ffffff1f}body.body--dark .shadow-23{box-shadow:0 11px 14px -7px #fff3,0 23px 36px 3px #ffffff24,0 9px 44px 8px #ffffff1f}body.body--dark .shadow-up-23{box-shadow:0 -11px 14px -7px #fff3,0 -23px 36px 3px #ffffff24,0 -9px 44px 8px #ffffff1f}body.body--dark .shadow-24{box-shadow:0 11px 15px -7px #fff3,0 24px 38px 3px #ffffff24,0 9px 46px 8px #ffffff1f}body.body--dark .shadow-up-24{box-shadow:0 -11px 15px -7px #fff3,0 -24px 38px 3px #ffffff24,0 -9px 46px 8px #ffffff1f}body.body--dark .inset-shadow{box-shadow:0 7px 9px -7px #ffffffb3 inset}body.body--dark .inset-shadow-down{box-shadow:0 -7px 9px -7px #ffffffb3 inset}.no-shadow,.shadow-0{box-shadow:none!important}.z-marginals{z-index:2000}.z-notify{z-index:9500}.z-fullscreen{z-index:6000}.z-inherit{z-index:inherit!important}.row,.column,.flex{display:flex;flex-wrap:wrap}.row.inline,.column.inline,.flex.inline{display:inline-flex}.row.reverse{flex-direction:row-reverse}.column{flex-direction:column}.column.reverse{flex-direction:column-reverse}.wrap{flex-wrap:wrap}.no-wrap{flex-wrap:nowrap}.reverse-wrap{flex-wrap:wrap-reverse}.order-first{order:-10000}.order-last{order:10000}.order-none{order:0}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center,.flex-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center,.flex-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.content-start{align-content:flex-start}.content-end{align-content:flex-end}.content-center{align-content:center}.content-stretch{align-content:stretch}.content-between{align-content:space-between}.content-around{align-content:space-around}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.self-baseline{align-self:baseline}.self-stretch{align-self:stretch}.q-gutter-x-none,.q-gutter-none{margin-left:0}.q-gutter-x-none>*,.q-gutter-none>*{margin-left:0}.q-gutter-y-none,.q-gutter-none{margin-top:0}.q-gutter-y-none>*,.q-gutter-none>*{margin-top:0}.q-col-gutter-x-none,.q-col-gutter-none{margin-left:0}.q-col-gutter-x-none>*,.q-col-gutter-none>*{padding-left:0}.q-col-gutter-y-none,.q-col-gutter-none{margin-top:0}.q-col-gutter-y-none>*,.q-col-gutter-none>*{padding-top:0}.q-gutter-x-xs,.q-gutter-xs{margin-left:-4px}.q-gutter-x-xs>*,.q-gutter-xs>*{margin-left:4px}.q-gutter-y-xs,.q-gutter-xs{margin-top:-4px}.q-gutter-y-xs>*,.q-gutter-xs>*{margin-top:4px}.q-col-gutter-x-xs,.q-col-gutter-xs{margin-left:-4px}.q-col-gutter-x-xs>*,.q-col-gutter-xs>*{padding-left:4px}.q-col-gutter-y-xs,.q-col-gutter-xs{margin-top:-4px}.q-col-gutter-y-xs>*,.q-col-gutter-xs>*{padding-top:4px}.q-gutter-x-sm,.q-gutter-sm{margin-left:-8px}.q-gutter-x-sm>*,.q-gutter-sm>*{margin-left:8px}.q-gutter-y-sm,.q-gutter-sm{margin-top:-8px}.q-gutter-y-sm>*,.q-gutter-sm>*{margin-top:8px}.q-col-gutter-x-sm,.q-col-gutter-sm{margin-left:-8px}.q-col-gutter-x-sm>*,.q-col-gutter-sm>*{padding-left:8px}.q-col-gutter-y-sm,.q-col-gutter-sm{margin-top:-8px}.q-col-gutter-y-sm>*,.q-col-gutter-sm>*{padding-top:8px}.q-gutter-x-md,.q-gutter-md{margin-left:-16px}.q-gutter-x-md>*,.q-gutter-md>*{margin-left:16px}.q-gutter-y-md,.q-gutter-md{margin-top:-16px}.q-gutter-y-md>*,.q-gutter-md>*{margin-top:16px}.q-col-gutter-x-md,.q-col-gutter-md{margin-left:-16px}.q-col-gutter-x-md>*,.q-col-gutter-md>*{padding-left:16px}.q-col-gutter-y-md,.q-col-gutter-md{margin-top:-16px}.q-col-gutter-y-md>*,.q-col-gutter-md>*{padding-top:16px}.q-gutter-x-lg,.q-gutter-lg{margin-left:-24px}.q-gutter-x-lg>*,.q-gutter-lg>*{margin-left:24px}.q-gutter-y-lg,.q-gutter-lg{margin-top:-24px}.q-gutter-y-lg>*,.q-gutter-lg>*{margin-top:24px}.q-col-gutter-x-lg,.q-col-gutter-lg{margin-left:-24px}.q-col-gutter-x-lg>*,.q-col-gutter-lg>*{padding-left:24px}.q-col-gutter-y-lg,.q-col-gutter-lg{margin-top:-24px}.q-col-gutter-y-lg>*,.q-col-gutter-lg>*{padding-top:24px}.q-gutter-x-xl,.q-gutter-xl{margin-left:-48px}.q-gutter-x-xl>*,.q-gutter-xl>*{margin-left:48px}.q-gutter-y-xl,.q-gutter-xl{margin-top:-48px}.q-gutter-y-xl>*,.q-gutter-xl>*{margin-top:48px}.q-col-gutter-x-xl,.q-col-gutter-xl{margin-left:-48px}.q-col-gutter-x-xl>*,.q-col-gutter-xl>*{padding-left:48px}.q-col-gutter-y-xl,.q-col-gutter-xl{margin-top:-48px}.q-col-gutter-y-xl>*,.q-col-gutter-xl>*{padding-top:48px}@media (min-width: 0){.row>.col,.flex>.col,.row>.col-auto,.flex>.col-auto,.row>.col-grow,.flex>.col-grow,.row>.col-shrink,.flex>.col-shrink,.row>.col-xs,.flex>.col-xs,.row>.col-xs-auto,.row>.col-12,.row>.col-xs-12,.row>.col-11,.row>.col-xs-11,.row>.col-10,.row>.col-xs-10,.row>.col-9,.row>.col-xs-9,.row>.col-8,.row>.col-xs-8,.row>.col-7,.row>.col-xs-7,.row>.col-6,.row>.col-xs-6,.row>.col-5,.row>.col-xs-5,.row>.col-4,.row>.col-xs-4,.row>.col-3,.row>.col-xs-3,.row>.col-2,.row>.col-xs-2,.row>.col-1,.row>.col-xs-1,.row>.col-0,.row>.col-xs-0,.flex>.col-xs-auto,.flex>.col-12,.flex>.col-xs-12,.flex>.col-11,.flex>.col-xs-11,.flex>.col-10,.flex>.col-xs-10,.flex>.col-9,.flex>.col-xs-9,.flex>.col-8,.flex>.col-xs-8,.flex>.col-7,.flex>.col-xs-7,.flex>.col-6,.flex>.col-xs-6,.flex>.col-5,.flex>.col-xs-5,.flex>.col-4,.flex>.col-xs-4,.flex>.col-3,.flex>.col-xs-3,.flex>.col-2,.flex>.col-xs-2,.flex>.col-1,.flex>.col-xs-1,.flex>.col-0,.flex>.col-xs-0,.row>.col-xs-grow,.flex>.col-xs-grow,.row>.col-xs-shrink,.flex>.col-xs-shrink{width:auto;min-width:0;max-width:100%}.column>.col,.flex>.col,.column>.col-auto,.flex>.col-auto,.column>.col-grow,.flex>.col-grow,.column>.col-shrink,.flex>.col-shrink,.column>.col-xs,.flex>.col-xs,.column>.col-xs-auto,.column>.col-12,.column>.col-xs-12,.column>.col-11,.column>.col-xs-11,.column>.col-10,.column>.col-xs-10,.column>.col-9,.column>.col-xs-9,.column>.col-8,.column>.col-xs-8,.column>.col-7,.column>.col-xs-7,.column>.col-6,.column>.col-xs-6,.column>.col-5,.column>.col-xs-5,.column>.col-4,.column>.col-xs-4,.column>.col-3,.column>.col-xs-3,.column>.col-2,.column>.col-xs-2,.column>.col-1,.column>.col-xs-1,.column>.col-0,.column>.col-xs-0,.flex>.col-xs-auto,.flex>.col-12,.flex>.col-xs-12,.flex>.col-11,.flex>.col-xs-11,.flex>.col-10,.flex>.col-xs-10,.flex>.col-9,.flex>.col-xs-9,.flex>.col-8,.flex>.col-xs-8,.flex>.col-7,.flex>.col-xs-7,.flex>.col-6,.flex>.col-xs-6,.flex>.col-5,.flex>.col-xs-5,.flex>.col-4,.flex>.col-xs-4,.flex>.col-3,.flex>.col-xs-3,.flex>.col-2,.flex>.col-xs-2,.flex>.col-1,.flex>.col-xs-1,.flex>.col-0,.flex>.col-xs-0,.column>.col-xs-grow,.flex>.col-xs-grow,.column>.col-xs-shrink,.flex>.col-xs-shrink{height:auto;min-height:0;max-height:100%}.col,.col-xs{flex:10000 1 0%}.col-auto,.col-xs-auto,.col-12,.col-xs-12,.col-11,.col-xs-11,.col-10,.col-xs-10,.col-9,.col-xs-9,.col-8,.col-xs-8,.col-7,.col-xs-7,.col-6,.col-xs-6,.col-5,.col-xs-5,.col-4,.col-xs-4,.col-3,.col-xs-3,.col-2,.col-xs-2,.col-1,.col-xs-1,.col-0,.col-xs-0{flex:0 0 auto}.col-grow,.col-xs-grow{flex:1 0 auto}.col-shrink,.col-xs-shrink{flex:0 1 auto}.row>.col-0,.row>.col-xs-0{height:auto;width:0%}.row>.offset-0,.row>.offset-xs-0{margin-left:0%}.column>.col-0,.column>.col-xs-0{height:0%;width:auto}.row>.col-1,.row>.col-xs-1{height:auto;width:8.3333%}.row>.offset-1,.row>.offset-xs-1{margin-left:8.3333%}.column>.col-1,.column>.col-xs-1{height:8.3333%;width:auto}.row>.col-2,.row>.col-xs-2{height:auto;width:16.6667%}.row>.offset-2,.row>.offset-xs-2{margin-left:16.6667%}.column>.col-2,.column>.col-xs-2{height:16.6667%;width:auto}.row>.col-3,.row>.col-xs-3{height:auto;width:25%}.row>.offset-3,.row>.offset-xs-3{margin-left:25%}.column>.col-3,.column>.col-xs-3{height:25%;width:auto}.row>.col-4,.row>.col-xs-4{height:auto;width:33.3333%}.row>.offset-4,.row>.offset-xs-4{margin-left:33.3333%}.column>.col-4,.column>.col-xs-4{height:33.3333%;width:auto}.row>.col-5,.row>.col-xs-5{height:auto;width:41.6667%}.row>.offset-5,.row>.offset-xs-5{margin-left:41.6667%}.column>.col-5,.column>.col-xs-5{height:41.6667%;width:auto}.row>.col-6,.row>.col-xs-6{height:auto;width:50%}.row>.offset-6,.row>.offset-xs-6{margin-left:50%}.column>.col-6,.column>.col-xs-6{height:50%;width:auto}.row>.col-7,.row>.col-xs-7{height:auto;width:58.3333%}.row>.offset-7,.row>.offset-xs-7{margin-left:58.3333%}.column>.col-7,.column>.col-xs-7{height:58.3333%;width:auto}.row>.col-8,.row>.col-xs-8{height:auto;width:66.6667%}.row>.offset-8,.row>.offset-xs-8{margin-left:66.6667%}.column>.col-8,.column>.col-xs-8{height:66.6667%;width:auto}.row>.col-9,.row>.col-xs-9{height:auto;width:75%}.row>.offset-9,.row>.offset-xs-9{margin-left:75%}.column>.col-9,.column>.col-xs-9{height:75%;width:auto}.row>.col-10,.row>.col-xs-10{height:auto;width:83.3333%}.row>.offset-10,.row>.offset-xs-10{margin-left:83.3333%}.column>.col-10,.column>.col-xs-10{height:83.3333%;width:auto}.row>.col-11,.row>.col-xs-11{height:auto;width:91.6667%}.row>.offset-11,.row>.offset-xs-11{margin-left:91.6667%}.column>.col-11,.column>.col-xs-11{height:91.6667%;width:auto}.row>.col-12,.row>.col-xs-12{height:auto;width:100%}.row>.offset-12,.row>.offset-xs-12{margin-left:100%}.column>.col-12,.column>.col-xs-12{height:100%;width:auto}.row>.col-all{height:auto;flex:0 0 100%}}@media (min-width: 600px){.row>.col-sm,.flex>.col-sm,.row>.col-sm-auto,.row>.col-sm-12,.row>.col-sm-11,.row>.col-sm-10,.row>.col-sm-9,.row>.col-sm-8,.row>.col-sm-7,.row>.col-sm-6,.row>.col-sm-5,.row>.col-sm-4,.row>.col-sm-3,.row>.col-sm-2,.row>.col-sm-1,.row>.col-sm-0,.flex>.col-sm-auto,.flex>.col-sm-12,.flex>.col-sm-11,.flex>.col-sm-10,.flex>.col-sm-9,.flex>.col-sm-8,.flex>.col-sm-7,.flex>.col-sm-6,.flex>.col-sm-5,.flex>.col-sm-4,.flex>.col-sm-3,.flex>.col-sm-2,.flex>.col-sm-1,.flex>.col-sm-0,.row>.col-sm-grow,.flex>.col-sm-grow,.row>.col-sm-shrink,.flex>.col-sm-shrink{width:auto;min-width:0;max-width:100%}.column>.col-sm,.flex>.col-sm,.column>.col-sm-auto,.column>.col-sm-12,.column>.col-sm-11,.column>.col-sm-10,.column>.col-sm-9,.column>.col-sm-8,.column>.col-sm-7,.column>.col-sm-6,.column>.col-sm-5,.column>.col-sm-4,.column>.col-sm-3,.column>.col-sm-2,.column>.col-sm-1,.column>.col-sm-0,.flex>.col-sm-auto,.flex>.col-sm-12,.flex>.col-sm-11,.flex>.col-sm-10,.flex>.col-sm-9,.flex>.col-sm-8,.flex>.col-sm-7,.flex>.col-sm-6,.flex>.col-sm-5,.flex>.col-sm-4,.flex>.col-sm-3,.flex>.col-sm-2,.flex>.col-sm-1,.flex>.col-sm-0,.column>.col-sm-grow,.flex>.col-sm-grow,.column>.col-sm-shrink,.flex>.col-sm-shrink{height:auto;min-height:0;max-height:100%}.col-sm{flex:10000 1 0%}.col-sm-auto,.col-sm-12,.col-sm-11,.col-sm-10,.col-sm-9,.col-sm-8,.col-sm-7,.col-sm-6,.col-sm-5,.col-sm-4,.col-sm-3,.col-sm-2,.col-sm-1,.col-sm-0{flex:0 0 auto}.col-sm-grow{flex:1 0 auto}.col-sm-shrink{flex:0 1 auto}.row>.col-sm-0{height:auto;width:0%}.row>.offset-sm-0{margin-left:0%}.column>.col-sm-0{height:0%;width:auto}.row>.col-sm-1{height:auto;width:8.3333%}.row>.offset-sm-1{margin-left:8.3333%}.column>.col-sm-1{height:8.3333%;width:auto}.row>.col-sm-2{height:auto;width:16.6667%}.row>.offset-sm-2{margin-left:16.6667%}.column>.col-sm-2{height:16.6667%;width:auto}.row>.col-sm-3{height:auto;width:25%}.row>.offset-sm-3{margin-left:25%}.column>.col-sm-3{height:25%;width:auto}.row>.col-sm-4{height:auto;width:33.3333%}.row>.offset-sm-4{margin-left:33.3333%}.column>.col-sm-4{height:33.3333%;width:auto}.row>.col-sm-5{height:auto;width:41.6667%}.row>.offset-sm-5{margin-left:41.6667%}.column>.col-sm-5{height:41.6667%;width:auto}.row>.col-sm-6{height:auto;width:50%}.row>.offset-sm-6{margin-left:50%}.column>.col-sm-6{height:50%;width:auto}.row>.col-sm-7{height:auto;width:58.3333%}.row>.offset-sm-7{margin-left:58.3333%}.column>.col-sm-7{height:58.3333%;width:auto}.row>.col-sm-8{height:auto;width:66.6667%}.row>.offset-sm-8{margin-left:66.6667%}.column>.col-sm-8{height:66.6667%;width:auto}.row>.col-sm-9{height:auto;width:75%}.row>.offset-sm-9{margin-left:75%}.column>.col-sm-9{height:75%;width:auto}.row>.col-sm-10{height:auto;width:83.3333%}.row>.offset-sm-10{margin-left:83.3333%}.column>.col-sm-10{height:83.3333%;width:auto}.row>.col-sm-11{height:auto;width:91.6667%}.row>.offset-sm-11{margin-left:91.6667%}.column>.col-sm-11{height:91.6667%;width:auto}.row>.col-sm-12{height:auto;width:100%}.row>.offset-sm-12{margin-left:100%}.column>.col-sm-12{height:100%;width:auto}}@media (min-width: 1024px){.row>.col-md,.flex>.col-md,.row>.col-md-auto,.row>.col-md-12,.row>.col-md-11,.row>.col-md-10,.row>.col-md-9,.row>.col-md-8,.row>.col-md-7,.row>.col-md-6,.row>.col-md-5,.row>.col-md-4,.row>.col-md-3,.row>.col-md-2,.row>.col-md-1,.row>.col-md-0,.flex>.col-md-auto,.flex>.col-md-12,.flex>.col-md-11,.flex>.col-md-10,.flex>.col-md-9,.flex>.col-md-8,.flex>.col-md-7,.flex>.col-md-6,.flex>.col-md-5,.flex>.col-md-4,.flex>.col-md-3,.flex>.col-md-2,.flex>.col-md-1,.flex>.col-md-0,.row>.col-md-grow,.flex>.col-md-grow,.row>.col-md-shrink,.flex>.col-md-shrink{width:auto;min-width:0;max-width:100%}.column>.col-md,.flex>.col-md,.column>.col-md-auto,.column>.col-md-12,.column>.col-md-11,.column>.col-md-10,.column>.col-md-9,.column>.col-md-8,.column>.col-md-7,.column>.col-md-6,.column>.col-md-5,.column>.col-md-4,.column>.col-md-3,.column>.col-md-2,.column>.col-md-1,.column>.col-md-0,.flex>.col-md-auto,.flex>.col-md-12,.flex>.col-md-11,.flex>.col-md-10,.flex>.col-md-9,.flex>.col-md-8,.flex>.col-md-7,.flex>.col-md-6,.flex>.col-md-5,.flex>.col-md-4,.flex>.col-md-3,.flex>.col-md-2,.flex>.col-md-1,.flex>.col-md-0,.column>.col-md-grow,.flex>.col-md-grow,.column>.col-md-shrink,.flex>.col-md-shrink{height:auto;min-height:0;max-height:100%}.col-md{flex:10000 1 0%}.col-md-auto,.col-md-12,.col-md-11,.col-md-10,.col-md-9,.col-md-8,.col-md-7,.col-md-6,.col-md-5,.col-md-4,.col-md-3,.col-md-2,.col-md-1,.col-md-0{flex:0 0 auto}.col-md-grow{flex:1 0 auto}.col-md-shrink{flex:0 1 auto}.row>.col-md-0{height:auto;width:0%}.row>.offset-md-0{margin-left:0%}.column>.col-md-0{height:0%;width:auto}.row>.col-md-1{height:auto;width:8.3333%}.row>.offset-md-1{margin-left:8.3333%}.column>.col-md-1{height:8.3333%;width:auto}.row>.col-md-2{height:auto;width:16.6667%}.row>.offset-md-2{margin-left:16.6667%}.column>.col-md-2{height:16.6667%;width:auto}.row>.col-md-3{height:auto;width:25%}.row>.offset-md-3{margin-left:25%}.column>.col-md-3{height:25%;width:auto}.row>.col-md-4{height:auto;width:33.3333%}.row>.offset-md-4{margin-left:33.3333%}.column>.col-md-4{height:33.3333%;width:auto}.row>.col-md-5{height:auto;width:41.6667%}.row>.offset-md-5{margin-left:41.6667%}.column>.col-md-5{height:41.6667%;width:auto}.row>.col-md-6{height:auto;width:50%}.row>.offset-md-6{margin-left:50%}.column>.col-md-6{height:50%;width:auto}.row>.col-md-7{height:auto;width:58.3333%}.row>.offset-md-7{margin-left:58.3333%}.column>.col-md-7{height:58.3333%;width:auto}.row>.col-md-8{height:auto;width:66.6667%}.row>.offset-md-8{margin-left:66.6667%}.column>.col-md-8{height:66.6667%;width:auto}.row>.col-md-9{height:auto;width:75%}.row>.offset-md-9{margin-left:75%}.column>.col-md-9{height:75%;width:auto}.row>.col-md-10{height:auto;width:83.3333%}.row>.offset-md-10{margin-left:83.3333%}.column>.col-md-10{height:83.3333%;width:auto}.row>.col-md-11{height:auto;width:91.6667%}.row>.offset-md-11{margin-left:91.6667%}.column>.col-md-11{height:91.6667%;width:auto}.row>.col-md-12{height:auto;width:100%}.row>.offset-md-12{margin-left:100%}.column>.col-md-12{height:100%;width:auto}}@media (min-width: 1440px){.row>.col-lg,.flex>.col-lg,.row>.col-lg-auto,.row>.col-lg-12,.row>.col-lg-11,.row>.col-lg-10,.row>.col-lg-9,.row>.col-lg-8,.row>.col-lg-7,.row>.col-lg-6,.row>.col-lg-5,.row>.col-lg-4,.row>.col-lg-3,.row>.col-lg-2,.row>.col-lg-1,.row>.col-lg-0,.flex>.col-lg-auto,.flex>.col-lg-12,.flex>.col-lg-11,.flex>.col-lg-10,.flex>.col-lg-9,.flex>.col-lg-8,.flex>.col-lg-7,.flex>.col-lg-6,.flex>.col-lg-5,.flex>.col-lg-4,.flex>.col-lg-3,.flex>.col-lg-2,.flex>.col-lg-1,.flex>.col-lg-0,.row>.col-lg-grow,.flex>.col-lg-grow,.row>.col-lg-shrink,.flex>.col-lg-shrink{width:auto;min-width:0;max-width:100%}.column>.col-lg,.flex>.col-lg,.column>.col-lg-auto,.column>.col-lg-12,.column>.col-lg-11,.column>.col-lg-10,.column>.col-lg-9,.column>.col-lg-8,.column>.col-lg-7,.column>.col-lg-6,.column>.col-lg-5,.column>.col-lg-4,.column>.col-lg-3,.column>.col-lg-2,.column>.col-lg-1,.column>.col-lg-0,.flex>.col-lg-auto,.flex>.col-lg-12,.flex>.col-lg-11,.flex>.col-lg-10,.flex>.col-lg-9,.flex>.col-lg-8,.flex>.col-lg-7,.flex>.col-lg-6,.flex>.col-lg-5,.flex>.col-lg-4,.flex>.col-lg-3,.flex>.col-lg-2,.flex>.col-lg-1,.flex>.col-lg-0,.column>.col-lg-grow,.flex>.col-lg-grow,.column>.col-lg-shrink,.flex>.col-lg-shrink{height:auto;min-height:0;max-height:100%}.col-lg{flex:10000 1 0%}.col-lg-auto,.col-lg-12,.col-lg-11,.col-lg-10,.col-lg-9,.col-lg-8,.col-lg-7,.col-lg-6,.col-lg-5,.col-lg-4,.col-lg-3,.col-lg-2,.col-lg-1,.col-lg-0{flex:0 0 auto}.col-lg-grow{flex:1 0 auto}.col-lg-shrink{flex:0 1 auto}.row>.col-lg-0{height:auto;width:0%}.row>.offset-lg-0{margin-left:0%}.column>.col-lg-0{height:0%;width:auto}.row>.col-lg-1{height:auto;width:8.3333%}.row>.offset-lg-1{margin-left:8.3333%}.column>.col-lg-1{height:8.3333%;width:auto}.row>.col-lg-2{height:auto;width:16.6667%}.row>.offset-lg-2{margin-left:16.6667%}.column>.col-lg-2{height:16.6667%;width:auto}.row>.col-lg-3{height:auto;width:25%}.row>.offset-lg-3{margin-left:25%}.column>.col-lg-3{height:25%;width:auto}.row>.col-lg-4{height:auto;width:33.3333%}.row>.offset-lg-4{margin-left:33.3333%}.column>.col-lg-4{height:33.3333%;width:auto}.row>.col-lg-5{height:auto;width:41.6667%}.row>.offset-lg-5{margin-left:41.6667%}.column>.col-lg-5{height:41.6667%;width:auto}.row>.col-lg-6{height:auto;width:50%}.row>.offset-lg-6{margin-left:50%}.column>.col-lg-6{height:50%;width:auto}.row>.col-lg-7{height:auto;width:58.3333%}.row>.offset-lg-7{margin-left:58.3333%}.column>.col-lg-7{height:58.3333%;width:auto}.row>.col-lg-8{height:auto;width:66.6667%}.row>.offset-lg-8{margin-left:66.6667%}.column>.col-lg-8{height:66.6667%;width:auto}.row>.col-lg-9{height:auto;width:75%}.row>.offset-lg-9{margin-left:75%}.column>.col-lg-9{height:75%;width:auto}.row>.col-lg-10{height:auto;width:83.3333%}.row>.offset-lg-10{margin-left:83.3333%}.column>.col-lg-10{height:83.3333%;width:auto}.row>.col-lg-11{height:auto;width:91.6667%}.row>.offset-lg-11{margin-left:91.6667%}.column>.col-lg-11{height:91.6667%;width:auto}.row>.col-lg-12{height:auto;width:100%}.row>.offset-lg-12{margin-left:100%}.column>.col-lg-12{height:100%;width:auto}}@media (min-width: 1920px){.row>.col-xl,.flex>.col-xl,.row>.col-xl-auto,.row>.col-xl-12,.row>.col-xl-11,.row>.col-xl-10,.row>.col-xl-9,.row>.col-xl-8,.row>.col-xl-7,.row>.col-xl-6,.row>.col-xl-5,.row>.col-xl-4,.row>.col-xl-3,.row>.col-xl-2,.row>.col-xl-1,.row>.col-xl-0,.flex>.col-xl-auto,.flex>.col-xl-12,.flex>.col-xl-11,.flex>.col-xl-10,.flex>.col-xl-9,.flex>.col-xl-8,.flex>.col-xl-7,.flex>.col-xl-6,.flex>.col-xl-5,.flex>.col-xl-4,.flex>.col-xl-3,.flex>.col-xl-2,.flex>.col-xl-1,.flex>.col-xl-0,.row>.col-xl-grow,.flex>.col-xl-grow,.row>.col-xl-shrink,.flex>.col-xl-shrink{width:auto;min-width:0;max-width:100%}.column>.col-xl,.flex>.col-xl,.column>.col-xl-auto,.column>.col-xl-12,.column>.col-xl-11,.column>.col-xl-10,.column>.col-xl-9,.column>.col-xl-8,.column>.col-xl-7,.column>.col-xl-6,.column>.col-xl-5,.column>.col-xl-4,.column>.col-xl-3,.column>.col-xl-2,.column>.col-xl-1,.column>.col-xl-0,.flex>.col-xl-auto,.flex>.col-xl-12,.flex>.col-xl-11,.flex>.col-xl-10,.flex>.col-xl-9,.flex>.col-xl-8,.flex>.col-xl-7,.flex>.col-xl-6,.flex>.col-xl-5,.flex>.col-xl-4,.flex>.col-xl-3,.flex>.col-xl-2,.flex>.col-xl-1,.flex>.col-xl-0,.column>.col-xl-grow,.flex>.col-xl-grow,.column>.col-xl-shrink,.flex>.col-xl-shrink{height:auto;min-height:0;max-height:100%}.col-xl{flex:10000 1 0%}.col-xl-auto,.col-xl-12,.col-xl-11,.col-xl-10,.col-xl-9,.col-xl-8,.col-xl-7,.col-xl-6,.col-xl-5,.col-xl-4,.col-xl-3,.col-xl-2,.col-xl-1,.col-xl-0{flex:0 0 auto}.col-xl-grow{flex:1 0 auto}.col-xl-shrink{flex:0 1 auto}.row>.col-xl-0{height:auto;width:0%}.row>.offset-xl-0{margin-left:0%}.column>.col-xl-0{height:0%;width:auto}.row>.col-xl-1{height:auto;width:8.3333%}.row>.offset-xl-1{margin-left:8.3333%}.column>.col-xl-1{height:8.3333%;width:auto}.row>.col-xl-2{height:auto;width:16.6667%}.row>.offset-xl-2{margin-left:16.6667%}.column>.col-xl-2{height:16.6667%;width:auto}.row>.col-xl-3{height:auto;width:25%}.row>.offset-xl-3{margin-left:25%}.column>.col-xl-3{height:25%;width:auto}.row>.col-xl-4{height:auto;width:33.3333%}.row>.offset-xl-4{margin-left:33.3333%}.column>.col-xl-4{height:33.3333%;width:auto}.row>.col-xl-5{height:auto;width:41.6667%}.row>.offset-xl-5{margin-left:41.6667%}.column>.col-xl-5{height:41.6667%;width:auto}.row>.col-xl-6{height:auto;width:50%}.row>.offset-xl-6{margin-left:50%}.column>.col-xl-6{height:50%;width:auto}.row>.col-xl-7{height:auto;width:58.3333%}.row>.offset-xl-7{margin-left:58.3333%}.column>.col-xl-7{height:58.3333%;width:auto}.row>.col-xl-8{height:auto;width:66.6667%}.row>.offset-xl-8{margin-left:66.6667%}.column>.col-xl-8{height:66.6667%;width:auto}.row>.col-xl-9{height:auto;width:75%}.row>.offset-xl-9{margin-left:75%}.column>.col-xl-9{height:75%;width:auto}.row>.col-xl-10{height:auto;width:83.3333%}.row>.offset-xl-10{margin-left:83.3333%}.column>.col-xl-10{height:83.3333%;width:auto}.row>.col-xl-11{height:auto;width:91.6667%}.row>.offset-xl-11{margin-left:91.6667%}.column>.col-xl-11{height:91.6667%;width:auto}.row>.col-xl-12{height:auto;width:100%}.row>.offset-xl-12{margin-left:100%}.column>.col-xl-12{height:100%;width:auto}}.rounded-borders{border-radius:4px}.border-radius-inherit{border-radius:inherit}.no-transition{transition:none!important}.transition-0{transition:0s!important}.glossy{background-image:linear-gradient(to bottom,rgba(255,255,255,.3),rgba(255,255,255,0) 50%,rgba(0,0,0,.12) 51%,rgba(0,0,0,.04))!important}.q-placeholder::placeholder{color:inherit;opacity:.7}.q-body--fullscreen-mixin,.q-body--prevent-scroll{position:fixed!important}.q-body--force-scrollbar-x{overflow-x:scroll}.q-body--force-scrollbar-y{overflow-y:scroll}.q-no-input-spinner{-moz-appearance:textfield!important}.q-no-input-spinner::-webkit-outer-spin-button,.q-no-input-spinner::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.q-link{outline:0;text-decoration:none}.q-link--focusable:focus-visible{-webkit-text-decoration:underline dashed currentColor 1px;text-decoration:underline dashed currentColor 1px}body.electron .q-electron-drag{-webkit-user-select:none;-webkit-app-region:drag}body.electron .q-electron-drag .q-btn-item,body.electron .q-electron-drag--exception{-webkit-app-region:no-drag}img.responsive{max-width:100%;height:auto}.non-selectable{-webkit-user-select:none!important;user-select:none!important}.scroll,body.mobile .scroll--mobile{overflow:auto}.scroll,.scroll-x,.scroll-y{-webkit-overflow-scrolling:touch;will-change:scroll-position}.scroll-x{overflow-x:auto}.scroll-y{overflow-y:auto}.no-scroll{overflow:hidden!important}.no-pointer-events,.no-pointer-events--children,.no-pointer-events--children *{pointer-events:none!important}.all-pointer-events{pointer-events:all!important}.cursor-pointer{cursor:pointer!important}.cursor-not-allowed{cursor:not-allowed!important}.cursor-inherit{cursor:inherit!important}.cursor-none{cursor:none!important}[aria-busy=true]{cursor:progress}[aria-controls]{cursor:pointer}[aria-disabled]{cursor:default}.rotate-45{transform:rotate(45deg)}.rotate-90{transform:rotate(90deg)}.rotate-135{transform:rotate(135deg)}.rotate-180{transform:rotate(180deg)}.rotate-225{transform:rotate(225deg)}.rotate-270{transform:rotate(270deg)}.rotate-315{transform:rotate(315deg)}.flip-horizontal{transform:scaleX(-1)}.flip-vertical{transform:scaleY(-1)}.float-left{float:left}.float-right{float:right}.relative-position{position:relative}.fixed,.fixed-full,.fullscreen,.fixed-center,.fixed-bottom,.fixed-left,.fixed-right,.fixed-top,.fixed-top-left,.fixed-top-right,.fixed-bottom-left,.fixed-bottom-right{position:fixed}.absolute,.absolute-full,.absolute-center,.absolute-bottom,.absolute-left,.absolute-right,.absolute-top,.absolute-top-left,.absolute-top-right,.absolute-bottom-left,.absolute-bottom-right{position:absolute}.fixed-top,.absolute-top{top:0;left:0;right:0}.fixed-right,.absolute-right{top:0;right:0;bottom:0}.fixed-bottom,.absolute-bottom{right:0;bottom:0;left:0}.fixed-left,.absolute-left{top:0;bottom:0;left:0}.fixed-top-left,.absolute-top-left{top:0;left:0}.fixed-top-right,.absolute-top-right{top:0;right:0}.fixed-bottom-left,.absolute-bottom-left{bottom:0;left:0}.fixed-bottom-right,.absolute-bottom-right{bottom:0;right:0}.fullscreen{z-index:6000;border-radius:0!important;max-width:100vw;max-height:100vh}body.q-ios-padding .fullscreen{padding-top:20px!important;padding-top:env(safe-area-inset-top)!important;padding-bottom:env(safe-area-inset-bottom)!important}.absolute-full,.fullscreen,.fixed-full{top:0;right:0;bottom:0;left:0}.fixed-center,.absolute-center{top:50%;left:50%;transform:translate(-50%,-50%)}.vertical-top{vertical-align:top!important}.vertical-middle{vertical-align:middle!important}.vertical-bottom{vertical-align:bottom!important}.on-left{margin-right:12px}.on-right{margin-left:12px}.q-position-engine{margin-top:var(--q-pe-top, 0)!important;margin-left:var(--q-pe-left, 0)!important;will-change:auto;visibility:collapse}:root{--q-size-xs: 0;--q-size-sm: 600px;--q-size-md: 1024px;--q-size-lg: 1440px;--q-size-xl: 1920px}.fit{width:100%!important;height:100%!important}.full-height{height:100%!important}.full-width{width:100%!important;margin-left:0!important;margin-right:0!important}.window-height{margin-top:0!important;margin-bottom:0!important;height:100vh!important}.window-width{margin-left:0!important;margin-right:0!important;width:100vw!important}.block{display:block!important}.inline-block{display:inline-block!important}.q-pa-none{padding:0}.q-pl-none{padding-left:0}.q-pr-none{padding-right:0}.q-pt-none{padding-top:0}.q-pb-none{padding-bottom:0}.q-px-none{padding-left:0;padding-right:0}.q-py-none{padding-top:0;padding-bottom:0}.q-ma-none{margin:0}.q-ml-none{margin-left:0}.q-mr-none{margin-right:0}.q-mt-none{margin-top:0}.q-mb-none{margin-bottom:0}.q-mx-none{margin-left:0;margin-right:0}.q-my-none{margin-top:0;margin-bottom:0}.q-pa-xs{padding:4px}.q-pl-xs{padding-left:4px}.q-pr-xs{padding-right:4px}.q-pt-xs{padding-top:4px}.q-pb-xs{padding-bottom:4px}.q-px-xs{padding-left:4px;padding-right:4px}.q-py-xs{padding-top:4px;padding-bottom:4px}.q-ma-xs{margin:4px}.q-ml-xs{margin-left:4px}.q-mr-xs{margin-right:4px}.q-mt-xs{margin-top:4px}.q-mb-xs{margin-bottom:4px}.q-mx-xs{margin-left:4px;margin-right:4px}.q-my-xs{margin-top:4px;margin-bottom:4px}.q-pa-sm{padding:8px}.q-pl-sm{padding-left:8px}.q-pr-sm{padding-right:8px}.q-pt-sm{padding-top:8px}.q-pb-sm{padding-bottom:8px}.q-px-sm{padding-left:8px;padding-right:8px}.q-py-sm{padding-top:8px;padding-bottom:8px}.q-ma-sm{margin:8px}.q-ml-sm{margin-left:8px}.q-mr-sm{margin-right:8px}.q-mt-sm{margin-top:8px}.q-mb-sm{margin-bottom:8px}.q-mx-sm{margin-left:8px;margin-right:8px}.q-my-sm{margin-top:8px;margin-bottom:8px}.q-pa-md{padding:16px}.q-pl-md{padding-left:16px}.q-pr-md{padding-right:16px}.q-pt-md{padding-top:16px}.q-pb-md{padding-bottom:16px}.q-px-md{padding-left:16px;padding-right:16px}.q-py-md{padding-top:16px;padding-bottom:16px}.q-ma-md{margin:16px}.q-ml-md{margin-left:16px}.q-mr-md{margin-right:16px}.q-mt-md{margin-top:16px}.q-mb-md{margin-bottom:16px}.q-mx-md{margin-left:16px;margin-right:16px}.q-my-md{margin-top:16px;margin-bottom:16px}.q-pa-lg{padding:24px}.q-pl-lg{padding-left:24px}.q-pr-lg{padding-right:24px}.q-pt-lg{padding-top:24px}.q-pb-lg{padding-bottom:24px}.q-px-lg{padding-left:24px;padding-right:24px}.q-py-lg{padding-top:24px;padding-bottom:24px}.q-ma-lg{margin:24px}.q-ml-lg{margin-left:24px}.q-mr-lg{margin-right:24px}.q-mt-lg{margin-top:24px}.q-mb-lg{margin-bottom:24px}.q-mx-lg{margin-left:24px;margin-right:24px}.q-my-lg{margin-top:24px;margin-bottom:24px}.q-pa-xl{padding:48px}.q-pl-xl{padding-left:48px}.q-pr-xl{padding-right:48px}.q-pt-xl{padding-top:48px}.q-pb-xl{padding-bottom:48px}.q-px-xl{padding-left:48px;padding-right:48px}.q-py-xl{padding-top:48px;padding-bottom:48px}.q-ma-xl{margin:48px}.q-ml-xl{margin-left:48px}.q-mr-xl{margin-right:48px}.q-mt-xl{margin-top:48px}.q-mb-xl{margin-bottom:48px}.q-mx-xl{margin-left:48px;margin-right:48px}.q-my-xl{margin-top:48px;margin-bottom:48px}.q-mt-auto,.q-my-auto{margin-top:auto}.q-ml-auto{margin-left:auto}.q-mb-auto,.q-my-auto{margin-bottom:auto}.q-mr-auto{margin-right:auto}.q-mx-auto{margin-left:auto;margin-right:auto}.q-touch{-webkit-user-select:none;user-select:none;user-drag:none;-khtml-user-drag:none;-webkit-user-drag:none}.q-touch-x{touch-action:pan-x}.q-touch-y{touch-action:pan-y}:root{--q-transition-duration: .3s}.q-transition--slide-right-enter-active,.q-transition--slide-right-leave-active,.q-transition--slide-left-enter-active,.q-transition--slide-left-leave-active,.q-transition--slide-up-enter-active,.q-transition--slide-up-leave-active,.q-transition--slide-down-enter-active,.q-transition--slide-down-leave-active,.q-transition--jump-right-enter-active,.q-transition--jump-right-leave-active,.q-transition--jump-left-enter-active,.q-transition--jump-left-leave-active,.q-transition--jump-up-enter-active,.q-transition--jump-up-leave-active,.q-transition--jump-down-enter-active,.q-transition--jump-down-leave-active,.q-transition--fade-enter-active,.q-transition--fade-leave-active,.q-transition--scale-enter-active,.q-transition--scale-leave-active,.q-transition--rotate-enter-active,.q-transition--rotate-leave-active,.q-transition--flip-enter-active,.q-transition--flip-leave-active{--q-transition-duration: .3s;--q-transition-easing: cubic-bezier(.215,.61,.355,1)}.q-transition--slide-right-leave-active,.q-transition--slide-left-leave-active,.q-transition--slide-up-leave-active,.q-transition--slide-down-leave-active,.q-transition--jump-right-leave-active,.q-transition--jump-left-leave-active,.q-transition--jump-up-leave-active,.q-transition--jump-down-leave-active,.q-transition--fade-leave-active,.q-transition--scale-leave-active,.q-transition--rotate-leave-active,.q-transition--flip-leave-active{position:absolute}.q-transition--slide-right-enter-active,.q-transition--slide-right-leave-active,.q-transition--slide-left-enter-active,.q-transition--slide-left-leave-active,.q-transition--slide-up-enter-active,.q-transition--slide-up-leave-active,.q-transition--slide-down-enter-active,.q-transition--slide-down-leave-active{transition:transform var(--q-transition-duration) var(--q-transition-easing)}.q-transition--slide-right-enter-from{transform:translate3d(-100%,0,0)}.q-transition--slide-right-leave-to,.q-transition--slide-left-enter-from{transform:translate3d(100%,0,0)}.q-transition--slide-left-leave-to{transform:translate3d(-100%,0,0)}.q-transition--slide-up-enter-from{transform:translate3d(0,100%,0)}.q-transition--slide-up-leave-to,.q-transition--slide-down-enter-from{transform:translate3d(0,-100%,0)}.q-transition--slide-down-leave-to{transform:translate3d(0,100%,0)}.q-transition--jump-right-enter-active,.q-transition--jump-right-leave-active,.q-transition--jump-left-enter-active,.q-transition--jump-left-leave-active,.q-transition--jump-up-enter-active,.q-transition--jump-up-leave-active,.q-transition--jump-down-enter-active,.q-transition--jump-down-leave-active{transition:opacity var(--q-transition-duration),transform var(--q-transition-duration)}.q-transition--jump-right-enter-from,.q-transition--jump-right-leave-to,.q-transition--jump-left-enter-from,.q-transition--jump-left-leave-to,.q-transition--jump-up-enter-from,.q-transition--jump-up-leave-to,.q-transition--jump-down-enter-from,.q-transition--jump-down-leave-to{opacity:0}.q-transition--jump-right-enter-from{transform:translate3d(-15px,0,0)}.q-transition--jump-right-leave-to,.q-transition--jump-left-enter-from{transform:translate3d(15px,0,0)}.q-transition--jump-left-leave-to{transform:translate(-15px)}.q-transition--jump-up-enter-from{transform:translate3d(0,15px,0)}.q-transition--jump-up-leave-to,.q-transition--jump-down-enter-from{transform:translate3d(0,-15px,0)}.q-transition--jump-down-leave-to{transform:translate3d(0,15px,0)}.q-transition--fade-enter-active,.q-transition--fade-leave-active{transition:opacity var(--q-transition-duration) ease-out}.q-transition--fade-enter-from,.q-transition--fade-leave-to{opacity:0}.q-transition--scale-enter-active,.q-transition--scale-leave-active{transition:opacity var(--q-transition-duration),transform var(--q-transition-duration) var(--q-transition-easing)}.q-transition--scale-enter-from,.q-transition--scale-leave-to{opacity:0;transform:scale3d(0,0,1)}.q-transition--rotate-enter-active,.q-transition--rotate-leave-active{transition:opacity var(--q-transition-duration),transform var(--q-transition-duration) var(--q-transition-easing);transform-style:preserve-3d}.q-transition--rotate-enter-from,.q-transition--rotate-leave-to{opacity:0;transform:scale3d(0,0,1) rotate3d(0,0,1,90deg)}.q-transition--flip-right-enter-active,.q-transition--flip-right-leave-active,.q-transition--flip-left-enter-active,.q-transition--flip-left-leave-active,.q-transition--flip-up-enter-active,.q-transition--flip-up-leave-active,.q-transition--flip-down-enter-active,.q-transition--flip-down-leave-active{transition:transform var(--q-transition-duration);backface-visibility:hidden}.q-transition--flip-right-enter-to,.q-transition--flip-right-leave-from,.q-transition--flip-left-enter-to,.q-transition--flip-left-leave-from,.q-transition--flip-up-enter-to,.q-transition--flip-up-leave-from,.q-transition--flip-down-enter-to,.q-transition--flip-down-leave-from{transform:perspective(400px) rotate3d(1,1,0,0)}.q-transition--flip-right-enter-from{transform:perspective(400px) rotateY(-180deg)}.q-transition--flip-right-leave-to,.q-transition--flip-left-enter-from{transform:perspective(400px) rotateY(180deg)}.q-transition--flip-left-leave-to{transform:perspective(400px) rotateY(-180deg)}.q-transition--flip-up-enter-from{transform:perspective(400px) rotateX(-180deg)}.q-transition--flip-up-leave-to,.q-transition--flip-down-enter-from{transform:perspective(400px) rotateX(180deg)}.q-transition--flip-down-leave-to{transform:perspective(400px) rotateX(-180deg)}body{min-width:100px;min-height:100%;font-family:Roboto,-apple-system,Helvetica Neue,Helvetica,Arial,sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-smoothing:antialiased;line-height:1.5;font-size:14px}h1{font-size:6rem;font-weight:300;line-height:6rem;letter-spacing:-.01562em}h2{font-size:3.75rem;font-weight:300;line-height:3.75rem;letter-spacing:-.00833em}h3{font-size:3rem;font-weight:400;line-height:3.125rem;letter-spacing:normal}h4{font-size:2.125rem;font-weight:400;line-height:2.5rem;letter-spacing:.00735em}h5{font-size:1.5rem;font-weight:400;line-height:2rem;letter-spacing:normal}h6{font-size:1.25rem;font-weight:500;line-height:2rem;letter-spacing:.0125em}p{margin:0 0 16px}.text-h1{font-size:6rem;font-weight:300;line-height:6rem;letter-spacing:-.01562em}.text-h2{font-size:3.75rem;font-weight:300;line-height:3.75rem;letter-spacing:-.00833em}.text-h3{font-size:3rem;font-weight:400;line-height:3.125rem;letter-spacing:normal}.text-h4{font-size:2.125rem;font-weight:400;line-height:2.5rem;letter-spacing:.00735em}.text-h5{font-size:1.5rem;font-weight:400;line-height:2rem;letter-spacing:normal}.text-h6{font-size:1.25rem;font-weight:500;line-height:2rem;letter-spacing:.0125em}.text-subtitle1{font-size:1rem;font-weight:400;line-height:1.75rem;letter-spacing:.00937em}.text-subtitle2{font-size:.875rem;font-weight:500;line-height:1.375rem;letter-spacing:.00714em}.text-body1{font-size:1rem;font-weight:400;line-height:1.5rem;letter-spacing:.03125em}.text-body2{font-size:.875rem;font-weight:400;line-height:1.25rem;letter-spacing:.01786em}.text-overline{font-size:.75rem;font-weight:500;line-height:2rem;letter-spacing:.16667em}.text-caption{font-size:.75rem;font-weight:400;line-height:1.25rem;letter-spacing:.03333em}.text-uppercase{text-transform:uppercase}.text-lowercase{text-transform:lowercase}.text-capitalize{text-transform:capitalize}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-justify{text-align:justify;-webkit-hyphens:auto;hyphens:auto}.text-italic{font-style:italic}.text-bold{font-weight:700}.text-no-wrap{white-space:nowrap}.text-strike{text-decoration:line-through}.text-weight-thin{font-weight:100}.text-weight-light{font-weight:300}.text-weight-regular{font-weight:400}.text-weight-medium{font-weight:500}.text-weight-bold{font-weight:700}.text-weight-bolder{font-weight:900}small{font-size:80%}big{font-size:170%}sub{bottom:-.25em}sup{top:-.5em}.no-margin{margin:0!important}.no-padding{padding:0!important}.no-border{border:0!important}.no-border-radius{border-radius:0!important}.no-box-shadow{box-shadow:none!important}.no-outline{outline:0!important}.ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ellipsis-2-lines,.ellipsis-3-lines{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.ellipsis-2-lines{-webkit-line-clamp:2}.ellipsis-3-lines{-webkit-line-clamp:3}.readonly{cursor:default!important}.disabled,.disabled *,[disabled],[disabled] *{outline:0!important;cursor:not-allowed!important}.disabled,[disabled]{opacity:.6!important}.hidden{display:none!important}.invisible,.invisible *{visibility:hidden!important;transition:none!important;animation:none!important}.transparent{background:transparent!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.overflow-hidden-y{overflow-y:hidden!important}.hide-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.hide-scrollbar::-webkit-scrollbar{width:0;height:0;display:none}.dimmed:after,.light-dimmed:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0}.dimmed:after{background:rgba(0,0,0,.4)!important}.light-dimmed:after{background:rgba(255,255,255,.6)!important}.z-top{z-index:7000!important}.z-max{z-index:9998!important}body:not(.desktop) .desktop-only,body.desktop .desktop-hide{display:none!important}body:not(.mobile) .mobile-only,body.mobile .mobile-hide{display:none!important}body:not(.native-mobile) .native-mobile-only,body.native-mobile .native-mobile-hide{display:none!important}body:not(.cordova) .cordova-only,body.cordova .cordova-hide{display:none!important}body:not(.capacitor) .capacitor-only,body.capacitor .capacitor-hide{display:none!important}body:not(.electron) .electron-only,body.electron .electron-hide{display:none!important}body:not(.touch) .touch-only,body.touch .touch-hide{display:none!important}body:not(.within-iframe) .within-iframe-only,body.within-iframe .within-iframe-hide{display:none!important}body:not(.platform-ios) .platform-ios-only,body.platform-ios .platform-ios-hide{display:none!important}body:not(.platform-android) .platform-android-only,body.platform-android .platform-android-hide{display:none!important}@media all and (orientation: portrait){.orientation-landscape{display:none!important}}@media all and (orientation: landscape){.orientation-portrait{display:none!important}}@media screen{.print-only{display:none!important}}@media print{.print-hide{display:none!important}}@media (max-width: 599.98px){.xs-hide,.gt-xs,.sm,.gt-sm,.md,.gt-md,.lg,.gt-lg,.xl{display:none!important}}@media (min-width: 600px) and (max-width: 1023.98px){.sm-hide,.xs,.lt-sm,.gt-sm,.md,.gt-md,.lg,.gt-lg,.xl{display:none!important}}@media (min-width: 1024px) and (max-width: 1439.98px){.md-hide,.xs,.lt-sm,.sm,.lt-md,.gt-md,.lg,.gt-lg,.xl{display:none!important}}@media (min-width: 1440px) and (max-width: 1919.98px){.lg-hide,.xs,.lt-sm,.sm,.lt-md,.md,.lt-lg,.gt-lg,.xl{display:none!important}}@media (min-width: 1920px){.xl-hide,.xs,.lt-sm,.sm,.lt-md,.md,.lt-lg,.lg,.lt-xl{display:none!important}}.q-focus-helper,.q-focusable,.q-manual-focusable,.q-hoverable{outline:0}body.desktop .q-focus-helper{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;border-radius:inherit;opacity:0;transition:background-color .3s cubic-bezier(.25,.8,.5,1),opacity .4s cubic-bezier(.25,.8,.5,1)}body.desktop .q-focus-helper:before,body.desktop .q-focus-helper:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;border-radius:inherit;transition:background-color .3s cubic-bezier(.25,.8,.5,1),opacity .6s cubic-bezier(.25,.8,.5,1)}body.desktop .q-focus-helper:before{background:#000}body.desktop .q-focus-helper:after{background:#fff}body.desktop .q-focus-helper--rounded{border-radius:4px}body.desktop .q-focus-helper--round{border-radius:50%}body.desktop .q-focusable:focus>.q-focus-helper,body.desktop .q-manual-focusable--focused>.q-focus-helper,body.desktop .q-hoverable:hover>.q-focus-helper{background:currentColor;opacity:.15}body.desktop .q-focusable:focus>.q-focus-helper:before,body.desktop .q-manual-focusable--focused>.q-focus-helper:before,body.desktop .q-hoverable:hover>.q-focus-helper:before{opacity:.1}body.desktop .q-focusable:focus>.q-focus-helper:after,body.desktop .q-manual-focusable--focused>.q-focus-helper:after,body.desktop .q-hoverable:hover>.q-focus-helper:after{opacity:.4}body.desktop .q-focusable:focus>.q-focus-helper,body.desktop .q-manual-focusable--focused>.q-focus-helper{opacity:.22}body.body--dark{color:#fff;background:var(--q-dark-page)}.q-dark{color:#fff;background:var(--q-dark)}[data-theme=classic] .q-drawer--dark,body[data-theme=classic].body--dark,[data-theme=classic] .q-menu--dark{background:#1f2234!important}[data-theme=classic] .q-card--dark,[data-theme=classic] .q-stepper--dark{background:#333646!important}[data-theme=classic] .bg-primary{background:#673ab7!important}[data-theme=classic] .text-primary{color:#673ab7!important}[data-theme=classic] .bg-secondary{background:#9c27b0!important}[data-theme=classic] .text-secondary{color:#9c27b0!important}[data-theme=classic] .bg-dark{background:#1f2234!important}[data-theme=classic] .text-dark{color:#1f2234!important}[data-theme=classic] .bg-info{background:#333646!important}[data-theme=classic] .text-info{color:#333646!important}[data-theme=classic] .bg-marginal-bg{background:#1f2234!important}[data-theme=classic] .text-marginal-bg{color:#1f2234!important}[data-theme=classic] .bg-marginal-text{background:#fff!important}[data-theme=classic] .text-marginal-text{color:#fff!important}[data-theme=bitcoin] .q-drawer--dark,body[data-theme=bitcoin].body--dark,[data-theme=bitcoin] .q-menu--dark{background:#2d293b!important}[data-theme=bitcoin] .q-card--dark,[data-theme=bitcoin] .q-stepper--dark{background:#333646!important}[data-theme=bitcoin] .bg-primary{background:#ff9853!important}[data-theme=bitcoin] .text-primary{color:#ff9853!important}[data-theme=bitcoin] .bg-secondary{background:#ff7353!important}[data-theme=bitcoin] .text-secondary{color:#ff7353!important}[data-theme=bitcoin] .bg-dark{background:#2d293b!important}[data-theme=bitcoin] .text-dark{color:#2d293b!important}[data-theme=bitcoin] .bg-info{background:#333646!important}[data-theme=bitcoin] .text-info{color:#333646!important}[data-theme=bitcoin] .bg-marginal-bg{background:#2d293b!important}[data-theme=bitcoin] .text-marginal-bg{color:#2d293b!important}[data-theme=bitcoin] .bg-marginal-text{background:#fff!important}[data-theme=bitcoin] .text-marginal-text{color:#fff!important}[data-theme=freedom] .q-drawer--dark,body[data-theme=freedom].body--dark,[data-theme=freedom] .q-menu--dark{background:#0a0a0a!important}[data-theme=freedom] .q-card--dark,[data-theme=freedom] .q-stepper--dark{background:#1b1b1b!important}[data-theme=freedom] .bg-primary{background:#e22156!important}[data-theme=freedom] .text-primary{color:#e22156!important}[data-theme=freedom] .bg-secondary{background:#b91a45!important}[data-theme=freedom] .text-secondary{color:#b91a45!important}[data-theme=freedom] .bg-dark{background:#0a0a0a!important}[data-theme=freedom] .text-dark{color:#0a0a0a!important}[data-theme=freedom] .bg-info{background:#1b1b1b!important}[data-theme=freedom] .text-info{color:#1b1b1b!important}[data-theme=freedom] .bg-marginal-bg{background:#2d293b!important}[data-theme=freedom] .text-marginal-bg{color:#2d293b!important}[data-theme=freedom] .bg-marginal-text{background:#fff!important}[data-theme=freedom] .text-marginal-text{color:#fff!important}[data-theme=cyber] .q-drawer--dark,body[data-theme=cyber].body--dark,[data-theme=cyber] .q-menu--dark{background:#0a0a0a!important}[data-theme=cyber] .q-card--dark,[data-theme=cyber] .q-stepper--dark{background:#1b1b1b!important}[data-theme=cyber] .bg-primary{background:#7cb342!important}[data-theme=cyber] .text-primary{color:#7cb342!important}[data-theme=cyber] .bg-secondary{background:#558b2f!important}[data-theme=cyber] .text-secondary{color:#558b2f!important}[data-theme=cyber] .bg-dark{background:#0a0a0a!important}[data-theme=cyber] .text-dark{color:#0a0a0a!important}[data-theme=cyber] .bg-info{background:#1b1b1b!important}[data-theme=cyber] .text-info{color:#1b1b1b!important}[data-theme=cyber] .bg-marginal-bg{background:#2d293b!important}[data-theme=cyber] .text-marginal-bg{color:#2d293b!important}[data-theme=cyber] .bg-marginal-text{background:#fff!important}[data-theme=cyber] .text-marginal-text{color:#fff!important}[data-theme=mint] .q-drawer--dark,body[data-theme=mint].body--dark,[data-theme=mint] .q-menu--dark{background:#1f342b!important}[data-theme=mint] .q-card--dark,[data-theme=mint] .q-stepper--dark{background:#334642!important}[data-theme=mint] .bg-primary{background:#3ab77d!important}[data-theme=mint] .text-primary{color:#3ab77d!important}[data-theme=mint] .bg-secondary{background:#27b065!important}[data-theme=mint] .text-secondary{color:#27b065!important}[data-theme=mint] .bg-dark{background:#1f342b!important}[data-theme=mint] .text-dark{color:#1f342b!important}[data-theme=mint] .bg-info{background:#334642!important}[data-theme=mint] .text-info{color:#334642!important}[data-theme=mint] .bg-marginal-bg{background:#1f342b!important}[data-theme=mint] .text-marginal-bg{color:#1f342b!important}[data-theme=mint] .bg-marginal-text{background:#fff!important}[data-theme=mint] .text-marginal-text{color:#fff!important}[data-theme=autumn] .q-drawer--dark,body[data-theme=autumn].body--dark,[data-theme=autumn] .q-menu--dark{background:#34291f!important}[data-theme=autumn] .q-card--dark,[data-theme=autumn] .q-stepper--dark{background:#463f33!important}[data-theme=autumn] .bg-primary{background:#b7763a!important}[data-theme=autumn] .text-primary{color:#b7763a!important}[data-theme=autumn] .bg-secondary{background:#b07927!important}[data-theme=autumn] .text-secondary{color:#b07927!important}[data-theme=autumn] .bg-dark{background:#34291f!important}[data-theme=autumn] .text-dark{color:#34291f!important}[data-theme=autumn] .bg-info{background:#463f33!important}[data-theme=autumn] .text-info{color:#463f33!important}[data-theme=autumn] .bg-marginal-bg{background:#342a1f!important}[data-theme=autumn] .text-marginal-bg{color:#342a1f!important}[data-theme=autumn] .bg-marginal-text{background:rgb(255,255,255)!important}[data-theme=autumn] .text-marginal-text{color:#fff!important}[data-theme=flamingo] .q-drawer--dark,body[data-theme=flamingo].body--dark,[data-theme=flamingo] .q-menu--dark{background:#2f032f!important}[data-theme=flamingo] .q-card--dark,[data-theme=flamingo] .q-stepper--dark{background:#bc23bc!important}[data-theme=flamingo] .bg-primary{background:#ff00ff!important}[data-theme=flamingo] .text-primary{color:#f0f!important}[data-theme=flamingo] .bg-secondary{background:#fda3fd!important}[data-theme=flamingo] .text-secondary{color:#fda3fd!important}[data-theme=flamingo] .bg-dark{background:#2f032f!important}[data-theme=flamingo] .text-dark{color:#2f032f!important}[data-theme=flamingo] .bg-info{background:#bc23bc!important}[data-theme=flamingo] .text-info{color:#bc23bc!important}[data-theme=flamingo] .bg-marginal-bg{background:#311231!important}[data-theme=flamingo] .text-marginal-bg{color:#311231!important}[data-theme=flamingo] .bg-marginal-text{background:rgb(255,255,255)!important}[data-theme=flamingo] .text-marginal-text{color:#fff!important}[data-theme=monochrome] .q-drawer--dark,body[data-theme=monochrome].body--dark,[data-theme=monochrome] .q-menu--dark{background:#000!important}[data-theme=monochrome] .q-card--dark,[data-theme=monochrome] .q-stepper--dark{background:rgb(39,39,39)!important}[data-theme=monochrome] .bg-primary{background:#494949!important}[data-theme=monochrome] .text-primary{color:#494949!important}[data-theme=monochrome] .bg-secondary{background:#6b6b6b!important}[data-theme=monochrome] .text-secondary{color:#6b6b6b!important}[data-theme=monochrome] .bg-dark{background:#000!important}[data-theme=monochrome] .text-dark{color:#000!important}[data-theme=monochrome] .bg-info{background:rgb(39,39,39)!important}[data-theme=monochrome] .text-info{color:#272727!important}[data-theme=monochrome] .bg-marginal-bg{background:#000!important}[data-theme=monochrome] .text-marginal-bg{color:#000!important}[data-theme=monochrome] .bg-marginal-text{background:rgb(255,255,255)!important}[data-theme=monochrome] .text-marginal-text{color:#fff!important}[data-theme=freedom] .q-drawer--dark,[data-theme=freedom] .q-header,[data-theme=cyber] .q-drawer--dark,[data-theme=cyber] .q-header{background:#0a0a0a!important}[data-theme=salvador] .q-drawer--dark{background:#242424!important}[data-theme=salvador] .q-header{background:#0f47af!important}[v-cloak]{display:none}body.body--dark .q-table--dark{background:transparent}body.body--dark .q-field--error .text-negative,body.body--dark .q-field--error .q-field__messages{color:#ff0!important}.lnbits-drawer__q-list .q-item{padding-top:5px!important;padding-bottom:5px!important;border-top-right-radius:3px;border-bottom-right-radius:3px}.lnbits-drawer__q-list .q-item.q-item--active{color:inherit;font-weight:700}.lnbits__dialog-card{width:500px}.q-table--dense th:first-child,.q-table--dense td:first-child,.q-table--dense .q-table__bottom{padding-left:6px!important}.q-table--dense th:last-child,.q-table--dense td:last-child,.q-table--dense .q-table__bottom{padding-right:6px!important}a.inherit{color:inherit;text-decoration:none}video{border-radius:3px}@font-face{font-family:Material Icons;font-style:normal;font-weight:400;src:url(/static/fonts/material-icons-v50.woff2) format("woff2")}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-moz-font-feature-settings:"liga";-moz-osx-font-smoothing:grayscale}.q-rating__icon{font-size:1em}.text-wrap{word-break:break-word}.q-card code{overflow-wrap:break-word} diff --git a/static/market/assets/index.dfb4e5db.js b/static/market/assets/index.dfb4e5db.js index 13b1937..3839619 100644 --- a/static/market/assets/index.dfb4e5db.js +++ b/static/market/assets/index.dfb4e5db.js @@ -2,4 +2,4 @@ function Vr(e,t){const n=Object.create(null),o=e.split(",");for(let r=0;r{},rt=Array.isArray,vd=/\/$/,bd=e=>e.replace(vd,"");function rr(e,t,n="/"){let o,r={},i="",s="";const l=t.indexOf("#");let a=t.indexOf("?");return l=0&&(a=-1),a>-1&&(o=t.slice(0,a),i=t.slice(a+1,l>-1?l:t.length),r=e(i)),l>-1&&(o=o||t.slice(0,l),s=t.slice(l,t.length)),o=xd(o!=null?o:t,n),{fullPath:o+(i&&"?")+i+s,path:o,query:r,hash:s}}function yd(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function us(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function _d(e,t,n){const o=t.matched.length-1,r=n.matched.length-1;return o>-1&&o===r&&fn(t.matched[o],n.matched[r])&&pa(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function fn(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function pa(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!wd(e[n],t[n]))return!1;return!0}function wd(e,t){return rt(e)?cs(e,t):rt(t)?cs(t,e):e===t}function cs(e,t){return rt(t)?e.length===t.length&&e.every((n,o)=>n===t[o]):e.length===1&&e[0]===t}function xd(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),o=e.split("/"),r=o[o.length-1];(r===".."||r===".")&&o.push("");let i=n.length-1,s,l;for(s=0;s1&&i--;else break;return n.slice(0,i).join("/")+"/"+o.slice(s-(s===o.length?1:0)).join("/")}var Kn;(function(e){e.pop="pop",e.push="push"})(Kn||(Kn={}));var Bn;(function(e){e.back="back",e.forward="forward",e.unknown=""})(Bn||(Bn={}));function Cd(e){if(!e)if(en){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),bd(e)}const kd=/^[^#]+#/;function Ed(e,t){return e.replace(kd,"#")+t}function Sd(e,t){const n=document.documentElement.getBoundingClientRect(),o=e.getBoundingClientRect();return{behavior:t.behavior,left:o.left-n.left-(t.left||0),top:o.top-n.top-(t.top||0)}}const zo=()=>({left:window.pageXOffset,top:window.pageYOffset});function Rd(e){let t;if("el"in e){const n=e.el,o=typeof n=="string"&&n.startsWith("#"),r=typeof n=="string"?o?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!r)return;t=Sd(r,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.pageXOffset,t.top!=null?t.top:window.pageYOffset)}function fs(e,t){return(history.state?history.state.position-t:-1)+e}const Ar=new Map;function Pd(e,t){Ar.set(e,t)}function Td(e){const t=Ar.get(e);return Ar.delete(e),t}let qd=()=>location.protocol+"//"+location.host;function va(e,t){const{pathname:n,search:o,hash:r}=t,i=e.indexOf("#");if(i>-1){let l=r.includes(e.slice(i))?e.slice(i).length:1,a=r.slice(l);return a[0]!=="/"&&(a="/"+a),us(a,"")}return us(n,e)+o+r}function Ad(e,t,n,o){let r=[],i=[],s=null;const l=({state:f})=>{const p=va(e,location),y=n.value,T=t.value;let q=0;if(f){if(n.value=p,t.value=f,s&&s===y){s=null;return}q=T?f.position-T.position:0}else o(p);r.forEach(M=>{M(n.value,y,{delta:q,type:Kn.pop,direction:q?q>0?Bn.forward:Bn.back:Bn.unknown})})};function a(){s=n.value}function c(f){r.push(f);const p=()=>{const y=r.indexOf(f);y>-1&&r.splice(y,1)};return i.push(p),p}function u(){const{history:f}=window;!f.state||f.replaceState(ge({},f.state,{scroll:zo()}),"")}function d(){for(const f of i)f();i=[],window.removeEventListener("popstate",l),window.removeEventListener("beforeunload",u)}return window.addEventListener("popstate",l),window.addEventListener("beforeunload",u,{passive:!0}),{pauseListeners:a,listen:c,destroy:d}}function ds(e,t,n,o=!1,r=!1){return{back:e,current:t,forward:n,replaced:o,position:window.history.length,scroll:r?zo():null}}function Md(e){const{history:t,location:n}=window,o={value:va(e,n)},r={value:t.state};r.value||i(o.value,{back:null,current:o.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function i(a,c,u){const d=e.indexOf("#"),f=d>-1?(n.host&&document.querySelector("base")?e:e.slice(d))+a:qd()+e+a;try{t[u?"replaceState":"pushState"](c,"",f),r.value=c}catch(p){console.error(p),n[u?"replace":"assign"](f)}}function s(a,c){const u=ge({},t.state,ds(r.value.back,a,r.value.forward,!0),c,{position:r.value.position});i(a,u,!0),o.value=a}function l(a,c){const u=ge({},r.value,t.state,{forward:a,scroll:zo()});i(u.current,u,!0);const d=ge({},ds(o.value,a,null),{position:u.position+1},c);i(a,d,!1),o.value=a}return{location:o,state:r,push:l,replace:s}}function Od(e){e=Cd(e);const t=Md(e),n=Ad(e,t.state,t.location,t.replace);function o(i,s=!0){s||n.pauseListeners(),history.go(i)}const r=ge({location:"",base:e,go:o,createHref:Ed.bind(null,e)},t,n);return Object.defineProperty(r,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(r,"state",{enumerable:!0,get:()=>t.state.value}),r}function $d(e){return e=location.host?e||location.pathname+location.search:"",e.includes("#")||(e+="#"),Od(e)}function Ld(e){return typeof e=="string"||e&&typeof e=="object"}function ba(e){return typeof e=="string"||typeof e=="symbol"}const _t={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0},ya=Symbol("");var hs;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(hs||(hs={}));function dn(e,t){return ge(new Error,{type:e,[ya]:!0},t)}function ft(e,t){return e instanceof Error&&ya in e&&(t==null||!!(e.type&t))}const gs="[^/]+?",Bd={sensitive:!1,strict:!1,start:!0,end:!0},Fd=/[.+*?^${}()[\]/\\]/g;function Id(e,t){const n=ge({},Bd,t),o=[];let r=n.start?"^":"";const i=[];for(const c of e){const u=c.length?[]:[90];n.strict&&!c.length&&(r+="/");for(let d=0;dt.length?t.length===1&&t[0]===40+40?1:-1:0}function jd(e,t){let n=0;const o=e.score,r=t.score;for(;n0&&t[t.length-1]<0}const Vd={type:0,value:""},Dd=/[a-zA-Z0-9_]/;function Hd(e){if(!e)return[[]];if(e==="/")return[[Vd]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(p){throw new Error(`ERR (${n})/"${c}": ${p}`)}let n=0,o=n;const r=[];let i;function s(){i&&r.push(i),i=[]}let l=0,a,c="",u="";function d(){!c||(n===0?i.push({type:0,value:c}):n===1||n===2||n===3?(i.length>1&&(a==="*"||a==="+")&&t(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),i.push({type:1,value:c,regexp:u,repeatable:a==="*"||a==="+",optional:a==="*"||a==="?"})):t("Invalid state to consume buffer"),c="")}function f(){c+=a}for(;l{s(m)}:Ln}function s(u){if(ba(u)){const d=o.get(u);d&&(o.delete(u),n.splice(n.indexOf(d),1),d.children.forEach(s),d.alias.forEach(s))}else{const d=n.indexOf(u);d>-1&&(n.splice(d,1),u.record.name&&o.delete(u.record.name),u.children.forEach(s),u.alias.forEach(s))}}function l(){return n}function a(u){let d=0;for(;d=0&&(u.record.path!==n[d].record.path||!_a(u,n[d]));)d++;n.splice(d,0,u),u.record.name&&!vs(u)&&o.set(u.record.name,u)}function c(u,d){let f,p={},y,T;if("name"in u&&u.name){if(f=o.get(u.name),!f)throw dn(1,{location:u});T=f.record.name,p=ge(ps(d.params,f.keys.filter(m=>!m.optional).map(m=>m.name)),u.params&&ps(u.params,f.keys.map(m=>m.name))),y=f.stringify(p)}else if("path"in u)y=u.path,f=n.find(m=>m.re.test(y)),f&&(p=f.parse(y),T=f.record.name);else{if(f=d.name?o.get(d.name):n.find(m=>m.re.test(d.path)),!f)throw dn(1,{location:u,currentLocation:d});T=f.record.name,p=ge({},d.params,u.params),y=f.stringify(p)}const q=[];let M=f;for(;M;)q.unshift(M.record),M=M.parent;return{name:T,path:y,params:p,matched:q,meta:Qd(q)}}return e.forEach(u=>i(u)),{addRoute:i,resolve:c,removeRoute:s,getRoutes:l,getRecordMatcher:r}}function ps(e,t){const n={};for(const o of t)o in e&&(n[o]=e[o]);return n}function Ud(e){return{path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:void 0,beforeEnter:e.beforeEnter,props:Wd(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}}}function Wd(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const o in e.components)t[o]=typeof n=="object"?n[o]:n;return t}function vs(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Qd(e){return e.reduce((t,n)=>ge(t,n.meta),{})}function bs(e,t){const n={};for(const o in e)n[o]=o in t?t[o]:e[o];return n}function _a(e,t){return t.children.some(n=>n===e||_a(e,n))}const wa=/#/g,Yd=/&/g,Zd=/\//g,Jd=/=/g,Xd=/\?/g,xa=/\+/g,Gd=/%5B/g,eh=/%5D/g,Ca=/%5E/g,th=/%60/g,ka=/%7B/g,nh=/%7C/g,Ea=/%7D/g,oh=/%20/g;function fi(e){return encodeURI(""+e).replace(nh,"|").replace(Gd,"[").replace(eh,"]")}function rh(e){return fi(e).replace(ka,"{").replace(Ea,"}").replace(Ca,"^")}function Mr(e){return fi(e).replace(xa,"%2B").replace(oh,"+").replace(wa,"%23").replace(Yd,"%26").replace(th,"`").replace(ka,"{").replace(Ea,"}").replace(Ca,"^")}function ih(e){return Mr(e).replace(Jd,"%3D")}function sh(e){return fi(e).replace(wa,"%23").replace(Xd,"%3F")}function lh(e){return e==null?"":sh(e).replace(Zd,"%2F")}function Ro(e){try{return decodeURIComponent(""+e)}catch{}return""+e}function ah(e){const t={};if(e===""||e==="?")return t;const o=(e[0]==="?"?e.slice(1):e).split("&");for(let r=0;ri&&Mr(i)):[o&&Mr(o)]).forEach(i=>{i!==void 0&&(t+=(t.length?"&":"")+n,i!=null&&(t+="="+i))})}return t}function uh(e){const t={};for(const n in e){const o=e[n];o!==void 0&&(t[n]=rt(o)?o.map(r=>r==null?null:""+r):o==null?o:""+o)}return t}const ch=Symbol(""),_s=Symbol(""),di=Symbol(""),Sa=Symbol(""),Or=Symbol("");function xn(){let e=[];function t(o){return e.push(o),()=>{const r=e.indexOf(o);r>-1&&e.splice(r,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Ct(e,t,n,o,r){const i=o&&(o.enterCallbacks[r]=o.enterCallbacks[r]||[]);return()=>new Promise((s,l)=>{const a=d=>{d===!1?l(dn(4,{from:n,to:t})):d instanceof Error?l(d):Ld(d)?l(dn(2,{from:t,to:d})):(i&&o.enterCallbacks[r]===i&&typeof d=="function"&&i.push(d),s())},c=e.call(o&&o.instances[r],t,n,a);let u=Promise.resolve(c);e.length<3&&(u=u.then(a)),u.catch(d=>l(d))})}function ir(e,t,n,o){const r=[];for(const i of e)for(const s in i.components){let l=i.components[s];if(!(t!=="beforeRouteEnter"&&!i.instances[s]))if(fh(l)){const c=(l.__vccOpts||l)[t];c&&r.push(Ct(c,n,o,i,s))}else{let a=l();r.push(()=>a.then(c=>{if(!c)return Promise.reject(new Error(`Couldn't resolve component "${s}" at "${i.path}"`));const u=pd(c)?c.default:c;i.components[s]=u;const f=(u.__vccOpts||u)[t];return f&&Ct(f,n,o,i,s)()}))}}return r}function fh(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function ws(e){const t=ut(di),n=ut(Sa),o=R(()=>t.resolve(Vt(e.to))),r=R(()=>{const{matched:a}=o.value,{length:c}=a,u=a[c-1],d=n.matched;if(!u||!d.length)return-1;const f=d.findIndex(fn.bind(null,u));if(f>-1)return f;const p=xs(a[c-2]);return c>1&&xs(u)===p&&d[d.length-1].path!==p?d.findIndex(fn.bind(null,a[c-2])):f}),i=R(()=>r.value>-1&&mh(n.params,o.value.params)),s=R(()=>r.value>-1&&r.value===n.matched.length-1&&pa(n.params,o.value.params));function l(a={}){return gh(a)?t[Vt(e.replace)?"replace":"push"](Vt(e.to)).catch(Ln):Promise.resolve()}return{route:o,href:R(()=>o.value.href),isActive:i,isExactActive:s,navigate:l}}const dh=Lo({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:ws,setup(e,{slots:t}){const n=pn(ws(e)),{options:o}=ut(di),r=R(()=>({[Cs(e.activeClass,o.linkActiveClass,"router-link-active")]:n.isActive,[Cs(e.exactActiveClass,o.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const i=t.default&&t.default(n);return e.custom?i:E("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:r.value},i)}}}),hh=dh;function gh(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function mh(e,t){for(const n in t){const o=t[n],r=e[n];if(typeof o=="string"){if(o!==r)return!1}else if(!rt(r)||r.length!==o.length||o.some((i,s)=>i!==r[s]))return!1}return!0}function xs(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const Cs=(e,t,n)=>e!=null?e:t!=null?t:n,ph=Lo({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const o=ut(Or),r=R(()=>e.route||o.value),i=ut(_s,0),s=R(()=>{let c=Vt(i);const{matched:u}=r.value;let d;for(;(d=u[c])&&!d.components;)c++;return c}),l=R(()=>r.value.matched[s.value]);fo(_s,R(()=>s.value+1)),fo(ch,l),fo(Or,r);const a=he();return be(()=>[a.value,l.value,e.name],([c,u,d],[f,p,y])=>{u&&(u.instances[d]=c,p&&p!==u&&c&&c===f&&(u.leaveGuards.size||(u.leaveGuards=p.leaveGuards),u.updateGuards.size||(u.updateGuards=p.updateGuards))),c&&u&&(!p||!fn(u,p)||!f)&&(u.enterCallbacks[d]||[]).forEach(T=>T(c))},{flush:"post"}),()=>{const c=r.value,u=e.name,d=l.value,f=d&&d.components[u];if(!f)return ks(n.default,{Component:f,route:c});const p=d.props[u],y=p?p===!0?c.params:typeof p=="function"?p(c):p:null,q=E(f,ge({},y,t,{onVnodeUnmounted:M=>{M.component.isUnmounted&&(d.instances[u]=null)},ref:a}));return ks(n.default,{Component:q,route:c})||q}}});function ks(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const vh=ph;function bh(e){const t=Kd(e.routes,e),n=e.parseQuery||ah,o=e.stringifyQuery||ys,r=e.history,i=xn(),s=xn(),l=xn(),a=Yu(_t);let c=_t;en&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=or.bind(null,S=>""+S),d=or.bind(null,lh),f=or.bind(null,Ro);function p(S,Q){let z,X;return ba(S)?(z=t.getRecordMatcher(S),X=Q):X=S,t.addRoute(X,z)}function y(S){const Q=t.getRecordMatcher(S);Q&&t.removeRoute(Q)}function T(){return t.getRoutes().map(S=>S.record)}function q(S){return!!t.getRecordMatcher(S)}function M(S,Q){if(Q=ge({},Q||a.value),typeof S=="string"){const b=rr(n,S,Q.path),P=t.resolve({path:b.path},Q),O=r.createHref(b.fullPath);return ge(b,P,{params:f(P.params),hash:Ro(b.hash),redirectedFrom:void 0,href:O})}let z;if("path"in S)z=ge({},S,{path:rr(n,S.path,Q.path).path});else{const b=ge({},S.params);for(const P in b)b[P]==null&&delete b[P];z=ge({},S,{params:d(b)}),Q.params=d(Q.params)}const X=t.resolve(z,Q),de=S.hash||"";X.params=u(f(X.params));const h=yd(o,ge({},S,{hash:rh(de),path:X.path})),g=r.createHref(h);return ge({fullPath:h,hash:de,query:o===ys?uh(S.query):S.query||{}},X,{redirectedFrom:void 0,href:g})}function m(S){return typeof S=="string"?rr(n,S,a.value.path):ge({},S)}function _(S,Q){if(c!==S)return dn(8,{from:Q,to:S})}function w(S){return V(S)}function F(S){return w(ge(m(S),{replace:!0}))}function j(S){const Q=S.matched[S.matched.length-1];if(Q&&Q.redirect){const{redirect:z}=Q;let X=typeof z=="function"?z(S):z;return typeof X=="string"&&(X=X.includes("?")||X.includes("#")?X=m(X):{path:X},X.params={}),ge({query:S.query,hash:S.hash,params:"path"in X?{}:S.params},X)}}function V(S,Q){const z=c=M(S),X=a.value,de=S.state,h=S.force,g=S.replace===!0,b=j(z);if(b)return V(ge(m(b),{state:typeof b=="object"?ge({},de,b.state):de,force:h,replace:g}),Q||z);const P=z;P.redirectedFrom=Q;let O;return!h&&_d(o,X,z)&&(O=dn(16,{to:P,from:X}),fe(X,X,!0,!1)),(O?Promise.resolve(O):x(P,X)).catch(B=>ft(B)?ft(B,2)?B:se(B):W(B,P,X)).then(B=>{if(B){if(ft(B,2))return V(ge({replace:g},m(B.to),{state:typeof B.to=="object"?ge({},de,B.to.state):de,force:h}),Q||P)}else B=v(P,X,!0,g,de);return $(P,X,B),B})}function N(S,Q){const z=_(S,Q);return z?Promise.reject(z):Promise.resolve()}function C(S){const Q=Re.values().next().value;return Q&&typeof Q.runWithContext=="function"?Q.runWithContext(S):S()}function x(S,Q){let z;const[X,de,h]=yh(S,Q);z=ir(X.reverse(),"beforeRouteLeave",S,Q);for(const b of X)b.leaveGuards.forEach(P=>{z.push(Ct(P,S,Q))});const g=N.bind(null,S,Q);return z.push(g),ne(z).then(()=>{z=[];for(const b of i.list())z.push(Ct(b,S,Q));return z.push(g),ne(z)}).then(()=>{z=ir(de,"beforeRouteUpdate",S,Q);for(const b of de)b.updateGuards.forEach(P=>{z.push(Ct(P,S,Q))});return z.push(g),ne(z)}).then(()=>{z=[];for(const b of h)if(b.beforeEnter)if(rt(b.beforeEnter))for(const P of b.beforeEnter)z.push(Ct(P,S,Q));else z.push(Ct(b.beforeEnter,S,Q));return z.push(g),ne(z)}).then(()=>(S.matched.forEach(b=>b.enterCallbacks={}),z=ir(h,"beforeRouteEnter",S,Q),z.push(g),ne(z))).then(()=>{z=[];for(const b of s.list())z.push(Ct(b,S,Q));return z.push(g),ne(z)}).catch(b=>ft(b,8)?b:Promise.reject(b))}function $(S,Q,z){l.list().forEach(X=>C(()=>X(S,Q,z)))}function v(S,Q,z,X,de){const h=_(S,Q);if(h)return h;const g=Q===_t,b=en?history.state:{};z&&(X||g?r.replace(S.fullPath,ge({scroll:g&&b&&b.scroll},de)):r.push(S.fullPath,de)),a.value=S,fe(S,Q,z,g),se()}let H;function k(){H||(H=r.listen((S,Q,z)=>{if(!oe.listening)return;const X=M(S),de=j(X);if(de){V(ge(de,{replace:!0}),X).catch(Ln);return}c=X;const h=a.value;en&&Pd(fs(h.fullPath,z.delta),zo()),x(X,h).catch(g=>ft(g,12)?g:ft(g,2)?(V(g.to,X).then(b=>{ft(b,20)&&!z.delta&&z.type===Kn.pop&&r.go(-1,!1)}).catch(Ln),Promise.reject()):(z.delta&&r.go(-z.delta,!1),W(g,X,h))).then(g=>{g=g||v(X,h,!1),g&&(z.delta&&!ft(g,8)?r.go(-z.delta,!1):z.type===Kn.pop&&ft(g,20)&&r.go(-1,!1)),$(X,h,g)}).catch(Ln)}))}let Z=xn(),Y=xn(),A;function W(S,Q,z){se(S);const X=Y.list();return X.length?X.forEach(de=>de(S,Q,z)):console.error(S),Promise.reject(S)}function _e(){return A&&a.value!==_t?Promise.resolve():new Promise((S,Q)=>{Z.add([S,Q])})}function se(S){return A||(A=!S,k(),Z.list().forEach(([Q,z])=>S?z(S):Q()),Z.reset()),S}function fe(S,Q,z,X){const{scrollBehavior:de}=e;if(!en||!de)return Promise.resolve();const h=!z&&Td(fs(S.fullPath,0))||(X||!z)&&history.state&&history.state.scroll||null;return je().then(()=>de(S,Q,h)).then(g=>g&&Rd(g)).catch(g=>W(g,S,Q))}const L=S=>r.go(S);let ue;const Re=new Set,oe={currentRoute:a,listening:!0,addRoute:p,removeRoute:y,hasRoute:q,getRoutes:T,resolve:M,options:e,push:w,replace:F,go:L,back:()=>L(-1),forward:()=>L(1),beforeEach:i.add,beforeResolve:s.add,afterEach:l.add,onError:Y.add,isReady:_e,install(S){const Q=this;S.component("RouterLink",hh),S.component("RouterView",vh),S.config.globalProperties.$router=Q,Object.defineProperty(S.config.globalProperties,"$route",{enumerable:!0,get:()=>Vt(a)}),en&&!ue&&a.value===_t&&(ue=!0,w(r.location).catch(de=>{}));const z={};for(const de in _t)Object.defineProperty(z,de,{get:()=>a.value[de],enumerable:!0});S.provide(di,Q),S.provide(Sa,ml(z)),S.provide(Or,a);const X=S.unmount;Re.add(S),S.unmount=function(){Re.delete(S),Re.size<1&&(c=_t,H&&H(),H=null,a.value=_t,ue=!1,A=!1),X()}}};function ne(S){return S.reduce((Q,z)=>Q.then(()=>C(z)),Promise.resolve())}return oe}function yh(e,t){const n=[],o=[],r=[],i=Math.max(t.matched.length,e.matched.length);for(let s=0;sfn(c,l))?o.push(l):n.push(l));const a=e.matched[s];a&&(t.matched.find(c=>fn(c,a))||r.push(a))}return[n,o,r]}const _h=function(){const t=document.createElement("link").relList;return t&&t.supports&&t.supports("modulepreload")?"modulepreload":"preload"}(),Es={},wh="/",sr=function(t,n){return!n||n.length===0?t():Promise.all(n.map(o=>{if(o=`${wh}${o}`,o in Es)return;Es[o]=!0;const r=o.endsWith(".css"),i=r?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${o}"]${i}`))return;const s=document.createElement("link");if(s.rel=r?"stylesheet":_h,r||(s.as="script",s.crossOrigin=""),s.href=o,document.head.appendChild(s),r)return new Promise((l,a)=>{s.addEventListener("load",l),s.addEventListener("error",()=>a(new Error(`Unable to preload CSS for ${o}`)))})})).then(()=>t())},xh=[{path:"/",component:()=>sr(()=>import("./MainLayout.8257fc44.js"),["assets/MainLayout.8257fc44.js","assets/QResizeObserver.0b22f089.js"]),children:[{path:"",component:()=>sr(()=>import("./MarketPage.b14abdfe.js"),["assets/MarketPage.b14abdfe.js","assets/QResizeObserver.0b22f089.js"])}]},{path:"/:catchAll(.*)*",component:()=>sr(()=>import("./ErrorNotFound.e659d628.js"),[])}];var lr=function(){return bh({scrollBehavior:()=>({left:0,top:0}),routes:xh,history:$d("/")})};async function Ch(e,t){const n=e(md);n.use(fd,t);const o=vn(typeof lr=="function"?await lr({}):lr);return{app:n,router:o}}const $r={xs:18,sm:24,md:32,lg:38,xl:46},Yn={size:String};function Zn(e,t=$r){return R(()=>e.size!==void 0?{fontSize:e.size in t?`${t[e.size]}px`:e.size}:null)}const $e=e=>vn(Lo(e)),kh=e=>vn(e);function tt(e,t){return e!==void 0&&e()||t}function $m(e,t){if(e!==void 0){const n=e();if(n!=null)return n.slice()}return t}function It(e,t){return e!==void 0?t.concat(e()):t}function Eh(e,t){return e===void 0?t:t!==void 0?t.concat(e()):e()}function Lm(e,t,n,o,r,i){t.key=o+r;const s=E(e,t,n);return r===!0?Al(s,i()):s}const Ss="0 0 24 24",Rs=e=>e,ar=e=>`ionicons ${e}`,Ra={"mdi-":e=>`mdi ${e}`,"icon-":Rs,"bt-":e=>`bt ${e}`,"eva-":e=>`eva ${e}`,"ion-md":ar,"ion-ios":ar,"ion-logo":ar,"iconfont ":Rs,"ti-":e=>`themify-icon ${e}`,"bi-":e=>`bootstrap-icons ${e}`},Pa={o_:"-outlined",r_:"-round",s_:"-sharp"},Ta={sym_o_:"-outlined",sym_r_:"-rounded",sym_s_:"-sharp"},Sh=new RegExp("^("+Object.keys(Ra).join("|")+")"),Rh=new RegExp("^("+Object.keys(Pa).join("|")+")"),Ps=new RegExp("^("+Object.keys(Ta).join("|")+")"),Ph=/^[Mm]\s?[-+]?\.?\d/,Th=/^img:/,qh=/^svguse:/,Ah=/^ion-/,Mh=/^(fa-(sharp|solid|regular|light|brands|duotone|thin)|[lf]a[srlbdk]?) /;var pt=$e({name:"QIcon",props:{...Yn,tag:{type:String,default:"i"},name:String,color:String,left:Boolean,right:Boolean},setup(e,{slots:t}){const{proxy:{$q:n}}=ke(),o=Zn(e),r=R(()=>"q-icon"+(e.left===!0?" on-left":"")+(e.right===!0?" on-right":"")+(e.color!==void 0?` text-${e.color}`:"")),i=R(()=>{let s,l=e.name;if(l==="none"||!l)return{none:!0};if(n.iconMapFn!==null){const u=n.iconMapFn(l);if(u!==void 0)if(u.icon!==void 0){if(l=u.icon,l==="none"||!l)return{none:!0}}else return{cls:u.cls,content:u.content!==void 0?u.content:" "}}if(Ph.test(l)===!0){const[u,d=Ss]=l.split("|");return{svg:!0,viewBox:d,nodes:u.split("&&").map(f=>{const[p,y,T]=f.split("@@");return E("path",{style:y,d:p,transform:T})})}}if(Th.test(l)===!0)return{img:!0,src:l.substring(4)};if(qh.test(l)===!0){const[u,d=Ss]=l.split("|");return{svguse:!0,src:u.substring(7),viewBox:d}}let a=" ";const c=l.match(Sh);if(c!==null)s=Ra[c[1]](l);else if(Mh.test(l)===!0)s=l;else if(Ah.test(l)===!0)s=`ionicons ion-${n.platform.is.ios===!0?"ios":"md"}${l.substring(3)}`;else if(Ps.test(l)===!0){s="notranslate material-symbols";const u=l.match(Ps);u!==null&&(l=l.substring(6),s+=Ta[u[1]]),a=l}else{s="notranslate material-icons";const u=l.match(Rh);u!==null&&(l=l.substring(2),s+=Pa[u[1]]),a=l}return{cls:s,content:a}});return()=>{const s={class:r.value,style:o.value,"aria-hidden":"true",role:"presentation"};return i.value.none===!0?E(e.tag,s,tt(t.default)):i.value.img===!0?E("span",s,It(t.default,[E("img",{src:i.value.src})])):i.value.svg===!0?E("span",s,It(t.default,[E("svg",{viewBox:i.value.viewBox||"0 0 24 24"},i.value.nodes)])):i.value.svguse===!0?E("span",s,It(t.default,[E("svg",{viewBox:i.value.viewBox},[E("use",{"xlink:href":i.value.src})])])):(i.value.cls!==void 0&&(s.class+=" "+i.value.cls),E(e.tag,s,It(t.default,[i.value.content])))}}}),Oh=$e({name:"QAvatar",props:{...Yn,fontSize:String,color:String,textColor:String,icon:String,square:Boolean,rounded:Boolean},setup(e,{slots:t}){const n=Zn(e),o=R(()=>"q-avatar"+(e.color?` bg-${e.color}`:"")+(e.textColor?` text-${e.textColor} q-chip--colored`:"")+(e.square===!0?" q-avatar--square":e.rounded===!0?" rounded-borders":"")),r=R(()=>e.fontSize?{fontSize:e.fontSize}:null);return()=>{const i=e.icon!==void 0?[E(pt,{name:e.icon})]:void 0;return E("div",{class:o.value,style:n.value},[E("div",{class:"q-avatar__content row flex-center overflow-hidden",style:r.value},Eh(t.default,i))])}}});const $h={size:{type:[Number,String],default:"1em"},color:String};function Lh(e){return{cSize:R(()=>e.size in $r?`${$r[e.size]}px`:e.size),classes:R(()=>"q-spinner"+(e.color?` text-${e.color}`:""))}}var Un=$e({name:"QSpinner",props:{...$h,thickness:{type:Number,default:5}},setup(e){const{cSize:t,classes:n}=Lh(e);return()=>E("svg",{class:n.value+" q-spinner-mat",width:t.value,height:t.value,viewBox:"25 25 50 50"},[E("circle",{class:"path",cx:"50",cy:"50",r:"20",fill:"none",stroke:"currentColor","stroke-width":e.thickness,"stroke-miterlimit":"10"})])}});function Bm(e){return e===window?window.innerHeight:e.getBoundingClientRect().height}function Lr(e,t){const n=e.style;for(const o in t)n[o]=t[o]}function Bh(e){if(e==null)return;if(typeof e=="string")try{return document.querySelector(e)||void 0}catch{return}const t=Vt(e);if(t)return t.$el||t}function Fh(e,t){if(e==null||e.contains(t)===!0)return!0;for(let n=e.nextElementSibling;n!==null;n=n.nextElementSibling)if(n.contains(t))return!0;return!1}function Ih(e,t=250){let n=!1,o;return function(){return n===!1&&(n=!0,setTimeout(()=>{n=!1},t),o=e.apply(this,arguments)),o}}function Ts(e,t,n,o){n.modifiers.stop===!0&&ko(e);const r=n.modifiers.color;let i=n.modifiers.center;i=i===!0||o===!0;const s=document.createElement("span"),l=document.createElement("span"),a=Hf(e),{left:c,top:u,width:d,height:f}=t.getBoundingClientRect(),p=Math.sqrt(d*d+f*f),y=p/2,T=`${(d-p)/2}px`,q=i?T:`${a.left-c-y}px`,M=`${(f-p)/2}px`,m=i?M:`${a.top-u-y}px`;l.className="q-ripple__inner",Lr(l,{height:`${p}px`,width:`${p}px`,transform:`translate3d(${q},${m},0) scale3d(.2,.2,1)`,opacity:0}),s.className=`q-ripple${r?" text-"+r:""}`,s.setAttribute("dir","ltr"),s.appendChild(l),t.appendChild(s);const _=()=>{s.remove(),clearTimeout(w)};n.abort.push(_);let w=setTimeout(()=>{l.classList.add("q-ripple__inner--enter"),l.style.transform=`translate3d(${T},${M},0) scale3d(1,1,1)`,l.style.opacity=.2,w=setTimeout(()=>{l.classList.remove("q-ripple__inner--enter"),l.classList.add("q-ripple__inner--leave"),l.style.opacity=0,w=setTimeout(()=>{s.remove(),n.abort.splice(n.abort.indexOf(_),1)},275)},250)},50)}function qs(e,{modifiers:t,value:n,arg:o}){const r=Object.assign({},e.cfg.ripple,t,n);e.modifiers={early:r.early===!0,stop:r.stop===!0,center:r.center===!0,color:r.color||o,keyCodes:[].concat(r.keyCodes||13)}}var Nh=kh({name:"ripple",beforeMount(e,t){const n=t.instance.$.appContext.config.globalProperties.$q.config||{};if(n.ripple===!1)return;const o={cfg:n,enabled:t.value!==!1,modifiers:{},abort:[],start(r){o.enabled===!0&&r.qSkipRipple!==!0&&r.type===(o.modifiers.early===!0?"pointerdown":"click")&&Ts(r,e,o,r.qKeyEvent===!0)},keystart:Ih(r=>{o.enabled===!0&&r.qSkipRipple!==!0&&zn(r,o.modifiers.keyCodes)===!0&&r.type===`key${o.modifiers.early===!0?"down":"up"}`&&Ts(r,e,o,!0)},300)};qs(o,t),e.__qripple=o,Kf(o,"main",[[e,"pointerdown","start","passive"],[e,"click","start","passive"],[e,"keydown","keystart","passive"],[e,"keyup","keystart","passive"]])},updated(e,t){if(t.oldValue!==t.value){const n=e.__qripple;n!==void 0&&(n.enabled=t.value!==!1,n.enabled===!0&&Object(t.value)===t.value&&qs(n,t))}},beforeUnmount(e){const t=e.__qripple;t!==void 0&&(t.abort.forEach(n=>{n()}),Uf(t,"main"),delete e._qripple)}});const qa={left:"start",center:"center",right:"end",between:"between",around:"around",evenly:"evenly",stretch:"stretch"},jh=Object.keys(qa),Aa={align:{type:String,validator:e=>jh.includes(e)}};function Ma(e){return R(()=>{const t=e.align===void 0?e.vertical===!0?"stretch":"left":e.align;return`${e.vertical===!0?"items":"justify"}-${qa[t]}`})}function go(e){if(Object(e.$parent)===e.$parent)return e.$parent;let{parent:t}=e.$;for(;Object(t)===t;){if(Object(t.proxy)===t.proxy)return t.proxy;t=t.parent}}function Oa(e,t){typeof t.type=="symbol"?Array.isArray(t.children)===!0&&t.children.forEach(n=>{Oa(e,n)}):e.add(t)}function Fm(e){const t=new Set;return e.forEach(n=>{Oa(t,n)}),Array.from(t)}function $a(e){return e.appContext.config.globalProperties.$router!==void 0}function La(e){return e.isUnmounted===!0||e.isDeactivated===!0}function As(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}function Ms(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Vh(e,t){for(const n in t){const o=t[n],r=e[n];if(typeof o=="string"){if(o!==r)return!1}else if(Array.isArray(r)===!1||r.length!==o.length||o.some((i,s)=>i!==r[s]))return!1}return!0}function Os(e,t){return Array.isArray(t)===!0?e.length===t.length&&e.every((n,o)=>n===t[o]):e.length===1&&e[0]===t}function Dh(e,t){return Array.isArray(e)===!0?Os(e,t):Array.isArray(t)===!0?Os(t,e):e===t}function Hh(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(Dh(e[n],t[n])===!1)return!1;return!0}const zh={to:[String,Object],replace:Boolean,exact:Boolean,activeClass:{type:String,default:"q-router-link--active"},exactActiveClass:{type:String,default:"q-router-link--exact-active"},href:String,target:String,disable:Boolean};function Kh({fallbackTag:e,useDisableForRouterLinkProps:t=!0}={}){const n=ke(),{props:o,proxy:r,emit:i}=n,s=$a(n),l=R(()=>o.disable!==!0&&o.href!==void 0),a=R(t===!0?()=>s===!0&&o.disable!==!0&&l.value!==!0&&o.to!==void 0&&o.to!==null&&o.to!=="":()=>s===!0&&l.value!==!0&&o.to!==void 0&&o.to!==null&&o.to!==""),c=R(()=>a.value===!0?m(o.to):null),u=R(()=>c.value!==null),d=R(()=>l.value===!0||u.value===!0),f=R(()=>o.type==="a"||d.value===!0?"a":o.tag||e||"div"),p=R(()=>l.value===!0?{href:o.href,target:o.target}:u.value===!0?{href:c.value.href,target:o.target}:{}),y=R(()=>{if(u.value===!1)return-1;const{matched:F}=c.value,{length:j}=F,V=F[j-1];if(V===void 0)return-1;const N=r.$route.matched;if(N.length===0)return-1;const C=N.findIndex(Ms.bind(null,V));if(C>-1)return C;const x=As(F[j-2]);return j>1&&As(V)===x&&N[N.length-1].path!==x?N.findIndex(Ms.bind(null,F[j-2])):C}),T=R(()=>u.value===!0&&y.value!==-1&&Vh(r.$route.params,c.value.params)),q=R(()=>T.value===!0&&y.value===r.$route.matched.length-1&&Hh(r.$route.params,c.value.params)),M=R(()=>u.value===!0?q.value===!0?` ${o.exactActiveClass} ${o.activeClass}`:o.exact===!0?"":T.value===!0?` ${o.activeClass}`:"":"");function m(F){try{return r.$router.resolve(F)}catch{}return null}function _(F,{returnRouterError:j,to:V=o.to,replace:N=o.replace}={}){if(o.disable===!0)return F.preventDefault(),Promise.resolve(!1);if(F.metaKey||F.altKey||F.ctrlKey||F.shiftKey||F.button!==void 0&&F.button!==0||o.target==="_blank")return Promise.resolve(!1);F.preventDefault();const C=r.$router[N===!0?"replace":"push"](V);return j===!0?C:C.then(()=>{}).catch(()=>{})}function w(F){if(u.value===!0){const j=V=>_(F,V);i("click",F,j),F.defaultPrevented!==!0&&j()}else i("click",F)}return{hasRouterLink:u,hasHrefLink:l,hasLink:d,linkTag:f,resolvedLink:c,linkIsActive:T,linkIsExactActive:q,linkClass:M,linkAttrs:p,getLink:m,navigateToRouterLink:_,navigateOnClick:w}}const $s={none:0,xs:4,sm:8,md:16,lg:24,xl:32},Uh={xs:8,sm:10,md:14,lg:20,xl:24},Wh=["button","submit","reset"],Qh=/[^\s]\/[^\s]/,Yh=["flat","outline","push","unelevated"],Ba=(e,t)=>e.flat===!0?"flat":e.outline===!0?"outline":e.push===!0?"push":e.unelevated===!0?"unelevated":t,Im=e=>{const t=Ba(e);return t!==void 0?{[t]:!0}:{}},Zh={...Yn,...zh,type:{type:String,default:"button"},label:[Number,String],icon:String,iconRight:String,...Yh.reduce((e,t)=>(e[t]=Boolean)&&e,{}),square:Boolean,round:Boolean,rounded:Boolean,glossy:Boolean,size:String,fab:Boolean,fabMini:Boolean,padding:String,color:String,textColor:String,noCaps:Boolean,noWrap:Boolean,dense:Boolean,tabindex:[Number,String],ripple:{type:[Boolean,Object],default:!0},align:{...Aa.align,default:"center"},stack:Boolean,stretch:Boolean,loading:{type:Boolean,default:null},disable:Boolean};function Jh(e){const t=Zn(e,Uh),n=Ma(e),{hasRouterLink:o,hasLink:r,linkTag:i,linkAttrs:s,navigateOnClick:l}=Kh({fallbackTag:"button"}),a=R(()=>{const q=e.fab===!1&&e.fabMini===!1?t.value:{};return e.padding!==void 0?Object.assign({},q,{padding:e.padding.split(/\s+/).map(M=>M in $s?$s[M]+"px":M).join(" "),minWidth:"0",minHeight:"0"}):q}),c=R(()=>e.rounded===!0||e.fab===!0||e.fabMini===!0),u=R(()=>e.disable!==!0&&e.loading!==!0),d=R(()=>u.value===!0?e.tabindex||0:-1),f=R(()=>Ba(e,"standard")),p=R(()=>{const q={tabindex:d.value};return r.value===!0?Object.assign(q,s.value):Wh.includes(e.type)===!0&&(q.type=e.type),i.value==="a"?(e.disable===!0?q["aria-disabled"]="true":q.href===void 0&&(q.role="button"),o.value!==!0&&Qh.test(e.type)===!0&&(q.type=e.type)):e.disable===!0&&(q.disabled="",q["aria-disabled"]="true"),e.loading===!0&&e.percentage!==void 0&&Object.assign(q,{role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":e.percentage}),q}),y=R(()=>{let q;e.color!==void 0?e.flat===!0||e.outline===!0?q=`text-${e.textColor||e.color}`:q=`bg-${e.color} text-${e.textColor||"white"}`:e.textColor&&(q=`text-${e.textColor}`);const M=e.round===!0?"round":`rectangle${c.value===!0?" q-btn--rounded":e.square===!0?" q-btn--square":""}`;return`q-btn--${f.value} q-btn--${M}`+(q!==void 0?" "+q:"")+(u.value===!0?" q-btn--actionable q-focusable q-hoverable":e.disable===!0?" disabled":"")+(e.fab===!0?" q-btn--fab":e.fabMini===!0?" q-btn--fab-mini":"")+(e.noCaps===!0?" q-btn--no-uppercase":"")+(e.dense===!0?" q-btn--dense":"")+(e.stretch===!0?" no-border-radius self-stretch":"")+(e.glossy===!0?" glossy":"")+(e.square?" q-btn--square":"")}),T=R(()=>n.value+(e.stack===!0?" column":" row")+(e.noWrap===!0?" no-wrap text-no-wrap":"")+(e.loading===!0?" q-btn__content--hidden":""));return{classes:y,style:a,innerClasses:T,attributes:p,hasLink:r,linkTag:i,navigateOnClick:l,isActionable:u}}const{passiveCapture:He}=Be;let Jt=null,Xt=null,Gt=null;var Br=$e({name:"QBtn",props:{...Zh,percentage:Number,darkPercentage:Boolean,onTouchstart:[Function,Array]},emits:["click","keydown","mousedown","keyup"],setup(e,{slots:t,emit:n}){const{proxy:o}=ke(),{classes:r,style:i,innerClasses:s,attributes:l,hasLink:a,linkTag:c,navigateOnClick:u,isActionable:d}=Jh(e),f=he(null),p=he(null);let y=null,T,q=null;const M=R(()=>e.label!==void 0&&e.label!==null&&e.label!==""),m=R(()=>e.disable===!0||e.ripple===!1?!1:{keyCodes:a.value===!0?[13,32]:[13],...e.ripple===!0?{}:e.ripple}),_=R(()=>({center:e.round})),w=R(()=>{const k=Math.max(0,Math.min(100,e.percentage));return k>0?{transition:"transform 0.6s",transform:`translateX(${k-100}%)`}:{}}),F=R(()=>{if(e.loading===!0)return{onMousedown:H,onTouchstart:H,onClick:H,onKeydown:H,onKeyup:H};if(d.value===!0){const k={onClick:V,onKeydown:N,onMousedown:x};if(o.$q.platform.has.touch===!0){const Z=e.onTouchstart!==void 0?"":"Passive";k[`onTouchstart${Z}`]=C}return k}return{onClick:Ke}}),j=R(()=>({ref:f,class:"q-btn q-btn-item non-selectable no-outline "+r.value,style:i.value,...l.value,...F.value}));function V(k){if(f.value!==null){if(k!==void 0){if(k.defaultPrevented===!0)return;const Z=document.activeElement;if(e.type==="submit"&&Z!==document.body&&f.value.contains(Z)===!1&&Z.contains(f.value)===!1){f.value.focus();const Y=()=>{document.removeEventListener("keydown",Ke,!0),document.removeEventListener("keyup",Y,He),f.value!==null&&f.value.removeEventListener("blur",Y,He)};document.addEventListener("keydown",Ke,!0),document.addEventListener("keyup",Y,He),f.value.addEventListener("blur",Y,He)}}u(k)}}function N(k){f.value!==null&&(n("keydown",k),zn(k,[13,32])===!0&&Xt!==f.value&&(Xt!==null&&v(),k.defaultPrevented!==!0&&(f.value.focus(),Xt=f.value,f.value.classList.add("q-btn--active"),document.addEventListener("keyup",$,!0),f.value.addEventListener("blur",$,He)),Ke(k)))}function C(k){f.value!==null&&(n("touchstart",k),k.defaultPrevented!==!0&&(Jt!==f.value&&(Jt!==null&&v(),Jt=f.value,y=k.target,y.addEventListener("touchcancel",$,He),y.addEventListener("touchend",$,He)),T=!0,q!==null&&clearTimeout(q),q=setTimeout(()=>{q=null,T=!1},200)))}function x(k){f.value!==null&&(k.qSkipRipple=T===!0,n("mousedown",k),k.defaultPrevented!==!0&&Gt!==f.value&&(Gt!==null&&v(),Gt=f.value,f.value.classList.add("q-btn--active"),document.addEventListener("mouseup",$,He)))}function $(k){if(f.value!==null&&!(k!==void 0&&k.type==="blur"&&document.activeElement===f.value)){if(k!==void 0&&k.type==="keyup"){if(Xt===f.value&&zn(k,[13,32])===!0){const Z=new MouseEvent("click",k);Z.qKeyEvent=!0,k.defaultPrevented===!0&&Et(Z),k.cancelBubble===!0&&ko(Z),f.value.dispatchEvent(Z),Ke(k),k.qKeyEvent=!0}n("keyup",k)}v()}}function v(k){const Z=p.value;k!==!0&&(Jt===f.value||Gt===f.value)&&Z!==null&&Z!==document.activeElement&&(Z.setAttribute("tabindex",-1),Z.focus()),Jt===f.value&&(y!==null&&(y.removeEventListener("touchcancel",$,He),y.removeEventListener("touchend",$,He)),Jt=y=null),Gt===f.value&&(document.removeEventListener("mouseup",$,He),Gt=null),Xt===f.value&&(document.removeEventListener("keyup",$,!0),f.value!==null&&f.value.removeEventListener("blur",$,He),Xt=null),f.value!==null&&f.value.classList.remove("q-btn--active")}function H(k){Ke(k),k.qSkipRipple=!0}return We(()=>{v(!0)}),Object.assign(o,{click:V}),()=>{let k=[];e.icon!==void 0&&k.push(E(pt,{name:e.icon,left:e.stack===!1&&M.value===!0,role:"img","aria-hidden":"true"})),M.value===!0&&k.push(E("span",{class:"block"},[e.label])),k=It(t.default,k),e.iconRight!==void 0&&e.round===!1&&k.push(E(pt,{name:e.iconRight,right:e.stack===!1&&M.value===!0,role:"img","aria-hidden":"true"}));const Z=[E("span",{class:"q-focus-helper",ref:p})];return e.loading===!0&&e.percentage!==void 0&&Z.push(E("span",{class:"q-btn__progress absolute-full overflow-hidden"+(e.darkPercentage===!0?" q-btn__progress--dark":"")},[E("span",{class:"q-btn__progress-indicator fit block",style:w.value})])),Z.push(E("span",{class:"q-btn__content text-center col items-center q-anchor--skip "+s.value},k)),e.loading!==null&&Z.push(E(cn,{name:"q-transition--fade"},()=>e.loading===!0?[E("span",{key:"loading",class:"absolute-full flex flex-center"},t.loading!==void 0?t.loading():[E(Un)])]:null)),Al(E(c.value,j.value,Z),[[Nh,m.value,void 0,_.value]])}}});let Xh=1,Gh=document.body;function hi(e,t){const n=document.createElement("div");if(n.id=t!==void 0?`q-portal--${t}--${Xh++}`:e,So.globalNodes!==void 0){const o=So.globalNodes.class;o!==void 0&&(n.className=o)}return Gh.appendChild(n),n}function Fa(e){e.remove()}let eg=0;const mo={},po={},Je={},Ia={},tg=/^\s*$/,Na=[],gi=["top-left","top-right","bottom-left","bottom-right","top","bottom","left","right","center"],ng=["top-left","top-right","bottom-left","bottom-right"],tn={positive:{icon:e=>e.iconSet.type.positive,color:"positive"},negative:{icon:e=>e.iconSet.type.negative,color:"negative"},warning:{icon:e=>e.iconSet.type.warning,color:"warning",textColor:"dark"},info:{icon:e=>e.iconSet.type.info,color:"info"},ongoing:{group:!1,timeout:0,spinner:!0,color:"grey-8"}};function ja(e,t,n){if(!e)return Cn("parameter required");let o;const r={textColor:"white"};if(e.ignoreDefaults!==!0&&Object.assign(r,mo),at(e)===!1&&(r.type&&Object.assign(r,tn[r.type]),e={message:e}),Object.assign(r,tn[e.type||r.type],e),typeof r.icon=="function"&&(r.icon=r.icon(t)),r.spinner?(r.spinner===!0&&(r.spinner=Un),r.spinner=vn(r.spinner)):r.spinner=!1,r.meta={hasMedia:Boolean(r.spinner!==!1||r.icon||r.avatar),hasText:Ls(r.message)||Ls(r.caption)},r.position){if(gi.includes(r.position)===!1)return Cn("wrong position",e)}else r.position="bottom";if(r.timeout===void 0)r.timeout=5e3;else{const a=parseInt(r.timeout,10);if(isNaN(a)||a<0)return Cn("wrong timeout",e);r.timeout=a}r.timeout===0?r.progress=!1:r.progress===!0&&(r.meta.progressClass="q-notification__progress"+(r.progressClass?` ${r.progressClass}`:""),r.meta.progressStyle={animationDuration:`${r.timeout+1e3}ms`});const i=(Array.isArray(e.actions)===!0?e.actions:[]).concat(e.ignoreDefaults!==!0&&Array.isArray(mo.actions)===!0?mo.actions:[]).concat(tn[e.type]!==void 0&&Array.isArray(tn[e.type].actions)===!0?tn[e.type].actions:[]),{closeBtn:s}=r;if(s&&i.push({label:typeof s=="string"?s:t.lang.label.close}),r.actions=i.map(({handler:a,noDismiss:c,...u})=>({flat:!0,...u,onClick:typeof a=="function"?()=>{a(),c!==!0&&l()}:()=>{l()}})),r.multiLine===void 0&&(r.multiLine=r.actions.length>1),Object.assign(r.meta,{class:`q-notification row items-stretch q-notification--${r.multiLine===!0?"multi-line":"standard"}`+(r.color!==void 0?` bg-${r.color}`:"")+(r.textColor!==void 0?` text-${r.textColor}`:"")+(r.classes!==void 0?` ${r.classes}`:""),wrapperClass:"q-notification__wrapper col relative-position border-radius-inherit "+(r.multiLine===!0?"column no-wrap justify-center":"row items-center"),contentClass:"q-notification__content row items-center"+(r.multiLine===!0?"":" col"),leftClass:r.meta.hasText===!0?"additional":"single",attrs:{role:"alert",...r.attrs}}),r.group===!1?(r.group=void 0,r.meta.group=void 0):((r.group===void 0||r.group===!0)&&(r.group=[r.message,r.caption,r.multiline].concat(r.actions.map(a=>`${a.label}*${a.icon}`)).join("|")),r.meta.group=r.group+"|"+r.position),r.actions.length===0?r.actions=void 0:r.meta.actionsClass="q-notification__actions row items-center "+(r.multiLine===!0?"justify-end":"col-auto")+(r.meta.hasMedia===!0?" q-notification__actions--with-media":""),n!==void 0){n.notif.meta.timer&&(clearTimeout(n.notif.meta.timer),n.notif.meta.timer=void 0),r.meta.uid=n.notif.meta.uid;const a=Je[r.position].value.indexOf(n.notif);Je[r.position].value[a]=r}else{const a=po[r.meta.group];if(a===void 0){if(r.meta.uid=eg++,r.meta.badge=1,["left","right","center"].indexOf(r.position)!==-1)Je[r.position].value.splice(Math.floor(Je[r.position].value.length/2),0,r);else{const c=r.position.indexOf("top")>-1?"unshift":"push";Je[r.position].value[c](r)}r.group!==void 0&&(po[r.meta.group]=r)}else{if(a.meta.timer&&(clearTimeout(a.meta.timer),a.meta.timer=void 0),r.badgePosition!==void 0){if(ng.includes(r.badgePosition)===!1)return Cn("wrong badgePosition",e)}else r.badgePosition=`top-${r.position.indexOf("left")>-1?"right":"left"}`;r.meta.uid=a.meta.uid,r.meta.badge=a.meta.badge+1,r.meta.badgeClass=`q-notification__badge q-notification__badge--${r.badgePosition}`+(r.badgeColor!==void 0?` bg-${r.badgeColor}`:"")+(r.badgeTextColor!==void 0?` text-${r.badgeTextColor}`:"")+(r.badgeClass?` ${r.badgeClass}`:"");const c=Je[r.position].value.indexOf(a);Je[r.position].value[c]=po[r.meta.group]=r}}const l=()=>{og(r),o=void 0};if(r.timeout>0&&(r.meta.timer=setTimeout(()=>{r.meta.timer=void 0,l()},r.timeout+1e3)),r.group!==void 0)return a=>{a!==void 0?Cn("trying to update a grouped one which is forbidden",e):l()};if(o={dismiss:l,config:e,notif:r},n!==void 0){Object.assign(n,o);return}return a=>{if(o!==void 0)if(a===void 0)o.dismiss();else{const c=Object.assign({},o.config,a,{group:!1,position:r.position});ja(c,t,o)}}}function og(e){e.meta.timer&&(clearTimeout(e.meta.timer),e.meta.timer=void 0);const t=Je[e.position].value.indexOf(e);if(t!==-1){e.group!==void 0&&delete po[e.meta.group];const n=Na[""+e.meta.uid];if(n){const{width:o,height:r}=getComputedStyle(n);n.style.left=`${n.offsetLeft}px`,n.style.width=o,n.style.height=r}Je[e.position].value.splice(t,1),typeof e.onDismiss=="function"&&e.onDismiss()}}function Ls(e){return e!=null&&tg.test(e)!==!0}function Cn(e,t){return console.error(`Notify: ${e}`,t),!1}function rg(){return $e({name:"QNotifications",devtools:{hide:!0},setup(){return()=>E("div",{class:"q-notifications"},gi.map(e=>E(Tf,{key:e,class:Ia[e],tag:"div",name:`q-notification--${e}`},()=>Je[e].value.map(t=>{const n=t.meta,o=[];if(n.hasMedia===!0&&(t.spinner!==!1?o.push(E(t.spinner,{class:"q-notification__spinner q-notification__spinner--"+n.leftClass,color:t.spinnerColor,size:t.spinnerSize})):t.icon?o.push(E(pt,{class:"q-notification__icon q-notification__icon--"+n.leftClass,name:t.icon,color:t.iconColor,size:t.iconSize,role:"img"})):t.avatar&&o.push(E(Oh,{class:"q-notification__avatar q-notification__avatar--"+n.leftClass},()=>E("img",{src:t.avatar,"aria-hidden":"true"})))),n.hasText===!0){let i;const s={class:"q-notification__message col"};if(t.html===!0)s.innerHTML=t.caption?`
${t.message}
${t.caption}
`:t.message;else{const l=[t.message];i=t.caption?[E("div",l),E("div",{class:"q-notification__caption"},[t.caption])]:l}o.push(E("div",s,i))}const r=[E("div",{class:n.contentClass},o)];return t.progress===!0&&r.push(E("div",{key:`${n.uid}|p|${n.badge}`,class:n.progressClass,style:n.progressStyle})),t.actions!==void 0&&r.push(E("div",{class:n.actionsClass},t.actions.map(i=>E(Br,i)))),n.badge>1&&r.push(E("div",{key:`${n.uid}|${n.badge}`,class:t.meta.badgeClass,style:t.badgeStyle},[n.badge])),E("div",{ref:i=>{Na[""+n.uid]=i},key:n.uid,class:n.class,...n.attrs},[E("div",{class:n.wrapperClass},r)])}))))}})}var ig={setDefaults(e){at(e)===!0&&Object.assign(mo,e)},registerType(e,t){at(t)===!0&&(tn[e]=t)},install({$q:e,parentApp:t}){if(e.notify=this.create=n=>ja(n,e),e.notify.setDefaults=this.setDefaults,e.notify.registerType=this.registerType,e.config.notify!==void 0&&this.setDefaults(e.config.notify),this.__installed!==!0){gi.forEach(o=>{Je[o]=he([]);const r=["left","center","right"].includes(o)===!0?"center":o.indexOf("top")>-1?"top":"bottom",i=o.indexOf("left")>-1?"start":o.indexOf("right")>-1?"end":"center",s=["left","right"].includes(o)?`items-${o==="left"?"start":"end"} justify-center`:o==="center"?"flex-center":`items-${i}`;Ia[o]=`q-notifications__list q-notifications__list--${r} fixed column no-wrap ${s}`});const n=hi("q-notify");ma(rg(),t).mount(n)}}};function sg(e){return ld(e)===!0?"__q_date|"+e.toUTCString():ad(e)===!0?"__q_expr|"+e.source:typeof e=="number"?"__q_numb|"+e:typeof e=="boolean"?"__q_bool|"+(e?"1":"0"):typeof e=="string"?"__q_strn|"+e:typeof e=="function"?"__q_strn|"+e.toString():e===Object(e)?"__q_objt|"+JSON.stringify(e):e}function lg(e){if(e.length<9)return e;const n=e.substring(0,8),o=e.substring(9);switch(n){case"__q_date":return new Date(o);case"__q_expr":return new RegExp(o);case"__q_numb":return Number(o);case"__q_bool":return Boolean(o==="1");case"__q_strn":return""+o;case"__q_objt":return JSON.parse(o);default:return e}}function ag(){const e=()=>null;return{has:()=>!1,getLength:()=>0,getItem:e,getIndex:e,getKey:e,getAll:()=>{},getAllKeys:()=>[],set:Pt,remove:Pt,clear:Pt,isEmpty:()=>!0}}function ug(e){const t=window[e+"Storage"],n=o=>{const r=t.getItem(o);return r?lg(r):null};return{has:o=>t.getItem(o)!==null,getLength:()=>t.length,getItem:n,getIndex:o=>oo{let o;const r={},i=t.length;for(let s=0;s{const o=[],r=t.length;for(let i=0;i{t.setItem(o,sg(r))},remove:o=>{t.removeItem(o)},clear:()=>{t.clear()},isEmpty:()=>t.length===0}}const Va=we.has.webStorage===!1?ag():ug("local"),Da={install({$q:e}){e.localStorage=Va}};Object.assign(Da,Va);function cg(e,t,n){let o;function r(){o!==void 0&&(qr.remove(o),o=void 0)}return We(()=>{e.value===!0&&r()}),{removeFromHistory:r,addToHistory(){o={condition:()=>n.value===!0,handler:t},qr.add(o)}}}function fg(){let e=null;const t=ke();function n(){e!==null&&(clearTimeout(e),e=null)}return Fo(n),We(n),{removeTimeout:n,registerTimeout(o,r){n(),La(t)===!1&&(e=setTimeout(o,r))}}}function dg(){let e;const t=ke();function n(){e=void 0}return Fo(n),We(n),{removeTick:n,registerTick(o){e=o,je(()=>{e===o&&(La(t)===!1&&e(),e=void 0)})}}}const hg={modelValue:{type:Boolean,default:null},"onUpdate:modelValue":[Function,Array]},gg=["beforeShow","show","beforeHide","hide"];function mg({showing:e,canShow:t,hideOnRouteChange:n,handleShow:o,handleHide:r,processOnMount:i}){const s=ke(),{props:l,emit:a,proxy:c}=s;let u;function d(m){e.value===!0?y(m):f(m)}function f(m){if(l.disable===!0||m!==void 0&&m.qAnchorHandled===!0||t!==void 0&&t(m)!==!0)return;const _=l["onUpdate:modelValue"]!==void 0;_===!0&&(a("update:modelValue",!0),u=m,je(()=>{u===m&&(u=void 0)})),(l.modelValue===null||_===!1)&&p(m)}function p(m){e.value!==!0&&(e.value=!0,a("beforeShow",m),o!==void 0?o(m):a("show",m))}function y(m){if(l.disable===!0)return;const _=l["onUpdate:modelValue"]!==void 0;_===!0&&(a("update:modelValue",!1),u=m,je(()=>{u===m&&(u=void 0)})),(l.modelValue===null||_===!1)&&T(m)}function T(m){e.value!==!1&&(e.value=!1,a("beforeHide",m),r!==void 0?r(m):a("hide",m))}function q(m){l.disable===!0&&m===!0?l["onUpdate:modelValue"]!==void 0&&a("update:modelValue",!1):m===!0!==e.value&&(m===!0?p:T)(u)}be(()=>l.modelValue,q),n!==void 0&&$a(s)===!0&&be(()=>c.$route.fullPath,()=>{n.value===!0&&e.value===!0&&y()}),i===!0&&Ut(()=>{q(l.modelValue)});const M={show:f,hide:y,toggle:d};return Object.assign(c,M),M}const pg={transitionShow:{type:String,default:"fade"},transitionHide:{type:String,default:"fade"},transitionDuration:{type:[String,Number],default:300}};function vg(e,t=()=>{},n=()=>{}){return{transitionProps:R(()=>{const o=`q-transition--${e.transitionShow||t()}`,r=`q-transition--${e.transitionHide||n()}`;return{appear:!0,enterFromClass:`${o}-enter-from`,enterActiveClass:`${o}-enter-active`,enterToClass:`${o}-enter-to`,leaveFromClass:`${r}-leave-from`,leaveActiveClass:`${r}-leave-active`,leaveToClass:`${r}-leave-to`}}),transitionStyle:R(()=>`--q-transition-duration: ${e.transitionDuration}ms`)}}let Nt=[],Wn=[];function Ha(e){Wn=Wn.filter(t=>t!==e)}function bg(e){Ha(e),Wn.push(e)}function Bs(e){Ha(e),Wn.length===0&&Nt.length!==0&&(Nt[Nt.length-1](),Nt=[])}function mi(e){Wn.length===0?e():Nt.push(e)}function yg(e){Nt=Nt.filter(t=>t!==e)}const vo=[];function Nm(e){return vo.find(t=>t.contentEl!==null&&t.contentEl.contains(e))}function _g(e,t){do{if(e.$options.name==="QMenu"){if(e.hide(t),e.$props.separateClosePopup===!0)return go(e)}else if(e.__qPortal===!0){const n=go(e);return n!==void 0&&n.$options.name==="QPopupProxy"?(e.hide(t),n):e}e=go(e)}while(e!=null)}function jm(e,t,n){for(;n!==0&&e!==void 0&&e!==null;){if(e.__qPortal===!0){if(n--,e.$options.name==="QMenu"){e=_g(e,t);continue}e.hide(t)}e=go(e)}}function wg(e){for(e=e.parent;e!=null;){if(e.type.name==="QGlobalDialog")return!0;if(e.type.name==="QDialog"||e.type.name==="QMenu")return!1;e=e.parent}return!1}function xg(e,t,n,o){const r=he(!1),i=he(!1);let s=null;const l={},a=o==="dialog"&&wg(e);function c(d){if(d===!0){Bs(l),i.value=!0;return}i.value=!1,r.value===!1&&(a===!1&&s===null&&(s=hi(!1,o)),r.value=!0,vo.push(e.proxy),bg(l))}function u(d){if(i.value=!1,d!==!0)return;Bs(l),r.value=!1;const f=vo.indexOf(e.proxy);f!==-1&&vo.splice(f,1),s!==null&&(Fa(s),s=null)}return ii(()=>{u(!0)}),e.proxy.__qPortal=!0,bn(e.proxy,"contentEl",()=>t.value),{showPortal:c,hidePortal:u,portalIsActive:r,portalIsAccessible:i,renderPortal:()=>a===!0?n():r.value===!0?[E(zc,{to:s},n())]:void 0}}const Cg=[null,document,document.body,document.scrollingElement,document.documentElement];function Vm(e,t){let n=Bh(t);if(n===void 0){if(e==null)return window;n=e.closest(".scroll,.scroll-y,.overflow-auto")}return Cg.includes(n)?window:n}function Dm(e){return(e===window?document.body:e).scrollHeight}function za(e){return e===window?window.pageYOffset||window.scrollY||document.body.scrollTop||0:e.scrollTop}function Ka(e){return e===window?window.pageXOffset||window.scrollX||document.body.scrollLeft||0:e.scrollLeft}function Ua(e,t,n=0){const o=arguments[3]===void 0?performance.now():arguments[3],r=za(e);if(n<=0){r!==t&&Fr(e,t);return}requestAnimationFrame(i=>{const s=i-o,l=r+(t-r)/Math.max(s,n)*s;Fr(e,l),l!==t&&Ua(e,t,n-s,i)})}function Wa(e,t,n=0){const o=arguments[3]===void 0?performance.now():arguments[3],r=Ka(e);if(n<=0){r!==t&&Ir(e,t);return}requestAnimationFrame(i=>{const s=i-o,l=r+(t-r)/Math.max(s,n)*s;Ir(e,l),l!==t&&Wa(e,t,n-s,i)})}function Fr(e,t){if(e===window){window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,t);return}e.scrollTop=t}function Ir(e,t){if(e===window){window.scrollTo(t,window.pageYOffset||window.scrollY||document.body.scrollTop||0);return}e.scrollLeft=t}function Hm(e,t,n){if(n){Ua(e,t,n);return}Fr(e,t)}function zm(e,t,n){if(n){Wa(e,t,n);return}Ir(e,t)}let ro;function Km(){if(ro!==void 0)return ro;const e=document.createElement("p"),t=document.createElement("div");Lr(e,{width:"100%",height:"200px"}),Lr(t,{position:"absolute",top:"0px",left:"0px",visibility:"hidden",width:"200px",height:"150px",overflow:"hidden"}),t.appendChild(e),document.body.appendChild(t);const n=e.offsetWidth;t.style.overflow="scroll";let o=e.offsetWidth;return n===o&&(o=t.clientWidth),t.remove(),ro=n-o,ro}function kg(e,t=!0){return!e||e.nodeType!==Node.ELEMENT_NODE?!1:t?e.scrollHeight>e.clientHeight&&(e.classList.contains("scroll")||e.classList.contains("overflow-auto")||["auto","scroll"].includes(window.getComputedStyle(e)["overflow-y"])):e.scrollWidth>e.clientWidth&&(e.classList.contains("scroll")||e.classList.contains("overflow-auto")||["auto","scroll"].includes(window.getComputedStyle(e)["overflow-x"]))}let kn=0,ur,cr,Tn,fr=!1,Fs,Is,Ns,$t=null;function Eg(e){Sg(e)&&Ke(e)}function Sg(e){if(e.target===document.body||e.target.classList.contains("q-layout__backdrop"))return!0;const t=zf(e),n=e.shiftKey&&!e.deltaX,o=!n&&Math.abs(e.deltaX)<=Math.abs(e.deltaY),r=n||o?e.deltaY:e.deltaX;for(let i=0;i0&&s.scrollTop+s.clientHeight===s.scrollHeight:r<0&&s.scrollLeft===0?!0:r>0&&s.scrollLeft+s.clientWidth===s.scrollWidth}return!0}function js(e){e.target===document&&(document.scrollingElement.scrollTop=document.scrollingElement.scrollTop)}function io(e){fr!==!0&&(fr=!0,requestAnimationFrame(()=>{fr=!1;const{height:t}=e.target,{clientHeight:n,scrollTop:o}=document.scrollingElement;(Tn===void 0||t!==window.innerHeight)&&(Tn=n-t,document.scrollingElement.scrollTop=o),o>Tn&&(document.scrollingElement.scrollTop-=Math.ceil((o-Tn)/8))}))}function Vs(e){const t=document.body,n=window.visualViewport!==void 0;if(e==="add"){const{overflowY:o,overflowX:r}=window.getComputedStyle(t);ur=Ka(window),cr=za(window),Fs=t.style.left,Is=t.style.top,Ns=window.location.href,t.style.left=`-${ur}px`,t.style.top=`-${cr}px`,r!=="hidden"&&(r==="scroll"||t.scrollWidth>window.innerWidth)&&t.classList.add("q-body--force-scrollbar-x"),o!=="hidden"&&(o==="scroll"||t.scrollHeight>window.innerHeight)&&t.classList.add("q-body--force-scrollbar-y"),t.classList.add("q-body--prevent-scroll"),document.qScrollPrevented=!0,we.is.ios===!0&&(n===!0?(window.scrollTo(0,0),window.visualViewport.addEventListener("resize",io,Be.passiveCapture),window.visualViewport.addEventListener("scroll",io,Be.passiveCapture),window.scrollTo(0,0)):window.addEventListener("scroll",js,Be.passiveCapture))}we.is.desktop===!0&&we.is.mac===!0&&window[`${e}EventListener`]("wheel",Eg,Be.notPassive),e==="remove"&&(we.is.ios===!0&&(n===!0?(window.visualViewport.removeEventListener("resize",io,Be.passiveCapture),window.visualViewport.removeEventListener("scroll",io,Be.passiveCapture)):window.removeEventListener("scroll",js,Be.passiveCapture)),t.classList.remove("q-body--prevent-scroll"),t.classList.remove("q-body--force-scrollbar-x"),t.classList.remove("q-body--force-scrollbar-y"),document.qScrollPrevented=!1,t.style.left=Fs,t.style.top=Is,window.location.href===Ns&&window.scrollTo(ur,cr),Tn=void 0)}function Rg(e){let t="add";if(e===!0){if(kn++,$t!==null){clearTimeout($t),$t=null;return}if(kn>1)return}else{if(kn===0||(kn--,kn>0))return;if(t="remove",we.is.ios===!0&&we.is.nativeMobile===!0){$t!==null&&clearTimeout($t),$t=setTimeout(()=>{Vs(t),$t=null},100);return}}Vs(t)}function Pg(){let e;return{preventBodyScroll(t){t!==e&&(e!==void 0||t===!0)&&(e=t,Rg(t))}}}const Ht=[];let hn;function Tg(e){hn=e.keyCode===27}function qg(){hn===!0&&(hn=!1)}function Ag(e){hn===!0&&(hn=!1,zn(e,27)===!0&&Ht[Ht.length-1](e))}function Qa(e){window[e]("keydown",Tg),window[e]("blur",qg),window[e]("keyup",Ag),hn=!1}function Mg(e){we.is.desktop===!0&&(Ht.push(e),Ht.length===1&&Qa("addEventListener"))}function Ds(e){const t=Ht.indexOf(e);t>-1&&(Ht.splice(t,1),Ht.length===0&&Qa("removeEventListener"))}const zt=[];function Ya(e){zt[zt.length-1](e)}function Og(e){we.is.desktop===!0&&(zt.push(e),zt.length===1&&document.body.addEventListener("focusin",Ya))}function Hs(e){const t=zt.indexOf(e);t>-1&&(zt.splice(t,1),zt.length===0&&document.body.removeEventListener("focusin",Ya))}let so=0;const $g={standard:"fixed-full flex-center",top:"fixed-top justify-center",bottom:"fixed-bottom justify-center",right:"fixed-right items-center",left:"fixed-left items-center"},zs={standard:["scale","scale"],top:["slide-down","slide-up"],bottom:["slide-up","slide-down"],right:["slide-left","slide-right"],left:["slide-right","slide-left"]};var Lg=$e({name:"QDialog",inheritAttrs:!1,props:{...hg,...pg,transitionShow:String,transitionHide:String,persistent:Boolean,autoClose:Boolean,allowFocusOutside:Boolean,noEscDismiss:Boolean,noBackdropDismiss:Boolean,noRouteDismiss:Boolean,noRefocus:Boolean,noFocus:Boolean,noShake:Boolean,seamless:Boolean,maximized:Boolean,fullWidth:Boolean,fullHeight:Boolean,square:Boolean,position:{type:String,default:"standard",validator:e=>e==="standard"||["top","bottom","left","right"].includes(e)}},emits:[...gg,"shake","click","escapeKey"],setup(e,{slots:t,emit:n,attrs:o}){const r=ke(),i=he(null),s=he(!1),l=he(!1);let a=null,c=null,u,d;const f=R(()=>e.persistent!==!0&&e.noRouteDismiss!==!0&&e.seamless!==!0),{preventBodyScroll:p}=Pg(),{registerTimeout:y}=fg(),{registerTick:T,removeTick:q}=dg(),{transitionProps:M,transitionStyle:m}=vg(e,()=>zs[e.position][0],()=>zs[e.position][1]),{showPortal:_,hidePortal:w,portalIsAccessible:F,renderPortal:j}=xg(r,i,Re,"dialog"),{hide:V}=mg({showing:s,hideOnRouteChange:f,handleShow:k,handleHide:Z,processOnMount:!0}),{addToHistory:N,removeFromHistory:C}=cg(s,V,f),x=R(()=>`q-dialog__inner flex no-pointer-events q-dialog__inner--${e.maximized===!0?"maximized":"minimized"} q-dialog__inner--${e.position} ${$g[e.position]}`+(l.value===!0?" q-dialog__inner--animating":"")+(e.fullWidth===!0?" q-dialog__inner--fullwidth":"")+(e.fullHeight===!0?" q-dialog__inner--fullheight":"")+(e.square===!0?" q-dialog__inner--square":"")),$=R(()=>s.value===!0&&e.seamless!==!0),v=R(()=>e.autoClose===!0?{onClick:fe}:{}),H=R(()=>[`q-dialog fullscreen no-pointer-events q-dialog--${$.value===!0?"modal":"seamless"}`,o.class]);be(()=>e.maximized,oe=>{s.value===!0&&se(oe)}),be($,oe=>{p(oe),oe===!0?(Og(ue),Mg(W)):(Hs(ue),Ds(W))});function k(oe){N(),c=e.noRefocus===!1&&document.activeElement!==null?document.activeElement:null,se(e.maximized),_(),l.value=!0,e.noFocus!==!0?(document.activeElement!==null&&document.activeElement.blur(),T(Y)):q(),y(()=>{if(r.proxy.$q.platform.is.ios===!0){if(e.seamless!==!0&&document.activeElement){const{top:ne,bottom:S}=document.activeElement.getBoundingClientRect(),{innerHeight:Q}=window,z=window.visualViewport!==void 0?window.visualViewport.height:Q;ne>0&&S>z/2&&(document.scrollingElement.scrollTop=Math.min(document.scrollingElement.scrollHeight-z,S>=Q?1/0:Math.ceil(document.scrollingElement.scrollTop+S-z/2))),document.activeElement.scrollIntoView()}d=!0,i.value.click(),d=!1}_(!0),l.value=!1,n("show",oe)},e.transitionDuration)}function Z(oe){q(),C(),_e(!0),l.value=!0,w(),c!==null&&(((oe&&oe.type.indexOf("key")===0?c.closest('[tabindex]:not([tabindex^="-"])'):void 0)||c).focus(),c=null),y(()=>{w(!0),l.value=!1,n("hide",oe)},e.transitionDuration)}function Y(oe){mi(()=>{let ne=i.value;ne===null||ne.contains(document.activeElement)===!0||(ne=(oe!==""?ne.querySelector(oe):null)||ne.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||ne.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||ne.querySelector("[autofocus], [data-autofocus]")||ne,ne.focus({preventScroll:!0}))})}function A(oe){oe&&typeof oe.focus=="function"?oe.focus({preventScroll:!0}):Y(),n("shake");const ne=i.value;ne!==null&&(ne.classList.remove("q-animate--scale"),ne.classList.add("q-animate--scale"),a!==null&&clearTimeout(a),a=setTimeout(()=>{a=null,i.value!==null&&(ne.classList.remove("q-animate--scale"),Y())},170))}function W(){e.seamless!==!0&&(e.persistent===!0||e.noEscDismiss===!0?e.maximized!==!0&&e.noShake!==!0&&A():(n("escapeKey"),V()))}function _e(oe){a!==null&&(clearTimeout(a),a=null),(oe===!0||s.value===!0)&&(se(!1),e.seamless!==!0&&(p(!1),Hs(ue),Ds(W))),oe!==!0&&(c=null)}function se(oe){oe===!0?u!==!0&&(so<1&&document.body.classList.add("q-body--dialog"),so++,u=!0):u===!0&&(so<2&&document.body.classList.remove("q-body--dialog"),so--,u=!1)}function fe(oe){d!==!0&&(V(oe),n("click",oe))}function L(oe){e.persistent!==!0&&e.noBackdropDismiss!==!0?V(oe):e.noShake!==!0&&A()}function ue(oe){e.allowFocusOutside!==!0&&F.value===!0&&Fh(i.value,oe.target)!==!0&&Y('[tabindex]:not([tabindex="-1"])')}Object.assign(r.proxy,{focus:Y,shake:A,__updateRefocusTarget(oe){c=oe||null}}),We(_e);function Re(){return E("div",{role:"dialog","aria-modal":$.value===!0?"true":"false",...o,class:H.value},[E(cn,{name:"q-transition--fade",appear:!0},()=>$.value===!0?E("div",{class:"q-dialog__backdrop fixed-full",style:m.value,"aria-hidden":"true",tabindex:-1,onClick:L}):null),E(cn,M.value,()=>s.value===!0?E("div",{ref:i,class:x.value,style:m.value,tabindex:-1,...v.value},tt(t.default)):null)])}return j}});const Wt={dark:{type:Boolean,default:null}};function Qt(e,t){return R(()=>e.dark===null?t.dark.isActive:e.dark)}var Bg=$e({name:"QCard",props:{...Wt,tag:{type:String,default:"div"},square:Boolean,flat:Boolean,bordered:Boolean},setup(e,{slots:t}){const{proxy:{$q:n}}=ke(),o=Qt(e,n),r=R(()=>"q-card"+(o.value===!0?" q-card--dark q-dark":"")+(e.bordered===!0?" q-card--bordered":"")+(e.square===!0?" q-card--square no-border-radius":"")+(e.flat===!0?" q-card--flat no-shadow":""));return()=>E(e.tag,{class:r.value},tt(t.default))}}),En=$e({name:"QCardSection",props:{tag:{type:String,default:"div"},horizontal:Boolean},setup(e,{slots:t}){const n=R(()=>`q-card__section q-card__section--${e.horizontal===!0?"horiz row no-wrap":"vert"}`);return()=>E(e.tag,{class:n.value},tt(t.default))}}),Fg=$e({name:"QCardActions",props:{...Aa,vertical:Boolean},setup(e,{slots:t}){const n=Ma(e),o=R(()=>`q-card__actions ${n.value} q-card__actions--${e.vertical===!0?"vert column":"horiz row"}`);return()=>E("div",{class:o.value},tt(t.default))}});const Ig={true:"inset",item:"item-inset","item-thumbnail":"item-thumbnail-inset"},dr={xs:2,sm:4,md:8,lg:16,xl:24};var Ks=$e({name:"QSeparator",props:{...Wt,spaced:[Boolean,String],inset:[Boolean,String],vertical:Boolean,color:String,size:String},setup(e){const t=ke(),n=Qt(e,t.proxy.$q),o=R(()=>e.vertical===!0?"vertical":"horizontal"),r=R(()=>` q-separator--${o.value}`),i=R(()=>e.inset!==!1?`${r.value}-${Ig[e.inset]}`:""),s=R(()=>`q-separator${r.value}${i.value}`+(e.color!==void 0?` bg-${e.color}`:"")+(n.value===!0?" q-separator--dark":"")),l=R(()=>{const a={};if(e.size!==void 0&&(a[e.vertical===!0?"width":"height"]=e.size),e.spaced!==!1){const c=e.spaced===!0?`${dr.md}px`:e.spaced in dr?`${dr[e.spaced]}px`:e.spaced,u=e.vertical===!0?["Left","Right"]:["Top","Bottom"];a[`margin${u[0]}`]=a[`margin${u[1]}`]=c}return a});return()=>E("hr",{class:s.value,style:l.value,"aria-orientation":o.value})}});function Ng({validate:e,resetValidation:t,requiresQForm:n}){const o=ut(id,!1);if(o!==!1){const{props:r,proxy:i}=ke();Object.assign(i,{validate:e,resetValidation:t}),be(()=>r.disable,s=>{s===!0?(typeof t=="function"&&t(),o.unbindComponent(i)):o.bindComponent(i)}),Ut(()=>{r.disable!==!0&&o.bindComponent(i)}),We(()=>{r.disable!==!0&&o.unbindComponent(i)})}else n===!0&&console.error("Parent QForm not found on useFormChild()!")}const Us=/^#[0-9a-fA-F]{3}([0-9a-fA-F]{3})?$/,Ws=/^#[0-9a-fA-F]{4}([0-9a-fA-F]{4})?$/,Qs=/^#([0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/,lo=/^rgb\(((0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),){2}(0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5])\)$/,ao=/^rgba\(((0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),){2}(0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),(0|0\.[0-9]+[1-9]|0\.[1-9]+|1)\)$/,hr={date:e=>/^-?[\d]+\/[0-1]\d\/[0-3]\d$/.test(e),time:e=>/^([0-1]?\d|2[0-3]):[0-5]\d$/.test(e),fulltime:e=>/^([0-1]?\d|2[0-3]):[0-5]\d:[0-5]\d$/.test(e),timeOrFulltime:e=>/^([0-1]?\d|2[0-3]):[0-5]\d(:[0-5]\d)?$/.test(e),email:e=>/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e),hexColor:e=>Us.test(e),hexaColor:e=>Ws.test(e),hexOrHexaColor:e=>Qs.test(e),rgbColor:e=>lo.test(e),rgbaColor:e=>ao.test(e),rgbOrRgbaColor:e=>lo.test(e)||ao.test(e),hexOrRgbColor:e=>Us.test(e)||lo.test(e),hexaOrRgbaColor:e=>Ws.test(e)||ao.test(e),anyColor:e=>Qs.test(e)||lo.test(e)||ao.test(e)},jg=[!0,!1,"ondemand"],Vg={modelValue:{},error:{type:Boolean,default:null},errorMessage:String,noErrorIcon:Boolean,rules:Array,reactiveRules:Boolean,lazyRules:{type:[Boolean,String],validator:e=>jg.includes(e)}};function Dg(e,t){const{props:n,proxy:o}=ke(),r=he(!1),i=he(null),s=he(null);Ng({validate:y,resetValidation:p});let l=0,a;const c=R(()=>n.rules!==void 0&&n.rules!==null&&n.rules.length!==0),u=R(()=>n.disable!==!0&&c.value===!0),d=R(()=>n.error===!0||r.value===!0),f=R(()=>typeof n.errorMessage=="string"&&n.errorMessage.length!==0?n.errorMessage:i.value);be(()=>n.modelValue,()=>{T()}),be(()=>n.reactiveRules,M=>{M===!0?a===void 0&&(a=be(()=>n.rules,()=>{T(!0)})):a!==void 0&&(a(),a=void 0)},{immediate:!0}),be(e,M=>{M===!0?s.value===null&&(s.value=!1):s.value===!1&&(s.value=!0,u.value===!0&&n.lazyRules!=="ondemand"&&t.value===!1&&q())});function p(){l++,t.value=!1,s.value=null,r.value=!1,i.value=null,q.cancel()}function y(M=n.modelValue){if(u.value!==!0)return!0;const m=++l,_=t.value!==!0?()=>{s.value=!0}:()=>{},w=(j,V)=>{j===!0&&_(),r.value=j,i.value=V||null,t.value=!1},F=[];for(let j=0;j{if(j===void 0||Array.isArray(j)===!1||j.length===0)return m===l&&w(!1),!0;const V=j.find(N=>N===!1||typeof N=="string");return m===l&&w(V!==void 0,V),V===void 0},j=>(m===l&&(console.error(j),w(!0)),!1)))}function T(M){u.value===!0&&n.lazyRules!=="ondemand"&&(s.value===!0||n.lazyRules!==!0&&M!==!0)&&q()}const q=ua(y,0);return We(()=>{a!==void 0&&a(),q.cancel()}),Object.assign(o,{resetValidation:p,validate:y}),bn(o,"hasError",()=>d.value),{isDirtyModel:s,hasRules:c,hasError:d,errorMessage:f,validate:y,resetValidation:p}}const Ys=/^on[A-Z]/;function Hg(e,t){const n={listeners:he({}),attributes:he({})};function o(){const r={},i={};for(const s in e)s!=="class"&&s!=="style"&&Ys.test(s)===!1&&(r[s]=e[s]);for(const s in t.props)Ys.test(s)===!0&&(i[s]=t.props[s]);n.attributes.value=r,n.listeners.value=i}return Fl(o),o(),n}let gr,uo=0;const Te=new Array(256);for(let e=0;e<256;e++)Te[e]=(e+256).toString(16).substring(1);const zg=(()=>{const e=typeof crypto!="undefined"?crypto:typeof window!="undefined"?window.crypto||window.msCrypto:void 0;if(e!==void 0){if(e.randomBytes!==void 0)return e.randomBytes;if(e.getRandomValues!==void 0)return t=>{const n=new Uint8Array(t);return e.getRandomValues(n),n}}return t=>{const n=[];for(let o=t;o>0;o--)n.push(Math.floor(Math.random()*256));return n}})(),Zs=4096;function Kg(){(gr===void 0||uo+16>Zs)&&(uo=0,gr=zg(Zs));const e=Array.prototype.slice.call(gr,uo,uo+=16);return e[6]=e[6]&15|64,e[8]=e[8]&63|128,Te[e[0]]+Te[e[1]]+Te[e[2]]+Te[e[3]]+"-"+Te[e[4]]+Te[e[5]]+"-"+Te[e[6]]+Te[e[7]]+"-"+Te[e[8]]+Te[e[9]]+"-"+Te[e[10]]+Te[e[11]]+Te[e[12]]+Te[e[13]]+Te[e[14]]+Te[e[15]]}function Nr(e){return e===void 0?`f_${Kg()}`:e}function jr(e){return e!=null&&(""+e).length!==0}const Ug={...Wt,...Vg,label:String,stackLabel:Boolean,hint:String,hideHint:Boolean,prefix:String,suffix:String,labelColor:String,color:String,bgColor:String,filled:Boolean,outlined:Boolean,borderless:Boolean,standout:[Boolean,String],square:Boolean,loading:Boolean,labelSlot:Boolean,bottomSlots:Boolean,hideBottomSpace:Boolean,rounded:Boolean,dense:Boolean,itemAligned:Boolean,counter:Boolean,clearable:Boolean,clearIcon:String,disable:Boolean,readonly:Boolean,autofocus:Boolean,for:String,maxlength:[Number,String]},Wg=["update:modelValue","clear","focus","blur","popupShow","popupHide"];function Qg(){const{props:e,attrs:t,proxy:n,vnode:o}=ke();return{isDark:Qt(e,n.$q),editable:R(()=>e.disable!==!0&&e.readonly!==!0),innerLoading:he(!1),focused:he(!1),hasPopupOpen:!1,splitAttrs:Hg(t,o),targetUid:he(Nr(e.for)),rootRef:he(null),targetRef:he(null),controlRef:he(null)}}function Yg(e){const{props:t,emit:n,slots:o,attrs:r,proxy:i}=ke(),{$q:s}=i;let l=null;e.hasValue===void 0&&(e.hasValue=R(()=>jr(t.modelValue))),e.emitValue===void 0&&(e.emitValue=A=>{n("update:modelValue",A)}),e.controlEvents===void 0&&(e.controlEvents={onFocusin:C,onFocusout:x}),Object.assign(e,{clearValue:$,onControlFocusin:C,onControlFocusout:x,focus:V}),e.computedCounter===void 0&&(e.computedCounter=R(()=>{if(t.counter!==!1){const A=typeof t.modelValue=="string"||typeof t.modelValue=="number"?(""+t.modelValue).length:Array.isArray(t.modelValue)===!0?t.modelValue.length:0,W=t.maxlength!==void 0?t.maxlength:t.maxValues;return A+(W!==void 0?" / "+W:"")}}));const{isDirtyModel:a,hasRules:c,hasError:u,errorMessage:d,resetValidation:f}=Dg(e.focused,e.innerLoading),p=e.floatingLabel!==void 0?R(()=>t.stackLabel===!0||e.focused.value===!0||e.floatingLabel.value===!0):R(()=>t.stackLabel===!0||e.focused.value===!0||e.hasValue.value===!0),y=R(()=>t.bottomSlots===!0||t.hint!==void 0||c.value===!0||t.counter===!0||t.error!==null),T=R(()=>t.filled===!0?"filled":t.outlined===!0?"outlined":t.borderless===!0?"borderless":t.standout?"standout":"standard"),q=R(()=>`q-field row no-wrap items-start q-field--${T.value}`+(e.fieldClass!==void 0?` ${e.fieldClass.value}`:"")+(t.rounded===!0?" q-field--rounded":"")+(t.square===!0?" q-field--square":"")+(p.value===!0?" q-field--float":"")+(m.value===!0?" q-field--labeled":"")+(t.dense===!0?" q-field--dense":"")+(t.itemAligned===!0?" q-field--item-aligned q-item-type":"")+(e.isDark.value===!0?" q-field--dark":"")+(e.getControl===void 0?" q-field--auto-height":"")+(e.focused.value===!0?" q-field--focused":"")+(u.value===!0?" q-field--error":"")+(u.value===!0||e.focused.value===!0?" q-field--highlighted":"")+(t.hideBottomSpace!==!0&&y.value===!0?" q-field--with-bottom":"")+(t.disable===!0?" q-field--disabled":t.readonly===!0?" q-field--readonly":"")),M=R(()=>"q-field__control relative-position row no-wrap"+(t.bgColor!==void 0?` bg-${t.bgColor}`:"")+(u.value===!0?" text-negative":typeof t.standout=="string"&&t.standout.length!==0&&e.focused.value===!0?` ${t.standout}`:t.color!==void 0?` text-${t.color}`:"")),m=R(()=>t.labelSlot===!0||t.label!==void 0),_=R(()=>"q-field__label no-pointer-events absolute ellipsis"+(t.labelColor!==void 0&&u.value!==!0?` text-${t.labelColor}`:"")),w=R(()=>({id:e.targetUid.value,editable:e.editable.value,focused:e.focused.value,floatingLabel:p.value,modelValue:t.modelValue,emitValue:e.emitValue})),F=R(()=>{const A={for:e.targetUid.value};return t.disable===!0?A["aria-disabled"]="true":t.readonly===!0&&(A["aria-readonly"]="true"),A});be(()=>t.for,A=>{e.targetUid.value=Nr(A)});function j(){const A=document.activeElement;let W=e.targetRef!==void 0&&e.targetRef.value;W&&(A===null||A.id!==e.targetUid.value)&&(W.hasAttribute("tabindex")===!0||(W=W.querySelector("[tabindex]")),W&&W!==A&&W.focus({preventScroll:!0}))}function V(){mi(j)}function N(){yg(j);const A=document.activeElement;A!==null&&e.rootRef.value.contains(A)&&A.blur()}function C(A){l!==null&&(clearTimeout(l),l=null),e.editable.value===!0&&e.focused.value===!1&&(e.focused.value=!0,n("focus",A))}function x(A,W){l!==null&&clearTimeout(l),l=setTimeout(()=>{l=null,!(document.hasFocus()===!0&&(e.hasPopupOpen===!0||e.controlRef===void 0||e.controlRef.value===null||e.controlRef.value.contains(document.activeElement)!==!1))&&(e.focused.value===!0&&(e.focused.value=!1,n("blur",A)),W!==void 0&&W())})}function $(A){Ke(A),s.platform.is.mobile!==!0?(e.targetRef!==void 0&&e.targetRef.value||e.rootRef.value).focus():e.rootRef.value.contains(document.activeElement)===!0&&document.activeElement.blur(),t.type==="file"&&(e.inputRef.value.value=null),n("update:modelValue",null),n("clear",t.modelValue),je(()=>{f(),s.platform.is.mobile!==!0&&(a.value=!1)})}function v(){const A=[];return o.prepend!==void 0&&A.push(E("div",{class:"q-field__prepend q-field__marginal row no-wrap items-center",key:"prepend",onClick:Et},o.prepend())),A.push(E("div",{class:"q-field__control-container col relative-position row no-wrap q-anchor--skip"},H())),u.value===!0&&t.noErrorIcon===!1&&A.push(Z("error",[E(pt,{name:s.iconSet.field.error,color:"negative"})])),t.loading===!0||e.innerLoading.value===!0?A.push(Z("inner-loading-append",o.loading!==void 0?o.loading():[E(Un,{color:t.color})])):t.clearable===!0&&e.hasValue.value===!0&&e.editable.value===!0&&A.push(Z("inner-clearable-append",[E(pt,{class:"q-field__focusable-action",tag:"button",name:t.clearIcon||s.iconSet.field.clear,tabindex:0,type:"button","aria-hidden":null,role:null,onClick:$})])),o.append!==void 0&&A.push(E("div",{class:"q-field__append q-field__marginal row no-wrap items-center",key:"append",onClick:Et},o.append())),e.getInnerAppend!==void 0&&A.push(Z("inner-append",e.getInnerAppend())),e.getControlChild!==void 0&&A.push(e.getControlChild()),A}function H(){const A=[];return t.prefix!==void 0&&t.prefix!==null&&A.push(E("div",{class:"q-field__prefix no-pointer-events row items-center"},t.prefix)),e.getShadowControl!==void 0&&e.hasShadow.value===!0&&A.push(e.getShadowControl()),e.getControl!==void 0?A.push(e.getControl()):o.rawControl!==void 0?A.push(o.rawControl()):o.control!==void 0&&A.push(E("div",{ref:e.targetRef,class:"q-field__native row",tabindex:-1,...e.splitAttrs.attributes.value,"data-autofocus":t.autofocus===!0||void 0},o.control(w.value))),m.value===!0&&A.push(E("div",{class:_.value},tt(o.label,t.label))),t.suffix!==void 0&&t.suffix!==null&&A.push(E("div",{class:"q-field__suffix no-pointer-events row items-center"},t.suffix)),A.concat(tt(o.default))}function k(){let A,W;u.value===!0?d.value!==null?(A=[E("div",{role:"alert"},d.value)],W=`q--slot-error-${d.value}`):(A=tt(o.error),W="q--slot-error"):(t.hideHint!==!0||e.focused.value===!0)&&(t.hint!==void 0?(A=[E("div",t.hint)],W=`q--slot-hint-${t.hint}`):(A=tt(o.hint),W="q--slot-hint"));const _e=t.counter===!0||o.counter!==void 0;if(t.hideBottomSpace===!0&&_e===!1&&A===void 0)return;const se=E("div",{key:W,class:"q-field__messages col"},A);return E("div",{class:"q-field__bottom row items-start q-field__bottom--"+(t.hideBottomSpace!==!0?"animated":"stale"),onClick:Et},[t.hideBottomSpace===!0?se:E(cn,{name:"q-transition--field-message"},()=>se),_e===!0?E("div",{class:"q-field__counter"},o.counter!==void 0?o.counter():e.computedCounter.value):null])}function Z(A,W){return W===null?null:E("div",{key:A,class:"q-field__append q-field__marginal row no-wrap items-center q-anchor--skip"},W)}let Y=!1;return Fo(()=>{Y=!0}),Ll(()=>{Y===!0&&t.autofocus===!0&&i.focus()}),Ut(()=>{qt.value===!0&&t.for===void 0&&(e.targetUid.value=Nr()),t.autofocus===!0&&i.focus()}),We(()=>{l!==null&&clearTimeout(l)}),Object.assign(i,{focus:V,blur:N}),function(){const W=e.getControl===void 0&&o.control===void 0?{...e.splitAttrs.attributes.value,"data-autofocus":t.autofocus===!0||void 0,...F.value}:F.value;return E("label",{ref:e.rootRef,class:[q.value,r.class],style:r.style,...W},[o.before!==void 0?E("div",{class:"q-field__before q-field__marginal row no-wrap items-center",onClick:Et},o.before()):null,E("div",{class:"q-field__inner relative-position col self-stretch"},[E("div",{ref:e.controlRef,class:M.value,tabindex:-1,...e.controlEvents},v()),y.value===!0?k():null]),o.after!==void 0?E("div",{class:"q-field__after q-field__marginal row no-wrap items-center",onClick:Et},o.after()):null])}}const Js={date:"####/##/##",datetime:"####/##/## ##:##",time:"##:##",fulltime:"##:##:##",phone:"(###) ### - ####",card:"#### #### #### ####"},Po={"#":{pattern:"[\\d]",negate:"[^\\d]"},S:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]"},N:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]"},A:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]",transform:e=>e.toLocaleUpperCase()},a:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]",transform:e=>e.toLocaleLowerCase()},X:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]",transform:e=>e.toLocaleUpperCase()},x:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]",transform:e=>e.toLocaleLowerCase()}},Za=Object.keys(Po);Za.forEach(e=>{Po[e].regex=new RegExp(Po[e].pattern)});const Zg=new RegExp("\\\\([^.*+?^${}()|([\\]])|([.*+?^${}()|[\\]])|(["+Za.join("")+"])|(.)","g"),Xs=/[.*+?^${}()|[\]\\]/g,Se=String.fromCharCode(1),Jg={mask:String,reverseFillMask:Boolean,fillMask:[Boolean,String],unmaskedValue:Boolean};function Xg(e,t,n,o){let r,i,s,l,a,c;const u=he(null),d=he(p());function f(){return e.autogrow===!0||["textarea","text","search","url","tel","password"].includes(e.type)}be(()=>e.type+e.autogrow,T),be(()=>e.mask,C=>{if(C!==void 0)q(d.value,!0);else{const x=V(d.value);T(),e.modelValue!==x&&t("update:modelValue",x)}}),be(()=>e.fillMask+e.reverseFillMask,()=>{u.value===!0&&q(d.value,!0)}),be(()=>e.unmaskedValue,()=>{u.value===!0&&q(d.value)});function p(){if(T(),u.value===!0){const C=F(V(e.modelValue));return e.fillMask!==!1?N(C):C}return e.modelValue}function y(C){if(C-1){for(let H=C-$.length;H>0;H--)x+=Se;$=$.slice(0,v)+x+$.slice(v)}return $}function T(){if(u.value=e.mask!==void 0&&e.mask.length!==0&&f(),u.value===!1){l=void 0,r="",i="";return}const C=Js[e.mask]===void 0?e.mask:Js[e.mask],x=typeof e.fillMask=="string"&&e.fillMask.length!==0?e.fillMask.slice(0,1):"_",$=x.replace(Xs,"\\$&"),v=[],H=[],k=[];let Z=e.reverseFillMask===!0,Y="",A="";C.replace(Zg,(fe,L,ue,Re,oe)=>{if(Re!==void 0){const ne=Po[Re];k.push(ne),A=ne.negate,Z===!0&&(H.push("(?:"+A+"+)?("+ne.pattern+"+)?(?:"+A+"+)?("+ne.pattern+"+)?"),Z=!1),H.push("(?:"+A+"+)?("+ne.pattern+")?")}else if(ue!==void 0)Y="\\"+(ue==="\\"?"":ue),k.push(ue),v.push("([^"+Y+"]+)?"+Y+"?");else{const ne=L!==void 0?L:oe;Y=ne==="\\"?"\\\\\\\\":ne.replace(Xs,"\\\\$&"),k.push(ne),v.push("([^"+Y+"]+)?"+Y+"?")}});const W=new RegExp("^"+v.join("")+"("+(Y===""?".":"[^"+Y+"]")+"+)?"+(Y===""?"":"["+Y+"]*")+"$"),_e=H.length-1,se=H.map((fe,L)=>L===0&&e.reverseFillMask===!0?new RegExp("^"+$+"*"+fe):L===_e?new RegExp("^"+fe+"("+(A===""?".":A)+"+)?"+(e.reverseFillMask===!0?"$":$+"*")):new RegExp("^"+fe));s=k,l=fe=>{const L=W.exec(e.reverseFillMask===!0?fe:fe.slice(0,k.length+1));L!==null&&(fe=L.slice(1).join(""));const ue=[],Re=se.length;for(let oe=0,ne=fe;oetypeof fe=="string"?fe:Se).join(""),i=r.split(Se).join(x)}function q(C,x,$){const v=o.value,H=v.selectionEnd,k=v.value.length-H,Z=V(C);x===!0&&T();const Y=F(Z),A=e.fillMask!==!1?N(Y):Y,W=d.value!==A;v.value!==A&&(v.value=A),W===!0&&(d.value=A),document.activeElement===v&&je(()=>{if(A===i){const se=e.reverseFillMask===!0?i.length:0;v.setSelectionRange(se,se,"forward");return}if($==="insertFromPaste"&&e.reverseFillMask!==!0){const se=v.selectionEnd;let fe=H-1;for(let L=a;L<=fe&&L-1){const se=e.reverseFillMask===!0?H===0?A.length>Y.length?1:0:Math.max(0,A.length-(A===i?0:Math.min(Y.length,k)+1))+1:H;v.setSelectionRange(se,se,"forward");return}if(e.reverseFillMask===!0)if(W===!0){const se=Math.max(0,A.length-(A===i?0:Math.min(Y.length,k+1)));se===1&&H===1?v.setSelectionRange(se,se,"forward"):m.rightReverse(v,se)}else{const se=A.length-k;v.setSelectionRange(se,se,"backward")}else if(W===!0){const se=Math.max(0,r.indexOf(Se),Math.min(Y.length,H)-1);m.right(v,se)}else{const se=H-1;m.right(v,se)}});const _e=e.unmaskedValue===!0?V(A):A;String(e.modelValue)!==_e&&n(_e,!0)}function M(C,x,$){const v=F(V(C.value));x=Math.max(0,r.indexOf(Se),Math.min(v.length,x)),a=x,C.setSelectionRange(x,$,"forward")}const m={left(C,x){const $=r.slice(x-1).indexOf(Se)===-1;let v=Math.max(0,x-1);for(;v>=0;v--)if(r[v]===Se){x=v,$===!0&&x++;break}if(v<0&&r[x]!==void 0&&r[x]!==Se)return m.right(C,0);x>=0&&C.setSelectionRange(x,x,"backward")},right(C,x){const $=C.value.length;let v=Math.min($,x+1);for(;v<=$;v++)if(r[v]===Se){x=v;break}else r[v-1]===Se&&(x=v);if(v>$&&r[x-1]!==void 0&&r[x-1]!==Se)return m.left(C,$);C.setSelectionRange(x,x,"forward")},leftReverse(C,x){const $=y(C.value.length);let v=Math.max(0,x-1);for(;v>=0;v--)if($[v-1]===Se){x=v;break}else if($[v]===Se&&(x=v,v===0))break;if(v<0&&$[x]!==void 0&&$[x]!==Se)return m.rightReverse(C,0);x>=0&&C.setSelectionRange(x,x,"backward")},rightReverse(C,x){const $=C.value.length,v=y($),H=v.slice(0,x+1).indexOf(Se)===-1;let k=Math.min($,x+1);for(;k<=$;k++)if(v[k-1]===Se){x=k,x>0&&H===!0&&x--;break}if(k>$&&v[x-1]!==void 0&&v[x-1]!==Se)return m.leftReverse(C,$);C.setSelectionRange(x,x,"forward")}};function _(C){t("click",C),c=void 0}function w(C){if(t("keydown",C),da(C)===!0||C.altKey===!0)return;const x=o.value,$=x.selectionStart,v=x.selectionEnd;if(C.shiftKey||(c=void 0),C.keyCode===37||C.keyCode===39){C.shiftKey&&c===void 0&&(c=x.selectionDirection==="forward"?$:v);const H=m[(C.keyCode===39?"right":"left")+(e.reverseFillMask===!0?"Reverse":"")];if(C.preventDefault(),H(x,c===$?v:$),C.shiftKey){const k=x.selectionStart;x.setSelectionRange(Math.min(c,k),Math.max(c,k),"forward")}}else C.keyCode===8&&e.reverseFillMask!==!0&&$===v?(m.left(x,$),x.setSelectionRange(x.selectionStart,v,"backward")):C.keyCode===46&&e.reverseFillMask===!0&&$===v&&(m.rightReverse(x,v),x.setSelectionRange($,x.selectionEnd,"forward"))}function F(C){if(C==null||C==="")return"";if(e.reverseFillMask===!0)return j(C);const x=s;let $=0,v="";for(let H=0;H=0&&v>-1;k--){const Z=x[k];let Y=C[v];if(typeof Z=="string")H=Z+H,Y===Z&&v--;else if(Y!==void 0&&Z.regex.test(Y))do H=(Z.transform!==void 0?Z.transform(Y):Y)+H,v--,Y=C[v];while($===k&&Y!==void 0&&Z.regex.test(Y));else return H}return H}function V(C){return typeof C!="string"||l===void 0?typeof C=="number"?l(""+C):C:l(C)}function N(C){return i.length-C.length<=0?C:e.reverseFillMask===!0&&C.length!==0?i.slice(0,-C.length)+C:C+i.slice(C.length)}return{innerValue:d,hasMask:u,moveCursorForPaste:M,updateMaskValue:q,onMaskedKeydown:w,onMaskedClick:_}}const pi={name:String};function Ja(e={}){return(t,n,o)=>{t[n](E("input",{class:"hidden"+(o||""),...e.value}))}}function Gg(e){return R(()=>e.name||e.for)}function em(e,t){function n(){const o=e.modelValue;try{const r="DataTransfer"in window?new DataTransfer:"ClipboardEvent"in window?new ClipboardEvent("").clipboardData:void 0;return Object(o)===o&&("length"in o?Array.from(o):[o]).forEach(i=>{r.items.add(i)}),{files:r.files}}catch{return{files:void 0}}}return R(t===!0?()=>{if(e.type==="file")return n()}:n)}const tm=/[\u3000-\u303f\u3040-\u309f\u30a0-\u30ff\uff00-\uff9f\u4e00-\u9faf\u3400-\u4dbf]/,nm=/[\u4e00-\u9fff\u3400-\u4dbf\u{20000}-\u{2a6df}\u{2a700}-\u{2b73f}\u{2b740}-\u{2b81f}\u{2b820}-\u{2ceaf}\uf900-\ufaff\u3300-\u33ff\ufe30-\ufe4f\uf900-\ufaff\u{2f800}-\u{2fa1f}]/u,om=/[\u3131-\u314e\u314f-\u3163\uac00-\ud7a3]/,rm=/[a-z0-9_ -]$/i;function im(e){return function(n){if(n.type==="compositionend"||n.type==="change"){if(n.target.qComposing!==!0)return;n.target.qComposing=!1,e(n)}else n.type==="compositionupdate"&&n.target.qComposing!==!0&&typeof n.data=="string"&&(we.is.firefox===!0?rm.test(n.data)===!1:tm.test(n.data)===!0||nm.test(n.data)===!0||om.test(n.data)===!0)===!0&&(n.target.qComposing=!0)}}var sm=$e({name:"QInput",inheritAttrs:!1,props:{...Ug,...Jg,...pi,modelValue:{required:!1},shadowText:String,type:{type:String,default:"text"},debounce:[String,Number],autogrow:Boolean,inputClass:[Array,String,Object],inputStyle:[Array,String,Object]},emits:[...Wg,"paste","change","keydown","click","animationend"],setup(e,{emit:t,attrs:n}){const{proxy:o}=ke(),{$q:r}=o,i={};let s=NaN,l,a,c=null,u;const d=he(null),f=Gg(e),{innerValue:p,hasMask:y,moveCursorForPaste:T,updateMaskValue:q,onMaskedKeydown:M,onMaskedClick:m}=Xg(e,t,Y,d),_=em(e,!0),w=R(()=>jr(p.value)),F=im(k),j=Qg(),V=R(()=>e.type==="textarea"||e.autogrow===!0),N=R(()=>V.value===!0||["text","search","url","tel","password"].includes(e.type)),C=R(()=>{const L={...j.splitAttrs.listeners.value,onInput:k,onPaste:H,onChange:W,onBlur:_e,onFocus:ko};return L.onCompositionstart=L.onCompositionupdate=L.onCompositionend=F,y.value===!0&&(L.onKeydown=M,L.onClick=m),e.autogrow===!0&&(L.onAnimationend=Z),L}),x=R(()=>{const L={tabindex:0,"data-autofocus":e.autofocus===!0||void 0,rows:e.type==="textarea"?6:void 0,"aria-label":e.label,name:f.value,...j.splitAttrs.attributes.value,id:j.targetUid.value,maxlength:e.maxlength,disabled:e.disable===!0,readonly:e.readonly===!0};return V.value===!1&&(L.type=e.type),e.autogrow===!0&&(L.rows=1),L});be(()=>e.type,()=>{d.value&&(d.value.value=e.modelValue)}),be(()=>e.modelValue,L=>{if(y.value===!0){if(a===!0&&(a=!1,String(L)===s))return;q(L)}else p.value!==L&&(p.value=L,e.type==="number"&&i.hasOwnProperty("value")===!0&&(l===!0?l=!1:delete i.value));e.autogrow===!0&&je(A)}),be(()=>e.autogrow,L=>{L===!0?je(A):d.value!==null&&n.rows>0&&(d.value.style.height="auto")}),be(()=>e.dense,()=>{e.autogrow===!0&&je(A)});function $(){mi(()=>{const L=document.activeElement;d.value!==null&&d.value!==L&&(L===null||L.id!==j.targetUid.value)&&d.value.focus({preventScroll:!0})})}function v(){d.value!==null&&d.value.select()}function H(L){if(y.value===!0&&e.reverseFillMask!==!0){const ue=L.target;T(ue,ue.selectionStart,ue.selectionEnd)}t("paste",L)}function k(L){if(!L||!L.target)return;if(e.type==="file"){t("update:modelValue",L.target.files);return}const ue=L.target.value;if(L.target.qComposing===!0){i.value=ue;return}if(y.value===!0)q(ue,!1,L.inputType);else if(Y(ue),N.value===!0&&L.target===document.activeElement){const{selectionStart:Re,selectionEnd:oe}=L.target;Re!==void 0&&oe!==void 0&&je(()=>{L.target===document.activeElement&&ue.indexOf(L.target.value)===0&&L.target.setSelectionRange(Re,oe)})}e.autogrow===!0&&A()}function Z(L){t("animationend",L),A()}function Y(L,ue){u=()=>{c=null,e.type!=="number"&&i.hasOwnProperty("value")===!0&&delete i.value,e.modelValue!==L&&s!==L&&(s=L,ue===!0&&(a=!0),t("update:modelValue",L),je(()=>{s===L&&(s=NaN)})),u=void 0},e.type==="number"&&(l=!0,i.value=L),e.debounce!==void 0?(c!==null&&clearTimeout(c),i.value=L,c=setTimeout(u,e.debounce)):u()}function A(){requestAnimationFrame(()=>{const L=d.value;if(L!==null){const ue=L.parentNode.style,{scrollTop:Re}=L,{overflowY:oe,maxHeight:ne}=r.platform.is.firefox===!0?{}:window.getComputedStyle(L),S=oe!==void 0&&oe!=="scroll";S===!0&&(L.style.overflowY="hidden"),ue.marginBottom=L.scrollHeight-1+"px",L.style.height="1px",L.style.height=L.scrollHeight+"px",S===!0&&(L.style.overflowY=parseInt(ne,10){d.value!==null&&(d.value.value=p.value!==void 0?p.value:"")})}function se(){return i.hasOwnProperty("value")===!0?i.value:p.value!==void 0?p.value:""}We(()=>{_e()}),Ut(()=>{e.autogrow===!0&&A()}),Object.assign(j,{innerValue:p,fieldClass:R(()=>`q-${V.value===!0?"textarea":"input"}`+(e.autogrow===!0?" q-textarea--autogrow":"")),hasShadow:R(()=>e.type!=="file"&&typeof e.shadowText=="string"&&e.shadowText.length!==0),inputRef:d,emitValue:Y,hasValue:w,floatingLabel:R(()=>w.value===!0&&(e.type!=="number"||isNaN(p.value)===!1)||jr(e.displayValue)),getControl:()=>E(V.value===!0?"textarea":"input",{ref:d,class:["q-field__native q-placeholder",e.inputClass],style:e.inputStyle,...x.value,...C.value,...e.type!=="file"?{value:se()}:_.value}),getShadowControl:()=>E("div",{class:"q-field__native q-field__shadow absolute-bottom no-pointer-events"+(V.value===!0?"":" text-no-wrap")},[E("span",{class:"invisible"},se()),E("span",e.shadowText)])});const fe=Yg(j);return Object.assign(o,{focus:$,select:v,getNativeElement:()=>d.value}),bn(o,"nativeEl",()=>d.value),fe}});function Xa(e,t){const n=he(null),o=R(()=>e.disable===!0?null:E("span",{ref:n,class:"no-outline",tabindex:-1}));function r(i){const s=t.value;i!==void 0&&i.type.indexOf("key")===0?s!==null&&document.activeElement!==s&&s.contains(document.activeElement)===!0&&s.focus():n.value!==null&&(i===void 0||s!==null&&s.contains(i.target)===!0)&&n.value.focus()}return{refocusTargetEl:o,refocusTarget:r}}var Ga={xs:30,sm:35,md:40,lg:50,xl:60};const lm=E("svg",{key:"svg",class:"q-radio__bg absolute non-selectable",viewBox:"0 0 24 24"},[E("path",{d:"M12,22a10,10 0 0 1 -10,-10a10,10 0 0 1 10,-10a10,10 0 0 1 10,10a10,10 0 0 1 -10,10m0,-22a12,12 0 0 0 -12,12a12,12 0 0 0 12,12a12,12 0 0 0 12,-12a12,12 0 0 0 -12,-12"}),E("path",{class:"q-radio__check",d:"M12,6a6,6 0 0 0 -6,6a6,6 0 0 0 6,6a6,6 0 0 0 6,-6a6,6 0 0 0 -6,-6"})]);var am=$e({name:"QRadio",props:{...Wt,...Yn,...pi,modelValue:{required:!0},val:{required:!0},label:String,leftLabel:Boolean,checkedIcon:String,uncheckedIcon:String,color:String,keepColor:Boolean,dense:Boolean,disable:Boolean,tabindex:[String,Number]},emits:["update:modelValue"],setup(e,{slots:t,emit:n}){const{proxy:o}=ke(),r=Qt(e,o.$q),i=Zn(e,Ga),s=he(null),{refocusTargetEl:l,refocusTarget:a}=Xa(e,s),c=R(()=>ie(e.modelValue)===ie(e.val)),u=R(()=>"q-radio cursor-pointer no-outline row inline no-wrap items-center"+(e.disable===!0?" disabled":"")+(r.value===!0?" q-radio--dark":"")+(e.dense===!0?" q-radio--dense":"")+(e.leftLabel===!0?" reverse":"")),d=R(()=>{const _=e.color!==void 0&&(e.keepColor===!0||c.value===!0)?` text-${e.color}`:"";return`q-radio__inner relative-position q-radio__inner--${c.value===!0?"truthy":"falsy"}${_}`}),f=R(()=>(c.value===!0?e.checkedIcon:e.uncheckedIcon)||null),p=R(()=>e.disable===!0?-1:e.tabindex||0),y=R(()=>{const _={type:"radio"};return e.name!==void 0&&Object.assign(_,{".checked":c.value===!0,"^checked":c.value===!0?"checked":void 0,name:e.name,value:e.val}),_}),T=Ja(y);function q(_){_!==void 0&&(Ke(_),a(_)),e.disable!==!0&&c.value!==!0&&n("update:modelValue",e.val,_)}function M(_){(_.keyCode===13||_.keyCode===32)&&Ke(_)}function m(_){(_.keyCode===13||_.keyCode===32)&&q(_)}return Object.assign(o,{set:q}),()=>{const _=f.value!==null?[E("div",{key:"icon",class:"q-radio__icon-container absolute-full flex flex-center no-wrap"},[E(pt,{class:"q-radio__icon",name:f.value})])]:[lm];e.disable!==!0&&T(_,"unshift"," q-radio__native q-ma-none q-pa-none");const w=[E("div",{class:d.value,style:i.value,"aria-hidden":"true"},_)];l.value!==null&&w.push(l.value);const F=e.label!==void 0?It(t.default,[e.label]):tt(t.default);return F!==void 0&&w.push(E("div",{class:"q-radio__label q-anchor--skip"},F)),E("div",{ref:s,class:u.value,tabindex:p.value,role:"radio","aria-label":e.label,"aria-checked":c.value===!0?"true":"false","aria-disabled":e.disable===!0?"true":void 0,onClick:q,onKeydown:M,onKeyup:m},w)}}});const eu={...Wt,...Yn,...pi,modelValue:{required:!0,default:null},val:{},trueValue:{default:!0},falseValue:{default:!1},indeterminateValue:{default:null},checkedIcon:String,uncheckedIcon:String,indeterminateIcon:String,toggleOrder:{type:String,validator:e=>e==="tf"||e==="ft"},toggleIndeterminate:Boolean,label:String,leftLabel:Boolean,color:String,keepColor:Boolean,dense:Boolean,disable:Boolean,tabindex:[String,Number]},tu=["update:modelValue"];function nu(e,t){const{props:n,slots:o,emit:r,proxy:i}=ke(),{$q:s}=i,l=Qt(n,s),a=he(null),{refocusTargetEl:c,refocusTarget:u}=Xa(n,a),d=Zn(n,Ga),f=R(()=>n.val!==void 0&&Array.isArray(n.modelValue)),p=R(()=>{const v=ie(n.val);return f.value===!0?n.modelValue.findIndex(H=>ie(H)===v):-1}),y=R(()=>f.value===!0?p.value>-1:ie(n.modelValue)===ie(n.trueValue)),T=R(()=>f.value===!0?p.value===-1:ie(n.modelValue)===ie(n.falseValue)),q=R(()=>y.value===!1&&T.value===!1),M=R(()=>n.disable===!0?-1:n.tabindex||0),m=R(()=>`q-${e} cursor-pointer no-outline row inline no-wrap items-center`+(n.disable===!0?" disabled":"")+(l.value===!0?` q-${e}--dark`:"")+(n.dense===!0?` q-${e}--dense`:"")+(n.leftLabel===!0?" reverse":"")),_=R(()=>{const v=y.value===!0?"truthy":T.value===!0?"falsy":"indet",H=n.color!==void 0&&(n.keepColor===!0||(e==="toggle"?y.value===!0:T.value!==!0))?` text-${n.color}`:"";return`q-${e}__inner relative-position non-selectable q-${e}__inner--${v}${H}`}),w=R(()=>{const v={type:"checkbox"};return n.name!==void 0&&Object.assign(v,{".checked":y.value,"^checked":y.value===!0?"checked":void 0,name:n.name,value:f.value===!0?n.val:n.trueValue}),v}),F=Ja(w),j=R(()=>{const v={tabindex:M.value,role:e==="toggle"?"switch":"checkbox","aria-label":n.label,"aria-checked":q.value===!0?"mixed":y.value===!0?"true":"false"};return n.disable===!0&&(v["aria-disabled"]="true"),v});function V(v){v!==void 0&&(Ke(v),u(v)),n.disable!==!0&&r("update:modelValue",N(),v)}function N(){if(f.value===!0){if(y.value===!0){const v=n.modelValue.slice();return v.splice(p.value,1),v}return n.modelValue.concat([n.val])}if(y.value===!0){if(n.toggleOrder!=="ft"||n.toggleIndeterminate===!1)return n.falseValue}else if(T.value===!0){if(n.toggleOrder==="ft"||n.toggleIndeterminate===!1)return n.trueValue}else return n.toggleOrder!=="ft"?n.trueValue:n.falseValue;return n.indeterminateValue}function C(v){(v.keyCode===13||v.keyCode===32)&&Ke(v)}function x(v){(v.keyCode===13||v.keyCode===32)&&V(v)}const $=t(y,q);return Object.assign(i,{toggle:V}),()=>{const v=$();n.disable!==!0&&F(v,"unshift",` q-${e}__native absolute q-ma-none q-pa-none`);const H=[E("div",{class:_.value,style:d.value,"aria-hidden":"true"},v)];c.value!==null&&H.push(c.value);const k=n.label!==void 0?It(o.default,[n.label]):tt(o.default);return k!==void 0&&H.push(E("div",{class:`q-${e}__label q-anchor--skip`},k)),E("div",{ref:a,class:m.value,...j.value,onClick:V,onKeydown:C,onKeyup:x},H)}}const um=E("div",{key:"svg",class:"q-checkbox__bg absolute"},[E("svg",{class:"q-checkbox__svg fit absolute-full",viewBox:"0 0 24 24"},[E("path",{class:"q-checkbox__truthy",fill:"none",d:"M1.73,12.91 8.1,19.28 22.79,4.59"}),E("path",{class:"q-checkbox__indet",d:"M4,14H20V10H4"})])]);var cm=$e({name:"QCheckbox",props:eu,emits:tu,setup(e){function t(n,o){const r=R(()=>(n.value===!0?e.checkedIcon:o.value===!0?e.indeterminateIcon:e.uncheckedIcon)||null);return()=>r.value!==null?[E("div",{key:"icon",class:"q-checkbox__icon-container absolute-full flex flex-center no-wrap"},[E(pt,{class:"q-checkbox__icon",name:r.value})])]:[um]}return nu("checkbox",t)}}),fm=$e({name:"QToggle",props:{...eu,icon:String,iconColor:String},emits:tu,setup(e){function t(n,o){const r=R(()=>(n.value===!0?e.checkedIcon:o.value===!0?e.indeterminateIcon:e.uncheckedIcon)||e.icon),i=R(()=>n.value===!0?e.iconColor:null);return()=>[E("div",{class:"q-toggle__track"}),E("div",{class:"q-toggle__thumb absolute flex flex-center no-wrap"},r.value!==void 0?[E(pt,{name:r.value,color:i.value})]:void 0)]}return nu("toggle",t)}});const ou={radio:am,checkbox:cm,toggle:fm},dm=Object.keys(ou);var hm=$e({name:"QOptionGroup",props:{...Wt,modelValue:{required:!0},options:{type:Array,validator:e=>e.every(t=>"value"in t&&"label"in t)},name:String,type:{default:"radio",validator:e=>dm.includes(e)},color:String,keepColor:Boolean,dense:Boolean,size:String,leftLabel:Boolean,inline:Boolean,disable:Boolean},emits:["update:modelValue"],setup(e,{emit:t,slots:n}){const{proxy:{$q:o}}=ke(),r=Array.isArray(e.modelValue);e.type==="radio"?r===!0&&console.error("q-option-group: model should not be array"):r===!1&&console.error("q-option-group: model should be array in your case");const i=Qt(e,o),s=R(()=>ou[e.type]),l=R(()=>"q-option-group q-gutter-x-sm"+(e.inline===!0?" q-option-group--inline":"")),a=R(()=>{const u={role:"group"};return e.type==="radio"&&(u.role="radiogroup",e.disable===!0&&(u["aria-disabled"]="true")),u});function c(u){t("update:modelValue",u)}return()=>E("div",{class:l.value,...a.value},e.options.map((u,d)=>{const f=n["label-"+d]!==void 0?()=>n["label-"+d](u):n.label!==void 0?()=>n.label(u):void 0;return E("div",[E(s.value,{modelValue:e.modelValue,val:u.value,name:u.name===void 0?e.name:u.name,disable:e.disable||u.disable,label:f===void 0?u.label:null,leftLabel:u.leftLabel===void 0?e.leftLabel:u.leftLabel,color:u.color===void 0?e.color:u.color,checkedIcon:u.checkedIcon,uncheckedIcon:u.uncheckedIcon,dark:u.dark||i.value,size:u.size===void 0?e.size:u.size,dense:e.dense,keepColor:u.keepColor===void 0?e.keepColor:u.keepColor,"onUpdate:modelValue":c},f)])}))}}),gm=$e({name:"DialogPlugin",props:{...Wt,title:String,message:String,prompt:Object,options:Object,progress:[Boolean,Object],html:Boolean,ok:{type:[String,Object,Boolean],default:!0},cancel:[String,Object,Boolean],focus:{type:String,default:"ok",validator:e=>["ok","cancel","none"].includes(e)},stackButtons:Boolean,color:String,cardClass:[String,Array,Object],cardStyle:[String,Array,Object]},emits:["ok","hide"],setup(e,{emit:t}){const{proxy:n}=ke(),{$q:o}=n,r=Qt(e,o),i=he(null),s=he(e.prompt!==void 0?e.prompt.model:e.options!==void 0?e.options.model:void 0),l=R(()=>"q-dialog-plugin"+(r.value===!0?" q-dialog-plugin--dark q-dark":"")+(e.progress!==!1?" q-dialog-plugin--progress":"")),a=R(()=>e.color||(r.value===!0?"amber":"primary")),c=R(()=>e.progress===!1?null:at(e.progress)===!0?{component:e.progress.spinner||Un,props:{color:e.progress.color||a.value}}:{component:Un,props:{color:a.value}}),u=R(()=>e.prompt!==void 0||e.options!==void 0),d=R(()=>{if(u.value!==!0)return{};const{model:k,isValid:Z,items:Y,...A}=e.prompt!==void 0?e.prompt:e.options;return A}),f=R(()=>at(e.ok)===!0||e.ok===!0?o.lang.label.ok:e.ok),p=R(()=>at(e.cancel)===!0||e.cancel===!0?o.lang.label.cancel:e.cancel),y=R(()=>e.prompt!==void 0?e.prompt.isValid!==void 0&&e.prompt.isValid(s.value)!==!0:e.options!==void 0?e.options.isValid!==void 0&&e.options.isValid(s.value)!==!0:!1),T=R(()=>({color:a.value,label:f.value,ripple:!1,disable:y.value,...at(e.ok)===!0?e.ok:{flat:!0},"data-autofocus":e.focus==="ok"&&u.value!==!0||void 0,onClick:_})),q=R(()=>({color:a.value,label:p.value,ripple:!1,...at(e.cancel)===!0?e.cancel:{flat:!0},"data-autofocus":e.focus==="cancel"&&u.value!==!0||void 0,onClick:w}));be(()=>e.prompt&&e.prompt.model,j),be(()=>e.options&&e.options.model,j);function M(){i.value.show()}function m(){i.value.hide()}function _(){t("ok",ie(s.value)),m()}function w(){m()}function F(){t("hide")}function j(k){s.value=k}function V(k){y.value!==!0&&e.prompt.type!=="textarea"&&zn(k,13)===!0&&_()}function N(k,Z){return e.html===!0?E(En,{class:k,innerHTML:Z}):E(En,{class:k},()=>Z)}function C(){return[E(sm,{color:a.value,dense:!0,autofocus:!0,dark:r.value,...d.value,modelValue:s.value,"onUpdate:modelValue":j,onKeyup:V})]}function x(){return[E(hm,{color:a.value,options:e.options.items,dark:r.value,...d.value,modelValue:s.value,"onUpdate:modelValue":j})]}function $(){const k=[];return e.cancel&&k.push(E(Br,q.value)),e.ok&&k.push(E(Br,T.value)),E(Fg,{class:e.stackButtons===!0?"items-end":"",vertical:e.stackButtons,align:"right"},()=>k)}function v(){const k=[];return e.title&&k.push(N("q-dialog__title",e.title)),e.progress!==!1&&k.push(E(En,{class:"q-dialog__progress"},()=>E(c.value.component,c.value.props))),e.message&&k.push(N("q-dialog__message",e.message)),e.prompt!==void 0?k.push(E(En,{class:"scroll q-dialog-plugin__form"},C)):e.options!==void 0&&k.push(E(Ks,{dark:r.value}),E(En,{class:"scroll q-dialog-plugin__form"},x),E(Ks,{dark:r.value})),(e.ok||e.cancel)&&k.push($()),k}function H(){return[E(Bg,{class:[l.value,e.cardClass],style:e.cardStyle,dark:r.value},v)]}return Object.assign(n,{show:M,hide:m}),()=>E(Lg,{ref:i,onHide:F},H)}});function ru(e,t){for(const n in t)n!=="spinner"&&Object(t[n])===t[n]?(e[n]=Object(e[n])!==e[n]?{}:{...e[n]},ru(e[n],t[n])):e[n]=t[n]}function mm(e,t,n){return o=>{let r,i;const s=t===!0&&o.component!==void 0;if(s===!0){const{component:m,componentProps:_}=o;r=typeof m=="string"?n.component(m):m,i=_||{}}else{const{class:m,style:_,...w}=o;r=e,i=w,m!==void 0&&(w.cardClass=m),_!==void 0&&(w.cardStyle=_)}let l,a=!1;const c=he(null),u=hi(!1,"dialog"),d=m=>{if(c.value!==null&&c.value[m]!==void 0){c.value[m]();return}const _=l.$.subTree;if(_&&_.component){if(_.component.proxy&&_.component.proxy[m]){_.component.proxy[m]();return}if(_.component.subTree&&_.component.subTree.component&&_.component.subTree.component.proxy&&_.component.subTree.component.proxy[m]){_.component.subTree.component.proxy[m]();return}}console.error("[Quasar] Incorrectly defined Dialog component")},f=[],p=[],y={onOk(m){return f.push(m),y},onCancel(m){return p.push(m),y},onDismiss(m){return f.push(m),p.push(m),y},hide(){return d("hide"),y},update(m){if(l!==null){if(s===!0)Object.assign(i,m);else{const{class:_,style:w,...F}=m;_!==void 0&&(F.cardClass=_),w!==void 0&&(F.cardStyle=w),ru(i,F)}l.$forceUpdate()}return y}},T=m=>{a=!0,f.forEach(_=>{_(m)})},q=()=>{M.unmount(u),Fa(u),M=null,l=null,a!==!0&&p.forEach(m=>{m()})};let M=ma({name:"QGlobalDialog",setup:()=>()=>E(r,{...i,ref:c,onOk:T,onHide:q,onVnodeMounted(...m){typeof i.onVnodeMounted=="function"&&i.onVnodeMounted(...m),je(()=>d("show"))}})},n);return l=M.mount(u),y}}var pm={install({$q:e,parentApp:t}){e.dialog=mm(gm,!0,t),this.__installed!==!0&&(this.create=e.dialog)}},vm={config:{staticPath:""},plugins:{Notify:ig,LocalStorage:Da,Dialog:pm}};async function bm({app:e,router:t}){e.use(t),e.mount("#q-app")}Ch(la,vm).then(bm);export{zn as $,Km as A,pn as B,ii as C,It as D,Lo as E,xc as F,Wl as G,Yl as H,sc as I,Fe as J,kh as K,we as L,Pt as M,Rm as N,Kf as O,Tr as P,Pm as Q,Et as R,ko as S,Hf as T,Uf as U,Ke as V,Vm as W,Be as X,za as Y,Ka as Z,dd as _,Wt as a,cm as a$,vo as a0,pg as a1,dg as a2,vg as a3,xg as a4,cn as a5,Yn as a6,Zn as a7,pt as a8,Eh as a9,jm as aA,rd as aB,Am as aC,da as aD,nr as aE,Ug as aF,Wg as aG,Yg as aH,Qg as aI,pi as aJ,Gg as aK,jr as aL,Fl as aM,ri as aN,im as aO,Lg as aP,_m as aQ,Cm as aR,Oh as aS,Jl as aT,ym as aU,Qc as aV,Xe as aW,En as aX,Ks as aY,km as aZ,sm as a_,Nh as aa,ua as ab,vc as ac,Fo as ad,Ll as ae,$h as af,Lh as ag,Un as ah,zh as ai,Kh as aj,$m as ak,Og as al,Hs as am,Ds as an,_g as ao,Mg as ap,mi as aq,Fh as ar,Zh as as,Kg as at,Im as au,Br as av,Aa as aw,Ma as ax,Fm as ay,Nm as az,gg as b,Em as b0,wm as b1,Bg as b2,zm as b3,Hm as b4,La as b5,id as b6,Fg as b7,hm as b8,Dm as b9,Bm as ba,xm as bb,ml as bc,Sm as bd,$a as be,qr as bf,Om as bg,Wr as bh,Ur as bi,Vt as bj,$e as c,Qt as d,fg as e,Mm as f,R as g,mg as h,ut as i,cg as j,We as k,Tm as l,Al as m,je as n,Ut as o,E as p,Lm as q,he as r,tt as s,ke as t,hg as u,Pg as v,be as w,fo as x,qm as y,qt as z}; + */const en=typeof window!="undefined";function pd(e){return e.__esModule||e[Symbol.toStringTag]==="Module"}const ge=Object.assign;function or(e,t){const n={};for(const o in t){const r=t[o];n[o]=rt(r)?r.map(e):e(r)}return n}const Ln=()=>{},rt=Array.isArray,vd=/\/$/,bd=e=>e.replace(vd,"");function rr(e,t,n="/"){let o,r={},i="",s="";const l=t.indexOf("#");let a=t.indexOf("?");return l=0&&(a=-1),a>-1&&(o=t.slice(0,a),i=t.slice(a+1,l>-1?l:t.length),r=e(i)),l>-1&&(o=o||t.slice(0,l),s=t.slice(l,t.length)),o=xd(o!=null?o:t,n),{fullPath:o+(i&&"?")+i+s,path:o,query:r,hash:s}}function yd(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function us(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function _d(e,t,n){const o=t.matched.length-1,r=n.matched.length-1;return o>-1&&o===r&&fn(t.matched[o],n.matched[r])&&pa(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function fn(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function pa(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!wd(e[n],t[n]))return!1;return!0}function wd(e,t){return rt(e)?cs(e,t):rt(t)?cs(t,e):e===t}function cs(e,t){return rt(t)?e.length===t.length&&e.every((n,o)=>n===t[o]):e.length===1&&e[0]===t}function xd(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),o=e.split("/"),r=o[o.length-1];(r===".."||r===".")&&o.push("");let i=n.length-1,s,l;for(s=0;s1&&i--;else break;return n.slice(0,i).join("/")+"/"+o.slice(s-(s===o.length?1:0)).join("/")}var Kn;(function(e){e.pop="pop",e.push="push"})(Kn||(Kn={}));var Bn;(function(e){e.back="back",e.forward="forward",e.unknown=""})(Bn||(Bn={}));function Cd(e){if(!e)if(en){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),bd(e)}const kd=/^[^#]+#/;function Ed(e,t){return e.replace(kd,"#")+t}function Sd(e,t){const n=document.documentElement.getBoundingClientRect(),o=e.getBoundingClientRect();return{behavior:t.behavior,left:o.left-n.left-(t.left||0),top:o.top-n.top-(t.top||0)}}const zo=()=>({left:window.pageXOffset,top:window.pageYOffset});function Rd(e){let t;if("el"in e){const n=e.el,o=typeof n=="string"&&n.startsWith("#"),r=typeof n=="string"?o?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!r)return;t=Sd(r,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.pageXOffset,t.top!=null?t.top:window.pageYOffset)}function fs(e,t){return(history.state?history.state.position-t:-1)+e}const Ar=new Map;function Pd(e,t){Ar.set(e,t)}function Td(e){const t=Ar.get(e);return Ar.delete(e),t}let qd=()=>location.protocol+"//"+location.host;function va(e,t){const{pathname:n,search:o,hash:r}=t,i=e.indexOf("#");if(i>-1){let l=r.includes(e.slice(i))?e.slice(i).length:1,a=r.slice(l);return a[0]!=="/"&&(a="/"+a),us(a,"")}return us(n,e)+o+r}function Ad(e,t,n,o){let r=[],i=[],s=null;const l=({state:f})=>{const p=va(e,location),y=n.value,T=t.value;let q=0;if(f){if(n.value=p,t.value=f,s&&s===y){s=null;return}q=T?f.position-T.position:0}else o(p);r.forEach(M=>{M(n.value,y,{delta:q,type:Kn.pop,direction:q?q>0?Bn.forward:Bn.back:Bn.unknown})})};function a(){s=n.value}function c(f){r.push(f);const p=()=>{const y=r.indexOf(f);y>-1&&r.splice(y,1)};return i.push(p),p}function u(){const{history:f}=window;!f.state||f.replaceState(ge({},f.state,{scroll:zo()}),"")}function d(){for(const f of i)f();i=[],window.removeEventListener("popstate",l),window.removeEventListener("beforeunload",u)}return window.addEventListener("popstate",l),window.addEventListener("beforeunload",u,{passive:!0}),{pauseListeners:a,listen:c,destroy:d}}function ds(e,t,n,o=!1,r=!1){return{back:e,current:t,forward:n,replaced:o,position:window.history.length,scroll:r?zo():null}}function Md(e){const{history:t,location:n}=window,o={value:va(e,n)},r={value:t.state};r.value||i(o.value,{back:null,current:o.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function i(a,c,u){const d=e.indexOf("#"),f=d>-1?(n.host&&document.querySelector("base")?e:e.slice(d))+a:qd()+e+a;try{t[u?"replaceState":"pushState"](c,"",f),r.value=c}catch(p){console.error(p),n[u?"replace":"assign"](f)}}function s(a,c){const u=ge({},t.state,ds(r.value.back,a,r.value.forward,!0),c,{position:r.value.position});i(a,u,!0),o.value=a}function l(a,c){const u=ge({},r.value,t.state,{forward:a,scroll:zo()});i(u.current,u,!0);const d=ge({},ds(o.value,a,null),{position:u.position+1},c);i(a,d,!1),o.value=a}return{location:o,state:r,push:l,replace:s}}function Od(e){e=Cd(e);const t=Md(e),n=Ad(e,t.state,t.location,t.replace);function o(i,s=!0){s||n.pauseListeners(),history.go(i)}const r=ge({location:"",base:e,go:o,createHref:Ed.bind(null,e)},t,n);return Object.defineProperty(r,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(r,"state",{enumerable:!0,get:()=>t.state.value}),r}function $d(e){return e=location.host?e||location.pathname+location.search:"",e.includes("#")||(e+="#"),Od(e)}function Ld(e){return typeof e=="string"||e&&typeof e=="object"}function ba(e){return typeof e=="string"||typeof e=="symbol"}const _t={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0},ya=Symbol("");var hs;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(hs||(hs={}));function dn(e,t){return ge(new Error,{type:e,[ya]:!0},t)}function ft(e,t){return e instanceof Error&&ya in e&&(t==null||!!(e.type&t))}const gs="[^/]+?",Bd={sensitive:!1,strict:!1,start:!0,end:!0},Fd=/[.+*?^${}()[\]/\\]/g;function Id(e,t){const n=ge({},Bd,t),o=[];let r=n.start?"^":"";const i=[];for(const c of e){const u=c.length?[]:[90];n.strict&&!c.length&&(r+="/");for(let d=0;dt.length?t.length===1&&t[0]===40+40?1:-1:0}function jd(e,t){let n=0;const o=e.score,r=t.score;for(;n0&&t[t.length-1]<0}const Vd={type:0,value:""},Dd=/[a-zA-Z0-9_]/;function Hd(e){if(!e)return[[]];if(e==="/")return[[Vd]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(p){throw new Error(`ERR (${n})/"${c}": ${p}`)}let n=0,o=n;const r=[];let i;function s(){i&&r.push(i),i=[]}let l=0,a,c="",u="";function d(){!c||(n===0?i.push({type:0,value:c}):n===1||n===2||n===3?(i.length>1&&(a==="*"||a==="+")&&t(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),i.push({type:1,value:c,regexp:u,repeatable:a==="*"||a==="+",optional:a==="*"||a==="?"})):t("Invalid state to consume buffer"),c="")}function f(){c+=a}for(;l{s(m)}:Ln}function s(u){if(ba(u)){const d=o.get(u);d&&(o.delete(u),n.splice(n.indexOf(d),1),d.children.forEach(s),d.alias.forEach(s))}else{const d=n.indexOf(u);d>-1&&(n.splice(d,1),u.record.name&&o.delete(u.record.name),u.children.forEach(s),u.alias.forEach(s))}}function l(){return n}function a(u){let d=0;for(;d=0&&(u.record.path!==n[d].record.path||!_a(u,n[d]));)d++;n.splice(d,0,u),u.record.name&&!vs(u)&&o.set(u.record.name,u)}function c(u,d){let f,p={},y,T;if("name"in u&&u.name){if(f=o.get(u.name),!f)throw dn(1,{location:u});T=f.record.name,p=ge(ps(d.params,f.keys.filter(m=>!m.optional).map(m=>m.name)),u.params&&ps(u.params,f.keys.map(m=>m.name))),y=f.stringify(p)}else if("path"in u)y=u.path,f=n.find(m=>m.re.test(y)),f&&(p=f.parse(y),T=f.record.name);else{if(f=d.name?o.get(d.name):n.find(m=>m.re.test(d.path)),!f)throw dn(1,{location:u,currentLocation:d});T=f.record.name,p=ge({},d.params,u.params),y=f.stringify(p)}const q=[];let M=f;for(;M;)q.unshift(M.record),M=M.parent;return{name:T,path:y,params:p,matched:q,meta:Qd(q)}}return e.forEach(u=>i(u)),{addRoute:i,resolve:c,removeRoute:s,getRoutes:l,getRecordMatcher:r}}function ps(e,t){const n={};for(const o of t)o in e&&(n[o]=e[o]);return n}function Ud(e){return{path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:void 0,beforeEnter:e.beforeEnter,props:Wd(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}}}function Wd(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const o in e.components)t[o]=typeof n=="object"?n[o]:n;return t}function vs(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Qd(e){return e.reduce((t,n)=>ge(t,n.meta),{})}function bs(e,t){const n={};for(const o in e)n[o]=o in t?t[o]:e[o];return n}function _a(e,t){return t.children.some(n=>n===e||_a(e,n))}const wa=/#/g,Yd=/&/g,Zd=/\//g,Jd=/=/g,Xd=/\?/g,xa=/\+/g,Gd=/%5B/g,eh=/%5D/g,Ca=/%5E/g,th=/%60/g,ka=/%7B/g,nh=/%7C/g,Ea=/%7D/g,oh=/%20/g;function fi(e){return encodeURI(""+e).replace(nh,"|").replace(Gd,"[").replace(eh,"]")}function rh(e){return fi(e).replace(ka,"{").replace(Ea,"}").replace(Ca,"^")}function Mr(e){return fi(e).replace(xa,"%2B").replace(oh,"+").replace(wa,"%23").replace(Yd,"%26").replace(th,"`").replace(ka,"{").replace(Ea,"}").replace(Ca,"^")}function ih(e){return Mr(e).replace(Jd,"%3D")}function sh(e){return fi(e).replace(wa,"%23").replace(Xd,"%3F")}function lh(e){return e==null?"":sh(e).replace(Zd,"%2F")}function Ro(e){try{return decodeURIComponent(""+e)}catch{}return""+e}function ah(e){const t={};if(e===""||e==="?")return t;const o=(e[0]==="?"?e.slice(1):e).split("&");for(let r=0;ri&&Mr(i)):[o&&Mr(o)]).forEach(i=>{i!==void 0&&(t+=(t.length?"&":"")+n,i!=null&&(t+="="+i))})}return t}function uh(e){const t={};for(const n in e){const o=e[n];o!==void 0&&(t[n]=rt(o)?o.map(r=>r==null?null:""+r):o==null?o:""+o)}return t}const ch=Symbol(""),_s=Symbol(""),di=Symbol(""),Sa=Symbol(""),Or=Symbol("");function xn(){let e=[];function t(o){return e.push(o),()=>{const r=e.indexOf(o);r>-1&&e.splice(r,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Ct(e,t,n,o,r){const i=o&&(o.enterCallbacks[r]=o.enterCallbacks[r]||[]);return()=>new Promise((s,l)=>{const a=d=>{d===!1?l(dn(4,{from:n,to:t})):d instanceof Error?l(d):Ld(d)?l(dn(2,{from:t,to:d})):(i&&o.enterCallbacks[r]===i&&typeof d=="function"&&i.push(d),s())},c=e.call(o&&o.instances[r],t,n,a);let u=Promise.resolve(c);e.length<3&&(u=u.then(a)),u.catch(d=>l(d))})}function ir(e,t,n,o){const r=[];for(const i of e)for(const s in i.components){let l=i.components[s];if(!(t!=="beforeRouteEnter"&&!i.instances[s]))if(fh(l)){const c=(l.__vccOpts||l)[t];c&&r.push(Ct(c,n,o,i,s))}else{let a=l();r.push(()=>a.then(c=>{if(!c)return Promise.reject(new Error(`Couldn't resolve component "${s}" at "${i.path}"`));const u=pd(c)?c.default:c;i.components[s]=u;const f=(u.__vccOpts||u)[t];return f&&Ct(f,n,o,i,s)()}))}}return r}function fh(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function ws(e){const t=ut(di),n=ut(Sa),o=R(()=>t.resolve(Vt(e.to))),r=R(()=>{const{matched:a}=o.value,{length:c}=a,u=a[c-1],d=n.matched;if(!u||!d.length)return-1;const f=d.findIndex(fn.bind(null,u));if(f>-1)return f;const p=xs(a[c-2]);return c>1&&xs(u)===p&&d[d.length-1].path!==p?d.findIndex(fn.bind(null,a[c-2])):f}),i=R(()=>r.value>-1&&mh(n.params,o.value.params)),s=R(()=>r.value>-1&&r.value===n.matched.length-1&&pa(n.params,o.value.params));function l(a={}){return gh(a)?t[Vt(e.replace)?"replace":"push"](Vt(e.to)).catch(Ln):Promise.resolve()}return{route:o,href:R(()=>o.value.href),isActive:i,isExactActive:s,navigate:l}}const dh=Lo({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:ws,setup(e,{slots:t}){const n=pn(ws(e)),{options:o}=ut(di),r=R(()=>({[Cs(e.activeClass,o.linkActiveClass,"router-link-active")]:n.isActive,[Cs(e.exactActiveClass,o.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const i=t.default&&t.default(n);return e.custom?i:E("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:r.value},i)}}}),hh=dh;function gh(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function mh(e,t){for(const n in t){const o=t[n],r=e[n];if(typeof o=="string"){if(o!==r)return!1}else if(!rt(r)||r.length!==o.length||o.some((i,s)=>i!==r[s]))return!1}return!0}function xs(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const Cs=(e,t,n)=>e!=null?e:t!=null?t:n,ph=Lo({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const o=ut(Or),r=R(()=>e.route||o.value),i=ut(_s,0),s=R(()=>{let c=Vt(i);const{matched:u}=r.value;let d;for(;(d=u[c])&&!d.components;)c++;return c}),l=R(()=>r.value.matched[s.value]);fo(_s,R(()=>s.value+1)),fo(ch,l),fo(Or,r);const a=he();return be(()=>[a.value,l.value,e.name],([c,u,d],[f,p,y])=>{u&&(u.instances[d]=c,p&&p!==u&&c&&c===f&&(u.leaveGuards.size||(u.leaveGuards=p.leaveGuards),u.updateGuards.size||(u.updateGuards=p.updateGuards))),c&&u&&(!p||!fn(u,p)||!f)&&(u.enterCallbacks[d]||[]).forEach(T=>T(c))},{flush:"post"}),()=>{const c=r.value,u=e.name,d=l.value,f=d&&d.components[u];if(!f)return ks(n.default,{Component:f,route:c});const p=d.props[u],y=p?p===!0?c.params:typeof p=="function"?p(c):p:null,q=E(f,ge({},y,t,{onVnodeUnmounted:M=>{M.component.isUnmounted&&(d.instances[u]=null)},ref:a}));return ks(n.default,{Component:q,route:c})||q}}});function ks(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const vh=ph;function bh(e){const t=Kd(e.routes,e),n=e.parseQuery||ah,o=e.stringifyQuery||ys,r=e.history,i=xn(),s=xn(),l=xn(),a=Yu(_t);let c=_t;en&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=or.bind(null,S=>""+S),d=or.bind(null,lh),f=or.bind(null,Ro);function p(S,Q){let z,X;return ba(S)?(z=t.getRecordMatcher(S),X=Q):X=S,t.addRoute(X,z)}function y(S){const Q=t.getRecordMatcher(S);Q&&t.removeRoute(Q)}function T(){return t.getRoutes().map(S=>S.record)}function q(S){return!!t.getRecordMatcher(S)}function M(S,Q){if(Q=ge({},Q||a.value),typeof S=="string"){const b=rr(n,S,Q.path),P=t.resolve({path:b.path},Q),O=r.createHref(b.fullPath);return ge(b,P,{params:f(P.params),hash:Ro(b.hash),redirectedFrom:void 0,href:O})}let z;if("path"in S)z=ge({},S,{path:rr(n,S.path,Q.path).path});else{const b=ge({},S.params);for(const P in b)b[P]==null&&delete b[P];z=ge({},S,{params:d(b)}),Q.params=d(Q.params)}const X=t.resolve(z,Q),de=S.hash||"";X.params=u(f(X.params));const h=yd(o,ge({},S,{hash:rh(de),path:X.path})),g=r.createHref(h);return ge({fullPath:h,hash:de,query:o===ys?uh(S.query):S.query||{}},X,{redirectedFrom:void 0,href:g})}function m(S){return typeof S=="string"?rr(n,S,a.value.path):ge({},S)}function _(S,Q){if(c!==S)return dn(8,{from:Q,to:S})}function w(S){return V(S)}function F(S){return w(ge(m(S),{replace:!0}))}function j(S){const Q=S.matched[S.matched.length-1];if(Q&&Q.redirect){const{redirect:z}=Q;let X=typeof z=="function"?z(S):z;return typeof X=="string"&&(X=X.includes("?")||X.includes("#")?X=m(X):{path:X},X.params={}),ge({query:S.query,hash:S.hash,params:"path"in X?{}:S.params},X)}}function V(S,Q){const z=c=M(S),X=a.value,de=S.state,h=S.force,g=S.replace===!0,b=j(z);if(b)return V(ge(m(b),{state:typeof b=="object"?ge({},de,b.state):de,force:h,replace:g}),Q||z);const P=z;P.redirectedFrom=Q;let O;return!h&&_d(o,X,z)&&(O=dn(16,{to:P,from:X}),fe(X,X,!0,!1)),(O?Promise.resolve(O):x(P,X)).catch(B=>ft(B)?ft(B,2)?B:se(B):W(B,P,X)).then(B=>{if(B){if(ft(B,2))return V(ge({replace:g},m(B.to),{state:typeof B.to=="object"?ge({},de,B.to.state):de,force:h}),Q||P)}else B=v(P,X,!0,g,de);return $(P,X,B),B})}function N(S,Q){const z=_(S,Q);return z?Promise.reject(z):Promise.resolve()}function C(S){const Q=Re.values().next().value;return Q&&typeof Q.runWithContext=="function"?Q.runWithContext(S):S()}function x(S,Q){let z;const[X,de,h]=yh(S,Q);z=ir(X.reverse(),"beforeRouteLeave",S,Q);for(const b of X)b.leaveGuards.forEach(P=>{z.push(Ct(P,S,Q))});const g=N.bind(null,S,Q);return z.push(g),ne(z).then(()=>{z=[];for(const b of i.list())z.push(Ct(b,S,Q));return z.push(g),ne(z)}).then(()=>{z=ir(de,"beforeRouteUpdate",S,Q);for(const b of de)b.updateGuards.forEach(P=>{z.push(Ct(P,S,Q))});return z.push(g),ne(z)}).then(()=>{z=[];for(const b of h)if(b.beforeEnter)if(rt(b.beforeEnter))for(const P of b.beforeEnter)z.push(Ct(P,S,Q));else z.push(Ct(b.beforeEnter,S,Q));return z.push(g),ne(z)}).then(()=>(S.matched.forEach(b=>b.enterCallbacks={}),z=ir(h,"beforeRouteEnter",S,Q),z.push(g),ne(z))).then(()=>{z=[];for(const b of s.list())z.push(Ct(b,S,Q));return z.push(g),ne(z)}).catch(b=>ft(b,8)?b:Promise.reject(b))}function $(S,Q,z){l.list().forEach(X=>C(()=>X(S,Q,z)))}function v(S,Q,z,X,de){const h=_(S,Q);if(h)return h;const g=Q===_t,b=en?history.state:{};z&&(X||g?r.replace(S.fullPath,ge({scroll:g&&b&&b.scroll},de)):r.push(S.fullPath,de)),a.value=S,fe(S,Q,z,g),se()}let H;function k(){H||(H=r.listen((S,Q,z)=>{if(!oe.listening)return;const X=M(S),de=j(X);if(de){V(ge(de,{replace:!0}),X).catch(Ln);return}c=X;const h=a.value;en&&Pd(fs(h.fullPath,z.delta),zo()),x(X,h).catch(g=>ft(g,12)?g:ft(g,2)?(V(g.to,X).then(b=>{ft(b,20)&&!z.delta&&z.type===Kn.pop&&r.go(-1,!1)}).catch(Ln),Promise.reject()):(z.delta&&r.go(-z.delta,!1),W(g,X,h))).then(g=>{g=g||v(X,h,!1),g&&(z.delta&&!ft(g,8)?r.go(-z.delta,!1):z.type===Kn.pop&&ft(g,20)&&r.go(-1,!1)),$(X,h,g)}).catch(Ln)}))}let Z=xn(),Y=xn(),A;function W(S,Q,z){se(S);const X=Y.list();return X.length?X.forEach(de=>de(S,Q,z)):console.error(S),Promise.reject(S)}function _e(){return A&&a.value!==_t?Promise.resolve():new Promise((S,Q)=>{Z.add([S,Q])})}function se(S){return A||(A=!S,k(),Z.list().forEach(([Q,z])=>S?z(S):Q()),Z.reset()),S}function fe(S,Q,z,X){const{scrollBehavior:de}=e;if(!en||!de)return Promise.resolve();const h=!z&&Td(fs(S.fullPath,0))||(X||!z)&&history.state&&history.state.scroll||null;return je().then(()=>de(S,Q,h)).then(g=>g&&Rd(g)).catch(g=>W(g,S,Q))}const L=S=>r.go(S);let ue;const Re=new Set,oe={currentRoute:a,listening:!0,addRoute:p,removeRoute:y,hasRoute:q,getRoutes:T,resolve:M,options:e,push:w,replace:F,go:L,back:()=>L(-1),forward:()=>L(1),beforeEach:i.add,beforeResolve:s.add,afterEach:l.add,onError:Y.add,isReady:_e,install(S){const Q=this;S.component("RouterLink",hh),S.component("RouterView",vh),S.config.globalProperties.$router=Q,Object.defineProperty(S.config.globalProperties,"$route",{enumerable:!0,get:()=>Vt(a)}),en&&!ue&&a.value===_t&&(ue=!0,w(r.location).catch(de=>{}));const z={};for(const de in _t)Object.defineProperty(z,de,{get:()=>a.value[de],enumerable:!0});S.provide(di,Q),S.provide(Sa,ml(z)),S.provide(Or,a);const X=S.unmount;Re.add(S),S.unmount=function(){Re.delete(S),Re.size<1&&(c=_t,H&&H(),H=null,a.value=_t,ue=!1,A=!1),X()}}};function ne(S){return S.reduce((Q,z)=>Q.then(()=>C(z)),Promise.resolve())}return oe}function yh(e,t){const n=[],o=[],r=[],i=Math.max(t.matched.length,e.matched.length);for(let s=0;sfn(c,l))?o.push(l):n.push(l));const a=e.matched[s];a&&(t.matched.find(c=>fn(c,a))||r.push(a))}return[n,o,r]}const _h=function(){const t=document.createElement("link").relList;return t&&t.supports&&t.supports("modulepreload")?"modulepreload":"preload"}(),Es={},wh="/nostrmarket/static/market/",sr=function(t,n){return!n||n.length===0?t():Promise.all(n.map(o=>{if(o=`${wh}${o}`,o in Es)return;Es[o]=!0;const r=o.endsWith(".css"),i=r?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${o}"]${i}`))return;const s=document.createElement("link");if(s.rel=r?"stylesheet":_h,r||(s.as="script",s.crossOrigin=""),s.href=o,document.head.appendChild(s),r)return new Promise((l,a)=>{s.addEventListener("load",l),s.addEventListener("error",()=>a(new Error(`Unable to preload CSS for ${o}`)))})})).then(()=>t())},xh=[{path:"/",component:()=>sr(()=>import("./MainLayout.8257fc44.js"),["assets/MainLayout.8257fc44.js","assets/QResizeObserver.0b22f089.js"]),children:[{path:"",component:()=>sr(()=>import("./MarketPage.b14abdfe.js"),["assets/MarketPage.b14abdfe.js","assets/QResizeObserver.0b22f089.js"])}]},{path:"/:catchAll(.*)*",component:()=>sr(()=>import("./ErrorNotFound.e659d628.js"),[])}];var lr=function(){return bh({scrollBehavior:()=>({left:0,top:0}),routes:xh,history:$d("/nostrmarket/static/market/")})};async function Ch(e,t){const n=e(md);n.use(fd,t);const o=vn(typeof lr=="function"?await lr({}):lr);return{app:n,router:o}}const $r={xs:18,sm:24,md:32,lg:38,xl:46},Yn={size:String};function Zn(e,t=$r){return R(()=>e.size!==void 0?{fontSize:e.size in t?`${t[e.size]}px`:e.size}:null)}const $e=e=>vn(Lo(e)),kh=e=>vn(e);function tt(e,t){return e!==void 0&&e()||t}function $m(e,t){if(e!==void 0){const n=e();if(n!=null)return n.slice()}return t}function It(e,t){return e!==void 0?t.concat(e()):t}function Eh(e,t){return e===void 0?t:t!==void 0?t.concat(e()):e()}function Lm(e,t,n,o,r,i){t.key=o+r;const s=E(e,t,n);return r===!0?Al(s,i()):s}const Ss="0 0 24 24",Rs=e=>e,ar=e=>`ionicons ${e}`,Ra={"mdi-":e=>`mdi ${e}`,"icon-":Rs,"bt-":e=>`bt ${e}`,"eva-":e=>`eva ${e}`,"ion-md":ar,"ion-ios":ar,"ion-logo":ar,"iconfont ":Rs,"ti-":e=>`themify-icon ${e}`,"bi-":e=>`bootstrap-icons ${e}`},Pa={o_:"-outlined",r_:"-round",s_:"-sharp"},Ta={sym_o_:"-outlined",sym_r_:"-rounded",sym_s_:"-sharp"},Sh=new RegExp("^("+Object.keys(Ra).join("|")+")"),Rh=new RegExp("^("+Object.keys(Pa).join("|")+")"),Ps=new RegExp("^("+Object.keys(Ta).join("|")+")"),Ph=/^[Mm]\s?[-+]?\.?\d/,Th=/^img:/,qh=/^svguse:/,Ah=/^ion-/,Mh=/^(fa-(sharp|solid|regular|light|brands|duotone|thin)|[lf]a[srlbdk]?) /;var pt=$e({name:"QIcon",props:{...Yn,tag:{type:String,default:"i"},name:String,color:String,left:Boolean,right:Boolean},setup(e,{slots:t}){const{proxy:{$q:n}}=ke(),o=Zn(e),r=R(()=>"q-icon"+(e.left===!0?" on-left":"")+(e.right===!0?" on-right":"")+(e.color!==void 0?` text-${e.color}`:"")),i=R(()=>{let s,l=e.name;if(l==="none"||!l)return{none:!0};if(n.iconMapFn!==null){const u=n.iconMapFn(l);if(u!==void 0)if(u.icon!==void 0){if(l=u.icon,l==="none"||!l)return{none:!0}}else return{cls:u.cls,content:u.content!==void 0?u.content:" "}}if(Ph.test(l)===!0){const[u,d=Ss]=l.split("|");return{svg:!0,viewBox:d,nodes:u.split("&&").map(f=>{const[p,y,T]=f.split("@@");return E("path",{style:y,d:p,transform:T})})}}if(Th.test(l)===!0)return{img:!0,src:l.substring(4)};if(qh.test(l)===!0){const[u,d=Ss]=l.split("|");return{svguse:!0,src:u.substring(7),viewBox:d}}let a=" ";const c=l.match(Sh);if(c!==null)s=Ra[c[1]](l);else if(Mh.test(l)===!0)s=l;else if(Ah.test(l)===!0)s=`ionicons ion-${n.platform.is.ios===!0?"ios":"md"}${l.substring(3)}`;else if(Ps.test(l)===!0){s="notranslate material-symbols";const u=l.match(Ps);u!==null&&(l=l.substring(6),s+=Ta[u[1]]),a=l}else{s="notranslate material-icons";const u=l.match(Rh);u!==null&&(l=l.substring(2),s+=Pa[u[1]]),a=l}return{cls:s,content:a}});return()=>{const s={class:r.value,style:o.value,"aria-hidden":"true",role:"presentation"};return i.value.none===!0?E(e.tag,s,tt(t.default)):i.value.img===!0?E("span",s,It(t.default,[E("img",{src:i.value.src})])):i.value.svg===!0?E("span",s,It(t.default,[E("svg",{viewBox:i.value.viewBox||"0 0 24 24"},i.value.nodes)])):i.value.svguse===!0?E("span",s,It(t.default,[E("svg",{viewBox:i.value.viewBox},[E("use",{"xlink:href":i.value.src})])])):(i.value.cls!==void 0&&(s.class+=" "+i.value.cls),E(e.tag,s,It(t.default,[i.value.content])))}}}),Oh=$e({name:"QAvatar",props:{...Yn,fontSize:String,color:String,textColor:String,icon:String,square:Boolean,rounded:Boolean},setup(e,{slots:t}){const n=Zn(e),o=R(()=>"q-avatar"+(e.color?` bg-${e.color}`:"")+(e.textColor?` text-${e.textColor} q-chip--colored`:"")+(e.square===!0?" q-avatar--square":e.rounded===!0?" rounded-borders":"")),r=R(()=>e.fontSize?{fontSize:e.fontSize}:null);return()=>{const i=e.icon!==void 0?[E(pt,{name:e.icon})]:void 0;return E("div",{class:o.value,style:n.value},[E("div",{class:"q-avatar__content row flex-center overflow-hidden",style:r.value},Eh(t.default,i))])}}});const $h={size:{type:[Number,String],default:"1em"},color:String};function Lh(e){return{cSize:R(()=>e.size in $r?`${$r[e.size]}px`:e.size),classes:R(()=>"q-spinner"+(e.color?` text-${e.color}`:""))}}var Un=$e({name:"QSpinner",props:{...$h,thickness:{type:Number,default:5}},setup(e){const{cSize:t,classes:n}=Lh(e);return()=>E("svg",{class:n.value+" q-spinner-mat",width:t.value,height:t.value,viewBox:"25 25 50 50"},[E("circle",{class:"path",cx:"50",cy:"50",r:"20",fill:"none",stroke:"currentColor","stroke-width":e.thickness,"stroke-miterlimit":"10"})])}});function Bm(e){return e===window?window.innerHeight:e.getBoundingClientRect().height}function Lr(e,t){const n=e.style;for(const o in t)n[o]=t[o]}function Bh(e){if(e==null)return;if(typeof e=="string")try{return document.querySelector(e)||void 0}catch{return}const t=Vt(e);if(t)return t.$el||t}function Fh(e,t){if(e==null||e.contains(t)===!0)return!0;for(let n=e.nextElementSibling;n!==null;n=n.nextElementSibling)if(n.contains(t))return!0;return!1}function Ih(e,t=250){let n=!1,o;return function(){return n===!1&&(n=!0,setTimeout(()=>{n=!1},t),o=e.apply(this,arguments)),o}}function Ts(e,t,n,o){n.modifiers.stop===!0&&ko(e);const r=n.modifiers.color;let i=n.modifiers.center;i=i===!0||o===!0;const s=document.createElement("span"),l=document.createElement("span"),a=Hf(e),{left:c,top:u,width:d,height:f}=t.getBoundingClientRect(),p=Math.sqrt(d*d+f*f),y=p/2,T=`${(d-p)/2}px`,q=i?T:`${a.left-c-y}px`,M=`${(f-p)/2}px`,m=i?M:`${a.top-u-y}px`;l.className="q-ripple__inner",Lr(l,{height:`${p}px`,width:`${p}px`,transform:`translate3d(${q},${m},0) scale3d(.2,.2,1)`,opacity:0}),s.className=`q-ripple${r?" text-"+r:""}`,s.setAttribute("dir","ltr"),s.appendChild(l),t.appendChild(s);const _=()=>{s.remove(),clearTimeout(w)};n.abort.push(_);let w=setTimeout(()=>{l.classList.add("q-ripple__inner--enter"),l.style.transform=`translate3d(${T},${M},0) scale3d(1,1,1)`,l.style.opacity=.2,w=setTimeout(()=>{l.classList.remove("q-ripple__inner--enter"),l.classList.add("q-ripple__inner--leave"),l.style.opacity=0,w=setTimeout(()=>{s.remove(),n.abort.splice(n.abort.indexOf(_),1)},275)},250)},50)}function qs(e,{modifiers:t,value:n,arg:o}){const r=Object.assign({},e.cfg.ripple,t,n);e.modifiers={early:r.early===!0,stop:r.stop===!0,center:r.center===!0,color:r.color||o,keyCodes:[].concat(r.keyCodes||13)}}var Nh=kh({name:"ripple",beforeMount(e,t){const n=t.instance.$.appContext.config.globalProperties.$q.config||{};if(n.ripple===!1)return;const o={cfg:n,enabled:t.value!==!1,modifiers:{},abort:[],start(r){o.enabled===!0&&r.qSkipRipple!==!0&&r.type===(o.modifiers.early===!0?"pointerdown":"click")&&Ts(r,e,o,r.qKeyEvent===!0)},keystart:Ih(r=>{o.enabled===!0&&r.qSkipRipple!==!0&&zn(r,o.modifiers.keyCodes)===!0&&r.type===`key${o.modifiers.early===!0?"down":"up"}`&&Ts(r,e,o,!0)},300)};qs(o,t),e.__qripple=o,Kf(o,"main",[[e,"pointerdown","start","passive"],[e,"click","start","passive"],[e,"keydown","keystart","passive"],[e,"keyup","keystart","passive"]])},updated(e,t){if(t.oldValue!==t.value){const n=e.__qripple;n!==void 0&&(n.enabled=t.value!==!1,n.enabled===!0&&Object(t.value)===t.value&&qs(n,t))}},beforeUnmount(e){const t=e.__qripple;t!==void 0&&(t.abort.forEach(n=>{n()}),Uf(t,"main"),delete e._qripple)}});const qa={left:"start",center:"center",right:"end",between:"between",around:"around",evenly:"evenly",stretch:"stretch"},jh=Object.keys(qa),Aa={align:{type:String,validator:e=>jh.includes(e)}};function Ma(e){return R(()=>{const t=e.align===void 0?e.vertical===!0?"stretch":"left":e.align;return`${e.vertical===!0?"items":"justify"}-${qa[t]}`})}function go(e){if(Object(e.$parent)===e.$parent)return e.$parent;let{parent:t}=e.$;for(;Object(t)===t;){if(Object(t.proxy)===t.proxy)return t.proxy;t=t.parent}}function Oa(e,t){typeof t.type=="symbol"?Array.isArray(t.children)===!0&&t.children.forEach(n=>{Oa(e,n)}):e.add(t)}function Fm(e){const t=new Set;return e.forEach(n=>{Oa(t,n)}),Array.from(t)}function $a(e){return e.appContext.config.globalProperties.$router!==void 0}function La(e){return e.isUnmounted===!0||e.isDeactivated===!0}function As(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}function Ms(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Vh(e,t){for(const n in t){const o=t[n],r=e[n];if(typeof o=="string"){if(o!==r)return!1}else if(Array.isArray(r)===!1||r.length!==o.length||o.some((i,s)=>i!==r[s]))return!1}return!0}function Os(e,t){return Array.isArray(t)===!0?e.length===t.length&&e.every((n,o)=>n===t[o]):e.length===1&&e[0]===t}function Dh(e,t){return Array.isArray(e)===!0?Os(e,t):Array.isArray(t)===!0?Os(t,e):e===t}function Hh(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(Dh(e[n],t[n])===!1)return!1;return!0}const zh={to:[String,Object],replace:Boolean,exact:Boolean,activeClass:{type:String,default:"q-router-link--active"},exactActiveClass:{type:String,default:"q-router-link--exact-active"},href:String,target:String,disable:Boolean};function Kh({fallbackTag:e,useDisableForRouterLinkProps:t=!0}={}){const n=ke(),{props:o,proxy:r,emit:i}=n,s=$a(n),l=R(()=>o.disable!==!0&&o.href!==void 0),a=R(t===!0?()=>s===!0&&o.disable!==!0&&l.value!==!0&&o.to!==void 0&&o.to!==null&&o.to!=="":()=>s===!0&&l.value!==!0&&o.to!==void 0&&o.to!==null&&o.to!==""),c=R(()=>a.value===!0?m(o.to):null),u=R(()=>c.value!==null),d=R(()=>l.value===!0||u.value===!0),f=R(()=>o.type==="a"||d.value===!0?"a":o.tag||e||"div"),p=R(()=>l.value===!0?{href:o.href,target:o.target}:u.value===!0?{href:c.value.href,target:o.target}:{}),y=R(()=>{if(u.value===!1)return-1;const{matched:F}=c.value,{length:j}=F,V=F[j-1];if(V===void 0)return-1;const N=r.$route.matched;if(N.length===0)return-1;const C=N.findIndex(Ms.bind(null,V));if(C>-1)return C;const x=As(F[j-2]);return j>1&&As(V)===x&&N[N.length-1].path!==x?N.findIndex(Ms.bind(null,F[j-2])):C}),T=R(()=>u.value===!0&&y.value!==-1&&Vh(r.$route.params,c.value.params)),q=R(()=>T.value===!0&&y.value===r.$route.matched.length-1&&Hh(r.$route.params,c.value.params)),M=R(()=>u.value===!0?q.value===!0?` ${o.exactActiveClass} ${o.activeClass}`:o.exact===!0?"":T.value===!0?` ${o.activeClass}`:"":"");function m(F){try{return r.$router.resolve(F)}catch{}return null}function _(F,{returnRouterError:j,to:V=o.to,replace:N=o.replace}={}){if(o.disable===!0)return F.preventDefault(),Promise.resolve(!1);if(F.metaKey||F.altKey||F.ctrlKey||F.shiftKey||F.button!==void 0&&F.button!==0||o.target==="_blank")return Promise.resolve(!1);F.preventDefault();const C=r.$router[N===!0?"replace":"push"](V);return j===!0?C:C.then(()=>{}).catch(()=>{})}function w(F){if(u.value===!0){const j=V=>_(F,V);i("click",F,j),F.defaultPrevented!==!0&&j()}else i("click",F)}return{hasRouterLink:u,hasHrefLink:l,hasLink:d,linkTag:f,resolvedLink:c,linkIsActive:T,linkIsExactActive:q,linkClass:M,linkAttrs:p,getLink:m,navigateToRouterLink:_,navigateOnClick:w}}const $s={none:0,xs:4,sm:8,md:16,lg:24,xl:32},Uh={xs:8,sm:10,md:14,lg:20,xl:24},Wh=["button","submit","reset"],Qh=/[^\s]\/[^\s]/,Yh=["flat","outline","push","unelevated"],Ba=(e,t)=>e.flat===!0?"flat":e.outline===!0?"outline":e.push===!0?"push":e.unelevated===!0?"unelevated":t,Im=e=>{const t=Ba(e);return t!==void 0?{[t]:!0}:{}},Zh={...Yn,...zh,type:{type:String,default:"button"},label:[Number,String],icon:String,iconRight:String,...Yh.reduce((e,t)=>(e[t]=Boolean)&&e,{}),square:Boolean,round:Boolean,rounded:Boolean,glossy:Boolean,size:String,fab:Boolean,fabMini:Boolean,padding:String,color:String,textColor:String,noCaps:Boolean,noWrap:Boolean,dense:Boolean,tabindex:[Number,String],ripple:{type:[Boolean,Object],default:!0},align:{...Aa.align,default:"center"},stack:Boolean,stretch:Boolean,loading:{type:Boolean,default:null},disable:Boolean};function Jh(e){const t=Zn(e,Uh),n=Ma(e),{hasRouterLink:o,hasLink:r,linkTag:i,linkAttrs:s,navigateOnClick:l}=Kh({fallbackTag:"button"}),a=R(()=>{const q=e.fab===!1&&e.fabMini===!1?t.value:{};return e.padding!==void 0?Object.assign({},q,{padding:e.padding.split(/\s+/).map(M=>M in $s?$s[M]+"px":M).join(" "),minWidth:"0",minHeight:"0"}):q}),c=R(()=>e.rounded===!0||e.fab===!0||e.fabMini===!0),u=R(()=>e.disable!==!0&&e.loading!==!0),d=R(()=>u.value===!0?e.tabindex||0:-1),f=R(()=>Ba(e,"standard")),p=R(()=>{const q={tabindex:d.value};return r.value===!0?Object.assign(q,s.value):Wh.includes(e.type)===!0&&(q.type=e.type),i.value==="a"?(e.disable===!0?q["aria-disabled"]="true":q.href===void 0&&(q.role="button"),o.value!==!0&&Qh.test(e.type)===!0&&(q.type=e.type)):e.disable===!0&&(q.disabled="",q["aria-disabled"]="true"),e.loading===!0&&e.percentage!==void 0&&Object.assign(q,{role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":e.percentage}),q}),y=R(()=>{let q;e.color!==void 0?e.flat===!0||e.outline===!0?q=`text-${e.textColor||e.color}`:q=`bg-${e.color} text-${e.textColor||"white"}`:e.textColor&&(q=`text-${e.textColor}`);const M=e.round===!0?"round":`rectangle${c.value===!0?" q-btn--rounded":e.square===!0?" q-btn--square":""}`;return`q-btn--${f.value} q-btn--${M}`+(q!==void 0?" "+q:"")+(u.value===!0?" q-btn--actionable q-focusable q-hoverable":e.disable===!0?" disabled":"")+(e.fab===!0?" q-btn--fab":e.fabMini===!0?" q-btn--fab-mini":"")+(e.noCaps===!0?" q-btn--no-uppercase":"")+(e.dense===!0?" q-btn--dense":"")+(e.stretch===!0?" no-border-radius self-stretch":"")+(e.glossy===!0?" glossy":"")+(e.square?" q-btn--square":"")}),T=R(()=>n.value+(e.stack===!0?" column":" row")+(e.noWrap===!0?" no-wrap text-no-wrap":"")+(e.loading===!0?" q-btn__content--hidden":""));return{classes:y,style:a,innerClasses:T,attributes:p,hasLink:r,linkTag:i,navigateOnClick:l,isActionable:u}}const{passiveCapture:He}=Be;let Jt=null,Xt=null,Gt=null;var Br=$e({name:"QBtn",props:{...Zh,percentage:Number,darkPercentage:Boolean,onTouchstart:[Function,Array]},emits:["click","keydown","mousedown","keyup"],setup(e,{slots:t,emit:n}){const{proxy:o}=ke(),{classes:r,style:i,innerClasses:s,attributes:l,hasLink:a,linkTag:c,navigateOnClick:u,isActionable:d}=Jh(e),f=he(null),p=he(null);let y=null,T,q=null;const M=R(()=>e.label!==void 0&&e.label!==null&&e.label!==""),m=R(()=>e.disable===!0||e.ripple===!1?!1:{keyCodes:a.value===!0?[13,32]:[13],...e.ripple===!0?{}:e.ripple}),_=R(()=>({center:e.round})),w=R(()=>{const k=Math.max(0,Math.min(100,e.percentage));return k>0?{transition:"transform 0.6s",transform:`translateX(${k-100}%)`}:{}}),F=R(()=>{if(e.loading===!0)return{onMousedown:H,onTouchstart:H,onClick:H,onKeydown:H,onKeyup:H};if(d.value===!0){const k={onClick:V,onKeydown:N,onMousedown:x};if(o.$q.platform.has.touch===!0){const Z=e.onTouchstart!==void 0?"":"Passive";k[`onTouchstart${Z}`]=C}return k}return{onClick:Ke}}),j=R(()=>({ref:f,class:"q-btn q-btn-item non-selectable no-outline "+r.value,style:i.value,...l.value,...F.value}));function V(k){if(f.value!==null){if(k!==void 0){if(k.defaultPrevented===!0)return;const Z=document.activeElement;if(e.type==="submit"&&Z!==document.body&&f.value.contains(Z)===!1&&Z.contains(f.value)===!1){f.value.focus();const Y=()=>{document.removeEventListener("keydown",Ke,!0),document.removeEventListener("keyup",Y,He),f.value!==null&&f.value.removeEventListener("blur",Y,He)};document.addEventListener("keydown",Ke,!0),document.addEventListener("keyup",Y,He),f.value.addEventListener("blur",Y,He)}}u(k)}}function N(k){f.value!==null&&(n("keydown",k),zn(k,[13,32])===!0&&Xt!==f.value&&(Xt!==null&&v(),k.defaultPrevented!==!0&&(f.value.focus(),Xt=f.value,f.value.classList.add("q-btn--active"),document.addEventListener("keyup",$,!0),f.value.addEventListener("blur",$,He)),Ke(k)))}function C(k){f.value!==null&&(n("touchstart",k),k.defaultPrevented!==!0&&(Jt!==f.value&&(Jt!==null&&v(),Jt=f.value,y=k.target,y.addEventListener("touchcancel",$,He),y.addEventListener("touchend",$,He)),T=!0,q!==null&&clearTimeout(q),q=setTimeout(()=>{q=null,T=!1},200)))}function x(k){f.value!==null&&(k.qSkipRipple=T===!0,n("mousedown",k),k.defaultPrevented!==!0&&Gt!==f.value&&(Gt!==null&&v(),Gt=f.value,f.value.classList.add("q-btn--active"),document.addEventListener("mouseup",$,He)))}function $(k){if(f.value!==null&&!(k!==void 0&&k.type==="blur"&&document.activeElement===f.value)){if(k!==void 0&&k.type==="keyup"){if(Xt===f.value&&zn(k,[13,32])===!0){const Z=new MouseEvent("click",k);Z.qKeyEvent=!0,k.defaultPrevented===!0&&Et(Z),k.cancelBubble===!0&&ko(Z),f.value.dispatchEvent(Z),Ke(k),k.qKeyEvent=!0}n("keyup",k)}v()}}function v(k){const Z=p.value;k!==!0&&(Jt===f.value||Gt===f.value)&&Z!==null&&Z!==document.activeElement&&(Z.setAttribute("tabindex",-1),Z.focus()),Jt===f.value&&(y!==null&&(y.removeEventListener("touchcancel",$,He),y.removeEventListener("touchend",$,He)),Jt=y=null),Gt===f.value&&(document.removeEventListener("mouseup",$,He),Gt=null),Xt===f.value&&(document.removeEventListener("keyup",$,!0),f.value!==null&&f.value.removeEventListener("blur",$,He),Xt=null),f.value!==null&&f.value.classList.remove("q-btn--active")}function H(k){Ke(k),k.qSkipRipple=!0}return We(()=>{v(!0)}),Object.assign(o,{click:V}),()=>{let k=[];e.icon!==void 0&&k.push(E(pt,{name:e.icon,left:e.stack===!1&&M.value===!0,role:"img","aria-hidden":"true"})),M.value===!0&&k.push(E("span",{class:"block"},[e.label])),k=It(t.default,k),e.iconRight!==void 0&&e.round===!1&&k.push(E(pt,{name:e.iconRight,right:e.stack===!1&&M.value===!0,role:"img","aria-hidden":"true"}));const Z=[E("span",{class:"q-focus-helper",ref:p})];return e.loading===!0&&e.percentage!==void 0&&Z.push(E("span",{class:"q-btn__progress absolute-full overflow-hidden"+(e.darkPercentage===!0?" q-btn__progress--dark":"")},[E("span",{class:"q-btn__progress-indicator fit block",style:w.value})])),Z.push(E("span",{class:"q-btn__content text-center col items-center q-anchor--skip "+s.value},k)),e.loading!==null&&Z.push(E(cn,{name:"q-transition--fade"},()=>e.loading===!0?[E("span",{key:"loading",class:"absolute-full flex flex-center"},t.loading!==void 0?t.loading():[E(Un)])]:null)),Al(E(c.value,j.value,Z),[[Nh,m.value,void 0,_.value]])}}});let Xh=1,Gh=document.body;function hi(e,t){const n=document.createElement("div");if(n.id=t!==void 0?`q-portal--${t}--${Xh++}`:e,So.globalNodes!==void 0){const o=So.globalNodes.class;o!==void 0&&(n.className=o)}return Gh.appendChild(n),n}function Fa(e){e.remove()}let eg=0;const mo={},po={},Je={},Ia={},tg=/^\s*$/,Na=[],gi=["top-left","top-right","bottom-left","bottom-right","top","bottom","left","right","center"],ng=["top-left","top-right","bottom-left","bottom-right"],tn={positive:{icon:e=>e.iconSet.type.positive,color:"positive"},negative:{icon:e=>e.iconSet.type.negative,color:"negative"},warning:{icon:e=>e.iconSet.type.warning,color:"warning",textColor:"dark"},info:{icon:e=>e.iconSet.type.info,color:"info"},ongoing:{group:!1,timeout:0,spinner:!0,color:"grey-8"}};function ja(e,t,n){if(!e)return Cn("parameter required");let o;const r={textColor:"white"};if(e.ignoreDefaults!==!0&&Object.assign(r,mo),at(e)===!1&&(r.type&&Object.assign(r,tn[r.type]),e={message:e}),Object.assign(r,tn[e.type||r.type],e),typeof r.icon=="function"&&(r.icon=r.icon(t)),r.spinner?(r.spinner===!0&&(r.spinner=Un),r.spinner=vn(r.spinner)):r.spinner=!1,r.meta={hasMedia:Boolean(r.spinner!==!1||r.icon||r.avatar),hasText:Ls(r.message)||Ls(r.caption)},r.position){if(gi.includes(r.position)===!1)return Cn("wrong position",e)}else r.position="bottom";if(r.timeout===void 0)r.timeout=5e3;else{const a=parseInt(r.timeout,10);if(isNaN(a)||a<0)return Cn("wrong timeout",e);r.timeout=a}r.timeout===0?r.progress=!1:r.progress===!0&&(r.meta.progressClass="q-notification__progress"+(r.progressClass?` ${r.progressClass}`:""),r.meta.progressStyle={animationDuration:`${r.timeout+1e3}ms`});const i=(Array.isArray(e.actions)===!0?e.actions:[]).concat(e.ignoreDefaults!==!0&&Array.isArray(mo.actions)===!0?mo.actions:[]).concat(tn[e.type]!==void 0&&Array.isArray(tn[e.type].actions)===!0?tn[e.type].actions:[]),{closeBtn:s}=r;if(s&&i.push({label:typeof s=="string"?s:t.lang.label.close}),r.actions=i.map(({handler:a,noDismiss:c,...u})=>({flat:!0,...u,onClick:typeof a=="function"?()=>{a(),c!==!0&&l()}:()=>{l()}})),r.multiLine===void 0&&(r.multiLine=r.actions.length>1),Object.assign(r.meta,{class:`q-notification row items-stretch q-notification--${r.multiLine===!0?"multi-line":"standard"}`+(r.color!==void 0?` bg-${r.color}`:"")+(r.textColor!==void 0?` text-${r.textColor}`:"")+(r.classes!==void 0?` ${r.classes}`:""),wrapperClass:"q-notification__wrapper col relative-position border-radius-inherit "+(r.multiLine===!0?"column no-wrap justify-center":"row items-center"),contentClass:"q-notification__content row items-center"+(r.multiLine===!0?"":" col"),leftClass:r.meta.hasText===!0?"additional":"single",attrs:{role:"alert",...r.attrs}}),r.group===!1?(r.group=void 0,r.meta.group=void 0):((r.group===void 0||r.group===!0)&&(r.group=[r.message,r.caption,r.multiline].concat(r.actions.map(a=>`${a.label}*${a.icon}`)).join("|")),r.meta.group=r.group+"|"+r.position),r.actions.length===0?r.actions=void 0:r.meta.actionsClass="q-notification__actions row items-center "+(r.multiLine===!0?"justify-end":"col-auto")+(r.meta.hasMedia===!0?" q-notification__actions--with-media":""),n!==void 0){n.notif.meta.timer&&(clearTimeout(n.notif.meta.timer),n.notif.meta.timer=void 0),r.meta.uid=n.notif.meta.uid;const a=Je[r.position].value.indexOf(n.notif);Je[r.position].value[a]=r}else{const a=po[r.meta.group];if(a===void 0){if(r.meta.uid=eg++,r.meta.badge=1,["left","right","center"].indexOf(r.position)!==-1)Je[r.position].value.splice(Math.floor(Je[r.position].value.length/2),0,r);else{const c=r.position.indexOf("top")>-1?"unshift":"push";Je[r.position].value[c](r)}r.group!==void 0&&(po[r.meta.group]=r)}else{if(a.meta.timer&&(clearTimeout(a.meta.timer),a.meta.timer=void 0),r.badgePosition!==void 0){if(ng.includes(r.badgePosition)===!1)return Cn("wrong badgePosition",e)}else r.badgePosition=`top-${r.position.indexOf("left")>-1?"right":"left"}`;r.meta.uid=a.meta.uid,r.meta.badge=a.meta.badge+1,r.meta.badgeClass=`q-notification__badge q-notification__badge--${r.badgePosition}`+(r.badgeColor!==void 0?` bg-${r.badgeColor}`:"")+(r.badgeTextColor!==void 0?` text-${r.badgeTextColor}`:"")+(r.badgeClass?` ${r.badgeClass}`:"");const c=Je[r.position].value.indexOf(a);Je[r.position].value[c]=po[r.meta.group]=r}}const l=()=>{og(r),o=void 0};if(r.timeout>0&&(r.meta.timer=setTimeout(()=>{r.meta.timer=void 0,l()},r.timeout+1e3)),r.group!==void 0)return a=>{a!==void 0?Cn("trying to update a grouped one which is forbidden",e):l()};if(o={dismiss:l,config:e,notif:r},n!==void 0){Object.assign(n,o);return}return a=>{if(o!==void 0)if(a===void 0)o.dismiss();else{const c=Object.assign({},o.config,a,{group:!1,position:r.position});ja(c,t,o)}}}function og(e){e.meta.timer&&(clearTimeout(e.meta.timer),e.meta.timer=void 0);const t=Je[e.position].value.indexOf(e);if(t!==-1){e.group!==void 0&&delete po[e.meta.group];const n=Na[""+e.meta.uid];if(n){const{width:o,height:r}=getComputedStyle(n);n.style.left=`${n.offsetLeft}px`,n.style.width=o,n.style.height=r}Je[e.position].value.splice(t,1),typeof e.onDismiss=="function"&&e.onDismiss()}}function Ls(e){return e!=null&&tg.test(e)!==!0}function Cn(e,t){return console.error(`Notify: ${e}`,t),!1}function rg(){return $e({name:"QNotifications",devtools:{hide:!0},setup(){return()=>E("div",{class:"q-notifications"},gi.map(e=>E(Tf,{key:e,class:Ia[e],tag:"div",name:`q-notification--${e}`},()=>Je[e].value.map(t=>{const n=t.meta,o=[];if(n.hasMedia===!0&&(t.spinner!==!1?o.push(E(t.spinner,{class:"q-notification__spinner q-notification__spinner--"+n.leftClass,color:t.spinnerColor,size:t.spinnerSize})):t.icon?o.push(E(pt,{class:"q-notification__icon q-notification__icon--"+n.leftClass,name:t.icon,color:t.iconColor,size:t.iconSize,role:"img"})):t.avatar&&o.push(E(Oh,{class:"q-notification__avatar q-notification__avatar--"+n.leftClass},()=>E("img",{src:t.avatar,"aria-hidden":"true"})))),n.hasText===!0){let i;const s={class:"q-notification__message col"};if(t.html===!0)s.innerHTML=t.caption?`
${t.message}
${t.caption}
`:t.message;else{const l=[t.message];i=t.caption?[E("div",l),E("div",{class:"q-notification__caption"},[t.caption])]:l}o.push(E("div",s,i))}const r=[E("div",{class:n.contentClass},o)];return t.progress===!0&&r.push(E("div",{key:`${n.uid}|p|${n.badge}`,class:n.progressClass,style:n.progressStyle})),t.actions!==void 0&&r.push(E("div",{class:n.actionsClass},t.actions.map(i=>E(Br,i)))),n.badge>1&&r.push(E("div",{key:`${n.uid}|${n.badge}`,class:t.meta.badgeClass,style:t.badgeStyle},[n.badge])),E("div",{ref:i=>{Na[""+n.uid]=i},key:n.uid,class:n.class,...n.attrs},[E("div",{class:n.wrapperClass},r)])}))))}})}var ig={setDefaults(e){at(e)===!0&&Object.assign(mo,e)},registerType(e,t){at(t)===!0&&(tn[e]=t)},install({$q:e,parentApp:t}){if(e.notify=this.create=n=>ja(n,e),e.notify.setDefaults=this.setDefaults,e.notify.registerType=this.registerType,e.config.notify!==void 0&&this.setDefaults(e.config.notify),this.__installed!==!0){gi.forEach(o=>{Je[o]=he([]);const r=["left","center","right"].includes(o)===!0?"center":o.indexOf("top")>-1?"top":"bottom",i=o.indexOf("left")>-1?"start":o.indexOf("right")>-1?"end":"center",s=["left","right"].includes(o)?`items-${o==="left"?"start":"end"} justify-center`:o==="center"?"flex-center":`items-${i}`;Ia[o]=`q-notifications__list q-notifications__list--${r} fixed column no-wrap ${s}`});const n=hi("q-notify");ma(rg(),t).mount(n)}}};function sg(e){return ld(e)===!0?"__q_date|"+e.toUTCString():ad(e)===!0?"__q_expr|"+e.source:typeof e=="number"?"__q_numb|"+e:typeof e=="boolean"?"__q_bool|"+(e?"1":"0"):typeof e=="string"?"__q_strn|"+e:typeof e=="function"?"__q_strn|"+e.toString():e===Object(e)?"__q_objt|"+JSON.stringify(e):e}function lg(e){if(e.length<9)return e;const n=e.substring(0,8),o=e.substring(9);switch(n){case"__q_date":return new Date(o);case"__q_expr":return new RegExp(o);case"__q_numb":return Number(o);case"__q_bool":return Boolean(o==="1");case"__q_strn":return""+o;case"__q_objt":return JSON.parse(o);default:return e}}function ag(){const e=()=>null;return{has:()=>!1,getLength:()=>0,getItem:e,getIndex:e,getKey:e,getAll:()=>{},getAllKeys:()=>[],set:Pt,remove:Pt,clear:Pt,isEmpty:()=>!0}}function ug(e){const t=window[e+"Storage"],n=o=>{const r=t.getItem(o);return r?lg(r):null};return{has:o=>t.getItem(o)!==null,getLength:()=>t.length,getItem:n,getIndex:o=>oo{let o;const r={},i=t.length;for(let s=0;s{const o=[],r=t.length;for(let i=0;i{t.setItem(o,sg(r))},remove:o=>{t.removeItem(o)},clear:()=>{t.clear()},isEmpty:()=>t.length===0}}const Va=we.has.webStorage===!1?ag():ug("local"),Da={install({$q:e}){e.localStorage=Va}};Object.assign(Da,Va);function cg(e,t,n){let o;function r(){o!==void 0&&(qr.remove(o),o=void 0)}return We(()=>{e.value===!0&&r()}),{removeFromHistory:r,addToHistory(){o={condition:()=>n.value===!0,handler:t},qr.add(o)}}}function fg(){let e=null;const t=ke();function n(){e!==null&&(clearTimeout(e),e=null)}return Fo(n),We(n),{removeTimeout:n,registerTimeout(o,r){n(),La(t)===!1&&(e=setTimeout(o,r))}}}function dg(){let e;const t=ke();function n(){e=void 0}return Fo(n),We(n),{removeTick:n,registerTick(o){e=o,je(()=>{e===o&&(La(t)===!1&&e(),e=void 0)})}}}const hg={modelValue:{type:Boolean,default:null},"onUpdate:modelValue":[Function,Array]},gg=["beforeShow","show","beforeHide","hide"];function mg({showing:e,canShow:t,hideOnRouteChange:n,handleShow:o,handleHide:r,processOnMount:i}){const s=ke(),{props:l,emit:a,proxy:c}=s;let u;function d(m){e.value===!0?y(m):f(m)}function f(m){if(l.disable===!0||m!==void 0&&m.qAnchorHandled===!0||t!==void 0&&t(m)!==!0)return;const _=l["onUpdate:modelValue"]!==void 0;_===!0&&(a("update:modelValue",!0),u=m,je(()=>{u===m&&(u=void 0)})),(l.modelValue===null||_===!1)&&p(m)}function p(m){e.value!==!0&&(e.value=!0,a("beforeShow",m),o!==void 0?o(m):a("show",m))}function y(m){if(l.disable===!0)return;const _=l["onUpdate:modelValue"]!==void 0;_===!0&&(a("update:modelValue",!1),u=m,je(()=>{u===m&&(u=void 0)})),(l.modelValue===null||_===!1)&&T(m)}function T(m){e.value!==!1&&(e.value=!1,a("beforeHide",m),r!==void 0?r(m):a("hide",m))}function q(m){l.disable===!0&&m===!0?l["onUpdate:modelValue"]!==void 0&&a("update:modelValue",!1):m===!0!==e.value&&(m===!0?p:T)(u)}be(()=>l.modelValue,q),n!==void 0&&$a(s)===!0&&be(()=>c.$route.fullPath,()=>{n.value===!0&&e.value===!0&&y()}),i===!0&&Ut(()=>{q(l.modelValue)});const M={show:f,hide:y,toggle:d};return Object.assign(c,M),M}const pg={transitionShow:{type:String,default:"fade"},transitionHide:{type:String,default:"fade"},transitionDuration:{type:[String,Number],default:300}};function vg(e,t=()=>{},n=()=>{}){return{transitionProps:R(()=>{const o=`q-transition--${e.transitionShow||t()}`,r=`q-transition--${e.transitionHide||n()}`;return{appear:!0,enterFromClass:`${o}-enter-from`,enterActiveClass:`${o}-enter-active`,enterToClass:`${o}-enter-to`,leaveFromClass:`${r}-leave-from`,leaveActiveClass:`${r}-leave-active`,leaveToClass:`${r}-leave-to`}}),transitionStyle:R(()=>`--q-transition-duration: ${e.transitionDuration}ms`)}}let Nt=[],Wn=[];function Ha(e){Wn=Wn.filter(t=>t!==e)}function bg(e){Ha(e),Wn.push(e)}function Bs(e){Ha(e),Wn.length===0&&Nt.length!==0&&(Nt[Nt.length-1](),Nt=[])}function mi(e){Wn.length===0?e():Nt.push(e)}function yg(e){Nt=Nt.filter(t=>t!==e)}const vo=[];function Nm(e){return vo.find(t=>t.contentEl!==null&&t.contentEl.contains(e))}function _g(e,t){do{if(e.$options.name==="QMenu"){if(e.hide(t),e.$props.separateClosePopup===!0)return go(e)}else if(e.__qPortal===!0){const n=go(e);return n!==void 0&&n.$options.name==="QPopupProxy"?(e.hide(t),n):e}e=go(e)}while(e!=null)}function jm(e,t,n){for(;n!==0&&e!==void 0&&e!==null;){if(e.__qPortal===!0){if(n--,e.$options.name==="QMenu"){e=_g(e,t);continue}e.hide(t)}e=go(e)}}function wg(e){for(e=e.parent;e!=null;){if(e.type.name==="QGlobalDialog")return!0;if(e.type.name==="QDialog"||e.type.name==="QMenu")return!1;e=e.parent}return!1}function xg(e,t,n,o){const r=he(!1),i=he(!1);let s=null;const l={},a=o==="dialog"&&wg(e);function c(d){if(d===!0){Bs(l),i.value=!0;return}i.value=!1,r.value===!1&&(a===!1&&s===null&&(s=hi(!1,o)),r.value=!0,vo.push(e.proxy),bg(l))}function u(d){if(i.value=!1,d!==!0)return;Bs(l),r.value=!1;const f=vo.indexOf(e.proxy);f!==-1&&vo.splice(f,1),s!==null&&(Fa(s),s=null)}return ii(()=>{u(!0)}),e.proxy.__qPortal=!0,bn(e.proxy,"contentEl",()=>t.value),{showPortal:c,hidePortal:u,portalIsActive:r,portalIsAccessible:i,renderPortal:()=>a===!0?n():r.value===!0?[E(zc,{to:s},n())]:void 0}}const Cg=[null,document,document.body,document.scrollingElement,document.documentElement];function Vm(e,t){let n=Bh(t);if(n===void 0){if(e==null)return window;n=e.closest(".scroll,.scroll-y,.overflow-auto")}return Cg.includes(n)?window:n}function Dm(e){return(e===window?document.body:e).scrollHeight}function za(e){return e===window?window.pageYOffset||window.scrollY||document.body.scrollTop||0:e.scrollTop}function Ka(e){return e===window?window.pageXOffset||window.scrollX||document.body.scrollLeft||0:e.scrollLeft}function Ua(e,t,n=0){const o=arguments[3]===void 0?performance.now():arguments[3],r=za(e);if(n<=0){r!==t&&Fr(e,t);return}requestAnimationFrame(i=>{const s=i-o,l=r+(t-r)/Math.max(s,n)*s;Fr(e,l),l!==t&&Ua(e,t,n-s,i)})}function Wa(e,t,n=0){const o=arguments[3]===void 0?performance.now():arguments[3],r=Ka(e);if(n<=0){r!==t&&Ir(e,t);return}requestAnimationFrame(i=>{const s=i-o,l=r+(t-r)/Math.max(s,n)*s;Ir(e,l),l!==t&&Wa(e,t,n-s,i)})}function Fr(e,t){if(e===window){window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,t);return}e.scrollTop=t}function Ir(e,t){if(e===window){window.scrollTo(t,window.pageYOffset||window.scrollY||document.body.scrollTop||0);return}e.scrollLeft=t}function Hm(e,t,n){if(n){Ua(e,t,n);return}Fr(e,t)}function zm(e,t,n){if(n){Wa(e,t,n);return}Ir(e,t)}let ro;function Km(){if(ro!==void 0)return ro;const e=document.createElement("p"),t=document.createElement("div");Lr(e,{width:"100%",height:"200px"}),Lr(t,{position:"absolute",top:"0px",left:"0px",visibility:"hidden",width:"200px",height:"150px",overflow:"hidden"}),t.appendChild(e),document.body.appendChild(t);const n=e.offsetWidth;t.style.overflow="scroll";let o=e.offsetWidth;return n===o&&(o=t.clientWidth),t.remove(),ro=n-o,ro}function kg(e,t=!0){return!e||e.nodeType!==Node.ELEMENT_NODE?!1:t?e.scrollHeight>e.clientHeight&&(e.classList.contains("scroll")||e.classList.contains("overflow-auto")||["auto","scroll"].includes(window.getComputedStyle(e)["overflow-y"])):e.scrollWidth>e.clientWidth&&(e.classList.contains("scroll")||e.classList.contains("overflow-auto")||["auto","scroll"].includes(window.getComputedStyle(e)["overflow-x"]))}let kn=0,ur,cr,Tn,fr=!1,Fs,Is,Ns,$t=null;function Eg(e){Sg(e)&&Ke(e)}function Sg(e){if(e.target===document.body||e.target.classList.contains("q-layout__backdrop"))return!0;const t=zf(e),n=e.shiftKey&&!e.deltaX,o=!n&&Math.abs(e.deltaX)<=Math.abs(e.deltaY),r=n||o?e.deltaY:e.deltaX;for(let i=0;i0&&s.scrollTop+s.clientHeight===s.scrollHeight:r<0&&s.scrollLeft===0?!0:r>0&&s.scrollLeft+s.clientWidth===s.scrollWidth}return!0}function js(e){e.target===document&&(document.scrollingElement.scrollTop=document.scrollingElement.scrollTop)}function io(e){fr!==!0&&(fr=!0,requestAnimationFrame(()=>{fr=!1;const{height:t}=e.target,{clientHeight:n,scrollTop:o}=document.scrollingElement;(Tn===void 0||t!==window.innerHeight)&&(Tn=n-t,document.scrollingElement.scrollTop=o),o>Tn&&(document.scrollingElement.scrollTop-=Math.ceil((o-Tn)/8))}))}function Vs(e){const t=document.body,n=window.visualViewport!==void 0;if(e==="add"){const{overflowY:o,overflowX:r}=window.getComputedStyle(t);ur=Ka(window),cr=za(window),Fs=t.style.left,Is=t.style.top,Ns=window.location.href,t.style.left=`-${ur}px`,t.style.top=`-${cr}px`,r!=="hidden"&&(r==="scroll"||t.scrollWidth>window.innerWidth)&&t.classList.add("q-body--force-scrollbar-x"),o!=="hidden"&&(o==="scroll"||t.scrollHeight>window.innerHeight)&&t.classList.add("q-body--force-scrollbar-y"),t.classList.add("q-body--prevent-scroll"),document.qScrollPrevented=!0,we.is.ios===!0&&(n===!0?(window.scrollTo(0,0),window.visualViewport.addEventListener("resize",io,Be.passiveCapture),window.visualViewport.addEventListener("scroll",io,Be.passiveCapture),window.scrollTo(0,0)):window.addEventListener("scroll",js,Be.passiveCapture))}we.is.desktop===!0&&we.is.mac===!0&&window[`${e}EventListener`]("wheel",Eg,Be.notPassive),e==="remove"&&(we.is.ios===!0&&(n===!0?(window.visualViewport.removeEventListener("resize",io,Be.passiveCapture),window.visualViewport.removeEventListener("scroll",io,Be.passiveCapture)):window.removeEventListener("scroll",js,Be.passiveCapture)),t.classList.remove("q-body--prevent-scroll"),t.classList.remove("q-body--force-scrollbar-x"),t.classList.remove("q-body--force-scrollbar-y"),document.qScrollPrevented=!1,t.style.left=Fs,t.style.top=Is,window.location.href===Ns&&window.scrollTo(ur,cr),Tn=void 0)}function Rg(e){let t="add";if(e===!0){if(kn++,$t!==null){clearTimeout($t),$t=null;return}if(kn>1)return}else{if(kn===0||(kn--,kn>0))return;if(t="remove",we.is.ios===!0&&we.is.nativeMobile===!0){$t!==null&&clearTimeout($t),$t=setTimeout(()=>{Vs(t),$t=null},100);return}}Vs(t)}function Pg(){let e;return{preventBodyScroll(t){t!==e&&(e!==void 0||t===!0)&&(e=t,Rg(t))}}}const Ht=[];let hn;function Tg(e){hn=e.keyCode===27}function qg(){hn===!0&&(hn=!1)}function Ag(e){hn===!0&&(hn=!1,zn(e,27)===!0&&Ht[Ht.length-1](e))}function Qa(e){window[e]("keydown",Tg),window[e]("blur",qg),window[e]("keyup",Ag),hn=!1}function Mg(e){we.is.desktop===!0&&(Ht.push(e),Ht.length===1&&Qa("addEventListener"))}function Ds(e){const t=Ht.indexOf(e);t>-1&&(Ht.splice(t,1),Ht.length===0&&Qa("removeEventListener"))}const zt=[];function Ya(e){zt[zt.length-1](e)}function Og(e){we.is.desktop===!0&&(zt.push(e),zt.length===1&&document.body.addEventListener("focusin",Ya))}function Hs(e){const t=zt.indexOf(e);t>-1&&(zt.splice(t,1),zt.length===0&&document.body.removeEventListener("focusin",Ya))}let so=0;const $g={standard:"fixed-full flex-center",top:"fixed-top justify-center",bottom:"fixed-bottom justify-center",right:"fixed-right items-center",left:"fixed-left items-center"},zs={standard:["scale","scale"],top:["slide-down","slide-up"],bottom:["slide-up","slide-down"],right:["slide-left","slide-right"],left:["slide-right","slide-left"]};var Lg=$e({name:"QDialog",inheritAttrs:!1,props:{...hg,...pg,transitionShow:String,transitionHide:String,persistent:Boolean,autoClose:Boolean,allowFocusOutside:Boolean,noEscDismiss:Boolean,noBackdropDismiss:Boolean,noRouteDismiss:Boolean,noRefocus:Boolean,noFocus:Boolean,noShake:Boolean,seamless:Boolean,maximized:Boolean,fullWidth:Boolean,fullHeight:Boolean,square:Boolean,position:{type:String,default:"standard",validator:e=>e==="standard"||["top","bottom","left","right"].includes(e)}},emits:[...gg,"shake","click","escapeKey"],setup(e,{slots:t,emit:n,attrs:o}){const r=ke(),i=he(null),s=he(!1),l=he(!1);let a=null,c=null,u,d;const f=R(()=>e.persistent!==!0&&e.noRouteDismiss!==!0&&e.seamless!==!0),{preventBodyScroll:p}=Pg(),{registerTimeout:y}=fg(),{registerTick:T,removeTick:q}=dg(),{transitionProps:M,transitionStyle:m}=vg(e,()=>zs[e.position][0],()=>zs[e.position][1]),{showPortal:_,hidePortal:w,portalIsAccessible:F,renderPortal:j}=xg(r,i,Re,"dialog"),{hide:V}=mg({showing:s,hideOnRouteChange:f,handleShow:k,handleHide:Z,processOnMount:!0}),{addToHistory:N,removeFromHistory:C}=cg(s,V,f),x=R(()=>`q-dialog__inner flex no-pointer-events q-dialog__inner--${e.maximized===!0?"maximized":"minimized"} q-dialog__inner--${e.position} ${$g[e.position]}`+(l.value===!0?" q-dialog__inner--animating":"")+(e.fullWidth===!0?" q-dialog__inner--fullwidth":"")+(e.fullHeight===!0?" q-dialog__inner--fullheight":"")+(e.square===!0?" q-dialog__inner--square":"")),$=R(()=>s.value===!0&&e.seamless!==!0),v=R(()=>e.autoClose===!0?{onClick:fe}:{}),H=R(()=>[`q-dialog fullscreen no-pointer-events q-dialog--${$.value===!0?"modal":"seamless"}`,o.class]);be(()=>e.maximized,oe=>{s.value===!0&&se(oe)}),be($,oe=>{p(oe),oe===!0?(Og(ue),Mg(W)):(Hs(ue),Ds(W))});function k(oe){N(),c=e.noRefocus===!1&&document.activeElement!==null?document.activeElement:null,se(e.maximized),_(),l.value=!0,e.noFocus!==!0?(document.activeElement!==null&&document.activeElement.blur(),T(Y)):q(),y(()=>{if(r.proxy.$q.platform.is.ios===!0){if(e.seamless!==!0&&document.activeElement){const{top:ne,bottom:S}=document.activeElement.getBoundingClientRect(),{innerHeight:Q}=window,z=window.visualViewport!==void 0?window.visualViewport.height:Q;ne>0&&S>z/2&&(document.scrollingElement.scrollTop=Math.min(document.scrollingElement.scrollHeight-z,S>=Q?1/0:Math.ceil(document.scrollingElement.scrollTop+S-z/2))),document.activeElement.scrollIntoView()}d=!0,i.value.click(),d=!1}_(!0),l.value=!1,n("show",oe)},e.transitionDuration)}function Z(oe){q(),C(),_e(!0),l.value=!0,w(),c!==null&&(((oe&&oe.type.indexOf("key")===0?c.closest('[tabindex]:not([tabindex^="-"])'):void 0)||c).focus(),c=null),y(()=>{w(!0),l.value=!1,n("hide",oe)},e.transitionDuration)}function Y(oe){mi(()=>{let ne=i.value;ne===null||ne.contains(document.activeElement)===!0||(ne=(oe!==""?ne.querySelector(oe):null)||ne.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||ne.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||ne.querySelector("[autofocus], [data-autofocus]")||ne,ne.focus({preventScroll:!0}))})}function A(oe){oe&&typeof oe.focus=="function"?oe.focus({preventScroll:!0}):Y(),n("shake");const ne=i.value;ne!==null&&(ne.classList.remove("q-animate--scale"),ne.classList.add("q-animate--scale"),a!==null&&clearTimeout(a),a=setTimeout(()=>{a=null,i.value!==null&&(ne.classList.remove("q-animate--scale"),Y())},170))}function W(){e.seamless!==!0&&(e.persistent===!0||e.noEscDismiss===!0?e.maximized!==!0&&e.noShake!==!0&&A():(n("escapeKey"),V()))}function _e(oe){a!==null&&(clearTimeout(a),a=null),(oe===!0||s.value===!0)&&(se(!1),e.seamless!==!0&&(p(!1),Hs(ue),Ds(W))),oe!==!0&&(c=null)}function se(oe){oe===!0?u!==!0&&(so<1&&document.body.classList.add("q-body--dialog"),so++,u=!0):u===!0&&(so<2&&document.body.classList.remove("q-body--dialog"),so--,u=!1)}function fe(oe){d!==!0&&(V(oe),n("click",oe))}function L(oe){e.persistent!==!0&&e.noBackdropDismiss!==!0?V(oe):e.noShake!==!0&&A()}function ue(oe){e.allowFocusOutside!==!0&&F.value===!0&&Fh(i.value,oe.target)!==!0&&Y('[tabindex]:not([tabindex="-1"])')}Object.assign(r.proxy,{focus:Y,shake:A,__updateRefocusTarget(oe){c=oe||null}}),We(_e);function Re(){return E("div",{role:"dialog","aria-modal":$.value===!0?"true":"false",...o,class:H.value},[E(cn,{name:"q-transition--fade",appear:!0},()=>$.value===!0?E("div",{class:"q-dialog__backdrop fixed-full",style:m.value,"aria-hidden":"true",tabindex:-1,onClick:L}):null),E(cn,M.value,()=>s.value===!0?E("div",{ref:i,class:x.value,style:m.value,tabindex:-1,...v.value},tt(t.default)):null)])}return j}});const Wt={dark:{type:Boolean,default:null}};function Qt(e,t){return R(()=>e.dark===null?t.dark.isActive:e.dark)}var Bg=$e({name:"QCard",props:{...Wt,tag:{type:String,default:"div"},square:Boolean,flat:Boolean,bordered:Boolean},setup(e,{slots:t}){const{proxy:{$q:n}}=ke(),o=Qt(e,n),r=R(()=>"q-card"+(o.value===!0?" q-card--dark q-dark":"")+(e.bordered===!0?" q-card--bordered":"")+(e.square===!0?" q-card--square no-border-radius":"")+(e.flat===!0?" q-card--flat no-shadow":""));return()=>E(e.tag,{class:r.value},tt(t.default))}}),En=$e({name:"QCardSection",props:{tag:{type:String,default:"div"},horizontal:Boolean},setup(e,{slots:t}){const n=R(()=>`q-card__section q-card__section--${e.horizontal===!0?"horiz row no-wrap":"vert"}`);return()=>E(e.tag,{class:n.value},tt(t.default))}}),Fg=$e({name:"QCardActions",props:{...Aa,vertical:Boolean},setup(e,{slots:t}){const n=Ma(e),o=R(()=>`q-card__actions ${n.value} q-card__actions--${e.vertical===!0?"vert column":"horiz row"}`);return()=>E("div",{class:o.value},tt(t.default))}});const Ig={true:"inset",item:"item-inset","item-thumbnail":"item-thumbnail-inset"},dr={xs:2,sm:4,md:8,lg:16,xl:24};var Ks=$e({name:"QSeparator",props:{...Wt,spaced:[Boolean,String],inset:[Boolean,String],vertical:Boolean,color:String,size:String},setup(e){const t=ke(),n=Qt(e,t.proxy.$q),o=R(()=>e.vertical===!0?"vertical":"horizontal"),r=R(()=>` q-separator--${o.value}`),i=R(()=>e.inset!==!1?`${r.value}-${Ig[e.inset]}`:""),s=R(()=>`q-separator${r.value}${i.value}`+(e.color!==void 0?` bg-${e.color}`:"")+(n.value===!0?" q-separator--dark":"")),l=R(()=>{const a={};if(e.size!==void 0&&(a[e.vertical===!0?"width":"height"]=e.size),e.spaced!==!1){const c=e.spaced===!0?`${dr.md}px`:e.spaced in dr?`${dr[e.spaced]}px`:e.spaced,u=e.vertical===!0?["Left","Right"]:["Top","Bottom"];a[`margin${u[0]}`]=a[`margin${u[1]}`]=c}return a});return()=>E("hr",{class:s.value,style:l.value,"aria-orientation":o.value})}});function Ng({validate:e,resetValidation:t,requiresQForm:n}){const o=ut(id,!1);if(o!==!1){const{props:r,proxy:i}=ke();Object.assign(i,{validate:e,resetValidation:t}),be(()=>r.disable,s=>{s===!0?(typeof t=="function"&&t(),o.unbindComponent(i)):o.bindComponent(i)}),Ut(()=>{r.disable!==!0&&o.bindComponent(i)}),We(()=>{r.disable!==!0&&o.unbindComponent(i)})}else n===!0&&console.error("Parent QForm not found on useFormChild()!")}const Us=/^#[0-9a-fA-F]{3}([0-9a-fA-F]{3})?$/,Ws=/^#[0-9a-fA-F]{4}([0-9a-fA-F]{4})?$/,Qs=/^#([0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/,lo=/^rgb\(((0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),){2}(0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5])\)$/,ao=/^rgba\(((0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),){2}(0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),(0|0\.[0-9]+[1-9]|0\.[1-9]+|1)\)$/,hr={date:e=>/^-?[\d]+\/[0-1]\d\/[0-3]\d$/.test(e),time:e=>/^([0-1]?\d|2[0-3]):[0-5]\d$/.test(e),fulltime:e=>/^([0-1]?\d|2[0-3]):[0-5]\d:[0-5]\d$/.test(e),timeOrFulltime:e=>/^([0-1]?\d|2[0-3]):[0-5]\d(:[0-5]\d)?$/.test(e),email:e=>/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e),hexColor:e=>Us.test(e),hexaColor:e=>Ws.test(e),hexOrHexaColor:e=>Qs.test(e),rgbColor:e=>lo.test(e),rgbaColor:e=>ao.test(e),rgbOrRgbaColor:e=>lo.test(e)||ao.test(e),hexOrRgbColor:e=>Us.test(e)||lo.test(e),hexaOrRgbaColor:e=>Ws.test(e)||ao.test(e),anyColor:e=>Qs.test(e)||lo.test(e)||ao.test(e)},jg=[!0,!1,"ondemand"],Vg={modelValue:{},error:{type:Boolean,default:null},errorMessage:String,noErrorIcon:Boolean,rules:Array,reactiveRules:Boolean,lazyRules:{type:[Boolean,String],validator:e=>jg.includes(e)}};function Dg(e,t){const{props:n,proxy:o}=ke(),r=he(!1),i=he(null),s=he(null);Ng({validate:y,resetValidation:p});let l=0,a;const c=R(()=>n.rules!==void 0&&n.rules!==null&&n.rules.length!==0),u=R(()=>n.disable!==!0&&c.value===!0),d=R(()=>n.error===!0||r.value===!0),f=R(()=>typeof n.errorMessage=="string"&&n.errorMessage.length!==0?n.errorMessage:i.value);be(()=>n.modelValue,()=>{T()}),be(()=>n.reactiveRules,M=>{M===!0?a===void 0&&(a=be(()=>n.rules,()=>{T(!0)})):a!==void 0&&(a(),a=void 0)},{immediate:!0}),be(e,M=>{M===!0?s.value===null&&(s.value=!1):s.value===!1&&(s.value=!0,u.value===!0&&n.lazyRules!=="ondemand"&&t.value===!1&&q())});function p(){l++,t.value=!1,s.value=null,r.value=!1,i.value=null,q.cancel()}function y(M=n.modelValue){if(u.value!==!0)return!0;const m=++l,_=t.value!==!0?()=>{s.value=!0}:()=>{},w=(j,V)=>{j===!0&&_(),r.value=j,i.value=V||null,t.value=!1},F=[];for(let j=0;j{if(j===void 0||Array.isArray(j)===!1||j.length===0)return m===l&&w(!1),!0;const V=j.find(N=>N===!1||typeof N=="string");return m===l&&w(V!==void 0,V),V===void 0},j=>(m===l&&(console.error(j),w(!0)),!1)))}function T(M){u.value===!0&&n.lazyRules!=="ondemand"&&(s.value===!0||n.lazyRules!==!0&&M!==!0)&&q()}const q=ua(y,0);return We(()=>{a!==void 0&&a(),q.cancel()}),Object.assign(o,{resetValidation:p,validate:y}),bn(o,"hasError",()=>d.value),{isDirtyModel:s,hasRules:c,hasError:d,errorMessage:f,validate:y,resetValidation:p}}const Ys=/^on[A-Z]/;function Hg(e,t){const n={listeners:he({}),attributes:he({})};function o(){const r={},i={};for(const s in e)s!=="class"&&s!=="style"&&Ys.test(s)===!1&&(r[s]=e[s]);for(const s in t.props)Ys.test(s)===!0&&(i[s]=t.props[s]);n.attributes.value=r,n.listeners.value=i}return Fl(o),o(),n}let gr,uo=0;const Te=new Array(256);for(let e=0;e<256;e++)Te[e]=(e+256).toString(16).substring(1);const zg=(()=>{const e=typeof crypto!="undefined"?crypto:typeof window!="undefined"?window.crypto||window.msCrypto:void 0;if(e!==void 0){if(e.randomBytes!==void 0)return e.randomBytes;if(e.getRandomValues!==void 0)return t=>{const n=new Uint8Array(t);return e.getRandomValues(n),n}}return t=>{const n=[];for(let o=t;o>0;o--)n.push(Math.floor(Math.random()*256));return n}})(),Zs=4096;function Kg(){(gr===void 0||uo+16>Zs)&&(uo=0,gr=zg(Zs));const e=Array.prototype.slice.call(gr,uo,uo+=16);return e[6]=e[6]&15|64,e[8]=e[8]&63|128,Te[e[0]]+Te[e[1]]+Te[e[2]]+Te[e[3]]+"-"+Te[e[4]]+Te[e[5]]+"-"+Te[e[6]]+Te[e[7]]+"-"+Te[e[8]]+Te[e[9]]+"-"+Te[e[10]]+Te[e[11]]+Te[e[12]]+Te[e[13]]+Te[e[14]]+Te[e[15]]}function Nr(e){return e===void 0?`f_${Kg()}`:e}function jr(e){return e!=null&&(""+e).length!==0}const Ug={...Wt,...Vg,label:String,stackLabel:Boolean,hint:String,hideHint:Boolean,prefix:String,suffix:String,labelColor:String,color:String,bgColor:String,filled:Boolean,outlined:Boolean,borderless:Boolean,standout:[Boolean,String],square:Boolean,loading:Boolean,labelSlot:Boolean,bottomSlots:Boolean,hideBottomSpace:Boolean,rounded:Boolean,dense:Boolean,itemAligned:Boolean,counter:Boolean,clearable:Boolean,clearIcon:String,disable:Boolean,readonly:Boolean,autofocus:Boolean,for:String,maxlength:[Number,String]},Wg=["update:modelValue","clear","focus","blur","popupShow","popupHide"];function Qg(){const{props:e,attrs:t,proxy:n,vnode:o}=ke();return{isDark:Qt(e,n.$q),editable:R(()=>e.disable!==!0&&e.readonly!==!0),innerLoading:he(!1),focused:he(!1),hasPopupOpen:!1,splitAttrs:Hg(t,o),targetUid:he(Nr(e.for)),rootRef:he(null),targetRef:he(null),controlRef:he(null)}}function Yg(e){const{props:t,emit:n,slots:o,attrs:r,proxy:i}=ke(),{$q:s}=i;let l=null;e.hasValue===void 0&&(e.hasValue=R(()=>jr(t.modelValue))),e.emitValue===void 0&&(e.emitValue=A=>{n("update:modelValue",A)}),e.controlEvents===void 0&&(e.controlEvents={onFocusin:C,onFocusout:x}),Object.assign(e,{clearValue:$,onControlFocusin:C,onControlFocusout:x,focus:V}),e.computedCounter===void 0&&(e.computedCounter=R(()=>{if(t.counter!==!1){const A=typeof t.modelValue=="string"||typeof t.modelValue=="number"?(""+t.modelValue).length:Array.isArray(t.modelValue)===!0?t.modelValue.length:0,W=t.maxlength!==void 0?t.maxlength:t.maxValues;return A+(W!==void 0?" / "+W:"")}}));const{isDirtyModel:a,hasRules:c,hasError:u,errorMessage:d,resetValidation:f}=Dg(e.focused,e.innerLoading),p=e.floatingLabel!==void 0?R(()=>t.stackLabel===!0||e.focused.value===!0||e.floatingLabel.value===!0):R(()=>t.stackLabel===!0||e.focused.value===!0||e.hasValue.value===!0),y=R(()=>t.bottomSlots===!0||t.hint!==void 0||c.value===!0||t.counter===!0||t.error!==null),T=R(()=>t.filled===!0?"filled":t.outlined===!0?"outlined":t.borderless===!0?"borderless":t.standout?"standout":"standard"),q=R(()=>`q-field row no-wrap items-start q-field--${T.value}`+(e.fieldClass!==void 0?` ${e.fieldClass.value}`:"")+(t.rounded===!0?" q-field--rounded":"")+(t.square===!0?" q-field--square":"")+(p.value===!0?" q-field--float":"")+(m.value===!0?" q-field--labeled":"")+(t.dense===!0?" q-field--dense":"")+(t.itemAligned===!0?" q-field--item-aligned q-item-type":"")+(e.isDark.value===!0?" q-field--dark":"")+(e.getControl===void 0?" q-field--auto-height":"")+(e.focused.value===!0?" q-field--focused":"")+(u.value===!0?" q-field--error":"")+(u.value===!0||e.focused.value===!0?" q-field--highlighted":"")+(t.hideBottomSpace!==!0&&y.value===!0?" q-field--with-bottom":"")+(t.disable===!0?" q-field--disabled":t.readonly===!0?" q-field--readonly":"")),M=R(()=>"q-field__control relative-position row no-wrap"+(t.bgColor!==void 0?` bg-${t.bgColor}`:"")+(u.value===!0?" text-negative":typeof t.standout=="string"&&t.standout.length!==0&&e.focused.value===!0?` ${t.standout}`:t.color!==void 0?` text-${t.color}`:"")),m=R(()=>t.labelSlot===!0||t.label!==void 0),_=R(()=>"q-field__label no-pointer-events absolute ellipsis"+(t.labelColor!==void 0&&u.value!==!0?` text-${t.labelColor}`:"")),w=R(()=>({id:e.targetUid.value,editable:e.editable.value,focused:e.focused.value,floatingLabel:p.value,modelValue:t.modelValue,emitValue:e.emitValue})),F=R(()=>{const A={for:e.targetUid.value};return t.disable===!0?A["aria-disabled"]="true":t.readonly===!0&&(A["aria-readonly"]="true"),A});be(()=>t.for,A=>{e.targetUid.value=Nr(A)});function j(){const A=document.activeElement;let W=e.targetRef!==void 0&&e.targetRef.value;W&&(A===null||A.id!==e.targetUid.value)&&(W.hasAttribute("tabindex")===!0||(W=W.querySelector("[tabindex]")),W&&W!==A&&W.focus({preventScroll:!0}))}function V(){mi(j)}function N(){yg(j);const A=document.activeElement;A!==null&&e.rootRef.value.contains(A)&&A.blur()}function C(A){l!==null&&(clearTimeout(l),l=null),e.editable.value===!0&&e.focused.value===!1&&(e.focused.value=!0,n("focus",A))}function x(A,W){l!==null&&clearTimeout(l),l=setTimeout(()=>{l=null,!(document.hasFocus()===!0&&(e.hasPopupOpen===!0||e.controlRef===void 0||e.controlRef.value===null||e.controlRef.value.contains(document.activeElement)!==!1))&&(e.focused.value===!0&&(e.focused.value=!1,n("blur",A)),W!==void 0&&W())})}function $(A){Ke(A),s.platform.is.mobile!==!0?(e.targetRef!==void 0&&e.targetRef.value||e.rootRef.value).focus():e.rootRef.value.contains(document.activeElement)===!0&&document.activeElement.blur(),t.type==="file"&&(e.inputRef.value.value=null),n("update:modelValue",null),n("clear",t.modelValue),je(()=>{f(),s.platform.is.mobile!==!0&&(a.value=!1)})}function v(){const A=[];return o.prepend!==void 0&&A.push(E("div",{class:"q-field__prepend q-field__marginal row no-wrap items-center",key:"prepend",onClick:Et},o.prepend())),A.push(E("div",{class:"q-field__control-container col relative-position row no-wrap q-anchor--skip"},H())),u.value===!0&&t.noErrorIcon===!1&&A.push(Z("error",[E(pt,{name:s.iconSet.field.error,color:"negative"})])),t.loading===!0||e.innerLoading.value===!0?A.push(Z("inner-loading-append",o.loading!==void 0?o.loading():[E(Un,{color:t.color})])):t.clearable===!0&&e.hasValue.value===!0&&e.editable.value===!0&&A.push(Z("inner-clearable-append",[E(pt,{class:"q-field__focusable-action",tag:"button",name:t.clearIcon||s.iconSet.field.clear,tabindex:0,type:"button","aria-hidden":null,role:null,onClick:$})])),o.append!==void 0&&A.push(E("div",{class:"q-field__append q-field__marginal row no-wrap items-center",key:"append",onClick:Et},o.append())),e.getInnerAppend!==void 0&&A.push(Z("inner-append",e.getInnerAppend())),e.getControlChild!==void 0&&A.push(e.getControlChild()),A}function H(){const A=[];return t.prefix!==void 0&&t.prefix!==null&&A.push(E("div",{class:"q-field__prefix no-pointer-events row items-center"},t.prefix)),e.getShadowControl!==void 0&&e.hasShadow.value===!0&&A.push(e.getShadowControl()),e.getControl!==void 0?A.push(e.getControl()):o.rawControl!==void 0?A.push(o.rawControl()):o.control!==void 0&&A.push(E("div",{ref:e.targetRef,class:"q-field__native row",tabindex:-1,...e.splitAttrs.attributes.value,"data-autofocus":t.autofocus===!0||void 0},o.control(w.value))),m.value===!0&&A.push(E("div",{class:_.value},tt(o.label,t.label))),t.suffix!==void 0&&t.suffix!==null&&A.push(E("div",{class:"q-field__suffix no-pointer-events row items-center"},t.suffix)),A.concat(tt(o.default))}function k(){let A,W;u.value===!0?d.value!==null?(A=[E("div",{role:"alert"},d.value)],W=`q--slot-error-${d.value}`):(A=tt(o.error),W="q--slot-error"):(t.hideHint!==!0||e.focused.value===!0)&&(t.hint!==void 0?(A=[E("div",t.hint)],W=`q--slot-hint-${t.hint}`):(A=tt(o.hint),W="q--slot-hint"));const _e=t.counter===!0||o.counter!==void 0;if(t.hideBottomSpace===!0&&_e===!1&&A===void 0)return;const se=E("div",{key:W,class:"q-field__messages col"},A);return E("div",{class:"q-field__bottom row items-start q-field__bottom--"+(t.hideBottomSpace!==!0?"animated":"stale"),onClick:Et},[t.hideBottomSpace===!0?se:E(cn,{name:"q-transition--field-message"},()=>se),_e===!0?E("div",{class:"q-field__counter"},o.counter!==void 0?o.counter():e.computedCounter.value):null])}function Z(A,W){return W===null?null:E("div",{key:A,class:"q-field__append q-field__marginal row no-wrap items-center q-anchor--skip"},W)}let Y=!1;return Fo(()=>{Y=!0}),Ll(()=>{Y===!0&&t.autofocus===!0&&i.focus()}),Ut(()=>{qt.value===!0&&t.for===void 0&&(e.targetUid.value=Nr()),t.autofocus===!0&&i.focus()}),We(()=>{l!==null&&clearTimeout(l)}),Object.assign(i,{focus:V,blur:N}),function(){const W=e.getControl===void 0&&o.control===void 0?{...e.splitAttrs.attributes.value,"data-autofocus":t.autofocus===!0||void 0,...F.value}:F.value;return E("label",{ref:e.rootRef,class:[q.value,r.class],style:r.style,...W},[o.before!==void 0?E("div",{class:"q-field__before q-field__marginal row no-wrap items-center",onClick:Et},o.before()):null,E("div",{class:"q-field__inner relative-position col self-stretch"},[E("div",{ref:e.controlRef,class:M.value,tabindex:-1,...e.controlEvents},v()),y.value===!0?k():null]),o.after!==void 0?E("div",{class:"q-field__after q-field__marginal row no-wrap items-center",onClick:Et},o.after()):null])}}const Js={date:"####/##/##",datetime:"####/##/## ##:##",time:"##:##",fulltime:"##:##:##",phone:"(###) ### - ####",card:"#### #### #### ####"},Po={"#":{pattern:"[\\d]",negate:"[^\\d]"},S:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]"},N:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]"},A:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]",transform:e=>e.toLocaleUpperCase()},a:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]",transform:e=>e.toLocaleLowerCase()},X:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]",transform:e=>e.toLocaleUpperCase()},x:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]",transform:e=>e.toLocaleLowerCase()}},Za=Object.keys(Po);Za.forEach(e=>{Po[e].regex=new RegExp(Po[e].pattern)});const Zg=new RegExp("\\\\([^.*+?^${}()|([\\]])|([.*+?^${}()|[\\]])|(["+Za.join("")+"])|(.)","g"),Xs=/[.*+?^${}()|[\]\\]/g,Se=String.fromCharCode(1),Jg={mask:String,reverseFillMask:Boolean,fillMask:[Boolean,String],unmaskedValue:Boolean};function Xg(e,t,n,o){let r,i,s,l,a,c;const u=he(null),d=he(p());function f(){return e.autogrow===!0||["textarea","text","search","url","tel","password"].includes(e.type)}be(()=>e.type+e.autogrow,T),be(()=>e.mask,C=>{if(C!==void 0)q(d.value,!0);else{const x=V(d.value);T(),e.modelValue!==x&&t("update:modelValue",x)}}),be(()=>e.fillMask+e.reverseFillMask,()=>{u.value===!0&&q(d.value,!0)}),be(()=>e.unmaskedValue,()=>{u.value===!0&&q(d.value)});function p(){if(T(),u.value===!0){const C=F(V(e.modelValue));return e.fillMask!==!1?N(C):C}return e.modelValue}function y(C){if(C-1){for(let H=C-$.length;H>0;H--)x+=Se;$=$.slice(0,v)+x+$.slice(v)}return $}function T(){if(u.value=e.mask!==void 0&&e.mask.length!==0&&f(),u.value===!1){l=void 0,r="",i="";return}const C=Js[e.mask]===void 0?e.mask:Js[e.mask],x=typeof e.fillMask=="string"&&e.fillMask.length!==0?e.fillMask.slice(0,1):"_",$=x.replace(Xs,"\\$&"),v=[],H=[],k=[];let Z=e.reverseFillMask===!0,Y="",A="";C.replace(Zg,(fe,L,ue,Re,oe)=>{if(Re!==void 0){const ne=Po[Re];k.push(ne),A=ne.negate,Z===!0&&(H.push("(?:"+A+"+)?("+ne.pattern+"+)?(?:"+A+"+)?("+ne.pattern+"+)?"),Z=!1),H.push("(?:"+A+"+)?("+ne.pattern+")?")}else if(ue!==void 0)Y="\\"+(ue==="\\"?"":ue),k.push(ue),v.push("([^"+Y+"]+)?"+Y+"?");else{const ne=L!==void 0?L:oe;Y=ne==="\\"?"\\\\\\\\":ne.replace(Xs,"\\\\$&"),k.push(ne),v.push("([^"+Y+"]+)?"+Y+"?")}});const W=new RegExp("^"+v.join("")+"("+(Y===""?".":"[^"+Y+"]")+"+)?"+(Y===""?"":"["+Y+"]*")+"$"),_e=H.length-1,se=H.map((fe,L)=>L===0&&e.reverseFillMask===!0?new RegExp("^"+$+"*"+fe):L===_e?new RegExp("^"+fe+"("+(A===""?".":A)+"+)?"+(e.reverseFillMask===!0?"$":$+"*")):new RegExp("^"+fe));s=k,l=fe=>{const L=W.exec(e.reverseFillMask===!0?fe:fe.slice(0,k.length+1));L!==null&&(fe=L.slice(1).join(""));const ue=[],Re=se.length;for(let oe=0,ne=fe;oetypeof fe=="string"?fe:Se).join(""),i=r.split(Se).join(x)}function q(C,x,$){const v=o.value,H=v.selectionEnd,k=v.value.length-H,Z=V(C);x===!0&&T();const Y=F(Z),A=e.fillMask!==!1?N(Y):Y,W=d.value!==A;v.value!==A&&(v.value=A),W===!0&&(d.value=A),document.activeElement===v&&je(()=>{if(A===i){const se=e.reverseFillMask===!0?i.length:0;v.setSelectionRange(se,se,"forward");return}if($==="insertFromPaste"&&e.reverseFillMask!==!0){const se=v.selectionEnd;let fe=H-1;for(let L=a;L<=fe&&L-1){const se=e.reverseFillMask===!0?H===0?A.length>Y.length?1:0:Math.max(0,A.length-(A===i?0:Math.min(Y.length,k)+1))+1:H;v.setSelectionRange(se,se,"forward");return}if(e.reverseFillMask===!0)if(W===!0){const se=Math.max(0,A.length-(A===i?0:Math.min(Y.length,k+1)));se===1&&H===1?v.setSelectionRange(se,se,"forward"):m.rightReverse(v,se)}else{const se=A.length-k;v.setSelectionRange(se,se,"backward")}else if(W===!0){const se=Math.max(0,r.indexOf(Se),Math.min(Y.length,H)-1);m.right(v,se)}else{const se=H-1;m.right(v,se)}});const _e=e.unmaskedValue===!0?V(A):A;String(e.modelValue)!==_e&&n(_e,!0)}function M(C,x,$){const v=F(V(C.value));x=Math.max(0,r.indexOf(Se),Math.min(v.length,x)),a=x,C.setSelectionRange(x,$,"forward")}const m={left(C,x){const $=r.slice(x-1).indexOf(Se)===-1;let v=Math.max(0,x-1);for(;v>=0;v--)if(r[v]===Se){x=v,$===!0&&x++;break}if(v<0&&r[x]!==void 0&&r[x]!==Se)return m.right(C,0);x>=0&&C.setSelectionRange(x,x,"backward")},right(C,x){const $=C.value.length;let v=Math.min($,x+1);for(;v<=$;v++)if(r[v]===Se){x=v;break}else r[v-1]===Se&&(x=v);if(v>$&&r[x-1]!==void 0&&r[x-1]!==Se)return m.left(C,$);C.setSelectionRange(x,x,"forward")},leftReverse(C,x){const $=y(C.value.length);let v=Math.max(0,x-1);for(;v>=0;v--)if($[v-1]===Se){x=v;break}else if($[v]===Se&&(x=v,v===0))break;if(v<0&&$[x]!==void 0&&$[x]!==Se)return m.rightReverse(C,0);x>=0&&C.setSelectionRange(x,x,"backward")},rightReverse(C,x){const $=C.value.length,v=y($),H=v.slice(0,x+1).indexOf(Se)===-1;let k=Math.min($,x+1);for(;k<=$;k++)if(v[k-1]===Se){x=k,x>0&&H===!0&&x--;break}if(k>$&&v[x-1]!==void 0&&v[x-1]!==Se)return m.leftReverse(C,$);C.setSelectionRange(x,x,"forward")}};function _(C){t("click",C),c=void 0}function w(C){if(t("keydown",C),da(C)===!0||C.altKey===!0)return;const x=o.value,$=x.selectionStart,v=x.selectionEnd;if(C.shiftKey||(c=void 0),C.keyCode===37||C.keyCode===39){C.shiftKey&&c===void 0&&(c=x.selectionDirection==="forward"?$:v);const H=m[(C.keyCode===39?"right":"left")+(e.reverseFillMask===!0?"Reverse":"")];if(C.preventDefault(),H(x,c===$?v:$),C.shiftKey){const k=x.selectionStart;x.setSelectionRange(Math.min(c,k),Math.max(c,k),"forward")}}else C.keyCode===8&&e.reverseFillMask!==!0&&$===v?(m.left(x,$),x.setSelectionRange(x.selectionStart,v,"backward")):C.keyCode===46&&e.reverseFillMask===!0&&$===v&&(m.rightReverse(x,v),x.setSelectionRange($,x.selectionEnd,"forward"))}function F(C){if(C==null||C==="")return"";if(e.reverseFillMask===!0)return j(C);const x=s;let $=0,v="";for(let H=0;H=0&&v>-1;k--){const Z=x[k];let Y=C[v];if(typeof Z=="string")H=Z+H,Y===Z&&v--;else if(Y!==void 0&&Z.regex.test(Y))do H=(Z.transform!==void 0?Z.transform(Y):Y)+H,v--,Y=C[v];while($===k&&Y!==void 0&&Z.regex.test(Y));else return H}return H}function V(C){return typeof C!="string"||l===void 0?typeof C=="number"?l(""+C):C:l(C)}function N(C){return i.length-C.length<=0?C:e.reverseFillMask===!0&&C.length!==0?i.slice(0,-C.length)+C:C+i.slice(C.length)}return{innerValue:d,hasMask:u,moveCursorForPaste:M,updateMaskValue:q,onMaskedKeydown:w,onMaskedClick:_}}const pi={name:String};function Ja(e={}){return(t,n,o)=>{t[n](E("input",{class:"hidden"+(o||""),...e.value}))}}function Gg(e){return R(()=>e.name||e.for)}function em(e,t){function n(){const o=e.modelValue;try{const r="DataTransfer"in window?new DataTransfer:"ClipboardEvent"in window?new ClipboardEvent("").clipboardData:void 0;return Object(o)===o&&("length"in o?Array.from(o):[o]).forEach(i=>{r.items.add(i)}),{files:r.files}}catch{return{files:void 0}}}return R(t===!0?()=>{if(e.type==="file")return n()}:n)}const tm=/[\u3000-\u303f\u3040-\u309f\u30a0-\u30ff\uff00-\uff9f\u4e00-\u9faf\u3400-\u4dbf]/,nm=/[\u4e00-\u9fff\u3400-\u4dbf\u{20000}-\u{2a6df}\u{2a700}-\u{2b73f}\u{2b740}-\u{2b81f}\u{2b820}-\u{2ceaf}\uf900-\ufaff\u3300-\u33ff\ufe30-\ufe4f\uf900-\ufaff\u{2f800}-\u{2fa1f}]/u,om=/[\u3131-\u314e\u314f-\u3163\uac00-\ud7a3]/,rm=/[a-z0-9_ -]$/i;function im(e){return function(n){if(n.type==="compositionend"||n.type==="change"){if(n.target.qComposing!==!0)return;n.target.qComposing=!1,e(n)}else n.type==="compositionupdate"&&n.target.qComposing!==!0&&typeof n.data=="string"&&(we.is.firefox===!0?rm.test(n.data)===!1:tm.test(n.data)===!0||nm.test(n.data)===!0||om.test(n.data)===!0)===!0&&(n.target.qComposing=!0)}}var sm=$e({name:"QInput",inheritAttrs:!1,props:{...Ug,...Jg,...pi,modelValue:{required:!1},shadowText:String,type:{type:String,default:"text"},debounce:[String,Number],autogrow:Boolean,inputClass:[Array,String,Object],inputStyle:[Array,String,Object]},emits:[...Wg,"paste","change","keydown","click","animationend"],setup(e,{emit:t,attrs:n}){const{proxy:o}=ke(),{$q:r}=o,i={};let s=NaN,l,a,c=null,u;const d=he(null),f=Gg(e),{innerValue:p,hasMask:y,moveCursorForPaste:T,updateMaskValue:q,onMaskedKeydown:M,onMaskedClick:m}=Xg(e,t,Y,d),_=em(e,!0),w=R(()=>jr(p.value)),F=im(k),j=Qg(),V=R(()=>e.type==="textarea"||e.autogrow===!0),N=R(()=>V.value===!0||["text","search","url","tel","password"].includes(e.type)),C=R(()=>{const L={...j.splitAttrs.listeners.value,onInput:k,onPaste:H,onChange:W,onBlur:_e,onFocus:ko};return L.onCompositionstart=L.onCompositionupdate=L.onCompositionend=F,y.value===!0&&(L.onKeydown=M,L.onClick=m),e.autogrow===!0&&(L.onAnimationend=Z),L}),x=R(()=>{const L={tabindex:0,"data-autofocus":e.autofocus===!0||void 0,rows:e.type==="textarea"?6:void 0,"aria-label":e.label,name:f.value,...j.splitAttrs.attributes.value,id:j.targetUid.value,maxlength:e.maxlength,disabled:e.disable===!0,readonly:e.readonly===!0};return V.value===!1&&(L.type=e.type),e.autogrow===!0&&(L.rows=1),L});be(()=>e.type,()=>{d.value&&(d.value.value=e.modelValue)}),be(()=>e.modelValue,L=>{if(y.value===!0){if(a===!0&&(a=!1,String(L)===s))return;q(L)}else p.value!==L&&(p.value=L,e.type==="number"&&i.hasOwnProperty("value")===!0&&(l===!0?l=!1:delete i.value));e.autogrow===!0&&je(A)}),be(()=>e.autogrow,L=>{L===!0?je(A):d.value!==null&&n.rows>0&&(d.value.style.height="auto")}),be(()=>e.dense,()=>{e.autogrow===!0&&je(A)});function $(){mi(()=>{const L=document.activeElement;d.value!==null&&d.value!==L&&(L===null||L.id!==j.targetUid.value)&&d.value.focus({preventScroll:!0})})}function v(){d.value!==null&&d.value.select()}function H(L){if(y.value===!0&&e.reverseFillMask!==!0){const ue=L.target;T(ue,ue.selectionStart,ue.selectionEnd)}t("paste",L)}function k(L){if(!L||!L.target)return;if(e.type==="file"){t("update:modelValue",L.target.files);return}const ue=L.target.value;if(L.target.qComposing===!0){i.value=ue;return}if(y.value===!0)q(ue,!1,L.inputType);else if(Y(ue),N.value===!0&&L.target===document.activeElement){const{selectionStart:Re,selectionEnd:oe}=L.target;Re!==void 0&&oe!==void 0&&je(()=>{L.target===document.activeElement&&ue.indexOf(L.target.value)===0&&L.target.setSelectionRange(Re,oe)})}e.autogrow===!0&&A()}function Z(L){t("animationend",L),A()}function Y(L,ue){u=()=>{c=null,e.type!=="number"&&i.hasOwnProperty("value")===!0&&delete i.value,e.modelValue!==L&&s!==L&&(s=L,ue===!0&&(a=!0),t("update:modelValue",L),je(()=>{s===L&&(s=NaN)})),u=void 0},e.type==="number"&&(l=!0,i.value=L),e.debounce!==void 0?(c!==null&&clearTimeout(c),i.value=L,c=setTimeout(u,e.debounce)):u()}function A(){requestAnimationFrame(()=>{const L=d.value;if(L!==null){const ue=L.parentNode.style,{scrollTop:Re}=L,{overflowY:oe,maxHeight:ne}=r.platform.is.firefox===!0?{}:window.getComputedStyle(L),S=oe!==void 0&&oe!=="scroll";S===!0&&(L.style.overflowY="hidden"),ue.marginBottom=L.scrollHeight-1+"px",L.style.height="1px",L.style.height=L.scrollHeight+"px",S===!0&&(L.style.overflowY=parseInt(ne,10){d.value!==null&&(d.value.value=p.value!==void 0?p.value:"")})}function se(){return i.hasOwnProperty("value")===!0?i.value:p.value!==void 0?p.value:""}We(()=>{_e()}),Ut(()=>{e.autogrow===!0&&A()}),Object.assign(j,{innerValue:p,fieldClass:R(()=>`q-${V.value===!0?"textarea":"input"}`+(e.autogrow===!0?" q-textarea--autogrow":"")),hasShadow:R(()=>e.type!=="file"&&typeof e.shadowText=="string"&&e.shadowText.length!==0),inputRef:d,emitValue:Y,hasValue:w,floatingLabel:R(()=>w.value===!0&&(e.type!=="number"||isNaN(p.value)===!1)||jr(e.displayValue)),getControl:()=>E(V.value===!0?"textarea":"input",{ref:d,class:["q-field__native q-placeholder",e.inputClass],style:e.inputStyle,...x.value,...C.value,...e.type!=="file"?{value:se()}:_.value}),getShadowControl:()=>E("div",{class:"q-field__native q-field__shadow absolute-bottom no-pointer-events"+(V.value===!0?"":" text-no-wrap")},[E("span",{class:"invisible"},se()),E("span",e.shadowText)])});const fe=Yg(j);return Object.assign(o,{focus:$,select:v,getNativeElement:()=>d.value}),bn(o,"nativeEl",()=>d.value),fe}});function Xa(e,t){const n=he(null),o=R(()=>e.disable===!0?null:E("span",{ref:n,class:"no-outline",tabindex:-1}));function r(i){const s=t.value;i!==void 0&&i.type.indexOf("key")===0?s!==null&&document.activeElement!==s&&s.contains(document.activeElement)===!0&&s.focus():n.value!==null&&(i===void 0||s!==null&&s.contains(i.target)===!0)&&n.value.focus()}return{refocusTargetEl:o,refocusTarget:r}}var Ga={xs:30,sm:35,md:40,lg:50,xl:60};const lm=E("svg",{key:"svg",class:"q-radio__bg absolute non-selectable",viewBox:"0 0 24 24"},[E("path",{d:"M12,22a10,10 0 0 1 -10,-10a10,10 0 0 1 10,-10a10,10 0 0 1 10,10a10,10 0 0 1 -10,10m0,-22a12,12 0 0 0 -12,12a12,12 0 0 0 12,12a12,12 0 0 0 12,-12a12,12 0 0 0 -12,-12"}),E("path",{class:"q-radio__check",d:"M12,6a6,6 0 0 0 -6,6a6,6 0 0 0 6,6a6,6 0 0 0 6,-6a6,6 0 0 0 -6,-6"})]);var am=$e({name:"QRadio",props:{...Wt,...Yn,...pi,modelValue:{required:!0},val:{required:!0},label:String,leftLabel:Boolean,checkedIcon:String,uncheckedIcon:String,color:String,keepColor:Boolean,dense:Boolean,disable:Boolean,tabindex:[String,Number]},emits:["update:modelValue"],setup(e,{slots:t,emit:n}){const{proxy:o}=ke(),r=Qt(e,o.$q),i=Zn(e,Ga),s=he(null),{refocusTargetEl:l,refocusTarget:a}=Xa(e,s),c=R(()=>ie(e.modelValue)===ie(e.val)),u=R(()=>"q-radio cursor-pointer no-outline row inline no-wrap items-center"+(e.disable===!0?" disabled":"")+(r.value===!0?" q-radio--dark":"")+(e.dense===!0?" q-radio--dense":"")+(e.leftLabel===!0?" reverse":"")),d=R(()=>{const _=e.color!==void 0&&(e.keepColor===!0||c.value===!0)?` text-${e.color}`:"";return`q-radio__inner relative-position q-radio__inner--${c.value===!0?"truthy":"falsy"}${_}`}),f=R(()=>(c.value===!0?e.checkedIcon:e.uncheckedIcon)||null),p=R(()=>e.disable===!0?-1:e.tabindex||0),y=R(()=>{const _={type:"radio"};return e.name!==void 0&&Object.assign(_,{".checked":c.value===!0,"^checked":c.value===!0?"checked":void 0,name:e.name,value:e.val}),_}),T=Ja(y);function q(_){_!==void 0&&(Ke(_),a(_)),e.disable!==!0&&c.value!==!0&&n("update:modelValue",e.val,_)}function M(_){(_.keyCode===13||_.keyCode===32)&&Ke(_)}function m(_){(_.keyCode===13||_.keyCode===32)&&q(_)}return Object.assign(o,{set:q}),()=>{const _=f.value!==null?[E("div",{key:"icon",class:"q-radio__icon-container absolute-full flex flex-center no-wrap"},[E(pt,{class:"q-radio__icon",name:f.value})])]:[lm];e.disable!==!0&&T(_,"unshift"," q-radio__native q-ma-none q-pa-none");const w=[E("div",{class:d.value,style:i.value,"aria-hidden":"true"},_)];l.value!==null&&w.push(l.value);const F=e.label!==void 0?It(t.default,[e.label]):tt(t.default);return F!==void 0&&w.push(E("div",{class:"q-radio__label q-anchor--skip"},F)),E("div",{ref:s,class:u.value,tabindex:p.value,role:"radio","aria-label":e.label,"aria-checked":c.value===!0?"true":"false","aria-disabled":e.disable===!0?"true":void 0,onClick:q,onKeydown:M,onKeyup:m},w)}}});const eu={...Wt,...Yn,...pi,modelValue:{required:!0,default:null},val:{},trueValue:{default:!0},falseValue:{default:!1},indeterminateValue:{default:null},checkedIcon:String,uncheckedIcon:String,indeterminateIcon:String,toggleOrder:{type:String,validator:e=>e==="tf"||e==="ft"},toggleIndeterminate:Boolean,label:String,leftLabel:Boolean,color:String,keepColor:Boolean,dense:Boolean,disable:Boolean,tabindex:[String,Number]},tu=["update:modelValue"];function nu(e,t){const{props:n,slots:o,emit:r,proxy:i}=ke(),{$q:s}=i,l=Qt(n,s),a=he(null),{refocusTargetEl:c,refocusTarget:u}=Xa(n,a),d=Zn(n,Ga),f=R(()=>n.val!==void 0&&Array.isArray(n.modelValue)),p=R(()=>{const v=ie(n.val);return f.value===!0?n.modelValue.findIndex(H=>ie(H)===v):-1}),y=R(()=>f.value===!0?p.value>-1:ie(n.modelValue)===ie(n.trueValue)),T=R(()=>f.value===!0?p.value===-1:ie(n.modelValue)===ie(n.falseValue)),q=R(()=>y.value===!1&&T.value===!1),M=R(()=>n.disable===!0?-1:n.tabindex||0),m=R(()=>`q-${e} cursor-pointer no-outline row inline no-wrap items-center`+(n.disable===!0?" disabled":"")+(l.value===!0?` q-${e}--dark`:"")+(n.dense===!0?` q-${e}--dense`:"")+(n.leftLabel===!0?" reverse":"")),_=R(()=>{const v=y.value===!0?"truthy":T.value===!0?"falsy":"indet",H=n.color!==void 0&&(n.keepColor===!0||(e==="toggle"?y.value===!0:T.value!==!0))?` text-${n.color}`:"";return`q-${e}__inner relative-position non-selectable q-${e}__inner--${v}${H}`}),w=R(()=>{const v={type:"checkbox"};return n.name!==void 0&&Object.assign(v,{".checked":y.value,"^checked":y.value===!0?"checked":void 0,name:n.name,value:f.value===!0?n.val:n.trueValue}),v}),F=Ja(w),j=R(()=>{const v={tabindex:M.value,role:e==="toggle"?"switch":"checkbox","aria-label":n.label,"aria-checked":q.value===!0?"mixed":y.value===!0?"true":"false"};return n.disable===!0&&(v["aria-disabled"]="true"),v});function V(v){v!==void 0&&(Ke(v),u(v)),n.disable!==!0&&r("update:modelValue",N(),v)}function N(){if(f.value===!0){if(y.value===!0){const v=n.modelValue.slice();return v.splice(p.value,1),v}return n.modelValue.concat([n.val])}if(y.value===!0){if(n.toggleOrder!=="ft"||n.toggleIndeterminate===!1)return n.falseValue}else if(T.value===!0){if(n.toggleOrder==="ft"||n.toggleIndeterminate===!1)return n.trueValue}else return n.toggleOrder!=="ft"?n.trueValue:n.falseValue;return n.indeterminateValue}function C(v){(v.keyCode===13||v.keyCode===32)&&Ke(v)}function x(v){(v.keyCode===13||v.keyCode===32)&&V(v)}const $=t(y,q);return Object.assign(i,{toggle:V}),()=>{const v=$();n.disable!==!0&&F(v,"unshift",` q-${e}__native absolute q-ma-none q-pa-none`);const H=[E("div",{class:_.value,style:d.value,"aria-hidden":"true"},v)];c.value!==null&&H.push(c.value);const k=n.label!==void 0?It(o.default,[n.label]):tt(o.default);return k!==void 0&&H.push(E("div",{class:`q-${e}__label q-anchor--skip`},k)),E("div",{ref:a,class:m.value,...j.value,onClick:V,onKeydown:C,onKeyup:x},H)}}const um=E("div",{key:"svg",class:"q-checkbox__bg absolute"},[E("svg",{class:"q-checkbox__svg fit absolute-full",viewBox:"0 0 24 24"},[E("path",{class:"q-checkbox__truthy",fill:"none",d:"M1.73,12.91 8.1,19.28 22.79,4.59"}),E("path",{class:"q-checkbox__indet",d:"M4,14H20V10H4"})])]);var cm=$e({name:"QCheckbox",props:eu,emits:tu,setup(e){function t(n,o){const r=R(()=>(n.value===!0?e.checkedIcon:o.value===!0?e.indeterminateIcon:e.uncheckedIcon)||null);return()=>r.value!==null?[E("div",{key:"icon",class:"q-checkbox__icon-container absolute-full flex flex-center no-wrap"},[E(pt,{class:"q-checkbox__icon",name:r.value})])]:[um]}return nu("checkbox",t)}}),fm=$e({name:"QToggle",props:{...eu,icon:String,iconColor:String},emits:tu,setup(e){function t(n,o){const r=R(()=>(n.value===!0?e.checkedIcon:o.value===!0?e.indeterminateIcon:e.uncheckedIcon)||e.icon),i=R(()=>n.value===!0?e.iconColor:null);return()=>[E("div",{class:"q-toggle__track"}),E("div",{class:"q-toggle__thumb absolute flex flex-center no-wrap"},r.value!==void 0?[E(pt,{name:r.value,color:i.value})]:void 0)]}return nu("toggle",t)}});const ou={radio:am,checkbox:cm,toggle:fm},dm=Object.keys(ou);var hm=$e({name:"QOptionGroup",props:{...Wt,modelValue:{required:!0},options:{type:Array,validator:e=>e.every(t=>"value"in t&&"label"in t)},name:String,type:{default:"radio",validator:e=>dm.includes(e)},color:String,keepColor:Boolean,dense:Boolean,size:String,leftLabel:Boolean,inline:Boolean,disable:Boolean},emits:["update:modelValue"],setup(e,{emit:t,slots:n}){const{proxy:{$q:o}}=ke(),r=Array.isArray(e.modelValue);e.type==="radio"?r===!0&&console.error("q-option-group: model should not be array"):r===!1&&console.error("q-option-group: model should be array in your case");const i=Qt(e,o),s=R(()=>ou[e.type]),l=R(()=>"q-option-group q-gutter-x-sm"+(e.inline===!0?" q-option-group--inline":"")),a=R(()=>{const u={role:"group"};return e.type==="radio"&&(u.role="radiogroup",e.disable===!0&&(u["aria-disabled"]="true")),u});function c(u){t("update:modelValue",u)}return()=>E("div",{class:l.value,...a.value},e.options.map((u,d)=>{const f=n["label-"+d]!==void 0?()=>n["label-"+d](u):n.label!==void 0?()=>n.label(u):void 0;return E("div",[E(s.value,{modelValue:e.modelValue,val:u.value,name:u.name===void 0?e.name:u.name,disable:e.disable||u.disable,label:f===void 0?u.label:null,leftLabel:u.leftLabel===void 0?e.leftLabel:u.leftLabel,color:u.color===void 0?e.color:u.color,checkedIcon:u.checkedIcon,uncheckedIcon:u.uncheckedIcon,dark:u.dark||i.value,size:u.size===void 0?e.size:u.size,dense:e.dense,keepColor:u.keepColor===void 0?e.keepColor:u.keepColor,"onUpdate:modelValue":c},f)])}))}}),gm=$e({name:"DialogPlugin",props:{...Wt,title:String,message:String,prompt:Object,options:Object,progress:[Boolean,Object],html:Boolean,ok:{type:[String,Object,Boolean],default:!0},cancel:[String,Object,Boolean],focus:{type:String,default:"ok",validator:e=>["ok","cancel","none"].includes(e)},stackButtons:Boolean,color:String,cardClass:[String,Array,Object],cardStyle:[String,Array,Object]},emits:["ok","hide"],setup(e,{emit:t}){const{proxy:n}=ke(),{$q:o}=n,r=Qt(e,o),i=he(null),s=he(e.prompt!==void 0?e.prompt.model:e.options!==void 0?e.options.model:void 0),l=R(()=>"q-dialog-plugin"+(r.value===!0?" q-dialog-plugin--dark q-dark":"")+(e.progress!==!1?" q-dialog-plugin--progress":"")),a=R(()=>e.color||(r.value===!0?"amber":"primary")),c=R(()=>e.progress===!1?null:at(e.progress)===!0?{component:e.progress.spinner||Un,props:{color:e.progress.color||a.value}}:{component:Un,props:{color:a.value}}),u=R(()=>e.prompt!==void 0||e.options!==void 0),d=R(()=>{if(u.value!==!0)return{};const{model:k,isValid:Z,items:Y,...A}=e.prompt!==void 0?e.prompt:e.options;return A}),f=R(()=>at(e.ok)===!0||e.ok===!0?o.lang.label.ok:e.ok),p=R(()=>at(e.cancel)===!0||e.cancel===!0?o.lang.label.cancel:e.cancel),y=R(()=>e.prompt!==void 0?e.prompt.isValid!==void 0&&e.prompt.isValid(s.value)!==!0:e.options!==void 0?e.options.isValid!==void 0&&e.options.isValid(s.value)!==!0:!1),T=R(()=>({color:a.value,label:f.value,ripple:!1,disable:y.value,...at(e.ok)===!0?e.ok:{flat:!0},"data-autofocus":e.focus==="ok"&&u.value!==!0||void 0,onClick:_})),q=R(()=>({color:a.value,label:p.value,ripple:!1,...at(e.cancel)===!0?e.cancel:{flat:!0},"data-autofocus":e.focus==="cancel"&&u.value!==!0||void 0,onClick:w}));be(()=>e.prompt&&e.prompt.model,j),be(()=>e.options&&e.options.model,j);function M(){i.value.show()}function m(){i.value.hide()}function _(){t("ok",ie(s.value)),m()}function w(){m()}function F(){t("hide")}function j(k){s.value=k}function V(k){y.value!==!0&&e.prompt.type!=="textarea"&&zn(k,13)===!0&&_()}function N(k,Z){return e.html===!0?E(En,{class:k,innerHTML:Z}):E(En,{class:k},()=>Z)}function C(){return[E(sm,{color:a.value,dense:!0,autofocus:!0,dark:r.value,...d.value,modelValue:s.value,"onUpdate:modelValue":j,onKeyup:V})]}function x(){return[E(hm,{color:a.value,options:e.options.items,dark:r.value,...d.value,modelValue:s.value,"onUpdate:modelValue":j})]}function $(){const k=[];return e.cancel&&k.push(E(Br,q.value)),e.ok&&k.push(E(Br,T.value)),E(Fg,{class:e.stackButtons===!0?"items-end":"",vertical:e.stackButtons,align:"right"},()=>k)}function v(){const k=[];return e.title&&k.push(N("q-dialog__title",e.title)),e.progress!==!1&&k.push(E(En,{class:"q-dialog__progress"},()=>E(c.value.component,c.value.props))),e.message&&k.push(N("q-dialog__message",e.message)),e.prompt!==void 0?k.push(E(En,{class:"scroll q-dialog-plugin__form"},C)):e.options!==void 0&&k.push(E(Ks,{dark:r.value}),E(En,{class:"scroll q-dialog-plugin__form"},x),E(Ks,{dark:r.value})),(e.ok||e.cancel)&&k.push($()),k}function H(){return[E(Bg,{class:[l.value,e.cardClass],style:e.cardStyle,dark:r.value},v)]}return Object.assign(n,{show:M,hide:m}),()=>E(Lg,{ref:i,onHide:F},H)}});function ru(e,t){for(const n in t)n!=="spinner"&&Object(t[n])===t[n]?(e[n]=Object(e[n])!==e[n]?{}:{...e[n]},ru(e[n],t[n])):e[n]=t[n]}function mm(e,t,n){return o=>{let r,i;const s=t===!0&&o.component!==void 0;if(s===!0){const{component:m,componentProps:_}=o;r=typeof m=="string"?n.component(m):m,i=_||{}}else{const{class:m,style:_,...w}=o;r=e,i=w,m!==void 0&&(w.cardClass=m),_!==void 0&&(w.cardStyle=_)}let l,a=!1;const c=he(null),u=hi(!1,"dialog"),d=m=>{if(c.value!==null&&c.value[m]!==void 0){c.value[m]();return}const _=l.$.subTree;if(_&&_.component){if(_.component.proxy&&_.component.proxy[m]){_.component.proxy[m]();return}if(_.component.subTree&&_.component.subTree.component&&_.component.subTree.component.proxy&&_.component.subTree.component.proxy[m]){_.component.subTree.component.proxy[m]();return}}console.error("[Quasar] Incorrectly defined Dialog component")},f=[],p=[],y={onOk(m){return f.push(m),y},onCancel(m){return p.push(m),y},onDismiss(m){return f.push(m),p.push(m),y},hide(){return d("hide"),y},update(m){if(l!==null){if(s===!0)Object.assign(i,m);else{const{class:_,style:w,...F}=m;_!==void 0&&(F.cardClass=_),w!==void 0&&(F.cardStyle=w),ru(i,F)}l.$forceUpdate()}return y}},T=m=>{a=!0,f.forEach(_=>{_(m)})},q=()=>{M.unmount(u),Fa(u),M=null,l=null,a!==!0&&p.forEach(m=>{m()})};let M=ma({name:"QGlobalDialog",setup:()=>()=>E(r,{...i,ref:c,onOk:T,onHide:q,onVnodeMounted(...m){typeof i.onVnodeMounted=="function"&&i.onVnodeMounted(...m),je(()=>d("show"))}})},n);return l=M.mount(u),y}}var pm={install({$q:e,parentApp:t}){e.dialog=mm(gm,!0,t),this.__installed!==!0&&(this.create=e.dialog)}},vm={config:{staticPath:"/nostrmarket/static/market/"},plugins:{Notify:ig,LocalStorage:Da,Dialog:pm}};async function bm({app:e,router:t}){e.use(t),e.mount("#q-app")}Ch(la,vm).then(bm);export{zn as $,Km as A,pn as B,ii as C,It as D,Lo as E,xc as F,Wl as G,Yl as H,sc as I,Fe as J,kh as K,we as L,Pt as M,Rm as N,Kf as O,Tr as P,Pm as Q,Et as R,ko as S,Hf as T,Uf as U,Ke as V,Vm as W,Be as X,za as Y,Ka as Z,dd as _,Wt as a,cm as a$,vo as a0,pg as a1,dg as a2,vg as a3,xg as a4,cn as a5,Yn as a6,Zn as a7,pt as a8,Eh as a9,jm as aA,rd as aB,Am as aC,da as aD,nr as aE,Ug as aF,Wg as aG,Yg as aH,Qg as aI,pi as aJ,Gg as aK,jr as aL,Fl as aM,ri as aN,im as aO,Lg as aP,_m as aQ,Cm as aR,Oh as aS,Jl as aT,ym as aU,Qc as aV,Xe as aW,En as aX,Ks as aY,km as aZ,sm as a_,Nh as aa,ua as ab,vc as ac,Fo as ad,Ll as ae,$h as af,Lh as ag,Un as ah,zh as ai,Kh as aj,$m as ak,Og as al,Hs as am,Ds as an,_g as ao,Mg as ap,mi as aq,Fh as ar,Zh as as,Kg as at,Im as au,Br as av,Aa as aw,Ma as ax,Fm as ay,Nm as az,gg as b,Em as b0,wm as b1,Bg as b2,zm as b3,Hm as b4,La as b5,id as b6,Fg as b7,hm as b8,Dm as b9,Bm as ba,xm as bb,ml as bc,Sm as bd,$a as be,qr as bf,Om as bg,Wr as bh,Ur as bi,Vt as bj,$e as c,Qt as d,fg as e,Mm as f,R as g,mg as h,ut as i,cg as j,We as k,Tm as l,Al as m,je as n,Ut as o,E as p,Lm as q,he as r,tt as s,ke as t,hg as u,Pg as v,be as w,fo as x,qm as y,qt as z}; From 2e0a470580d43cb28a726216bd2a1bde999db189 Mon Sep 17 00:00:00 2001 From: Patrick Mulligan Date: Fri, 29 Nov 2024 19:09:32 -0600 Subject: [PATCH 9/9] create new build with staticPath and publicPath set accordingly to be safe part of new build --- .../{ErrorNotFound.e659d628.js => ErrorNotFound.58616433.js} | 2 +- .../assets/{MainLayout.8257fc44.js => MainLayout.d210aac9.js} | 2 +- .../assets/{MarketPage.b14abdfe.js => MarketPage.b41f466c.js} | 2 +- ...ResizeObserver.0b22f089.js => QResizeObserver.43113a5e.js} | 2 +- static/market/assets/{index.dfb4e5db.js => index.70852868.js} | 2 +- .../market/assets/{index.de281aed.css => index.73d462e5.css} | 0 static/market/index.html | 4 ++-- templates/nostrmarket/market.html | 4 ++-- 8 files changed, 9 insertions(+), 9 deletions(-) rename static/market/assets/{ErrorNotFound.e659d628.js => ErrorNotFound.58616433.js} (88%) rename static/market/assets/{MainLayout.8257fc44.js => MainLayout.d210aac9.js} (98%) rename static/market/assets/{MarketPage.b14abdfe.js => MarketPage.b41f466c.js} (99%) rename static/market/assets/{QResizeObserver.0b22f089.js => QResizeObserver.43113a5e.js} (99%) rename static/market/assets/{index.dfb4e5db.js => index.70852868.js} (99%) rename static/market/assets/{index.de281aed.css => index.73d462e5.css} (100%) diff --git a/static/market/assets/ErrorNotFound.e659d628.js b/static/market/assets/ErrorNotFound.58616433.js similarity index 88% rename from static/market/assets/ErrorNotFound.e659d628.js rename to static/market/assets/ErrorNotFound.58616433.js index 881e411..4ebc4e4 100644 --- a/static/market/assets/ErrorNotFound.e659d628.js +++ b/static/market/assets/ErrorNotFound.58616433.js @@ -1 +1 @@ -import{_ as t,E as o,G as s,aR as a,aT as e,J as n,av as r}from"./index.dfb4e5db.js";const c=o({name:"ErrorNotFound"}),l={class:"fullscreen bg-blue text-white text-center q-pa-md flex flex-center"},d=e("div",{style:{"font-size":"30vh"}},"404",-1),i=e("div",{class:"text-h2",style:{opacity:"0.4"}},"Oops. Nothing here...",-1);function _(p,f,u,h,x,m){return s(),a("div",l,[e("div",null,[d,i,n(r,{class:"q-mt-xl",color:"white","text-color":"blue",unelevated:"",to:"/",label:"Go Home","no-caps":""})])])}var N=t(c,[["render",_]]);export{N as default}; +import{_ as t,E as o,G as s,aR as a,aT as e,J as n,av as r}from"./index.70852868.js";const c=o({name:"ErrorNotFound"}),l={class:"fullscreen bg-blue text-white text-center q-pa-md flex flex-center"},d=e("div",{style:{"font-size":"30vh"}},"404",-1),i=e("div",{class:"text-h2",style:{opacity:"0.4"}},"Oops. Nothing here...",-1);function _(p,f,u,h,x,m){return s(),a("div",l,[e("div",null,[d,i,n(r,{class:"q-mt-xl",color:"white","text-color":"blue",unelevated:"",to:"/",label:"Go Home","no-caps":""})])])}var N=t(c,[["render",_]]);export{N as default}; diff --git a/static/market/assets/MainLayout.8257fc44.js b/static/market/assets/MainLayout.d210aac9.js similarity index 98% rename from static/market/assets/MainLayout.8257fc44.js rename to static/market/assets/MainLayout.d210aac9.js index 6a18da8..2d31cf1 100644 --- a/static/market/assets/MainLayout.8257fc44.js +++ b/static/market/assets/MainLayout.d210aac9.js @@ -1 +1 @@ -import{c as te,u as _e,a as Pe,b as Me,d as We,e as Oe,i as he,f as D,l as ae,r as b,g as o,h as De,j as Re,w as d,o as He,n as ue,k as Qe,m as Ae,p as w,q as se,s as me,t as le,v as Fe,x as ye,y as Ie,z as Ve,A as Z,B as V,C as Ee,D as Ne,_ as je,E as Ue,F as Ke,G as Ge,H as Je,I as ce,J as E}from"./index.dfb4e5db.js";import{T as ee,b as N,Q as Xe,a as de}from"./QResizeObserver.0b22f089.js";const ve=150;var fe=te({name:"QDrawer",inheritAttrs:!1,props:{..._e,...Pe,side:{type:String,default:"left",validator:e=>["left","right"].includes(e)},width:{type:Number,default:300},mini:Boolean,miniToOverlay:Boolean,miniWidth:{type:Number,default:57},noMiniAnimation:Boolean,breakpoint:{type:Number,default:1023},showIfAbove:Boolean,behavior:{type:String,validator:e=>["default","desktop","mobile"].includes(e),default:"default"},bordered:Boolean,elevated:Boolean,overlay:Boolean,persistent:Boolean,noSwipeOpen:Boolean,noSwipeClose:Boolean,noSwipeBackdrop:Boolean},emits:[...Me,"onLayout","miniState"],setup(e,{slots:$,emit:v,attrs:r}){const f=le(),{proxy:{$q:u}}=f,T=We(e,u),{preventBodyScroll:M}=Fe(),{registerTimeout:z,removeTimeout:x}=Oe(),a=he(ae,D);if(a===D)return console.error("QDrawer needs to be child of QLayout"),D;let R,S=null,B;const c=b(e.behavior==="mobile"||e.behavior!=="desktop"&&a.totalWidth.value<=e.breakpoint),L=o(()=>e.mini===!0&&c.value!==!0),h=o(()=>L.value===!0?e.miniWidth:e.width),i=b(e.showIfAbove===!0&&c.value===!1?!0:e.modelValue===!0),p=o(()=>e.persistent!==!0&&(c.value===!0||ge.value===!0));function H(t,l){if(_(),t!==!1&&a.animate(),g(0),c.value===!0){const m=a.instances[F.value];m!==void 0&&m.belowBreakpoint===!0&&m.hide(!1),k(1),a.isContainer.value!==!0&&M(!0)}else k(0),t!==!1&&J(!1);z(()=>{t!==!1&&J(!0),l!==!0&&v("show",t)},ve)}function n(t,l){Q(),t!==!1&&a.animate(),k(0),g(W.value*h.value),X(),l!==!0?z(()=>{v("hide",t)},ve):x()}const{show:s,hide:y}=De({showing:i,hideOnRouteChange:p,handleShow:H,handleHide:n}),{addToHistory:_,removeFromHistory:Q}=Re(i,y,p),P={belowBreakpoint:c,hide:y},C=o(()=>e.side==="right"),W=o(()=>(u.lang.rtl===!0?-1:1)*(C.value===!0?1:-1)),ne=b(0),O=b(!1),j=b(!1),oe=b(h.value*W.value),F=o(()=>C.value===!0?"left":"right"),U=o(()=>i.value===!0&&c.value===!1&&e.overlay===!1?e.miniToOverlay===!0?e.miniWidth:h.value:0),K=o(()=>e.overlay===!0||e.miniToOverlay===!0||a.view.value.indexOf(C.value?"R":"L")>-1||u.platform.is.ios===!0&&a.isContainer.value===!0),A=o(()=>e.overlay===!1&&i.value===!0&&c.value===!1),ge=o(()=>e.overlay===!0&&i.value===!0&&c.value===!1),we=o(()=>"fullscreen q-drawer__backdrop"+(i.value===!1&&O.value===!1?" hidden":"")),be=o(()=>({backgroundColor:`rgba(0,0,0,${ne.value*.4})`})),ie=o(()=>C.value===!0?a.rows.value.top[2]==="r":a.rows.value.top[0]==="l"),xe=o(()=>C.value===!0?a.rows.value.bottom[2]==="r":a.rows.value.bottom[0]==="l"),Se=o(()=>{const t={};return a.header.space===!0&&ie.value===!1&&(K.value===!0?t.top=`${a.header.offset}px`:a.header.space===!0&&(t.top=`${a.header.size}px`)),a.footer.space===!0&&xe.value===!1&&(K.value===!0?t.bottom=`${a.footer.offset}px`:a.footer.space===!0&&(t.bottom=`${a.footer.size}px`)),t}),Ce=o(()=>{const t={width:`${h.value}px`,transform:`translateX(${oe.value}px)`};return c.value===!0?t:Object.assign(t,Se.value)}),$e=o(()=>"q-drawer__content fit "+(a.isContainer.value!==!0?"scroll":"overflow-auto")),ke=o(()=>`q-drawer q-drawer--${e.side}`+(j.value===!0?" q-drawer--mini-animate":"")+(e.bordered===!0?" q-drawer--bordered":"")+(T.value===!0?" q-drawer--dark q-dark":"")+(O.value===!0?" no-transition":i.value===!0?"":" q-layout--prevent-focus")+(c.value===!0?" fixed q-drawer--on-top q-drawer--mobile q-drawer--top-padding":` q-drawer--${L.value===!0?"mini":"standard"}`+(K.value===!0||A.value!==!0?" fixed":"")+(e.overlay===!0||e.miniToOverlay===!0?" q-drawer--on-top":"")+(ie.value===!0?" q-drawer--top-padding":""))),qe=o(()=>{const t=u.lang.rtl===!0?e.side:F.value;return[[ee,Le,void 0,{[t]:!0,mouse:!0}]]}),Te=o(()=>{const t=u.lang.rtl===!0?F.value:e.side;return[[ee,re,void 0,{[t]:!0,mouse:!0}]]}),ze=o(()=>{const t=u.lang.rtl===!0?F.value:e.side;return[[ee,re,void 0,{[t]:!0,mouse:!0,mouseAllDir:!0}]]});function G(){pe(c,e.behavior==="mobile"||e.behavior!=="desktop"&&a.totalWidth.value<=e.breakpoint)}d(c,t=>{t===!0?(R=i.value,i.value===!0&&y(!1)):e.overlay===!1&&e.behavior!=="mobile"&&R!==!1&&(i.value===!0?(g(0),k(0),X()):s(!1))}),d(()=>e.side,(t,l)=>{a.instances[l]===P&&(a.instances[l]=void 0,a[l].space=!1,a[l].offset=0),a.instances[t]=P,a[t].size=h.value,a[t].space=A.value,a[t].offset=U.value}),d(a.totalWidth,()=>{(a.isContainer.value===!0||document.qScrollPrevented!==!0)&&G()}),d(()=>e.behavior+e.breakpoint,G),d(a.isContainer,t=>{i.value===!0&&M(t!==!0),t===!0&&G()}),d(a.scrollbarWidth,()=>{g(i.value===!0?0:void 0)}),d(U,t=>{q("offset",t)}),d(A,t=>{v("onLayout",t),q("space",t)}),d(C,()=>{g()}),d(h,t=>{g(),Y(e.miniToOverlay,t)}),d(()=>e.miniToOverlay,t=>{Y(t,h.value)}),d(()=>u.lang.rtl,()=>{g()}),d(()=>e.mini,()=>{e.noMiniAnimation||e.modelValue===!0&&(Be(),a.animate())}),d(L,t=>{v("miniState",t)});function g(t){t===void 0?ue(()=>{t=i.value===!0?0:h.value,g(W.value*t)}):(a.isContainer.value===!0&&C.value===!0&&(c.value===!0||Math.abs(t)===h.value)&&(t+=W.value*a.scrollbarWidth.value),oe.value=t)}function k(t){ne.value=t}function J(t){const l=t===!0?"remove":a.isContainer.value!==!0?"add":"";l!==""&&document.body.classList[l]("q-body--drawer-toggle")}function Be(){S!==null&&clearTimeout(S),f.proxy&&f.proxy.$el&&f.proxy.$el.classList.add("q-drawer--mini-animate"),j.value=!0,S=setTimeout(()=>{S=null,j.value=!1,f&&f.proxy&&f.proxy.$el&&f.proxy.$el.classList.remove("q-drawer--mini-animate")},150)}function Le(t){if(i.value!==!1)return;const l=h.value,m=N(t.distance.x,0,l);if(t.isFinal===!0){m>=Math.min(75,l)===!0?s():(a.animate(),k(0),g(W.value*l)),O.value=!1;return}g((u.lang.rtl===!0?C.value!==!0:C.value)?Math.max(l-m,0):Math.min(0,m-l)),k(N(m/l,0,1)),t.isFirst===!0&&(O.value=!0)}function re(t){if(i.value!==!0)return;const l=h.value,m=t.direction===e.side,I=(u.lang.rtl===!0?m!==!0:m)?N(t.distance.x,0,l):0;if(t.isFinal===!0){Math.abs(I){v("onLayout",A.value),v("miniState",L.value),R=e.showIfAbove===!0;const t=()=>{(i.value===!0?H:n)(!1,!0)};if(a.totalWidth.value!==0){ue(t);return}B=d(a.totalWidth,()=>{B(),B=void 0,i.value===!1&&e.showIfAbove===!0&&c.value===!1?s(!1):t()})}),Qe(()=>{B!==void 0&&B(),S!==null&&(clearTimeout(S),S=null),i.value===!0&&X(),a.instances[e.side]===P&&(a.instances[e.side]=void 0,q("size",0),q("offset",0),q("space",!1))}),()=>{const t=[];c.value===!0&&(e.noSwipeOpen===!1&&t.push(Ae(w("div",{key:"open",class:`q-drawer__opener fixed-${e.side}`,"aria-hidden":"true"}),qe.value)),t.push(se("div",{ref:"backdrop",class:we.value,style:be.value,"aria-hidden":"true",onClick:y},void 0,"backdrop",e.noSwipeBackdrop!==!0&&i.value===!0,()=>ze.value)));const l=L.value===!0&&$.mini!==void 0,m=[w("div",{...r,key:""+l,class:[$e.value,r.class]},l===!0?$.mini():me($.default))];return e.elevated===!0&&i.value===!0&&m.push(w("div",{class:"q-layout__shadow absolute-full overflow-hidden no-pointer-events"})),t.push(se("aside",{ref:"content",class:ke.value,style:Ce.value},m,"contentclose",e.noSwipeClose!==!0&&c.value===!0,()=>Te.value)),w("div",{class:"q-drawer-container"},t)}}}),Ye=te({name:"QPageContainer",setup(e,{slots:$}){const{proxy:{$q:v}}=le(),r=he(ae,D);if(r===D)return console.error("QPageContainer needs to be child of QLayout"),D;ye(Ie,!0);const f=o(()=>{const u={};return r.header.space===!0&&(u.paddingTop=`${r.header.size}px`),r.right.space===!0&&(u[`padding${v.lang.rtl===!0?"Left":"Right"}`]=`${r.right.size}px`),r.footer.space===!0&&(u.paddingBottom=`${r.footer.size}px`),r.left.space===!0&&(u[`padding${v.lang.rtl===!0?"Right":"Left"}`]=`${r.left.size}px`),u});return()=>w("div",{class:"q-page-container",style:f.value},me($.default))}}),Ze=te({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:$,emit:v}){const{proxy:{$q:r}}=le(),f=b(null),u=b(r.screen.height),T=b(e.container===!0?0:r.screen.width),M=b({position:0,direction:"down",inflectionPoint:0}),z=b(0),x=b(Ve.value===!0?0:Z()),a=o(()=>"q-layout q-layout--"+(e.container===!0?"containerized":"standard")),R=o(()=>e.container===!1?{minHeight:r.screen.height+"px"}:null),S=o(()=>x.value!==0?{[r.lang.rtl===!0?"left":"right"]:`${x.value}px`}:null),B=o(()=>x.value!==0?{[r.lang.rtl===!0?"right":"left"]:0,[r.lang.rtl===!0?"left":"right"]:`-${x.value}px`,width:`calc(100% + ${x.value}px)`}:null);function c(n){if(e.container===!0||document.qScrollPrevented!==!0){const s={position:n.position.top,direction:n.direction,directionChanged:n.directionChanged,inflectionPoint:n.inflectionPoint.top,delta:n.delta.top};M.value=s,e.onScroll!==void 0&&v("scroll",s)}}function L(n){const{height:s,width:y}=n;let _=!1;u.value!==s&&(_=!0,u.value=s,e.onScrollHeight!==void 0&&v("scrollHeight",s),i()),T.value!==y&&(_=!0,T.value=y),_===!0&&e.onResize!==void 0&&v("resize",n)}function h({height:n}){z.value!==n&&(z.value=n,i())}function i(){if(e.container===!0){const n=u.value>z.value?Z():0;x.value!==n&&(x.value=n)}}let p=null;const H={instances:{},view:o(()=>e.view),isContainer:o(()=>e.container),rootRef:f,height:u,containerHeight:z,scrollbarWidth:x,totalWidth:o(()=>T.value+x.value),rows:o(()=>{const n=e.view.toLowerCase().split(" ");return{top:n[0].split(""),middle:n[1].split(""),bottom:n[2].split("")}}),header:V({size:0,offset:0,space:!1}),right:V({size:300,offset:0,space:!1}),footer:V({size:0,offset:0,space:!1}),left:V({size:300,offset:0,space:!1}),scroll:M,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,s,y){H[n][s]=y}};if(ye(ae,H),Z()>0){let y=function(){n=null,s.classList.remove("hide-scrollbar")},_=function(){if(n===null){if(s.scrollHeight>r.screen.height)return;s.classList.add("hide-scrollbar")}else clearTimeout(n);n=setTimeout(y,300)},Q=function(P){n!==null&&P==="remove"&&(clearTimeout(n),y()),window[`${P}EventListener`]("resize",_)},n=null;const s=document.body;d(()=>e.container!==!0?"add":"remove",Q),e.container!==!0&&Q("add"),Ee(()=>{Q("remove")})}return()=>{const n=Ne($.default,[w(Xe,{onScroll:c}),w(de,{onResize:L})]),s=w("div",{class:a.value,style:R.value,ref:e.container===!0?void 0:f,tabindex:-1},n);return e.container===!0?w("div",{class:"q-layout-container overflow-hidden",ref:f},[w(de,{onResize:h}),w("div",{class:"absolute-full",style:S.value},[w("div",{class:"scroll",style:B.value},[s])])]):s}}});const et=Ue({name:"MainLayout",setup(){return{}}});function tt(e,$,v,r,f,u){const T=Ke("router-view");return Ge(),Je(Ze,{view:"hHh lpR fFf"},{default:ce(()=>[E(fe,{"show-if-above":"",side:"left"}),E(fe,{"show-if-above":"",side:"right"}),E(Ye,null,{default:ce(()=>[E(T)]),_:1})]),_:1})}var ot=je(et,[["render",tt]]);export{ot as default}; +import{c as te,u as _e,a as Pe,b as Me,d as We,e as Oe,i as he,f as D,l as ae,r as b,g as o,h as De,j as Re,w as d,o as He,n as ue,k as Qe,m as Ae,p as w,q as se,s as me,t as le,v as Fe,x as ye,y as Ie,z as Ve,A as Z,B as V,C as Ee,D as Ne,_ as je,E as Ue,F as Ke,G as Ge,H as Je,I as ce,J as E}from"./index.70852868.js";import{T as ee,b as N,Q as Xe,a as de}from"./QResizeObserver.43113a5e.js";const ve=150;var fe=te({name:"QDrawer",inheritAttrs:!1,props:{..._e,...Pe,side:{type:String,default:"left",validator:e=>["left","right"].includes(e)},width:{type:Number,default:300},mini:Boolean,miniToOverlay:Boolean,miniWidth:{type:Number,default:57},noMiniAnimation:Boolean,breakpoint:{type:Number,default:1023},showIfAbove:Boolean,behavior:{type:String,validator:e=>["default","desktop","mobile"].includes(e),default:"default"},bordered:Boolean,elevated:Boolean,overlay:Boolean,persistent:Boolean,noSwipeOpen:Boolean,noSwipeClose:Boolean,noSwipeBackdrop:Boolean},emits:[...Me,"onLayout","miniState"],setup(e,{slots:$,emit:v,attrs:r}){const f=le(),{proxy:{$q:u}}=f,T=We(e,u),{preventBodyScroll:M}=Fe(),{registerTimeout:z,removeTimeout:x}=Oe(),a=he(ae,D);if(a===D)return console.error("QDrawer needs to be child of QLayout"),D;let R,S=null,B;const c=b(e.behavior==="mobile"||e.behavior!=="desktop"&&a.totalWidth.value<=e.breakpoint),L=o(()=>e.mini===!0&&c.value!==!0),h=o(()=>L.value===!0?e.miniWidth:e.width),i=b(e.showIfAbove===!0&&c.value===!1?!0:e.modelValue===!0),p=o(()=>e.persistent!==!0&&(c.value===!0||ge.value===!0));function H(t,l){if(_(),t!==!1&&a.animate(),g(0),c.value===!0){const m=a.instances[F.value];m!==void 0&&m.belowBreakpoint===!0&&m.hide(!1),k(1),a.isContainer.value!==!0&&M(!0)}else k(0),t!==!1&&J(!1);z(()=>{t!==!1&&J(!0),l!==!0&&v("show",t)},ve)}function n(t,l){Q(),t!==!1&&a.animate(),k(0),g(W.value*h.value),X(),l!==!0?z(()=>{v("hide",t)},ve):x()}const{show:s,hide:y}=De({showing:i,hideOnRouteChange:p,handleShow:H,handleHide:n}),{addToHistory:_,removeFromHistory:Q}=Re(i,y,p),P={belowBreakpoint:c,hide:y},C=o(()=>e.side==="right"),W=o(()=>(u.lang.rtl===!0?-1:1)*(C.value===!0?1:-1)),ne=b(0),O=b(!1),j=b(!1),oe=b(h.value*W.value),F=o(()=>C.value===!0?"left":"right"),U=o(()=>i.value===!0&&c.value===!1&&e.overlay===!1?e.miniToOverlay===!0?e.miniWidth:h.value:0),K=o(()=>e.overlay===!0||e.miniToOverlay===!0||a.view.value.indexOf(C.value?"R":"L")>-1||u.platform.is.ios===!0&&a.isContainer.value===!0),A=o(()=>e.overlay===!1&&i.value===!0&&c.value===!1),ge=o(()=>e.overlay===!0&&i.value===!0&&c.value===!1),we=o(()=>"fullscreen q-drawer__backdrop"+(i.value===!1&&O.value===!1?" hidden":"")),be=o(()=>({backgroundColor:`rgba(0,0,0,${ne.value*.4})`})),ie=o(()=>C.value===!0?a.rows.value.top[2]==="r":a.rows.value.top[0]==="l"),xe=o(()=>C.value===!0?a.rows.value.bottom[2]==="r":a.rows.value.bottom[0]==="l"),Se=o(()=>{const t={};return a.header.space===!0&&ie.value===!1&&(K.value===!0?t.top=`${a.header.offset}px`:a.header.space===!0&&(t.top=`${a.header.size}px`)),a.footer.space===!0&&xe.value===!1&&(K.value===!0?t.bottom=`${a.footer.offset}px`:a.footer.space===!0&&(t.bottom=`${a.footer.size}px`)),t}),Ce=o(()=>{const t={width:`${h.value}px`,transform:`translateX(${oe.value}px)`};return c.value===!0?t:Object.assign(t,Se.value)}),$e=o(()=>"q-drawer__content fit "+(a.isContainer.value!==!0?"scroll":"overflow-auto")),ke=o(()=>`q-drawer q-drawer--${e.side}`+(j.value===!0?" q-drawer--mini-animate":"")+(e.bordered===!0?" q-drawer--bordered":"")+(T.value===!0?" q-drawer--dark q-dark":"")+(O.value===!0?" no-transition":i.value===!0?"":" q-layout--prevent-focus")+(c.value===!0?" fixed q-drawer--on-top q-drawer--mobile q-drawer--top-padding":` q-drawer--${L.value===!0?"mini":"standard"}`+(K.value===!0||A.value!==!0?" fixed":"")+(e.overlay===!0||e.miniToOverlay===!0?" q-drawer--on-top":"")+(ie.value===!0?" q-drawer--top-padding":""))),qe=o(()=>{const t=u.lang.rtl===!0?e.side:F.value;return[[ee,Le,void 0,{[t]:!0,mouse:!0}]]}),Te=o(()=>{const t=u.lang.rtl===!0?F.value:e.side;return[[ee,re,void 0,{[t]:!0,mouse:!0}]]}),ze=o(()=>{const t=u.lang.rtl===!0?F.value:e.side;return[[ee,re,void 0,{[t]:!0,mouse:!0,mouseAllDir:!0}]]});function G(){pe(c,e.behavior==="mobile"||e.behavior!=="desktop"&&a.totalWidth.value<=e.breakpoint)}d(c,t=>{t===!0?(R=i.value,i.value===!0&&y(!1)):e.overlay===!1&&e.behavior!=="mobile"&&R!==!1&&(i.value===!0?(g(0),k(0),X()):s(!1))}),d(()=>e.side,(t,l)=>{a.instances[l]===P&&(a.instances[l]=void 0,a[l].space=!1,a[l].offset=0),a.instances[t]=P,a[t].size=h.value,a[t].space=A.value,a[t].offset=U.value}),d(a.totalWidth,()=>{(a.isContainer.value===!0||document.qScrollPrevented!==!0)&&G()}),d(()=>e.behavior+e.breakpoint,G),d(a.isContainer,t=>{i.value===!0&&M(t!==!0),t===!0&&G()}),d(a.scrollbarWidth,()=>{g(i.value===!0?0:void 0)}),d(U,t=>{q("offset",t)}),d(A,t=>{v("onLayout",t),q("space",t)}),d(C,()=>{g()}),d(h,t=>{g(),Y(e.miniToOverlay,t)}),d(()=>e.miniToOverlay,t=>{Y(t,h.value)}),d(()=>u.lang.rtl,()=>{g()}),d(()=>e.mini,()=>{e.noMiniAnimation||e.modelValue===!0&&(Be(),a.animate())}),d(L,t=>{v("miniState",t)});function g(t){t===void 0?ue(()=>{t=i.value===!0?0:h.value,g(W.value*t)}):(a.isContainer.value===!0&&C.value===!0&&(c.value===!0||Math.abs(t)===h.value)&&(t+=W.value*a.scrollbarWidth.value),oe.value=t)}function k(t){ne.value=t}function J(t){const l=t===!0?"remove":a.isContainer.value!==!0?"add":"";l!==""&&document.body.classList[l]("q-body--drawer-toggle")}function Be(){S!==null&&clearTimeout(S),f.proxy&&f.proxy.$el&&f.proxy.$el.classList.add("q-drawer--mini-animate"),j.value=!0,S=setTimeout(()=>{S=null,j.value=!1,f&&f.proxy&&f.proxy.$el&&f.proxy.$el.classList.remove("q-drawer--mini-animate")},150)}function Le(t){if(i.value!==!1)return;const l=h.value,m=N(t.distance.x,0,l);if(t.isFinal===!0){m>=Math.min(75,l)===!0?s():(a.animate(),k(0),g(W.value*l)),O.value=!1;return}g((u.lang.rtl===!0?C.value!==!0:C.value)?Math.max(l-m,0):Math.min(0,m-l)),k(N(m/l,0,1)),t.isFirst===!0&&(O.value=!0)}function re(t){if(i.value!==!0)return;const l=h.value,m=t.direction===e.side,I=(u.lang.rtl===!0?m!==!0:m)?N(t.distance.x,0,l):0;if(t.isFinal===!0){Math.abs(I){v("onLayout",A.value),v("miniState",L.value),R=e.showIfAbove===!0;const t=()=>{(i.value===!0?H:n)(!1,!0)};if(a.totalWidth.value!==0){ue(t);return}B=d(a.totalWidth,()=>{B(),B=void 0,i.value===!1&&e.showIfAbove===!0&&c.value===!1?s(!1):t()})}),Qe(()=>{B!==void 0&&B(),S!==null&&(clearTimeout(S),S=null),i.value===!0&&X(),a.instances[e.side]===P&&(a.instances[e.side]=void 0,q("size",0),q("offset",0),q("space",!1))}),()=>{const t=[];c.value===!0&&(e.noSwipeOpen===!1&&t.push(Ae(w("div",{key:"open",class:`q-drawer__opener fixed-${e.side}`,"aria-hidden":"true"}),qe.value)),t.push(se("div",{ref:"backdrop",class:we.value,style:be.value,"aria-hidden":"true",onClick:y},void 0,"backdrop",e.noSwipeBackdrop!==!0&&i.value===!0,()=>ze.value)));const l=L.value===!0&&$.mini!==void 0,m=[w("div",{...r,key:""+l,class:[$e.value,r.class]},l===!0?$.mini():me($.default))];return e.elevated===!0&&i.value===!0&&m.push(w("div",{class:"q-layout__shadow absolute-full overflow-hidden no-pointer-events"})),t.push(se("aside",{ref:"content",class:ke.value,style:Ce.value},m,"contentclose",e.noSwipeClose!==!0&&c.value===!0,()=>Te.value)),w("div",{class:"q-drawer-container"},t)}}}),Ye=te({name:"QPageContainer",setup(e,{slots:$}){const{proxy:{$q:v}}=le(),r=he(ae,D);if(r===D)return console.error("QPageContainer needs to be child of QLayout"),D;ye(Ie,!0);const f=o(()=>{const u={};return r.header.space===!0&&(u.paddingTop=`${r.header.size}px`),r.right.space===!0&&(u[`padding${v.lang.rtl===!0?"Left":"Right"}`]=`${r.right.size}px`),r.footer.space===!0&&(u.paddingBottom=`${r.footer.size}px`),r.left.space===!0&&(u[`padding${v.lang.rtl===!0?"Right":"Left"}`]=`${r.left.size}px`),u});return()=>w("div",{class:"q-page-container",style:f.value},me($.default))}}),Ze=te({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:$,emit:v}){const{proxy:{$q:r}}=le(),f=b(null),u=b(r.screen.height),T=b(e.container===!0?0:r.screen.width),M=b({position:0,direction:"down",inflectionPoint:0}),z=b(0),x=b(Ve.value===!0?0:Z()),a=o(()=>"q-layout q-layout--"+(e.container===!0?"containerized":"standard")),R=o(()=>e.container===!1?{minHeight:r.screen.height+"px"}:null),S=o(()=>x.value!==0?{[r.lang.rtl===!0?"left":"right"]:`${x.value}px`}:null),B=o(()=>x.value!==0?{[r.lang.rtl===!0?"right":"left"]:0,[r.lang.rtl===!0?"left":"right"]:`-${x.value}px`,width:`calc(100% + ${x.value}px)`}:null);function c(n){if(e.container===!0||document.qScrollPrevented!==!0){const s={position:n.position.top,direction:n.direction,directionChanged:n.directionChanged,inflectionPoint:n.inflectionPoint.top,delta:n.delta.top};M.value=s,e.onScroll!==void 0&&v("scroll",s)}}function L(n){const{height:s,width:y}=n;let _=!1;u.value!==s&&(_=!0,u.value=s,e.onScrollHeight!==void 0&&v("scrollHeight",s),i()),T.value!==y&&(_=!0,T.value=y),_===!0&&e.onResize!==void 0&&v("resize",n)}function h({height:n}){z.value!==n&&(z.value=n,i())}function i(){if(e.container===!0){const n=u.value>z.value?Z():0;x.value!==n&&(x.value=n)}}let p=null;const H={instances:{},view:o(()=>e.view),isContainer:o(()=>e.container),rootRef:f,height:u,containerHeight:z,scrollbarWidth:x,totalWidth:o(()=>T.value+x.value),rows:o(()=>{const n=e.view.toLowerCase().split(" ");return{top:n[0].split(""),middle:n[1].split(""),bottom:n[2].split("")}}),header:V({size:0,offset:0,space:!1}),right:V({size:300,offset:0,space:!1}),footer:V({size:0,offset:0,space:!1}),left:V({size:300,offset:0,space:!1}),scroll:M,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,s,y){H[n][s]=y}};if(ye(ae,H),Z()>0){let y=function(){n=null,s.classList.remove("hide-scrollbar")},_=function(){if(n===null){if(s.scrollHeight>r.screen.height)return;s.classList.add("hide-scrollbar")}else clearTimeout(n);n=setTimeout(y,300)},Q=function(P){n!==null&&P==="remove"&&(clearTimeout(n),y()),window[`${P}EventListener`]("resize",_)},n=null;const s=document.body;d(()=>e.container!==!0?"add":"remove",Q),e.container!==!0&&Q("add"),Ee(()=>{Q("remove")})}return()=>{const n=Ne($.default,[w(Xe,{onScroll:c}),w(de,{onResize:L})]),s=w("div",{class:a.value,style:R.value,ref:e.container===!0?void 0:f,tabindex:-1},n);return e.container===!0?w("div",{class:"q-layout-container overflow-hidden",ref:f},[w(de,{onResize:h}),w("div",{class:"absolute-full",style:S.value},[w("div",{class:"scroll",style:B.value},[s])])]):s}}});const et=Ue({name:"MainLayout",setup(){return{}}});function tt(e,$,v,r,f,u){const T=Ke("router-view");return Ge(),Je(Ze,{view:"hHh lpR fFf"},{default:ce(()=>[E(fe,{"show-if-above":"",side:"left"}),E(fe,{"show-if-above":"",side:"right"}),E(Ye,null,{default:ce(()=>[E(T)]),_:1})]),_:1})}var ot=je(et,[["render",tt]]);export{ot as default}; diff --git a/static/market/assets/MarketPage.b14abdfe.js b/static/market/assets/MarketPage.b41f466c.js similarity index 99% rename from static/market/assets/MarketPage.b14abdfe.js rename to static/market/assets/MarketPage.b41f466c.js index af861cf..d652bef 100644 --- a/static/market/assets/MarketPage.b14abdfe.js +++ b/static/market/assets/MarketPage.b41f466c.js @@ -1,4 +1,4 @@ -import{c as Je,g as I,p as E,D as bi,r as se,$ as Ya,R as Ia,n as kn,O as Gr,w as ze,o as ei,k as Gt,t as Dt,U as Ki,X as Xi,a0 as Xf,L as Wi,A as Db,u as Hu,a1 as Gu,b as Ku,a2 as $a,e as so,a3 as Ah,h as Qu,a4 as Eh,W as Do,a5 as Ha,s as Mt,V as Ft,a as ar,a6 as qb,d as lr,a7 as Pb,q as ju,a8 as Ht,a9 as xb,aa as uo,M as Ih,ab as Zu,ac as Ju,ad as ia,ae as aa,af as Ab,ag as Eb,ah as $h,ai as qo,aj as Rh,ak as Oh,al as Lh,T as qu,am as Nh,an as eh,ao as Ib,ap as $b,aq as Bh,ar as Rb,as as Fh,at as co,au as Ob,av as ge,S as mi,aw as Lb,ax as Nb,ay as Xu,i as fo,f as Cr,l as Bb,y as Fb,K as Vh,az as Vb,aA as Ub,aB as zb,E as un,aC as Uh,m as sn,aD as zh,aE as Yi,x as Wh,aF as ec,aG as Yh,aH as Hh,aI as Gh,aJ as Wb,aK as Yb,aL as th,aM as Hb,aN as Gb,aO as Kb,aP as Ra,N as Qb,Q as cu,aQ as jb,_ as Mn,G as R,aR as ne,J as y,I as _,aS as Zr,aT as S,aU as me,aV as ke,aW as $t,F as Xr,H as oe,aX as Ne,aY as ut,aZ as $e,a_ as It,a$ as io,b0 as Pu,b1 as Ut,b2 as Yt,b3 as du,b4 as Oa,b5 as Zb,b6 as Jb,b7 as _i,b8 as Xb,b9 as Zl,Y as fu,ba as nh,bb as Kh,bc as ew,bd as tw,be as nw,bf as rh,bg as rw,bh as iw,bi as aw,bj as lw}from"./index.dfb4e5db.js";import{c as ho,a as xu,n as ih,g as ah,s as lh,b as Jl,Q as ow,T as oh}from"./QResizeObserver.0b22f089.js";const sw=["top","middle","bottom"];var Tn=Je({name:"QBadge",props:{color:String,textColor:String,floating:Boolean,transparent:Boolean,multiLine:Boolean,outline:Boolean,rounded:Boolean,label:[Number,String],align:{type:String,validator:e=>sw.includes(e)}},setup(e,{slots:t}){const r=I(()=>e.align!==void 0?{verticalAlign:e.align}:null),a=I(()=>{const l=e.outline===!0&&e.color||e.textColor;return`q-badge flex inline items-center no-wrap q-badge--${e.multiLine===!0?"multi":"single"}-line`+(e.outline===!0?" q-badge--outline":e.color!==void 0?` bg-${e.color}`:"")+(l!==void 0?` text-${l}`:"")+(e.floating===!0?" q-badge--floating":"")+(e.rounded===!0?" q-badge--rounded":"")+(e.transparent===!0?" q-badge--transparent":"")});return()=>E("div",{class:a.value,style:r.value,role:"status","aria-label":e.label},bi(t.default,e.label!==void 0?[e.label]:[]))}});const Qh={target:{default:!0},noParentEvent:Boolean,contextMenu:Boolean};function jh({showing:e,avoidEmit:t,configureAnchorEl:r}){const{props:a,proxy:l,emit:s}=Dt(),u=se(null);let d=null;function f(b){return u.value===null?!1:b===void 0||b.touches===void 0||b.touches.length<=1}const g={};r===void 0&&(Object.assign(g,{hide(b){l.hide(b)},toggle(b){l.toggle(b),b.qAnchorHandled=!0},toggleKey(b){Ya(b,13)===!0&&g.toggle(b)},contextClick(b){l.hide(b),Ia(b),kn(()=>{l.show(b),b.qAnchorHandled=!0})},prevent:Ia,mobileTouch(b){if(g.mobileCleanup(b),f(b)!==!0)return;l.hide(b),u.value.classList.add("non-selectable");const x=b.target;Gr(g,"anchor",[[x,"touchmove","mobileCleanup","passive"],[x,"touchend","mobileCleanup","passive"],[x,"touchcancel","mobileCleanup","passive"],[u.value,"contextmenu","prevent","notPassive"]]),d=setTimeout(()=>{d=null,l.show(b),b.qAnchorHandled=!0},300)},mobileCleanup(b){u.value.classList.remove("non-selectable"),d!==null&&(clearTimeout(d),d=null),e.value===!0&&b!==void 0&&ho()}}),r=function(b=a.contextMenu){if(a.noParentEvent===!0||u.value===null)return;let x;b===!0?l.$q.platform.is.mobile===!0?x=[[u.value,"touchstart","mobileTouch","passive"]]:x=[[u.value,"mousedown","hide","passive"],[u.value,"contextmenu","contextClick","notPassive"]]:x=[[u.value,"click","toggle","passive"],[u.value,"keyup","toggleKey","passive"]],Gr(g,"anchor",x)});function v(){Ki(g,"anchor")}function T(b){for(u.value=b;u.value.classList.contains("q-anchor--skip");)u.value=u.value.parentNode;r()}function M(){if(a.target===!1||a.target===""||l.$el.parentNode===null)u.value=null;else if(a.target===!0)T(l.$el.parentNode);else{let b=a.target;if(typeof a.target=="string")try{b=document.querySelector(a.target)}catch{b=void 0}b!=null?(u.value=b.$el||b,r()):(u.value=null,console.error(`Anchor: target "${a.target}" not found`))}}return ze(()=>a.contextMenu,b=>{u.value!==null&&(v(),r(b))}),ze(()=>a.target,()=>{u.value!==null&&v(),M()}),ze(()=>a.noParentEvent,b=>{u.value!==null&&(b===!0?v():r())}),ei(()=>{M(),t!==!0&&a.modelValue===!0&&u.value===null&&s("update:modelValue",!1)}),Gt(()=>{d!==null&&clearTimeout(d),v()}),{anchorEl:u,canShow:f,anchorEvents:g}}function Zh(e,t){const r=se(null);let a;function l(d,f){const g=`${f!==void 0?"add":"remove"}EventListener`,v=f!==void 0?f:a;d!==window&&d[g]("scroll",v,Xi.passive),window[g]("scroll",v,Xi.passive),a=f}function s(){r.value!==null&&(l(r.value),r.value=null)}const u=ze(()=>e.noParentEvent,()=>{r.value!==null&&(s(),t())});return Gt(u),{localScrollTarget:r,unconfigureScrollTarget:s,changeScrollEvent:l}}const{notPassiveCapture:go}=Xi,pi=[];function mo(e){const t=e.target;if(t===void 0||t.nodeType===8||t.classList.contains("no-pointer-events")===!0)return;let r=Xf.length-1;for(;r>=0;){const a=Xf[r].$;if(a.type.name==="QTooltip"){r--;continue}if(a.type.name!=="QDialog")break;if(a.props.seamless!==!0)return;r--}for(let a=pi.length-1;a>=0;a--){const l=pi[a];if((l.anchorEl.value===null||l.anchorEl.value.contains(t)===!1)&&(t===document.body||l.innerRef.value!==null&&l.innerRef.value.contains(t)===!1))e.qClickOutside=!0,l.onClickOutside(e);else return}}function Jh(e){pi.push(e),pi.length===1&&(document.addEventListener("mousedown",mo,go),document.addEventListener("touchstart",mo,go))}function vo(e){const t=pi.findIndex(r=>r===e);t>-1&&(pi.splice(t,1),pi.length===0&&(document.removeEventListener("mousedown",mo,go),document.removeEventListener("touchstart",mo,go)))}let sh,uh;function po(e){const t=e.split(" ");return t.length!==2?!1:["top","center","bottom"].includes(t[0])!==!0?(console.error("Anchor/Self position must start with one of top/center/bottom"),!1):["left","middle","right","start","end"].includes(t[1])!==!0?(console.error("Anchor/Self position must end with one of left/middle/right/start/end"),!1):!0}function Xh(e){return e?!(e.length!==2||typeof e[0]!="number"||typeof e[1]!="number"):!0}const Au={"start#ltr":"left","start#rtl":"right","end#ltr":"right","end#rtl":"left"};["left","middle","right"].forEach(e=>{Au[`${e}#ltr`]=e,Au[`${e}#rtl`]=e});function yo(e,t){const r=e.split(" ");return{vertical:r[0],horizontal:Au[`${r[1]}#${t===!0?"rtl":"ltr"}`]}}function uw(e,t){let{top:r,left:a,right:l,bottom:s,width:u,height:d}=e.getBoundingClientRect();return t!==void 0&&(r-=t[1],a-=t[0],s+=t[1],l+=t[0],u+=t[0],d+=t[1]),{top:r,bottom:s,height:d,left:a,right:l,width:u,middle:a+(l-a)/2,center:r+(s-r)/2}}function cw(e,t,r){let{top:a,left:l}=e.getBoundingClientRect();return a+=t.top,l+=t.left,r!==void 0&&(a+=r[1],l+=r[0]),{top:a,bottom:a+1,height:1,left:l,right:l+1,width:1,middle:l,center:a}}function dw(e,t){return{top:0,center:t/2,bottom:t,left:0,middle:e/2,right:e}}function ch(e,t,r,a){return{top:e[r.vertical]-t[a.vertical],left:e[r.horizontal]-t[a.horizontal]}}function tc(e,t=0){if(e.targetEl===null||e.anchorEl===null||t>5)return;if(e.targetEl.offsetHeight===0||e.targetEl.offsetWidth===0){setTimeout(()=>{tc(e,t+1)},10);return}const{targetEl:r,offset:a,anchorEl:l,anchorOrigin:s,selfOrigin:u,absoluteOffset:d,fit:f,cover:g,maxHeight:v,maxWidth:T}=e;if(Wi.is.ios===!0&&window.visualViewport!==void 0){const J=document.body.style,{offsetLeft:z,offsetTop:H}=window.visualViewport;z!==sh&&(J.setProperty("--q-pe-left",z+"px"),sh=z),H!==uh&&(J.setProperty("--q-pe-top",H+"px"),uh=H)}const{scrollLeft:M,scrollTop:b}=r,x=d===void 0?uw(l,g===!0?[0,0]:a):cw(l,d,a);Object.assign(r.style,{top:0,left:0,minWidth:null,minHeight:null,maxWidth:T||"100vw",maxHeight:v||"100vh",visibility:"visible"});const{offsetWidth:$,offsetHeight:L}=r,{elWidth:F,elHeight:W}=f===!0||g===!0?{elWidth:Math.max(x.width,$),elHeight:g===!0?Math.max(x.height,L):L}:{elWidth:$,elHeight:L};let D={maxWidth:T,maxHeight:v};(f===!0||g===!0)&&(D.minWidth=x.width+"px",g===!0&&(D.minHeight=x.height+"px")),Object.assign(r.style,D);const A=dw(F,W);let N=ch(x,A,s,u);if(d===void 0||a===void 0)hu(N,x,A,s,u);else{const{top:J,left:z}=N;hu(N,x,A,s,u);let H=!1;if(N.top!==J){H=!0;const ye=2*a[1];x.center=x.top-=ye,x.bottom-=ye+2}if(N.left!==z){H=!0;const ye=2*a[0];x.middle=x.left-=ye,x.right-=ye+2}H===!0&&(N=ch(x,A,s,u),hu(N,x,A,s,u))}D={top:N.top+"px",left:N.left+"px"},N.maxHeight!==void 0&&(D.maxHeight=N.maxHeight+"px",x.height>N.maxHeight&&(D.minHeight=D.maxHeight)),N.maxWidth!==void 0&&(D.maxWidth=N.maxWidth+"px",x.width>N.maxWidth&&(D.minWidth=D.maxWidth)),Object.assign(r.style,D),r.scrollTop!==b&&(r.scrollTop=b),r.scrollLeft!==M&&(r.scrollLeft=M)}function hu(e,t,r,a,l){const s=r.bottom,u=r.right,d=Db(),f=window.innerHeight-d,g=document.body.clientWidth;if(e.top<0||e.top+s>f)if(l.vertical==="center")e.top=t[a.vertical]>f/2?Math.max(0,f-s):0,e.maxHeight=Math.min(s,f);else if(t[a.vertical]>f/2){const v=Math.min(f,a.vertical==="center"?t.center:a.vertical===l.vertical?t.bottom:t.top);e.maxHeight=Math.min(s,v),e.top=Math.max(0,v-s)}else e.top=Math.max(0,a.vertical==="center"?t.center:a.vertical===l.vertical?t.top:t.bottom),e.maxHeight=Math.min(s,f-e.top);if(e.left<0||e.left+u>g)if(e.maxWidth=Math.min(u,g),l.horizontal==="middle")e.left=t[a.horizontal]>g/2?Math.max(0,g-u):0;else if(t[a.horizontal]>g/2){const v=Math.min(g,a.horizontal==="middle"?t.middle:a.horizontal===l.horizontal?t.right:t.left);e.maxWidth=Math.min(u,v),e.left=Math.max(0,v-e.maxWidth)}else e.left=Math.max(0,a.horizontal==="middle"?t.middle:a.horizontal===l.horizontal?t.left:t.right),e.maxWidth=Math.min(u,g-e.left)}var Hr=Je({name:"QTooltip",inheritAttrs:!1,props:{...Qh,...Hu,...Gu,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null},transitionShow:{default:"jump-down"},transitionHide:{default:"jump-up"},anchor:{type:String,default:"bottom middle",validator:po},self:{type:String,default:"top middle",validator:po},offset:{type:Array,default:()=>[14,14],validator:Xh},scrollTarget:{default:void 0},delay:{type:Number,default:0},hideDelay:{type:Number,default:0}},emits:[...Ku],setup(e,{slots:t,emit:r,attrs:a}){let l,s;const u=Dt(),{proxy:{$q:d}}=u,f=se(null),g=se(!1),v=I(()=>yo(e.anchor,d.lang.rtl)),T=I(()=>yo(e.self,d.lang.rtl)),M=I(()=>e.persistent!==!0),{registerTick:b,removeTick:x}=$a(),{registerTimeout:$}=so(),{transitionProps:L,transitionStyle:F}=Ah(e),{localScrollTarget:W,changeScrollEvent:D,unconfigureScrollTarget:A}=Zh(e,X),{anchorEl:N,canShow:J,anchorEvents:z}=jh({showing:g,configureAnchorEl:rt}),{show:H,hide:ye}=Qu({showing:g,canShow:J,handleShow:te,handleHide:Pe,hideOnRouteChange:M,processOnMount:!0});Object.assign(z,{delayShow:K,delayHide:ve});const{showPortal:_e,hidePortal:Ae,renderPortal:lt}=Eh(u,f,he,"tooltip");if(d.platform.is.mobile===!0){const fe={anchorEl:N,innerRef:f,onClickOutside(Ue){return ye(Ue),Ue.target.classList.contains("q-dialog__backdrop")&&Ft(Ue),!0}},Ke=I(()=>e.modelValue===null&&e.persistent!==!0&&g.value===!0);ze(Ke,Ue=>{(Ue===!0?Jh:vo)(fe)}),Gt(()=>{vo(fe)})}function te(fe){_e(),b(()=>{s=new MutationObserver(()=>j()),s.observe(f.value,{attributes:!1,childList:!0,characterData:!0,subtree:!0}),j(),X()}),l===void 0&&(l=ze(()=>d.screen.width+"|"+d.screen.height+"|"+e.self+"|"+e.anchor+"|"+d.lang.rtl,j)),$(()=>{_e(!0),r("show",fe)},e.transitionDuration)}function Pe(fe){x(),Ae(),Be(),$(()=>{Ae(!0),r("hide",fe)},e.transitionDuration)}function Be(){s!==void 0&&(s.disconnect(),s=void 0),l!==void 0&&(l(),l=void 0),A(),Ki(z,"tooltipTemp")}function j(){tc({targetEl:f.value,offset:e.offset,anchorEl:N.value,anchorOrigin:v.value,selfOrigin:T.value,maxHeight:e.maxHeight,maxWidth:e.maxWidth})}function K(fe){if(d.platform.is.mobile===!0){ho(),document.body.classList.add("non-selectable");const Ke=N.value,Ue=["touchmove","touchcancel","touchend","click"].map(we=>[Ke,we,"delayHide","passiveCapture"]);Gr(z,"tooltipTemp",Ue)}$(()=>{H(fe)},e.delay)}function ve(fe){d.platform.is.mobile===!0&&(Ki(z,"tooltipTemp"),ho(),setTimeout(()=>{document.body.classList.remove("non-selectable")},10)),$(()=>{ye(fe)},e.hideDelay)}function rt(){if(e.noParentEvent===!0||N.value===null)return;const fe=d.platform.is.mobile===!0?[[N.value,"touchstart","delayShow","passive"]]:[[N.value,"mouseenter","delayShow","passive"],[N.value,"mouseleave","delayHide","passive"]];Gr(z,"anchor",fe)}function X(){if(N.value!==null||e.scrollTarget!==void 0){W.value=Do(N.value,e.scrollTarget);const fe=e.noParentEvent===!0?j:ye;D(W.value,fe)}}function Z(){return g.value===!0?E("div",{...a,ref:f,class:["q-tooltip q-tooltip--style q-position-engine no-pointer-events",a.class],style:[a.style,F.value],role:"tooltip"},Mt(t.default)):null}function he(){return E(Ha,L.value,Z)}return Gt(Be),Object.assign(u.proxy,{updatePosition:j}),lt}});const fw={xs:8,sm:10,md:14,lg:20,xl:24};var Ga=Je({name:"QChip",props:{...ar,...qb,dense:Boolean,icon:String,iconRight:String,iconRemove:String,iconSelected:String,label:[String,Number],color:String,textColor:String,modelValue:{type:Boolean,default:!0},selected:{type:Boolean,default:null},square:Boolean,outline:Boolean,clickable:Boolean,removable:Boolean,removeAriaLabel:String,tabindex:[String,Number],disable:Boolean,ripple:{type:[Boolean,Object],default:!0}},emits:["update:modelValue","update:selected","remove","click"],setup(e,{slots:t,emit:r}){const{proxy:{$q:a}}=Dt(),l=lr(e,a),s=Pb(e,fw),u=I(()=>e.selected===!0||e.icon!==void 0),d=I(()=>e.selected===!0?e.iconSelected||a.iconSet.chip.selected:e.icon),f=I(()=>e.iconRemove||a.iconSet.chip.remove),g=I(()=>e.disable===!1&&(e.clickable===!0||e.selected!==null)),v=I(()=>{const L=e.outline===!0&&e.color||e.textColor;return"q-chip row inline no-wrap items-center"+(e.outline===!1&&e.color!==void 0?` bg-${e.color}`:"")+(L?` text-${L} q-chip--colored`:"")+(e.disable===!0?" disabled":"")+(e.dense===!0?" q-chip--dense":"")+(e.outline===!0?" q-chip--outline":"")+(e.selected===!0?" q-chip--selected":"")+(g.value===!0?" q-chip--clickable cursor-pointer non-selectable q-hoverable":"")+(e.square===!0?" q-chip--square":"")+(l.value===!0?" q-chip--dark q-dark":"")}),T=I(()=>{const L=e.disable===!0?{tabindex:-1,"aria-disabled":"true"}:{tabindex:e.tabindex||0},F={...L,role:"button","aria-hidden":"false","aria-label":e.removeAriaLabel||a.lang.label.remove};return{chip:L,remove:F}});function M(L){L.keyCode===13&&b(L)}function b(L){e.disable||(r("update:selected",!e.selected),r("click",L))}function x(L){(L.keyCode===void 0||L.keyCode===13)&&(Ft(L),e.disable===!1&&(r("update:modelValue",!1),r("remove")))}function $(){const L=[];g.value===!0&&L.push(E("div",{class:"q-focus-helper"})),u.value===!0&&L.push(E(Ht,{class:"q-chip__icon q-chip__icon--left",name:d.value}));const F=e.label!==void 0?[E("div",{class:"ellipsis"},[e.label])]:void 0;return L.push(E("div",{class:"q-chip__content col row no-wrap items-center q-anchor--skip"},xb(t.default,F))),e.iconRight&&L.push(E(Ht,{class:"q-chip__icon q-chip__icon--right",name:e.iconRight})),e.removable===!0&&L.push(E(Ht,{class:"q-chip__icon q-chip__icon--remove cursor-pointer",name:f.value,...T.value.remove,onClick:x,onKeyup:x})),L}return()=>{if(e.modelValue===!1)return;const L={class:v.value,style:s.value};return g.value===!0&&Object.assign(L,T.value.chip,{onClick:b,onKeyup:M}),ju("div",L,$(),"ripple",e.ripple!==!1&&e.disable!==!0,()=>[[uo,e.ripple]])}}}),rr=Je({name:"QList",props:{...ar,bordered:Boolean,dense:Boolean,separator:Boolean,padding:Boolean,tag:{type:String,default:"div"}},setup(e,{slots:t}){const r=Dt(),a=lr(e,r.proxy.$q),l=I(()=>"q-list"+(e.bordered===!0?" q-list--bordered":"")+(e.dense===!0?" q-list--dense":"")+(e.separator===!0?" q-list--separator":"")+(a.value===!0?" q-list--dark":"")+(e.padding===!0?" q-list--padding":""));return()=>E(e.tag,{class:l.value},Mt(t.default))}});const hw=["horizontal","vertical","cell","none"];var gw=Je({name:"QMarkupTable",props:{...ar,dense:Boolean,flat:Boolean,bordered:Boolean,square:Boolean,wrapCells:Boolean,separator:{type:String,default:"horizontal",validator:e=>hw.includes(e)}},setup(e,{slots:t}){const r=Dt(),a=lr(e,r.proxy.$q),l=I(()=>`q-markup-table q-table__container q-table__card q-table--${e.separator}-separator`+(a.value===!0?" q-table--dark q-table__card--dark q-dark":"")+(e.dense===!0?" q-table--dense":"")+(e.flat===!0?" q-table--flat":"")+(e.bordered===!0?" q-table--bordered":"")+(e.square===!0?" q-table--square":"")+(e.wrapCells===!1?" q-table--no-wrap":""));return()=>E("div",{class:l.value},[E("table",{class:"q-table"},Mt(t.default))])}});function mw(e,t){return E("div",e,[E("table",{class:"q-table"},t)])}let Fa=!1;{const e=document.createElement("div");e.setAttribute("dir","rtl"),Object.assign(e.style,{width:"1px",height:"1px",overflow:"auto"});const t=document.createElement("div");Object.assign(t.style,{width:"1000px",height:"1px"}),document.body.appendChild(e),e.appendChild(t),e.scrollLeft=-1e3,Fa=e.scrollLeft>=0,e.remove()}const Hn=1e3,vw=["start","center","end","start-force","center-force","end-force"],eg=Array.prototype.filter,pw=window.getComputedStyle(document.body).overflowAnchor===void 0?Ih:function(e,t){e!==null&&(e._qOverflowAnimationFrame!==void 0&&cancelAnimationFrame(e._qOverflowAnimationFrame),e._qOverflowAnimationFrame=requestAnimationFrame(()=>{if(e===null)return;e._qOverflowAnimationFrame=void 0;const r=e.children||[];eg.call(r,l=>l.dataset&&l.dataset.qVsAnchor!==void 0).forEach(l=>{delete l.dataset.qVsAnchor});const a=r[t];a&&a.dataset&&(a.dataset.qVsAnchor="")}))};function Qi(e,t){return e+t}function gu(e,t,r,a,l,s,u,d){const f=e===window?document.scrollingElement||document.documentElement:e,g=l===!0?"offsetWidth":"offsetHeight",v={scrollStart:0,scrollViewSize:-u-d,scrollMaxSize:0,offsetStart:-u,offsetEnd:-d};if(l===!0?(e===window?(v.scrollStart=window.pageXOffset||window.scrollX||document.body.scrollLeft||0,v.scrollViewSize+=document.documentElement.clientWidth):(v.scrollStart=f.scrollLeft,v.scrollViewSize+=f.clientWidth),v.scrollMaxSize=f.scrollWidth,s===!0&&(v.scrollStart=(Fa===!0?v.scrollMaxSize-v.scrollViewSize:0)-v.scrollStart)):(e===window?(v.scrollStart=window.pageYOffset||window.scrollY||document.body.scrollTop||0,v.scrollViewSize+=document.documentElement.clientHeight):(v.scrollStart=f.scrollTop,v.scrollViewSize+=f.clientHeight),v.scrollMaxSize=f.scrollHeight),r!==null)for(let T=r.previousElementSibling;T!==null;T=T.previousElementSibling)T.classList.contains("q-virtual-scroll--skip")===!1&&(v.offsetStart+=T[g]);if(a!==null)for(let T=a.nextElementSibling;T!==null;T=T.nextElementSibling)T.classList.contains("q-virtual-scroll--skip")===!1&&(v.offsetEnd+=T[g]);if(t!==e){const T=f.getBoundingClientRect(),M=t.getBoundingClientRect();l===!0?(v.offsetStart+=M.left-T.left,v.offsetEnd-=M.width):(v.offsetStart+=M.top-T.top,v.offsetEnd-=M.height),e!==window&&(v.offsetStart+=v.scrollStart),v.offsetEnd+=v.scrollMaxSize-v.offsetStart}return v}function dh(e,t,r,a){t==="end"&&(t=(e===window?document.body:e)[r===!0?"scrollWidth":"scrollHeight"]),e===window?r===!0?(a===!0&&(t=(Fa===!0?document.body.scrollWidth-document.documentElement.clientWidth:0)-t),window.scrollTo(t,window.pageYOffset||window.scrollY||document.body.scrollTop||0)):window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,t):r===!0?(a===!0&&(t=(Fa===!0?e.scrollWidth-e.offsetWidth:0)-t),e.scrollLeft=t):e.scrollTop=t}function Ta(e,t,r,a){if(r>=a)return 0;const l=t.length,s=Math.floor(r/Hn),u=Math.floor((a-1)/Hn)+1;let d=e.slice(s,u).reduce(Qi,0);return r%Hn!==0&&(d-=t.slice(s*Hn,r).reduce(Qi,0)),a%Hn!==0&&a!==l&&(d-=t.slice(a,u*Hn).reduce(Qi,0)),d}const yw={virtualScrollSliceSize:{type:[Number,String],default:null},virtualScrollSliceRatioBefore:{type:[Number,String],default:1},virtualScrollSliceRatioAfter:{type:[Number,String],default:1},virtualScrollItemSize:{type:[Number,String],default:24},virtualScrollStickySizeStart:{type:[Number,String],default:0},virtualScrollStickySizeEnd:{type:[Number,String],default:0},tableColspan:[Number,String]},tg={virtualScrollHorizontal:Boolean,onVirtualScroll:Function,...yw};function ng({virtualScrollLength:e,getVirtualScrollTarget:t,getVirtualScrollEl:r,virtualScrollItemSizeComputed:a}){const l=Dt(),{props:s,emit:u,proxy:d}=l,{$q:f}=d;let g,v,T,M=[],b;const x=se(0),$=se(0),L=se({}),F=se(null),W=se(null),D=se(null),A=se({from:0,to:0}),N=I(()=>s.tableColspan!==void 0?s.tableColspan:100);a===void 0&&(a=I(()=>s.virtualScrollItemSize));const J=I(()=>a.value+";"+s.virtualScrollHorizontal),z=I(()=>J.value+";"+s.virtualScrollSliceRatioBefore+";"+s.virtualScrollSliceRatioAfter);ze(z,()=>{j()}),ze(J,H);function H(){Be(v,!0)}function ye(Z){Be(Z===void 0?v:Z)}function _e(Z,he){const fe=t();if(fe==null||fe.nodeType===8)return;const Ke=gu(fe,r(),F.value,W.value,s.virtualScrollHorizontal,f.lang.rtl,s.virtualScrollStickySizeStart,s.virtualScrollStickySizeEnd);T!==Ke.scrollViewSize&&j(Ke.scrollViewSize),lt(fe,Ke,Math.min(e.value-1,Math.max(0,parseInt(Z,10)||0)),0,vw.indexOf(he)>-1?he:v>-1&&Z>v?"end":"start")}function Ae(){const Z=t();if(Z==null||Z.nodeType===8)return;const he=gu(Z,r(),F.value,W.value,s.virtualScrollHorizontal,f.lang.rtl,s.virtualScrollStickySizeStart,s.virtualScrollStickySizeEnd),fe=e.value-1,Ke=he.scrollMaxSize-he.offsetStart-he.offsetEnd-$.value;if(g===he.scrollStart)return;if(he.scrollMaxSize<=0){lt(Z,he,0,0);return}T!==he.scrollViewSize&&j(he.scrollViewSize),te(A.value.from);const Ue=Math.floor(he.scrollMaxSize-Math.max(he.scrollViewSize,he.offsetEnd)-Math.min(b[fe],he.scrollViewSize/2));if(Ue>0&&Math.ceil(he.scrollStart)>=Ue){lt(Z,he,fe,he.scrollMaxSize-he.offsetEnd-M.reduce(Qi,0));return}let we=0,Me=he.scrollStart-he.offsetStart,ft=Me;if(Me<=Ke&&Me+he.scrollViewSize>=x.value)Me-=x.value,we=A.value.from,ft=Me;else for(let ee=0;Me>=M[ee]&&we0&&we-he.scrollViewSize?(we++,ft=Me):ft=b[we]+Me;lt(Z,he,we,ft)}function lt(Z,he,fe,Ke,Ue){const we=typeof Ue=="string"&&Ue.indexOf("-force")>-1,Me=we===!0?Ue.replace("-force",""):Ue,ft=Me!==void 0?Me:"start";let ee=Math.max(0,fe-L.value[ft]),wt=ee+L.value.total;wt>e.value&&(wt=e.value,ee=Math.max(0,wt-L.value.total)),g=he.scrollStart;const nn=ee!==A.value.from||wt!==A.value.to;if(nn===!1&&Me===void 0){ve(fe);return}const{activeElement:cn}=document,rn=D.value;nn===!0&&rn!==null&&rn!==cn&&rn.contains(cn)===!0&&(rn.addEventListener("focusout",Pe),setTimeout(()=>{rn!==null&&rn.removeEventListener("focusout",Pe)})),pw(rn,fe-ee);const qt=Me!==void 0?b.slice(ee,fe).reduce(Qi,0):0;if(nn===!0){const Kt=wt>=A.value.from&&ee<=A.value.to?A.value.to:wt;A.value={from:ee,to:Kt},x.value=Ta(M,b,0,ee),$.value=Ta(M,b,wt,e.value),requestAnimationFrame(()=>{A.value.to!==wt&&g===he.scrollStart&&(A.value={from:A.value.from,to:wt},$.value=Ta(M,b,wt,e.value))})}requestAnimationFrame(()=>{if(g!==he.scrollStart)return;nn===!0&&te(ee);const Kt=b.slice(ee,fe).reduce(Qi,0),Zn=Kt+he.offsetStart+x.value,Qt=Zn+b[fe];let Fn=Zn+Ke;if(Me!==void 0){const Ar=Kt-qt,St=he.scrollStart+Ar;Fn=we!==!0&&Stee.classList&&ee.classList.contains("q-virtual-scroll--skip")===!1),Ke=fe.length,Ue=s.virtualScrollHorizontal===!0?ee=>ee.getBoundingClientRect().width:ee=>ee.offsetHeight;let we=Z,Me,ft;for(let ee=0;ee=Ke;we--)b[we]=fe;const Ue=Math.floor((e.value-1)/Hn);M=[];for(let we=0;we<=Ue;we++){let Me=0;const ft=Math.min((we+1)*Hn,e.value);for(let ee=we*Hn;ee=0?(te(A.value.from),kn(()=>{_e(Z)})):rt()}function j(Z){if(Z===void 0&&typeof window!="undefined"){const Me=t();Me!=null&&Me.nodeType!==8&&(Z=gu(Me,r(),F.value,W.value,s.virtualScrollHorizontal,f.lang.rtl,s.virtualScrollStickySizeStart,s.virtualScrollStickySizeEnd).scrollViewSize)}T=Z;const he=parseFloat(s.virtualScrollSliceRatioBefore)||0,fe=parseFloat(s.virtualScrollSliceRatioAfter)||0,Ke=1+he+fe,Ue=Z===void 0||Z<=0?1:Math.ceil(Z/a.value),we=Math.max(1,Ue,Math.ceil((s.virtualScrollSliceSize>0?s.virtualScrollSliceSize:10)/Ke));L.value={total:Math.ceil(we*Ke),start:Math.ceil(we*he),center:Math.ceil(we*(.5+he)),end:Math.ceil(we*(1+he)),view:Ue}}function K(Z,he){const fe=s.virtualScrollHorizontal===!0?"width":"height",Ke={["--q-virtual-scroll-item-"+fe]:a.value+"px"};return[Z==="tbody"?E(Z,{class:"q-virtual-scroll__padding",key:"before",ref:F},[E("tr",[E("td",{style:{[fe]:`${x.value}px`,...Ke},colspan:N.value})])]):E(Z,{class:"q-virtual-scroll__padding",key:"before",ref:F,style:{[fe]:`${x.value}px`,...Ke}}),E(Z,{class:"q-virtual-scroll__content",key:"content",ref:D,tabindex:-1},he.flat()),Z==="tbody"?E(Z,{class:"q-virtual-scroll__padding",key:"after",ref:W},[E("tr",[E("td",{style:{[fe]:`${$.value}px`,...Ke},colspan:N.value})])]):E(Z,{class:"q-virtual-scroll__padding",key:"after",ref:W,style:{[fe]:`${$.value}px`,...Ke}})]}function ve(Z){v!==Z&&(s.onVirtualScroll!==void 0&&u("virtualScroll",{index:Z,from:A.value.from,to:A.value.to-1,direction:Z{j()});let X=!1;return ia(()=>{X=!0}),aa(()=>{if(X!==!0)return;const Z=t();g!==void 0&&Z!==void 0&&Z!==null&&Z.nodeType!==8?dh(Z,g,s.virtualScrollHorizontal,f.lang.rtl):_e(v)}),Gt(()=>{rt.cancel()}),Object.assign(d,{scrollTo:_e,reset:H,refresh:ye}),{virtualScrollSliceRange:A,virtualScrollSliceSizeComputed:L,setVirtualScrollSize:j,onVirtualScrollEvt:rt,localResetVirtualScroll:Be,padVirtualScroll:K,scrollTo:_e,reset:H,refresh:ye}}const _w={list:rr,table:gw},bw=["list","table","__qtable"];var nc=Je({name:"QVirtualScroll",props:{...tg,type:{type:String,default:"list",validator:e=>bw.includes(e)},items:{type:Array,default:()=>[]},itemsFn:Function,itemsSize:Number,scrollTarget:{default:void 0}},setup(e,{slots:t,attrs:r}){let a;const l=se(null),s=I(()=>e.itemsSize>=0&&e.itemsFn!==void 0?parseInt(e.itemsSize,10):Array.isArray(e.items)?e.items.length:0),{virtualScrollSliceRange:u,localResetVirtualScroll:d,padVirtualScroll:f,onVirtualScrollEvt:g}=ng({virtualScrollLength:s,getVirtualScrollTarget:x,getVirtualScrollEl:b}),v=I(()=>{if(s.value===0)return[];const W=(D,A)=>({index:u.value.from+A,item:D});return e.itemsFn===void 0?e.items.slice(u.value.from,u.value.to).map(W):e.itemsFn(u.value.from,u.value.to-u.value.from).map(W)}),T=I(()=>"q-virtual-scroll q-virtual-scroll"+(e.virtualScrollHorizontal===!0?"--horizontal":"--vertical")+(e.scrollTarget!==void 0?"":" scroll")),M=I(()=>e.scrollTarget!==void 0?{}:{tabindex:0});ze(s,()=>{d()}),ze(()=>e.scrollTarget,()=>{L(),$()});function b(){return l.value.$el||l.value}function x(){return a}function $(){a=Do(b(),e.scrollTarget),a.addEventListener("scroll",g,Xi.passive)}function L(){a!==void 0&&(a.removeEventListener("scroll",g,Xi.passive),a=void 0)}function F(){let W=f(e.type==="list"?"div":"tbody",v.value.map(t.default));return t.before!==void 0&&(W=t.before().concat(W)),bi(t.after,W)}return Ju(()=>{d()}),ei(()=>{$()}),aa(()=>{$()}),ia(()=>{L()}),Gt(()=>{L()}),()=>{if(t.default===void 0){console.error("QVirtualScroll: default scoped slot is required for rendering");return}return e.type==="__qtable"?mw({ref:l,class:"q-table__middle "+T.value},F()):E(_w[e.type],{...r,ref:l,class:[r.class,T.value],...M.value},F)}}});const ww=[E("circle",{cx:"15",cy:"15",r:"15"},[E("animate",{attributeName:"r",from:"15",to:"15",begin:"0s",dur:"0.8s",values:"15;9;15",calcMode:"linear",repeatCount:"indefinite"}),E("animate",{attributeName:"fill-opacity",from:"1",to:"1",begin:"0s",dur:"0.8s",values:"1;.5;1",calcMode:"linear",repeatCount:"indefinite"})]),E("circle",{cx:"60",cy:"15",r:"9","fill-opacity":".3"},[E("animate",{attributeName:"r",from:"9",to:"9",begin:"0s",dur:"0.8s",values:"9;15;9",calcMode:"linear",repeatCount:"indefinite"}),E("animate",{attributeName:"fill-opacity",from:".5",to:".5",begin:"0s",dur:"0.8s",values:".5;1;.5",calcMode:"linear",repeatCount:"indefinite"})]),E("circle",{cx:"105",cy:"15",r:"15"},[E("animate",{attributeName:"r",from:"15",to:"15",begin:"0s",dur:"0.8s",values:"15;9;15",calcMode:"linear",repeatCount:"indefinite"}),E("animate",{attributeName:"fill-opacity",from:"1",to:"1",begin:"0s",dur:"0.8s",values:"1;.5;1",calcMode:"linear",repeatCount:"indefinite"})])];var Eu=Je({name:"QSpinnerDots",props:Ab,setup(e){const{cSize:t,classes:r}=Eb(e);return()=>E("svg",{class:r.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 120 30",xmlns:"http://www.w3.org/2000/svg"},ww)}});const Sw={ratio:[String,Number]};function kw(e,t){return I(()=>{const r=Number(e.ratio||(t!==void 0?t.value:void 0));return isNaN(r)!==!0&&r>0?{paddingBottom:`${100/r}%`}:null})}const Cw=16/9;var rc=Je({name:"QImg",props:{...Sw,src:String,srcset:String,sizes:String,alt:String,crossorigin:String,decoding:String,referrerpolicy:String,draggable:Boolean,loading:{type:String,default:"lazy"},fetchpriority:{type:String,default:"auto"},width:String,height:String,initialRatio:{type:[Number,String],default:Cw},placeholderSrc:String,fit:{type:String,default:"cover"},position:{type:String,default:"50% 50%"},imgClass:String,imgStyle:Object,noSpinner:Boolean,noNativeMenu:Boolean,noTransition:Boolean,spinnerColor:String,spinnerSize:String},emits:["load","error"],setup(e,{slots:t,emit:r}){const a=se(e.initialRatio),l=kw(e,a);let s=null,u=!1;const d=[se(null),se(L())],f=se(0),g=se(!1),v=se(!1),T=I(()=>`q-img q-img--${e.noNativeMenu===!0?"no-":""}menu`),M=I(()=>({width:e.width,height:e.height})),b=I(()=>`q-img__image ${e.imgClass!==void 0?e.imgClass+" ":""}q-img__image--with${e.noTransition===!0?"out":""}-transition`),x=I(()=>({...e.imgStyle,objectFit:e.fit,objectPosition:e.position}));ze(()=>$(),F);function $(){return e.src||e.srcset||e.sizes?{src:e.src,srcset:e.srcset,sizes:e.sizes}:null}function L(){return e.placeholderSrc!==void 0?{src:e.placeholderSrc}:null}function F(H){s!==null&&(clearTimeout(s),s=null),v.value=!1,H===null?(g.value=!1,d[f.value^1].value=L()):g.value=!0,d[f.value].value=H}function W({target:H}){u!==!0&&(s!==null&&(clearTimeout(s),s=null),a.value=H.naturalHeight===0?.5:H.naturalWidth/H.naturalHeight,D(H,1))}function D(H,ye){u===!0||ye===1e3||(H.complete===!0?A(H):s=setTimeout(()=>{s=null,D(H,ye+1)},50))}function A(H){u!==!0&&(f.value=f.value^1,d[f.value].value=null,g.value=!1,v.value=!1,r("load",H.currentSrc||H.src))}function N(H){s!==null&&(clearTimeout(s),s=null),g.value=!1,v.value=!0,d[f.value].value=null,d[f.value^1].value=L(),r("error",H)}function J(H){const ye=d[H].value,_e={key:"img_"+H,class:b.value,style:x.value,crossorigin:e.crossorigin,decoding:e.decoding,referrerpolicy:e.referrerpolicy,height:e.height,width:e.width,loading:e.loading,fetchpriority:e.fetchpriority,"aria-hidden":"true",draggable:e.draggable,...ye};return f.value===H?(_e.class+=" q-img__image--waiting",Object.assign(_e,{onLoad:W,onError:N})):_e.class+=" q-img__image--loaded",E("div",{class:"q-img__container absolute-full",key:"img"+H},E("img",_e))}function z(){return g.value!==!0?E("div",{key:"content",class:"q-img__content absolute-full q-anchor--skip"},Mt(t[v.value===!0?"error":"default"])):E("div",{key:"loading",class:"q-img__loading absolute-full flex flex-center"},t.loading!==void 0?t.loading():e.noSpinner===!0?void 0:[E($h,{color:e.spinnerColor,size:e.spinnerSize})])}return F($()),Gt(()=>{u=!0,s!==null&&(clearTimeout(s),s=null)}),()=>{const H=[];return l.value!==null&&H.push(E("div",{key:"filler",style:l.value})),v.value!==!0&&(d[0].value!==null&&H.push(J(0)),d[1].value!==null&&H.push(J(1))),H.push(E(Ha,{name:"q-transition--fade"},z)),E("div",{class:T.value,style:M.value,role:"img","aria-label":e.alt},H)}}}),Tw=Je({name:"QBanner",props:{...ar,inlineActions:Boolean,dense:Boolean,rounded:Boolean},setup(e,{slots:t}){const{proxy:{$q:r}}=Dt(),a=lr(e,r),l=I(()=>"q-banner row items-center"+(e.dense===!0?" q-banner--dense":"")+(a.value===!0?" q-banner--dark q-dark":"")+(e.rounded===!0?" rounded-borders":"")),s=I(()=>`q-banner__actions row items-center justify-end col-${e.inlineActions===!0?"auto":"all"}`);return()=>{const u=[E("div",{class:"q-banner__avatar col-auto row items-center self-start"},Mt(t.avatar)),E("div",{class:"q-banner__content col text-body2"},Mt(t.default))],d=Mt(t.action);return d!==void 0&&u.push(E("div",{class:s.value},d)),E("div",{class:l.value+(e.inlineActions===!1&&d!==void 0?" q-banner--top-padding":""),role:"alert"},u)}}}),xe=Je({name:"QItemSection",props:{avatar:Boolean,thumbnail:Boolean,side:Boolean,top:Boolean,noWrap:Boolean},setup(e,{slots:t}){const r=I(()=>`q-item__section column q-item__section--${e.avatar===!0||e.side===!0||e.thumbnail===!0?"side":"main"}`+(e.top===!0?" q-item__section--top justify-start":" justify-center")+(e.avatar===!0?" q-item__section--avatar":"")+(e.thumbnail===!0?" q-item__section--thumbnail":"")+(e.noWrap===!0?" q-item__section--nowrap":""));return()=>E("div",{class:r.value},Mt(t.default))}}),He=Je({name:"QItemLabel",props:{overline:Boolean,caption:Boolean,header:Boolean,lines:[Number,String]},setup(e,{slots:t}){const r=I(()=>parseInt(e.lines,10)),a=I(()=>"q-item__label"+(e.overline===!0?" q-item__label--overline text-overline":"")+(e.caption===!0?" q-item__label--caption text-caption":"")+(e.header===!0?" q-item__label--header":"")+(r.value===1?" ellipsis":"")),l=I(()=>e.lines!==void 0&&r.value>1?{overflow:"hidden",display:"-webkit-box","-webkit-box-orient":"vertical","-webkit-line-clamp":r.value}:null);return()=>E("div",{style:l.value,class:a.value},Mt(t.default))}}),Vt=Je({name:"QItem",props:{...ar,...qo,tag:{type:String,default:"div"},active:{type:Boolean,default:null},clickable:Boolean,dense:Boolean,insetLevel:Number,tabindex:[String,Number],focused:Boolean,manualFocus:Boolean},emits:["click","keyup"],setup(e,{slots:t,emit:r}){const{proxy:{$q:a}}=Dt(),l=lr(e,a),{hasLink:s,linkAttrs:u,linkClass:d,linkTag:f,navigateOnClick:g}=Rh(),v=se(null),T=se(null),M=I(()=>e.clickable===!0||s.value===!0||e.tag==="label"),b=I(()=>e.disable!==!0&&M.value===!0),x=I(()=>"q-item q-item-type row no-wrap"+(e.dense===!0?" q-item--dense":"")+(l.value===!0?" q-item--dark":"")+(s.value===!0&&e.active===null?d.value:e.active===!0?` q-item--active${e.activeClass!==void 0?` ${e.activeClass}`:""}`:"")+(e.disable===!0?" disabled":"")+(b.value===!0?" q-item--clickable q-link cursor-pointer "+(e.manualFocus===!0?"q-manual-focusable":"q-focusable q-hoverable")+(e.focused===!0?" q-manual-focusable--focused":""):"")),$=I(()=>{if(e.insetLevel===void 0)return null;const D=a.lang.rtl===!0?"Right":"Left";return{["padding"+D]:16+e.insetLevel*56+"px"}});function L(D){b.value===!0&&(T.value!==null&&(D.qKeyEvent!==!0&&document.activeElement===v.value?T.value.focus():document.activeElement===T.value&&v.value.focus()),g(D))}function F(D){if(b.value===!0&&Ya(D,13)===!0){Ft(D),D.qKeyEvent=!0;const A=new MouseEvent("click",D);A.qKeyEvent=!0,v.value.dispatchEvent(A)}r("keyup",D)}function W(){const D=Oh(t.default,[]);return b.value===!0&&D.unshift(E("div",{class:"q-focus-helper",tabindex:-1,ref:T})),D}return()=>{const D={ref:v,class:x.value,style:$.value,role:"listitem",onClick:L,onKeyup:F};return b.value===!0?(D.tabindex=e.tabindex||"0",Object.assign(D,u.value)):M.value===!0&&(D["aria-disabled"]="true"),E(f.value,D,W())}}}),Mw=Je({name:"QBtnGroup",props:{unelevated:Boolean,outline:Boolean,flat:Boolean,rounded:Boolean,square:Boolean,push:Boolean,stretch:Boolean,glossy:Boolean,spread:Boolean},setup(e,{slots:t}){const r=I(()=>{const a=["unelevated","outline","flat","rounded","square","push","stretch","glossy"].filter(l=>e[l]===!0).map(l=>`q-btn-group--${l}`).join(" ");return`q-btn-group row no-wrap${a.length!==0?" "+a:""}`+(e.spread===!0?" q-btn-group--spread":" inline")});return()=>E("div",{class:r.value},Mt(t.default))}}),rg=Je({name:"QMenu",inheritAttrs:!1,props:{...Qh,...Hu,...ar,...Gu,persistent:Boolean,autoClose:Boolean,separateClosePopup:Boolean,noRouteDismiss:Boolean,noRefocus:Boolean,noFocus:Boolean,fit:Boolean,cover:Boolean,square:Boolean,anchor:{type:String,validator:po},self:{type:String,validator:po},offset:{type:Array,validator:Xh},scrollTarget:{default:void 0},touchPosition:Boolean,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null}},emits:[...Ku,"click","escapeKey"],setup(e,{slots:t,emit:r,attrs:a}){let l=null,s,u,d;const f=Dt(),{proxy:g}=f,{$q:v}=g,T=se(null),M=se(!1),b=I(()=>e.persistent!==!0&&e.noRouteDismiss!==!0),x=lr(e,v),{registerTick:$,removeTick:L}=$a(),{registerTimeout:F}=so(),{transitionProps:W,transitionStyle:D}=Ah(e),{localScrollTarget:A,changeScrollEvent:N,unconfigureScrollTarget:J}=Zh(e,fe),{anchorEl:z,canShow:H}=jh({showing:M}),{hide:ye}=Qu({showing:M,canShow:H,handleShow:X,handleHide:Z,hideOnRouteChange:b,processOnMount:!0}),{showPortal:_e,hidePortal:Ae,renderPortal:lt}=Eh(f,T,ft,"menu"),te={anchorEl:z,innerRef:T,onClickOutside(ee){if(e.persistent!==!0&&M.value===!0)return ye(ee),(ee.type==="touchstart"||ee.target.classList.contains("q-dialog__backdrop"))&&Ft(ee),!0}},Pe=I(()=>yo(e.anchor||(e.cover===!0?"center middle":"bottom start"),v.lang.rtl)),Be=I(()=>e.cover===!0?Pe.value:yo(e.self||"top start",v.lang.rtl)),j=I(()=>(e.square===!0?" q-menu--square":"")+(x.value===!0?" q-menu--dark q-dark":"")),K=I(()=>e.autoClose===!0?{onClick:Ke}:{}),ve=I(()=>M.value===!0&&e.persistent!==!0);ze(ve,ee=>{ee===!0?($b(we),Jh(te)):(eh(we),vo(te))});function rt(){Bh(()=>{let ee=T.value;ee&&ee.contains(document.activeElement)!==!0&&(ee=ee.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||ee.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||ee.querySelector("[autofocus], [data-autofocus]")||ee,ee.focus({preventScroll:!0}))})}function X(ee){if(l=e.noRefocus===!1?document.activeElement:null,Lh(Ue),_e(),fe(),s=void 0,ee!==void 0&&(e.touchPosition||e.contextMenu)){const wt=qu(ee);if(wt.left!==void 0){const{top:nn,left:cn}=z.value.getBoundingClientRect();s={left:wt.left-cn,top:wt.top-nn}}}u===void 0&&(u=ze(()=>v.screen.width+"|"+v.screen.height+"|"+e.self+"|"+e.anchor+"|"+v.lang.rtl,Me)),e.noFocus!==!0&&document.activeElement.blur(),$(()=>{Me(),e.noFocus!==!0&&rt()}),F(()=>{v.platform.is.ios===!0&&(d=e.autoClose,T.value.click()),Me(),_e(!0),r("show",ee)},e.transitionDuration)}function Z(ee){L(),Ae(),he(!0),l!==null&&(ee===void 0||ee.qClickOutside!==!0)&&(((ee&&ee.type.indexOf("key")===0?l.closest('[tabindex]:not([tabindex^="-"])'):void 0)||l).focus(),l=null),F(()=>{Ae(!0),r("hide",ee)},e.transitionDuration)}function he(ee){s=void 0,u!==void 0&&(u(),u=void 0),(ee===!0||M.value===!0)&&(Nh(Ue),J(),vo(te),eh(we)),ee!==!0&&(l=null)}function fe(){(z.value!==null||e.scrollTarget!==void 0)&&(A.value=Do(z.value,e.scrollTarget),N(A.value,Me))}function Ke(ee){d!==!0?(Ib(g,ee),r("click",ee)):d=!1}function Ue(ee){ve.value===!0&&e.noFocus!==!0&&Rb(T.value,ee.target)!==!0&&rt()}function we(ee){r("escapeKey"),ye(ee)}function Me(){tc({targetEl:T.value,offset:e.offset,anchorEl:z.value,anchorOrigin:Pe.value,selfOrigin:Be.value,absoluteOffset:s,fit:e.fit,cover:e.cover,maxHeight:e.maxHeight,maxWidth:e.maxWidth})}function ft(){return E(Ha,W.value,()=>M.value===!0?E("div",{role:"menu",...a,ref:T,tabindex:-1,class:["q-menu q-position-engine scroll"+j.value,a.class],style:[a.style,D.value],...K.value},Mt(t.default)):null)}return Gt(he),Object.assign(g,{focus:rt,updatePosition:Me}),lt}});const Dw=Object.keys(Fh),qw=e=>Dw.reduce((t,r)=>{const a=e[r];return a!==void 0&&(t[r]=a),t},{});var Iu=Je({name:"QBtnDropdown",props:{...Fh,...Gu,modelValue:Boolean,split:Boolean,dropdownIcon:String,contentClass:[Array,String,Object],contentStyle:[Array,String,Object],cover:Boolean,persistent:Boolean,noRouteDismiss:Boolean,autoClose:Boolean,menuAnchor:{type:String,default:"bottom end"},menuSelf:{type:String,default:"top end"},menuOffset:Array,disableMainBtn:Boolean,disableDropdown:Boolean,noIconAnimation:Boolean,toggleAriaLabel:String},emits:["update:modelValue","click","beforeShow","show","beforeHide","hide"],setup(e,{slots:t,emit:r}){const{proxy:a}=Dt(),l=se(e.modelValue),s=se(null),u=co(),d=I(()=>{const A={"aria-expanded":l.value===!0?"true":"false","aria-haspopup":"true","aria-controls":u,"aria-label":e.toggleAriaLabel||a.$q.lang.label[l.value===!0?"collapse":"expand"](e.label)};return(e.disable===!0||e.split===!1&&e.disableMainBtn===!0||e.disableDropdown===!0)&&(A["aria-disabled"]="true"),A}),f=I(()=>"q-btn-dropdown__arrow"+(l.value===!0&&e.noIconAnimation===!1?" rotate-180":"")+(e.split===!1?" q-btn-dropdown__arrow-container":"")),g=I(()=>Ob(e)),v=I(()=>qw(e));ze(()=>e.modelValue,A=>{s.value!==null&&s.value[A?"show":"hide"]()}),ze(()=>e.split,D);function T(A){l.value=!0,r("beforeShow",A)}function M(A){r("show",A),r("update:modelValue",!0)}function b(A){l.value=!1,r("beforeHide",A)}function x(A){r("hide",A),r("update:modelValue",!1)}function $(A){r("click",A)}function L(A){mi(A),D(),r("click",A)}function F(A){s.value!==null&&s.value.toggle(A)}function W(A){s.value!==null&&s.value.show(A)}function D(A){s.value!==null&&s.value.hide(A)}return Object.assign(a,{show:W,hide:D,toggle:F}),ei(()=>{e.modelValue===!0&&W()}),()=>{const A=[E(Ht,{class:f.value,name:e.dropdownIcon||a.$q.iconSet.arrow.dropdown})];return e.disableDropdown!==!0&&A.push(E(rg,{ref:s,id:u,class:e.contentClass,style:e.contentStyle,cover:e.cover,fit:!0,persistent:e.persistent,noRouteDismiss:e.noRouteDismiss,autoClose:e.autoClose,anchor:e.menuAnchor,self:e.menuSelf,offset:e.menuOffset,separateClosePopup:!0,transitionShow:e.transitionShow,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,onBeforeShow:T,onShow:M,onBeforeHide:b,onHide:x},t.default)),e.split===!1?E(ge,{class:"q-btn-dropdown q-btn-dropdown--simple",...v.value,...d.value,disable:e.disable===!0||e.disableMainBtn===!0,noWrap:!0,round:!1,onClick:$},{default:()=>Mt(t.label,[]).concat(A),loading:t.loading}):E(Mw,{class:"q-btn-dropdown q-btn-dropdown--split no-wrap q-btn-item",rounded:e.rounded,square:e.square,...g.value,glossy:e.glossy,stretch:e.stretch},()=>[E(ge,{class:"q-btn-dropdown--current",...v.value,disable:e.disable===!0||e.disableMainBtn===!0,noWrap:!0,round:!1,onClick:L},{default:t.label,loading:t.loading}),E(ge,{class:"q-btn-dropdown__arrow-container q-anchor--skip",...d.value,...g.value,disable:e.disable===!0||e.disableDropdown===!0,rounded:e.rounded,color:e.color,textColor:e.textColor,dense:e.dense,size:e.size,padding:e.padding,ripple:e.ripple},()=>A)])}}}),br=Je({name:"QBreadcrumbsEl",props:{...qo,label:String,icon:String,tag:{type:String,default:"span"}},emits:["click"],setup(e,{slots:t}){const{linkTag:r,linkAttrs:a,linkClass:l,navigateOnClick:s}=Rh(),u=I(()=>({class:"q-breadcrumbs__el q-link flex inline items-center relative-position "+(e.disable!==!0?"q-link--focusable"+l.value:"q-breadcrumbs__el--disable"),...a.value,onClick:s})),d=I(()=>"q-breadcrumbs__el-icon"+(e.label!==void 0?" q-breadcrumbs__el-icon--with-label":""));return()=>{const f=[];return e.icon!==void 0&&f.push(E(Ht,{class:d.value,name:e.icon})),e.label!==void 0&&f.push(e.label),E(r.value,{...u.value},bi(t.default,f))}}});const Pw=["",!0];var xw=Je({name:"QBreadcrumbs",props:{...Lb,separator:{type:String,default:"/"},separatorColor:String,activeColor:{type:String,default:"primary"},gutter:{type:String,validator:e=>["none","xs","sm","md","lg","xl"].includes(e),default:"sm"}},setup(e,{slots:t}){const r=Nb(e),a=I(()=>`flex items-center ${r.value}${e.gutter==="none"?"":` q-gutter-${e.gutter}`}`),l=I(()=>e.separatorColor?` text-${e.separatorColor}`:""),s=I(()=>` text-${e.activeColor}`);return()=>{const u=Xu(Mt(t.default));if(u.length===0)return;let d=1;const f=[],g=u.filter(T=>T.type!==void 0&&T.type.name==="QBreadcrumbsEl").length,v=t.separator!==void 0?t.separator:()=>e.separator;return u.forEach(T=>{if(T.type!==void 0&&T.type.name==="QBreadcrumbsEl"){const M=d{const d=(a.header.space===!0?a.header.size:0)+(a.footer.space===!0?a.footer.size:0);if(typeof e.styleFn=="function"){const f=a.isContainer.value===!0?a.containerHeight.value:r.screen.height;return e.styleFn(d,f)}return{minHeight:a.isContainer.value===!0?a.containerHeight.value-d+"px":r.screen.height===0?d!==0?`calc(100vh - ${d}px)`:"100vh":r.screen.height-d+"px"}}),u=I(()=>`q-page${e.padding===!0?" q-layout-padding":""}`);return()=>E("main",{class:u.value,style:s.value},Mt(t.default))}});const Ew=E("div",{class:"q-space"});var Iw=Je({name:"QSpace",setup(){return()=>Ew}});function fh(e){if(e===!1)return 0;if(e===!0||e===void 0)return 1;const t=parseInt(e,10);return isNaN(t)?0:t}var Sr=Vh({name:"close-popup",beforeMount(e,{value:t}){const r={depth:fh(t),handler(a){r.depth!==0&&setTimeout(()=>{const l=Vb(e);l!==void 0&&Ub(l,a,r.depth)})},handlerKey(a){Ya(a,13)===!0&&r.handler(a)}};e.__qclosepopup=r,e.addEventListener("click",r.handler),e.addEventListener("keyup",r.handlerKey)},updated(e,{value:t,oldValue:r}){t!==r&&(e.__qclosepopup.depth=fh(t))},beforeUnmount(e){const t=e.__qclosepopup;e.removeEventListener("click",t.handler),e.removeEventListener("keyup",t.handlerKey),delete e.__qclosepopup}});function $w(){return fo(zb)}var Ma=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{},Rw=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then},ig={},Dn={};let ic;const Ow=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];Dn.getSymbolSize=function(t){if(!t)throw new Error('"version" cannot be null or undefined');if(t<1||t>40)throw new Error('"version" should be in range from 1 to 40');return t*4+17};Dn.getSymbolTotalCodewords=function(t){return Ow[t]};Dn.getBCHDigit=function(e){let t=0;for(;e!==0;)t++,e>>>=1;return t};Dn.setToSJISFunction=function(t){if(typeof t!="function")throw new Error('"toSJISFunc" is not a valid function.');ic=t};Dn.isKanjiModeEnabled=function(){return typeof ic!="undefined"};Dn.toSJIS=function(t){return ic(t)};var Po={};(function(e){e.L={bit:1},e.M={bit:0},e.Q={bit:3},e.H={bit:2};function t(r){if(typeof r!="string")throw new Error("Param is not a string");switch(r.toLowerCase()){case"l":case"low":return e.L;case"m":case"medium":return e.M;case"q":case"quartile":return e.Q;case"h":case"high":return e.H;default:throw new Error("Unknown EC Level: "+r)}}e.isValid=function(a){return a&&typeof a.bit!="undefined"&&a.bit>=0&&a.bit<4},e.from=function(a,l){if(e.isValid(a))return a;try{return t(a)}catch{return l}}})(Po);function ag(){this.buffer=[],this.length=0}ag.prototype={get:function(e){const t=Math.floor(e/8);return(this.buffer[t]>>>7-e%8&1)===1},put:function(e,t){for(let r=0;r>>t-r-1&1)===1)},getLengthInBits:function(){return this.length},putBit:function(e){const t=Math.floor(this.length/8);this.buffer.length<=t&&this.buffer.push(0),e&&(this.buffer[t]|=128>>>this.length%8),this.length++}};var Lw=ag;function Ka(e){if(!e||e<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=e,this.data=new Uint8Array(e*e),this.reservedBit=new Uint8Array(e*e)}Ka.prototype.set=function(e,t,r,a){const l=e*this.size+t;this.data[l]=r,a&&(this.reservedBit[l]=!0)};Ka.prototype.get=function(e,t){return this.data[e*this.size+t]};Ka.prototype.xor=function(e,t,r){this.data[e*this.size+t]^=r};Ka.prototype.isReserved=function(e,t){return this.reservedBit[e*this.size+t]};var Nw=Ka,lg={};(function(e){const t=Dn.getSymbolSize;e.getRowColCoords=function(a){if(a===1)return[];const l=Math.floor(a/7)+2,s=t(a),u=s===145?26:Math.ceil((s-13)/(2*l-2))*2,d=[s-7];for(let f=1;f=0&&l<=7},e.from=function(l){return e.isValid(l)?parseInt(l,10):void 0},e.getPenaltyN1=function(l){const s=l.size;let u=0,d=0,f=0,g=null,v=null;for(let T=0;T=5&&(u+=t.N1+(d-5)),g=b,d=1),b=l.get(M,T),b===v?f++:(f>=5&&(u+=t.N1+(f-5)),v=b,f=1)}d>=5&&(u+=t.N1+(d-5)),f>=5&&(u+=t.N1+(f-5))}return u},e.getPenaltyN2=function(l){const s=l.size;let u=0;for(let d=0;d=10&&(d===1488||d===93)&&u++,f=f<<1&2047|l.get(v,g),v>=10&&(f===1488||f===93)&&u++}return u*t.N3},e.getPenaltyN4=function(l){let s=0;const u=l.data.length;for(let f=0;f=0;){const u=s[0];for(let f=0;f0){const s=new Uint8Array(this.degree);return s.set(a,l),s}return a};var Fw=ac,dg={},ti={},lc={};lc.isValid=function(t){return!isNaN(t)&&t>=1&&t<=40};var or={};const fg="[0-9]+",Vw="[A-Z $%*+\\-./:]+";let Va="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";Va=Va.replace(/u/g,"\\u");const Uw="(?:(?![A-Z0-9 $%*+\\-./:]|"+Va+`)(?:.|[\r +import{c as Je,g as I,p as E,D as bi,r as se,$ as Ya,R as Ia,n as kn,O as Gr,w as ze,o as ei,k as Gt,t as Dt,U as Ki,X as Xi,a0 as Xf,L as Wi,A as Db,u as Hu,a1 as Gu,b as Ku,a2 as $a,e as so,a3 as Ah,h as Qu,a4 as Eh,W as Do,a5 as Ha,s as Mt,V as Ft,a as ar,a6 as qb,d as lr,a7 as Pb,q as ju,a8 as Ht,a9 as xb,aa as uo,M as Ih,ab as Zu,ac as Ju,ad as ia,ae as aa,af as Ab,ag as Eb,ah as $h,ai as qo,aj as Rh,ak as Oh,al as Lh,T as qu,am as Nh,an as eh,ao as Ib,ap as $b,aq as Bh,ar as Rb,as as Fh,at as co,au as Ob,av as ge,S as mi,aw as Lb,ax as Nb,ay as Xu,i as fo,f as Cr,l as Bb,y as Fb,K as Vh,az as Vb,aA as Ub,aB as zb,E as un,aC as Uh,m as sn,aD as zh,aE as Yi,x as Wh,aF as ec,aG as Yh,aH as Hh,aI as Gh,aJ as Wb,aK as Yb,aL as th,aM as Hb,aN as Gb,aO as Kb,aP as Ra,N as Qb,Q as cu,aQ as jb,_ as Mn,G as R,aR as ne,J as y,I as _,aS as Zr,aT as S,aU as me,aV as ke,aW as $t,F as Xr,H as oe,aX as Ne,aY as ut,aZ as $e,a_ as It,a$ as io,b0 as Pu,b1 as Ut,b2 as Yt,b3 as du,b4 as Oa,b5 as Zb,b6 as Jb,b7 as _i,b8 as Xb,b9 as Zl,Y as fu,ba as nh,bb as Kh,bc as ew,bd as tw,be as nw,bf as rh,bg as rw,bh as iw,bi as aw,bj as lw}from"./index.70852868.js";import{c as ho,a as xu,n as ih,g as ah,s as lh,b as Jl,Q as ow,T as oh}from"./QResizeObserver.43113a5e.js";const sw=["top","middle","bottom"];var Tn=Je({name:"QBadge",props:{color:String,textColor:String,floating:Boolean,transparent:Boolean,multiLine:Boolean,outline:Boolean,rounded:Boolean,label:[Number,String],align:{type:String,validator:e=>sw.includes(e)}},setup(e,{slots:t}){const r=I(()=>e.align!==void 0?{verticalAlign:e.align}:null),a=I(()=>{const l=e.outline===!0&&e.color||e.textColor;return`q-badge flex inline items-center no-wrap q-badge--${e.multiLine===!0?"multi":"single"}-line`+(e.outline===!0?" q-badge--outline":e.color!==void 0?` bg-${e.color}`:"")+(l!==void 0?` text-${l}`:"")+(e.floating===!0?" q-badge--floating":"")+(e.rounded===!0?" q-badge--rounded":"")+(e.transparent===!0?" q-badge--transparent":"")});return()=>E("div",{class:a.value,style:r.value,role:"status","aria-label":e.label},bi(t.default,e.label!==void 0?[e.label]:[]))}});const Qh={target:{default:!0},noParentEvent:Boolean,contextMenu:Boolean};function jh({showing:e,avoidEmit:t,configureAnchorEl:r}){const{props:a,proxy:l,emit:s}=Dt(),u=se(null);let d=null;function f(b){return u.value===null?!1:b===void 0||b.touches===void 0||b.touches.length<=1}const g={};r===void 0&&(Object.assign(g,{hide(b){l.hide(b)},toggle(b){l.toggle(b),b.qAnchorHandled=!0},toggleKey(b){Ya(b,13)===!0&&g.toggle(b)},contextClick(b){l.hide(b),Ia(b),kn(()=>{l.show(b),b.qAnchorHandled=!0})},prevent:Ia,mobileTouch(b){if(g.mobileCleanup(b),f(b)!==!0)return;l.hide(b),u.value.classList.add("non-selectable");const x=b.target;Gr(g,"anchor",[[x,"touchmove","mobileCleanup","passive"],[x,"touchend","mobileCleanup","passive"],[x,"touchcancel","mobileCleanup","passive"],[u.value,"contextmenu","prevent","notPassive"]]),d=setTimeout(()=>{d=null,l.show(b),b.qAnchorHandled=!0},300)},mobileCleanup(b){u.value.classList.remove("non-selectable"),d!==null&&(clearTimeout(d),d=null),e.value===!0&&b!==void 0&&ho()}}),r=function(b=a.contextMenu){if(a.noParentEvent===!0||u.value===null)return;let x;b===!0?l.$q.platform.is.mobile===!0?x=[[u.value,"touchstart","mobileTouch","passive"]]:x=[[u.value,"mousedown","hide","passive"],[u.value,"contextmenu","contextClick","notPassive"]]:x=[[u.value,"click","toggle","passive"],[u.value,"keyup","toggleKey","passive"]],Gr(g,"anchor",x)});function v(){Ki(g,"anchor")}function T(b){for(u.value=b;u.value.classList.contains("q-anchor--skip");)u.value=u.value.parentNode;r()}function M(){if(a.target===!1||a.target===""||l.$el.parentNode===null)u.value=null;else if(a.target===!0)T(l.$el.parentNode);else{let b=a.target;if(typeof a.target=="string")try{b=document.querySelector(a.target)}catch{b=void 0}b!=null?(u.value=b.$el||b,r()):(u.value=null,console.error(`Anchor: target "${a.target}" not found`))}}return ze(()=>a.contextMenu,b=>{u.value!==null&&(v(),r(b))}),ze(()=>a.target,()=>{u.value!==null&&v(),M()}),ze(()=>a.noParentEvent,b=>{u.value!==null&&(b===!0?v():r())}),ei(()=>{M(),t!==!0&&a.modelValue===!0&&u.value===null&&s("update:modelValue",!1)}),Gt(()=>{d!==null&&clearTimeout(d),v()}),{anchorEl:u,canShow:f,anchorEvents:g}}function Zh(e,t){const r=se(null);let a;function l(d,f){const g=`${f!==void 0?"add":"remove"}EventListener`,v=f!==void 0?f:a;d!==window&&d[g]("scroll",v,Xi.passive),window[g]("scroll",v,Xi.passive),a=f}function s(){r.value!==null&&(l(r.value),r.value=null)}const u=ze(()=>e.noParentEvent,()=>{r.value!==null&&(s(),t())});return Gt(u),{localScrollTarget:r,unconfigureScrollTarget:s,changeScrollEvent:l}}const{notPassiveCapture:go}=Xi,pi=[];function mo(e){const t=e.target;if(t===void 0||t.nodeType===8||t.classList.contains("no-pointer-events")===!0)return;let r=Xf.length-1;for(;r>=0;){const a=Xf[r].$;if(a.type.name==="QTooltip"){r--;continue}if(a.type.name!=="QDialog")break;if(a.props.seamless!==!0)return;r--}for(let a=pi.length-1;a>=0;a--){const l=pi[a];if((l.anchorEl.value===null||l.anchorEl.value.contains(t)===!1)&&(t===document.body||l.innerRef.value!==null&&l.innerRef.value.contains(t)===!1))e.qClickOutside=!0,l.onClickOutside(e);else return}}function Jh(e){pi.push(e),pi.length===1&&(document.addEventListener("mousedown",mo,go),document.addEventListener("touchstart",mo,go))}function vo(e){const t=pi.findIndex(r=>r===e);t>-1&&(pi.splice(t,1),pi.length===0&&(document.removeEventListener("mousedown",mo,go),document.removeEventListener("touchstart",mo,go)))}let sh,uh;function po(e){const t=e.split(" ");return t.length!==2?!1:["top","center","bottom"].includes(t[0])!==!0?(console.error("Anchor/Self position must start with one of top/center/bottom"),!1):["left","middle","right","start","end"].includes(t[1])!==!0?(console.error("Anchor/Self position must end with one of left/middle/right/start/end"),!1):!0}function Xh(e){return e?!(e.length!==2||typeof e[0]!="number"||typeof e[1]!="number"):!0}const Au={"start#ltr":"left","start#rtl":"right","end#ltr":"right","end#rtl":"left"};["left","middle","right"].forEach(e=>{Au[`${e}#ltr`]=e,Au[`${e}#rtl`]=e});function yo(e,t){const r=e.split(" ");return{vertical:r[0],horizontal:Au[`${r[1]}#${t===!0?"rtl":"ltr"}`]}}function uw(e,t){let{top:r,left:a,right:l,bottom:s,width:u,height:d}=e.getBoundingClientRect();return t!==void 0&&(r-=t[1],a-=t[0],s+=t[1],l+=t[0],u+=t[0],d+=t[1]),{top:r,bottom:s,height:d,left:a,right:l,width:u,middle:a+(l-a)/2,center:r+(s-r)/2}}function cw(e,t,r){let{top:a,left:l}=e.getBoundingClientRect();return a+=t.top,l+=t.left,r!==void 0&&(a+=r[1],l+=r[0]),{top:a,bottom:a+1,height:1,left:l,right:l+1,width:1,middle:l,center:a}}function dw(e,t){return{top:0,center:t/2,bottom:t,left:0,middle:e/2,right:e}}function ch(e,t,r,a){return{top:e[r.vertical]-t[a.vertical],left:e[r.horizontal]-t[a.horizontal]}}function tc(e,t=0){if(e.targetEl===null||e.anchorEl===null||t>5)return;if(e.targetEl.offsetHeight===0||e.targetEl.offsetWidth===0){setTimeout(()=>{tc(e,t+1)},10);return}const{targetEl:r,offset:a,anchorEl:l,anchorOrigin:s,selfOrigin:u,absoluteOffset:d,fit:f,cover:g,maxHeight:v,maxWidth:T}=e;if(Wi.is.ios===!0&&window.visualViewport!==void 0){const J=document.body.style,{offsetLeft:z,offsetTop:H}=window.visualViewport;z!==sh&&(J.setProperty("--q-pe-left",z+"px"),sh=z),H!==uh&&(J.setProperty("--q-pe-top",H+"px"),uh=H)}const{scrollLeft:M,scrollTop:b}=r,x=d===void 0?uw(l,g===!0?[0,0]:a):cw(l,d,a);Object.assign(r.style,{top:0,left:0,minWidth:null,minHeight:null,maxWidth:T||"100vw",maxHeight:v||"100vh",visibility:"visible"});const{offsetWidth:$,offsetHeight:L}=r,{elWidth:F,elHeight:W}=f===!0||g===!0?{elWidth:Math.max(x.width,$),elHeight:g===!0?Math.max(x.height,L):L}:{elWidth:$,elHeight:L};let D={maxWidth:T,maxHeight:v};(f===!0||g===!0)&&(D.minWidth=x.width+"px",g===!0&&(D.minHeight=x.height+"px")),Object.assign(r.style,D);const A=dw(F,W);let N=ch(x,A,s,u);if(d===void 0||a===void 0)hu(N,x,A,s,u);else{const{top:J,left:z}=N;hu(N,x,A,s,u);let H=!1;if(N.top!==J){H=!0;const ye=2*a[1];x.center=x.top-=ye,x.bottom-=ye+2}if(N.left!==z){H=!0;const ye=2*a[0];x.middle=x.left-=ye,x.right-=ye+2}H===!0&&(N=ch(x,A,s,u),hu(N,x,A,s,u))}D={top:N.top+"px",left:N.left+"px"},N.maxHeight!==void 0&&(D.maxHeight=N.maxHeight+"px",x.height>N.maxHeight&&(D.minHeight=D.maxHeight)),N.maxWidth!==void 0&&(D.maxWidth=N.maxWidth+"px",x.width>N.maxWidth&&(D.minWidth=D.maxWidth)),Object.assign(r.style,D),r.scrollTop!==b&&(r.scrollTop=b),r.scrollLeft!==M&&(r.scrollLeft=M)}function hu(e,t,r,a,l){const s=r.bottom,u=r.right,d=Db(),f=window.innerHeight-d,g=document.body.clientWidth;if(e.top<0||e.top+s>f)if(l.vertical==="center")e.top=t[a.vertical]>f/2?Math.max(0,f-s):0,e.maxHeight=Math.min(s,f);else if(t[a.vertical]>f/2){const v=Math.min(f,a.vertical==="center"?t.center:a.vertical===l.vertical?t.bottom:t.top);e.maxHeight=Math.min(s,v),e.top=Math.max(0,v-s)}else e.top=Math.max(0,a.vertical==="center"?t.center:a.vertical===l.vertical?t.top:t.bottom),e.maxHeight=Math.min(s,f-e.top);if(e.left<0||e.left+u>g)if(e.maxWidth=Math.min(u,g),l.horizontal==="middle")e.left=t[a.horizontal]>g/2?Math.max(0,g-u):0;else if(t[a.horizontal]>g/2){const v=Math.min(g,a.horizontal==="middle"?t.middle:a.horizontal===l.horizontal?t.right:t.left);e.maxWidth=Math.min(u,v),e.left=Math.max(0,v-e.maxWidth)}else e.left=Math.max(0,a.horizontal==="middle"?t.middle:a.horizontal===l.horizontal?t.left:t.right),e.maxWidth=Math.min(u,g-e.left)}var Hr=Je({name:"QTooltip",inheritAttrs:!1,props:{...Qh,...Hu,...Gu,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null},transitionShow:{default:"jump-down"},transitionHide:{default:"jump-up"},anchor:{type:String,default:"bottom middle",validator:po},self:{type:String,default:"top middle",validator:po},offset:{type:Array,default:()=>[14,14],validator:Xh},scrollTarget:{default:void 0},delay:{type:Number,default:0},hideDelay:{type:Number,default:0}},emits:[...Ku],setup(e,{slots:t,emit:r,attrs:a}){let l,s;const u=Dt(),{proxy:{$q:d}}=u,f=se(null),g=se(!1),v=I(()=>yo(e.anchor,d.lang.rtl)),T=I(()=>yo(e.self,d.lang.rtl)),M=I(()=>e.persistent!==!0),{registerTick:b,removeTick:x}=$a(),{registerTimeout:$}=so(),{transitionProps:L,transitionStyle:F}=Ah(e),{localScrollTarget:W,changeScrollEvent:D,unconfigureScrollTarget:A}=Zh(e,X),{anchorEl:N,canShow:J,anchorEvents:z}=jh({showing:g,configureAnchorEl:rt}),{show:H,hide:ye}=Qu({showing:g,canShow:J,handleShow:te,handleHide:Pe,hideOnRouteChange:M,processOnMount:!0});Object.assign(z,{delayShow:K,delayHide:ve});const{showPortal:_e,hidePortal:Ae,renderPortal:lt}=Eh(u,f,he,"tooltip");if(d.platform.is.mobile===!0){const fe={anchorEl:N,innerRef:f,onClickOutside(Ue){return ye(Ue),Ue.target.classList.contains("q-dialog__backdrop")&&Ft(Ue),!0}},Ke=I(()=>e.modelValue===null&&e.persistent!==!0&&g.value===!0);ze(Ke,Ue=>{(Ue===!0?Jh:vo)(fe)}),Gt(()=>{vo(fe)})}function te(fe){_e(),b(()=>{s=new MutationObserver(()=>j()),s.observe(f.value,{attributes:!1,childList:!0,characterData:!0,subtree:!0}),j(),X()}),l===void 0&&(l=ze(()=>d.screen.width+"|"+d.screen.height+"|"+e.self+"|"+e.anchor+"|"+d.lang.rtl,j)),$(()=>{_e(!0),r("show",fe)},e.transitionDuration)}function Pe(fe){x(),Ae(),Be(),$(()=>{Ae(!0),r("hide",fe)},e.transitionDuration)}function Be(){s!==void 0&&(s.disconnect(),s=void 0),l!==void 0&&(l(),l=void 0),A(),Ki(z,"tooltipTemp")}function j(){tc({targetEl:f.value,offset:e.offset,anchorEl:N.value,anchorOrigin:v.value,selfOrigin:T.value,maxHeight:e.maxHeight,maxWidth:e.maxWidth})}function K(fe){if(d.platform.is.mobile===!0){ho(),document.body.classList.add("non-selectable");const Ke=N.value,Ue=["touchmove","touchcancel","touchend","click"].map(we=>[Ke,we,"delayHide","passiveCapture"]);Gr(z,"tooltipTemp",Ue)}$(()=>{H(fe)},e.delay)}function ve(fe){d.platform.is.mobile===!0&&(Ki(z,"tooltipTemp"),ho(),setTimeout(()=>{document.body.classList.remove("non-selectable")},10)),$(()=>{ye(fe)},e.hideDelay)}function rt(){if(e.noParentEvent===!0||N.value===null)return;const fe=d.platform.is.mobile===!0?[[N.value,"touchstart","delayShow","passive"]]:[[N.value,"mouseenter","delayShow","passive"],[N.value,"mouseleave","delayHide","passive"]];Gr(z,"anchor",fe)}function X(){if(N.value!==null||e.scrollTarget!==void 0){W.value=Do(N.value,e.scrollTarget);const fe=e.noParentEvent===!0?j:ye;D(W.value,fe)}}function Z(){return g.value===!0?E("div",{...a,ref:f,class:["q-tooltip q-tooltip--style q-position-engine no-pointer-events",a.class],style:[a.style,F.value],role:"tooltip"},Mt(t.default)):null}function he(){return E(Ha,L.value,Z)}return Gt(Be),Object.assign(u.proxy,{updatePosition:j}),lt}});const fw={xs:8,sm:10,md:14,lg:20,xl:24};var Ga=Je({name:"QChip",props:{...ar,...qb,dense:Boolean,icon:String,iconRight:String,iconRemove:String,iconSelected:String,label:[String,Number],color:String,textColor:String,modelValue:{type:Boolean,default:!0},selected:{type:Boolean,default:null},square:Boolean,outline:Boolean,clickable:Boolean,removable:Boolean,removeAriaLabel:String,tabindex:[String,Number],disable:Boolean,ripple:{type:[Boolean,Object],default:!0}},emits:["update:modelValue","update:selected","remove","click"],setup(e,{slots:t,emit:r}){const{proxy:{$q:a}}=Dt(),l=lr(e,a),s=Pb(e,fw),u=I(()=>e.selected===!0||e.icon!==void 0),d=I(()=>e.selected===!0?e.iconSelected||a.iconSet.chip.selected:e.icon),f=I(()=>e.iconRemove||a.iconSet.chip.remove),g=I(()=>e.disable===!1&&(e.clickable===!0||e.selected!==null)),v=I(()=>{const L=e.outline===!0&&e.color||e.textColor;return"q-chip row inline no-wrap items-center"+(e.outline===!1&&e.color!==void 0?` bg-${e.color}`:"")+(L?` text-${L} q-chip--colored`:"")+(e.disable===!0?" disabled":"")+(e.dense===!0?" q-chip--dense":"")+(e.outline===!0?" q-chip--outline":"")+(e.selected===!0?" q-chip--selected":"")+(g.value===!0?" q-chip--clickable cursor-pointer non-selectable q-hoverable":"")+(e.square===!0?" q-chip--square":"")+(l.value===!0?" q-chip--dark q-dark":"")}),T=I(()=>{const L=e.disable===!0?{tabindex:-1,"aria-disabled":"true"}:{tabindex:e.tabindex||0},F={...L,role:"button","aria-hidden":"false","aria-label":e.removeAriaLabel||a.lang.label.remove};return{chip:L,remove:F}});function M(L){L.keyCode===13&&b(L)}function b(L){e.disable||(r("update:selected",!e.selected),r("click",L))}function x(L){(L.keyCode===void 0||L.keyCode===13)&&(Ft(L),e.disable===!1&&(r("update:modelValue",!1),r("remove")))}function $(){const L=[];g.value===!0&&L.push(E("div",{class:"q-focus-helper"})),u.value===!0&&L.push(E(Ht,{class:"q-chip__icon q-chip__icon--left",name:d.value}));const F=e.label!==void 0?[E("div",{class:"ellipsis"},[e.label])]:void 0;return L.push(E("div",{class:"q-chip__content col row no-wrap items-center q-anchor--skip"},xb(t.default,F))),e.iconRight&&L.push(E(Ht,{class:"q-chip__icon q-chip__icon--right",name:e.iconRight})),e.removable===!0&&L.push(E(Ht,{class:"q-chip__icon q-chip__icon--remove cursor-pointer",name:f.value,...T.value.remove,onClick:x,onKeyup:x})),L}return()=>{if(e.modelValue===!1)return;const L={class:v.value,style:s.value};return g.value===!0&&Object.assign(L,T.value.chip,{onClick:b,onKeyup:M}),ju("div",L,$(),"ripple",e.ripple!==!1&&e.disable!==!0,()=>[[uo,e.ripple]])}}}),rr=Je({name:"QList",props:{...ar,bordered:Boolean,dense:Boolean,separator:Boolean,padding:Boolean,tag:{type:String,default:"div"}},setup(e,{slots:t}){const r=Dt(),a=lr(e,r.proxy.$q),l=I(()=>"q-list"+(e.bordered===!0?" q-list--bordered":"")+(e.dense===!0?" q-list--dense":"")+(e.separator===!0?" q-list--separator":"")+(a.value===!0?" q-list--dark":"")+(e.padding===!0?" q-list--padding":""));return()=>E(e.tag,{class:l.value},Mt(t.default))}});const hw=["horizontal","vertical","cell","none"];var gw=Je({name:"QMarkupTable",props:{...ar,dense:Boolean,flat:Boolean,bordered:Boolean,square:Boolean,wrapCells:Boolean,separator:{type:String,default:"horizontal",validator:e=>hw.includes(e)}},setup(e,{slots:t}){const r=Dt(),a=lr(e,r.proxy.$q),l=I(()=>`q-markup-table q-table__container q-table__card q-table--${e.separator}-separator`+(a.value===!0?" q-table--dark q-table__card--dark q-dark":"")+(e.dense===!0?" q-table--dense":"")+(e.flat===!0?" q-table--flat":"")+(e.bordered===!0?" q-table--bordered":"")+(e.square===!0?" q-table--square":"")+(e.wrapCells===!1?" q-table--no-wrap":""));return()=>E("div",{class:l.value},[E("table",{class:"q-table"},Mt(t.default))])}});function mw(e,t){return E("div",e,[E("table",{class:"q-table"},t)])}let Fa=!1;{const e=document.createElement("div");e.setAttribute("dir","rtl"),Object.assign(e.style,{width:"1px",height:"1px",overflow:"auto"});const t=document.createElement("div");Object.assign(t.style,{width:"1000px",height:"1px"}),document.body.appendChild(e),e.appendChild(t),e.scrollLeft=-1e3,Fa=e.scrollLeft>=0,e.remove()}const Hn=1e3,vw=["start","center","end","start-force","center-force","end-force"],eg=Array.prototype.filter,pw=window.getComputedStyle(document.body).overflowAnchor===void 0?Ih:function(e,t){e!==null&&(e._qOverflowAnimationFrame!==void 0&&cancelAnimationFrame(e._qOverflowAnimationFrame),e._qOverflowAnimationFrame=requestAnimationFrame(()=>{if(e===null)return;e._qOverflowAnimationFrame=void 0;const r=e.children||[];eg.call(r,l=>l.dataset&&l.dataset.qVsAnchor!==void 0).forEach(l=>{delete l.dataset.qVsAnchor});const a=r[t];a&&a.dataset&&(a.dataset.qVsAnchor="")}))};function Qi(e,t){return e+t}function gu(e,t,r,a,l,s,u,d){const f=e===window?document.scrollingElement||document.documentElement:e,g=l===!0?"offsetWidth":"offsetHeight",v={scrollStart:0,scrollViewSize:-u-d,scrollMaxSize:0,offsetStart:-u,offsetEnd:-d};if(l===!0?(e===window?(v.scrollStart=window.pageXOffset||window.scrollX||document.body.scrollLeft||0,v.scrollViewSize+=document.documentElement.clientWidth):(v.scrollStart=f.scrollLeft,v.scrollViewSize+=f.clientWidth),v.scrollMaxSize=f.scrollWidth,s===!0&&(v.scrollStart=(Fa===!0?v.scrollMaxSize-v.scrollViewSize:0)-v.scrollStart)):(e===window?(v.scrollStart=window.pageYOffset||window.scrollY||document.body.scrollTop||0,v.scrollViewSize+=document.documentElement.clientHeight):(v.scrollStart=f.scrollTop,v.scrollViewSize+=f.clientHeight),v.scrollMaxSize=f.scrollHeight),r!==null)for(let T=r.previousElementSibling;T!==null;T=T.previousElementSibling)T.classList.contains("q-virtual-scroll--skip")===!1&&(v.offsetStart+=T[g]);if(a!==null)for(let T=a.nextElementSibling;T!==null;T=T.nextElementSibling)T.classList.contains("q-virtual-scroll--skip")===!1&&(v.offsetEnd+=T[g]);if(t!==e){const T=f.getBoundingClientRect(),M=t.getBoundingClientRect();l===!0?(v.offsetStart+=M.left-T.left,v.offsetEnd-=M.width):(v.offsetStart+=M.top-T.top,v.offsetEnd-=M.height),e!==window&&(v.offsetStart+=v.scrollStart),v.offsetEnd+=v.scrollMaxSize-v.offsetStart}return v}function dh(e,t,r,a){t==="end"&&(t=(e===window?document.body:e)[r===!0?"scrollWidth":"scrollHeight"]),e===window?r===!0?(a===!0&&(t=(Fa===!0?document.body.scrollWidth-document.documentElement.clientWidth:0)-t),window.scrollTo(t,window.pageYOffset||window.scrollY||document.body.scrollTop||0)):window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,t):r===!0?(a===!0&&(t=(Fa===!0?e.scrollWidth-e.offsetWidth:0)-t),e.scrollLeft=t):e.scrollTop=t}function Ta(e,t,r,a){if(r>=a)return 0;const l=t.length,s=Math.floor(r/Hn),u=Math.floor((a-1)/Hn)+1;let d=e.slice(s,u).reduce(Qi,0);return r%Hn!==0&&(d-=t.slice(s*Hn,r).reduce(Qi,0)),a%Hn!==0&&a!==l&&(d-=t.slice(a,u*Hn).reduce(Qi,0)),d}const yw={virtualScrollSliceSize:{type:[Number,String],default:null},virtualScrollSliceRatioBefore:{type:[Number,String],default:1},virtualScrollSliceRatioAfter:{type:[Number,String],default:1},virtualScrollItemSize:{type:[Number,String],default:24},virtualScrollStickySizeStart:{type:[Number,String],default:0},virtualScrollStickySizeEnd:{type:[Number,String],default:0},tableColspan:[Number,String]},tg={virtualScrollHorizontal:Boolean,onVirtualScroll:Function,...yw};function ng({virtualScrollLength:e,getVirtualScrollTarget:t,getVirtualScrollEl:r,virtualScrollItemSizeComputed:a}){const l=Dt(),{props:s,emit:u,proxy:d}=l,{$q:f}=d;let g,v,T,M=[],b;const x=se(0),$=se(0),L=se({}),F=se(null),W=se(null),D=se(null),A=se({from:0,to:0}),N=I(()=>s.tableColspan!==void 0?s.tableColspan:100);a===void 0&&(a=I(()=>s.virtualScrollItemSize));const J=I(()=>a.value+";"+s.virtualScrollHorizontal),z=I(()=>J.value+";"+s.virtualScrollSliceRatioBefore+";"+s.virtualScrollSliceRatioAfter);ze(z,()=>{j()}),ze(J,H);function H(){Be(v,!0)}function ye(Z){Be(Z===void 0?v:Z)}function _e(Z,he){const fe=t();if(fe==null||fe.nodeType===8)return;const Ke=gu(fe,r(),F.value,W.value,s.virtualScrollHorizontal,f.lang.rtl,s.virtualScrollStickySizeStart,s.virtualScrollStickySizeEnd);T!==Ke.scrollViewSize&&j(Ke.scrollViewSize),lt(fe,Ke,Math.min(e.value-1,Math.max(0,parseInt(Z,10)||0)),0,vw.indexOf(he)>-1?he:v>-1&&Z>v?"end":"start")}function Ae(){const Z=t();if(Z==null||Z.nodeType===8)return;const he=gu(Z,r(),F.value,W.value,s.virtualScrollHorizontal,f.lang.rtl,s.virtualScrollStickySizeStart,s.virtualScrollStickySizeEnd),fe=e.value-1,Ke=he.scrollMaxSize-he.offsetStart-he.offsetEnd-$.value;if(g===he.scrollStart)return;if(he.scrollMaxSize<=0){lt(Z,he,0,0);return}T!==he.scrollViewSize&&j(he.scrollViewSize),te(A.value.from);const Ue=Math.floor(he.scrollMaxSize-Math.max(he.scrollViewSize,he.offsetEnd)-Math.min(b[fe],he.scrollViewSize/2));if(Ue>0&&Math.ceil(he.scrollStart)>=Ue){lt(Z,he,fe,he.scrollMaxSize-he.offsetEnd-M.reduce(Qi,0));return}let we=0,Me=he.scrollStart-he.offsetStart,ft=Me;if(Me<=Ke&&Me+he.scrollViewSize>=x.value)Me-=x.value,we=A.value.from,ft=Me;else for(let ee=0;Me>=M[ee]&&we0&&we-he.scrollViewSize?(we++,ft=Me):ft=b[we]+Me;lt(Z,he,we,ft)}function lt(Z,he,fe,Ke,Ue){const we=typeof Ue=="string"&&Ue.indexOf("-force")>-1,Me=we===!0?Ue.replace("-force",""):Ue,ft=Me!==void 0?Me:"start";let ee=Math.max(0,fe-L.value[ft]),wt=ee+L.value.total;wt>e.value&&(wt=e.value,ee=Math.max(0,wt-L.value.total)),g=he.scrollStart;const nn=ee!==A.value.from||wt!==A.value.to;if(nn===!1&&Me===void 0){ve(fe);return}const{activeElement:cn}=document,rn=D.value;nn===!0&&rn!==null&&rn!==cn&&rn.contains(cn)===!0&&(rn.addEventListener("focusout",Pe),setTimeout(()=>{rn!==null&&rn.removeEventListener("focusout",Pe)})),pw(rn,fe-ee);const qt=Me!==void 0?b.slice(ee,fe).reduce(Qi,0):0;if(nn===!0){const Kt=wt>=A.value.from&&ee<=A.value.to?A.value.to:wt;A.value={from:ee,to:Kt},x.value=Ta(M,b,0,ee),$.value=Ta(M,b,wt,e.value),requestAnimationFrame(()=>{A.value.to!==wt&&g===he.scrollStart&&(A.value={from:A.value.from,to:wt},$.value=Ta(M,b,wt,e.value))})}requestAnimationFrame(()=>{if(g!==he.scrollStart)return;nn===!0&&te(ee);const Kt=b.slice(ee,fe).reduce(Qi,0),Zn=Kt+he.offsetStart+x.value,Qt=Zn+b[fe];let Fn=Zn+Ke;if(Me!==void 0){const Ar=Kt-qt,St=he.scrollStart+Ar;Fn=we!==!0&&Stee.classList&&ee.classList.contains("q-virtual-scroll--skip")===!1),Ke=fe.length,Ue=s.virtualScrollHorizontal===!0?ee=>ee.getBoundingClientRect().width:ee=>ee.offsetHeight;let we=Z,Me,ft;for(let ee=0;ee=Ke;we--)b[we]=fe;const Ue=Math.floor((e.value-1)/Hn);M=[];for(let we=0;we<=Ue;we++){let Me=0;const ft=Math.min((we+1)*Hn,e.value);for(let ee=we*Hn;ee=0?(te(A.value.from),kn(()=>{_e(Z)})):rt()}function j(Z){if(Z===void 0&&typeof window!="undefined"){const Me=t();Me!=null&&Me.nodeType!==8&&(Z=gu(Me,r(),F.value,W.value,s.virtualScrollHorizontal,f.lang.rtl,s.virtualScrollStickySizeStart,s.virtualScrollStickySizeEnd).scrollViewSize)}T=Z;const he=parseFloat(s.virtualScrollSliceRatioBefore)||0,fe=parseFloat(s.virtualScrollSliceRatioAfter)||0,Ke=1+he+fe,Ue=Z===void 0||Z<=0?1:Math.ceil(Z/a.value),we=Math.max(1,Ue,Math.ceil((s.virtualScrollSliceSize>0?s.virtualScrollSliceSize:10)/Ke));L.value={total:Math.ceil(we*Ke),start:Math.ceil(we*he),center:Math.ceil(we*(.5+he)),end:Math.ceil(we*(1+he)),view:Ue}}function K(Z,he){const fe=s.virtualScrollHorizontal===!0?"width":"height",Ke={["--q-virtual-scroll-item-"+fe]:a.value+"px"};return[Z==="tbody"?E(Z,{class:"q-virtual-scroll__padding",key:"before",ref:F},[E("tr",[E("td",{style:{[fe]:`${x.value}px`,...Ke},colspan:N.value})])]):E(Z,{class:"q-virtual-scroll__padding",key:"before",ref:F,style:{[fe]:`${x.value}px`,...Ke}}),E(Z,{class:"q-virtual-scroll__content",key:"content",ref:D,tabindex:-1},he.flat()),Z==="tbody"?E(Z,{class:"q-virtual-scroll__padding",key:"after",ref:W},[E("tr",[E("td",{style:{[fe]:`${$.value}px`,...Ke},colspan:N.value})])]):E(Z,{class:"q-virtual-scroll__padding",key:"after",ref:W,style:{[fe]:`${$.value}px`,...Ke}})]}function ve(Z){v!==Z&&(s.onVirtualScroll!==void 0&&u("virtualScroll",{index:Z,from:A.value.from,to:A.value.to-1,direction:Z{j()});let X=!1;return ia(()=>{X=!0}),aa(()=>{if(X!==!0)return;const Z=t();g!==void 0&&Z!==void 0&&Z!==null&&Z.nodeType!==8?dh(Z,g,s.virtualScrollHorizontal,f.lang.rtl):_e(v)}),Gt(()=>{rt.cancel()}),Object.assign(d,{scrollTo:_e,reset:H,refresh:ye}),{virtualScrollSliceRange:A,virtualScrollSliceSizeComputed:L,setVirtualScrollSize:j,onVirtualScrollEvt:rt,localResetVirtualScroll:Be,padVirtualScroll:K,scrollTo:_e,reset:H,refresh:ye}}const _w={list:rr,table:gw},bw=["list","table","__qtable"];var nc=Je({name:"QVirtualScroll",props:{...tg,type:{type:String,default:"list",validator:e=>bw.includes(e)},items:{type:Array,default:()=>[]},itemsFn:Function,itemsSize:Number,scrollTarget:{default:void 0}},setup(e,{slots:t,attrs:r}){let a;const l=se(null),s=I(()=>e.itemsSize>=0&&e.itemsFn!==void 0?parseInt(e.itemsSize,10):Array.isArray(e.items)?e.items.length:0),{virtualScrollSliceRange:u,localResetVirtualScroll:d,padVirtualScroll:f,onVirtualScrollEvt:g}=ng({virtualScrollLength:s,getVirtualScrollTarget:x,getVirtualScrollEl:b}),v=I(()=>{if(s.value===0)return[];const W=(D,A)=>({index:u.value.from+A,item:D});return e.itemsFn===void 0?e.items.slice(u.value.from,u.value.to).map(W):e.itemsFn(u.value.from,u.value.to-u.value.from).map(W)}),T=I(()=>"q-virtual-scroll q-virtual-scroll"+(e.virtualScrollHorizontal===!0?"--horizontal":"--vertical")+(e.scrollTarget!==void 0?"":" scroll")),M=I(()=>e.scrollTarget!==void 0?{}:{tabindex:0});ze(s,()=>{d()}),ze(()=>e.scrollTarget,()=>{L(),$()});function b(){return l.value.$el||l.value}function x(){return a}function $(){a=Do(b(),e.scrollTarget),a.addEventListener("scroll",g,Xi.passive)}function L(){a!==void 0&&(a.removeEventListener("scroll",g,Xi.passive),a=void 0)}function F(){let W=f(e.type==="list"?"div":"tbody",v.value.map(t.default));return t.before!==void 0&&(W=t.before().concat(W)),bi(t.after,W)}return Ju(()=>{d()}),ei(()=>{$()}),aa(()=>{$()}),ia(()=>{L()}),Gt(()=>{L()}),()=>{if(t.default===void 0){console.error("QVirtualScroll: default scoped slot is required for rendering");return}return e.type==="__qtable"?mw({ref:l,class:"q-table__middle "+T.value},F()):E(_w[e.type],{...r,ref:l,class:[r.class,T.value],...M.value},F)}}});const ww=[E("circle",{cx:"15",cy:"15",r:"15"},[E("animate",{attributeName:"r",from:"15",to:"15",begin:"0s",dur:"0.8s",values:"15;9;15",calcMode:"linear",repeatCount:"indefinite"}),E("animate",{attributeName:"fill-opacity",from:"1",to:"1",begin:"0s",dur:"0.8s",values:"1;.5;1",calcMode:"linear",repeatCount:"indefinite"})]),E("circle",{cx:"60",cy:"15",r:"9","fill-opacity":".3"},[E("animate",{attributeName:"r",from:"9",to:"9",begin:"0s",dur:"0.8s",values:"9;15;9",calcMode:"linear",repeatCount:"indefinite"}),E("animate",{attributeName:"fill-opacity",from:".5",to:".5",begin:"0s",dur:"0.8s",values:".5;1;.5",calcMode:"linear",repeatCount:"indefinite"})]),E("circle",{cx:"105",cy:"15",r:"15"},[E("animate",{attributeName:"r",from:"15",to:"15",begin:"0s",dur:"0.8s",values:"15;9;15",calcMode:"linear",repeatCount:"indefinite"}),E("animate",{attributeName:"fill-opacity",from:"1",to:"1",begin:"0s",dur:"0.8s",values:"1;.5;1",calcMode:"linear",repeatCount:"indefinite"})])];var Eu=Je({name:"QSpinnerDots",props:Ab,setup(e){const{cSize:t,classes:r}=Eb(e);return()=>E("svg",{class:r.value,fill:"currentColor",width:t.value,height:t.value,viewBox:"0 0 120 30",xmlns:"http://www.w3.org/2000/svg"},ww)}});const Sw={ratio:[String,Number]};function kw(e,t){return I(()=>{const r=Number(e.ratio||(t!==void 0?t.value:void 0));return isNaN(r)!==!0&&r>0?{paddingBottom:`${100/r}%`}:null})}const Cw=16/9;var rc=Je({name:"QImg",props:{...Sw,src:String,srcset:String,sizes:String,alt:String,crossorigin:String,decoding:String,referrerpolicy:String,draggable:Boolean,loading:{type:String,default:"lazy"},fetchpriority:{type:String,default:"auto"},width:String,height:String,initialRatio:{type:[Number,String],default:Cw},placeholderSrc:String,fit:{type:String,default:"cover"},position:{type:String,default:"50% 50%"},imgClass:String,imgStyle:Object,noSpinner:Boolean,noNativeMenu:Boolean,noTransition:Boolean,spinnerColor:String,spinnerSize:String},emits:["load","error"],setup(e,{slots:t,emit:r}){const a=se(e.initialRatio),l=kw(e,a);let s=null,u=!1;const d=[se(null),se(L())],f=se(0),g=se(!1),v=se(!1),T=I(()=>`q-img q-img--${e.noNativeMenu===!0?"no-":""}menu`),M=I(()=>({width:e.width,height:e.height})),b=I(()=>`q-img__image ${e.imgClass!==void 0?e.imgClass+" ":""}q-img__image--with${e.noTransition===!0?"out":""}-transition`),x=I(()=>({...e.imgStyle,objectFit:e.fit,objectPosition:e.position}));ze(()=>$(),F);function $(){return e.src||e.srcset||e.sizes?{src:e.src,srcset:e.srcset,sizes:e.sizes}:null}function L(){return e.placeholderSrc!==void 0?{src:e.placeholderSrc}:null}function F(H){s!==null&&(clearTimeout(s),s=null),v.value=!1,H===null?(g.value=!1,d[f.value^1].value=L()):g.value=!0,d[f.value].value=H}function W({target:H}){u!==!0&&(s!==null&&(clearTimeout(s),s=null),a.value=H.naturalHeight===0?.5:H.naturalWidth/H.naturalHeight,D(H,1))}function D(H,ye){u===!0||ye===1e3||(H.complete===!0?A(H):s=setTimeout(()=>{s=null,D(H,ye+1)},50))}function A(H){u!==!0&&(f.value=f.value^1,d[f.value].value=null,g.value=!1,v.value=!1,r("load",H.currentSrc||H.src))}function N(H){s!==null&&(clearTimeout(s),s=null),g.value=!1,v.value=!0,d[f.value].value=null,d[f.value^1].value=L(),r("error",H)}function J(H){const ye=d[H].value,_e={key:"img_"+H,class:b.value,style:x.value,crossorigin:e.crossorigin,decoding:e.decoding,referrerpolicy:e.referrerpolicy,height:e.height,width:e.width,loading:e.loading,fetchpriority:e.fetchpriority,"aria-hidden":"true",draggable:e.draggable,...ye};return f.value===H?(_e.class+=" q-img__image--waiting",Object.assign(_e,{onLoad:W,onError:N})):_e.class+=" q-img__image--loaded",E("div",{class:"q-img__container absolute-full",key:"img"+H},E("img",_e))}function z(){return g.value!==!0?E("div",{key:"content",class:"q-img__content absolute-full q-anchor--skip"},Mt(t[v.value===!0?"error":"default"])):E("div",{key:"loading",class:"q-img__loading absolute-full flex flex-center"},t.loading!==void 0?t.loading():e.noSpinner===!0?void 0:[E($h,{color:e.spinnerColor,size:e.spinnerSize})])}return F($()),Gt(()=>{u=!0,s!==null&&(clearTimeout(s),s=null)}),()=>{const H=[];return l.value!==null&&H.push(E("div",{key:"filler",style:l.value})),v.value!==!0&&(d[0].value!==null&&H.push(J(0)),d[1].value!==null&&H.push(J(1))),H.push(E(Ha,{name:"q-transition--fade"},z)),E("div",{class:T.value,style:M.value,role:"img","aria-label":e.alt},H)}}}),Tw=Je({name:"QBanner",props:{...ar,inlineActions:Boolean,dense:Boolean,rounded:Boolean},setup(e,{slots:t}){const{proxy:{$q:r}}=Dt(),a=lr(e,r),l=I(()=>"q-banner row items-center"+(e.dense===!0?" q-banner--dense":"")+(a.value===!0?" q-banner--dark q-dark":"")+(e.rounded===!0?" rounded-borders":"")),s=I(()=>`q-banner__actions row items-center justify-end col-${e.inlineActions===!0?"auto":"all"}`);return()=>{const u=[E("div",{class:"q-banner__avatar col-auto row items-center self-start"},Mt(t.avatar)),E("div",{class:"q-banner__content col text-body2"},Mt(t.default))],d=Mt(t.action);return d!==void 0&&u.push(E("div",{class:s.value},d)),E("div",{class:l.value+(e.inlineActions===!1&&d!==void 0?" q-banner--top-padding":""),role:"alert"},u)}}}),xe=Je({name:"QItemSection",props:{avatar:Boolean,thumbnail:Boolean,side:Boolean,top:Boolean,noWrap:Boolean},setup(e,{slots:t}){const r=I(()=>`q-item__section column q-item__section--${e.avatar===!0||e.side===!0||e.thumbnail===!0?"side":"main"}`+(e.top===!0?" q-item__section--top justify-start":" justify-center")+(e.avatar===!0?" q-item__section--avatar":"")+(e.thumbnail===!0?" q-item__section--thumbnail":"")+(e.noWrap===!0?" q-item__section--nowrap":""));return()=>E("div",{class:r.value},Mt(t.default))}}),He=Je({name:"QItemLabel",props:{overline:Boolean,caption:Boolean,header:Boolean,lines:[Number,String]},setup(e,{slots:t}){const r=I(()=>parseInt(e.lines,10)),a=I(()=>"q-item__label"+(e.overline===!0?" q-item__label--overline text-overline":"")+(e.caption===!0?" q-item__label--caption text-caption":"")+(e.header===!0?" q-item__label--header":"")+(r.value===1?" ellipsis":"")),l=I(()=>e.lines!==void 0&&r.value>1?{overflow:"hidden",display:"-webkit-box","-webkit-box-orient":"vertical","-webkit-line-clamp":r.value}:null);return()=>E("div",{style:l.value,class:a.value},Mt(t.default))}}),Vt=Je({name:"QItem",props:{...ar,...qo,tag:{type:String,default:"div"},active:{type:Boolean,default:null},clickable:Boolean,dense:Boolean,insetLevel:Number,tabindex:[String,Number],focused:Boolean,manualFocus:Boolean},emits:["click","keyup"],setup(e,{slots:t,emit:r}){const{proxy:{$q:a}}=Dt(),l=lr(e,a),{hasLink:s,linkAttrs:u,linkClass:d,linkTag:f,navigateOnClick:g}=Rh(),v=se(null),T=se(null),M=I(()=>e.clickable===!0||s.value===!0||e.tag==="label"),b=I(()=>e.disable!==!0&&M.value===!0),x=I(()=>"q-item q-item-type row no-wrap"+(e.dense===!0?" q-item--dense":"")+(l.value===!0?" q-item--dark":"")+(s.value===!0&&e.active===null?d.value:e.active===!0?` q-item--active${e.activeClass!==void 0?` ${e.activeClass}`:""}`:"")+(e.disable===!0?" disabled":"")+(b.value===!0?" q-item--clickable q-link cursor-pointer "+(e.manualFocus===!0?"q-manual-focusable":"q-focusable q-hoverable")+(e.focused===!0?" q-manual-focusable--focused":""):"")),$=I(()=>{if(e.insetLevel===void 0)return null;const D=a.lang.rtl===!0?"Right":"Left";return{["padding"+D]:16+e.insetLevel*56+"px"}});function L(D){b.value===!0&&(T.value!==null&&(D.qKeyEvent!==!0&&document.activeElement===v.value?T.value.focus():document.activeElement===T.value&&v.value.focus()),g(D))}function F(D){if(b.value===!0&&Ya(D,13)===!0){Ft(D),D.qKeyEvent=!0;const A=new MouseEvent("click",D);A.qKeyEvent=!0,v.value.dispatchEvent(A)}r("keyup",D)}function W(){const D=Oh(t.default,[]);return b.value===!0&&D.unshift(E("div",{class:"q-focus-helper",tabindex:-1,ref:T})),D}return()=>{const D={ref:v,class:x.value,style:$.value,role:"listitem",onClick:L,onKeyup:F};return b.value===!0?(D.tabindex=e.tabindex||"0",Object.assign(D,u.value)):M.value===!0&&(D["aria-disabled"]="true"),E(f.value,D,W())}}}),Mw=Je({name:"QBtnGroup",props:{unelevated:Boolean,outline:Boolean,flat:Boolean,rounded:Boolean,square:Boolean,push:Boolean,stretch:Boolean,glossy:Boolean,spread:Boolean},setup(e,{slots:t}){const r=I(()=>{const a=["unelevated","outline","flat","rounded","square","push","stretch","glossy"].filter(l=>e[l]===!0).map(l=>`q-btn-group--${l}`).join(" ");return`q-btn-group row no-wrap${a.length!==0?" "+a:""}`+(e.spread===!0?" q-btn-group--spread":" inline")});return()=>E("div",{class:r.value},Mt(t.default))}}),rg=Je({name:"QMenu",inheritAttrs:!1,props:{...Qh,...Hu,...ar,...Gu,persistent:Boolean,autoClose:Boolean,separateClosePopup:Boolean,noRouteDismiss:Boolean,noRefocus:Boolean,noFocus:Boolean,fit:Boolean,cover:Boolean,square:Boolean,anchor:{type:String,validator:po},self:{type:String,validator:po},offset:{type:Array,validator:Xh},scrollTarget:{default:void 0},touchPosition:Boolean,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null}},emits:[...Ku,"click","escapeKey"],setup(e,{slots:t,emit:r,attrs:a}){let l=null,s,u,d;const f=Dt(),{proxy:g}=f,{$q:v}=g,T=se(null),M=se(!1),b=I(()=>e.persistent!==!0&&e.noRouteDismiss!==!0),x=lr(e,v),{registerTick:$,removeTick:L}=$a(),{registerTimeout:F}=so(),{transitionProps:W,transitionStyle:D}=Ah(e),{localScrollTarget:A,changeScrollEvent:N,unconfigureScrollTarget:J}=Zh(e,fe),{anchorEl:z,canShow:H}=jh({showing:M}),{hide:ye}=Qu({showing:M,canShow:H,handleShow:X,handleHide:Z,hideOnRouteChange:b,processOnMount:!0}),{showPortal:_e,hidePortal:Ae,renderPortal:lt}=Eh(f,T,ft,"menu"),te={anchorEl:z,innerRef:T,onClickOutside(ee){if(e.persistent!==!0&&M.value===!0)return ye(ee),(ee.type==="touchstart"||ee.target.classList.contains("q-dialog__backdrop"))&&Ft(ee),!0}},Pe=I(()=>yo(e.anchor||(e.cover===!0?"center middle":"bottom start"),v.lang.rtl)),Be=I(()=>e.cover===!0?Pe.value:yo(e.self||"top start",v.lang.rtl)),j=I(()=>(e.square===!0?" q-menu--square":"")+(x.value===!0?" q-menu--dark q-dark":"")),K=I(()=>e.autoClose===!0?{onClick:Ke}:{}),ve=I(()=>M.value===!0&&e.persistent!==!0);ze(ve,ee=>{ee===!0?($b(we),Jh(te)):(eh(we),vo(te))});function rt(){Bh(()=>{let ee=T.value;ee&&ee.contains(document.activeElement)!==!0&&(ee=ee.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||ee.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||ee.querySelector("[autofocus], [data-autofocus]")||ee,ee.focus({preventScroll:!0}))})}function X(ee){if(l=e.noRefocus===!1?document.activeElement:null,Lh(Ue),_e(),fe(),s=void 0,ee!==void 0&&(e.touchPosition||e.contextMenu)){const wt=qu(ee);if(wt.left!==void 0){const{top:nn,left:cn}=z.value.getBoundingClientRect();s={left:wt.left-cn,top:wt.top-nn}}}u===void 0&&(u=ze(()=>v.screen.width+"|"+v.screen.height+"|"+e.self+"|"+e.anchor+"|"+v.lang.rtl,Me)),e.noFocus!==!0&&document.activeElement.blur(),$(()=>{Me(),e.noFocus!==!0&&rt()}),F(()=>{v.platform.is.ios===!0&&(d=e.autoClose,T.value.click()),Me(),_e(!0),r("show",ee)},e.transitionDuration)}function Z(ee){L(),Ae(),he(!0),l!==null&&(ee===void 0||ee.qClickOutside!==!0)&&(((ee&&ee.type.indexOf("key")===0?l.closest('[tabindex]:not([tabindex^="-"])'):void 0)||l).focus(),l=null),F(()=>{Ae(!0),r("hide",ee)},e.transitionDuration)}function he(ee){s=void 0,u!==void 0&&(u(),u=void 0),(ee===!0||M.value===!0)&&(Nh(Ue),J(),vo(te),eh(we)),ee!==!0&&(l=null)}function fe(){(z.value!==null||e.scrollTarget!==void 0)&&(A.value=Do(z.value,e.scrollTarget),N(A.value,Me))}function Ke(ee){d!==!0?(Ib(g,ee),r("click",ee)):d=!1}function Ue(ee){ve.value===!0&&e.noFocus!==!0&&Rb(T.value,ee.target)!==!0&&rt()}function we(ee){r("escapeKey"),ye(ee)}function Me(){tc({targetEl:T.value,offset:e.offset,anchorEl:z.value,anchorOrigin:Pe.value,selfOrigin:Be.value,absoluteOffset:s,fit:e.fit,cover:e.cover,maxHeight:e.maxHeight,maxWidth:e.maxWidth})}function ft(){return E(Ha,W.value,()=>M.value===!0?E("div",{role:"menu",...a,ref:T,tabindex:-1,class:["q-menu q-position-engine scroll"+j.value,a.class],style:[a.style,D.value],...K.value},Mt(t.default)):null)}return Gt(he),Object.assign(g,{focus:rt,updatePosition:Me}),lt}});const Dw=Object.keys(Fh),qw=e=>Dw.reduce((t,r)=>{const a=e[r];return a!==void 0&&(t[r]=a),t},{});var Iu=Je({name:"QBtnDropdown",props:{...Fh,...Gu,modelValue:Boolean,split:Boolean,dropdownIcon:String,contentClass:[Array,String,Object],contentStyle:[Array,String,Object],cover:Boolean,persistent:Boolean,noRouteDismiss:Boolean,autoClose:Boolean,menuAnchor:{type:String,default:"bottom end"},menuSelf:{type:String,default:"top end"},menuOffset:Array,disableMainBtn:Boolean,disableDropdown:Boolean,noIconAnimation:Boolean,toggleAriaLabel:String},emits:["update:modelValue","click","beforeShow","show","beforeHide","hide"],setup(e,{slots:t,emit:r}){const{proxy:a}=Dt(),l=se(e.modelValue),s=se(null),u=co(),d=I(()=>{const A={"aria-expanded":l.value===!0?"true":"false","aria-haspopup":"true","aria-controls":u,"aria-label":e.toggleAriaLabel||a.$q.lang.label[l.value===!0?"collapse":"expand"](e.label)};return(e.disable===!0||e.split===!1&&e.disableMainBtn===!0||e.disableDropdown===!0)&&(A["aria-disabled"]="true"),A}),f=I(()=>"q-btn-dropdown__arrow"+(l.value===!0&&e.noIconAnimation===!1?" rotate-180":"")+(e.split===!1?" q-btn-dropdown__arrow-container":"")),g=I(()=>Ob(e)),v=I(()=>qw(e));ze(()=>e.modelValue,A=>{s.value!==null&&s.value[A?"show":"hide"]()}),ze(()=>e.split,D);function T(A){l.value=!0,r("beforeShow",A)}function M(A){r("show",A),r("update:modelValue",!0)}function b(A){l.value=!1,r("beforeHide",A)}function x(A){r("hide",A),r("update:modelValue",!1)}function $(A){r("click",A)}function L(A){mi(A),D(),r("click",A)}function F(A){s.value!==null&&s.value.toggle(A)}function W(A){s.value!==null&&s.value.show(A)}function D(A){s.value!==null&&s.value.hide(A)}return Object.assign(a,{show:W,hide:D,toggle:F}),ei(()=>{e.modelValue===!0&&W()}),()=>{const A=[E(Ht,{class:f.value,name:e.dropdownIcon||a.$q.iconSet.arrow.dropdown})];return e.disableDropdown!==!0&&A.push(E(rg,{ref:s,id:u,class:e.contentClass,style:e.contentStyle,cover:e.cover,fit:!0,persistent:e.persistent,noRouteDismiss:e.noRouteDismiss,autoClose:e.autoClose,anchor:e.menuAnchor,self:e.menuSelf,offset:e.menuOffset,separateClosePopup:!0,transitionShow:e.transitionShow,transitionHide:e.transitionHide,transitionDuration:e.transitionDuration,onBeforeShow:T,onShow:M,onBeforeHide:b,onHide:x},t.default)),e.split===!1?E(ge,{class:"q-btn-dropdown q-btn-dropdown--simple",...v.value,...d.value,disable:e.disable===!0||e.disableMainBtn===!0,noWrap:!0,round:!1,onClick:$},{default:()=>Mt(t.label,[]).concat(A),loading:t.loading}):E(Mw,{class:"q-btn-dropdown q-btn-dropdown--split no-wrap q-btn-item",rounded:e.rounded,square:e.square,...g.value,glossy:e.glossy,stretch:e.stretch},()=>[E(ge,{class:"q-btn-dropdown--current",...v.value,disable:e.disable===!0||e.disableMainBtn===!0,noWrap:!0,round:!1,onClick:L},{default:t.label,loading:t.loading}),E(ge,{class:"q-btn-dropdown__arrow-container q-anchor--skip",...d.value,...g.value,disable:e.disable===!0||e.disableDropdown===!0,rounded:e.rounded,color:e.color,textColor:e.textColor,dense:e.dense,size:e.size,padding:e.padding,ripple:e.ripple},()=>A)])}}}),br=Je({name:"QBreadcrumbsEl",props:{...qo,label:String,icon:String,tag:{type:String,default:"span"}},emits:["click"],setup(e,{slots:t}){const{linkTag:r,linkAttrs:a,linkClass:l,navigateOnClick:s}=Rh(),u=I(()=>({class:"q-breadcrumbs__el q-link flex inline items-center relative-position "+(e.disable!==!0?"q-link--focusable"+l.value:"q-breadcrumbs__el--disable"),...a.value,onClick:s})),d=I(()=>"q-breadcrumbs__el-icon"+(e.label!==void 0?" q-breadcrumbs__el-icon--with-label":""));return()=>{const f=[];return e.icon!==void 0&&f.push(E(Ht,{class:d.value,name:e.icon})),e.label!==void 0&&f.push(e.label),E(r.value,{...u.value},bi(t.default,f))}}});const Pw=["",!0];var xw=Je({name:"QBreadcrumbs",props:{...Lb,separator:{type:String,default:"/"},separatorColor:String,activeColor:{type:String,default:"primary"},gutter:{type:String,validator:e=>["none","xs","sm","md","lg","xl"].includes(e),default:"sm"}},setup(e,{slots:t}){const r=Nb(e),a=I(()=>`flex items-center ${r.value}${e.gutter==="none"?"":` q-gutter-${e.gutter}`}`),l=I(()=>e.separatorColor?` text-${e.separatorColor}`:""),s=I(()=>` text-${e.activeColor}`);return()=>{const u=Xu(Mt(t.default));if(u.length===0)return;let d=1;const f=[],g=u.filter(T=>T.type!==void 0&&T.type.name==="QBreadcrumbsEl").length,v=t.separator!==void 0?t.separator:()=>e.separator;return u.forEach(T=>{if(T.type!==void 0&&T.type.name==="QBreadcrumbsEl"){const M=d{const d=(a.header.space===!0?a.header.size:0)+(a.footer.space===!0?a.footer.size:0);if(typeof e.styleFn=="function"){const f=a.isContainer.value===!0?a.containerHeight.value:r.screen.height;return e.styleFn(d,f)}return{minHeight:a.isContainer.value===!0?a.containerHeight.value-d+"px":r.screen.height===0?d!==0?`calc(100vh - ${d}px)`:"100vh":r.screen.height-d+"px"}}),u=I(()=>`q-page${e.padding===!0?" q-layout-padding":""}`);return()=>E("main",{class:u.value,style:s.value},Mt(t.default))}});const Ew=E("div",{class:"q-space"});var Iw=Je({name:"QSpace",setup(){return()=>Ew}});function fh(e){if(e===!1)return 0;if(e===!0||e===void 0)return 1;const t=parseInt(e,10);return isNaN(t)?0:t}var Sr=Vh({name:"close-popup",beforeMount(e,{value:t}){const r={depth:fh(t),handler(a){r.depth!==0&&setTimeout(()=>{const l=Vb(e);l!==void 0&&Ub(l,a,r.depth)})},handlerKey(a){Ya(a,13)===!0&&r.handler(a)}};e.__qclosepopup=r,e.addEventListener("click",r.handler),e.addEventListener("keyup",r.handlerKey)},updated(e,{value:t,oldValue:r}){t!==r&&(e.__qclosepopup.depth=fh(t))},beforeUnmount(e){const t=e.__qclosepopup;e.removeEventListener("click",t.handler),e.removeEventListener("keyup",t.handlerKey),delete e.__qclosepopup}});function $w(){return fo(zb)}var Ma=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{},Rw=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then},ig={},Dn={};let ic;const Ow=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];Dn.getSymbolSize=function(t){if(!t)throw new Error('"version" cannot be null or undefined');if(t<1||t>40)throw new Error('"version" should be in range from 1 to 40');return t*4+17};Dn.getSymbolTotalCodewords=function(t){return Ow[t]};Dn.getBCHDigit=function(e){let t=0;for(;e!==0;)t++,e>>>=1;return t};Dn.setToSJISFunction=function(t){if(typeof t!="function")throw new Error('"toSJISFunc" is not a valid function.');ic=t};Dn.isKanjiModeEnabled=function(){return typeof ic!="undefined"};Dn.toSJIS=function(t){return ic(t)};var Po={};(function(e){e.L={bit:1},e.M={bit:0},e.Q={bit:3},e.H={bit:2};function t(r){if(typeof r!="string")throw new Error("Param is not a string");switch(r.toLowerCase()){case"l":case"low":return e.L;case"m":case"medium":return e.M;case"q":case"quartile":return e.Q;case"h":case"high":return e.H;default:throw new Error("Unknown EC Level: "+r)}}e.isValid=function(a){return a&&typeof a.bit!="undefined"&&a.bit>=0&&a.bit<4},e.from=function(a,l){if(e.isValid(a))return a;try{return t(a)}catch{return l}}})(Po);function ag(){this.buffer=[],this.length=0}ag.prototype={get:function(e){const t=Math.floor(e/8);return(this.buffer[t]>>>7-e%8&1)===1},put:function(e,t){for(let r=0;r>>t-r-1&1)===1)},getLengthInBits:function(){return this.length},putBit:function(e){const t=Math.floor(this.length/8);this.buffer.length<=t&&this.buffer.push(0),e&&(this.buffer[t]|=128>>>this.length%8),this.length++}};var Lw=ag;function Ka(e){if(!e||e<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=e,this.data=new Uint8Array(e*e),this.reservedBit=new Uint8Array(e*e)}Ka.prototype.set=function(e,t,r,a){const l=e*this.size+t;this.data[l]=r,a&&(this.reservedBit[l]=!0)};Ka.prototype.get=function(e,t){return this.data[e*this.size+t]};Ka.prototype.xor=function(e,t,r){this.data[e*this.size+t]^=r};Ka.prototype.isReserved=function(e,t){return this.reservedBit[e*this.size+t]};var Nw=Ka,lg={};(function(e){const t=Dn.getSymbolSize;e.getRowColCoords=function(a){if(a===1)return[];const l=Math.floor(a/7)+2,s=t(a),u=s===145?26:Math.ceil((s-13)/(2*l-2))*2,d=[s-7];for(let f=1;f=0&&l<=7},e.from=function(l){return e.isValid(l)?parseInt(l,10):void 0},e.getPenaltyN1=function(l){const s=l.size;let u=0,d=0,f=0,g=null,v=null;for(let T=0;T=5&&(u+=t.N1+(d-5)),g=b,d=1),b=l.get(M,T),b===v?f++:(f>=5&&(u+=t.N1+(f-5)),v=b,f=1)}d>=5&&(u+=t.N1+(d-5)),f>=5&&(u+=t.N1+(f-5))}return u},e.getPenaltyN2=function(l){const s=l.size;let u=0;for(let d=0;d=10&&(d===1488||d===93)&&u++,f=f<<1&2047|l.get(v,g),v>=10&&(f===1488||f===93)&&u++}return u*t.N3},e.getPenaltyN4=function(l){let s=0;const u=l.data.length;for(let f=0;f=0;){const u=s[0];for(let f=0;f0){const s=new Uint8Array(this.degree);return s.set(a,l),s}return a};var Fw=ac,dg={},ti={},lc={};lc.isValid=function(t){return!isNaN(t)&&t>=1&&t<=40};var or={};const fg="[0-9]+",Vw="[A-Z $%*+\\-./:]+";let Va="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";Va=Va.replace(/u/g,"\\u");const Uw="(?:(?![A-Z0-9 $%*+\\-./:]|"+Va+`)(?:.|[\r ]))+`;or.KANJI=new RegExp(Va,"g");or.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g");or.BYTE=new RegExp(Uw,"g");or.NUMERIC=new RegExp(fg,"g");or.ALPHANUMERIC=new RegExp(Vw,"g");const zw=new RegExp("^"+Va+"$"),Ww=new RegExp("^"+fg+"$"),Yw=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");or.testKanji=function(t){return zw.test(t)};or.testNumeric=function(t){return Ww.test(t)};or.testAlphanumeric=function(t){return Yw.test(t)};(function(e){const t=lc,r=or;e.NUMERIC={id:"Numeric",bit:1<<0,ccBits:[10,12,14]},e.ALPHANUMERIC={id:"Alphanumeric",bit:1<<1,ccBits:[9,11,13]},e.BYTE={id:"Byte",bit:1<<2,ccBits:[8,16,16]},e.KANJI={id:"Kanji",bit:1<<3,ccBits:[8,10,12]},e.MIXED={bit:-1},e.getCharCountIndicator=function(s,u){if(!s.ccBits)throw new Error("Invalid mode: "+s);if(!t.isValid(u))throw new Error("Invalid version: "+u);return u>=1&&u<10?s.ccBits[0]:u<27?s.ccBits[1]:s.ccBits[2]},e.getBestModeForData=function(s){return r.testNumeric(s)?e.NUMERIC:r.testAlphanumeric(s)?e.ALPHANUMERIC:r.testKanji(s)?e.KANJI:e.BYTE},e.toString=function(s){if(s&&s.id)return s.id;throw new Error("Invalid mode")},e.isValid=function(s){return s&&s.bit&&s.ccBits};function a(l){if(typeof l!="string")throw new Error("Param is not a string");switch(l.toLowerCase()){case"numeric":return e.NUMERIC;case"alphanumeric":return e.ALPHANUMERIC;case"kanji":return e.KANJI;case"byte":return e.BYTE;default:throw new Error("Unknown mode: "+l)}}e.from=function(s,u){if(e.isValid(s))return s;try{return a(s)}catch{return u}}})(ti);(function(e){const t=Dn,r=xo,a=Po,l=ti,s=lc,u=1<<12|1<<11|1<<10|1<<9|1<<8|1<<5|1<<2|1<<0,d=t.getBCHDigit(u);function f(M,b,x){for(let $=1;$<=40;$++)if(b<=e.getCapacity($,x,M))return $}function g(M,b){return l.getCharCountIndicator(M,b)+4}function v(M,b){let x=0;return M.forEach(function($){x+=g($.mode,b)+$.getBitsLength()}),x}function T(M,b){for(let x=1;x<=40;x++)if(v(M,x)<=e.getCapacity(x,b,l.MIXED))return x}e.from=function(b,x){return s.isValid(b)?parseInt(b,10):x},e.getCapacity=function(b,x,$){if(!s.isValid(b))throw new Error("Invalid QR Code version");typeof $=="undefined"&&($=l.BYTE);const L=t.getSymbolTotalCodewords(b),F=r.getTotalCodewordsCount(b,x),W=(L-F)*8;if($===l.MIXED)return W;const D=W-g($,b);switch($){case l.NUMERIC:return Math.floor(D/10*3);case l.ALPHANUMERIC:return Math.floor(D/11*2);case l.KANJI:return Math.floor(D/13);case l.BYTE:default:return Math.floor(D/8)}},e.getBestVersionForData=function(b,x){let $;const L=a.from(x,a.M);if(Array.isArray(b)){if(b.length>1)return T(b,L);if(b.length===0)return 1;$=b[0]}else $=b;return f($.mode,$.getLength(),L)},e.getEncodedBits=function(b){if(!s.isValid(b)||b<7)throw new Error("Invalid QR Code version");let x=b<<12;for(;t.getBCHDigit(x)-d>=0;)x^=u<=0;)l^=gg<<$u.getBCHDigit(l)-gh;return(a<<10|l)^Hw};var mg={};const Gw=ti;function ea(e){this.mode=Gw.NUMERIC,this.data=e.toString()}ea.getBitsLength=function(t){return 10*Math.floor(t/3)+(t%3?t%3*3+1:0)};ea.prototype.getLength=function(){return this.data.length};ea.prototype.getBitsLength=function(){return ea.getBitsLength(this.data.length)};ea.prototype.write=function(t){let r,a,l;for(r=0;r+3<=this.data.length;r+=3)a=this.data.substr(r,3),l=parseInt(a,10),t.put(l,10);const s=this.data.length-r;s>0&&(a=this.data.substr(r),l=parseInt(a,10),t.put(l,s*3+1))};var Kw=ea;const Qw=ti,mu=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function ta(e){this.mode=Qw.ALPHANUMERIC,this.data=e}ta.getBitsLength=function(t){return 11*Math.floor(t/2)+6*(t%2)};ta.prototype.getLength=function(){return this.data.length};ta.prototype.getBitsLength=function(){return ta.getBitsLength(this.data.length)};ta.prototype.write=function(t){let r;for(r=0;r+2<=this.data.length;r+=2){let a=mu.indexOf(this.data[r])*45;a+=mu.indexOf(this.data[r+1]),t.put(a,11)}this.data.length%2&&t.put(mu.indexOf(this.data[r]),6)};var jw=ta,Zw=function(t){for(var r=[],a=t.length,l=0;l=55296&&s<=56319&&a>l+1){var u=t.charCodeAt(l+1);u>=56320&&u<=57343&&(s=(s-55296)*1024+u-56320+65536,l+=1)}if(s<128){r.push(s);continue}if(s<2048){r.push(s>>6|192),r.push(s&63|128);continue}if(s<55296||s>=57344&&s<65536){r.push(s>>12|224),r.push(s>>6&63|128),r.push(s&63|128);continue}if(s>=65536&&s<=1114111){r.push(s>>18|240),r.push(s>>12&63|128),r.push(s>>6&63|128),r.push(s&63|128);continue}r.push(239,191,189)}return new Uint8Array(r).buffer};const Jw=Zw,Xw=ti;function na(e){this.mode=Xw.BYTE,typeof e=="string"&&(e=Jw(e)),this.data=new Uint8Array(e)}na.getBitsLength=function(t){return t*8};na.prototype.getLength=function(){return this.data.length};na.prototype.getBitsLength=function(){return na.getBitsLength(this.data.length)};na.prototype.write=function(e){for(let t=0,r=this.data.length;t=33088&&r<=40956)r-=33088;else if(r>=57408&&r<=60351)r-=49472;else throw new Error("Invalid SJIS character: "+this.data[t]+` Make sure your charset is UTF-8`);r=(r>>>8&255)*192+(r&255),e.put(r,13)}};var rS=ra,vg={exports:{}};(function(e){var t={single_source_shortest_paths:function(r,a,l){var s={},u={};u[a]=0;var d=t.PriorityQueue.make();d.push(a,0);for(var f,g,v,T,M,b,x,$,L;!d.empty();){f=d.pop(),g=f.value,T=f.cost,M=r[g]||{};for(v in M)M.hasOwnProperty(v)&&(b=M[v],x=T+b,$=u[v],L=typeof u[v]=="undefined",(L||$>x)&&(u[v]=x,d.push(v,x),s[v]=g))}if(typeof l!="undefined"&&typeof u[l]=="undefined"){var F=["Could not find a path from ",a," to ",l,"."].join("");throw new Error(F)}return s},extract_shortest_path_from_predecessor_list:function(r,a){for(var l=[],s=a;s;)l.push(s),r[s],s=r[s];return l.reverse(),l},find_path:function(r,a,l){var s=t.single_source_shortest_paths(r,a,l);return t.extract_shortest_path_from_predecessor_list(s,l)},PriorityQueue:{make:function(r){var a=t.PriorityQueue,l={},s;r=r||{};for(s in a)a.hasOwnProperty(s)&&(l[s]=a[s]);return l.queue=[],l.sorter=r.sorter||a.default_sorter,l},default_sorter:function(r,a){return r.cost-a.cost},push:function(r,a){var l={value:r,cost:a};this.queue.push(l),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};e.exports=t})(vg);(function(e){const t=ti,r=Kw,a=jw,l=eS,s=rS,u=or,d=Dn,f=vg.exports;function g(F){return unescape(encodeURIComponent(F)).length}function v(F,W,D){const A=[];let N;for(;(N=F.exec(D))!==null;)A.push({data:N[0],index:N.index,mode:W,length:N[0].length});return A}function T(F){const W=v(u.NUMERIC,t.NUMERIC,F),D=v(u.ALPHANUMERIC,t.ALPHANUMERIC,F);let A,N;return d.isKanjiModeEnabled()?(A=v(u.BYTE,t.BYTE,F),N=v(u.KANJI,t.KANJI,F)):(A=v(u.BYTE_KANJI,t.BYTE,F),N=[]),W.concat(D,A,N).sort(function(z,H){return z.index-H.index}).map(function(z){return{data:z.data,mode:z.mode,length:z.length}})}function M(F,W){switch(W){case t.NUMERIC:return r.getBitsLength(F);case t.ALPHANUMERIC:return a.getBitsLength(F);case t.KANJI:return s.getBitsLength(F);case t.BYTE:return l.getBitsLength(F)}}function b(F){return F.reduce(function(W,D){const A=W.length-1>=0?W[W.length-1]:null;return A&&A.mode===D.mode?(W[W.length-1].data+=D.data,W):(W.push(D),W)},[])}function x(F){const W=[];for(let D=0;D=0&&d<=6&&(f===0||f===6)||f>=0&&f<=6&&(d===0||d===6)||d>=2&&d<=4&&f>=2&&f<=4?e.set(s+d,u+f,!0,!0):e.set(s+d,u+f,!1,!0))}}function fS(e){const t=e.size;for(let r=8;r>d&1)===1,e.set(l,s,u,!0),e.set(s,l,u,!0)}function yu(e,t,r){const a=e.size,l=uS.getEncodedBits(t,r);let s,u;for(s=0;s<15;s++)u=(l>>s&1)===1,s<6?e.set(s,8,u,!0):s<8?e.set(s+1,8,u,!0):e.set(a-15+s,8,u,!0),s<8?e.set(8,a-s-1,u,!0):s<9?e.set(8,15-s-1+1,u,!0):e.set(8,15-s-1,u,!0);e.set(a-8,8,1,!0)}function mS(e,t){const r=e.size;let a=-1,l=r-1,s=7,u=0;for(let d=r-1;d>0;d-=2)for(d===6&&d--;;){for(let f=0;f<2;f++)if(!e.isReserved(l,d-f)){let g=!1;u>>s&1)===1),e.set(l,d-f,g),s--,s===-1&&(u++,s=7)}if(l+=a,l<0||r<=l){l-=a,a=-a;break}}}function vS(e,t,r){const a=new iS;r.forEach(function(f){a.put(f.mode.bit,4),a.put(f.getLength(),cS.getCharCountIndicator(f.mode,e)),f.write(a)});const l=Eo.getSymbolTotalCodewords(e),s=Ou.getTotalCodewordsCount(e,t),u=(l-s)*8;for(a.getLengthInBits()+4<=u&&a.put(0,4);a.getLengthInBits()%8!==0;)a.putBit(0);const d=(u-a.getLengthInBits())/8;for(let f=0;fl&&(r.left===!0&&n<0?e="left":r.right===!0&&n>0&&(e="right"))):r.down===!0&&s>0?(e="down",a>l&&(r.left===!0&&n<0?e="left":r.right===!0&&n>0&&(e="right"))):r.left===!0&&n<0?(e="left",a0&&(e="down"))):r.right===!0&&n>0&&(e="right",a0&&(e="down")));let f=!1;if(e===void 0&&i===!1){if(t.event.isFirst===!0||t.event.lastDir===void 0)return{};e=t.event.lastDir,f=!0,e==="left"||e==="right"?(u.left-=n,a=0,n=0):(u.top-=s,l=0,s=0)}return{synthetic:f,payload:{evt:o,touch:t.event.mouse!==!0,mouse:t.event.mouse===!0,position:u,direction:e,isFirst:t.event.isFirst,isFinal:i===!0,duration:Date.now()-t.event.time,distance:{x:a,y:l},offset:{x:n,y:s},delta:{x:u.left-t.event.lastX,y:u.top-t.event.lastY}}}}let Z=0;var te=F({name:"touch-pan",beforeMount(o,{value:t,modifiers:i}){if(i.mouse!==!0&&m.has.touch!==!0)return;function u(n,s){i.mouse===!0&&s===!0?B(n):(i.stop===!0&&y(n),i.prevent===!0&&P(n))}const e={uid:"qvtp_"+Z++,handler:t,modifiers:i,direction:R(i),noop:S,mouseStart(n){x(n,e)&&Y(n)&&(h(e,"temp",[[document,"mousemove","move","notPassiveCapture"],[document,"mouseup","end","passiveCapture"]]),e.start(n,!0))},touchStart(n){if(x(n,e)){const s=n.target;h(e,"temp",[[s,"touchmove","move","notPassiveCapture"],[s,"touchcancel","end","passiveCapture"],[s,"touchend","end","passiveCapture"]]),e.start(n)}},start(n,s){if(m.is.firefox===!0&&b(o,!0),e.lastEvt=n,s===!0||i.stop===!0){if(e.direction.all!==!0&&(s!==!0||e.modifiers.mouseAllDir!==!0&&e.modifiers.mousealldir!==!0)){const r=n.type.indexOf("mouse")>-1?new MouseEvent(n.type,n):new TouchEvent(n.type,n);n.defaultPrevented===!0&&P(r),n.cancelBubble===!0&&y(r),Object.assign(r,{qKeyEvent:n.qKeyEvent,qClickOutside:n.qClickOutside,qAnchorHandled:n.qAnchorHandled,qClonedBy:n.qClonedBy===void 0?[e.uid]:n.qClonedBy.concat(e.uid)}),e.initialEvent={target:n.target,event:r}}y(n)}const{left:a,top:l}=w(n);e.event={x:a,y:l,time:Date.now(),mouse:s===!0,detected:!1,isFirst:!0,isFinal:!1,lastX:a,lastY:l}},move(n){if(e.event===void 0)return;const s=w(n),a=s.left-e.event.x,l=s.top-e.event.y;if(a===0&&l===0)return;e.lastEvt=n;const r=e.event.mouse===!0,f=()=>{u(n,r);let c;i.preserveCursor!==!0&&i.preservecursor!==!0&&(c=document.documentElement.style.cursor||"",document.documentElement.style.cursor="grabbing"),r===!0&&document.body.classList.add("no-pointer-events--children"),document.body.classList.add("non-selectable"),W(),e.styleCleanup=p=>{if(e.styleCleanup=void 0,c!==void 0&&(document.documentElement.style.cursor=c),document.body.classList.remove("non-selectable"),r===!0){const O=()=>{document.body.classList.remove("no-pointer-events--children")};p!==void 0?setTimeout(()=>{O(),p()},50):O()}else p!==void 0&&p()}};if(e.event.detected===!0){e.event.isFirst!==!0&&u(n,e.event.mouse);const{payload:c,synthetic:p}=E(n,e,!1);c!==void 0&&(e.handler(c)===!1?e.end(n):(e.styleCleanup===void 0&&e.event.isFirst===!0&&f(),e.event.lastX=c.position.left,e.event.lastY=c.position.top,e.event.lastDir=p===!0?void 0:c.direction,e.event.isFirst=!1));return}if(e.direction.all===!0||r===!0&&(e.modifiers.mouseAllDir===!0||e.modifiers.mousealldir===!0)){f(),e.event.detected=!0,e.move(n);return}const d=Math.abs(a),v=Math.abs(l);d!==v&&(e.direction.horizontal===!0&&d>v||e.direction.vertical===!0&&d0||e.direction.left===!0&&d>v&&a<0||e.direction.right===!0&&d>v&&a>0?(e.event.detected=!0,e.move(n)):e.end(n,!0))},end(n,s){if(e.event!==void 0){if(C(e,"temp"),m.is.firefox===!0&&b(o,!1),s===!0)e.styleCleanup!==void 0&&e.styleCleanup(),e.event.detected!==!0&&e.initialEvent!==void 0&&e.initialEvent.target.dispatchEvent(e.initialEvent.event);else if(e.event.detected===!0){e.event.isFirst===!0&&e.handler(E(n===void 0?e.lastEvt:n,e).payload);const{payload:a}=E(n===void 0?e.lastEvt:n,e,!0),l=()=>{e.handler(a)};e.styleCleanup!==void 0?e.styleCleanup(l):l()}e.event=void 0,e.initialEvent=void 0,e.lastEvt=void 0}}};if(o.__qtouchpan=e,i.mouse===!0){const n=i.mouseCapture===!0||i.mousecapture===!0?"Capture":"";h(e,"main",[[o,"mousedown","mouseStart",`passive${n}`]])}m.has.touch===!0&&h(e,"main",[[o,"touchstart","touchStart",`passive${i.capture===!0?"Capture":""}`],[o,"touchmove","noop","notPassiveCapture"]])},updated(o,t){const i=o.__qtouchpan;i!==void 0&&(t.oldValue!==t.value&&(typeof value!="function"&&i.end(),i.handler=t.value),i.direction=R(t.modifiers))},beforeUnmount(o){const t=o.__qtouchpan;t!==void 0&&(t.event!==void 0&&t.end(),C(t,"main"),C(t,"temp"),m.is.firefox===!0&&b(o,!1),t.styleCleanup!==void 0&&t.styleCleanup(),delete o.__qtouchpan)}});function ne(o,t,i){return i<=t?t:Math.min(i,Math.max(t,o))}function ie(o,t,i){if(i<=t)return t;const u=i-t+1;let e=t+(o-t)%u;return eG.includes(o),default:"vertical"},debounce:[String,Number],scrollTarget:{default:void 0}},emits:["scroll"],setup(o,{emit:t}){const i={position:{top:0,left:0},direction:"down",directionChanged:!1,delta:{top:0,left:0},inflectionPoint:{top:0,left:0}};let u=null,e,n;M(()=>o.scrollTarget,()=>{l(),a()});function s(){u!==null&&u();const d=Math.max(0,Q(e)),v=V(e),c={top:d-i.position.top,left:v-i.position.left};if(o.axis==="vertical"&&c.top===0||o.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";i.position={top:d,left:v},i.directionChanged=i.direction!==p,i.delta=c,i.directionChanged===!0&&(i.direction=p,i.inflectionPoint=i.position),t("scroll",{...i})}function a(){e=j(n,o.scrollTarget),e.addEventListener("scroll",r,A),r(!0)}function l(){e!==void 0&&(e.removeEventListener("scroll",r,A),e=void 0)}function r(d){if(d===!0||o.debounce===0||o.debounce==="0")s();else if(u===null){const[v,c]=o.debounce?[setTimeout(s,o.debounce),clearTimeout]:[requestAnimationFrame(s),cancelAnimationFrame];u=()=>{c(v),u=null}}}const{proxy:f}=N();return M(()=>f.$q.lang.rtl,s),g(()=>{n=f.$el.parentNode,a()}),z(()=>{u!==null&&u(),l()}),Object.assign(f,{trigger:r,getPosition:()=>i}),S}});function J(){const o=$(!H.value);return o.value===!1&&g(()=>{o.value=!0}),o}const X=typeof ResizeObserver!="undefined",D=X===!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"};var re=k({name:"QResizeObserver",props:{debounce:{type:[String,Number],default:100}},emits:["resize"],setup(o,{emit:t}){let i=null,u,e={width:-1,height:-1};function n(l){l===!0||o.debounce===0||o.debounce==="0"?s():i===null&&(i=setTimeout(s,o.debounce))}function s(){if(i!==null&&(clearTimeout(i),i=null),u){const{offsetWidth:l,offsetHeight:r}=u;(l!==e.width||r!==e.height)&&(e={width:l,height:r},t("resize",e))}}const{proxy:a}=N();if(X===!0){let l;const r=f=>{u=a.$el.parentNode,u?(l=new ResizeObserver(n),l.observe(u),s()):f!==!0&&L(()=>{r(!0)})};return g(()=>{r()}),z(()=>{i!==null&&clearTimeout(i),l!==void 0&&(l.disconnect!==void 0?l.disconnect():u&&l.unobserve(u))}),S}else{let f=function(){i!==null&&(clearTimeout(i),i=null),r!==void 0&&(r.removeEventListener!==void 0&&r.removeEventListener("resize",n,T.passive),r=void 0)},d=function(){f(),u&&u.contentDocument&&(r=u.contentDocument.defaultView,r.addEventListener("resize",n,T.passive),s())};const l=J();let r;return g(()=>{L(()=>{u=a.$el,u&&d()})}),z(f),a.trigger=n,()=>{if(l.value===!0)return U("object",{style:D.style,tabindex:-1,type:"text/html",data:D.url,"aria-hidden":"true",onLoad:d})}}}});export{oe as Q,te as T,re as a,ne as b,W as c,R as g,ie as n,x as s}; +import{P as _,K as F,L as m,M as S,N as Y,O as h,Q as b,R as P,S as y,T as w,U as C,V as B,c as k,w as M,o as g,k as z,W as j,t as N,X as T,Y as Q,Z as V,r as $,z as H,n as L,p as U}from"./index.70852868.js";const q={left:!0,right:!0,up:!0,down:!0,horizontal:!0,vertical:!0},I=Object.keys(q);q.all=!0;function R(o){const t={};for(const i of I)o[i]===!0&&(t[i]=!0);return Object.keys(t).length===0?q:(t.horizontal===!0?t.left=t.right=!0:t.left===!0&&t.right===!0&&(t.horizontal=!0),t.vertical===!0?t.up=t.down=!0:t.up===!0&&t.down===!0&&(t.vertical=!0),t.horizontal===!0&&t.vertical===!0&&(t.all=!0),t)}const K=["INPUT","TEXTAREA"];function x(o,t){return t.event===void 0&&o.target!==void 0&&o.target.draggable!==!0&&typeof t.handler=="function"&&K.includes(o.target.nodeName.toUpperCase())===!1&&(o.qClonedBy===void 0||o.qClonedBy.indexOf(t.uid)===-1)}function W(){if(window.getSelection!==void 0){const o=window.getSelection();o.empty!==void 0?o.empty():o.removeAllRanges!==void 0&&(o.removeAllRanges(),_.is.mobile!==!0&&o.addRange(document.createRange()))}else document.selection!==void 0&&document.selection.empty()}function E(o,t,i){const u=w(o);let e,n=u.left-t.event.x,s=u.top-t.event.y,a=Math.abs(n),l=Math.abs(s);const r=t.direction;r.horizontal===!0&&r.vertical!==!0?e=n<0?"left":"right":r.horizontal!==!0&&r.vertical===!0?e=s<0?"up":"down":r.up===!0&&s<0?(e="up",a>l&&(r.left===!0&&n<0?e="left":r.right===!0&&n>0&&(e="right"))):r.down===!0&&s>0?(e="down",a>l&&(r.left===!0&&n<0?e="left":r.right===!0&&n>0&&(e="right"))):r.left===!0&&n<0?(e="left",a0&&(e="down"))):r.right===!0&&n>0&&(e="right",a0&&(e="down")));let f=!1;if(e===void 0&&i===!1){if(t.event.isFirst===!0||t.event.lastDir===void 0)return{};e=t.event.lastDir,f=!0,e==="left"||e==="right"?(u.left-=n,a=0,n=0):(u.top-=s,l=0,s=0)}return{synthetic:f,payload:{evt:o,touch:t.event.mouse!==!0,mouse:t.event.mouse===!0,position:u,direction:e,isFirst:t.event.isFirst,isFinal:i===!0,duration:Date.now()-t.event.time,distance:{x:a,y:l},offset:{x:n,y:s},delta:{x:u.left-t.event.lastX,y:u.top-t.event.lastY}}}}let Z=0;var te=F({name:"touch-pan",beforeMount(o,{value:t,modifiers:i}){if(i.mouse!==!0&&m.has.touch!==!0)return;function u(n,s){i.mouse===!0&&s===!0?B(n):(i.stop===!0&&y(n),i.prevent===!0&&P(n))}const e={uid:"qvtp_"+Z++,handler:t,modifiers:i,direction:R(i),noop:S,mouseStart(n){x(n,e)&&Y(n)&&(h(e,"temp",[[document,"mousemove","move","notPassiveCapture"],[document,"mouseup","end","passiveCapture"]]),e.start(n,!0))},touchStart(n){if(x(n,e)){const s=n.target;h(e,"temp",[[s,"touchmove","move","notPassiveCapture"],[s,"touchcancel","end","passiveCapture"],[s,"touchend","end","passiveCapture"]]),e.start(n)}},start(n,s){if(m.is.firefox===!0&&b(o,!0),e.lastEvt=n,s===!0||i.stop===!0){if(e.direction.all!==!0&&(s!==!0||e.modifiers.mouseAllDir!==!0&&e.modifiers.mousealldir!==!0)){const r=n.type.indexOf("mouse")>-1?new MouseEvent(n.type,n):new TouchEvent(n.type,n);n.defaultPrevented===!0&&P(r),n.cancelBubble===!0&&y(r),Object.assign(r,{qKeyEvent:n.qKeyEvent,qClickOutside:n.qClickOutside,qAnchorHandled:n.qAnchorHandled,qClonedBy:n.qClonedBy===void 0?[e.uid]:n.qClonedBy.concat(e.uid)}),e.initialEvent={target:n.target,event:r}}y(n)}const{left:a,top:l}=w(n);e.event={x:a,y:l,time:Date.now(),mouse:s===!0,detected:!1,isFirst:!0,isFinal:!1,lastX:a,lastY:l}},move(n){if(e.event===void 0)return;const s=w(n),a=s.left-e.event.x,l=s.top-e.event.y;if(a===0&&l===0)return;e.lastEvt=n;const r=e.event.mouse===!0,f=()=>{u(n,r);let c;i.preserveCursor!==!0&&i.preservecursor!==!0&&(c=document.documentElement.style.cursor||"",document.documentElement.style.cursor="grabbing"),r===!0&&document.body.classList.add("no-pointer-events--children"),document.body.classList.add("non-selectable"),W(),e.styleCleanup=p=>{if(e.styleCleanup=void 0,c!==void 0&&(document.documentElement.style.cursor=c),document.body.classList.remove("non-selectable"),r===!0){const O=()=>{document.body.classList.remove("no-pointer-events--children")};p!==void 0?setTimeout(()=>{O(),p()},50):O()}else p!==void 0&&p()}};if(e.event.detected===!0){e.event.isFirst!==!0&&u(n,e.event.mouse);const{payload:c,synthetic:p}=E(n,e,!1);c!==void 0&&(e.handler(c)===!1?e.end(n):(e.styleCleanup===void 0&&e.event.isFirst===!0&&f(),e.event.lastX=c.position.left,e.event.lastY=c.position.top,e.event.lastDir=p===!0?void 0:c.direction,e.event.isFirst=!1));return}if(e.direction.all===!0||r===!0&&(e.modifiers.mouseAllDir===!0||e.modifiers.mousealldir===!0)){f(),e.event.detected=!0,e.move(n);return}const d=Math.abs(a),v=Math.abs(l);d!==v&&(e.direction.horizontal===!0&&d>v||e.direction.vertical===!0&&d0||e.direction.left===!0&&d>v&&a<0||e.direction.right===!0&&d>v&&a>0?(e.event.detected=!0,e.move(n)):e.end(n,!0))},end(n,s){if(e.event!==void 0){if(C(e,"temp"),m.is.firefox===!0&&b(o,!1),s===!0)e.styleCleanup!==void 0&&e.styleCleanup(),e.event.detected!==!0&&e.initialEvent!==void 0&&e.initialEvent.target.dispatchEvent(e.initialEvent.event);else if(e.event.detected===!0){e.event.isFirst===!0&&e.handler(E(n===void 0?e.lastEvt:n,e).payload);const{payload:a}=E(n===void 0?e.lastEvt:n,e,!0),l=()=>{e.handler(a)};e.styleCleanup!==void 0?e.styleCleanup(l):l()}e.event=void 0,e.initialEvent=void 0,e.lastEvt=void 0}}};if(o.__qtouchpan=e,i.mouse===!0){const n=i.mouseCapture===!0||i.mousecapture===!0?"Capture":"";h(e,"main",[[o,"mousedown","mouseStart",`passive${n}`]])}m.has.touch===!0&&h(e,"main",[[o,"touchstart","touchStart",`passive${i.capture===!0?"Capture":""}`],[o,"touchmove","noop","notPassiveCapture"]])},updated(o,t){const i=o.__qtouchpan;i!==void 0&&(t.oldValue!==t.value&&(typeof value!="function"&&i.end(),i.handler=t.value),i.direction=R(t.modifiers))},beforeUnmount(o){const t=o.__qtouchpan;t!==void 0&&(t.event!==void 0&&t.end(),C(t,"main"),C(t,"temp"),m.is.firefox===!0&&b(o,!1),t.styleCleanup!==void 0&&t.styleCleanup(),delete o.__qtouchpan)}});function ne(o,t,i){return i<=t?t:Math.min(i,Math.max(t,o))}function ie(o,t,i){if(i<=t)return t;const u=i-t+1;let e=t+(o-t)%u;return eG.includes(o),default:"vertical"},debounce:[String,Number],scrollTarget:{default:void 0}},emits:["scroll"],setup(o,{emit:t}){const i={position:{top:0,left:0},direction:"down",directionChanged:!1,delta:{top:0,left:0},inflectionPoint:{top:0,left:0}};let u=null,e,n;M(()=>o.scrollTarget,()=>{l(),a()});function s(){u!==null&&u();const d=Math.max(0,Q(e)),v=V(e),c={top:d-i.position.top,left:v-i.position.left};if(o.axis==="vertical"&&c.top===0||o.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";i.position={top:d,left:v},i.directionChanged=i.direction!==p,i.delta=c,i.directionChanged===!0&&(i.direction=p,i.inflectionPoint=i.position),t("scroll",{...i})}function a(){e=j(n,o.scrollTarget),e.addEventListener("scroll",r,A),r(!0)}function l(){e!==void 0&&(e.removeEventListener("scroll",r,A),e=void 0)}function r(d){if(d===!0||o.debounce===0||o.debounce==="0")s();else if(u===null){const[v,c]=o.debounce?[setTimeout(s,o.debounce),clearTimeout]:[requestAnimationFrame(s),cancelAnimationFrame];u=()=>{c(v),u=null}}}const{proxy:f}=N();return M(()=>f.$q.lang.rtl,s),g(()=>{n=f.$el.parentNode,a()}),z(()=>{u!==null&&u(),l()}),Object.assign(f,{trigger:r,getPosition:()=>i}),S}});function J(){const o=$(!H.value);return o.value===!1&&g(()=>{o.value=!0}),o}const X=typeof ResizeObserver!="undefined",D=X===!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"};var re=k({name:"QResizeObserver",props:{debounce:{type:[String,Number],default:100}},emits:["resize"],setup(o,{emit:t}){let i=null,u,e={width:-1,height:-1};function n(l){l===!0||o.debounce===0||o.debounce==="0"?s():i===null&&(i=setTimeout(s,o.debounce))}function s(){if(i!==null&&(clearTimeout(i),i=null),u){const{offsetWidth:l,offsetHeight:r}=u;(l!==e.width||r!==e.height)&&(e={width:l,height:r},t("resize",e))}}const{proxy:a}=N();if(X===!0){let l;const r=f=>{u=a.$el.parentNode,u?(l=new ResizeObserver(n),l.observe(u),s()):f!==!0&&L(()=>{r(!0)})};return g(()=>{r()}),z(()=>{i!==null&&clearTimeout(i),l!==void 0&&(l.disconnect!==void 0?l.disconnect():u&&l.unobserve(u))}),S}else{let f=function(){i!==null&&(clearTimeout(i),i=null),r!==void 0&&(r.removeEventListener!==void 0&&r.removeEventListener("resize",n,T.passive),r=void 0)},d=function(){f(),u&&u.contentDocument&&(r=u.contentDocument.defaultView,r.addEventListener("resize",n,T.passive),s())};const l=J();let r;return g(()=>{L(()=>{u=a.$el,u&&d()})}),z(f),a.trigger=n,()=>{if(l.value===!0)return U("object",{style:D.style,tabindex:-1,type:"text/html",data:D.url,"aria-hidden":"true",onLoad:d})}}}});export{oe as Q,te as T,re as a,ne as b,W as c,R as g,ie as n,x as s}; diff --git a/static/market/assets/index.dfb4e5db.js b/static/market/assets/index.70852868.js similarity index 99% rename from static/market/assets/index.dfb4e5db.js rename to static/market/assets/index.70852868.js index 3839619..d3a7149 100644 --- a/static/market/assets/index.dfb4e5db.js +++ b/static/market/assets/index.70852868.js @@ -2,4 +2,4 @@ function Vr(e,t){const n=Object.create(null),o=e.split(",");for(let r=0;r{},rt=Array.isArray,vd=/\/$/,bd=e=>e.replace(vd,"");function rr(e,t,n="/"){let o,r={},i="",s="";const l=t.indexOf("#");let a=t.indexOf("?");return l=0&&(a=-1),a>-1&&(o=t.slice(0,a),i=t.slice(a+1,l>-1?l:t.length),r=e(i)),l>-1&&(o=o||t.slice(0,l),s=t.slice(l,t.length)),o=xd(o!=null?o:t,n),{fullPath:o+(i&&"?")+i+s,path:o,query:r,hash:s}}function yd(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function us(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function _d(e,t,n){const o=t.matched.length-1,r=n.matched.length-1;return o>-1&&o===r&&fn(t.matched[o],n.matched[r])&&pa(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function fn(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function pa(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!wd(e[n],t[n]))return!1;return!0}function wd(e,t){return rt(e)?cs(e,t):rt(t)?cs(t,e):e===t}function cs(e,t){return rt(t)?e.length===t.length&&e.every((n,o)=>n===t[o]):e.length===1&&e[0]===t}function xd(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),o=e.split("/"),r=o[o.length-1];(r===".."||r===".")&&o.push("");let i=n.length-1,s,l;for(s=0;s1&&i--;else break;return n.slice(0,i).join("/")+"/"+o.slice(s-(s===o.length?1:0)).join("/")}var Kn;(function(e){e.pop="pop",e.push="push"})(Kn||(Kn={}));var Bn;(function(e){e.back="back",e.forward="forward",e.unknown=""})(Bn||(Bn={}));function Cd(e){if(!e)if(en){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),bd(e)}const kd=/^[^#]+#/;function Ed(e,t){return e.replace(kd,"#")+t}function Sd(e,t){const n=document.documentElement.getBoundingClientRect(),o=e.getBoundingClientRect();return{behavior:t.behavior,left:o.left-n.left-(t.left||0),top:o.top-n.top-(t.top||0)}}const zo=()=>({left:window.pageXOffset,top:window.pageYOffset});function Rd(e){let t;if("el"in e){const n=e.el,o=typeof n=="string"&&n.startsWith("#"),r=typeof n=="string"?o?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!r)return;t=Sd(r,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.pageXOffset,t.top!=null?t.top:window.pageYOffset)}function fs(e,t){return(history.state?history.state.position-t:-1)+e}const Ar=new Map;function Pd(e,t){Ar.set(e,t)}function Td(e){const t=Ar.get(e);return Ar.delete(e),t}let qd=()=>location.protocol+"//"+location.host;function va(e,t){const{pathname:n,search:o,hash:r}=t,i=e.indexOf("#");if(i>-1){let l=r.includes(e.slice(i))?e.slice(i).length:1,a=r.slice(l);return a[0]!=="/"&&(a="/"+a),us(a,"")}return us(n,e)+o+r}function Ad(e,t,n,o){let r=[],i=[],s=null;const l=({state:f})=>{const p=va(e,location),y=n.value,T=t.value;let q=0;if(f){if(n.value=p,t.value=f,s&&s===y){s=null;return}q=T?f.position-T.position:0}else o(p);r.forEach(M=>{M(n.value,y,{delta:q,type:Kn.pop,direction:q?q>0?Bn.forward:Bn.back:Bn.unknown})})};function a(){s=n.value}function c(f){r.push(f);const p=()=>{const y=r.indexOf(f);y>-1&&r.splice(y,1)};return i.push(p),p}function u(){const{history:f}=window;!f.state||f.replaceState(ge({},f.state,{scroll:zo()}),"")}function d(){for(const f of i)f();i=[],window.removeEventListener("popstate",l),window.removeEventListener("beforeunload",u)}return window.addEventListener("popstate",l),window.addEventListener("beforeunload",u,{passive:!0}),{pauseListeners:a,listen:c,destroy:d}}function ds(e,t,n,o=!1,r=!1){return{back:e,current:t,forward:n,replaced:o,position:window.history.length,scroll:r?zo():null}}function Md(e){const{history:t,location:n}=window,o={value:va(e,n)},r={value:t.state};r.value||i(o.value,{back:null,current:o.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function i(a,c,u){const d=e.indexOf("#"),f=d>-1?(n.host&&document.querySelector("base")?e:e.slice(d))+a:qd()+e+a;try{t[u?"replaceState":"pushState"](c,"",f),r.value=c}catch(p){console.error(p),n[u?"replace":"assign"](f)}}function s(a,c){const u=ge({},t.state,ds(r.value.back,a,r.value.forward,!0),c,{position:r.value.position});i(a,u,!0),o.value=a}function l(a,c){const u=ge({},r.value,t.state,{forward:a,scroll:zo()});i(u.current,u,!0);const d=ge({},ds(o.value,a,null),{position:u.position+1},c);i(a,d,!1),o.value=a}return{location:o,state:r,push:l,replace:s}}function Od(e){e=Cd(e);const t=Md(e),n=Ad(e,t.state,t.location,t.replace);function o(i,s=!0){s||n.pauseListeners(),history.go(i)}const r=ge({location:"",base:e,go:o,createHref:Ed.bind(null,e)},t,n);return Object.defineProperty(r,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(r,"state",{enumerable:!0,get:()=>t.state.value}),r}function $d(e){return e=location.host?e||location.pathname+location.search:"",e.includes("#")||(e+="#"),Od(e)}function Ld(e){return typeof e=="string"||e&&typeof e=="object"}function ba(e){return typeof e=="string"||typeof e=="symbol"}const _t={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0},ya=Symbol("");var hs;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(hs||(hs={}));function dn(e,t){return ge(new Error,{type:e,[ya]:!0},t)}function ft(e,t){return e instanceof Error&&ya in e&&(t==null||!!(e.type&t))}const gs="[^/]+?",Bd={sensitive:!1,strict:!1,start:!0,end:!0},Fd=/[.+*?^${}()[\]/\\]/g;function Id(e,t){const n=ge({},Bd,t),o=[];let r=n.start?"^":"";const i=[];for(const c of e){const u=c.length?[]:[90];n.strict&&!c.length&&(r+="/");for(let d=0;dt.length?t.length===1&&t[0]===40+40?1:-1:0}function jd(e,t){let n=0;const o=e.score,r=t.score;for(;n0&&t[t.length-1]<0}const Vd={type:0,value:""},Dd=/[a-zA-Z0-9_]/;function Hd(e){if(!e)return[[]];if(e==="/")return[[Vd]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(p){throw new Error(`ERR (${n})/"${c}": ${p}`)}let n=0,o=n;const r=[];let i;function s(){i&&r.push(i),i=[]}let l=0,a,c="",u="";function d(){!c||(n===0?i.push({type:0,value:c}):n===1||n===2||n===3?(i.length>1&&(a==="*"||a==="+")&&t(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),i.push({type:1,value:c,regexp:u,repeatable:a==="*"||a==="+",optional:a==="*"||a==="?"})):t("Invalid state to consume buffer"),c="")}function f(){c+=a}for(;l{s(m)}:Ln}function s(u){if(ba(u)){const d=o.get(u);d&&(o.delete(u),n.splice(n.indexOf(d),1),d.children.forEach(s),d.alias.forEach(s))}else{const d=n.indexOf(u);d>-1&&(n.splice(d,1),u.record.name&&o.delete(u.record.name),u.children.forEach(s),u.alias.forEach(s))}}function l(){return n}function a(u){let d=0;for(;d=0&&(u.record.path!==n[d].record.path||!_a(u,n[d]));)d++;n.splice(d,0,u),u.record.name&&!vs(u)&&o.set(u.record.name,u)}function c(u,d){let f,p={},y,T;if("name"in u&&u.name){if(f=o.get(u.name),!f)throw dn(1,{location:u});T=f.record.name,p=ge(ps(d.params,f.keys.filter(m=>!m.optional).map(m=>m.name)),u.params&&ps(u.params,f.keys.map(m=>m.name))),y=f.stringify(p)}else if("path"in u)y=u.path,f=n.find(m=>m.re.test(y)),f&&(p=f.parse(y),T=f.record.name);else{if(f=d.name?o.get(d.name):n.find(m=>m.re.test(d.path)),!f)throw dn(1,{location:u,currentLocation:d});T=f.record.name,p=ge({},d.params,u.params),y=f.stringify(p)}const q=[];let M=f;for(;M;)q.unshift(M.record),M=M.parent;return{name:T,path:y,params:p,matched:q,meta:Qd(q)}}return e.forEach(u=>i(u)),{addRoute:i,resolve:c,removeRoute:s,getRoutes:l,getRecordMatcher:r}}function ps(e,t){const n={};for(const o of t)o in e&&(n[o]=e[o]);return n}function Ud(e){return{path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:void 0,beforeEnter:e.beforeEnter,props:Wd(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}}}function Wd(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const o in e.components)t[o]=typeof n=="object"?n[o]:n;return t}function vs(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Qd(e){return e.reduce((t,n)=>ge(t,n.meta),{})}function bs(e,t){const n={};for(const o in e)n[o]=o in t?t[o]:e[o];return n}function _a(e,t){return t.children.some(n=>n===e||_a(e,n))}const wa=/#/g,Yd=/&/g,Zd=/\//g,Jd=/=/g,Xd=/\?/g,xa=/\+/g,Gd=/%5B/g,eh=/%5D/g,Ca=/%5E/g,th=/%60/g,ka=/%7B/g,nh=/%7C/g,Ea=/%7D/g,oh=/%20/g;function fi(e){return encodeURI(""+e).replace(nh,"|").replace(Gd,"[").replace(eh,"]")}function rh(e){return fi(e).replace(ka,"{").replace(Ea,"}").replace(Ca,"^")}function Mr(e){return fi(e).replace(xa,"%2B").replace(oh,"+").replace(wa,"%23").replace(Yd,"%26").replace(th,"`").replace(ka,"{").replace(Ea,"}").replace(Ca,"^")}function ih(e){return Mr(e).replace(Jd,"%3D")}function sh(e){return fi(e).replace(wa,"%23").replace(Xd,"%3F")}function lh(e){return e==null?"":sh(e).replace(Zd,"%2F")}function Ro(e){try{return decodeURIComponent(""+e)}catch{}return""+e}function ah(e){const t={};if(e===""||e==="?")return t;const o=(e[0]==="?"?e.slice(1):e).split("&");for(let r=0;ri&&Mr(i)):[o&&Mr(o)]).forEach(i=>{i!==void 0&&(t+=(t.length?"&":"")+n,i!=null&&(t+="="+i))})}return t}function uh(e){const t={};for(const n in e){const o=e[n];o!==void 0&&(t[n]=rt(o)?o.map(r=>r==null?null:""+r):o==null?o:""+o)}return t}const ch=Symbol(""),_s=Symbol(""),di=Symbol(""),Sa=Symbol(""),Or=Symbol("");function xn(){let e=[];function t(o){return e.push(o),()=>{const r=e.indexOf(o);r>-1&&e.splice(r,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Ct(e,t,n,o,r){const i=o&&(o.enterCallbacks[r]=o.enterCallbacks[r]||[]);return()=>new Promise((s,l)=>{const a=d=>{d===!1?l(dn(4,{from:n,to:t})):d instanceof Error?l(d):Ld(d)?l(dn(2,{from:t,to:d})):(i&&o.enterCallbacks[r]===i&&typeof d=="function"&&i.push(d),s())},c=e.call(o&&o.instances[r],t,n,a);let u=Promise.resolve(c);e.length<3&&(u=u.then(a)),u.catch(d=>l(d))})}function ir(e,t,n,o){const r=[];for(const i of e)for(const s in i.components){let l=i.components[s];if(!(t!=="beforeRouteEnter"&&!i.instances[s]))if(fh(l)){const c=(l.__vccOpts||l)[t];c&&r.push(Ct(c,n,o,i,s))}else{let a=l();r.push(()=>a.then(c=>{if(!c)return Promise.reject(new Error(`Couldn't resolve component "${s}" at "${i.path}"`));const u=pd(c)?c.default:c;i.components[s]=u;const f=(u.__vccOpts||u)[t];return f&&Ct(f,n,o,i,s)()}))}}return r}function fh(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function ws(e){const t=ut(di),n=ut(Sa),o=R(()=>t.resolve(Vt(e.to))),r=R(()=>{const{matched:a}=o.value,{length:c}=a,u=a[c-1],d=n.matched;if(!u||!d.length)return-1;const f=d.findIndex(fn.bind(null,u));if(f>-1)return f;const p=xs(a[c-2]);return c>1&&xs(u)===p&&d[d.length-1].path!==p?d.findIndex(fn.bind(null,a[c-2])):f}),i=R(()=>r.value>-1&&mh(n.params,o.value.params)),s=R(()=>r.value>-1&&r.value===n.matched.length-1&&pa(n.params,o.value.params));function l(a={}){return gh(a)?t[Vt(e.replace)?"replace":"push"](Vt(e.to)).catch(Ln):Promise.resolve()}return{route:o,href:R(()=>o.value.href),isActive:i,isExactActive:s,navigate:l}}const dh=Lo({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:ws,setup(e,{slots:t}){const n=pn(ws(e)),{options:o}=ut(di),r=R(()=>({[Cs(e.activeClass,o.linkActiveClass,"router-link-active")]:n.isActive,[Cs(e.exactActiveClass,o.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const i=t.default&&t.default(n);return e.custom?i:E("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:r.value},i)}}}),hh=dh;function gh(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function mh(e,t){for(const n in t){const o=t[n],r=e[n];if(typeof o=="string"){if(o!==r)return!1}else if(!rt(r)||r.length!==o.length||o.some((i,s)=>i!==r[s]))return!1}return!0}function xs(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const Cs=(e,t,n)=>e!=null?e:t!=null?t:n,ph=Lo({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const o=ut(Or),r=R(()=>e.route||o.value),i=ut(_s,0),s=R(()=>{let c=Vt(i);const{matched:u}=r.value;let d;for(;(d=u[c])&&!d.components;)c++;return c}),l=R(()=>r.value.matched[s.value]);fo(_s,R(()=>s.value+1)),fo(ch,l),fo(Or,r);const a=he();return be(()=>[a.value,l.value,e.name],([c,u,d],[f,p,y])=>{u&&(u.instances[d]=c,p&&p!==u&&c&&c===f&&(u.leaveGuards.size||(u.leaveGuards=p.leaveGuards),u.updateGuards.size||(u.updateGuards=p.updateGuards))),c&&u&&(!p||!fn(u,p)||!f)&&(u.enterCallbacks[d]||[]).forEach(T=>T(c))},{flush:"post"}),()=>{const c=r.value,u=e.name,d=l.value,f=d&&d.components[u];if(!f)return ks(n.default,{Component:f,route:c});const p=d.props[u],y=p?p===!0?c.params:typeof p=="function"?p(c):p:null,q=E(f,ge({},y,t,{onVnodeUnmounted:M=>{M.component.isUnmounted&&(d.instances[u]=null)},ref:a}));return ks(n.default,{Component:q,route:c})||q}}});function ks(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const vh=ph;function bh(e){const t=Kd(e.routes,e),n=e.parseQuery||ah,o=e.stringifyQuery||ys,r=e.history,i=xn(),s=xn(),l=xn(),a=Yu(_t);let c=_t;en&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=or.bind(null,S=>""+S),d=or.bind(null,lh),f=or.bind(null,Ro);function p(S,Q){let z,X;return ba(S)?(z=t.getRecordMatcher(S),X=Q):X=S,t.addRoute(X,z)}function y(S){const Q=t.getRecordMatcher(S);Q&&t.removeRoute(Q)}function T(){return t.getRoutes().map(S=>S.record)}function q(S){return!!t.getRecordMatcher(S)}function M(S,Q){if(Q=ge({},Q||a.value),typeof S=="string"){const b=rr(n,S,Q.path),P=t.resolve({path:b.path},Q),O=r.createHref(b.fullPath);return ge(b,P,{params:f(P.params),hash:Ro(b.hash),redirectedFrom:void 0,href:O})}let z;if("path"in S)z=ge({},S,{path:rr(n,S.path,Q.path).path});else{const b=ge({},S.params);for(const P in b)b[P]==null&&delete b[P];z=ge({},S,{params:d(b)}),Q.params=d(Q.params)}const X=t.resolve(z,Q),de=S.hash||"";X.params=u(f(X.params));const h=yd(o,ge({},S,{hash:rh(de),path:X.path})),g=r.createHref(h);return ge({fullPath:h,hash:de,query:o===ys?uh(S.query):S.query||{}},X,{redirectedFrom:void 0,href:g})}function m(S){return typeof S=="string"?rr(n,S,a.value.path):ge({},S)}function _(S,Q){if(c!==S)return dn(8,{from:Q,to:S})}function w(S){return V(S)}function F(S){return w(ge(m(S),{replace:!0}))}function j(S){const Q=S.matched[S.matched.length-1];if(Q&&Q.redirect){const{redirect:z}=Q;let X=typeof z=="function"?z(S):z;return typeof X=="string"&&(X=X.includes("?")||X.includes("#")?X=m(X):{path:X},X.params={}),ge({query:S.query,hash:S.hash,params:"path"in X?{}:S.params},X)}}function V(S,Q){const z=c=M(S),X=a.value,de=S.state,h=S.force,g=S.replace===!0,b=j(z);if(b)return V(ge(m(b),{state:typeof b=="object"?ge({},de,b.state):de,force:h,replace:g}),Q||z);const P=z;P.redirectedFrom=Q;let O;return!h&&_d(o,X,z)&&(O=dn(16,{to:P,from:X}),fe(X,X,!0,!1)),(O?Promise.resolve(O):x(P,X)).catch(B=>ft(B)?ft(B,2)?B:se(B):W(B,P,X)).then(B=>{if(B){if(ft(B,2))return V(ge({replace:g},m(B.to),{state:typeof B.to=="object"?ge({},de,B.to.state):de,force:h}),Q||P)}else B=v(P,X,!0,g,de);return $(P,X,B),B})}function N(S,Q){const z=_(S,Q);return z?Promise.reject(z):Promise.resolve()}function C(S){const Q=Re.values().next().value;return Q&&typeof Q.runWithContext=="function"?Q.runWithContext(S):S()}function x(S,Q){let z;const[X,de,h]=yh(S,Q);z=ir(X.reverse(),"beforeRouteLeave",S,Q);for(const b of X)b.leaveGuards.forEach(P=>{z.push(Ct(P,S,Q))});const g=N.bind(null,S,Q);return z.push(g),ne(z).then(()=>{z=[];for(const b of i.list())z.push(Ct(b,S,Q));return z.push(g),ne(z)}).then(()=>{z=ir(de,"beforeRouteUpdate",S,Q);for(const b of de)b.updateGuards.forEach(P=>{z.push(Ct(P,S,Q))});return z.push(g),ne(z)}).then(()=>{z=[];for(const b of h)if(b.beforeEnter)if(rt(b.beforeEnter))for(const P of b.beforeEnter)z.push(Ct(P,S,Q));else z.push(Ct(b.beforeEnter,S,Q));return z.push(g),ne(z)}).then(()=>(S.matched.forEach(b=>b.enterCallbacks={}),z=ir(h,"beforeRouteEnter",S,Q),z.push(g),ne(z))).then(()=>{z=[];for(const b of s.list())z.push(Ct(b,S,Q));return z.push(g),ne(z)}).catch(b=>ft(b,8)?b:Promise.reject(b))}function $(S,Q,z){l.list().forEach(X=>C(()=>X(S,Q,z)))}function v(S,Q,z,X,de){const h=_(S,Q);if(h)return h;const g=Q===_t,b=en?history.state:{};z&&(X||g?r.replace(S.fullPath,ge({scroll:g&&b&&b.scroll},de)):r.push(S.fullPath,de)),a.value=S,fe(S,Q,z,g),se()}let H;function k(){H||(H=r.listen((S,Q,z)=>{if(!oe.listening)return;const X=M(S),de=j(X);if(de){V(ge(de,{replace:!0}),X).catch(Ln);return}c=X;const h=a.value;en&&Pd(fs(h.fullPath,z.delta),zo()),x(X,h).catch(g=>ft(g,12)?g:ft(g,2)?(V(g.to,X).then(b=>{ft(b,20)&&!z.delta&&z.type===Kn.pop&&r.go(-1,!1)}).catch(Ln),Promise.reject()):(z.delta&&r.go(-z.delta,!1),W(g,X,h))).then(g=>{g=g||v(X,h,!1),g&&(z.delta&&!ft(g,8)?r.go(-z.delta,!1):z.type===Kn.pop&&ft(g,20)&&r.go(-1,!1)),$(X,h,g)}).catch(Ln)}))}let Z=xn(),Y=xn(),A;function W(S,Q,z){se(S);const X=Y.list();return X.length?X.forEach(de=>de(S,Q,z)):console.error(S),Promise.reject(S)}function _e(){return A&&a.value!==_t?Promise.resolve():new Promise((S,Q)=>{Z.add([S,Q])})}function se(S){return A||(A=!S,k(),Z.list().forEach(([Q,z])=>S?z(S):Q()),Z.reset()),S}function fe(S,Q,z,X){const{scrollBehavior:de}=e;if(!en||!de)return Promise.resolve();const h=!z&&Td(fs(S.fullPath,0))||(X||!z)&&history.state&&history.state.scroll||null;return je().then(()=>de(S,Q,h)).then(g=>g&&Rd(g)).catch(g=>W(g,S,Q))}const L=S=>r.go(S);let ue;const Re=new Set,oe={currentRoute:a,listening:!0,addRoute:p,removeRoute:y,hasRoute:q,getRoutes:T,resolve:M,options:e,push:w,replace:F,go:L,back:()=>L(-1),forward:()=>L(1),beforeEach:i.add,beforeResolve:s.add,afterEach:l.add,onError:Y.add,isReady:_e,install(S){const Q=this;S.component("RouterLink",hh),S.component("RouterView",vh),S.config.globalProperties.$router=Q,Object.defineProperty(S.config.globalProperties,"$route",{enumerable:!0,get:()=>Vt(a)}),en&&!ue&&a.value===_t&&(ue=!0,w(r.location).catch(de=>{}));const z={};for(const de in _t)Object.defineProperty(z,de,{get:()=>a.value[de],enumerable:!0});S.provide(di,Q),S.provide(Sa,ml(z)),S.provide(Or,a);const X=S.unmount;Re.add(S),S.unmount=function(){Re.delete(S),Re.size<1&&(c=_t,H&&H(),H=null,a.value=_t,ue=!1,A=!1),X()}}};function ne(S){return S.reduce((Q,z)=>Q.then(()=>C(z)),Promise.resolve())}return oe}function yh(e,t){const n=[],o=[],r=[],i=Math.max(t.matched.length,e.matched.length);for(let s=0;sfn(c,l))?o.push(l):n.push(l));const a=e.matched[s];a&&(t.matched.find(c=>fn(c,a))||r.push(a))}return[n,o,r]}const _h=function(){const t=document.createElement("link").relList;return t&&t.supports&&t.supports("modulepreload")?"modulepreload":"preload"}(),Es={},wh="/nostrmarket/static/market/",sr=function(t,n){return!n||n.length===0?t():Promise.all(n.map(o=>{if(o=`${wh}${o}`,o in Es)return;Es[o]=!0;const r=o.endsWith(".css"),i=r?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${o}"]${i}`))return;const s=document.createElement("link");if(s.rel=r?"stylesheet":_h,r||(s.as="script",s.crossOrigin=""),s.href=o,document.head.appendChild(s),r)return new Promise((l,a)=>{s.addEventListener("load",l),s.addEventListener("error",()=>a(new Error(`Unable to preload CSS for ${o}`)))})})).then(()=>t())},xh=[{path:"/",component:()=>sr(()=>import("./MainLayout.8257fc44.js"),["assets/MainLayout.8257fc44.js","assets/QResizeObserver.0b22f089.js"]),children:[{path:"",component:()=>sr(()=>import("./MarketPage.b14abdfe.js"),["assets/MarketPage.b14abdfe.js","assets/QResizeObserver.0b22f089.js"])}]},{path:"/:catchAll(.*)*",component:()=>sr(()=>import("./ErrorNotFound.e659d628.js"),[])}];var lr=function(){return bh({scrollBehavior:()=>({left:0,top:0}),routes:xh,history:$d("/nostrmarket/static/market/")})};async function Ch(e,t){const n=e(md);n.use(fd,t);const o=vn(typeof lr=="function"?await lr({}):lr);return{app:n,router:o}}const $r={xs:18,sm:24,md:32,lg:38,xl:46},Yn={size:String};function Zn(e,t=$r){return R(()=>e.size!==void 0?{fontSize:e.size in t?`${t[e.size]}px`:e.size}:null)}const $e=e=>vn(Lo(e)),kh=e=>vn(e);function tt(e,t){return e!==void 0&&e()||t}function $m(e,t){if(e!==void 0){const n=e();if(n!=null)return n.slice()}return t}function It(e,t){return e!==void 0?t.concat(e()):t}function Eh(e,t){return e===void 0?t:t!==void 0?t.concat(e()):e()}function Lm(e,t,n,o,r,i){t.key=o+r;const s=E(e,t,n);return r===!0?Al(s,i()):s}const Ss="0 0 24 24",Rs=e=>e,ar=e=>`ionicons ${e}`,Ra={"mdi-":e=>`mdi ${e}`,"icon-":Rs,"bt-":e=>`bt ${e}`,"eva-":e=>`eva ${e}`,"ion-md":ar,"ion-ios":ar,"ion-logo":ar,"iconfont ":Rs,"ti-":e=>`themify-icon ${e}`,"bi-":e=>`bootstrap-icons ${e}`},Pa={o_:"-outlined",r_:"-round",s_:"-sharp"},Ta={sym_o_:"-outlined",sym_r_:"-rounded",sym_s_:"-sharp"},Sh=new RegExp("^("+Object.keys(Ra).join("|")+")"),Rh=new RegExp("^("+Object.keys(Pa).join("|")+")"),Ps=new RegExp("^("+Object.keys(Ta).join("|")+")"),Ph=/^[Mm]\s?[-+]?\.?\d/,Th=/^img:/,qh=/^svguse:/,Ah=/^ion-/,Mh=/^(fa-(sharp|solid|regular|light|brands|duotone|thin)|[lf]a[srlbdk]?) /;var pt=$e({name:"QIcon",props:{...Yn,tag:{type:String,default:"i"},name:String,color:String,left:Boolean,right:Boolean},setup(e,{slots:t}){const{proxy:{$q:n}}=ke(),o=Zn(e),r=R(()=>"q-icon"+(e.left===!0?" on-left":"")+(e.right===!0?" on-right":"")+(e.color!==void 0?` text-${e.color}`:"")),i=R(()=>{let s,l=e.name;if(l==="none"||!l)return{none:!0};if(n.iconMapFn!==null){const u=n.iconMapFn(l);if(u!==void 0)if(u.icon!==void 0){if(l=u.icon,l==="none"||!l)return{none:!0}}else return{cls:u.cls,content:u.content!==void 0?u.content:" "}}if(Ph.test(l)===!0){const[u,d=Ss]=l.split("|");return{svg:!0,viewBox:d,nodes:u.split("&&").map(f=>{const[p,y,T]=f.split("@@");return E("path",{style:y,d:p,transform:T})})}}if(Th.test(l)===!0)return{img:!0,src:l.substring(4)};if(qh.test(l)===!0){const[u,d=Ss]=l.split("|");return{svguse:!0,src:u.substring(7),viewBox:d}}let a=" ";const c=l.match(Sh);if(c!==null)s=Ra[c[1]](l);else if(Mh.test(l)===!0)s=l;else if(Ah.test(l)===!0)s=`ionicons ion-${n.platform.is.ios===!0?"ios":"md"}${l.substring(3)}`;else if(Ps.test(l)===!0){s="notranslate material-symbols";const u=l.match(Ps);u!==null&&(l=l.substring(6),s+=Ta[u[1]]),a=l}else{s="notranslate material-icons";const u=l.match(Rh);u!==null&&(l=l.substring(2),s+=Pa[u[1]]),a=l}return{cls:s,content:a}});return()=>{const s={class:r.value,style:o.value,"aria-hidden":"true",role:"presentation"};return i.value.none===!0?E(e.tag,s,tt(t.default)):i.value.img===!0?E("span",s,It(t.default,[E("img",{src:i.value.src})])):i.value.svg===!0?E("span",s,It(t.default,[E("svg",{viewBox:i.value.viewBox||"0 0 24 24"},i.value.nodes)])):i.value.svguse===!0?E("span",s,It(t.default,[E("svg",{viewBox:i.value.viewBox},[E("use",{"xlink:href":i.value.src})])])):(i.value.cls!==void 0&&(s.class+=" "+i.value.cls),E(e.tag,s,It(t.default,[i.value.content])))}}}),Oh=$e({name:"QAvatar",props:{...Yn,fontSize:String,color:String,textColor:String,icon:String,square:Boolean,rounded:Boolean},setup(e,{slots:t}){const n=Zn(e),o=R(()=>"q-avatar"+(e.color?` bg-${e.color}`:"")+(e.textColor?` text-${e.textColor} q-chip--colored`:"")+(e.square===!0?" q-avatar--square":e.rounded===!0?" rounded-borders":"")),r=R(()=>e.fontSize?{fontSize:e.fontSize}:null);return()=>{const i=e.icon!==void 0?[E(pt,{name:e.icon})]:void 0;return E("div",{class:o.value,style:n.value},[E("div",{class:"q-avatar__content row flex-center overflow-hidden",style:r.value},Eh(t.default,i))])}}});const $h={size:{type:[Number,String],default:"1em"},color:String};function Lh(e){return{cSize:R(()=>e.size in $r?`${$r[e.size]}px`:e.size),classes:R(()=>"q-spinner"+(e.color?` text-${e.color}`:""))}}var Un=$e({name:"QSpinner",props:{...$h,thickness:{type:Number,default:5}},setup(e){const{cSize:t,classes:n}=Lh(e);return()=>E("svg",{class:n.value+" q-spinner-mat",width:t.value,height:t.value,viewBox:"25 25 50 50"},[E("circle",{class:"path",cx:"50",cy:"50",r:"20",fill:"none",stroke:"currentColor","stroke-width":e.thickness,"stroke-miterlimit":"10"})])}});function Bm(e){return e===window?window.innerHeight:e.getBoundingClientRect().height}function Lr(e,t){const n=e.style;for(const o in t)n[o]=t[o]}function Bh(e){if(e==null)return;if(typeof e=="string")try{return document.querySelector(e)||void 0}catch{return}const t=Vt(e);if(t)return t.$el||t}function Fh(e,t){if(e==null||e.contains(t)===!0)return!0;for(let n=e.nextElementSibling;n!==null;n=n.nextElementSibling)if(n.contains(t))return!0;return!1}function Ih(e,t=250){let n=!1,o;return function(){return n===!1&&(n=!0,setTimeout(()=>{n=!1},t),o=e.apply(this,arguments)),o}}function Ts(e,t,n,o){n.modifiers.stop===!0&&ko(e);const r=n.modifiers.color;let i=n.modifiers.center;i=i===!0||o===!0;const s=document.createElement("span"),l=document.createElement("span"),a=Hf(e),{left:c,top:u,width:d,height:f}=t.getBoundingClientRect(),p=Math.sqrt(d*d+f*f),y=p/2,T=`${(d-p)/2}px`,q=i?T:`${a.left-c-y}px`,M=`${(f-p)/2}px`,m=i?M:`${a.top-u-y}px`;l.className="q-ripple__inner",Lr(l,{height:`${p}px`,width:`${p}px`,transform:`translate3d(${q},${m},0) scale3d(.2,.2,1)`,opacity:0}),s.className=`q-ripple${r?" text-"+r:""}`,s.setAttribute("dir","ltr"),s.appendChild(l),t.appendChild(s);const _=()=>{s.remove(),clearTimeout(w)};n.abort.push(_);let w=setTimeout(()=>{l.classList.add("q-ripple__inner--enter"),l.style.transform=`translate3d(${T},${M},0) scale3d(1,1,1)`,l.style.opacity=.2,w=setTimeout(()=>{l.classList.remove("q-ripple__inner--enter"),l.classList.add("q-ripple__inner--leave"),l.style.opacity=0,w=setTimeout(()=>{s.remove(),n.abort.splice(n.abort.indexOf(_),1)},275)},250)},50)}function qs(e,{modifiers:t,value:n,arg:o}){const r=Object.assign({},e.cfg.ripple,t,n);e.modifiers={early:r.early===!0,stop:r.stop===!0,center:r.center===!0,color:r.color||o,keyCodes:[].concat(r.keyCodes||13)}}var Nh=kh({name:"ripple",beforeMount(e,t){const n=t.instance.$.appContext.config.globalProperties.$q.config||{};if(n.ripple===!1)return;const o={cfg:n,enabled:t.value!==!1,modifiers:{},abort:[],start(r){o.enabled===!0&&r.qSkipRipple!==!0&&r.type===(o.modifiers.early===!0?"pointerdown":"click")&&Ts(r,e,o,r.qKeyEvent===!0)},keystart:Ih(r=>{o.enabled===!0&&r.qSkipRipple!==!0&&zn(r,o.modifiers.keyCodes)===!0&&r.type===`key${o.modifiers.early===!0?"down":"up"}`&&Ts(r,e,o,!0)},300)};qs(o,t),e.__qripple=o,Kf(o,"main",[[e,"pointerdown","start","passive"],[e,"click","start","passive"],[e,"keydown","keystart","passive"],[e,"keyup","keystart","passive"]])},updated(e,t){if(t.oldValue!==t.value){const n=e.__qripple;n!==void 0&&(n.enabled=t.value!==!1,n.enabled===!0&&Object(t.value)===t.value&&qs(n,t))}},beforeUnmount(e){const t=e.__qripple;t!==void 0&&(t.abort.forEach(n=>{n()}),Uf(t,"main"),delete e._qripple)}});const qa={left:"start",center:"center",right:"end",between:"between",around:"around",evenly:"evenly",stretch:"stretch"},jh=Object.keys(qa),Aa={align:{type:String,validator:e=>jh.includes(e)}};function Ma(e){return R(()=>{const t=e.align===void 0?e.vertical===!0?"stretch":"left":e.align;return`${e.vertical===!0?"items":"justify"}-${qa[t]}`})}function go(e){if(Object(e.$parent)===e.$parent)return e.$parent;let{parent:t}=e.$;for(;Object(t)===t;){if(Object(t.proxy)===t.proxy)return t.proxy;t=t.parent}}function Oa(e,t){typeof t.type=="symbol"?Array.isArray(t.children)===!0&&t.children.forEach(n=>{Oa(e,n)}):e.add(t)}function Fm(e){const t=new Set;return e.forEach(n=>{Oa(t,n)}),Array.from(t)}function $a(e){return e.appContext.config.globalProperties.$router!==void 0}function La(e){return e.isUnmounted===!0||e.isDeactivated===!0}function As(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}function Ms(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Vh(e,t){for(const n in t){const o=t[n],r=e[n];if(typeof o=="string"){if(o!==r)return!1}else if(Array.isArray(r)===!1||r.length!==o.length||o.some((i,s)=>i!==r[s]))return!1}return!0}function Os(e,t){return Array.isArray(t)===!0?e.length===t.length&&e.every((n,o)=>n===t[o]):e.length===1&&e[0]===t}function Dh(e,t){return Array.isArray(e)===!0?Os(e,t):Array.isArray(t)===!0?Os(t,e):e===t}function Hh(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(Dh(e[n],t[n])===!1)return!1;return!0}const zh={to:[String,Object],replace:Boolean,exact:Boolean,activeClass:{type:String,default:"q-router-link--active"},exactActiveClass:{type:String,default:"q-router-link--exact-active"},href:String,target:String,disable:Boolean};function Kh({fallbackTag:e,useDisableForRouterLinkProps:t=!0}={}){const n=ke(),{props:o,proxy:r,emit:i}=n,s=$a(n),l=R(()=>o.disable!==!0&&o.href!==void 0),a=R(t===!0?()=>s===!0&&o.disable!==!0&&l.value!==!0&&o.to!==void 0&&o.to!==null&&o.to!=="":()=>s===!0&&l.value!==!0&&o.to!==void 0&&o.to!==null&&o.to!==""),c=R(()=>a.value===!0?m(o.to):null),u=R(()=>c.value!==null),d=R(()=>l.value===!0||u.value===!0),f=R(()=>o.type==="a"||d.value===!0?"a":o.tag||e||"div"),p=R(()=>l.value===!0?{href:o.href,target:o.target}:u.value===!0?{href:c.value.href,target:o.target}:{}),y=R(()=>{if(u.value===!1)return-1;const{matched:F}=c.value,{length:j}=F,V=F[j-1];if(V===void 0)return-1;const N=r.$route.matched;if(N.length===0)return-1;const C=N.findIndex(Ms.bind(null,V));if(C>-1)return C;const x=As(F[j-2]);return j>1&&As(V)===x&&N[N.length-1].path!==x?N.findIndex(Ms.bind(null,F[j-2])):C}),T=R(()=>u.value===!0&&y.value!==-1&&Vh(r.$route.params,c.value.params)),q=R(()=>T.value===!0&&y.value===r.$route.matched.length-1&&Hh(r.$route.params,c.value.params)),M=R(()=>u.value===!0?q.value===!0?` ${o.exactActiveClass} ${o.activeClass}`:o.exact===!0?"":T.value===!0?` ${o.activeClass}`:"":"");function m(F){try{return r.$router.resolve(F)}catch{}return null}function _(F,{returnRouterError:j,to:V=o.to,replace:N=o.replace}={}){if(o.disable===!0)return F.preventDefault(),Promise.resolve(!1);if(F.metaKey||F.altKey||F.ctrlKey||F.shiftKey||F.button!==void 0&&F.button!==0||o.target==="_blank")return Promise.resolve(!1);F.preventDefault();const C=r.$router[N===!0?"replace":"push"](V);return j===!0?C:C.then(()=>{}).catch(()=>{})}function w(F){if(u.value===!0){const j=V=>_(F,V);i("click",F,j),F.defaultPrevented!==!0&&j()}else i("click",F)}return{hasRouterLink:u,hasHrefLink:l,hasLink:d,linkTag:f,resolvedLink:c,linkIsActive:T,linkIsExactActive:q,linkClass:M,linkAttrs:p,getLink:m,navigateToRouterLink:_,navigateOnClick:w}}const $s={none:0,xs:4,sm:8,md:16,lg:24,xl:32},Uh={xs:8,sm:10,md:14,lg:20,xl:24},Wh=["button","submit","reset"],Qh=/[^\s]\/[^\s]/,Yh=["flat","outline","push","unelevated"],Ba=(e,t)=>e.flat===!0?"flat":e.outline===!0?"outline":e.push===!0?"push":e.unelevated===!0?"unelevated":t,Im=e=>{const t=Ba(e);return t!==void 0?{[t]:!0}:{}},Zh={...Yn,...zh,type:{type:String,default:"button"},label:[Number,String],icon:String,iconRight:String,...Yh.reduce((e,t)=>(e[t]=Boolean)&&e,{}),square:Boolean,round:Boolean,rounded:Boolean,glossy:Boolean,size:String,fab:Boolean,fabMini:Boolean,padding:String,color:String,textColor:String,noCaps:Boolean,noWrap:Boolean,dense:Boolean,tabindex:[Number,String],ripple:{type:[Boolean,Object],default:!0},align:{...Aa.align,default:"center"},stack:Boolean,stretch:Boolean,loading:{type:Boolean,default:null},disable:Boolean};function Jh(e){const t=Zn(e,Uh),n=Ma(e),{hasRouterLink:o,hasLink:r,linkTag:i,linkAttrs:s,navigateOnClick:l}=Kh({fallbackTag:"button"}),a=R(()=>{const q=e.fab===!1&&e.fabMini===!1?t.value:{};return e.padding!==void 0?Object.assign({},q,{padding:e.padding.split(/\s+/).map(M=>M in $s?$s[M]+"px":M).join(" "),minWidth:"0",minHeight:"0"}):q}),c=R(()=>e.rounded===!0||e.fab===!0||e.fabMini===!0),u=R(()=>e.disable!==!0&&e.loading!==!0),d=R(()=>u.value===!0?e.tabindex||0:-1),f=R(()=>Ba(e,"standard")),p=R(()=>{const q={tabindex:d.value};return r.value===!0?Object.assign(q,s.value):Wh.includes(e.type)===!0&&(q.type=e.type),i.value==="a"?(e.disable===!0?q["aria-disabled"]="true":q.href===void 0&&(q.role="button"),o.value!==!0&&Qh.test(e.type)===!0&&(q.type=e.type)):e.disable===!0&&(q.disabled="",q["aria-disabled"]="true"),e.loading===!0&&e.percentage!==void 0&&Object.assign(q,{role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":e.percentage}),q}),y=R(()=>{let q;e.color!==void 0?e.flat===!0||e.outline===!0?q=`text-${e.textColor||e.color}`:q=`bg-${e.color} text-${e.textColor||"white"}`:e.textColor&&(q=`text-${e.textColor}`);const M=e.round===!0?"round":`rectangle${c.value===!0?" q-btn--rounded":e.square===!0?" q-btn--square":""}`;return`q-btn--${f.value} q-btn--${M}`+(q!==void 0?" "+q:"")+(u.value===!0?" q-btn--actionable q-focusable q-hoverable":e.disable===!0?" disabled":"")+(e.fab===!0?" q-btn--fab":e.fabMini===!0?" q-btn--fab-mini":"")+(e.noCaps===!0?" q-btn--no-uppercase":"")+(e.dense===!0?" q-btn--dense":"")+(e.stretch===!0?" no-border-radius self-stretch":"")+(e.glossy===!0?" glossy":"")+(e.square?" q-btn--square":"")}),T=R(()=>n.value+(e.stack===!0?" column":" row")+(e.noWrap===!0?" no-wrap text-no-wrap":"")+(e.loading===!0?" q-btn__content--hidden":""));return{classes:y,style:a,innerClasses:T,attributes:p,hasLink:r,linkTag:i,navigateOnClick:l,isActionable:u}}const{passiveCapture:He}=Be;let Jt=null,Xt=null,Gt=null;var Br=$e({name:"QBtn",props:{...Zh,percentage:Number,darkPercentage:Boolean,onTouchstart:[Function,Array]},emits:["click","keydown","mousedown","keyup"],setup(e,{slots:t,emit:n}){const{proxy:o}=ke(),{classes:r,style:i,innerClasses:s,attributes:l,hasLink:a,linkTag:c,navigateOnClick:u,isActionable:d}=Jh(e),f=he(null),p=he(null);let y=null,T,q=null;const M=R(()=>e.label!==void 0&&e.label!==null&&e.label!==""),m=R(()=>e.disable===!0||e.ripple===!1?!1:{keyCodes:a.value===!0?[13,32]:[13],...e.ripple===!0?{}:e.ripple}),_=R(()=>({center:e.round})),w=R(()=>{const k=Math.max(0,Math.min(100,e.percentage));return k>0?{transition:"transform 0.6s",transform:`translateX(${k-100}%)`}:{}}),F=R(()=>{if(e.loading===!0)return{onMousedown:H,onTouchstart:H,onClick:H,onKeydown:H,onKeyup:H};if(d.value===!0){const k={onClick:V,onKeydown:N,onMousedown:x};if(o.$q.platform.has.touch===!0){const Z=e.onTouchstart!==void 0?"":"Passive";k[`onTouchstart${Z}`]=C}return k}return{onClick:Ke}}),j=R(()=>({ref:f,class:"q-btn q-btn-item non-selectable no-outline "+r.value,style:i.value,...l.value,...F.value}));function V(k){if(f.value!==null){if(k!==void 0){if(k.defaultPrevented===!0)return;const Z=document.activeElement;if(e.type==="submit"&&Z!==document.body&&f.value.contains(Z)===!1&&Z.contains(f.value)===!1){f.value.focus();const Y=()=>{document.removeEventListener("keydown",Ke,!0),document.removeEventListener("keyup",Y,He),f.value!==null&&f.value.removeEventListener("blur",Y,He)};document.addEventListener("keydown",Ke,!0),document.addEventListener("keyup",Y,He),f.value.addEventListener("blur",Y,He)}}u(k)}}function N(k){f.value!==null&&(n("keydown",k),zn(k,[13,32])===!0&&Xt!==f.value&&(Xt!==null&&v(),k.defaultPrevented!==!0&&(f.value.focus(),Xt=f.value,f.value.classList.add("q-btn--active"),document.addEventListener("keyup",$,!0),f.value.addEventListener("blur",$,He)),Ke(k)))}function C(k){f.value!==null&&(n("touchstart",k),k.defaultPrevented!==!0&&(Jt!==f.value&&(Jt!==null&&v(),Jt=f.value,y=k.target,y.addEventListener("touchcancel",$,He),y.addEventListener("touchend",$,He)),T=!0,q!==null&&clearTimeout(q),q=setTimeout(()=>{q=null,T=!1},200)))}function x(k){f.value!==null&&(k.qSkipRipple=T===!0,n("mousedown",k),k.defaultPrevented!==!0&&Gt!==f.value&&(Gt!==null&&v(),Gt=f.value,f.value.classList.add("q-btn--active"),document.addEventListener("mouseup",$,He)))}function $(k){if(f.value!==null&&!(k!==void 0&&k.type==="blur"&&document.activeElement===f.value)){if(k!==void 0&&k.type==="keyup"){if(Xt===f.value&&zn(k,[13,32])===!0){const Z=new MouseEvent("click",k);Z.qKeyEvent=!0,k.defaultPrevented===!0&&Et(Z),k.cancelBubble===!0&&ko(Z),f.value.dispatchEvent(Z),Ke(k),k.qKeyEvent=!0}n("keyup",k)}v()}}function v(k){const Z=p.value;k!==!0&&(Jt===f.value||Gt===f.value)&&Z!==null&&Z!==document.activeElement&&(Z.setAttribute("tabindex",-1),Z.focus()),Jt===f.value&&(y!==null&&(y.removeEventListener("touchcancel",$,He),y.removeEventListener("touchend",$,He)),Jt=y=null),Gt===f.value&&(document.removeEventListener("mouseup",$,He),Gt=null),Xt===f.value&&(document.removeEventListener("keyup",$,!0),f.value!==null&&f.value.removeEventListener("blur",$,He),Xt=null),f.value!==null&&f.value.classList.remove("q-btn--active")}function H(k){Ke(k),k.qSkipRipple=!0}return We(()=>{v(!0)}),Object.assign(o,{click:V}),()=>{let k=[];e.icon!==void 0&&k.push(E(pt,{name:e.icon,left:e.stack===!1&&M.value===!0,role:"img","aria-hidden":"true"})),M.value===!0&&k.push(E("span",{class:"block"},[e.label])),k=It(t.default,k),e.iconRight!==void 0&&e.round===!1&&k.push(E(pt,{name:e.iconRight,right:e.stack===!1&&M.value===!0,role:"img","aria-hidden":"true"}));const Z=[E("span",{class:"q-focus-helper",ref:p})];return e.loading===!0&&e.percentage!==void 0&&Z.push(E("span",{class:"q-btn__progress absolute-full overflow-hidden"+(e.darkPercentage===!0?" q-btn__progress--dark":"")},[E("span",{class:"q-btn__progress-indicator fit block",style:w.value})])),Z.push(E("span",{class:"q-btn__content text-center col items-center q-anchor--skip "+s.value},k)),e.loading!==null&&Z.push(E(cn,{name:"q-transition--fade"},()=>e.loading===!0?[E("span",{key:"loading",class:"absolute-full flex flex-center"},t.loading!==void 0?t.loading():[E(Un)])]:null)),Al(E(c.value,j.value,Z),[[Nh,m.value,void 0,_.value]])}}});let Xh=1,Gh=document.body;function hi(e,t){const n=document.createElement("div");if(n.id=t!==void 0?`q-portal--${t}--${Xh++}`:e,So.globalNodes!==void 0){const o=So.globalNodes.class;o!==void 0&&(n.className=o)}return Gh.appendChild(n),n}function Fa(e){e.remove()}let eg=0;const mo={},po={},Je={},Ia={},tg=/^\s*$/,Na=[],gi=["top-left","top-right","bottom-left","bottom-right","top","bottom","left","right","center"],ng=["top-left","top-right","bottom-left","bottom-right"],tn={positive:{icon:e=>e.iconSet.type.positive,color:"positive"},negative:{icon:e=>e.iconSet.type.negative,color:"negative"},warning:{icon:e=>e.iconSet.type.warning,color:"warning",textColor:"dark"},info:{icon:e=>e.iconSet.type.info,color:"info"},ongoing:{group:!1,timeout:0,spinner:!0,color:"grey-8"}};function ja(e,t,n){if(!e)return Cn("parameter required");let o;const r={textColor:"white"};if(e.ignoreDefaults!==!0&&Object.assign(r,mo),at(e)===!1&&(r.type&&Object.assign(r,tn[r.type]),e={message:e}),Object.assign(r,tn[e.type||r.type],e),typeof r.icon=="function"&&(r.icon=r.icon(t)),r.spinner?(r.spinner===!0&&(r.spinner=Un),r.spinner=vn(r.spinner)):r.spinner=!1,r.meta={hasMedia:Boolean(r.spinner!==!1||r.icon||r.avatar),hasText:Ls(r.message)||Ls(r.caption)},r.position){if(gi.includes(r.position)===!1)return Cn("wrong position",e)}else r.position="bottom";if(r.timeout===void 0)r.timeout=5e3;else{const a=parseInt(r.timeout,10);if(isNaN(a)||a<0)return Cn("wrong timeout",e);r.timeout=a}r.timeout===0?r.progress=!1:r.progress===!0&&(r.meta.progressClass="q-notification__progress"+(r.progressClass?` ${r.progressClass}`:""),r.meta.progressStyle={animationDuration:`${r.timeout+1e3}ms`});const i=(Array.isArray(e.actions)===!0?e.actions:[]).concat(e.ignoreDefaults!==!0&&Array.isArray(mo.actions)===!0?mo.actions:[]).concat(tn[e.type]!==void 0&&Array.isArray(tn[e.type].actions)===!0?tn[e.type].actions:[]),{closeBtn:s}=r;if(s&&i.push({label:typeof s=="string"?s:t.lang.label.close}),r.actions=i.map(({handler:a,noDismiss:c,...u})=>({flat:!0,...u,onClick:typeof a=="function"?()=>{a(),c!==!0&&l()}:()=>{l()}})),r.multiLine===void 0&&(r.multiLine=r.actions.length>1),Object.assign(r.meta,{class:`q-notification row items-stretch q-notification--${r.multiLine===!0?"multi-line":"standard"}`+(r.color!==void 0?` bg-${r.color}`:"")+(r.textColor!==void 0?` text-${r.textColor}`:"")+(r.classes!==void 0?` ${r.classes}`:""),wrapperClass:"q-notification__wrapper col relative-position border-radius-inherit "+(r.multiLine===!0?"column no-wrap justify-center":"row items-center"),contentClass:"q-notification__content row items-center"+(r.multiLine===!0?"":" col"),leftClass:r.meta.hasText===!0?"additional":"single",attrs:{role:"alert",...r.attrs}}),r.group===!1?(r.group=void 0,r.meta.group=void 0):((r.group===void 0||r.group===!0)&&(r.group=[r.message,r.caption,r.multiline].concat(r.actions.map(a=>`${a.label}*${a.icon}`)).join("|")),r.meta.group=r.group+"|"+r.position),r.actions.length===0?r.actions=void 0:r.meta.actionsClass="q-notification__actions row items-center "+(r.multiLine===!0?"justify-end":"col-auto")+(r.meta.hasMedia===!0?" q-notification__actions--with-media":""),n!==void 0){n.notif.meta.timer&&(clearTimeout(n.notif.meta.timer),n.notif.meta.timer=void 0),r.meta.uid=n.notif.meta.uid;const a=Je[r.position].value.indexOf(n.notif);Je[r.position].value[a]=r}else{const a=po[r.meta.group];if(a===void 0){if(r.meta.uid=eg++,r.meta.badge=1,["left","right","center"].indexOf(r.position)!==-1)Je[r.position].value.splice(Math.floor(Je[r.position].value.length/2),0,r);else{const c=r.position.indexOf("top")>-1?"unshift":"push";Je[r.position].value[c](r)}r.group!==void 0&&(po[r.meta.group]=r)}else{if(a.meta.timer&&(clearTimeout(a.meta.timer),a.meta.timer=void 0),r.badgePosition!==void 0){if(ng.includes(r.badgePosition)===!1)return Cn("wrong badgePosition",e)}else r.badgePosition=`top-${r.position.indexOf("left")>-1?"right":"left"}`;r.meta.uid=a.meta.uid,r.meta.badge=a.meta.badge+1,r.meta.badgeClass=`q-notification__badge q-notification__badge--${r.badgePosition}`+(r.badgeColor!==void 0?` bg-${r.badgeColor}`:"")+(r.badgeTextColor!==void 0?` text-${r.badgeTextColor}`:"")+(r.badgeClass?` ${r.badgeClass}`:"");const c=Je[r.position].value.indexOf(a);Je[r.position].value[c]=po[r.meta.group]=r}}const l=()=>{og(r),o=void 0};if(r.timeout>0&&(r.meta.timer=setTimeout(()=>{r.meta.timer=void 0,l()},r.timeout+1e3)),r.group!==void 0)return a=>{a!==void 0?Cn("trying to update a grouped one which is forbidden",e):l()};if(o={dismiss:l,config:e,notif:r},n!==void 0){Object.assign(n,o);return}return a=>{if(o!==void 0)if(a===void 0)o.dismiss();else{const c=Object.assign({},o.config,a,{group:!1,position:r.position});ja(c,t,o)}}}function og(e){e.meta.timer&&(clearTimeout(e.meta.timer),e.meta.timer=void 0);const t=Je[e.position].value.indexOf(e);if(t!==-1){e.group!==void 0&&delete po[e.meta.group];const n=Na[""+e.meta.uid];if(n){const{width:o,height:r}=getComputedStyle(n);n.style.left=`${n.offsetLeft}px`,n.style.width=o,n.style.height=r}Je[e.position].value.splice(t,1),typeof e.onDismiss=="function"&&e.onDismiss()}}function Ls(e){return e!=null&&tg.test(e)!==!0}function Cn(e,t){return console.error(`Notify: ${e}`,t),!1}function rg(){return $e({name:"QNotifications",devtools:{hide:!0},setup(){return()=>E("div",{class:"q-notifications"},gi.map(e=>E(Tf,{key:e,class:Ia[e],tag:"div",name:`q-notification--${e}`},()=>Je[e].value.map(t=>{const n=t.meta,o=[];if(n.hasMedia===!0&&(t.spinner!==!1?o.push(E(t.spinner,{class:"q-notification__spinner q-notification__spinner--"+n.leftClass,color:t.spinnerColor,size:t.spinnerSize})):t.icon?o.push(E(pt,{class:"q-notification__icon q-notification__icon--"+n.leftClass,name:t.icon,color:t.iconColor,size:t.iconSize,role:"img"})):t.avatar&&o.push(E(Oh,{class:"q-notification__avatar q-notification__avatar--"+n.leftClass},()=>E("img",{src:t.avatar,"aria-hidden":"true"})))),n.hasText===!0){let i;const s={class:"q-notification__message col"};if(t.html===!0)s.innerHTML=t.caption?`
${t.message}
${t.caption}
`:t.message;else{const l=[t.message];i=t.caption?[E("div",l),E("div",{class:"q-notification__caption"},[t.caption])]:l}o.push(E("div",s,i))}const r=[E("div",{class:n.contentClass},o)];return t.progress===!0&&r.push(E("div",{key:`${n.uid}|p|${n.badge}`,class:n.progressClass,style:n.progressStyle})),t.actions!==void 0&&r.push(E("div",{class:n.actionsClass},t.actions.map(i=>E(Br,i)))),n.badge>1&&r.push(E("div",{key:`${n.uid}|${n.badge}`,class:t.meta.badgeClass,style:t.badgeStyle},[n.badge])),E("div",{ref:i=>{Na[""+n.uid]=i},key:n.uid,class:n.class,...n.attrs},[E("div",{class:n.wrapperClass},r)])}))))}})}var ig={setDefaults(e){at(e)===!0&&Object.assign(mo,e)},registerType(e,t){at(t)===!0&&(tn[e]=t)},install({$q:e,parentApp:t}){if(e.notify=this.create=n=>ja(n,e),e.notify.setDefaults=this.setDefaults,e.notify.registerType=this.registerType,e.config.notify!==void 0&&this.setDefaults(e.config.notify),this.__installed!==!0){gi.forEach(o=>{Je[o]=he([]);const r=["left","center","right"].includes(o)===!0?"center":o.indexOf("top")>-1?"top":"bottom",i=o.indexOf("left")>-1?"start":o.indexOf("right")>-1?"end":"center",s=["left","right"].includes(o)?`items-${o==="left"?"start":"end"} justify-center`:o==="center"?"flex-center":`items-${i}`;Ia[o]=`q-notifications__list q-notifications__list--${r} fixed column no-wrap ${s}`});const n=hi("q-notify");ma(rg(),t).mount(n)}}};function sg(e){return ld(e)===!0?"__q_date|"+e.toUTCString():ad(e)===!0?"__q_expr|"+e.source:typeof e=="number"?"__q_numb|"+e:typeof e=="boolean"?"__q_bool|"+(e?"1":"0"):typeof e=="string"?"__q_strn|"+e:typeof e=="function"?"__q_strn|"+e.toString():e===Object(e)?"__q_objt|"+JSON.stringify(e):e}function lg(e){if(e.length<9)return e;const n=e.substring(0,8),o=e.substring(9);switch(n){case"__q_date":return new Date(o);case"__q_expr":return new RegExp(o);case"__q_numb":return Number(o);case"__q_bool":return Boolean(o==="1");case"__q_strn":return""+o;case"__q_objt":return JSON.parse(o);default:return e}}function ag(){const e=()=>null;return{has:()=>!1,getLength:()=>0,getItem:e,getIndex:e,getKey:e,getAll:()=>{},getAllKeys:()=>[],set:Pt,remove:Pt,clear:Pt,isEmpty:()=>!0}}function ug(e){const t=window[e+"Storage"],n=o=>{const r=t.getItem(o);return r?lg(r):null};return{has:o=>t.getItem(o)!==null,getLength:()=>t.length,getItem:n,getIndex:o=>oo{let o;const r={},i=t.length;for(let s=0;s{const o=[],r=t.length;for(let i=0;i{t.setItem(o,sg(r))},remove:o=>{t.removeItem(o)},clear:()=>{t.clear()},isEmpty:()=>t.length===0}}const Va=we.has.webStorage===!1?ag():ug("local"),Da={install({$q:e}){e.localStorage=Va}};Object.assign(Da,Va);function cg(e,t,n){let o;function r(){o!==void 0&&(qr.remove(o),o=void 0)}return We(()=>{e.value===!0&&r()}),{removeFromHistory:r,addToHistory(){o={condition:()=>n.value===!0,handler:t},qr.add(o)}}}function fg(){let e=null;const t=ke();function n(){e!==null&&(clearTimeout(e),e=null)}return Fo(n),We(n),{removeTimeout:n,registerTimeout(o,r){n(),La(t)===!1&&(e=setTimeout(o,r))}}}function dg(){let e;const t=ke();function n(){e=void 0}return Fo(n),We(n),{removeTick:n,registerTick(o){e=o,je(()=>{e===o&&(La(t)===!1&&e(),e=void 0)})}}}const hg={modelValue:{type:Boolean,default:null},"onUpdate:modelValue":[Function,Array]},gg=["beforeShow","show","beforeHide","hide"];function mg({showing:e,canShow:t,hideOnRouteChange:n,handleShow:o,handleHide:r,processOnMount:i}){const s=ke(),{props:l,emit:a,proxy:c}=s;let u;function d(m){e.value===!0?y(m):f(m)}function f(m){if(l.disable===!0||m!==void 0&&m.qAnchorHandled===!0||t!==void 0&&t(m)!==!0)return;const _=l["onUpdate:modelValue"]!==void 0;_===!0&&(a("update:modelValue",!0),u=m,je(()=>{u===m&&(u=void 0)})),(l.modelValue===null||_===!1)&&p(m)}function p(m){e.value!==!0&&(e.value=!0,a("beforeShow",m),o!==void 0?o(m):a("show",m))}function y(m){if(l.disable===!0)return;const _=l["onUpdate:modelValue"]!==void 0;_===!0&&(a("update:modelValue",!1),u=m,je(()=>{u===m&&(u=void 0)})),(l.modelValue===null||_===!1)&&T(m)}function T(m){e.value!==!1&&(e.value=!1,a("beforeHide",m),r!==void 0?r(m):a("hide",m))}function q(m){l.disable===!0&&m===!0?l["onUpdate:modelValue"]!==void 0&&a("update:modelValue",!1):m===!0!==e.value&&(m===!0?p:T)(u)}be(()=>l.modelValue,q),n!==void 0&&$a(s)===!0&&be(()=>c.$route.fullPath,()=>{n.value===!0&&e.value===!0&&y()}),i===!0&&Ut(()=>{q(l.modelValue)});const M={show:f,hide:y,toggle:d};return Object.assign(c,M),M}const pg={transitionShow:{type:String,default:"fade"},transitionHide:{type:String,default:"fade"},transitionDuration:{type:[String,Number],default:300}};function vg(e,t=()=>{},n=()=>{}){return{transitionProps:R(()=>{const o=`q-transition--${e.transitionShow||t()}`,r=`q-transition--${e.transitionHide||n()}`;return{appear:!0,enterFromClass:`${o}-enter-from`,enterActiveClass:`${o}-enter-active`,enterToClass:`${o}-enter-to`,leaveFromClass:`${r}-leave-from`,leaveActiveClass:`${r}-leave-active`,leaveToClass:`${r}-leave-to`}}),transitionStyle:R(()=>`--q-transition-duration: ${e.transitionDuration}ms`)}}let Nt=[],Wn=[];function Ha(e){Wn=Wn.filter(t=>t!==e)}function bg(e){Ha(e),Wn.push(e)}function Bs(e){Ha(e),Wn.length===0&&Nt.length!==0&&(Nt[Nt.length-1](),Nt=[])}function mi(e){Wn.length===0?e():Nt.push(e)}function yg(e){Nt=Nt.filter(t=>t!==e)}const vo=[];function Nm(e){return vo.find(t=>t.contentEl!==null&&t.contentEl.contains(e))}function _g(e,t){do{if(e.$options.name==="QMenu"){if(e.hide(t),e.$props.separateClosePopup===!0)return go(e)}else if(e.__qPortal===!0){const n=go(e);return n!==void 0&&n.$options.name==="QPopupProxy"?(e.hide(t),n):e}e=go(e)}while(e!=null)}function jm(e,t,n){for(;n!==0&&e!==void 0&&e!==null;){if(e.__qPortal===!0){if(n--,e.$options.name==="QMenu"){e=_g(e,t);continue}e.hide(t)}e=go(e)}}function wg(e){for(e=e.parent;e!=null;){if(e.type.name==="QGlobalDialog")return!0;if(e.type.name==="QDialog"||e.type.name==="QMenu")return!1;e=e.parent}return!1}function xg(e,t,n,o){const r=he(!1),i=he(!1);let s=null;const l={},a=o==="dialog"&&wg(e);function c(d){if(d===!0){Bs(l),i.value=!0;return}i.value=!1,r.value===!1&&(a===!1&&s===null&&(s=hi(!1,o)),r.value=!0,vo.push(e.proxy),bg(l))}function u(d){if(i.value=!1,d!==!0)return;Bs(l),r.value=!1;const f=vo.indexOf(e.proxy);f!==-1&&vo.splice(f,1),s!==null&&(Fa(s),s=null)}return ii(()=>{u(!0)}),e.proxy.__qPortal=!0,bn(e.proxy,"contentEl",()=>t.value),{showPortal:c,hidePortal:u,portalIsActive:r,portalIsAccessible:i,renderPortal:()=>a===!0?n():r.value===!0?[E(zc,{to:s},n())]:void 0}}const Cg=[null,document,document.body,document.scrollingElement,document.documentElement];function Vm(e,t){let n=Bh(t);if(n===void 0){if(e==null)return window;n=e.closest(".scroll,.scroll-y,.overflow-auto")}return Cg.includes(n)?window:n}function Dm(e){return(e===window?document.body:e).scrollHeight}function za(e){return e===window?window.pageYOffset||window.scrollY||document.body.scrollTop||0:e.scrollTop}function Ka(e){return e===window?window.pageXOffset||window.scrollX||document.body.scrollLeft||0:e.scrollLeft}function Ua(e,t,n=0){const o=arguments[3]===void 0?performance.now():arguments[3],r=za(e);if(n<=0){r!==t&&Fr(e,t);return}requestAnimationFrame(i=>{const s=i-o,l=r+(t-r)/Math.max(s,n)*s;Fr(e,l),l!==t&&Ua(e,t,n-s,i)})}function Wa(e,t,n=0){const o=arguments[3]===void 0?performance.now():arguments[3],r=Ka(e);if(n<=0){r!==t&&Ir(e,t);return}requestAnimationFrame(i=>{const s=i-o,l=r+(t-r)/Math.max(s,n)*s;Ir(e,l),l!==t&&Wa(e,t,n-s,i)})}function Fr(e,t){if(e===window){window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,t);return}e.scrollTop=t}function Ir(e,t){if(e===window){window.scrollTo(t,window.pageYOffset||window.scrollY||document.body.scrollTop||0);return}e.scrollLeft=t}function Hm(e,t,n){if(n){Ua(e,t,n);return}Fr(e,t)}function zm(e,t,n){if(n){Wa(e,t,n);return}Ir(e,t)}let ro;function Km(){if(ro!==void 0)return ro;const e=document.createElement("p"),t=document.createElement("div");Lr(e,{width:"100%",height:"200px"}),Lr(t,{position:"absolute",top:"0px",left:"0px",visibility:"hidden",width:"200px",height:"150px",overflow:"hidden"}),t.appendChild(e),document.body.appendChild(t);const n=e.offsetWidth;t.style.overflow="scroll";let o=e.offsetWidth;return n===o&&(o=t.clientWidth),t.remove(),ro=n-o,ro}function kg(e,t=!0){return!e||e.nodeType!==Node.ELEMENT_NODE?!1:t?e.scrollHeight>e.clientHeight&&(e.classList.contains("scroll")||e.classList.contains("overflow-auto")||["auto","scroll"].includes(window.getComputedStyle(e)["overflow-y"])):e.scrollWidth>e.clientWidth&&(e.classList.contains("scroll")||e.classList.contains("overflow-auto")||["auto","scroll"].includes(window.getComputedStyle(e)["overflow-x"]))}let kn=0,ur,cr,Tn,fr=!1,Fs,Is,Ns,$t=null;function Eg(e){Sg(e)&&Ke(e)}function Sg(e){if(e.target===document.body||e.target.classList.contains("q-layout__backdrop"))return!0;const t=zf(e),n=e.shiftKey&&!e.deltaX,o=!n&&Math.abs(e.deltaX)<=Math.abs(e.deltaY),r=n||o?e.deltaY:e.deltaX;for(let i=0;i0&&s.scrollTop+s.clientHeight===s.scrollHeight:r<0&&s.scrollLeft===0?!0:r>0&&s.scrollLeft+s.clientWidth===s.scrollWidth}return!0}function js(e){e.target===document&&(document.scrollingElement.scrollTop=document.scrollingElement.scrollTop)}function io(e){fr!==!0&&(fr=!0,requestAnimationFrame(()=>{fr=!1;const{height:t}=e.target,{clientHeight:n,scrollTop:o}=document.scrollingElement;(Tn===void 0||t!==window.innerHeight)&&(Tn=n-t,document.scrollingElement.scrollTop=o),o>Tn&&(document.scrollingElement.scrollTop-=Math.ceil((o-Tn)/8))}))}function Vs(e){const t=document.body,n=window.visualViewport!==void 0;if(e==="add"){const{overflowY:o,overflowX:r}=window.getComputedStyle(t);ur=Ka(window),cr=za(window),Fs=t.style.left,Is=t.style.top,Ns=window.location.href,t.style.left=`-${ur}px`,t.style.top=`-${cr}px`,r!=="hidden"&&(r==="scroll"||t.scrollWidth>window.innerWidth)&&t.classList.add("q-body--force-scrollbar-x"),o!=="hidden"&&(o==="scroll"||t.scrollHeight>window.innerHeight)&&t.classList.add("q-body--force-scrollbar-y"),t.classList.add("q-body--prevent-scroll"),document.qScrollPrevented=!0,we.is.ios===!0&&(n===!0?(window.scrollTo(0,0),window.visualViewport.addEventListener("resize",io,Be.passiveCapture),window.visualViewport.addEventListener("scroll",io,Be.passiveCapture),window.scrollTo(0,0)):window.addEventListener("scroll",js,Be.passiveCapture))}we.is.desktop===!0&&we.is.mac===!0&&window[`${e}EventListener`]("wheel",Eg,Be.notPassive),e==="remove"&&(we.is.ios===!0&&(n===!0?(window.visualViewport.removeEventListener("resize",io,Be.passiveCapture),window.visualViewport.removeEventListener("scroll",io,Be.passiveCapture)):window.removeEventListener("scroll",js,Be.passiveCapture)),t.classList.remove("q-body--prevent-scroll"),t.classList.remove("q-body--force-scrollbar-x"),t.classList.remove("q-body--force-scrollbar-y"),document.qScrollPrevented=!1,t.style.left=Fs,t.style.top=Is,window.location.href===Ns&&window.scrollTo(ur,cr),Tn=void 0)}function Rg(e){let t="add";if(e===!0){if(kn++,$t!==null){clearTimeout($t),$t=null;return}if(kn>1)return}else{if(kn===0||(kn--,kn>0))return;if(t="remove",we.is.ios===!0&&we.is.nativeMobile===!0){$t!==null&&clearTimeout($t),$t=setTimeout(()=>{Vs(t),$t=null},100);return}}Vs(t)}function Pg(){let e;return{preventBodyScroll(t){t!==e&&(e!==void 0||t===!0)&&(e=t,Rg(t))}}}const Ht=[];let hn;function Tg(e){hn=e.keyCode===27}function qg(){hn===!0&&(hn=!1)}function Ag(e){hn===!0&&(hn=!1,zn(e,27)===!0&&Ht[Ht.length-1](e))}function Qa(e){window[e]("keydown",Tg),window[e]("blur",qg),window[e]("keyup",Ag),hn=!1}function Mg(e){we.is.desktop===!0&&(Ht.push(e),Ht.length===1&&Qa("addEventListener"))}function Ds(e){const t=Ht.indexOf(e);t>-1&&(Ht.splice(t,1),Ht.length===0&&Qa("removeEventListener"))}const zt=[];function Ya(e){zt[zt.length-1](e)}function Og(e){we.is.desktop===!0&&(zt.push(e),zt.length===1&&document.body.addEventListener("focusin",Ya))}function Hs(e){const t=zt.indexOf(e);t>-1&&(zt.splice(t,1),zt.length===0&&document.body.removeEventListener("focusin",Ya))}let so=0;const $g={standard:"fixed-full flex-center",top:"fixed-top justify-center",bottom:"fixed-bottom justify-center",right:"fixed-right items-center",left:"fixed-left items-center"},zs={standard:["scale","scale"],top:["slide-down","slide-up"],bottom:["slide-up","slide-down"],right:["slide-left","slide-right"],left:["slide-right","slide-left"]};var Lg=$e({name:"QDialog",inheritAttrs:!1,props:{...hg,...pg,transitionShow:String,transitionHide:String,persistent:Boolean,autoClose:Boolean,allowFocusOutside:Boolean,noEscDismiss:Boolean,noBackdropDismiss:Boolean,noRouteDismiss:Boolean,noRefocus:Boolean,noFocus:Boolean,noShake:Boolean,seamless:Boolean,maximized:Boolean,fullWidth:Boolean,fullHeight:Boolean,square:Boolean,position:{type:String,default:"standard",validator:e=>e==="standard"||["top","bottom","left","right"].includes(e)}},emits:[...gg,"shake","click","escapeKey"],setup(e,{slots:t,emit:n,attrs:o}){const r=ke(),i=he(null),s=he(!1),l=he(!1);let a=null,c=null,u,d;const f=R(()=>e.persistent!==!0&&e.noRouteDismiss!==!0&&e.seamless!==!0),{preventBodyScroll:p}=Pg(),{registerTimeout:y}=fg(),{registerTick:T,removeTick:q}=dg(),{transitionProps:M,transitionStyle:m}=vg(e,()=>zs[e.position][0],()=>zs[e.position][1]),{showPortal:_,hidePortal:w,portalIsAccessible:F,renderPortal:j}=xg(r,i,Re,"dialog"),{hide:V}=mg({showing:s,hideOnRouteChange:f,handleShow:k,handleHide:Z,processOnMount:!0}),{addToHistory:N,removeFromHistory:C}=cg(s,V,f),x=R(()=>`q-dialog__inner flex no-pointer-events q-dialog__inner--${e.maximized===!0?"maximized":"minimized"} q-dialog__inner--${e.position} ${$g[e.position]}`+(l.value===!0?" q-dialog__inner--animating":"")+(e.fullWidth===!0?" q-dialog__inner--fullwidth":"")+(e.fullHeight===!0?" q-dialog__inner--fullheight":"")+(e.square===!0?" q-dialog__inner--square":"")),$=R(()=>s.value===!0&&e.seamless!==!0),v=R(()=>e.autoClose===!0?{onClick:fe}:{}),H=R(()=>[`q-dialog fullscreen no-pointer-events q-dialog--${$.value===!0?"modal":"seamless"}`,o.class]);be(()=>e.maximized,oe=>{s.value===!0&&se(oe)}),be($,oe=>{p(oe),oe===!0?(Og(ue),Mg(W)):(Hs(ue),Ds(W))});function k(oe){N(),c=e.noRefocus===!1&&document.activeElement!==null?document.activeElement:null,se(e.maximized),_(),l.value=!0,e.noFocus!==!0?(document.activeElement!==null&&document.activeElement.blur(),T(Y)):q(),y(()=>{if(r.proxy.$q.platform.is.ios===!0){if(e.seamless!==!0&&document.activeElement){const{top:ne,bottom:S}=document.activeElement.getBoundingClientRect(),{innerHeight:Q}=window,z=window.visualViewport!==void 0?window.visualViewport.height:Q;ne>0&&S>z/2&&(document.scrollingElement.scrollTop=Math.min(document.scrollingElement.scrollHeight-z,S>=Q?1/0:Math.ceil(document.scrollingElement.scrollTop+S-z/2))),document.activeElement.scrollIntoView()}d=!0,i.value.click(),d=!1}_(!0),l.value=!1,n("show",oe)},e.transitionDuration)}function Z(oe){q(),C(),_e(!0),l.value=!0,w(),c!==null&&(((oe&&oe.type.indexOf("key")===0?c.closest('[tabindex]:not([tabindex^="-"])'):void 0)||c).focus(),c=null),y(()=>{w(!0),l.value=!1,n("hide",oe)},e.transitionDuration)}function Y(oe){mi(()=>{let ne=i.value;ne===null||ne.contains(document.activeElement)===!0||(ne=(oe!==""?ne.querySelector(oe):null)||ne.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||ne.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||ne.querySelector("[autofocus], [data-autofocus]")||ne,ne.focus({preventScroll:!0}))})}function A(oe){oe&&typeof oe.focus=="function"?oe.focus({preventScroll:!0}):Y(),n("shake");const ne=i.value;ne!==null&&(ne.classList.remove("q-animate--scale"),ne.classList.add("q-animate--scale"),a!==null&&clearTimeout(a),a=setTimeout(()=>{a=null,i.value!==null&&(ne.classList.remove("q-animate--scale"),Y())},170))}function W(){e.seamless!==!0&&(e.persistent===!0||e.noEscDismiss===!0?e.maximized!==!0&&e.noShake!==!0&&A():(n("escapeKey"),V()))}function _e(oe){a!==null&&(clearTimeout(a),a=null),(oe===!0||s.value===!0)&&(se(!1),e.seamless!==!0&&(p(!1),Hs(ue),Ds(W))),oe!==!0&&(c=null)}function se(oe){oe===!0?u!==!0&&(so<1&&document.body.classList.add("q-body--dialog"),so++,u=!0):u===!0&&(so<2&&document.body.classList.remove("q-body--dialog"),so--,u=!1)}function fe(oe){d!==!0&&(V(oe),n("click",oe))}function L(oe){e.persistent!==!0&&e.noBackdropDismiss!==!0?V(oe):e.noShake!==!0&&A()}function ue(oe){e.allowFocusOutside!==!0&&F.value===!0&&Fh(i.value,oe.target)!==!0&&Y('[tabindex]:not([tabindex="-1"])')}Object.assign(r.proxy,{focus:Y,shake:A,__updateRefocusTarget(oe){c=oe||null}}),We(_e);function Re(){return E("div",{role:"dialog","aria-modal":$.value===!0?"true":"false",...o,class:H.value},[E(cn,{name:"q-transition--fade",appear:!0},()=>$.value===!0?E("div",{class:"q-dialog__backdrop fixed-full",style:m.value,"aria-hidden":"true",tabindex:-1,onClick:L}):null),E(cn,M.value,()=>s.value===!0?E("div",{ref:i,class:x.value,style:m.value,tabindex:-1,...v.value},tt(t.default)):null)])}return j}});const Wt={dark:{type:Boolean,default:null}};function Qt(e,t){return R(()=>e.dark===null?t.dark.isActive:e.dark)}var Bg=$e({name:"QCard",props:{...Wt,tag:{type:String,default:"div"},square:Boolean,flat:Boolean,bordered:Boolean},setup(e,{slots:t}){const{proxy:{$q:n}}=ke(),o=Qt(e,n),r=R(()=>"q-card"+(o.value===!0?" q-card--dark q-dark":"")+(e.bordered===!0?" q-card--bordered":"")+(e.square===!0?" q-card--square no-border-radius":"")+(e.flat===!0?" q-card--flat no-shadow":""));return()=>E(e.tag,{class:r.value},tt(t.default))}}),En=$e({name:"QCardSection",props:{tag:{type:String,default:"div"},horizontal:Boolean},setup(e,{slots:t}){const n=R(()=>`q-card__section q-card__section--${e.horizontal===!0?"horiz row no-wrap":"vert"}`);return()=>E(e.tag,{class:n.value},tt(t.default))}}),Fg=$e({name:"QCardActions",props:{...Aa,vertical:Boolean},setup(e,{slots:t}){const n=Ma(e),o=R(()=>`q-card__actions ${n.value} q-card__actions--${e.vertical===!0?"vert column":"horiz row"}`);return()=>E("div",{class:o.value},tt(t.default))}});const Ig={true:"inset",item:"item-inset","item-thumbnail":"item-thumbnail-inset"},dr={xs:2,sm:4,md:8,lg:16,xl:24};var Ks=$e({name:"QSeparator",props:{...Wt,spaced:[Boolean,String],inset:[Boolean,String],vertical:Boolean,color:String,size:String},setup(e){const t=ke(),n=Qt(e,t.proxy.$q),o=R(()=>e.vertical===!0?"vertical":"horizontal"),r=R(()=>` q-separator--${o.value}`),i=R(()=>e.inset!==!1?`${r.value}-${Ig[e.inset]}`:""),s=R(()=>`q-separator${r.value}${i.value}`+(e.color!==void 0?` bg-${e.color}`:"")+(n.value===!0?" q-separator--dark":"")),l=R(()=>{const a={};if(e.size!==void 0&&(a[e.vertical===!0?"width":"height"]=e.size),e.spaced!==!1){const c=e.spaced===!0?`${dr.md}px`:e.spaced in dr?`${dr[e.spaced]}px`:e.spaced,u=e.vertical===!0?["Left","Right"]:["Top","Bottom"];a[`margin${u[0]}`]=a[`margin${u[1]}`]=c}return a});return()=>E("hr",{class:s.value,style:l.value,"aria-orientation":o.value})}});function Ng({validate:e,resetValidation:t,requiresQForm:n}){const o=ut(id,!1);if(o!==!1){const{props:r,proxy:i}=ke();Object.assign(i,{validate:e,resetValidation:t}),be(()=>r.disable,s=>{s===!0?(typeof t=="function"&&t(),o.unbindComponent(i)):o.bindComponent(i)}),Ut(()=>{r.disable!==!0&&o.bindComponent(i)}),We(()=>{r.disable!==!0&&o.unbindComponent(i)})}else n===!0&&console.error("Parent QForm not found on useFormChild()!")}const Us=/^#[0-9a-fA-F]{3}([0-9a-fA-F]{3})?$/,Ws=/^#[0-9a-fA-F]{4}([0-9a-fA-F]{4})?$/,Qs=/^#([0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/,lo=/^rgb\(((0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),){2}(0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5])\)$/,ao=/^rgba\(((0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),){2}(0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),(0|0\.[0-9]+[1-9]|0\.[1-9]+|1)\)$/,hr={date:e=>/^-?[\d]+\/[0-1]\d\/[0-3]\d$/.test(e),time:e=>/^([0-1]?\d|2[0-3]):[0-5]\d$/.test(e),fulltime:e=>/^([0-1]?\d|2[0-3]):[0-5]\d:[0-5]\d$/.test(e),timeOrFulltime:e=>/^([0-1]?\d|2[0-3]):[0-5]\d(:[0-5]\d)?$/.test(e),email:e=>/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e),hexColor:e=>Us.test(e),hexaColor:e=>Ws.test(e),hexOrHexaColor:e=>Qs.test(e),rgbColor:e=>lo.test(e),rgbaColor:e=>ao.test(e),rgbOrRgbaColor:e=>lo.test(e)||ao.test(e),hexOrRgbColor:e=>Us.test(e)||lo.test(e),hexaOrRgbaColor:e=>Ws.test(e)||ao.test(e),anyColor:e=>Qs.test(e)||lo.test(e)||ao.test(e)},jg=[!0,!1,"ondemand"],Vg={modelValue:{},error:{type:Boolean,default:null},errorMessage:String,noErrorIcon:Boolean,rules:Array,reactiveRules:Boolean,lazyRules:{type:[Boolean,String],validator:e=>jg.includes(e)}};function Dg(e,t){const{props:n,proxy:o}=ke(),r=he(!1),i=he(null),s=he(null);Ng({validate:y,resetValidation:p});let l=0,a;const c=R(()=>n.rules!==void 0&&n.rules!==null&&n.rules.length!==0),u=R(()=>n.disable!==!0&&c.value===!0),d=R(()=>n.error===!0||r.value===!0),f=R(()=>typeof n.errorMessage=="string"&&n.errorMessage.length!==0?n.errorMessage:i.value);be(()=>n.modelValue,()=>{T()}),be(()=>n.reactiveRules,M=>{M===!0?a===void 0&&(a=be(()=>n.rules,()=>{T(!0)})):a!==void 0&&(a(),a=void 0)},{immediate:!0}),be(e,M=>{M===!0?s.value===null&&(s.value=!1):s.value===!1&&(s.value=!0,u.value===!0&&n.lazyRules!=="ondemand"&&t.value===!1&&q())});function p(){l++,t.value=!1,s.value=null,r.value=!1,i.value=null,q.cancel()}function y(M=n.modelValue){if(u.value!==!0)return!0;const m=++l,_=t.value!==!0?()=>{s.value=!0}:()=>{},w=(j,V)=>{j===!0&&_(),r.value=j,i.value=V||null,t.value=!1},F=[];for(let j=0;j{if(j===void 0||Array.isArray(j)===!1||j.length===0)return m===l&&w(!1),!0;const V=j.find(N=>N===!1||typeof N=="string");return m===l&&w(V!==void 0,V),V===void 0},j=>(m===l&&(console.error(j),w(!0)),!1)))}function T(M){u.value===!0&&n.lazyRules!=="ondemand"&&(s.value===!0||n.lazyRules!==!0&&M!==!0)&&q()}const q=ua(y,0);return We(()=>{a!==void 0&&a(),q.cancel()}),Object.assign(o,{resetValidation:p,validate:y}),bn(o,"hasError",()=>d.value),{isDirtyModel:s,hasRules:c,hasError:d,errorMessage:f,validate:y,resetValidation:p}}const Ys=/^on[A-Z]/;function Hg(e,t){const n={listeners:he({}),attributes:he({})};function o(){const r={},i={};for(const s in e)s!=="class"&&s!=="style"&&Ys.test(s)===!1&&(r[s]=e[s]);for(const s in t.props)Ys.test(s)===!0&&(i[s]=t.props[s]);n.attributes.value=r,n.listeners.value=i}return Fl(o),o(),n}let gr,uo=0;const Te=new Array(256);for(let e=0;e<256;e++)Te[e]=(e+256).toString(16).substring(1);const zg=(()=>{const e=typeof crypto!="undefined"?crypto:typeof window!="undefined"?window.crypto||window.msCrypto:void 0;if(e!==void 0){if(e.randomBytes!==void 0)return e.randomBytes;if(e.getRandomValues!==void 0)return t=>{const n=new Uint8Array(t);return e.getRandomValues(n),n}}return t=>{const n=[];for(let o=t;o>0;o--)n.push(Math.floor(Math.random()*256));return n}})(),Zs=4096;function Kg(){(gr===void 0||uo+16>Zs)&&(uo=0,gr=zg(Zs));const e=Array.prototype.slice.call(gr,uo,uo+=16);return e[6]=e[6]&15|64,e[8]=e[8]&63|128,Te[e[0]]+Te[e[1]]+Te[e[2]]+Te[e[3]]+"-"+Te[e[4]]+Te[e[5]]+"-"+Te[e[6]]+Te[e[7]]+"-"+Te[e[8]]+Te[e[9]]+"-"+Te[e[10]]+Te[e[11]]+Te[e[12]]+Te[e[13]]+Te[e[14]]+Te[e[15]]}function Nr(e){return e===void 0?`f_${Kg()}`:e}function jr(e){return e!=null&&(""+e).length!==0}const Ug={...Wt,...Vg,label:String,stackLabel:Boolean,hint:String,hideHint:Boolean,prefix:String,suffix:String,labelColor:String,color:String,bgColor:String,filled:Boolean,outlined:Boolean,borderless:Boolean,standout:[Boolean,String],square:Boolean,loading:Boolean,labelSlot:Boolean,bottomSlots:Boolean,hideBottomSpace:Boolean,rounded:Boolean,dense:Boolean,itemAligned:Boolean,counter:Boolean,clearable:Boolean,clearIcon:String,disable:Boolean,readonly:Boolean,autofocus:Boolean,for:String,maxlength:[Number,String]},Wg=["update:modelValue","clear","focus","blur","popupShow","popupHide"];function Qg(){const{props:e,attrs:t,proxy:n,vnode:o}=ke();return{isDark:Qt(e,n.$q),editable:R(()=>e.disable!==!0&&e.readonly!==!0),innerLoading:he(!1),focused:he(!1),hasPopupOpen:!1,splitAttrs:Hg(t,o),targetUid:he(Nr(e.for)),rootRef:he(null),targetRef:he(null),controlRef:he(null)}}function Yg(e){const{props:t,emit:n,slots:o,attrs:r,proxy:i}=ke(),{$q:s}=i;let l=null;e.hasValue===void 0&&(e.hasValue=R(()=>jr(t.modelValue))),e.emitValue===void 0&&(e.emitValue=A=>{n("update:modelValue",A)}),e.controlEvents===void 0&&(e.controlEvents={onFocusin:C,onFocusout:x}),Object.assign(e,{clearValue:$,onControlFocusin:C,onControlFocusout:x,focus:V}),e.computedCounter===void 0&&(e.computedCounter=R(()=>{if(t.counter!==!1){const A=typeof t.modelValue=="string"||typeof t.modelValue=="number"?(""+t.modelValue).length:Array.isArray(t.modelValue)===!0?t.modelValue.length:0,W=t.maxlength!==void 0?t.maxlength:t.maxValues;return A+(W!==void 0?" / "+W:"")}}));const{isDirtyModel:a,hasRules:c,hasError:u,errorMessage:d,resetValidation:f}=Dg(e.focused,e.innerLoading),p=e.floatingLabel!==void 0?R(()=>t.stackLabel===!0||e.focused.value===!0||e.floatingLabel.value===!0):R(()=>t.stackLabel===!0||e.focused.value===!0||e.hasValue.value===!0),y=R(()=>t.bottomSlots===!0||t.hint!==void 0||c.value===!0||t.counter===!0||t.error!==null),T=R(()=>t.filled===!0?"filled":t.outlined===!0?"outlined":t.borderless===!0?"borderless":t.standout?"standout":"standard"),q=R(()=>`q-field row no-wrap items-start q-field--${T.value}`+(e.fieldClass!==void 0?` ${e.fieldClass.value}`:"")+(t.rounded===!0?" q-field--rounded":"")+(t.square===!0?" q-field--square":"")+(p.value===!0?" q-field--float":"")+(m.value===!0?" q-field--labeled":"")+(t.dense===!0?" q-field--dense":"")+(t.itemAligned===!0?" q-field--item-aligned q-item-type":"")+(e.isDark.value===!0?" q-field--dark":"")+(e.getControl===void 0?" q-field--auto-height":"")+(e.focused.value===!0?" q-field--focused":"")+(u.value===!0?" q-field--error":"")+(u.value===!0||e.focused.value===!0?" q-field--highlighted":"")+(t.hideBottomSpace!==!0&&y.value===!0?" q-field--with-bottom":"")+(t.disable===!0?" q-field--disabled":t.readonly===!0?" q-field--readonly":"")),M=R(()=>"q-field__control relative-position row no-wrap"+(t.bgColor!==void 0?` bg-${t.bgColor}`:"")+(u.value===!0?" text-negative":typeof t.standout=="string"&&t.standout.length!==0&&e.focused.value===!0?` ${t.standout}`:t.color!==void 0?` text-${t.color}`:"")),m=R(()=>t.labelSlot===!0||t.label!==void 0),_=R(()=>"q-field__label no-pointer-events absolute ellipsis"+(t.labelColor!==void 0&&u.value!==!0?` text-${t.labelColor}`:"")),w=R(()=>({id:e.targetUid.value,editable:e.editable.value,focused:e.focused.value,floatingLabel:p.value,modelValue:t.modelValue,emitValue:e.emitValue})),F=R(()=>{const A={for:e.targetUid.value};return t.disable===!0?A["aria-disabled"]="true":t.readonly===!0&&(A["aria-readonly"]="true"),A});be(()=>t.for,A=>{e.targetUid.value=Nr(A)});function j(){const A=document.activeElement;let W=e.targetRef!==void 0&&e.targetRef.value;W&&(A===null||A.id!==e.targetUid.value)&&(W.hasAttribute("tabindex")===!0||(W=W.querySelector("[tabindex]")),W&&W!==A&&W.focus({preventScroll:!0}))}function V(){mi(j)}function N(){yg(j);const A=document.activeElement;A!==null&&e.rootRef.value.contains(A)&&A.blur()}function C(A){l!==null&&(clearTimeout(l),l=null),e.editable.value===!0&&e.focused.value===!1&&(e.focused.value=!0,n("focus",A))}function x(A,W){l!==null&&clearTimeout(l),l=setTimeout(()=>{l=null,!(document.hasFocus()===!0&&(e.hasPopupOpen===!0||e.controlRef===void 0||e.controlRef.value===null||e.controlRef.value.contains(document.activeElement)!==!1))&&(e.focused.value===!0&&(e.focused.value=!1,n("blur",A)),W!==void 0&&W())})}function $(A){Ke(A),s.platform.is.mobile!==!0?(e.targetRef!==void 0&&e.targetRef.value||e.rootRef.value).focus():e.rootRef.value.contains(document.activeElement)===!0&&document.activeElement.blur(),t.type==="file"&&(e.inputRef.value.value=null),n("update:modelValue",null),n("clear",t.modelValue),je(()=>{f(),s.platform.is.mobile!==!0&&(a.value=!1)})}function v(){const A=[];return o.prepend!==void 0&&A.push(E("div",{class:"q-field__prepend q-field__marginal row no-wrap items-center",key:"prepend",onClick:Et},o.prepend())),A.push(E("div",{class:"q-field__control-container col relative-position row no-wrap q-anchor--skip"},H())),u.value===!0&&t.noErrorIcon===!1&&A.push(Z("error",[E(pt,{name:s.iconSet.field.error,color:"negative"})])),t.loading===!0||e.innerLoading.value===!0?A.push(Z("inner-loading-append",o.loading!==void 0?o.loading():[E(Un,{color:t.color})])):t.clearable===!0&&e.hasValue.value===!0&&e.editable.value===!0&&A.push(Z("inner-clearable-append",[E(pt,{class:"q-field__focusable-action",tag:"button",name:t.clearIcon||s.iconSet.field.clear,tabindex:0,type:"button","aria-hidden":null,role:null,onClick:$})])),o.append!==void 0&&A.push(E("div",{class:"q-field__append q-field__marginal row no-wrap items-center",key:"append",onClick:Et},o.append())),e.getInnerAppend!==void 0&&A.push(Z("inner-append",e.getInnerAppend())),e.getControlChild!==void 0&&A.push(e.getControlChild()),A}function H(){const A=[];return t.prefix!==void 0&&t.prefix!==null&&A.push(E("div",{class:"q-field__prefix no-pointer-events row items-center"},t.prefix)),e.getShadowControl!==void 0&&e.hasShadow.value===!0&&A.push(e.getShadowControl()),e.getControl!==void 0?A.push(e.getControl()):o.rawControl!==void 0?A.push(o.rawControl()):o.control!==void 0&&A.push(E("div",{ref:e.targetRef,class:"q-field__native row",tabindex:-1,...e.splitAttrs.attributes.value,"data-autofocus":t.autofocus===!0||void 0},o.control(w.value))),m.value===!0&&A.push(E("div",{class:_.value},tt(o.label,t.label))),t.suffix!==void 0&&t.suffix!==null&&A.push(E("div",{class:"q-field__suffix no-pointer-events row items-center"},t.suffix)),A.concat(tt(o.default))}function k(){let A,W;u.value===!0?d.value!==null?(A=[E("div",{role:"alert"},d.value)],W=`q--slot-error-${d.value}`):(A=tt(o.error),W="q--slot-error"):(t.hideHint!==!0||e.focused.value===!0)&&(t.hint!==void 0?(A=[E("div",t.hint)],W=`q--slot-hint-${t.hint}`):(A=tt(o.hint),W="q--slot-hint"));const _e=t.counter===!0||o.counter!==void 0;if(t.hideBottomSpace===!0&&_e===!1&&A===void 0)return;const se=E("div",{key:W,class:"q-field__messages col"},A);return E("div",{class:"q-field__bottom row items-start q-field__bottom--"+(t.hideBottomSpace!==!0?"animated":"stale"),onClick:Et},[t.hideBottomSpace===!0?se:E(cn,{name:"q-transition--field-message"},()=>se),_e===!0?E("div",{class:"q-field__counter"},o.counter!==void 0?o.counter():e.computedCounter.value):null])}function Z(A,W){return W===null?null:E("div",{key:A,class:"q-field__append q-field__marginal row no-wrap items-center q-anchor--skip"},W)}let Y=!1;return Fo(()=>{Y=!0}),Ll(()=>{Y===!0&&t.autofocus===!0&&i.focus()}),Ut(()=>{qt.value===!0&&t.for===void 0&&(e.targetUid.value=Nr()),t.autofocus===!0&&i.focus()}),We(()=>{l!==null&&clearTimeout(l)}),Object.assign(i,{focus:V,blur:N}),function(){const W=e.getControl===void 0&&o.control===void 0?{...e.splitAttrs.attributes.value,"data-autofocus":t.autofocus===!0||void 0,...F.value}:F.value;return E("label",{ref:e.rootRef,class:[q.value,r.class],style:r.style,...W},[o.before!==void 0?E("div",{class:"q-field__before q-field__marginal row no-wrap items-center",onClick:Et},o.before()):null,E("div",{class:"q-field__inner relative-position col self-stretch"},[E("div",{ref:e.controlRef,class:M.value,tabindex:-1,...e.controlEvents},v()),y.value===!0?k():null]),o.after!==void 0?E("div",{class:"q-field__after q-field__marginal row no-wrap items-center",onClick:Et},o.after()):null])}}const Js={date:"####/##/##",datetime:"####/##/## ##:##",time:"##:##",fulltime:"##:##:##",phone:"(###) ### - ####",card:"#### #### #### ####"},Po={"#":{pattern:"[\\d]",negate:"[^\\d]"},S:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]"},N:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]"},A:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]",transform:e=>e.toLocaleUpperCase()},a:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]",transform:e=>e.toLocaleLowerCase()},X:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]",transform:e=>e.toLocaleUpperCase()},x:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]",transform:e=>e.toLocaleLowerCase()}},Za=Object.keys(Po);Za.forEach(e=>{Po[e].regex=new RegExp(Po[e].pattern)});const Zg=new RegExp("\\\\([^.*+?^${}()|([\\]])|([.*+?^${}()|[\\]])|(["+Za.join("")+"])|(.)","g"),Xs=/[.*+?^${}()|[\]\\]/g,Se=String.fromCharCode(1),Jg={mask:String,reverseFillMask:Boolean,fillMask:[Boolean,String],unmaskedValue:Boolean};function Xg(e,t,n,o){let r,i,s,l,a,c;const u=he(null),d=he(p());function f(){return e.autogrow===!0||["textarea","text","search","url","tel","password"].includes(e.type)}be(()=>e.type+e.autogrow,T),be(()=>e.mask,C=>{if(C!==void 0)q(d.value,!0);else{const x=V(d.value);T(),e.modelValue!==x&&t("update:modelValue",x)}}),be(()=>e.fillMask+e.reverseFillMask,()=>{u.value===!0&&q(d.value,!0)}),be(()=>e.unmaskedValue,()=>{u.value===!0&&q(d.value)});function p(){if(T(),u.value===!0){const C=F(V(e.modelValue));return e.fillMask!==!1?N(C):C}return e.modelValue}function y(C){if(C-1){for(let H=C-$.length;H>0;H--)x+=Se;$=$.slice(0,v)+x+$.slice(v)}return $}function T(){if(u.value=e.mask!==void 0&&e.mask.length!==0&&f(),u.value===!1){l=void 0,r="",i="";return}const C=Js[e.mask]===void 0?e.mask:Js[e.mask],x=typeof e.fillMask=="string"&&e.fillMask.length!==0?e.fillMask.slice(0,1):"_",$=x.replace(Xs,"\\$&"),v=[],H=[],k=[];let Z=e.reverseFillMask===!0,Y="",A="";C.replace(Zg,(fe,L,ue,Re,oe)=>{if(Re!==void 0){const ne=Po[Re];k.push(ne),A=ne.negate,Z===!0&&(H.push("(?:"+A+"+)?("+ne.pattern+"+)?(?:"+A+"+)?("+ne.pattern+"+)?"),Z=!1),H.push("(?:"+A+"+)?("+ne.pattern+")?")}else if(ue!==void 0)Y="\\"+(ue==="\\"?"":ue),k.push(ue),v.push("([^"+Y+"]+)?"+Y+"?");else{const ne=L!==void 0?L:oe;Y=ne==="\\"?"\\\\\\\\":ne.replace(Xs,"\\\\$&"),k.push(ne),v.push("([^"+Y+"]+)?"+Y+"?")}});const W=new RegExp("^"+v.join("")+"("+(Y===""?".":"[^"+Y+"]")+"+)?"+(Y===""?"":"["+Y+"]*")+"$"),_e=H.length-1,se=H.map((fe,L)=>L===0&&e.reverseFillMask===!0?new RegExp("^"+$+"*"+fe):L===_e?new RegExp("^"+fe+"("+(A===""?".":A)+"+)?"+(e.reverseFillMask===!0?"$":$+"*")):new RegExp("^"+fe));s=k,l=fe=>{const L=W.exec(e.reverseFillMask===!0?fe:fe.slice(0,k.length+1));L!==null&&(fe=L.slice(1).join(""));const ue=[],Re=se.length;for(let oe=0,ne=fe;oetypeof fe=="string"?fe:Se).join(""),i=r.split(Se).join(x)}function q(C,x,$){const v=o.value,H=v.selectionEnd,k=v.value.length-H,Z=V(C);x===!0&&T();const Y=F(Z),A=e.fillMask!==!1?N(Y):Y,W=d.value!==A;v.value!==A&&(v.value=A),W===!0&&(d.value=A),document.activeElement===v&&je(()=>{if(A===i){const se=e.reverseFillMask===!0?i.length:0;v.setSelectionRange(se,se,"forward");return}if($==="insertFromPaste"&&e.reverseFillMask!==!0){const se=v.selectionEnd;let fe=H-1;for(let L=a;L<=fe&&L-1){const se=e.reverseFillMask===!0?H===0?A.length>Y.length?1:0:Math.max(0,A.length-(A===i?0:Math.min(Y.length,k)+1))+1:H;v.setSelectionRange(se,se,"forward");return}if(e.reverseFillMask===!0)if(W===!0){const se=Math.max(0,A.length-(A===i?0:Math.min(Y.length,k+1)));se===1&&H===1?v.setSelectionRange(se,se,"forward"):m.rightReverse(v,se)}else{const se=A.length-k;v.setSelectionRange(se,se,"backward")}else if(W===!0){const se=Math.max(0,r.indexOf(Se),Math.min(Y.length,H)-1);m.right(v,se)}else{const se=H-1;m.right(v,se)}});const _e=e.unmaskedValue===!0?V(A):A;String(e.modelValue)!==_e&&n(_e,!0)}function M(C,x,$){const v=F(V(C.value));x=Math.max(0,r.indexOf(Se),Math.min(v.length,x)),a=x,C.setSelectionRange(x,$,"forward")}const m={left(C,x){const $=r.slice(x-1).indexOf(Se)===-1;let v=Math.max(0,x-1);for(;v>=0;v--)if(r[v]===Se){x=v,$===!0&&x++;break}if(v<0&&r[x]!==void 0&&r[x]!==Se)return m.right(C,0);x>=0&&C.setSelectionRange(x,x,"backward")},right(C,x){const $=C.value.length;let v=Math.min($,x+1);for(;v<=$;v++)if(r[v]===Se){x=v;break}else r[v-1]===Se&&(x=v);if(v>$&&r[x-1]!==void 0&&r[x-1]!==Se)return m.left(C,$);C.setSelectionRange(x,x,"forward")},leftReverse(C,x){const $=y(C.value.length);let v=Math.max(0,x-1);for(;v>=0;v--)if($[v-1]===Se){x=v;break}else if($[v]===Se&&(x=v,v===0))break;if(v<0&&$[x]!==void 0&&$[x]!==Se)return m.rightReverse(C,0);x>=0&&C.setSelectionRange(x,x,"backward")},rightReverse(C,x){const $=C.value.length,v=y($),H=v.slice(0,x+1).indexOf(Se)===-1;let k=Math.min($,x+1);for(;k<=$;k++)if(v[k-1]===Se){x=k,x>0&&H===!0&&x--;break}if(k>$&&v[x-1]!==void 0&&v[x-1]!==Se)return m.leftReverse(C,$);C.setSelectionRange(x,x,"forward")}};function _(C){t("click",C),c=void 0}function w(C){if(t("keydown",C),da(C)===!0||C.altKey===!0)return;const x=o.value,$=x.selectionStart,v=x.selectionEnd;if(C.shiftKey||(c=void 0),C.keyCode===37||C.keyCode===39){C.shiftKey&&c===void 0&&(c=x.selectionDirection==="forward"?$:v);const H=m[(C.keyCode===39?"right":"left")+(e.reverseFillMask===!0?"Reverse":"")];if(C.preventDefault(),H(x,c===$?v:$),C.shiftKey){const k=x.selectionStart;x.setSelectionRange(Math.min(c,k),Math.max(c,k),"forward")}}else C.keyCode===8&&e.reverseFillMask!==!0&&$===v?(m.left(x,$),x.setSelectionRange(x.selectionStart,v,"backward")):C.keyCode===46&&e.reverseFillMask===!0&&$===v&&(m.rightReverse(x,v),x.setSelectionRange($,x.selectionEnd,"forward"))}function F(C){if(C==null||C==="")return"";if(e.reverseFillMask===!0)return j(C);const x=s;let $=0,v="";for(let H=0;H=0&&v>-1;k--){const Z=x[k];let Y=C[v];if(typeof Z=="string")H=Z+H,Y===Z&&v--;else if(Y!==void 0&&Z.regex.test(Y))do H=(Z.transform!==void 0?Z.transform(Y):Y)+H,v--,Y=C[v];while($===k&&Y!==void 0&&Z.regex.test(Y));else return H}return H}function V(C){return typeof C!="string"||l===void 0?typeof C=="number"?l(""+C):C:l(C)}function N(C){return i.length-C.length<=0?C:e.reverseFillMask===!0&&C.length!==0?i.slice(0,-C.length)+C:C+i.slice(C.length)}return{innerValue:d,hasMask:u,moveCursorForPaste:M,updateMaskValue:q,onMaskedKeydown:w,onMaskedClick:_}}const pi={name:String};function Ja(e={}){return(t,n,o)=>{t[n](E("input",{class:"hidden"+(o||""),...e.value}))}}function Gg(e){return R(()=>e.name||e.for)}function em(e,t){function n(){const o=e.modelValue;try{const r="DataTransfer"in window?new DataTransfer:"ClipboardEvent"in window?new ClipboardEvent("").clipboardData:void 0;return Object(o)===o&&("length"in o?Array.from(o):[o]).forEach(i=>{r.items.add(i)}),{files:r.files}}catch{return{files:void 0}}}return R(t===!0?()=>{if(e.type==="file")return n()}:n)}const tm=/[\u3000-\u303f\u3040-\u309f\u30a0-\u30ff\uff00-\uff9f\u4e00-\u9faf\u3400-\u4dbf]/,nm=/[\u4e00-\u9fff\u3400-\u4dbf\u{20000}-\u{2a6df}\u{2a700}-\u{2b73f}\u{2b740}-\u{2b81f}\u{2b820}-\u{2ceaf}\uf900-\ufaff\u3300-\u33ff\ufe30-\ufe4f\uf900-\ufaff\u{2f800}-\u{2fa1f}]/u,om=/[\u3131-\u314e\u314f-\u3163\uac00-\ud7a3]/,rm=/[a-z0-9_ -]$/i;function im(e){return function(n){if(n.type==="compositionend"||n.type==="change"){if(n.target.qComposing!==!0)return;n.target.qComposing=!1,e(n)}else n.type==="compositionupdate"&&n.target.qComposing!==!0&&typeof n.data=="string"&&(we.is.firefox===!0?rm.test(n.data)===!1:tm.test(n.data)===!0||nm.test(n.data)===!0||om.test(n.data)===!0)===!0&&(n.target.qComposing=!0)}}var sm=$e({name:"QInput",inheritAttrs:!1,props:{...Ug,...Jg,...pi,modelValue:{required:!1},shadowText:String,type:{type:String,default:"text"},debounce:[String,Number],autogrow:Boolean,inputClass:[Array,String,Object],inputStyle:[Array,String,Object]},emits:[...Wg,"paste","change","keydown","click","animationend"],setup(e,{emit:t,attrs:n}){const{proxy:o}=ke(),{$q:r}=o,i={};let s=NaN,l,a,c=null,u;const d=he(null),f=Gg(e),{innerValue:p,hasMask:y,moveCursorForPaste:T,updateMaskValue:q,onMaskedKeydown:M,onMaskedClick:m}=Xg(e,t,Y,d),_=em(e,!0),w=R(()=>jr(p.value)),F=im(k),j=Qg(),V=R(()=>e.type==="textarea"||e.autogrow===!0),N=R(()=>V.value===!0||["text","search","url","tel","password"].includes(e.type)),C=R(()=>{const L={...j.splitAttrs.listeners.value,onInput:k,onPaste:H,onChange:W,onBlur:_e,onFocus:ko};return L.onCompositionstart=L.onCompositionupdate=L.onCompositionend=F,y.value===!0&&(L.onKeydown=M,L.onClick=m),e.autogrow===!0&&(L.onAnimationend=Z),L}),x=R(()=>{const L={tabindex:0,"data-autofocus":e.autofocus===!0||void 0,rows:e.type==="textarea"?6:void 0,"aria-label":e.label,name:f.value,...j.splitAttrs.attributes.value,id:j.targetUid.value,maxlength:e.maxlength,disabled:e.disable===!0,readonly:e.readonly===!0};return V.value===!1&&(L.type=e.type),e.autogrow===!0&&(L.rows=1),L});be(()=>e.type,()=>{d.value&&(d.value.value=e.modelValue)}),be(()=>e.modelValue,L=>{if(y.value===!0){if(a===!0&&(a=!1,String(L)===s))return;q(L)}else p.value!==L&&(p.value=L,e.type==="number"&&i.hasOwnProperty("value")===!0&&(l===!0?l=!1:delete i.value));e.autogrow===!0&&je(A)}),be(()=>e.autogrow,L=>{L===!0?je(A):d.value!==null&&n.rows>0&&(d.value.style.height="auto")}),be(()=>e.dense,()=>{e.autogrow===!0&&je(A)});function $(){mi(()=>{const L=document.activeElement;d.value!==null&&d.value!==L&&(L===null||L.id!==j.targetUid.value)&&d.value.focus({preventScroll:!0})})}function v(){d.value!==null&&d.value.select()}function H(L){if(y.value===!0&&e.reverseFillMask!==!0){const ue=L.target;T(ue,ue.selectionStart,ue.selectionEnd)}t("paste",L)}function k(L){if(!L||!L.target)return;if(e.type==="file"){t("update:modelValue",L.target.files);return}const ue=L.target.value;if(L.target.qComposing===!0){i.value=ue;return}if(y.value===!0)q(ue,!1,L.inputType);else if(Y(ue),N.value===!0&&L.target===document.activeElement){const{selectionStart:Re,selectionEnd:oe}=L.target;Re!==void 0&&oe!==void 0&&je(()=>{L.target===document.activeElement&&ue.indexOf(L.target.value)===0&&L.target.setSelectionRange(Re,oe)})}e.autogrow===!0&&A()}function Z(L){t("animationend",L),A()}function Y(L,ue){u=()=>{c=null,e.type!=="number"&&i.hasOwnProperty("value")===!0&&delete i.value,e.modelValue!==L&&s!==L&&(s=L,ue===!0&&(a=!0),t("update:modelValue",L),je(()=>{s===L&&(s=NaN)})),u=void 0},e.type==="number"&&(l=!0,i.value=L),e.debounce!==void 0?(c!==null&&clearTimeout(c),i.value=L,c=setTimeout(u,e.debounce)):u()}function A(){requestAnimationFrame(()=>{const L=d.value;if(L!==null){const ue=L.parentNode.style,{scrollTop:Re}=L,{overflowY:oe,maxHeight:ne}=r.platform.is.firefox===!0?{}:window.getComputedStyle(L),S=oe!==void 0&&oe!=="scroll";S===!0&&(L.style.overflowY="hidden"),ue.marginBottom=L.scrollHeight-1+"px",L.style.height="1px",L.style.height=L.scrollHeight+"px",S===!0&&(L.style.overflowY=parseInt(ne,10){d.value!==null&&(d.value.value=p.value!==void 0?p.value:"")})}function se(){return i.hasOwnProperty("value")===!0?i.value:p.value!==void 0?p.value:""}We(()=>{_e()}),Ut(()=>{e.autogrow===!0&&A()}),Object.assign(j,{innerValue:p,fieldClass:R(()=>`q-${V.value===!0?"textarea":"input"}`+(e.autogrow===!0?" q-textarea--autogrow":"")),hasShadow:R(()=>e.type!=="file"&&typeof e.shadowText=="string"&&e.shadowText.length!==0),inputRef:d,emitValue:Y,hasValue:w,floatingLabel:R(()=>w.value===!0&&(e.type!=="number"||isNaN(p.value)===!1)||jr(e.displayValue)),getControl:()=>E(V.value===!0?"textarea":"input",{ref:d,class:["q-field__native q-placeholder",e.inputClass],style:e.inputStyle,...x.value,...C.value,...e.type!=="file"?{value:se()}:_.value}),getShadowControl:()=>E("div",{class:"q-field__native q-field__shadow absolute-bottom no-pointer-events"+(V.value===!0?"":" text-no-wrap")},[E("span",{class:"invisible"},se()),E("span",e.shadowText)])});const fe=Yg(j);return Object.assign(o,{focus:$,select:v,getNativeElement:()=>d.value}),bn(o,"nativeEl",()=>d.value),fe}});function Xa(e,t){const n=he(null),o=R(()=>e.disable===!0?null:E("span",{ref:n,class:"no-outline",tabindex:-1}));function r(i){const s=t.value;i!==void 0&&i.type.indexOf("key")===0?s!==null&&document.activeElement!==s&&s.contains(document.activeElement)===!0&&s.focus():n.value!==null&&(i===void 0||s!==null&&s.contains(i.target)===!0)&&n.value.focus()}return{refocusTargetEl:o,refocusTarget:r}}var Ga={xs:30,sm:35,md:40,lg:50,xl:60};const lm=E("svg",{key:"svg",class:"q-radio__bg absolute non-selectable",viewBox:"0 0 24 24"},[E("path",{d:"M12,22a10,10 0 0 1 -10,-10a10,10 0 0 1 10,-10a10,10 0 0 1 10,10a10,10 0 0 1 -10,10m0,-22a12,12 0 0 0 -12,12a12,12 0 0 0 12,12a12,12 0 0 0 12,-12a12,12 0 0 0 -12,-12"}),E("path",{class:"q-radio__check",d:"M12,6a6,6 0 0 0 -6,6a6,6 0 0 0 6,6a6,6 0 0 0 6,-6a6,6 0 0 0 -6,-6"})]);var am=$e({name:"QRadio",props:{...Wt,...Yn,...pi,modelValue:{required:!0},val:{required:!0},label:String,leftLabel:Boolean,checkedIcon:String,uncheckedIcon:String,color:String,keepColor:Boolean,dense:Boolean,disable:Boolean,tabindex:[String,Number]},emits:["update:modelValue"],setup(e,{slots:t,emit:n}){const{proxy:o}=ke(),r=Qt(e,o.$q),i=Zn(e,Ga),s=he(null),{refocusTargetEl:l,refocusTarget:a}=Xa(e,s),c=R(()=>ie(e.modelValue)===ie(e.val)),u=R(()=>"q-radio cursor-pointer no-outline row inline no-wrap items-center"+(e.disable===!0?" disabled":"")+(r.value===!0?" q-radio--dark":"")+(e.dense===!0?" q-radio--dense":"")+(e.leftLabel===!0?" reverse":"")),d=R(()=>{const _=e.color!==void 0&&(e.keepColor===!0||c.value===!0)?` text-${e.color}`:"";return`q-radio__inner relative-position q-radio__inner--${c.value===!0?"truthy":"falsy"}${_}`}),f=R(()=>(c.value===!0?e.checkedIcon:e.uncheckedIcon)||null),p=R(()=>e.disable===!0?-1:e.tabindex||0),y=R(()=>{const _={type:"radio"};return e.name!==void 0&&Object.assign(_,{".checked":c.value===!0,"^checked":c.value===!0?"checked":void 0,name:e.name,value:e.val}),_}),T=Ja(y);function q(_){_!==void 0&&(Ke(_),a(_)),e.disable!==!0&&c.value!==!0&&n("update:modelValue",e.val,_)}function M(_){(_.keyCode===13||_.keyCode===32)&&Ke(_)}function m(_){(_.keyCode===13||_.keyCode===32)&&q(_)}return Object.assign(o,{set:q}),()=>{const _=f.value!==null?[E("div",{key:"icon",class:"q-radio__icon-container absolute-full flex flex-center no-wrap"},[E(pt,{class:"q-radio__icon",name:f.value})])]:[lm];e.disable!==!0&&T(_,"unshift"," q-radio__native q-ma-none q-pa-none");const w=[E("div",{class:d.value,style:i.value,"aria-hidden":"true"},_)];l.value!==null&&w.push(l.value);const F=e.label!==void 0?It(t.default,[e.label]):tt(t.default);return F!==void 0&&w.push(E("div",{class:"q-radio__label q-anchor--skip"},F)),E("div",{ref:s,class:u.value,tabindex:p.value,role:"radio","aria-label":e.label,"aria-checked":c.value===!0?"true":"false","aria-disabled":e.disable===!0?"true":void 0,onClick:q,onKeydown:M,onKeyup:m},w)}}});const eu={...Wt,...Yn,...pi,modelValue:{required:!0,default:null},val:{},trueValue:{default:!0},falseValue:{default:!1},indeterminateValue:{default:null},checkedIcon:String,uncheckedIcon:String,indeterminateIcon:String,toggleOrder:{type:String,validator:e=>e==="tf"||e==="ft"},toggleIndeterminate:Boolean,label:String,leftLabel:Boolean,color:String,keepColor:Boolean,dense:Boolean,disable:Boolean,tabindex:[String,Number]},tu=["update:modelValue"];function nu(e,t){const{props:n,slots:o,emit:r,proxy:i}=ke(),{$q:s}=i,l=Qt(n,s),a=he(null),{refocusTargetEl:c,refocusTarget:u}=Xa(n,a),d=Zn(n,Ga),f=R(()=>n.val!==void 0&&Array.isArray(n.modelValue)),p=R(()=>{const v=ie(n.val);return f.value===!0?n.modelValue.findIndex(H=>ie(H)===v):-1}),y=R(()=>f.value===!0?p.value>-1:ie(n.modelValue)===ie(n.trueValue)),T=R(()=>f.value===!0?p.value===-1:ie(n.modelValue)===ie(n.falseValue)),q=R(()=>y.value===!1&&T.value===!1),M=R(()=>n.disable===!0?-1:n.tabindex||0),m=R(()=>`q-${e} cursor-pointer no-outline row inline no-wrap items-center`+(n.disable===!0?" disabled":"")+(l.value===!0?` q-${e}--dark`:"")+(n.dense===!0?` q-${e}--dense`:"")+(n.leftLabel===!0?" reverse":"")),_=R(()=>{const v=y.value===!0?"truthy":T.value===!0?"falsy":"indet",H=n.color!==void 0&&(n.keepColor===!0||(e==="toggle"?y.value===!0:T.value!==!0))?` text-${n.color}`:"";return`q-${e}__inner relative-position non-selectable q-${e}__inner--${v}${H}`}),w=R(()=>{const v={type:"checkbox"};return n.name!==void 0&&Object.assign(v,{".checked":y.value,"^checked":y.value===!0?"checked":void 0,name:n.name,value:f.value===!0?n.val:n.trueValue}),v}),F=Ja(w),j=R(()=>{const v={tabindex:M.value,role:e==="toggle"?"switch":"checkbox","aria-label":n.label,"aria-checked":q.value===!0?"mixed":y.value===!0?"true":"false"};return n.disable===!0&&(v["aria-disabled"]="true"),v});function V(v){v!==void 0&&(Ke(v),u(v)),n.disable!==!0&&r("update:modelValue",N(),v)}function N(){if(f.value===!0){if(y.value===!0){const v=n.modelValue.slice();return v.splice(p.value,1),v}return n.modelValue.concat([n.val])}if(y.value===!0){if(n.toggleOrder!=="ft"||n.toggleIndeterminate===!1)return n.falseValue}else if(T.value===!0){if(n.toggleOrder==="ft"||n.toggleIndeterminate===!1)return n.trueValue}else return n.toggleOrder!=="ft"?n.trueValue:n.falseValue;return n.indeterminateValue}function C(v){(v.keyCode===13||v.keyCode===32)&&Ke(v)}function x(v){(v.keyCode===13||v.keyCode===32)&&V(v)}const $=t(y,q);return Object.assign(i,{toggle:V}),()=>{const v=$();n.disable!==!0&&F(v,"unshift",` q-${e}__native absolute q-ma-none q-pa-none`);const H=[E("div",{class:_.value,style:d.value,"aria-hidden":"true"},v)];c.value!==null&&H.push(c.value);const k=n.label!==void 0?It(o.default,[n.label]):tt(o.default);return k!==void 0&&H.push(E("div",{class:`q-${e}__label q-anchor--skip`},k)),E("div",{ref:a,class:m.value,...j.value,onClick:V,onKeydown:C,onKeyup:x},H)}}const um=E("div",{key:"svg",class:"q-checkbox__bg absolute"},[E("svg",{class:"q-checkbox__svg fit absolute-full",viewBox:"0 0 24 24"},[E("path",{class:"q-checkbox__truthy",fill:"none",d:"M1.73,12.91 8.1,19.28 22.79,4.59"}),E("path",{class:"q-checkbox__indet",d:"M4,14H20V10H4"})])]);var cm=$e({name:"QCheckbox",props:eu,emits:tu,setup(e){function t(n,o){const r=R(()=>(n.value===!0?e.checkedIcon:o.value===!0?e.indeterminateIcon:e.uncheckedIcon)||null);return()=>r.value!==null?[E("div",{key:"icon",class:"q-checkbox__icon-container absolute-full flex flex-center no-wrap"},[E(pt,{class:"q-checkbox__icon",name:r.value})])]:[um]}return nu("checkbox",t)}}),fm=$e({name:"QToggle",props:{...eu,icon:String,iconColor:String},emits:tu,setup(e){function t(n,o){const r=R(()=>(n.value===!0?e.checkedIcon:o.value===!0?e.indeterminateIcon:e.uncheckedIcon)||e.icon),i=R(()=>n.value===!0?e.iconColor:null);return()=>[E("div",{class:"q-toggle__track"}),E("div",{class:"q-toggle__thumb absolute flex flex-center no-wrap"},r.value!==void 0?[E(pt,{name:r.value,color:i.value})]:void 0)]}return nu("toggle",t)}});const ou={radio:am,checkbox:cm,toggle:fm},dm=Object.keys(ou);var hm=$e({name:"QOptionGroup",props:{...Wt,modelValue:{required:!0},options:{type:Array,validator:e=>e.every(t=>"value"in t&&"label"in t)},name:String,type:{default:"radio",validator:e=>dm.includes(e)},color:String,keepColor:Boolean,dense:Boolean,size:String,leftLabel:Boolean,inline:Boolean,disable:Boolean},emits:["update:modelValue"],setup(e,{emit:t,slots:n}){const{proxy:{$q:o}}=ke(),r=Array.isArray(e.modelValue);e.type==="radio"?r===!0&&console.error("q-option-group: model should not be array"):r===!1&&console.error("q-option-group: model should be array in your case");const i=Qt(e,o),s=R(()=>ou[e.type]),l=R(()=>"q-option-group q-gutter-x-sm"+(e.inline===!0?" q-option-group--inline":"")),a=R(()=>{const u={role:"group"};return e.type==="radio"&&(u.role="radiogroup",e.disable===!0&&(u["aria-disabled"]="true")),u});function c(u){t("update:modelValue",u)}return()=>E("div",{class:l.value,...a.value},e.options.map((u,d)=>{const f=n["label-"+d]!==void 0?()=>n["label-"+d](u):n.label!==void 0?()=>n.label(u):void 0;return E("div",[E(s.value,{modelValue:e.modelValue,val:u.value,name:u.name===void 0?e.name:u.name,disable:e.disable||u.disable,label:f===void 0?u.label:null,leftLabel:u.leftLabel===void 0?e.leftLabel:u.leftLabel,color:u.color===void 0?e.color:u.color,checkedIcon:u.checkedIcon,uncheckedIcon:u.uncheckedIcon,dark:u.dark||i.value,size:u.size===void 0?e.size:u.size,dense:e.dense,keepColor:u.keepColor===void 0?e.keepColor:u.keepColor,"onUpdate:modelValue":c},f)])}))}}),gm=$e({name:"DialogPlugin",props:{...Wt,title:String,message:String,prompt:Object,options:Object,progress:[Boolean,Object],html:Boolean,ok:{type:[String,Object,Boolean],default:!0},cancel:[String,Object,Boolean],focus:{type:String,default:"ok",validator:e=>["ok","cancel","none"].includes(e)},stackButtons:Boolean,color:String,cardClass:[String,Array,Object],cardStyle:[String,Array,Object]},emits:["ok","hide"],setup(e,{emit:t}){const{proxy:n}=ke(),{$q:o}=n,r=Qt(e,o),i=he(null),s=he(e.prompt!==void 0?e.prompt.model:e.options!==void 0?e.options.model:void 0),l=R(()=>"q-dialog-plugin"+(r.value===!0?" q-dialog-plugin--dark q-dark":"")+(e.progress!==!1?" q-dialog-plugin--progress":"")),a=R(()=>e.color||(r.value===!0?"amber":"primary")),c=R(()=>e.progress===!1?null:at(e.progress)===!0?{component:e.progress.spinner||Un,props:{color:e.progress.color||a.value}}:{component:Un,props:{color:a.value}}),u=R(()=>e.prompt!==void 0||e.options!==void 0),d=R(()=>{if(u.value!==!0)return{};const{model:k,isValid:Z,items:Y,...A}=e.prompt!==void 0?e.prompt:e.options;return A}),f=R(()=>at(e.ok)===!0||e.ok===!0?o.lang.label.ok:e.ok),p=R(()=>at(e.cancel)===!0||e.cancel===!0?o.lang.label.cancel:e.cancel),y=R(()=>e.prompt!==void 0?e.prompt.isValid!==void 0&&e.prompt.isValid(s.value)!==!0:e.options!==void 0?e.options.isValid!==void 0&&e.options.isValid(s.value)!==!0:!1),T=R(()=>({color:a.value,label:f.value,ripple:!1,disable:y.value,...at(e.ok)===!0?e.ok:{flat:!0},"data-autofocus":e.focus==="ok"&&u.value!==!0||void 0,onClick:_})),q=R(()=>({color:a.value,label:p.value,ripple:!1,...at(e.cancel)===!0?e.cancel:{flat:!0},"data-autofocus":e.focus==="cancel"&&u.value!==!0||void 0,onClick:w}));be(()=>e.prompt&&e.prompt.model,j),be(()=>e.options&&e.options.model,j);function M(){i.value.show()}function m(){i.value.hide()}function _(){t("ok",ie(s.value)),m()}function w(){m()}function F(){t("hide")}function j(k){s.value=k}function V(k){y.value!==!0&&e.prompt.type!=="textarea"&&zn(k,13)===!0&&_()}function N(k,Z){return e.html===!0?E(En,{class:k,innerHTML:Z}):E(En,{class:k},()=>Z)}function C(){return[E(sm,{color:a.value,dense:!0,autofocus:!0,dark:r.value,...d.value,modelValue:s.value,"onUpdate:modelValue":j,onKeyup:V})]}function x(){return[E(hm,{color:a.value,options:e.options.items,dark:r.value,...d.value,modelValue:s.value,"onUpdate:modelValue":j})]}function $(){const k=[];return e.cancel&&k.push(E(Br,q.value)),e.ok&&k.push(E(Br,T.value)),E(Fg,{class:e.stackButtons===!0?"items-end":"",vertical:e.stackButtons,align:"right"},()=>k)}function v(){const k=[];return e.title&&k.push(N("q-dialog__title",e.title)),e.progress!==!1&&k.push(E(En,{class:"q-dialog__progress"},()=>E(c.value.component,c.value.props))),e.message&&k.push(N("q-dialog__message",e.message)),e.prompt!==void 0?k.push(E(En,{class:"scroll q-dialog-plugin__form"},C)):e.options!==void 0&&k.push(E(Ks,{dark:r.value}),E(En,{class:"scroll q-dialog-plugin__form"},x),E(Ks,{dark:r.value})),(e.ok||e.cancel)&&k.push($()),k}function H(){return[E(Bg,{class:[l.value,e.cardClass],style:e.cardStyle,dark:r.value},v)]}return Object.assign(n,{show:M,hide:m}),()=>E(Lg,{ref:i,onHide:F},H)}});function ru(e,t){for(const n in t)n!=="spinner"&&Object(t[n])===t[n]?(e[n]=Object(e[n])!==e[n]?{}:{...e[n]},ru(e[n],t[n])):e[n]=t[n]}function mm(e,t,n){return o=>{let r,i;const s=t===!0&&o.component!==void 0;if(s===!0){const{component:m,componentProps:_}=o;r=typeof m=="string"?n.component(m):m,i=_||{}}else{const{class:m,style:_,...w}=o;r=e,i=w,m!==void 0&&(w.cardClass=m),_!==void 0&&(w.cardStyle=_)}let l,a=!1;const c=he(null),u=hi(!1,"dialog"),d=m=>{if(c.value!==null&&c.value[m]!==void 0){c.value[m]();return}const _=l.$.subTree;if(_&&_.component){if(_.component.proxy&&_.component.proxy[m]){_.component.proxy[m]();return}if(_.component.subTree&&_.component.subTree.component&&_.component.subTree.component.proxy&&_.component.subTree.component.proxy[m]){_.component.subTree.component.proxy[m]();return}}console.error("[Quasar] Incorrectly defined Dialog component")},f=[],p=[],y={onOk(m){return f.push(m),y},onCancel(m){return p.push(m),y},onDismiss(m){return f.push(m),p.push(m),y},hide(){return d("hide"),y},update(m){if(l!==null){if(s===!0)Object.assign(i,m);else{const{class:_,style:w,...F}=m;_!==void 0&&(F.cardClass=_),w!==void 0&&(F.cardStyle=w),ru(i,F)}l.$forceUpdate()}return y}},T=m=>{a=!0,f.forEach(_=>{_(m)})},q=()=>{M.unmount(u),Fa(u),M=null,l=null,a!==!0&&p.forEach(m=>{m()})};let M=ma({name:"QGlobalDialog",setup:()=>()=>E(r,{...i,ref:c,onOk:T,onHide:q,onVnodeMounted(...m){typeof i.onVnodeMounted=="function"&&i.onVnodeMounted(...m),je(()=>d("show"))}})},n);return l=M.mount(u),y}}var pm={install({$q:e,parentApp:t}){e.dialog=mm(gm,!0,t),this.__installed!==!0&&(this.create=e.dialog)}},vm={config:{staticPath:"/nostrmarket/static/market/"},plugins:{Notify:ig,LocalStorage:Da,Dialog:pm}};async function bm({app:e,router:t}){e.use(t),e.mount("#q-app")}Ch(la,vm).then(bm);export{zn as $,Km as A,pn as B,ii as C,It as D,Lo as E,xc as F,Wl as G,Yl as H,sc as I,Fe as J,kh as K,we as L,Pt as M,Rm as N,Kf as O,Tr as P,Pm as Q,Et as R,ko as S,Hf as T,Uf as U,Ke as V,Vm as W,Be as X,za as Y,Ka as Z,dd as _,Wt as a,cm as a$,vo as a0,pg as a1,dg as a2,vg as a3,xg as a4,cn as a5,Yn as a6,Zn as a7,pt as a8,Eh as a9,jm as aA,rd as aB,Am as aC,da as aD,nr as aE,Ug as aF,Wg as aG,Yg as aH,Qg as aI,pi as aJ,Gg as aK,jr as aL,Fl as aM,ri as aN,im as aO,Lg as aP,_m as aQ,Cm as aR,Oh as aS,Jl as aT,ym as aU,Qc as aV,Xe as aW,En as aX,Ks as aY,km as aZ,sm as a_,Nh as aa,ua as ab,vc as ac,Fo as ad,Ll as ae,$h as af,Lh as ag,Un as ah,zh as ai,Kh as aj,$m as ak,Og as al,Hs as am,Ds as an,_g as ao,Mg as ap,mi as aq,Fh as ar,Zh as as,Kg as at,Im as au,Br as av,Aa as aw,Ma as ax,Fm as ay,Nm as az,gg as b,Em as b0,wm as b1,Bg as b2,zm as b3,Hm as b4,La as b5,id as b6,Fg as b7,hm as b8,Dm as b9,Bm as ba,xm as bb,ml as bc,Sm as bd,$a as be,qr as bf,Om as bg,Wr as bh,Ur as bi,Vt as bj,$e as c,Qt as d,fg as e,Mm as f,R as g,mg as h,ut as i,cg as j,We as k,Tm as l,Al as m,je as n,Ut as o,E as p,Lm as q,he as r,tt as s,ke as t,hg as u,Pg as v,be as w,fo as x,qm as y,qt as z}; + */const en=typeof window!="undefined";function pd(e){return e.__esModule||e[Symbol.toStringTag]==="Module"}const ge=Object.assign;function or(e,t){const n={};for(const o in t){const r=t[o];n[o]=rt(r)?r.map(e):e(r)}return n}const Ln=()=>{},rt=Array.isArray,vd=/\/$/,bd=e=>e.replace(vd,"");function rr(e,t,n="/"){let o,r={},i="",s="";const l=t.indexOf("#");let a=t.indexOf("?");return l=0&&(a=-1),a>-1&&(o=t.slice(0,a),i=t.slice(a+1,l>-1?l:t.length),r=e(i)),l>-1&&(o=o||t.slice(0,l),s=t.slice(l,t.length)),o=xd(o!=null?o:t,n),{fullPath:o+(i&&"?")+i+s,path:o,query:r,hash:s}}function yd(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function us(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function _d(e,t,n){const o=t.matched.length-1,r=n.matched.length-1;return o>-1&&o===r&&fn(t.matched[o],n.matched[r])&&pa(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function fn(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function pa(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!wd(e[n],t[n]))return!1;return!0}function wd(e,t){return rt(e)?cs(e,t):rt(t)?cs(t,e):e===t}function cs(e,t){return rt(t)?e.length===t.length&&e.every((n,o)=>n===t[o]):e.length===1&&e[0]===t}function xd(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),o=e.split("/"),r=o[o.length-1];(r===".."||r===".")&&o.push("");let i=n.length-1,s,l;for(s=0;s1&&i--;else break;return n.slice(0,i).join("/")+"/"+o.slice(s-(s===o.length?1:0)).join("/")}var Kn;(function(e){e.pop="pop",e.push="push"})(Kn||(Kn={}));var Bn;(function(e){e.back="back",e.forward="forward",e.unknown=""})(Bn||(Bn={}));function Cd(e){if(!e)if(en){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),bd(e)}const kd=/^[^#]+#/;function Ed(e,t){return e.replace(kd,"#")+t}function Sd(e,t){const n=document.documentElement.getBoundingClientRect(),o=e.getBoundingClientRect();return{behavior:t.behavior,left:o.left-n.left-(t.left||0),top:o.top-n.top-(t.top||0)}}const zo=()=>({left:window.pageXOffset,top:window.pageYOffset});function Rd(e){let t;if("el"in e){const n=e.el,o=typeof n=="string"&&n.startsWith("#"),r=typeof n=="string"?o?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!r)return;t=Sd(r,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.pageXOffset,t.top!=null?t.top:window.pageYOffset)}function fs(e,t){return(history.state?history.state.position-t:-1)+e}const Ar=new Map;function Pd(e,t){Ar.set(e,t)}function Td(e){const t=Ar.get(e);return Ar.delete(e),t}let qd=()=>location.protocol+"//"+location.host;function va(e,t){const{pathname:n,search:o,hash:r}=t,i=e.indexOf("#");if(i>-1){let l=r.includes(e.slice(i))?e.slice(i).length:1,a=r.slice(l);return a[0]!=="/"&&(a="/"+a),us(a,"")}return us(n,e)+o+r}function Ad(e,t,n,o){let r=[],i=[],s=null;const l=({state:f})=>{const p=va(e,location),y=n.value,T=t.value;let q=0;if(f){if(n.value=p,t.value=f,s&&s===y){s=null;return}q=T?f.position-T.position:0}else o(p);r.forEach(M=>{M(n.value,y,{delta:q,type:Kn.pop,direction:q?q>0?Bn.forward:Bn.back:Bn.unknown})})};function a(){s=n.value}function c(f){r.push(f);const p=()=>{const y=r.indexOf(f);y>-1&&r.splice(y,1)};return i.push(p),p}function u(){const{history:f}=window;!f.state||f.replaceState(ge({},f.state,{scroll:zo()}),"")}function d(){for(const f of i)f();i=[],window.removeEventListener("popstate",l),window.removeEventListener("beforeunload",u)}return window.addEventListener("popstate",l),window.addEventListener("beforeunload",u,{passive:!0}),{pauseListeners:a,listen:c,destroy:d}}function ds(e,t,n,o=!1,r=!1){return{back:e,current:t,forward:n,replaced:o,position:window.history.length,scroll:r?zo():null}}function Md(e){const{history:t,location:n}=window,o={value:va(e,n)},r={value:t.state};r.value||i(o.value,{back:null,current:o.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function i(a,c,u){const d=e.indexOf("#"),f=d>-1?(n.host&&document.querySelector("base")?e:e.slice(d))+a:qd()+e+a;try{t[u?"replaceState":"pushState"](c,"",f),r.value=c}catch(p){console.error(p),n[u?"replace":"assign"](f)}}function s(a,c){const u=ge({},t.state,ds(r.value.back,a,r.value.forward,!0),c,{position:r.value.position});i(a,u,!0),o.value=a}function l(a,c){const u=ge({},r.value,t.state,{forward:a,scroll:zo()});i(u.current,u,!0);const d=ge({},ds(o.value,a,null),{position:u.position+1},c);i(a,d,!1),o.value=a}return{location:o,state:r,push:l,replace:s}}function Od(e){e=Cd(e);const t=Md(e),n=Ad(e,t.state,t.location,t.replace);function o(i,s=!0){s||n.pauseListeners(),history.go(i)}const r=ge({location:"",base:e,go:o,createHref:Ed.bind(null,e)},t,n);return Object.defineProperty(r,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(r,"state",{enumerable:!0,get:()=>t.state.value}),r}function $d(e){return e=location.host?e||location.pathname+location.search:"",e.includes("#")||(e+="#"),Od(e)}function Ld(e){return typeof e=="string"||e&&typeof e=="object"}function ba(e){return typeof e=="string"||typeof e=="symbol"}const _t={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0},ya=Symbol("");var hs;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(hs||(hs={}));function dn(e,t){return ge(new Error,{type:e,[ya]:!0},t)}function ft(e,t){return e instanceof Error&&ya in e&&(t==null||!!(e.type&t))}const gs="[^/]+?",Bd={sensitive:!1,strict:!1,start:!0,end:!0},Fd=/[.+*?^${}()[\]/\\]/g;function Id(e,t){const n=ge({},Bd,t),o=[];let r=n.start?"^":"";const i=[];for(const c of e){const u=c.length?[]:[90];n.strict&&!c.length&&(r+="/");for(let d=0;dt.length?t.length===1&&t[0]===40+40?1:-1:0}function jd(e,t){let n=0;const o=e.score,r=t.score;for(;n0&&t[t.length-1]<0}const Vd={type:0,value:""},Dd=/[a-zA-Z0-9_]/;function Hd(e){if(!e)return[[]];if(e==="/")return[[Vd]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(p){throw new Error(`ERR (${n})/"${c}": ${p}`)}let n=0,o=n;const r=[];let i;function s(){i&&r.push(i),i=[]}let l=0,a,c="",u="";function d(){!c||(n===0?i.push({type:0,value:c}):n===1||n===2||n===3?(i.length>1&&(a==="*"||a==="+")&&t(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),i.push({type:1,value:c,regexp:u,repeatable:a==="*"||a==="+",optional:a==="*"||a==="?"})):t("Invalid state to consume buffer"),c="")}function f(){c+=a}for(;l{s(m)}:Ln}function s(u){if(ba(u)){const d=o.get(u);d&&(o.delete(u),n.splice(n.indexOf(d),1),d.children.forEach(s),d.alias.forEach(s))}else{const d=n.indexOf(u);d>-1&&(n.splice(d,1),u.record.name&&o.delete(u.record.name),u.children.forEach(s),u.alias.forEach(s))}}function l(){return n}function a(u){let d=0;for(;d=0&&(u.record.path!==n[d].record.path||!_a(u,n[d]));)d++;n.splice(d,0,u),u.record.name&&!vs(u)&&o.set(u.record.name,u)}function c(u,d){let f,p={},y,T;if("name"in u&&u.name){if(f=o.get(u.name),!f)throw dn(1,{location:u});T=f.record.name,p=ge(ps(d.params,f.keys.filter(m=>!m.optional).map(m=>m.name)),u.params&&ps(u.params,f.keys.map(m=>m.name))),y=f.stringify(p)}else if("path"in u)y=u.path,f=n.find(m=>m.re.test(y)),f&&(p=f.parse(y),T=f.record.name);else{if(f=d.name?o.get(d.name):n.find(m=>m.re.test(d.path)),!f)throw dn(1,{location:u,currentLocation:d});T=f.record.name,p=ge({},d.params,u.params),y=f.stringify(p)}const q=[];let M=f;for(;M;)q.unshift(M.record),M=M.parent;return{name:T,path:y,params:p,matched:q,meta:Qd(q)}}return e.forEach(u=>i(u)),{addRoute:i,resolve:c,removeRoute:s,getRoutes:l,getRecordMatcher:r}}function ps(e,t){const n={};for(const o of t)o in e&&(n[o]=e[o]);return n}function Ud(e){return{path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:void 0,beforeEnter:e.beforeEnter,props:Wd(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}}}function Wd(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const o in e.components)t[o]=typeof n=="object"?n[o]:n;return t}function vs(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Qd(e){return e.reduce((t,n)=>ge(t,n.meta),{})}function bs(e,t){const n={};for(const o in e)n[o]=o in t?t[o]:e[o];return n}function _a(e,t){return t.children.some(n=>n===e||_a(e,n))}const wa=/#/g,Yd=/&/g,Zd=/\//g,Jd=/=/g,Xd=/\?/g,xa=/\+/g,Gd=/%5B/g,eh=/%5D/g,Ca=/%5E/g,th=/%60/g,ka=/%7B/g,nh=/%7C/g,Ea=/%7D/g,oh=/%20/g;function fi(e){return encodeURI(""+e).replace(nh,"|").replace(Gd,"[").replace(eh,"]")}function rh(e){return fi(e).replace(ka,"{").replace(Ea,"}").replace(Ca,"^")}function Mr(e){return fi(e).replace(xa,"%2B").replace(oh,"+").replace(wa,"%23").replace(Yd,"%26").replace(th,"`").replace(ka,"{").replace(Ea,"}").replace(Ca,"^")}function ih(e){return Mr(e).replace(Jd,"%3D")}function sh(e){return fi(e).replace(wa,"%23").replace(Xd,"%3F")}function lh(e){return e==null?"":sh(e).replace(Zd,"%2F")}function Ro(e){try{return decodeURIComponent(""+e)}catch{}return""+e}function ah(e){const t={};if(e===""||e==="?")return t;const o=(e[0]==="?"?e.slice(1):e).split("&");for(let r=0;ri&&Mr(i)):[o&&Mr(o)]).forEach(i=>{i!==void 0&&(t+=(t.length?"&":"")+n,i!=null&&(t+="="+i))})}return t}function uh(e){const t={};for(const n in e){const o=e[n];o!==void 0&&(t[n]=rt(o)?o.map(r=>r==null?null:""+r):o==null?o:""+o)}return t}const ch=Symbol(""),_s=Symbol(""),di=Symbol(""),Sa=Symbol(""),Or=Symbol("");function xn(){let e=[];function t(o){return e.push(o),()=>{const r=e.indexOf(o);r>-1&&e.splice(r,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Ct(e,t,n,o,r){const i=o&&(o.enterCallbacks[r]=o.enterCallbacks[r]||[]);return()=>new Promise((s,l)=>{const a=d=>{d===!1?l(dn(4,{from:n,to:t})):d instanceof Error?l(d):Ld(d)?l(dn(2,{from:t,to:d})):(i&&o.enterCallbacks[r]===i&&typeof d=="function"&&i.push(d),s())},c=e.call(o&&o.instances[r],t,n,a);let u=Promise.resolve(c);e.length<3&&(u=u.then(a)),u.catch(d=>l(d))})}function ir(e,t,n,o){const r=[];for(const i of e)for(const s in i.components){let l=i.components[s];if(!(t!=="beforeRouteEnter"&&!i.instances[s]))if(fh(l)){const c=(l.__vccOpts||l)[t];c&&r.push(Ct(c,n,o,i,s))}else{let a=l();r.push(()=>a.then(c=>{if(!c)return Promise.reject(new Error(`Couldn't resolve component "${s}" at "${i.path}"`));const u=pd(c)?c.default:c;i.components[s]=u;const f=(u.__vccOpts||u)[t];return f&&Ct(f,n,o,i,s)()}))}}return r}function fh(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function ws(e){const t=ut(di),n=ut(Sa),o=R(()=>t.resolve(Vt(e.to))),r=R(()=>{const{matched:a}=o.value,{length:c}=a,u=a[c-1],d=n.matched;if(!u||!d.length)return-1;const f=d.findIndex(fn.bind(null,u));if(f>-1)return f;const p=xs(a[c-2]);return c>1&&xs(u)===p&&d[d.length-1].path!==p?d.findIndex(fn.bind(null,a[c-2])):f}),i=R(()=>r.value>-1&&mh(n.params,o.value.params)),s=R(()=>r.value>-1&&r.value===n.matched.length-1&&pa(n.params,o.value.params));function l(a={}){return gh(a)?t[Vt(e.replace)?"replace":"push"](Vt(e.to)).catch(Ln):Promise.resolve()}return{route:o,href:R(()=>o.value.href),isActive:i,isExactActive:s,navigate:l}}const dh=Lo({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:ws,setup(e,{slots:t}){const n=pn(ws(e)),{options:o}=ut(di),r=R(()=>({[Cs(e.activeClass,o.linkActiveClass,"router-link-active")]:n.isActive,[Cs(e.exactActiveClass,o.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const i=t.default&&t.default(n);return e.custom?i:E("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:r.value},i)}}}),hh=dh;function gh(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function mh(e,t){for(const n in t){const o=t[n],r=e[n];if(typeof o=="string"){if(o!==r)return!1}else if(!rt(r)||r.length!==o.length||o.some((i,s)=>i!==r[s]))return!1}return!0}function xs(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const Cs=(e,t,n)=>e!=null?e:t!=null?t:n,ph=Lo({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const o=ut(Or),r=R(()=>e.route||o.value),i=ut(_s,0),s=R(()=>{let c=Vt(i);const{matched:u}=r.value;let d;for(;(d=u[c])&&!d.components;)c++;return c}),l=R(()=>r.value.matched[s.value]);fo(_s,R(()=>s.value+1)),fo(ch,l),fo(Or,r);const a=he();return be(()=>[a.value,l.value,e.name],([c,u,d],[f,p,y])=>{u&&(u.instances[d]=c,p&&p!==u&&c&&c===f&&(u.leaveGuards.size||(u.leaveGuards=p.leaveGuards),u.updateGuards.size||(u.updateGuards=p.updateGuards))),c&&u&&(!p||!fn(u,p)||!f)&&(u.enterCallbacks[d]||[]).forEach(T=>T(c))},{flush:"post"}),()=>{const c=r.value,u=e.name,d=l.value,f=d&&d.components[u];if(!f)return ks(n.default,{Component:f,route:c});const p=d.props[u],y=p?p===!0?c.params:typeof p=="function"?p(c):p:null,q=E(f,ge({},y,t,{onVnodeUnmounted:M=>{M.component.isUnmounted&&(d.instances[u]=null)},ref:a}));return ks(n.default,{Component:q,route:c})||q}}});function ks(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const vh=ph;function bh(e){const t=Kd(e.routes,e),n=e.parseQuery||ah,o=e.stringifyQuery||ys,r=e.history,i=xn(),s=xn(),l=xn(),a=Yu(_t);let c=_t;en&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=or.bind(null,S=>""+S),d=or.bind(null,lh),f=or.bind(null,Ro);function p(S,Q){let z,X;return ba(S)?(z=t.getRecordMatcher(S),X=Q):X=S,t.addRoute(X,z)}function y(S){const Q=t.getRecordMatcher(S);Q&&t.removeRoute(Q)}function T(){return t.getRoutes().map(S=>S.record)}function q(S){return!!t.getRecordMatcher(S)}function M(S,Q){if(Q=ge({},Q||a.value),typeof S=="string"){const b=rr(n,S,Q.path),P=t.resolve({path:b.path},Q),O=r.createHref(b.fullPath);return ge(b,P,{params:f(P.params),hash:Ro(b.hash),redirectedFrom:void 0,href:O})}let z;if("path"in S)z=ge({},S,{path:rr(n,S.path,Q.path).path});else{const b=ge({},S.params);for(const P in b)b[P]==null&&delete b[P];z=ge({},S,{params:d(b)}),Q.params=d(Q.params)}const X=t.resolve(z,Q),de=S.hash||"";X.params=u(f(X.params));const h=yd(o,ge({},S,{hash:rh(de),path:X.path})),g=r.createHref(h);return ge({fullPath:h,hash:de,query:o===ys?uh(S.query):S.query||{}},X,{redirectedFrom:void 0,href:g})}function m(S){return typeof S=="string"?rr(n,S,a.value.path):ge({},S)}function _(S,Q){if(c!==S)return dn(8,{from:Q,to:S})}function w(S){return V(S)}function F(S){return w(ge(m(S),{replace:!0}))}function j(S){const Q=S.matched[S.matched.length-1];if(Q&&Q.redirect){const{redirect:z}=Q;let X=typeof z=="function"?z(S):z;return typeof X=="string"&&(X=X.includes("?")||X.includes("#")?X=m(X):{path:X},X.params={}),ge({query:S.query,hash:S.hash,params:"path"in X?{}:S.params},X)}}function V(S,Q){const z=c=M(S),X=a.value,de=S.state,h=S.force,g=S.replace===!0,b=j(z);if(b)return V(ge(m(b),{state:typeof b=="object"?ge({},de,b.state):de,force:h,replace:g}),Q||z);const P=z;P.redirectedFrom=Q;let O;return!h&&_d(o,X,z)&&(O=dn(16,{to:P,from:X}),fe(X,X,!0,!1)),(O?Promise.resolve(O):x(P,X)).catch(B=>ft(B)?ft(B,2)?B:se(B):W(B,P,X)).then(B=>{if(B){if(ft(B,2))return V(ge({replace:g},m(B.to),{state:typeof B.to=="object"?ge({},de,B.to.state):de,force:h}),Q||P)}else B=v(P,X,!0,g,de);return $(P,X,B),B})}function N(S,Q){const z=_(S,Q);return z?Promise.reject(z):Promise.resolve()}function C(S){const Q=Re.values().next().value;return Q&&typeof Q.runWithContext=="function"?Q.runWithContext(S):S()}function x(S,Q){let z;const[X,de,h]=yh(S,Q);z=ir(X.reverse(),"beforeRouteLeave",S,Q);for(const b of X)b.leaveGuards.forEach(P=>{z.push(Ct(P,S,Q))});const g=N.bind(null,S,Q);return z.push(g),ne(z).then(()=>{z=[];for(const b of i.list())z.push(Ct(b,S,Q));return z.push(g),ne(z)}).then(()=>{z=ir(de,"beforeRouteUpdate",S,Q);for(const b of de)b.updateGuards.forEach(P=>{z.push(Ct(P,S,Q))});return z.push(g),ne(z)}).then(()=>{z=[];for(const b of h)if(b.beforeEnter)if(rt(b.beforeEnter))for(const P of b.beforeEnter)z.push(Ct(P,S,Q));else z.push(Ct(b.beforeEnter,S,Q));return z.push(g),ne(z)}).then(()=>(S.matched.forEach(b=>b.enterCallbacks={}),z=ir(h,"beforeRouteEnter",S,Q),z.push(g),ne(z))).then(()=>{z=[];for(const b of s.list())z.push(Ct(b,S,Q));return z.push(g),ne(z)}).catch(b=>ft(b,8)?b:Promise.reject(b))}function $(S,Q,z){l.list().forEach(X=>C(()=>X(S,Q,z)))}function v(S,Q,z,X,de){const h=_(S,Q);if(h)return h;const g=Q===_t,b=en?history.state:{};z&&(X||g?r.replace(S.fullPath,ge({scroll:g&&b&&b.scroll},de)):r.push(S.fullPath,de)),a.value=S,fe(S,Q,z,g),se()}let H;function k(){H||(H=r.listen((S,Q,z)=>{if(!oe.listening)return;const X=M(S),de=j(X);if(de){V(ge(de,{replace:!0}),X).catch(Ln);return}c=X;const h=a.value;en&&Pd(fs(h.fullPath,z.delta),zo()),x(X,h).catch(g=>ft(g,12)?g:ft(g,2)?(V(g.to,X).then(b=>{ft(b,20)&&!z.delta&&z.type===Kn.pop&&r.go(-1,!1)}).catch(Ln),Promise.reject()):(z.delta&&r.go(-z.delta,!1),W(g,X,h))).then(g=>{g=g||v(X,h,!1),g&&(z.delta&&!ft(g,8)?r.go(-z.delta,!1):z.type===Kn.pop&&ft(g,20)&&r.go(-1,!1)),$(X,h,g)}).catch(Ln)}))}let Z=xn(),Y=xn(),A;function W(S,Q,z){se(S);const X=Y.list();return X.length?X.forEach(de=>de(S,Q,z)):console.error(S),Promise.reject(S)}function _e(){return A&&a.value!==_t?Promise.resolve():new Promise((S,Q)=>{Z.add([S,Q])})}function se(S){return A||(A=!S,k(),Z.list().forEach(([Q,z])=>S?z(S):Q()),Z.reset()),S}function fe(S,Q,z,X){const{scrollBehavior:de}=e;if(!en||!de)return Promise.resolve();const h=!z&&Td(fs(S.fullPath,0))||(X||!z)&&history.state&&history.state.scroll||null;return je().then(()=>de(S,Q,h)).then(g=>g&&Rd(g)).catch(g=>W(g,S,Q))}const L=S=>r.go(S);let ue;const Re=new Set,oe={currentRoute:a,listening:!0,addRoute:p,removeRoute:y,hasRoute:q,getRoutes:T,resolve:M,options:e,push:w,replace:F,go:L,back:()=>L(-1),forward:()=>L(1),beforeEach:i.add,beforeResolve:s.add,afterEach:l.add,onError:Y.add,isReady:_e,install(S){const Q=this;S.component("RouterLink",hh),S.component("RouterView",vh),S.config.globalProperties.$router=Q,Object.defineProperty(S.config.globalProperties,"$route",{enumerable:!0,get:()=>Vt(a)}),en&&!ue&&a.value===_t&&(ue=!0,w(r.location).catch(de=>{}));const z={};for(const de in _t)Object.defineProperty(z,de,{get:()=>a.value[de],enumerable:!0});S.provide(di,Q),S.provide(Sa,ml(z)),S.provide(Or,a);const X=S.unmount;Re.add(S),S.unmount=function(){Re.delete(S),Re.size<1&&(c=_t,H&&H(),H=null,a.value=_t,ue=!1,A=!1),X()}}};function ne(S){return S.reduce((Q,z)=>Q.then(()=>C(z)),Promise.resolve())}return oe}function yh(e,t){const n=[],o=[],r=[],i=Math.max(t.matched.length,e.matched.length);for(let s=0;sfn(c,l))?o.push(l):n.push(l));const a=e.matched[s];a&&(t.matched.find(c=>fn(c,a))||r.push(a))}return[n,o,r]}const _h=function(){const t=document.createElement("link").relList;return t&&t.supports&&t.supports("modulepreload")?"modulepreload":"preload"}(),Es={},wh="/nostrmarket/static/market/",sr=function(t,n){return!n||n.length===0?t():Promise.all(n.map(o=>{if(o=`${wh}${o}`,o in Es)return;Es[o]=!0;const r=o.endsWith(".css"),i=r?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${o}"]${i}`))return;const s=document.createElement("link");if(s.rel=r?"stylesheet":_h,r||(s.as="script",s.crossOrigin=""),s.href=o,document.head.appendChild(s),r)return new Promise((l,a)=>{s.addEventListener("load",l),s.addEventListener("error",()=>a(new Error(`Unable to preload CSS for ${o}`)))})})).then(()=>t())},xh=[{path:"/",component:()=>sr(()=>import("./MainLayout.d210aac9.js"),["assets/MainLayout.d210aac9.js","assets/QResizeObserver.43113a5e.js"]),children:[{path:"",component:()=>sr(()=>import("./MarketPage.b41f466c.js"),["assets/MarketPage.b41f466c.js","assets/QResizeObserver.43113a5e.js"])}]},{path:"/:catchAll(.*)*",component:()=>sr(()=>import("./ErrorNotFound.58616433.js"),[])}];var lr=function(){return bh({scrollBehavior:()=>({left:0,top:0}),routes:xh,history:$d("/nostrmarket/static/market/")})};async function Ch(e,t){const n=e(md);n.use(fd,t);const o=vn(typeof lr=="function"?await lr({}):lr);return{app:n,router:o}}const $r={xs:18,sm:24,md:32,lg:38,xl:46},Yn={size:String};function Zn(e,t=$r){return R(()=>e.size!==void 0?{fontSize:e.size in t?`${t[e.size]}px`:e.size}:null)}const $e=e=>vn(Lo(e)),kh=e=>vn(e);function tt(e,t){return e!==void 0&&e()||t}function $m(e,t){if(e!==void 0){const n=e();if(n!=null)return n.slice()}return t}function It(e,t){return e!==void 0?t.concat(e()):t}function Eh(e,t){return e===void 0?t:t!==void 0?t.concat(e()):e()}function Lm(e,t,n,o,r,i){t.key=o+r;const s=E(e,t,n);return r===!0?Al(s,i()):s}const Ss="0 0 24 24",Rs=e=>e,ar=e=>`ionicons ${e}`,Ra={"mdi-":e=>`mdi ${e}`,"icon-":Rs,"bt-":e=>`bt ${e}`,"eva-":e=>`eva ${e}`,"ion-md":ar,"ion-ios":ar,"ion-logo":ar,"iconfont ":Rs,"ti-":e=>`themify-icon ${e}`,"bi-":e=>`bootstrap-icons ${e}`},Pa={o_:"-outlined",r_:"-round",s_:"-sharp"},Ta={sym_o_:"-outlined",sym_r_:"-rounded",sym_s_:"-sharp"},Sh=new RegExp("^("+Object.keys(Ra).join("|")+")"),Rh=new RegExp("^("+Object.keys(Pa).join("|")+")"),Ps=new RegExp("^("+Object.keys(Ta).join("|")+")"),Ph=/^[Mm]\s?[-+]?\.?\d/,Th=/^img:/,qh=/^svguse:/,Ah=/^ion-/,Mh=/^(fa-(sharp|solid|regular|light|brands|duotone|thin)|[lf]a[srlbdk]?) /;var pt=$e({name:"QIcon",props:{...Yn,tag:{type:String,default:"i"},name:String,color:String,left:Boolean,right:Boolean},setup(e,{slots:t}){const{proxy:{$q:n}}=ke(),o=Zn(e),r=R(()=>"q-icon"+(e.left===!0?" on-left":"")+(e.right===!0?" on-right":"")+(e.color!==void 0?` text-${e.color}`:"")),i=R(()=>{let s,l=e.name;if(l==="none"||!l)return{none:!0};if(n.iconMapFn!==null){const u=n.iconMapFn(l);if(u!==void 0)if(u.icon!==void 0){if(l=u.icon,l==="none"||!l)return{none:!0}}else return{cls:u.cls,content:u.content!==void 0?u.content:" "}}if(Ph.test(l)===!0){const[u,d=Ss]=l.split("|");return{svg:!0,viewBox:d,nodes:u.split("&&").map(f=>{const[p,y,T]=f.split("@@");return E("path",{style:y,d:p,transform:T})})}}if(Th.test(l)===!0)return{img:!0,src:l.substring(4)};if(qh.test(l)===!0){const[u,d=Ss]=l.split("|");return{svguse:!0,src:u.substring(7),viewBox:d}}let a=" ";const c=l.match(Sh);if(c!==null)s=Ra[c[1]](l);else if(Mh.test(l)===!0)s=l;else if(Ah.test(l)===!0)s=`ionicons ion-${n.platform.is.ios===!0?"ios":"md"}${l.substring(3)}`;else if(Ps.test(l)===!0){s="notranslate material-symbols";const u=l.match(Ps);u!==null&&(l=l.substring(6),s+=Ta[u[1]]),a=l}else{s="notranslate material-icons";const u=l.match(Rh);u!==null&&(l=l.substring(2),s+=Pa[u[1]]),a=l}return{cls:s,content:a}});return()=>{const s={class:r.value,style:o.value,"aria-hidden":"true",role:"presentation"};return i.value.none===!0?E(e.tag,s,tt(t.default)):i.value.img===!0?E("span",s,It(t.default,[E("img",{src:i.value.src})])):i.value.svg===!0?E("span",s,It(t.default,[E("svg",{viewBox:i.value.viewBox||"0 0 24 24"},i.value.nodes)])):i.value.svguse===!0?E("span",s,It(t.default,[E("svg",{viewBox:i.value.viewBox},[E("use",{"xlink:href":i.value.src})])])):(i.value.cls!==void 0&&(s.class+=" "+i.value.cls),E(e.tag,s,It(t.default,[i.value.content])))}}}),Oh=$e({name:"QAvatar",props:{...Yn,fontSize:String,color:String,textColor:String,icon:String,square:Boolean,rounded:Boolean},setup(e,{slots:t}){const n=Zn(e),o=R(()=>"q-avatar"+(e.color?` bg-${e.color}`:"")+(e.textColor?` text-${e.textColor} q-chip--colored`:"")+(e.square===!0?" q-avatar--square":e.rounded===!0?" rounded-borders":"")),r=R(()=>e.fontSize?{fontSize:e.fontSize}:null);return()=>{const i=e.icon!==void 0?[E(pt,{name:e.icon})]:void 0;return E("div",{class:o.value,style:n.value},[E("div",{class:"q-avatar__content row flex-center overflow-hidden",style:r.value},Eh(t.default,i))])}}});const $h={size:{type:[Number,String],default:"1em"},color:String};function Lh(e){return{cSize:R(()=>e.size in $r?`${$r[e.size]}px`:e.size),classes:R(()=>"q-spinner"+(e.color?` text-${e.color}`:""))}}var Un=$e({name:"QSpinner",props:{...$h,thickness:{type:Number,default:5}},setup(e){const{cSize:t,classes:n}=Lh(e);return()=>E("svg",{class:n.value+" q-spinner-mat",width:t.value,height:t.value,viewBox:"25 25 50 50"},[E("circle",{class:"path",cx:"50",cy:"50",r:"20",fill:"none",stroke:"currentColor","stroke-width":e.thickness,"stroke-miterlimit":"10"})])}});function Bm(e){return e===window?window.innerHeight:e.getBoundingClientRect().height}function Lr(e,t){const n=e.style;for(const o in t)n[o]=t[o]}function Bh(e){if(e==null)return;if(typeof e=="string")try{return document.querySelector(e)||void 0}catch{return}const t=Vt(e);if(t)return t.$el||t}function Fh(e,t){if(e==null||e.contains(t)===!0)return!0;for(let n=e.nextElementSibling;n!==null;n=n.nextElementSibling)if(n.contains(t))return!0;return!1}function Ih(e,t=250){let n=!1,o;return function(){return n===!1&&(n=!0,setTimeout(()=>{n=!1},t),o=e.apply(this,arguments)),o}}function Ts(e,t,n,o){n.modifiers.stop===!0&&ko(e);const r=n.modifiers.color;let i=n.modifiers.center;i=i===!0||o===!0;const s=document.createElement("span"),l=document.createElement("span"),a=Hf(e),{left:c,top:u,width:d,height:f}=t.getBoundingClientRect(),p=Math.sqrt(d*d+f*f),y=p/2,T=`${(d-p)/2}px`,q=i?T:`${a.left-c-y}px`,M=`${(f-p)/2}px`,m=i?M:`${a.top-u-y}px`;l.className="q-ripple__inner",Lr(l,{height:`${p}px`,width:`${p}px`,transform:`translate3d(${q},${m},0) scale3d(.2,.2,1)`,opacity:0}),s.className=`q-ripple${r?" text-"+r:""}`,s.setAttribute("dir","ltr"),s.appendChild(l),t.appendChild(s);const _=()=>{s.remove(),clearTimeout(w)};n.abort.push(_);let w=setTimeout(()=>{l.classList.add("q-ripple__inner--enter"),l.style.transform=`translate3d(${T},${M},0) scale3d(1,1,1)`,l.style.opacity=.2,w=setTimeout(()=>{l.classList.remove("q-ripple__inner--enter"),l.classList.add("q-ripple__inner--leave"),l.style.opacity=0,w=setTimeout(()=>{s.remove(),n.abort.splice(n.abort.indexOf(_),1)},275)},250)},50)}function qs(e,{modifiers:t,value:n,arg:o}){const r=Object.assign({},e.cfg.ripple,t,n);e.modifiers={early:r.early===!0,stop:r.stop===!0,center:r.center===!0,color:r.color||o,keyCodes:[].concat(r.keyCodes||13)}}var Nh=kh({name:"ripple",beforeMount(e,t){const n=t.instance.$.appContext.config.globalProperties.$q.config||{};if(n.ripple===!1)return;const o={cfg:n,enabled:t.value!==!1,modifiers:{},abort:[],start(r){o.enabled===!0&&r.qSkipRipple!==!0&&r.type===(o.modifiers.early===!0?"pointerdown":"click")&&Ts(r,e,o,r.qKeyEvent===!0)},keystart:Ih(r=>{o.enabled===!0&&r.qSkipRipple!==!0&&zn(r,o.modifiers.keyCodes)===!0&&r.type===`key${o.modifiers.early===!0?"down":"up"}`&&Ts(r,e,o,!0)},300)};qs(o,t),e.__qripple=o,Kf(o,"main",[[e,"pointerdown","start","passive"],[e,"click","start","passive"],[e,"keydown","keystart","passive"],[e,"keyup","keystart","passive"]])},updated(e,t){if(t.oldValue!==t.value){const n=e.__qripple;n!==void 0&&(n.enabled=t.value!==!1,n.enabled===!0&&Object(t.value)===t.value&&qs(n,t))}},beforeUnmount(e){const t=e.__qripple;t!==void 0&&(t.abort.forEach(n=>{n()}),Uf(t,"main"),delete e._qripple)}});const qa={left:"start",center:"center",right:"end",between:"between",around:"around",evenly:"evenly",stretch:"stretch"},jh=Object.keys(qa),Aa={align:{type:String,validator:e=>jh.includes(e)}};function Ma(e){return R(()=>{const t=e.align===void 0?e.vertical===!0?"stretch":"left":e.align;return`${e.vertical===!0?"items":"justify"}-${qa[t]}`})}function go(e){if(Object(e.$parent)===e.$parent)return e.$parent;let{parent:t}=e.$;for(;Object(t)===t;){if(Object(t.proxy)===t.proxy)return t.proxy;t=t.parent}}function Oa(e,t){typeof t.type=="symbol"?Array.isArray(t.children)===!0&&t.children.forEach(n=>{Oa(e,n)}):e.add(t)}function Fm(e){const t=new Set;return e.forEach(n=>{Oa(t,n)}),Array.from(t)}function $a(e){return e.appContext.config.globalProperties.$router!==void 0}function La(e){return e.isUnmounted===!0||e.isDeactivated===!0}function As(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}function Ms(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Vh(e,t){for(const n in t){const o=t[n],r=e[n];if(typeof o=="string"){if(o!==r)return!1}else if(Array.isArray(r)===!1||r.length!==o.length||o.some((i,s)=>i!==r[s]))return!1}return!0}function Os(e,t){return Array.isArray(t)===!0?e.length===t.length&&e.every((n,o)=>n===t[o]):e.length===1&&e[0]===t}function Dh(e,t){return Array.isArray(e)===!0?Os(e,t):Array.isArray(t)===!0?Os(t,e):e===t}function Hh(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(Dh(e[n],t[n])===!1)return!1;return!0}const zh={to:[String,Object],replace:Boolean,exact:Boolean,activeClass:{type:String,default:"q-router-link--active"},exactActiveClass:{type:String,default:"q-router-link--exact-active"},href:String,target:String,disable:Boolean};function Kh({fallbackTag:e,useDisableForRouterLinkProps:t=!0}={}){const n=ke(),{props:o,proxy:r,emit:i}=n,s=$a(n),l=R(()=>o.disable!==!0&&o.href!==void 0),a=R(t===!0?()=>s===!0&&o.disable!==!0&&l.value!==!0&&o.to!==void 0&&o.to!==null&&o.to!=="":()=>s===!0&&l.value!==!0&&o.to!==void 0&&o.to!==null&&o.to!==""),c=R(()=>a.value===!0?m(o.to):null),u=R(()=>c.value!==null),d=R(()=>l.value===!0||u.value===!0),f=R(()=>o.type==="a"||d.value===!0?"a":o.tag||e||"div"),p=R(()=>l.value===!0?{href:o.href,target:o.target}:u.value===!0?{href:c.value.href,target:o.target}:{}),y=R(()=>{if(u.value===!1)return-1;const{matched:F}=c.value,{length:j}=F,V=F[j-1];if(V===void 0)return-1;const N=r.$route.matched;if(N.length===0)return-1;const C=N.findIndex(Ms.bind(null,V));if(C>-1)return C;const x=As(F[j-2]);return j>1&&As(V)===x&&N[N.length-1].path!==x?N.findIndex(Ms.bind(null,F[j-2])):C}),T=R(()=>u.value===!0&&y.value!==-1&&Vh(r.$route.params,c.value.params)),q=R(()=>T.value===!0&&y.value===r.$route.matched.length-1&&Hh(r.$route.params,c.value.params)),M=R(()=>u.value===!0?q.value===!0?` ${o.exactActiveClass} ${o.activeClass}`:o.exact===!0?"":T.value===!0?` ${o.activeClass}`:"":"");function m(F){try{return r.$router.resolve(F)}catch{}return null}function _(F,{returnRouterError:j,to:V=o.to,replace:N=o.replace}={}){if(o.disable===!0)return F.preventDefault(),Promise.resolve(!1);if(F.metaKey||F.altKey||F.ctrlKey||F.shiftKey||F.button!==void 0&&F.button!==0||o.target==="_blank")return Promise.resolve(!1);F.preventDefault();const C=r.$router[N===!0?"replace":"push"](V);return j===!0?C:C.then(()=>{}).catch(()=>{})}function w(F){if(u.value===!0){const j=V=>_(F,V);i("click",F,j),F.defaultPrevented!==!0&&j()}else i("click",F)}return{hasRouterLink:u,hasHrefLink:l,hasLink:d,linkTag:f,resolvedLink:c,linkIsActive:T,linkIsExactActive:q,linkClass:M,linkAttrs:p,getLink:m,navigateToRouterLink:_,navigateOnClick:w}}const $s={none:0,xs:4,sm:8,md:16,lg:24,xl:32},Uh={xs:8,sm:10,md:14,lg:20,xl:24},Wh=["button","submit","reset"],Qh=/[^\s]\/[^\s]/,Yh=["flat","outline","push","unelevated"],Ba=(e,t)=>e.flat===!0?"flat":e.outline===!0?"outline":e.push===!0?"push":e.unelevated===!0?"unelevated":t,Im=e=>{const t=Ba(e);return t!==void 0?{[t]:!0}:{}},Zh={...Yn,...zh,type:{type:String,default:"button"},label:[Number,String],icon:String,iconRight:String,...Yh.reduce((e,t)=>(e[t]=Boolean)&&e,{}),square:Boolean,round:Boolean,rounded:Boolean,glossy:Boolean,size:String,fab:Boolean,fabMini:Boolean,padding:String,color:String,textColor:String,noCaps:Boolean,noWrap:Boolean,dense:Boolean,tabindex:[Number,String],ripple:{type:[Boolean,Object],default:!0},align:{...Aa.align,default:"center"},stack:Boolean,stretch:Boolean,loading:{type:Boolean,default:null},disable:Boolean};function Jh(e){const t=Zn(e,Uh),n=Ma(e),{hasRouterLink:o,hasLink:r,linkTag:i,linkAttrs:s,navigateOnClick:l}=Kh({fallbackTag:"button"}),a=R(()=>{const q=e.fab===!1&&e.fabMini===!1?t.value:{};return e.padding!==void 0?Object.assign({},q,{padding:e.padding.split(/\s+/).map(M=>M in $s?$s[M]+"px":M).join(" "),minWidth:"0",minHeight:"0"}):q}),c=R(()=>e.rounded===!0||e.fab===!0||e.fabMini===!0),u=R(()=>e.disable!==!0&&e.loading!==!0),d=R(()=>u.value===!0?e.tabindex||0:-1),f=R(()=>Ba(e,"standard")),p=R(()=>{const q={tabindex:d.value};return r.value===!0?Object.assign(q,s.value):Wh.includes(e.type)===!0&&(q.type=e.type),i.value==="a"?(e.disable===!0?q["aria-disabled"]="true":q.href===void 0&&(q.role="button"),o.value!==!0&&Qh.test(e.type)===!0&&(q.type=e.type)):e.disable===!0&&(q.disabled="",q["aria-disabled"]="true"),e.loading===!0&&e.percentage!==void 0&&Object.assign(q,{role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":e.percentage}),q}),y=R(()=>{let q;e.color!==void 0?e.flat===!0||e.outline===!0?q=`text-${e.textColor||e.color}`:q=`bg-${e.color} text-${e.textColor||"white"}`:e.textColor&&(q=`text-${e.textColor}`);const M=e.round===!0?"round":`rectangle${c.value===!0?" q-btn--rounded":e.square===!0?" q-btn--square":""}`;return`q-btn--${f.value} q-btn--${M}`+(q!==void 0?" "+q:"")+(u.value===!0?" q-btn--actionable q-focusable q-hoverable":e.disable===!0?" disabled":"")+(e.fab===!0?" q-btn--fab":e.fabMini===!0?" q-btn--fab-mini":"")+(e.noCaps===!0?" q-btn--no-uppercase":"")+(e.dense===!0?" q-btn--dense":"")+(e.stretch===!0?" no-border-radius self-stretch":"")+(e.glossy===!0?" glossy":"")+(e.square?" q-btn--square":"")}),T=R(()=>n.value+(e.stack===!0?" column":" row")+(e.noWrap===!0?" no-wrap text-no-wrap":"")+(e.loading===!0?" q-btn__content--hidden":""));return{classes:y,style:a,innerClasses:T,attributes:p,hasLink:r,linkTag:i,navigateOnClick:l,isActionable:u}}const{passiveCapture:He}=Be;let Jt=null,Xt=null,Gt=null;var Br=$e({name:"QBtn",props:{...Zh,percentage:Number,darkPercentage:Boolean,onTouchstart:[Function,Array]},emits:["click","keydown","mousedown","keyup"],setup(e,{slots:t,emit:n}){const{proxy:o}=ke(),{classes:r,style:i,innerClasses:s,attributes:l,hasLink:a,linkTag:c,navigateOnClick:u,isActionable:d}=Jh(e),f=he(null),p=he(null);let y=null,T,q=null;const M=R(()=>e.label!==void 0&&e.label!==null&&e.label!==""),m=R(()=>e.disable===!0||e.ripple===!1?!1:{keyCodes:a.value===!0?[13,32]:[13],...e.ripple===!0?{}:e.ripple}),_=R(()=>({center:e.round})),w=R(()=>{const k=Math.max(0,Math.min(100,e.percentage));return k>0?{transition:"transform 0.6s",transform:`translateX(${k-100}%)`}:{}}),F=R(()=>{if(e.loading===!0)return{onMousedown:H,onTouchstart:H,onClick:H,onKeydown:H,onKeyup:H};if(d.value===!0){const k={onClick:V,onKeydown:N,onMousedown:x};if(o.$q.platform.has.touch===!0){const Z=e.onTouchstart!==void 0?"":"Passive";k[`onTouchstart${Z}`]=C}return k}return{onClick:Ke}}),j=R(()=>({ref:f,class:"q-btn q-btn-item non-selectable no-outline "+r.value,style:i.value,...l.value,...F.value}));function V(k){if(f.value!==null){if(k!==void 0){if(k.defaultPrevented===!0)return;const Z=document.activeElement;if(e.type==="submit"&&Z!==document.body&&f.value.contains(Z)===!1&&Z.contains(f.value)===!1){f.value.focus();const Y=()=>{document.removeEventListener("keydown",Ke,!0),document.removeEventListener("keyup",Y,He),f.value!==null&&f.value.removeEventListener("blur",Y,He)};document.addEventListener("keydown",Ke,!0),document.addEventListener("keyup",Y,He),f.value.addEventListener("blur",Y,He)}}u(k)}}function N(k){f.value!==null&&(n("keydown",k),zn(k,[13,32])===!0&&Xt!==f.value&&(Xt!==null&&v(),k.defaultPrevented!==!0&&(f.value.focus(),Xt=f.value,f.value.classList.add("q-btn--active"),document.addEventListener("keyup",$,!0),f.value.addEventListener("blur",$,He)),Ke(k)))}function C(k){f.value!==null&&(n("touchstart",k),k.defaultPrevented!==!0&&(Jt!==f.value&&(Jt!==null&&v(),Jt=f.value,y=k.target,y.addEventListener("touchcancel",$,He),y.addEventListener("touchend",$,He)),T=!0,q!==null&&clearTimeout(q),q=setTimeout(()=>{q=null,T=!1},200)))}function x(k){f.value!==null&&(k.qSkipRipple=T===!0,n("mousedown",k),k.defaultPrevented!==!0&&Gt!==f.value&&(Gt!==null&&v(),Gt=f.value,f.value.classList.add("q-btn--active"),document.addEventListener("mouseup",$,He)))}function $(k){if(f.value!==null&&!(k!==void 0&&k.type==="blur"&&document.activeElement===f.value)){if(k!==void 0&&k.type==="keyup"){if(Xt===f.value&&zn(k,[13,32])===!0){const Z=new MouseEvent("click",k);Z.qKeyEvent=!0,k.defaultPrevented===!0&&Et(Z),k.cancelBubble===!0&&ko(Z),f.value.dispatchEvent(Z),Ke(k),k.qKeyEvent=!0}n("keyup",k)}v()}}function v(k){const Z=p.value;k!==!0&&(Jt===f.value||Gt===f.value)&&Z!==null&&Z!==document.activeElement&&(Z.setAttribute("tabindex",-1),Z.focus()),Jt===f.value&&(y!==null&&(y.removeEventListener("touchcancel",$,He),y.removeEventListener("touchend",$,He)),Jt=y=null),Gt===f.value&&(document.removeEventListener("mouseup",$,He),Gt=null),Xt===f.value&&(document.removeEventListener("keyup",$,!0),f.value!==null&&f.value.removeEventListener("blur",$,He),Xt=null),f.value!==null&&f.value.classList.remove("q-btn--active")}function H(k){Ke(k),k.qSkipRipple=!0}return We(()=>{v(!0)}),Object.assign(o,{click:V}),()=>{let k=[];e.icon!==void 0&&k.push(E(pt,{name:e.icon,left:e.stack===!1&&M.value===!0,role:"img","aria-hidden":"true"})),M.value===!0&&k.push(E("span",{class:"block"},[e.label])),k=It(t.default,k),e.iconRight!==void 0&&e.round===!1&&k.push(E(pt,{name:e.iconRight,right:e.stack===!1&&M.value===!0,role:"img","aria-hidden":"true"}));const Z=[E("span",{class:"q-focus-helper",ref:p})];return e.loading===!0&&e.percentage!==void 0&&Z.push(E("span",{class:"q-btn__progress absolute-full overflow-hidden"+(e.darkPercentage===!0?" q-btn__progress--dark":"")},[E("span",{class:"q-btn__progress-indicator fit block",style:w.value})])),Z.push(E("span",{class:"q-btn__content text-center col items-center q-anchor--skip "+s.value},k)),e.loading!==null&&Z.push(E(cn,{name:"q-transition--fade"},()=>e.loading===!0?[E("span",{key:"loading",class:"absolute-full flex flex-center"},t.loading!==void 0?t.loading():[E(Un)])]:null)),Al(E(c.value,j.value,Z),[[Nh,m.value,void 0,_.value]])}}});let Xh=1,Gh=document.body;function hi(e,t){const n=document.createElement("div");if(n.id=t!==void 0?`q-portal--${t}--${Xh++}`:e,So.globalNodes!==void 0){const o=So.globalNodes.class;o!==void 0&&(n.className=o)}return Gh.appendChild(n),n}function Fa(e){e.remove()}let eg=0;const mo={},po={},Je={},Ia={},tg=/^\s*$/,Na=[],gi=["top-left","top-right","bottom-left","bottom-right","top","bottom","left","right","center"],ng=["top-left","top-right","bottom-left","bottom-right"],tn={positive:{icon:e=>e.iconSet.type.positive,color:"positive"},negative:{icon:e=>e.iconSet.type.negative,color:"negative"},warning:{icon:e=>e.iconSet.type.warning,color:"warning",textColor:"dark"},info:{icon:e=>e.iconSet.type.info,color:"info"},ongoing:{group:!1,timeout:0,spinner:!0,color:"grey-8"}};function ja(e,t,n){if(!e)return Cn("parameter required");let o;const r={textColor:"white"};if(e.ignoreDefaults!==!0&&Object.assign(r,mo),at(e)===!1&&(r.type&&Object.assign(r,tn[r.type]),e={message:e}),Object.assign(r,tn[e.type||r.type],e),typeof r.icon=="function"&&(r.icon=r.icon(t)),r.spinner?(r.spinner===!0&&(r.spinner=Un),r.spinner=vn(r.spinner)):r.spinner=!1,r.meta={hasMedia:Boolean(r.spinner!==!1||r.icon||r.avatar),hasText:Ls(r.message)||Ls(r.caption)},r.position){if(gi.includes(r.position)===!1)return Cn("wrong position",e)}else r.position="bottom";if(r.timeout===void 0)r.timeout=5e3;else{const a=parseInt(r.timeout,10);if(isNaN(a)||a<0)return Cn("wrong timeout",e);r.timeout=a}r.timeout===0?r.progress=!1:r.progress===!0&&(r.meta.progressClass="q-notification__progress"+(r.progressClass?` ${r.progressClass}`:""),r.meta.progressStyle={animationDuration:`${r.timeout+1e3}ms`});const i=(Array.isArray(e.actions)===!0?e.actions:[]).concat(e.ignoreDefaults!==!0&&Array.isArray(mo.actions)===!0?mo.actions:[]).concat(tn[e.type]!==void 0&&Array.isArray(tn[e.type].actions)===!0?tn[e.type].actions:[]),{closeBtn:s}=r;if(s&&i.push({label:typeof s=="string"?s:t.lang.label.close}),r.actions=i.map(({handler:a,noDismiss:c,...u})=>({flat:!0,...u,onClick:typeof a=="function"?()=>{a(),c!==!0&&l()}:()=>{l()}})),r.multiLine===void 0&&(r.multiLine=r.actions.length>1),Object.assign(r.meta,{class:`q-notification row items-stretch q-notification--${r.multiLine===!0?"multi-line":"standard"}`+(r.color!==void 0?` bg-${r.color}`:"")+(r.textColor!==void 0?` text-${r.textColor}`:"")+(r.classes!==void 0?` ${r.classes}`:""),wrapperClass:"q-notification__wrapper col relative-position border-radius-inherit "+(r.multiLine===!0?"column no-wrap justify-center":"row items-center"),contentClass:"q-notification__content row items-center"+(r.multiLine===!0?"":" col"),leftClass:r.meta.hasText===!0?"additional":"single",attrs:{role:"alert",...r.attrs}}),r.group===!1?(r.group=void 0,r.meta.group=void 0):((r.group===void 0||r.group===!0)&&(r.group=[r.message,r.caption,r.multiline].concat(r.actions.map(a=>`${a.label}*${a.icon}`)).join("|")),r.meta.group=r.group+"|"+r.position),r.actions.length===0?r.actions=void 0:r.meta.actionsClass="q-notification__actions row items-center "+(r.multiLine===!0?"justify-end":"col-auto")+(r.meta.hasMedia===!0?" q-notification__actions--with-media":""),n!==void 0){n.notif.meta.timer&&(clearTimeout(n.notif.meta.timer),n.notif.meta.timer=void 0),r.meta.uid=n.notif.meta.uid;const a=Je[r.position].value.indexOf(n.notif);Je[r.position].value[a]=r}else{const a=po[r.meta.group];if(a===void 0){if(r.meta.uid=eg++,r.meta.badge=1,["left","right","center"].indexOf(r.position)!==-1)Je[r.position].value.splice(Math.floor(Je[r.position].value.length/2),0,r);else{const c=r.position.indexOf("top")>-1?"unshift":"push";Je[r.position].value[c](r)}r.group!==void 0&&(po[r.meta.group]=r)}else{if(a.meta.timer&&(clearTimeout(a.meta.timer),a.meta.timer=void 0),r.badgePosition!==void 0){if(ng.includes(r.badgePosition)===!1)return Cn("wrong badgePosition",e)}else r.badgePosition=`top-${r.position.indexOf("left")>-1?"right":"left"}`;r.meta.uid=a.meta.uid,r.meta.badge=a.meta.badge+1,r.meta.badgeClass=`q-notification__badge q-notification__badge--${r.badgePosition}`+(r.badgeColor!==void 0?` bg-${r.badgeColor}`:"")+(r.badgeTextColor!==void 0?` text-${r.badgeTextColor}`:"")+(r.badgeClass?` ${r.badgeClass}`:"");const c=Je[r.position].value.indexOf(a);Je[r.position].value[c]=po[r.meta.group]=r}}const l=()=>{og(r),o=void 0};if(r.timeout>0&&(r.meta.timer=setTimeout(()=>{r.meta.timer=void 0,l()},r.timeout+1e3)),r.group!==void 0)return a=>{a!==void 0?Cn("trying to update a grouped one which is forbidden",e):l()};if(o={dismiss:l,config:e,notif:r},n!==void 0){Object.assign(n,o);return}return a=>{if(o!==void 0)if(a===void 0)o.dismiss();else{const c=Object.assign({},o.config,a,{group:!1,position:r.position});ja(c,t,o)}}}function og(e){e.meta.timer&&(clearTimeout(e.meta.timer),e.meta.timer=void 0);const t=Je[e.position].value.indexOf(e);if(t!==-1){e.group!==void 0&&delete po[e.meta.group];const n=Na[""+e.meta.uid];if(n){const{width:o,height:r}=getComputedStyle(n);n.style.left=`${n.offsetLeft}px`,n.style.width=o,n.style.height=r}Je[e.position].value.splice(t,1),typeof e.onDismiss=="function"&&e.onDismiss()}}function Ls(e){return e!=null&&tg.test(e)!==!0}function Cn(e,t){return console.error(`Notify: ${e}`,t),!1}function rg(){return $e({name:"QNotifications",devtools:{hide:!0},setup(){return()=>E("div",{class:"q-notifications"},gi.map(e=>E(Tf,{key:e,class:Ia[e],tag:"div",name:`q-notification--${e}`},()=>Je[e].value.map(t=>{const n=t.meta,o=[];if(n.hasMedia===!0&&(t.spinner!==!1?o.push(E(t.spinner,{class:"q-notification__spinner q-notification__spinner--"+n.leftClass,color:t.spinnerColor,size:t.spinnerSize})):t.icon?o.push(E(pt,{class:"q-notification__icon q-notification__icon--"+n.leftClass,name:t.icon,color:t.iconColor,size:t.iconSize,role:"img"})):t.avatar&&o.push(E(Oh,{class:"q-notification__avatar q-notification__avatar--"+n.leftClass},()=>E("img",{src:t.avatar,"aria-hidden":"true"})))),n.hasText===!0){let i;const s={class:"q-notification__message col"};if(t.html===!0)s.innerHTML=t.caption?`
${t.message}
${t.caption}
`:t.message;else{const l=[t.message];i=t.caption?[E("div",l),E("div",{class:"q-notification__caption"},[t.caption])]:l}o.push(E("div",s,i))}const r=[E("div",{class:n.contentClass},o)];return t.progress===!0&&r.push(E("div",{key:`${n.uid}|p|${n.badge}`,class:n.progressClass,style:n.progressStyle})),t.actions!==void 0&&r.push(E("div",{class:n.actionsClass},t.actions.map(i=>E(Br,i)))),n.badge>1&&r.push(E("div",{key:`${n.uid}|${n.badge}`,class:t.meta.badgeClass,style:t.badgeStyle},[n.badge])),E("div",{ref:i=>{Na[""+n.uid]=i},key:n.uid,class:n.class,...n.attrs},[E("div",{class:n.wrapperClass},r)])}))))}})}var ig={setDefaults(e){at(e)===!0&&Object.assign(mo,e)},registerType(e,t){at(t)===!0&&(tn[e]=t)},install({$q:e,parentApp:t}){if(e.notify=this.create=n=>ja(n,e),e.notify.setDefaults=this.setDefaults,e.notify.registerType=this.registerType,e.config.notify!==void 0&&this.setDefaults(e.config.notify),this.__installed!==!0){gi.forEach(o=>{Je[o]=he([]);const r=["left","center","right"].includes(o)===!0?"center":o.indexOf("top")>-1?"top":"bottom",i=o.indexOf("left")>-1?"start":o.indexOf("right")>-1?"end":"center",s=["left","right"].includes(o)?`items-${o==="left"?"start":"end"} justify-center`:o==="center"?"flex-center":`items-${i}`;Ia[o]=`q-notifications__list q-notifications__list--${r} fixed column no-wrap ${s}`});const n=hi("q-notify");ma(rg(),t).mount(n)}}};function sg(e){return ld(e)===!0?"__q_date|"+e.toUTCString():ad(e)===!0?"__q_expr|"+e.source:typeof e=="number"?"__q_numb|"+e:typeof e=="boolean"?"__q_bool|"+(e?"1":"0"):typeof e=="string"?"__q_strn|"+e:typeof e=="function"?"__q_strn|"+e.toString():e===Object(e)?"__q_objt|"+JSON.stringify(e):e}function lg(e){if(e.length<9)return e;const n=e.substring(0,8),o=e.substring(9);switch(n){case"__q_date":return new Date(o);case"__q_expr":return new RegExp(o);case"__q_numb":return Number(o);case"__q_bool":return Boolean(o==="1");case"__q_strn":return""+o;case"__q_objt":return JSON.parse(o);default:return e}}function ag(){const e=()=>null;return{has:()=>!1,getLength:()=>0,getItem:e,getIndex:e,getKey:e,getAll:()=>{},getAllKeys:()=>[],set:Pt,remove:Pt,clear:Pt,isEmpty:()=>!0}}function ug(e){const t=window[e+"Storage"],n=o=>{const r=t.getItem(o);return r?lg(r):null};return{has:o=>t.getItem(o)!==null,getLength:()=>t.length,getItem:n,getIndex:o=>oo{let o;const r={},i=t.length;for(let s=0;s{const o=[],r=t.length;for(let i=0;i{t.setItem(o,sg(r))},remove:o=>{t.removeItem(o)},clear:()=>{t.clear()},isEmpty:()=>t.length===0}}const Va=we.has.webStorage===!1?ag():ug("local"),Da={install({$q:e}){e.localStorage=Va}};Object.assign(Da,Va);function cg(e,t,n){let o;function r(){o!==void 0&&(qr.remove(o),o=void 0)}return We(()=>{e.value===!0&&r()}),{removeFromHistory:r,addToHistory(){o={condition:()=>n.value===!0,handler:t},qr.add(o)}}}function fg(){let e=null;const t=ke();function n(){e!==null&&(clearTimeout(e),e=null)}return Fo(n),We(n),{removeTimeout:n,registerTimeout(o,r){n(),La(t)===!1&&(e=setTimeout(o,r))}}}function dg(){let e;const t=ke();function n(){e=void 0}return Fo(n),We(n),{removeTick:n,registerTick(o){e=o,je(()=>{e===o&&(La(t)===!1&&e(),e=void 0)})}}}const hg={modelValue:{type:Boolean,default:null},"onUpdate:modelValue":[Function,Array]},gg=["beforeShow","show","beforeHide","hide"];function mg({showing:e,canShow:t,hideOnRouteChange:n,handleShow:o,handleHide:r,processOnMount:i}){const s=ke(),{props:l,emit:a,proxy:c}=s;let u;function d(m){e.value===!0?y(m):f(m)}function f(m){if(l.disable===!0||m!==void 0&&m.qAnchorHandled===!0||t!==void 0&&t(m)!==!0)return;const _=l["onUpdate:modelValue"]!==void 0;_===!0&&(a("update:modelValue",!0),u=m,je(()=>{u===m&&(u=void 0)})),(l.modelValue===null||_===!1)&&p(m)}function p(m){e.value!==!0&&(e.value=!0,a("beforeShow",m),o!==void 0?o(m):a("show",m))}function y(m){if(l.disable===!0)return;const _=l["onUpdate:modelValue"]!==void 0;_===!0&&(a("update:modelValue",!1),u=m,je(()=>{u===m&&(u=void 0)})),(l.modelValue===null||_===!1)&&T(m)}function T(m){e.value!==!1&&(e.value=!1,a("beforeHide",m),r!==void 0?r(m):a("hide",m))}function q(m){l.disable===!0&&m===!0?l["onUpdate:modelValue"]!==void 0&&a("update:modelValue",!1):m===!0!==e.value&&(m===!0?p:T)(u)}be(()=>l.modelValue,q),n!==void 0&&$a(s)===!0&&be(()=>c.$route.fullPath,()=>{n.value===!0&&e.value===!0&&y()}),i===!0&&Ut(()=>{q(l.modelValue)});const M={show:f,hide:y,toggle:d};return Object.assign(c,M),M}const pg={transitionShow:{type:String,default:"fade"},transitionHide:{type:String,default:"fade"},transitionDuration:{type:[String,Number],default:300}};function vg(e,t=()=>{},n=()=>{}){return{transitionProps:R(()=>{const o=`q-transition--${e.transitionShow||t()}`,r=`q-transition--${e.transitionHide||n()}`;return{appear:!0,enterFromClass:`${o}-enter-from`,enterActiveClass:`${o}-enter-active`,enterToClass:`${o}-enter-to`,leaveFromClass:`${r}-leave-from`,leaveActiveClass:`${r}-leave-active`,leaveToClass:`${r}-leave-to`}}),transitionStyle:R(()=>`--q-transition-duration: ${e.transitionDuration}ms`)}}let Nt=[],Wn=[];function Ha(e){Wn=Wn.filter(t=>t!==e)}function bg(e){Ha(e),Wn.push(e)}function Bs(e){Ha(e),Wn.length===0&&Nt.length!==0&&(Nt[Nt.length-1](),Nt=[])}function mi(e){Wn.length===0?e():Nt.push(e)}function yg(e){Nt=Nt.filter(t=>t!==e)}const vo=[];function Nm(e){return vo.find(t=>t.contentEl!==null&&t.contentEl.contains(e))}function _g(e,t){do{if(e.$options.name==="QMenu"){if(e.hide(t),e.$props.separateClosePopup===!0)return go(e)}else if(e.__qPortal===!0){const n=go(e);return n!==void 0&&n.$options.name==="QPopupProxy"?(e.hide(t),n):e}e=go(e)}while(e!=null)}function jm(e,t,n){for(;n!==0&&e!==void 0&&e!==null;){if(e.__qPortal===!0){if(n--,e.$options.name==="QMenu"){e=_g(e,t);continue}e.hide(t)}e=go(e)}}function wg(e){for(e=e.parent;e!=null;){if(e.type.name==="QGlobalDialog")return!0;if(e.type.name==="QDialog"||e.type.name==="QMenu")return!1;e=e.parent}return!1}function xg(e,t,n,o){const r=he(!1),i=he(!1);let s=null;const l={},a=o==="dialog"&&wg(e);function c(d){if(d===!0){Bs(l),i.value=!0;return}i.value=!1,r.value===!1&&(a===!1&&s===null&&(s=hi(!1,o)),r.value=!0,vo.push(e.proxy),bg(l))}function u(d){if(i.value=!1,d!==!0)return;Bs(l),r.value=!1;const f=vo.indexOf(e.proxy);f!==-1&&vo.splice(f,1),s!==null&&(Fa(s),s=null)}return ii(()=>{u(!0)}),e.proxy.__qPortal=!0,bn(e.proxy,"contentEl",()=>t.value),{showPortal:c,hidePortal:u,portalIsActive:r,portalIsAccessible:i,renderPortal:()=>a===!0?n():r.value===!0?[E(zc,{to:s},n())]:void 0}}const Cg=[null,document,document.body,document.scrollingElement,document.documentElement];function Vm(e,t){let n=Bh(t);if(n===void 0){if(e==null)return window;n=e.closest(".scroll,.scroll-y,.overflow-auto")}return Cg.includes(n)?window:n}function Dm(e){return(e===window?document.body:e).scrollHeight}function za(e){return e===window?window.pageYOffset||window.scrollY||document.body.scrollTop||0:e.scrollTop}function Ka(e){return e===window?window.pageXOffset||window.scrollX||document.body.scrollLeft||0:e.scrollLeft}function Ua(e,t,n=0){const o=arguments[3]===void 0?performance.now():arguments[3],r=za(e);if(n<=0){r!==t&&Fr(e,t);return}requestAnimationFrame(i=>{const s=i-o,l=r+(t-r)/Math.max(s,n)*s;Fr(e,l),l!==t&&Ua(e,t,n-s,i)})}function Wa(e,t,n=0){const o=arguments[3]===void 0?performance.now():arguments[3],r=Ka(e);if(n<=0){r!==t&&Ir(e,t);return}requestAnimationFrame(i=>{const s=i-o,l=r+(t-r)/Math.max(s,n)*s;Ir(e,l),l!==t&&Wa(e,t,n-s,i)})}function Fr(e,t){if(e===window){window.scrollTo(window.pageXOffset||window.scrollX||document.body.scrollLeft||0,t);return}e.scrollTop=t}function Ir(e,t){if(e===window){window.scrollTo(t,window.pageYOffset||window.scrollY||document.body.scrollTop||0);return}e.scrollLeft=t}function Hm(e,t,n){if(n){Ua(e,t,n);return}Fr(e,t)}function zm(e,t,n){if(n){Wa(e,t,n);return}Ir(e,t)}let ro;function Km(){if(ro!==void 0)return ro;const e=document.createElement("p"),t=document.createElement("div");Lr(e,{width:"100%",height:"200px"}),Lr(t,{position:"absolute",top:"0px",left:"0px",visibility:"hidden",width:"200px",height:"150px",overflow:"hidden"}),t.appendChild(e),document.body.appendChild(t);const n=e.offsetWidth;t.style.overflow="scroll";let o=e.offsetWidth;return n===o&&(o=t.clientWidth),t.remove(),ro=n-o,ro}function kg(e,t=!0){return!e||e.nodeType!==Node.ELEMENT_NODE?!1:t?e.scrollHeight>e.clientHeight&&(e.classList.contains("scroll")||e.classList.contains("overflow-auto")||["auto","scroll"].includes(window.getComputedStyle(e)["overflow-y"])):e.scrollWidth>e.clientWidth&&(e.classList.contains("scroll")||e.classList.contains("overflow-auto")||["auto","scroll"].includes(window.getComputedStyle(e)["overflow-x"]))}let kn=0,ur,cr,Tn,fr=!1,Fs,Is,Ns,$t=null;function Eg(e){Sg(e)&&Ke(e)}function Sg(e){if(e.target===document.body||e.target.classList.contains("q-layout__backdrop"))return!0;const t=zf(e),n=e.shiftKey&&!e.deltaX,o=!n&&Math.abs(e.deltaX)<=Math.abs(e.deltaY),r=n||o?e.deltaY:e.deltaX;for(let i=0;i0&&s.scrollTop+s.clientHeight===s.scrollHeight:r<0&&s.scrollLeft===0?!0:r>0&&s.scrollLeft+s.clientWidth===s.scrollWidth}return!0}function js(e){e.target===document&&(document.scrollingElement.scrollTop=document.scrollingElement.scrollTop)}function io(e){fr!==!0&&(fr=!0,requestAnimationFrame(()=>{fr=!1;const{height:t}=e.target,{clientHeight:n,scrollTop:o}=document.scrollingElement;(Tn===void 0||t!==window.innerHeight)&&(Tn=n-t,document.scrollingElement.scrollTop=o),o>Tn&&(document.scrollingElement.scrollTop-=Math.ceil((o-Tn)/8))}))}function Vs(e){const t=document.body,n=window.visualViewport!==void 0;if(e==="add"){const{overflowY:o,overflowX:r}=window.getComputedStyle(t);ur=Ka(window),cr=za(window),Fs=t.style.left,Is=t.style.top,Ns=window.location.href,t.style.left=`-${ur}px`,t.style.top=`-${cr}px`,r!=="hidden"&&(r==="scroll"||t.scrollWidth>window.innerWidth)&&t.classList.add("q-body--force-scrollbar-x"),o!=="hidden"&&(o==="scroll"||t.scrollHeight>window.innerHeight)&&t.classList.add("q-body--force-scrollbar-y"),t.classList.add("q-body--prevent-scroll"),document.qScrollPrevented=!0,we.is.ios===!0&&(n===!0?(window.scrollTo(0,0),window.visualViewport.addEventListener("resize",io,Be.passiveCapture),window.visualViewport.addEventListener("scroll",io,Be.passiveCapture),window.scrollTo(0,0)):window.addEventListener("scroll",js,Be.passiveCapture))}we.is.desktop===!0&&we.is.mac===!0&&window[`${e}EventListener`]("wheel",Eg,Be.notPassive),e==="remove"&&(we.is.ios===!0&&(n===!0?(window.visualViewport.removeEventListener("resize",io,Be.passiveCapture),window.visualViewport.removeEventListener("scroll",io,Be.passiveCapture)):window.removeEventListener("scroll",js,Be.passiveCapture)),t.classList.remove("q-body--prevent-scroll"),t.classList.remove("q-body--force-scrollbar-x"),t.classList.remove("q-body--force-scrollbar-y"),document.qScrollPrevented=!1,t.style.left=Fs,t.style.top=Is,window.location.href===Ns&&window.scrollTo(ur,cr),Tn=void 0)}function Rg(e){let t="add";if(e===!0){if(kn++,$t!==null){clearTimeout($t),$t=null;return}if(kn>1)return}else{if(kn===0||(kn--,kn>0))return;if(t="remove",we.is.ios===!0&&we.is.nativeMobile===!0){$t!==null&&clearTimeout($t),$t=setTimeout(()=>{Vs(t),$t=null},100);return}}Vs(t)}function Pg(){let e;return{preventBodyScroll(t){t!==e&&(e!==void 0||t===!0)&&(e=t,Rg(t))}}}const Ht=[];let hn;function Tg(e){hn=e.keyCode===27}function qg(){hn===!0&&(hn=!1)}function Ag(e){hn===!0&&(hn=!1,zn(e,27)===!0&&Ht[Ht.length-1](e))}function Qa(e){window[e]("keydown",Tg),window[e]("blur",qg),window[e]("keyup",Ag),hn=!1}function Mg(e){we.is.desktop===!0&&(Ht.push(e),Ht.length===1&&Qa("addEventListener"))}function Ds(e){const t=Ht.indexOf(e);t>-1&&(Ht.splice(t,1),Ht.length===0&&Qa("removeEventListener"))}const zt=[];function Ya(e){zt[zt.length-1](e)}function Og(e){we.is.desktop===!0&&(zt.push(e),zt.length===1&&document.body.addEventListener("focusin",Ya))}function Hs(e){const t=zt.indexOf(e);t>-1&&(zt.splice(t,1),zt.length===0&&document.body.removeEventListener("focusin",Ya))}let so=0;const $g={standard:"fixed-full flex-center",top:"fixed-top justify-center",bottom:"fixed-bottom justify-center",right:"fixed-right items-center",left:"fixed-left items-center"},zs={standard:["scale","scale"],top:["slide-down","slide-up"],bottom:["slide-up","slide-down"],right:["slide-left","slide-right"],left:["slide-right","slide-left"]};var Lg=$e({name:"QDialog",inheritAttrs:!1,props:{...hg,...pg,transitionShow:String,transitionHide:String,persistent:Boolean,autoClose:Boolean,allowFocusOutside:Boolean,noEscDismiss:Boolean,noBackdropDismiss:Boolean,noRouteDismiss:Boolean,noRefocus:Boolean,noFocus:Boolean,noShake:Boolean,seamless:Boolean,maximized:Boolean,fullWidth:Boolean,fullHeight:Boolean,square:Boolean,position:{type:String,default:"standard",validator:e=>e==="standard"||["top","bottom","left","right"].includes(e)}},emits:[...gg,"shake","click","escapeKey"],setup(e,{slots:t,emit:n,attrs:o}){const r=ke(),i=he(null),s=he(!1),l=he(!1);let a=null,c=null,u,d;const f=R(()=>e.persistent!==!0&&e.noRouteDismiss!==!0&&e.seamless!==!0),{preventBodyScroll:p}=Pg(),{registerTimeout:y}=fg(),{registerTick:T,removeTick:q}=dg(),{transitionProps:M,transitionStyle:m}=vg(e,()=>zs[e.position][0],()=>zs[e.position][1]),{showPortal:_,hidePortal:w,portalIsAccessible:F,renderPortal:j}=xg(r,i,Re,"dialog"),{hide:V}=mg({showing:s,hideOnRouteChange:f,handleShow:k,handleHide:Z,processOnMount:!0}),{addToHistory:N,removeFromHistory:C}=cg(s,V,f),x=R(()=>`q-dialog__inner flex no-pointer-events q-dialog__inner--${e.maximized===!0?"maximized":"minimized"} q-dialog__inner--${e.position} ${$g[e.position]}`+(l.value===!0?" q-dialog__inner--animating":"")+(e.fullWidth===!0?" q-dialog__inner--fullwidth":"")+(e.fullHeight===!0?" q-dialog__inner--fullheight":"")+(e.square===!0?" q-dialog__inner--square":"")),$=R(()=>s.value===!0&&e.seamless!==!0),v=R(()=>e.autoClose===!0?{onClick:fe}:{}),H=R(()=>[`q-dialog fullscreen no-pointer-events q-dialog--${$.value===!0?"modal":"seamless"}`,o.class]);be(()=>e.maximized,oe=>{s.value===!0&&se(oe)}),be($,oe=>{p(oe),oe===!0?(Og(ue),Mg(W)):(Hs(ue),Ds(W))});function k(oe){N(),c=e.noRefocus===!1&&document.activeElement!==null?document.activeElement:null,se(e.maximized),_(),l.value=!0,e.noFocus!==!0?(document.activeElement!==null&&document.activeElement.blur(),T(Y)):q(),y(()=>{if(r.proxy.$q.platform.is.ios===!0){if(e.seamless!==!0&&document.activeElement){const{top:ne,bottom:S}=document.activeElement.getBoundingClientRect(),{innerHeight:Q}=window,z=window.visualViewport!==void 0?window.visualViewport.height:Q;ne>0&&S>z/2&&(document.scrollingElement.scrollTop=Math.min(document.scrollingElement.scrollHeight-z,S>=Q?1/0:Math.ceil(document.scrollingElement.scrollTop+S-z/2))),document.activeElement.scrollIntoView()}d=!0,i.value.click(),d=!1}_(!0),l.value=!1,n("show",oe)},e.transitionDuration)}function Z(oe){q(),C(),_e(!0),l.value=!0,w(),c!==null&&(((oe&&oe.type.indexOf("key")===0?c.closest('[tabindex]:not([tabindex^="-"])'):void 0)||c).focus(),c=null),y(()=>{w(!0),l.value=!1,n("hide",oe)},e.transitionDuration)}function Y(oe){mi(()=>{let ne=i.value;ne===null||ne.contains(document.activeElement)===!0||(ne=(oe!==""?ne.querySelector(oe):null)||ne.querySelector("[autofocus][tabindex], [data-autofocus][tabindex]")||ne.querySelector("[autofocus] [tabindex], [data-autofocus] [tabindex]")||ne.querySelector("[autofocus], [data-autofocus]")||ne,ne.focus({preventScroll:!0}))})}function A(oe){oe&&typeof oe.focus=="function"?oe.focus({preventScroll:!0}):Y(),n("shake");const ne=i.value;ne!==null&&(ne.classList.remove("q-animate--scale"),ne.classList.add("q-animate--scale"),a!==null&&clearTimeout(a),a=setTimeout(()=>{a=null,i.value!==null&&(ne.classList.remove("q-animate--scale"),Y())},170))}function W(){e.seamless!==!0&&(e.persistent===!0||e.noEscDismiss===!0?e.maximized!==!0&&e.noShake!==!0&&A():(n("escapeKey"),V()))}function _e(oe){a!==null&&(clearTimeout(a),a=null),(oe===!0||s.value===!0)&&(se(!1),e.seamless!==!0&&(p(!1),Hs(ue),Ds(W))),oe!==!0&&(c=null)}function se(oe){oe===!0?u!==!0&&(so<1&&document.body.classList.add("q-body--dialog"),so++,u=!0):u===!0&&(so<2&&document.body.classList.remove("q-body--dialog"),so--,u=!1)}function fe(oe){d!==!0&&(V(oe),n("click",oe))}function L(oe){e.persistent!==!0&&e.noBackdropDismiss!==!0?V(oe):e.noShake!==!0&&A()}function ue(oe){e.allowFocusOutside!==!0&&F.value===!0&&Fh(i.value,oe.target)!==!0&&Y('[tabindex]:not([tabindex="-1"])')}Object.assign(r.proxy,{focus:Y,shake:A,__updateRefocusTarget(oe){c=oe||null}}),We(_e);function Re(){return E("div",{role:"dialog","aria-modal":$.value===!0?"true":"false",...o,class:H.value},[E(cn,{name:"q-transition--fade",appear:!0},()=>$.value===!0?E("div",{class:"q-dialog__backdrop fixed-full",style:m.value,"aria-hidden":"true",tabindex:-1,onClick:L}):null),E(cn,M.value,()=>s.value===!0?E("div",{ref:i,class:x.value,style:m.value,tabindex:-1,...v.value},tt(t.default)):null)])}return j}});const Wt={dark:{type:Boolean,default:null}};function Qt(e,t){return R(()=>e.dark===null?t.dark.isActive:e.dark)}var Bg=$e({name:"QCard",props:{...Wt,tag:{type:String,default:"div"},square:Boolean,flat:Boolean,bordered:Boolean},setup(e,{slots:t}){const{proxy:{$q:n}}=ke(),o=Qt(e,n),r=R(()=>"q-card"+(o.value===!0?" q-card--dark q-dark":"")+(e.bordered===!0?" q-card--bordered":"")+(e.square===!0?" q-card--square no-border-radius":"")+(e.flat===!0?" q-card--flat no-shadow":""));return()=>E(e.tag,{class:r.value},tt(t.default))}}),En=$e({name:"QCardSection",props:{tag:{type:String,default:"div"},horizontal:Boolean},setup(e,{slots:t}){const n=R(()=>`q-card__section q-card__section--${e.horizontal===!0?"horiz row no-wrap":"vert"}`);return()=>E(e.tag,{class:n.value},tt(t.default))}}),Fg=$e({name:"QCardActions",props:{...Aa,vertical:Boolean},setup(e,{slots:t}){const n=Ma(e),o=R(()=>`q-card__actions ${n.value} q-card__actions--${e.vertical===!0?"vert column":"horiz row"}`);return()=>E("div",{class:o.value},tt(t.default))}});const Ig={true:"inset",item:"item-inset","item-thumbnail":"item-thumbnail-inset"},dr={xs:2,sm:4,md:8,lg:16,xl:24};var Ks=$e({name:"QSeparator",props:{...Wt,spaced:[Boolean,String],inset:[Boolean,String],vertical:Boolean,color:String,size:String},setup(e){const t=ke(),n=Qt(e,t.proxy.$q),o=R(()=>e.vertical===!0?"vertical":"horizontal"),r=R(()=>` q-separator--${o.value}`),i=R(()=>e.inset!==!1?`${r.value}-${Ig[e.inset]}`:""),s=R(()=>`q-separator${r.value}${i.value}`+(e.color!==void 0?` bg-${e.color}`:"")+(n.value===!0?" q-separator--dark":"")),l=R(()=>{const a={};if(e.size!==void 0&&(a[e.vertical===!0?"width":"height"]=e.size),e.spaced!==!1){const c=e.spaced===!0?`${dr.md}px`:e.spaced in dr?`${dr[e.spaced]}px`:e.spaced,u=e.vertical===!0?["Left","Right"]:["Top","Bottom"];a[`margin${u[0]}`]=a[`margin${u[1]}`]=c}return a});return()=>E("hr",{class:s.value,style:l.value,"aria-orientation":o.value})}});function Ng({validate:e,resetValidation:t,requiresQForm:n}){const o=ut(id,!1);if(o!==!1){const{props:r,proxy:i}=ke();Object.assign(i,{validate:e,resetValidation:t}),be(()=>r.disable,s=>{s===!0?(typeof t=="function"&&t(),o.unbindComponent(i)):o.bindComponent(i)}),Ut(()=>{r.disable!==!0&&o.bindComponent(i)}),We(()=>{r.disable!==!0&&o.unbindComponent(i)})}else n===!0&&console.error("Parent QForm not found on useFormChild()!")}const Us=/^#[0-9a-fA-F]{3}([0-9a-fA-F]{3})?$/,Ws=/^#[0-9a-fA-F]{4}([0-9a-fA-F]{4})?$/,Qs=/^#([0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$/,lo=/^rgb\(((0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),){2}(0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5])\)$/,ao=/^rgba\(((0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),){2}(0|[1-9][\d]?|1[\d]{0,2}|2[\d]?|2[0-4][\d]|25[0-5]),(0|0\.[0-9]+[1-9]|0\.[1-9]+|1)\)$/,hr={date:e=>/^-?[\d]+\/[0-1]\d\/[0-3]\d$/.test(e),time:e=>/^([0-1]?\d|2[0-3]):[0-5]\d$/.test(e),fulltime:e=>/^([0-1]?\d|2[0-3]):[0-5]\d:[0-5]\d$/.test(e),timeOrFulltime:e=>/^([0-1]?\d|2[0-3]):[0-5]\d(:[0-5]\d)?$/.test(e),email:e=>/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e),hexColor:e=>Us.test(e),hexaColor:e=>Ws.test(e),hexOrHexaColor:e=>Qs.test(e),rgbColor:e=>lo.test(e),rgbaColor:e=>ao.test(e),rgbOrRgbaColor:e=>lo.test(e)||ao.test(e),hexOrRgbColor:e=>Us.test(e)||lo.test(e),hexaOrRgbaColor:e=>Ws.test(e)||ao.test(e),anyColor:e=>Qs.test(e)||lo.test(e)||ao.test(e)},jg=[!0,!1,"ondemand"],Vg={modelValue:{},error:{type:Boolean,default:null},errorMessage:String,noErrorIcon:Boolean,rules:Array,reactiveRules:Boolean,lazyRules:{type:[Boolean,String],validator:e=>jg.includes(e)}};function Dg(e,t){const{props:n,proxy:o}=ke(),r=he(!1),i=he(null),s=he(null);Ng({validate:y,resetValidation:p});let l=0,a;const c=R(()=>n.rules!==void 0&&n.rules!==null&&n.rules.length!==0),u=R(()=>n.disable!==!0&&c.value===!0),d=R(()=>n.error===!0||r.value===!0),f=R(()=>typeof n.errorMessage=="string"&&n.errorMessage.length!==0?n.errorMessage:i.value);be(()=>n.modelValue,()=>{T()}),be(()=>n.reactiveRules,M=>{M===!0?a===void 0&&(a=be(()=>n.rules,()=>{T(!0)})):a!==void 0&&(a(),a=void 0)},{immediate:!0}),be(e,M=>{M===!0?s.value===null&&(s.value=!1):s.value===!1&&(s.value=!0,u.value===!0&&n.lazyRules!=="ondemand"&&t.value===!1&&q())});function p(){l++,t.value=!1,s.value=null,r.value=!1,i.value=null,q.cancel()}function y(M=n.modelValue){if(u.value!==!0)return!0;const m=++l,_=t.value!==!0?()=>{s.value=!0}:()=>{},w=(j,V)=>{j===!0&&_(),r.value=j,i.value=V||null,t.value=!1},F=[];for(let j=0;j{if(j===void 0||Array.isArray(j)===!1||j.length===0)return m===l&&w(!1),!0;const V=j.find(N=>N===!1||typeof N=="string");return m===l&&w(V!==void 0,V),V===void 0},j=>(m===l&&(console.error(j),w(!0)),!1)))}function T(M){u.value===!0&&n.lazyRules!=="ondemand"&&(s.value===!0||n.lazyRules!==!0&&M!==!0)&&q()}const q=ua(y,0);return We(()=>{a!==void 0&&a(),q.cancel()}),Object.assign(o,{resetValidation:p,validate:y}),bn(o,"hasError",()=>d.value),{isDirtyModel:s,hasRules:c,hasError:d,errorMessage:f,validate:y,resetValidation:p}}const Ys=/^on[A-Z]/;function Hg(e,t){const n={listeners:he({}),attributes:he({})};function o(){const r={},i={};for(const s in e)s!=="class"&&s!=="style"&&Ys.test(s)===!1&&(r[s]=e[s]);for(const s in t.props)Ys.test(s)===!0&&(i[s]=t.props[s]);n.attributes.value=r,n.listeners.value=i}return Fl(o),o(),n}let gr,uo=0;const Te=new Array(256);for(let e=0;e<256;e++)Te[e]=(e+256).toString(16).substring(1);const zg=(()=>{const e=typeof crypto!="undefined"?crypto:typeof window!="undefined"?window.crypto||window.msCrypto:void 0;if(e!==void 0){if(e.randomBytes!==void 0)return e.randomBytes;if(e.getRandomValues!==void 0)return t=>{const n=new Uint8Array(t);return e.getRandomValues(n),n}}return t=>{const n=[];for(let o=t;o>0;o--)n.push(Math.floor(Math.random()*256));return n}})(),Zs=4096;function Kg(){(gr===void 0||uo+16>Zs)&&(uo=0,gr=zg(Zs));const e=Array.prototype.slice.call(gr,uo,uo+=16);return e[6]=e[6]&15|64,e[8]=e[8]&63|128,Te[e[0]]+Te[e[1]]+Te[e[2]]+Te[e[3]]+"-"+Te[e[4]]+Te[e[5]]+"-"+Te[e[6]]+Te[e[7]]+"-"+Te[e[8]]+Te[e[9]]+"-"+Te[e[10]]+Te[e[11]]+Te[e[12]]+Te[e[13]]+Te[e[14]]+Te[e[15]]}function Nr(e){return e===void 0?`f_${Kg()}`:e}function jr(e){return e!=null&&(""+e).length!==0}const Ug={...Wt,...Vg,label:String,stackLabel:Boolean,hint:String,hideHint:Boolean,prefix:String,suffix:String,labelColor:String,color:String,bgColor:String,filled:Boolean,outlined:Boolean,borderless:Boolean,standout:[Boolean,String],square:Boolean,loading:Boolean,labelSlot:Boolean,bottomSlots:Boolean,hideBottomSpace:Boolean,rounded:Boolean,dense:Boolean,itemAligned:Boolean,counter:Boolean,clearable:Boolean,clearIcon:String,disable:Boolean,readonly:Boolean,autofocus:Boolean,for:String,maxlength:[Number,String]},Wg=["update:modelValue","clear","focus","blur","popupShow","popupHide"];function Qg(){const{props:e,attrs:t,proxy:n,vnode:o}=ke();return{isDark:Qt(e,n.$q),editable:R(()=>e.disable!==!0&&e.readonly!==!0),innerLoading:he(!1),focused:he(!1),hasPopupOpen:!1,splitAttrs:Hg(t,o),targetUid:he(Nr(e.for)),rootRef:he(null),targetRef:he(null),controlRef:he(null)}}function Yg(e){const{props:t,emit:n,slots:o,attrs:r,proxy:i}=ke(),{$q:s}=i;let l=null;e.hasValue===void 0&&(e.hasValue=R(()=>jr(t.modelValue))),e.emitValue===void 0&&(e.emitValue=A=>{n("update:modelValue",A)}),e.controlEvents===void 0&&(e.controlEvents={onFocusin:C,onFocusout:x}),Object.assign(e,{clearValue:$,onControlFocusin:C,onControlFocusout:x,focus:V}),e.computedCounter===void 0&&(e.computedCounter=R(()=>{if(t.counter!==!1){const A=typeof t.modelValue=="string"||typeof t.modelValue=="number"?(""+t.modelValue).length:Array.isArray(t.modelValue)===!0?t.modelValue.length:0,W=t.maxlength!==void 0?t.maxlength:t.maxValues;return A+(W!==void 0?" / "+W:"")}}));const{isDirtyModel:a,hasRules:c,hasError:u,errorMessage:d,resetValidation:f}=Dg(e.focused,e.innerLoading),p=e.floatingLabel!==void 0?R(()=>t.stackLabel===!0||e.focused.value===!0||e.floatingLabel.value===!0):R(()=>t.stackLabel===!0||e.focused.value===!0||e.hasValue.value===!0),y=R(()=>t.bottomSlots===!0||t.hint!==void 0||c.value===!0||t.counter===!0||t.error!==null),T=R(()=>t.filled===!0?"filled":t.outlined===!0?"outlined":t.borderless===!0?"borderless":t.standout?"standout":"standard"),q=R(()=>`q-field row no-wrap items-start q-field--${T.value}`+(e.fieldClass!==void 0?` ${e.fieldClass.value}`:"")+(t.rounded===!0?" q-field--rounded":"")+(t.square===!0?" q-field--square":"")+(p.value===!0?" q-field--float":"")+(m.value===!0?" q-field--labeled":"")+(t.dense===!0?" q-field--dense":"")+(t.itemAligned===!0?" q-field--item-aligned q-item-type":"")+(e.isDark.value===!0?" q-field--dark":"")+(e.getControl===void 0?" q-field--auto-height":"")+(e.focused.value===!0?" q-field--focused":"")+(u.value===!0?" q-field--error":"")+(u.value===!0||e.focused.value===!0?" q-field--highlighted":"")+(t.hideBottomSpace!==!0&&y.value===!0?" q-field--with-bottom":"")+(t.disable===!0?" q-field--disabled":t.readonly===!0?" q-field--readonly":"")),M=R(()=>"q-field__control relative-position row no-wrap"+(t.bgColor!==void 0?` bg-${t.bgColor}`:"")+(u.value===!0?" text-negative":typeof t.standout=="string"&&t.standout.length!==0&&e.focused.value===!0?` ${t.standout}`:t.color!==void 0?` text-${t.color}`:"")),m=R(()=>t.labelSlot===!0||t.label!==void 0),_=R(()=>"q-field__label no-pointer-events absolute ellipsis"+(t.labelColor!==void 0&&u.value!==!0?` text-${t.labelColor}`:"")),w=R(()=>({id:e.targetUid.value,editable:e.editable.value,focused:e.focused.value,floatingLabel:p.value,modelValue:t.modelValue,emitValue:e.emitValue})),F=R(()=>{const A={for:e.targetUid.value};return t.disable===!0?A["aria-disabled"]="true":t.readonly===!0&&(A["aria-readonly"]="true"),A});be(()=>t.for,A=>{e.targetUid.value=Nr(A)});function j(){const A=document.activeElement;let W=e.targetRef!==void 0&&e.targetRef.value;W&&(A===null||A.id!==e.targetUid.value)&&(W.hasAttribute("tabindex")===!0||(W=W.querySelector("[tabindex]")),W&&W!==A&&W.focus({preventScroll:!0}))}function V(){mi(j)}function N(){yg(j);const A=document.activeElement;A!==null&&e.rootRef.value.contains(A)&&A.blur()}function C(A){l!==null&&(clearTimeout(l),l=null),e.editable.value===!0&&e.focused.value===!1&&(e.focused.value=!0,n("focus",A))}function x(A,W){l!==null&&clearTimeout(l),l=setTimeout(()=>{l=null,!(document.hasFocus()===!0&&(e.hasPopupOpen===!0||e.controlRef===void 0||e.controlRef.value===null||e.controlRef.value.contains(document.activeElement)!==!1))&&(e.focused.value===!0&&(e.focused.value=!1,n("blur",A)),W!==void 0&&W())})}function $(A){Ke(A),s.platform.is.mobile!==!0?(e.targetRef!==void 0&&e.targetRef.value||e.rootRef.value).focus():e.rootRef.value.contains(document.activeElement)===!0&&document.activeElement.blur(),t.type==="file"&&(e.inputRef.value.value=null),n("update:modelValue",null),n("clear",t.modelValue),je(()=>{f(),s.platform.is.mobile!==!0&&(a.value=!1)})}function v(){const A=[];return o.prepend!==void 0&&A.push(E("div",{class:"q-field__prepend q-field__marginal row no-wrap items-center",key:"prepend",onClick:Et},o.prepend())),A.push(E("div",{class:"q-field__control-container col relative-position row no-wrap q-anchor--skip"},H())),u.value===!0&&t.noErrorIcon===!1&&A.push(Z("error",[E(pt,{name:s.iconSet.field.error,color:"negative"})])),t.loading===!0||e.innerLoading.value===!0?A.push(Z("inner-loading-append",o.loading!==void 0?o.loading():[E(Un,{color:t.color})])):t.clearable===!0&&e.hasValue.value===!0&&e.editable.value===!0&&A.push(Z("inner-clearable-append",[E(pt,{class:"q-field__focusable-action",tag:"button",name:t.clearIcon||s.iconSet.field.clear,tabindex:0,type:"button","aria-hidden":null,role:null,onClick:$})])),o.append!==void 0&&A.push(E("div",{class:"q-field__append q-field__marginal row no-wrap items-center",key:"append",onClick:Et},o.append())),e.getInnerAppend!==void 0&&A.push(Z("inner-append",e.getInnerAppend())),e.getControlChild!==void 0&&A.push(e.getControlChild()),A}function H(){const A=[];return t.prefix!==void 0&&t.prefix!==null&&A.push(E("div",{class:"q-field__prefix no-pointer-events row items-center"},t.prefix)),e.getShadowControl!==void 0&&e.hasShadow.value===!0&&A.push(e.getShadowControl()),e.getControl!==void 0?A.push(e.getControl()):o.rawControl!==void 0?A.push(o.rawControl()):o.control!==void 0&&A.push(E("div",{ref:e.targetRef,class:"q-field__native row",tabindex:-1,...e.splitAttrs.attributes.value,"data-autofocus":t.autofocus===!0||void 0},o.control(w.value))),m.value===!0&&A.push(E("div",{class:_.value},tt(o.label,t.label))),t.suffix!==void 0&&t.suffix!==null&&A.push(E("div",{class:"q-field__suffix no-pointer-events row items-center"},t.suffix)),A.concat(tt(o.default))}function k(){let A,W;u.value===!0?d.value!==null?(A=[E("div",{role:"alert"},d.value)],W=`q--slot-error-${d.value}`):(A=tt(o.error),W="q--slot-error"):(t.hideHint!==!0||e.focused.value===!0)&&(t.hint!==void 0?(A=[E("div",t.hint)],W=`q--slot-hint-${t.hint}`):(A=tt(o.hint),W="q--slot-hint"));const _e=t.counter===!0||o.counter!==void 0;if(t.hideBottomSpace===!0&&_e===!1&&A===void 0)return;const se=E("div",{key:W,class:"q-field__messages col"},A);return E("div",{class:"q-field__bottom row items-start q-field__bottom--"+(t.hideBottomSpace!==!0?"animated":"stale"),onClick:Et},[t.hideBottomSpace===!0?se:E(cn,{name:"q-transition--field-message"},()=>se),_e===!0?E("div",{class:"q-field__counter"},o.counter!==void 0?o.counter():e.computedCounter.value):null])}function Z(A,W){return W===null?null:E("div",{key:A,class:"q-field__append q-field__marginal row no-wrap items-center q-anchor--skip"},W)}let Y=!1;return Fo(()=>{Y=!0}),Ll(()=>{Y===!0&&t.autofocus===!0&&i.focus()}),Ut(()=>{qt.value===!0&&t.for===void 0&&(e.targetUid.value=Nr()),t.autofocus===!0&&i.focus()}),We(()=>{l!==null&&clearTimeout(l)}),Object.assign(i,{focus:V,blur:N}),function(){const W=e.getControl===void 0&&o.control===void 0?{...e.splitAttrs.attributes.value,"data-autofocus":t.autofocus===!0||void 0,...F.value}:F.value;return E("label",{ref:e.rootRef,class:[q.value,r.class],style:r.style,...W},[o.before!==void 0?E("div",{class:"q-field__before q-field__marginal row no-wrap items-center",onClick:Et},o.before()):null,E("div",{class:"q-field__inner relative-position col self-stretch"},[E("div",{ref:e.controlRef,class:M.value,tabindex:-1,...e.controlEvents},v()),y.value===!0?k():null]),o.after!==void 0?E("div",{class:"q-field__after q-field__marginal row no-wrap items-center",onClick:Et},o.after()):null])}}const Js={date:"####/##/##",datetime:"####/##/## ##:##",time:"##:##",fulltime:"##:##:##",phone:"(###) ### - ####",card:"#### #### #### ####"},Po={"#":{pattern:"[\\d]",negate:"[^\\d]"},S:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]"},N:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]"},A:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]",transform:e=>e.toLocaleUpperCase()},a:{pattern:"[a-zA-Z]",negate:"[^a-zA-Z]",transform:e=>e.toLocaleLowerCase()},X:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]",transform:e=>e.toLocaleUpperCase()},x:{pattern:"[0-9a-zA-Z]",negate:"[^0-9a-zA-Z]",transform:e=>e.toLocaleLowerCase()}},Za=Object.keys(Po);Za.forEach(e=>{Po[e].regex=new RegExp(Po[e].pattern)});const Zg=new RegExp("\\\\([^.*+?^${}()|([\\]])|([.*+?^${}()|[\\]])|(["+Za.join("")+"])|(.)","g"),Xs=/[.*+?^${}()|[\]\\]/g,Se=String.fromCharCode(1),Jg={mask:String,reverseFillMask:Boolean,fillMask:[Boolean,String],unmaskedValue:Boolean};function Xg(e,t,n,o){let r,i,s,l,a,c;const u=he(null),d=he(p());function f(){return e.autogrow===!0||["textarea","text","search","url","tel","password"].includes(e.type)}be(()=>e.type+e.autogrow,T),be(()=>e.mask,C=>{if(C!==void 0)q(d.value,!0);else{const x=V(d.value);T(),e.modelValue!==x&&t("update:modelValue",x)}}),be(()=>e.fillMask+e.reverseFillMask,()=>{u.value===!0&&q(d.value,!0)}),be(()=>e.unmaskedValue,()=>{u.value===!0&&q(d.value)});function p(){if(T(),u.value===!0){const C=F(V(e.modelValue));return e.fillMask!==!1?N(C):C}return e.modelValue}function y(C){if(C-1){for(let H=C-$.length;H>0;H--)x+=Se;$=$.slice(0,v)+x+$.slice(v)}return $}function T(){if(u.value=e.mask!==void 0&&e.mask.length!==0&&f(),u.value===!1){l=void 0,r="",i="";return}const C=Js[e.mask]===void 0?e.mask:Js[e.mask],x=typeof e.fillMask=="string"&&e.fillMask.length!==0?e.fillMask.slice(0,1):"_",$=x.replace(Xs,"\\$&"),v=[],H=[],k=[];let Z=e.reverseFillMask===!0,Y="",A="";C.replace(Zg,(fe,L,ue,Re,oe)=>{if(Re!==void 0){const ne=Po[Re];k.push(ne),A=ne.negate,Z===!0&&(H.push("(?:"+A+"+)?("+ne.pattern+"+)?(?:"+A+"+)?("+ne.pattern+"+)?"),Z=!1),H.push("(?:"+A+"+)?("+ne.pattern+")?")}else if(ue!==void 0)Y="\\"+(ue==="\\"?"":ue),k.push(ue),v.push("([^"+Y+"]+)?"+Y+"?");else{const ne=L!==void 0?L:oe;Y=ne==="\\"?"\\\\\\\\":ne.replace(Xs,"\\\\$&"),k.push(ne),v.push("([^"+Y+"]+)?"+Y+"?")}});const W=new RegExp("^"+v.join("")+"("+(Y===""?".":"[^"+Y+"]")+"+)?"+(Y===""?"":"["+Y+"]*")+"$"),_e=H.length-1,se=H.map((fe,L)=>L===0&&e.reverseFillMask===!0?new RegExp("^"+$+"*"+fe):L===_e?new RegExp("^"+fe+"("+(A===""?".":A)+"+)?"+(e.reverseFillMask===!0?"$":$+"*")):new RegExp("^"+fe));s=k,l=fe=>{const L=W.exec(e.reverseFillMask===!0?fe:fe.slice(0,k.length+1));L!==null&&(fe=L.slice(1).join(""));const ue=[],Re=se.length;for(let oe=0,ne=fe;oetypeof fe=="string"?fe:Se).join(""),i=r.split(Se).join(x)}function q(C,x,$){const v=o.value,H=v.selectionEnd,k=v.value.length-H,Z=V(C);x===!0&&T();const Y=F(Z),A=e.fillMask!==!1?N(Y):Y,W=d.value!==A;v.value!==A&&(v.value=A),W===!0&&(d.value=A),document.activeElement===v&&je(()=>{if(A===i){const se=e.reverseFillMask===!0?i.length:0;v.setSelectionRange(se,se,"forward");return}if($==="insertFromPaste"&&e.reverseFillMask!==!0){const se=v.selectionEnd;let fe=H-1;for(let L=a;L<=fe&&L-1){const se=e.reverseFillMask===!0?H===0?A.length>Y.length?1:0:Math.max(0,A.length-(A===i?0:Math.min(Y.length,k)+1))+1:H;v.setSelectionRange(se,se,"forward");return}if(e.reverseFillMask===!0)if(W===!0){const se=Math.max(0,A.length-(A===i?0:Math.min(Y.length,k+1)));se===1&&H===1?v.setSelectionRange(se,se,"forward"):m.rightReverse(v,se)}else{const se=A.length-k;v.setSelectionRange(se,se,"backward")}else if(W===!0){const se=Math.max(0,r.indexOf(Se),Math.min(Y.length,H)-1);m.right(v,se)}else{const se=H-1;m.right(v,se)}});const _e=e.unmaskedValue===!0?V(A):A;String(e.modelValue)!==_e&&n(_e,!0)}function M(C,x,$){const v=F(V(C.value));x=Math.max(0,r.indexOf(Se),Math.min(v.length,x)),a=x,C.setSelectionRange(x,$,"forward")}const m={left(C,x){const $=r.slice(x-1).indexOf(Se)===-1;let v=Math.max(0,x-1);for(;v>=0;v--)if(r[v]===Se){x=v,$===!0&&x++;break}if(v<0&&r[x]!==void 0&&r[x]!==Se)return m.right(C,0);x>=0&&C.setSelectionRange(x,x,"backward")},right(C,x){const $=C.value.length;let v=Math.min($,x+1);for(;v<=$;v++)if(r[v]===Se){x=v;break}else r[v-1]===Se&&(x=v);if(v>$&&r[x-1]!==void 0&&r[x-1]!==Se)return m.left(C,$);C.setSelectionRange(x,x,"forward")},leftReverse(C,x){const $=y(C.value.length);let v=Math.max(0,x-1);for(;v>=0;v--)if($[v-1]===Se){x=v;break}else if($[v]===Se&&(x=v,v===0))break;if(v<0&&$[x]!==void 0&&$[x]!==Se)return m.rightReverse(C,0);x>=0&&C.setSelectionRange(x,x,"backward")},rightReverse(C,x){const $=C.value.length,v=y($),H=v.slice(0,x+1).indexOf(Se)===-1;let k=Math.min($,x+1);for(;k<=$;k++)if(v[k-1]===Se){x=k,x>0&&H===!0&&x--;break}if(k>$&&v[x-1]!==void 0&&v[x-1]!==Se)return m.leftReverse(C,$);C.setSelectionRange(x,x,"forward")}};function _(C){t("click",C),c=void 0}function w(C){if(t("keydown",C),da(C)===!0||C.altKey===!0)return;const x=o.value,$=x.selectionStart,v=x.selectionEnd;if(C.shiftKey||(c=void 0),C.keyCode===37||C.keyCode===39){C.shiftKey&&c===void 0&&(c=x.selectionDirection==="forward"?$:v);const H=m[(C.keyCode===39?"right":"left")+(e.reverseFillMask===!0?"Reverse":"")];if(C.preventDefault(),H(x,c===$?v:$),C.shiftKey){const k=x.selectionStart;x.setSelectionRange(Math.min(c,k),Math.max(c,k),"forward")}}else C.keyCode===8&&e.reverseFillMask!==!0&&$===v?(m.left(x,$),x.setSelectionRange(x.selectionStart,v,"backward")):C.keyCode===46&&e.reverseFillMask===!0&&$===v&&(m.rightReverse(x,v),x.setSelectionRange($,x.selectionEnd,"forward"))}function F(C){if(C==null||C==="")return"";if(e.reverseFillMask===!0)return j(C);const x=s;let $=0,v="";for(let H=0;H=0&&v>-1;k--){const Z=x[k];let Y=C[v];if(typeof Z=="string")H=Z+H,Y===Z&&v--;else if(Y!==void 0&&Z.regex.test(Y))do H=(Z.transform!==void 0?Z.transform(Y):Y)+H,v--,Y=C[v];while($===k&&Y!==void 0&&Z.regex.test(Y));else return H}return H}function V(C){return typeof C!="string"||l===void 0?typeof C=="number"?l(""+C):C:l(C)}function N(C){return i.length-C.length<=0?C:e.reverseFillMask===!0&&C.length!==0?i.slice(0,-C.length)+C:C+i.slice(C.length)}return{innerValue:d,hasMask:u,moveCursorForPaste:M,updateMaskValue:q,onMaskedKeydown:w,onMaskedClick:_}}const pi={name:String};function Ja(e={}){return(t,n,o)=>{t[n](E("input",{class:"hidden"+(o||""),...e.value}))}}function Gg(e){return R(()=>e.name||e.for)}function em(e,t){function n(){const o=e.modelValue;try{const r="DataTransfer"in window?new DataTransfer:"ClipboardEvent"in window?new ClipboardEvent("").clipboardData:void 0;return Object(o)===o&&("length"in o?Array.from(o):[o]).forEach(i=>{r.items.add(i)}),{files:r.files}}catch{return{files:void 0}}}return R(t===!0?()=>{if(e.type==="file")return n()}:n)}const tm=/[\u3000-\u303f\u3040-\u309f\u30a0-\u30ff\uff00-\uff9f\u4e00-\u9faf\u3400-\u4dbf]/,nm=/[\u4e00-\u9fff\u3400-\u4dbf\u{20000}-\u{2a6df}\u{2a700}-\u{2b73f}\u{2b740}-\u{2b81f}\u{2b820}-\u{2ceaf}\uf900-\ufaff\u3300-\u33ff\ufe30-\ufe4f\uf900-\ufaff\u{2f800}-\u{2fa1f}]/u,om=/[\u3131-\u314e\u314f-\u3163\uac00-\ud7a3]/,rm=/[a-z0-9_ -]$/i;function im(e){return function(n){if(n.type==="compositionend"||n.type==="change"){if(n.target.qComposing!==!0)return;n.target.qComposing=!1,e(n)}else n.type==="compositionupdate"&&n.target.qComposing!==!0&&typeof n.data=="string"&&(we.is.firefox===!0?rm.test(n.data)===!1:tm.test(n.data)===!0||nm.test(n.data)===!0||om.test(n.data)===!0)===!0&&(n.target.qComposing=!0)}}var sm=$e({name:"QInput",inheritAttrs:!1,props:{...Ug,...Jg,...pi,modelValue:{required:!1},shadowText:String,type:{type:String,default:"text"},debounce:[String,Number],autogrow:Boolean,inputClass:[Array,String,Object],inputStyle:[Array,String,Object]},emits:[...Wg,"paste","change","keydown","click","animationend"],setup(e,{emit:t,attrs:n}){const{proxy:o}=ke(),{$q:r}=o,i={};let s=NaN,l,a,c=null,u;const d=he(null),f=Gg(e),{innerValue:p,hasMask:y,moveCursorForPaste:T,updateMaskValue:q,onMaskedKeydown:M,onMaskedClick:m}=Xg(e,t,Y,d),_=em(e,!0),w=R(()=>jr(p.value)),F=im(k),j=Qg(),V=R(()=>e.type==="textarea"||e.autogrow===!0),N=R(()=>V.value===!0||["text","search","url","tel","password"].includes(e.type)),C=R(()=>{const L={...j.splitAttrs.listeners.value,onInput:k,onPaste:H,onChange:W,onBlur:_e,onFocus:ko};return L.onCompositionstart=L.onCompositionupdate=L.onCompositionend=F,y.value===!0&&(L.onKeydown=M,L.onClick=m),e.autogrow===!0&&(L.onAnimationend=Z),L}),x=R(()=>{const L={tabindex:0,"data-autofocus":e.autofocus===!0||void 0,rows:e.type==="textarea"?6:void 0,"aria-label":e.label,name:f.value,...j.splitAttrs.attributes.value,id:j.targetUid.value,maxlength:e.maxlength,disabled:e.disable===!0,readonly:e.readonly===!0};return V.value===!1&&(L.type=e.type),e.autogrow===!0&&(L.rows=1),L});be(()=>e.type,()=>{d.value&&(d.value.value=e.modelValue)}),be(()=>e.modelValue,L=>{if(y.value===!0){if(a===!0&&(a=!1,String(L)===s))return;q(L)}else p.value!==L&&(p.value=L,e.type==="number"&&i.hasOwnProperty("value")===!0&&(l===!0?l=!1:delete i.value));e.autogrow===!0&&je(A)}),be(()=>e.autogrow,L=>{L===!0?je(A):d.value!==null&&n.rows>0&&(d.value.style.height="auto")}),be(()=>e.dense,()=>{e.autogrow===!0&&je(A)});function $(){mi(()=>{const L=document.activeElement;d.value!==null&&d.value!==L&&(L===null||L.id!==j.targetUid.value)&&d.value.focus({preventScroll:!0})})}function v(){d.value!==null&&d.value.select()}function H(L){if(y.value===!0&&e.reverseFillMask!==!0){const ue=L.target;T(ue,ue.selectionStart,ue.selectionEnd)}t("paste",L)}function k(L){if(!L||!L.target)return;if(e.type==="file"){t("update:modelValue",L.target.files);return}const ue=L.target.value;if(L.target.qComposing===!0){i.value=ue;return}if(y.value===!0)q(ue,!1,L.inputType);else if(Y(ue),N.value===!0&&L.target===document.activeElement){const{selectionStart:Re,selectionEnd:oe}=L.target;Re!==void 0&&oe!==void 0&&je(()=>{L.target===document.activeElement&&ue.indexOf(L.target.value)===0&&L.target.setSelectionRange(Re,oe)})}e.autogrow===!0&&A()}function Z(L){t("animationend",L),A()}function Y(L,ue){u=()=>{c=null,e.type!=="number"&&i.hasOwnProperty("value")===!0&&delete i.value,e.modelValue!==L&&s!==L&&(s=L,ue===!0&&(a=!0),t("update:modelValue",L),je(()=>{s===L&&(s=NaN)})),u=void 0},e.type==="number"&&(l=!0,i.value=L),e.debounce!==void 0?(c!==null&&clearTimeout(c),i.value=L,c=setTimeout(u,e.debounce)):u()}function A(){requestAnimationFrame(()=>{const L=d.value;if(L!==null){const ue=L.parentNode.style,{scrollTop:Re}=L,{overflowY:oe,maxHeight:ne}=r.platform.is.firefox===!0?{}:window.getComputedStyle(L),S=oe!==void 0&&oe!=="scroll";S===!0&&(L.style.overflowY="hidden"),ue.marginBottom=L.scrollHeight-1+"px",L.style.height="1px",L.style.height=L.scrollHeight+"px",S===!0&&(L.style.overflowY=parseInt(ne,10){d.value!==null&&(d.value.value=p.value!==void 0?p.value:"")})}function se(){return i.hasOwnProperty("value")===!0?i.value:p.value!==void 0?p.value:""}We(()=>{_e()}),Ut(()=>{e.autogrow===!0&&A()}),Object.assign(j,{innerValue:p,fieldClass:R(()=>`q-${V.value===!0?"textarea":"input"}`+(e.autogrow===!0?" q-textarea--autogrow":"")),hasShadow:R(()=>e.type!=="file"&&typeof e.shadowText=="string"&&e.shadowText.length!==0),inputRef:d,emitValue:Y,hasValue:w,floatingLabel:R(()=>w.value===!0&&(e.type!=="number"||isNaN(p.value)===!1)||jr(e.displayValue)),getControl:()=>E(V.value===!0?"textarea":"input",{ref:d,class:["q-field__native q-placeholder",e.inputClass],style:e.inputStyle,...x.value,...C.value,...e.type!=="file"?{value:se()}:_.value}),getShadowControl:()=>E("div",{class:"q-field__native q-field__shadow absolute-bottom no-pointer-events"+(V.value===!0?"":" text-no-wrap")},[E("span",{class:"invisible"},se()),E("span",e.shadowText)])});const fe=Yg(j);return Object.assign(o,{focus:$,select:v,getNativeElement:()=>d.value}),bn(o,"nativeEl",()=>d.value),fe}});function Xa(e,t){const n=he(null),o=R(()=>e.disable===!0?null:E("span",{ref:n,class:"no-outline",tabindex:-1}));function r(i){const s=t.value;i!==void 0&&i.type.indexOf("key")===0?s!==null&&document.activeElement!==s&&s.contains(document.activeElement)===!0&&s.focus():n.value!==null&&(i===void 0||s!==null&&s.contains(i.target)===!0)&&n.value.focus()}return{refocusTargetEl:o,refocusTarget:r}}var Ga={xs:30,sm:35,md:40,lg:50,xl:60};const lm=E("svg",{key:"svg",class:"q-radio__bg absolute non-selectable",viewBox:"0 0 24 24"},[E("path",{d:"M12,22a10,10 0 0 1 -10,-10a10,10 0 0 1 10,-10a10,10 0 0 1 10,10a10,10 0 0 1 -10,10m0,-22a12,12 0 0 0 -12,12a12,12 0 0 0 12,12a12,12 0 0 0 12,-12a12,12 0 0 0 -12,-12"}),E("path",{class:"q-radio__check",d:"M12,6a6,6 0 0 0 -6,6a6,6 0 0 0 6,6a6,6 0 0 0 6,-6a6,6 0 0 0 -6,-6"})]);var am=$e({name:"QRadio",props:{...Wt,...Yn,...pi,modelValue:{required:!0},val:{required:!0},label:String,leftLabel:Boolean,checkedIcon:String,uncheckedIcon:String,color:String,keepColor:Boolean,dense:Boolean,disable:Boolean,tabindex:[String,Number]},emits:["update:modelValue"],setup(e,{slots:t,emit:n}){const{proxy:o}=ke(),r=Qt(e,o.$q),i=Zn(e,Ga),s=he(null),{refocusTargetEl:l,refocusTarget:a}=Xa(e,s),c=R(()=>ie(e.modelValue)===ie(e.val)),u=R(()=>"q-radio cursor-pointer no-outline row inline no-wrap items-center"+(e.disable===!0?" disabled":"")+(r.value===!0?" q-radio--dark":"")+(e.dense===!0?" q-radio--dense":"")+(e.leftLabel===!0?" reverse":"")),d=R(()=>{const _=e.color!==void 0&&(e.keepColor===!0||c.value===!0)?` text-${e.color}`:"";return`q-radio__inner relative-position q-radio__inner--${c.value===!0?"truthy":"falsy"}${_}`}),f=R(()=>(c.value===!0?e.checkedIcon:e.uncheckedIcon)||null),p=R(()=>e.disable===!0?-1:e.tabindex||0),y=R(()=>{const _={type:"radio"};return e.name!==void 0&&Object.assign(_,{".checked":c.value===!0,"^checked":c.value===!0?"checked":void 0,name:e.name,value:e.val}),_}),T=Ja(y);function q(_){_!==void 0&&(Ke(_),a(_)),e.disable!==!0&&c.value!==!0&&n("update:modelValue",e.val,_)}function M(_){(_.keyCode===13||_.keyCode===32)&&Ke(_)}function m(_){(_.keyCode===13||_.keyCode===32)&&q(_)}return Object.assign(o,{set:q}),()=>{const _=f.value!==null?[E("div",{key:"icon",class:"q-radio__icon-container absolute-full flex flex-center no-wrap"},[E(pt,{class:"q-radio__icon",name:f.value})])]:[lm];e.disable!==!0&&T(_,"unshift"," q-radio__native q-ma-none q-pa-none");const w=[E("div",{class:d.value,style:i.value,"aria-hidden":"true"},_)];l.value!==null&&w.push(l.value);const F=e.label!==void 0?It(t.default,[e.label]):tt(t.default);return F!==void 0&&w.push(E("div",{class:"q-radio__label q-anchor--skip"},F)),E("div",{ref:s,class:u.value,tabindex:p.value,role:"radio","aria-label":e.label,"aria-checked":c.value===!0?"true":"false","aria-disabled":e.disable===!0?"true":void 0,onClick:q,onKeydown:M,onKeyup:m},w)}}});const eu={...Wt,...Yn,...pi,modelValue:{required:!0,default:null},val:{},trueValue:{default:!0},falseValue:{default:!1},indeterminateValue:{default:null},checkedIcon:String,uncheckedIcon:String,indeterminateIcon:String,toggleOrder:{type:String,validator:e=>e==="tf"||e==="ft"},toggleIndeterminate:Boolean,label:String,leftLabel:Boolean,color:String,keepColor:Boolean,dense:Boolean,disable:Boolean,tabindex:[String,Number]},tu=["update:modelValue"];function nu(e,t){const{props:n,slots:o,emit:r,proxy:i}=ke(),{$q:s}=i,l=Qt(n,s),a=he(null),{refocusTargetEl:c,refocusTarget:u}=Xa(n,a),d=Zn(n,Ga),f=R(()=>n.val!==void 0&&Array.isArray(n.modelValue)),p=R(()=>{const v=ie(n.val);return f.value===!0?n.modelValue.findIndex(H=>ie(H)===v):-1}),y=R(()=>f.value===!0?p.value>-1:ie(n.modelValue)===ie(n.trueValue)),T=R(()=>f.value===!0?p.value===-1:ie(n.modelValue)===ie(n.falseValue)),q=R(()=>y.value===!1&&T.value===!1),M=R(()=>n.disable===!0?-1:n.tabindex||0),m=R(()=>`q-${e} cursor-pointer no-outline row inline no-wrap items-center`+(n.disable===!0?" disabled":"")+(l.value===!0?` q-${e}--dark`:"")+(n.dense===!0?` q-${e}--dense`:"")+(n.leftLabel===!0?" reverse":"")),_=R(()=>{const v=y.value===!0?"truthy":T.value===!0?"falsy":"indet",H=n.color!==void 0&&(n.keepColor===!0||(e==="toggle"?y.value===!0:T.value!==!0))?` text-${n.color}`:"";return`q-${e}__inner relative-position non-selectable q-${e}__inner--${v}${H}`}),w=R(()=>{const v={type:"checkbox"};return n.name!==void 0&&Object.assign(v,{".checked":y.value,"^checked":y.value===!0?"checked":void 0,name:n.name,value:f.value===!0?n.val:n.trueValue}),v}),F=Ja(w),j=R(()=>{const v={tabindex:M.value,role:e==="toggle"?"switch":"checkbox","aria-label":n.label,"aria-checked":q.value===!0?"mixed":y.value===!0?"true":"false"};return n.disable===!0&&(v["aria-disabled"]="true"),v});function V(v){v!==void 0&&(Ke(v),u(v)),n.disable!==!0&&r("update:modelValue",N(),v)}function N(){if(f.value===!0){if(y.value===!0){const v=n.modelValue.slice();return v.splice(p.value,1),v}return n.modelValue.concat([n.val])}if(y.value===!0){if(n.toggleOrder!=="ft"||n.toggleIndeterminate===!1)return n.falseValue}else if(T.value===!0){if(n.toggleOrder==="ft"||n.toggleIndeterminate===!1)return n.trueValue}else return n.toggleOrder!=="ft"?n.trueValue:n.falseValue;return n.indeterminateValue}function C(v){(v.keyCode===13||v.keyCode===32)&&Ke(v)}function x(v){(v.keyCode===13||v.keyCode===32)&&V(v)}const $=t(y,q);return Object.assign(i,{toggle:V}),()=>{const v=$();n.disable!==!0&&F(v,"unshift",` q-${e}__native absolute q-ma-none q-pa-none`);const H=[E("div",{class:_.value,style:d.value,"aria-hidden":"true"},v)];c.value!==null&&H.push(c.value);const k=n.label!==void 0?It(o.default,[n.label]):tt(o.default);return k!==void 0&&H.push(E("div",{class:`q-${e}__label q-anchor--skip`},k)),E("div",{ref:a,class:m.value,...j.value,onClick:V,onKeydown:C,onKeyup:x},H)}}const um=E("div",{key:"svg",class:"q-checkbox__bg absolute"},[E("svg",{class:"q-checkbox__svg fit absolute-full",viewBox:"0 0 24 24"},[E("path",{class:"q-checkbox__truthy",fill:"none",d:"M1.73,12.91 8.1,19.28 22.79,4.59"}),E("path",{class:"q-checkbox__indet",d:"M4,14H20V10H4"})])]);var cm=$e({name:"QCheckbox",props:eu,emits:tu,setup(e){function t(n,o){const r=R(()=>(n.value===!0?e.checkedIcon:o.value===!0?e.indeterminateIcon:e.uncheckedIcon)||null);return()=>r.value!==null?[E("div",{key:"icon",class:"q-checkbox__icon-container absolute-full flex flex-center no-wrap"},[E(pt,{class:"q-checkbox__icon",name:r.value})])]:[um]}return nu("checkbox",t)}}),fm=$e({name:"QToggle",props:{...eu,icon:String,iconColor:String},emits:tu,setup(e){function t(n,o){const r=R(()=>(n.value===!0?e.checkedIcon:o.value===!0?e.indeterminateIcon:e.uncheckedIcon)||e.icon),i=R(()=>n.value===!0?e.iconColor:null);return()=>[E("div",{class:"q-toggle__track"}),E("div",{class:"q-toggle__thumb absolute flex flex-center no-wrap"},r.value!==void 0?[E(pt,{name:r.value,color:i.value})]:void 0)]}return nu("toggle",t)}});const ou={radio:am,checkbox:cm,toggle:fm},dm=Object.keys(ou);var hm=$e({name:"QOptionGroup",props:{...Wt,modelValue:{required:!0},options:{type:Array,validator:e=>e.every(t=>"value"in t&&"label"in t)},name:String,type:{default:"radio",validator:e=>dm.includes(e)},color:String,keepColor:Boolean,dense:Boolean,size:String,leftLabel:Boolean,inline:Boolean,disable:Boolean},emits:["update:modelValue"],setup(e,{emit:t,slots:n}){const{proxy:{$q:o}}=ke(),r=Array.isArray(e.modelValue);e.type==="radio"?r===!0&&console.error("q-option-group: model should not be array"):r===!1&&console.error("q-option-group: model should be array in your case");const i=Qt(e,o),s=R(()=>ou[e.type]),l=R(()=>"q-option-group q-gutter-x-sm"+(e.inline===!0?" q-option-group--inline":"")),a=R(()=>{const u={role:"group"};return e.type==="radio"&&(u.role="radiogroup",e.disable===!0&&(u["aria-disabled"]="true")),u});function c(u){t("update:modelValue",u)}return()=>E("div",{class:l.value,...a.value},e.options.map((u,d)=>{const f=n["label-"+d]!==void 0?()=>n["label-"+d](u):n.label!==void 0?()=>n.label(u):void 0;return E("div",[E(s.value,{modelValue:e.modelValue,val:u.value,name:u.name===void 0?e.name:u.name,disable:e.disable||u.disable,label:f===void 0?u.label:null,leftLabel:u.leftLabel===void 0?e.leftLabel:u.leftLabel,color:u.color===void 0?e.color:u.color,checkedIcon:u.checkedIcon,uncheckedIcon:u.uncheckedIcon,dark:u.dark||i.value,size:u.size===void 0?e.size:u.size,dense:e.dense,keepColor:u.keepColor===void 0?e.keepColor:u.keepColor,"onUpdate:modelValue":c},f)])}))}}),gm=$e({name:"DialogPlugin",props:{...Wt,title:String,message:String,prompt:Object,options:Object,progress:[Boolean,Object],html:Boolean,ok:{type:[String,Object,Boolean],default:!0},cancel:[String,Object,Boolean],focus:{type:String,default:"ok",validator:e=>["ok","cancel","none"].includes(e)},stackButtons:Boolean,color:String,cardClass:[String,Array,Object],cardStyle:[String,Array,Object]},emits:["ok","hide"],setup(e,{emit:t}){const{proxy:n}=ke(),{$q:o}=n,r=Qt(e,o),i=he(null),s=he(e.prompt!==void 0?e.prompt.model:e.options!==void 0?e.options.model:void 0),l=R(()=>"q-dialog-plugin"+(r.value===!0?" q-dialog-plugin--dark q-dark":"")+(e.progress!==!1?" q-dialog-plugin--progress":"")),a=R(()=>e.color||(r.value===!0?"amber":"primary")),c=R(()=>e.progress===!1?null:at(e.progress)===!0?{component:e.progress.spinner||Un,props:{color:e.progress.color||a.value}}:{component:Un,props:{color:a.value}}),u=R(()=>e.prompt!==void 0||e.options!==void 0),d=R(()=>{if(u.value!==!0)return{};const{model:k,isValid:Z,items:Y,...A}=e.prompt!==void 0?e.prompt:e.options;return A}),f=R(()=>at(e.ok)===!0||e.ok===!0?o.lang.label.ok:e.ok),p=R(()=>at(e.cancel)===!0||e.cancel===!0?o.lang.label.cancel:e.cancel),y=R(()=>e.prompt!==void 0?e.prompt.isValid!==void 0&&e.prompt.isValid(s.value)!==!0:e.options!==void 0?e.options.isValid!==void 0&&e.options.isValid(s.value)!==!0:!1),T=R(()=>({color:a.value,label:f.value,ripple:!1,disable:y.value,...at(e.ok)===!0?e.ok:{flat:!0},"data-autofocus":e.focus==="ok"&&u.value!==!0||void 0,onClick:_})),q=R(()=>({color:a.value,label:p.value,ripple:!1,...at(e.cancel)===!0?e.cancel:{flat:!0},"data-autofocus":e.focus==="cancel"&&u.value!==!0||void 0,onClick:w}));be(()=>e.prompt&&e.prompt.model,j),be(()=>e.options&&e.options.model,j);function M(){i.value.show()}function m(){i.value.hide()}function _(){t("ok",ie(s.value)),m()}function w(){m()}function F(){t("hide")}function j(k){s.value=k}function V(k){y.value!==!0&&e.prompt.type!=="textarea"&&zn(k,13)===!0&&_()}function N(k,Z){return e.html===!0?E(En,{class:k,innerHTML:Z}):E(En,{class:k},()=>Z)}function C(){return[E(sm,{color:a.value,dense:!0,autofocus:!0,dark:r.value,...d.value,modelValue:s.value,"onUpdate:modelValue":j,onKeyup:V})]}function x(){return[E(hm,{color:a.value,options:e.options.items,dark:r.value,...d.value,modelValue:s.value,"onUpdate:modelValue":j})]}function $(){const k=[];return e.cancel&&k.push(E(Br,q.value)),e.ok&&k.push(E(Br,T.value)),E(Fg,{class:e.stackButtons===!0?"items-end":"",vertical:e.stackButtons,align:"right"},()=>k)}function v(){const k=[];return e.title&&k.push(N("q-dialog__title",e.title)),e.progress!==!1&&k.push(E(En,{class:"q-dialog__progress"},()=>E(c.value.component,c.value.props))),e.message&&k.push(N("q-dialog__message",e.message)),e.prompt!==void 0?k.push(E(En,{class:"scroll q-dialog-plugin__form"},C)):e.options!==void 0&&k.push(E(Ks,{dark:r.value}),E(En,{class:"scroll q-dialog-plugin__form"},x),E(Ks,{dark:r.value})),(e.ok||e.cancel)&&k.push($()),k}function H(){return[E(Bg,{class:[l.value,e.cardClass],style:e.cardStyle,dark:r.value},v)]}return Object.assign(n,{show:M,hide:m}),()=>E(Lg,{ref:i,onHide:F},H)}});function ru(e,t){for(const n in t)n!=="spinner"&&Object(t[n])===t[n]?(e[n]=Object(e[n])!==e[n]?{}:{...e[n]},ru(e[n],t[n])):e[n]=t[n]}function mm(e,t,n){return o=>{let r,i;const s=t===!0&&o.component!==void 0;if(s===!0){const{component:m,componentProps:_}=o;r=typeof m=="string"?n.component(m):m,i=_||{}}else{const{class:m,style:_,...w}=o;r=e,i=w,m!==void 0&&(w.cardClass=m),_!==void 0&&(w.cardStyle=_)}let l,a=!1;const c=he(null),u=hi(!1,"dialog"),d=m=>{if(c.value!==null&&c.value[m]!==void 0){c.value[m]();return}const _=l.$.subTree;if(_&&_.component){if(_.component.proxy&&_.component.proxy[m]){_.component.proxy[m]();return}if(_.component.subTree&&_.component.subTree.component&&_.component.subTree.component.proxy&&_.component.subTree.component.proxy[m]){_.component.subTree.component.proxy[m]();return}}console.error("[Quasar] Incorrectly defined Dialog component")},f=[],p=[],y={onOk(m){return f.push(m),y},onCancel(m){return p.push(m),y},onDismiss(m){return f.push(m),p.push(m),y},hide(){return d("hide"),y},update(m){if(l!==null){if(s===!0)Object.assign(i,m);else{const{class:_,style:w,...F}=m;_!==void 0&&(F.cardClass=_),w!==void 0&&(F.cardStyle=w),ru(i,F)}l.$forceUpdate()}return y}},T=m=>{a=!0,f.forEach(_=>{_(m)})},q=()=>{M.unmount(u),Fa(u),M=null,l=null,a!==!0&&p.forEach(m=>{m()})};let M=ma({name:"QGlobalDialog",setup:()=>()=>E(r,{...i,ref:c,onOk:T,onHide:q,onVnodeMounted(...m){typeof i.onVnodeMounted=="function"&&i.onVnodeMounted(...m),je(()=>d("show"))}})},n);return l=M.mount(u),y}}var pm={install({$q:e,parentApp:t}){e.dialog=mm(gm,!0,t),this.__installed!==!0&&(this.create=e.dialog)}},vm={config:{staticPath:"/nostrmarket/static/market/"},plugins:{Notify:ig,LocalStorage:Da,Dialog:pm}};async function bm({app:e,router:t}){e.use(t),e.mount("#q-app")}Ch(la,vm).then(bm);export{zn as $,Km as A,pn as B,ii as C,It as D,Lo as E,xc as F,Wl as G,Yl as H,sc as I,Fe as J,kh as K,we as L,Pt as M,Rm as N,Kf as O,Tr as P,Pm as Q,Et as R,ko as S,Hf as T,Uf as U,Ke as V,Vm as W,Be as X,za as Y,Ka as Z,dd as _,Wt as a,cm as a$,vo as a0,pg as a1,dg as a2,vg as a3,xg as a4,cn as a5,Yn as a6,Zn as a7,pt as a8,Eh as a9,jm as aA,rd as aB,Am as aC,da as aD,nr as aE,Ug as aF,Wg as aG,Yg as aH,Qg as aI,pi as aJ,Gg as aK,jr as aL,Fl as aM,ri as aN,im as aO,Lg as aP,_m as aQ,Cm as aR,Oh as aS,Jl as aT,ym as aU,Qc as aV,Xe as aW,En as aX,Ks as aY,km as aZ,sm as a_,Nh as aa,ua as ab,vc as ac,Fo as ad,Ll as ae,$h as af,Lh as ag,Un as ah,zh as ai,Kh as aj,$m as ak,Og as al,Hs as am,Ds as an,_g as ao,Mg as ap,mi as aq,Fh as ar,Zh as as,Kg as at,Im as au,Br as av,Aa as aw,Ma as ax,Fm as ay,Nm as az,gg as b,Em as b0,wm as b1,Bg as b2,zm as b3,Hm as b4,La as b5,id as b6,Fg as b7,hm as b8,Dm as b9,Bm as ba,xm as bb,ml as bc,Sm as bd,$a as be,qr as bf,Om as bg,Wr as bh,Ur as bi,Vt as bj,$e as c,Qt as d,fg as e,Mm as f,R as g,mg as h,ut as i,cg as j,We as k,Tm as l,Al as m,je as n,Ut as o,E as p,Lm as q,he as r,tt as s,ke as t,hg as u,Pg as v,be as w,fo as x,qm as y,qt as z}; diff --git a/static/market/assets/index.de281aed.css b/static/market/assets/index.73d462e5.css similarity index 100% rename from static/market/assets/index.de281aed.css rename to static/market/assets/index.73d462e5.css diff --git a/static/market/index.html b/static/market/index.html index ae74553..42661e7 100644 --- a/static/market/index.html +++ b/static/market/index.html @@ -16,8 +16,8 @@ - - + + diff --git a/templates/nostrmarket/market.html b/templates/nostrmarket/market.html index 553c2e1..ffb7ab2 100644 --- a/templates/nostrmarket/market.html +++ b/templates/nostrmarket/market.html @@ -25,8 +25,8 @@ - + src="{{ url_for('nostrmarket_static', path='market/assets/index.70852868.js')}}"> +