From 7f9dd1f162a99da4c57175ca65d2fa6d8a60814c Mon Sep 17 00:00:00 2001 From: keoinn Date: Thu, 3 Oct 2024 13:45:07 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20@=20keoinn/s?= =?UTF-8?q?morrery-webapp@ef31ba081394df8306b22d229b6d7c6d01f95279=20?= =?UTF-8?q?=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- assets/VBtn-Yx2iuiGX.css | 1 + assets/VBtn-nTHrG9ot.js | 1 + assets/default-AzRlkVpy.css | 1 + assets/default-B2aGEmKt.js | 1 + assets/default-UyMn9SWA.js | 1 - assets/default-y6g5o1_w.css | 1 - .../{index-CdApKlwa.js => index-CFgTnFr_.js} | 340 +++++++++--------- assets/index-CKSWw2Ya.css | 1 + .../{index-DVsZ779A.js => index-DA-NTYk_.js} | 4 +- index.html | 2 +- 10 files changed, 178 insertions(+), 175 deletions(-) create mode 100644 assets/VBtn-Yx2iuiGX.css create mode 100644 assets/VBtn-nTHrG9ot.js create mode 100644 assets/default-AzRlkVpy.css create mode 100644 assets/default-B2aGEmKt.js delete mode 100644 assets/default-UyMn9SWA.js delete mode 100644 assets/default-y6g5o1_w.css rename assets/{index-CdApKlwa.js => index-CFgTnFr_.js} (79%) create mode 100644 assets/index-CKSWw2Ya.css rename assets/{index-DVsZ779A.js => index-DA-NTYk_.js} (98%) diff --git a/assets/VBtn-Yx2iuiGX.css b/assets/VBtn-Yx2iuiGX.css new file mode 100644 index 0000000..ef891d2 --- /dev/null +++ b/assets/VBtn-Yx2iuiGX.css @@ -0,0 +1 @@ +.v-icon{--v-icon-size-multiplier: 1;align-items:center;display:inline-flex;font-feature-settings:"liga";height:1em;justify-content:center;letter-spacing:normal;line-height:1;position:relative;text-indent:0;text-align:center;-webkit-user-select:none;user-select:none;vertical-align:middle;width:1em;min-width:1em}.v-icon--clickable{cursor:pointer}.v-icon--disabled{pointer-events:none;opacity:.38}.v-icon--size-x-small{font-size:calc(var(--v-icon-size-multiplier) * 1em)}.v-icon--size-small{font-size:calc(var(--v-icon-size-multiplier) * 1.25em)}.v-icon--size-default{font-size:calc(var(--v-icon-size-multiplier) * 1.5em)}.v-icon--size-large{font-size:calc(var(--v-icon-size-multiplier) * 1.75em)}.v-icon--size-x-large{font-size:calc(var(--v-icon-size-multiplier) * 2em)}.v-icon__svg{fill:currentColor;width:100%;height:100%}.v-icon--start{margin-inline-end:8px}.v-icon--end{margin-inline-start:8px}.v-ripple__container{color:inherit;border-radius:inherit;position:absolute;width:100%;height:100%;left:0;top:0;overflow:hidden;z-index:0;pointer-events:none;contain:strict}.v-ripple__animation{color:inherit;position:absolute;top:0;left:0;border-radius:50%;background:currentColor;opacity:0;pointer-events:none;overflow:hidden;will-change:transform,opacity}.v-ripple__animation--enter{transition:none;opacity:0}.v-ripple__animation--in{transition:transform .25s cubic-bezier(0,0,.2,1),opacity .1s cubic-bezier(0,0,.2,1);opacity:calc(.25 * var(--v-theme-overlay-multiplier))}.v-ripple__animation--out{transition:opacity .3s cubic-bezier(0,0,.2,1);opacity:0}.v-btn{align-items:center;border-radius:4px;display:inline-grid;grid-template-areas:"prepend content append";grid-template-columns:max-content auto max-content;font-weight:500;justify-content:center;letter-spacing:.0892857143em;line-height:normal;max-width:100%;outline:none;position:relative;text-decoration:none;text-indent:.0892857143em;text-transform:uppercase;transition-property:box-shadow,transform,opacity,background;transition-duration:.28s;transition-timing-function:cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none;vertical-align:middle;flex-shrink:0}.v-btn--size-x-small{--v-btn-size: .625rem;--v-btn-height: 20px;font-size:var(--v-btn-size);min-width:36px;padding:0 8px}.v-btn--size-small{--v-btn-size: .75rem;--v-btn-height: 28px;font-size:var(--v-btn-size);min-width:50px;padding:0 12px}.v-btn--size-default{--v-btn-size: .875rem;--v-btn-height: 36px;font-size:var(--v-btn-size);min-width:64px;padding:0 16px}.v-btn--size-large{--v-btn-size: 1rem;--v-btn-height: 44px;font-size:var(--v-btn-size);min-width:78px;padding:0 20px}.v-btn--size-x-large{--v-btn-size: 1.125rem;--v-btn-height: 52px;font-size:var(--v-btn-size);min-width:92px;padding:0 24px}.v-btn.v-btn--density-default{height:calc(var(--v-btn-height) + 0px)}.v-btn.v-btn--density-comfortable{height:calc(var(--v-btn-height) + -8px)}.v-btn.v-btn--density-compact{height:calc(var(--v-btn-height) + -12px)}.v-btn{border-color:rgba(var(--v-border-color),var(--v-border-opacity));border-style:solid;border-width:0}.v-btn--border{border-width:thin;box-shadow:none}.v-btn--absolute{position:absolute}.v-btn--fixed{position:fixed}.v-btn:hover>.v-btn__overlay{opacity:calc(var(--v-hover-opacity) * var(--v-theme-overlay-multiplier))}.v-btn:focus-visible>.v-btn__overlay{opacity:calc(var(--v-focus-opacity) * var(--v-theme-overlay-multiplier))}@supports not selector(:focus-visible){.v-btn:focus>.v-btn__overlay{opacity:calc(var(--v-focus-opacity) * var(--v-theme-overlay-multiplier))}}.v-btn--active>.v-btn__overlay,.v-btn[aria-haspopup=menu][aria-expanded=true]>.v-btn__overlay{opacity:calc(var(--v-activated-opacity) * var(--v-theme-overlay-multiplier))}.v-btn--active:hover>.v-btn__overlay,.v-btn[aria-haspopup=menu][aria-expanded=true]:hover>.v-btn__overlay{opacity:calc((var(--v-activated-opacity) + var(--v-hover-opacity)) * var(--v-theme-overlay-multiplier))}.v-btn--active:focus-visible>.v-btn__overlay,.v-btn[aria-haspopup=menu][aria-expanded=true]:focus-visible>.v-btn__overlay{opacity:calc((var(--v-activated-opacity) + var(--v-focus-opacity)) * var(--v-theme-overlay-multiplier))}@supports not selector(:focus-visible){.v-btn--active:focus>.v-btn__overlay,.v-btn[aria-haspopup=menu][aria-expanded=true]:focus>.v-btn__overlay{opacity:calc((var(--v-activated-opacity) + var(--v-focus-opacity)) * var(--v-theme-overlay-multiplier))}}.v-btn--variant-plain,.v-btn--variant-outlined,.v-btn--variant-text,.v-btn--variant-tonal{background:transparent;color:inherit}.v-btn--variant-plain{opacity:.62}.v-btn--variant-plain:focus,.v-btn--variant-plain:hover{opacity:1}.v-btn--variant-plain .v-btn__overlay{display:none}.v-btn--variant-elevated,.v-btn--variant-flat{background:rgb(var(--v-theme-surface));color:rgba(var(--v-theme-on-surface),var(--v-high-emphasis-opacity))}.v-btn--variant-elevated{box-shadow:0 3px 1px -2px var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 2px 2px 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 1px 5px 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-btn--variant-flat{box-shadow:0 0 0 0 var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 0 0 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 0 0 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-btn--variant-outlined{border:thin solid currentColor}.v-btn--variant-text .v-btn__overlay{background:currentColor}.v-btn--variant-tonal .v-btn__underlay{background:currentColor;opacity:var(--v-activated-opacity);border-radius:inherit;top:0;right:0;bottom:0;left:0;pointer-events:none}.v-btn .v-btn__underlay{position:absolute}@supports selector(:focus-visible){.v-btn:after{pointer-events:none;border:2px solid currentColor;border-radius:inherit;opacity:0;transition:opacity .2s ease-in-out}.v-btn:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%}.v-btn:focus-visible:after{opacity:calc(.25 * var(--v-theme-overlay-multiplier))}}.v-btn--icon{border-radius:50%;min-width:0;padding:0}.v-btn--icon.v-btn--size-default{--v-btn-size: 1rem}.v-btn--icon.v-btn--density-default{width:calc(var(--v-btn-height) + 12px);height:calc(var(--v-btn-height) + 12px)}.v-btn--icon.v-btn--density-comfortable{width:calc(var(--v-btn-height) + 0px);height:calc(var(--v-btn-height) + 0px)}.v-btn--icon.v-btn--density-compact{width:calc(var(--v-btn-height) + -8px);height:calc(var(--v-btn-height) + -8px)}.v-btn--elevated:hover,.v-btn--elevated:focus{box-shadow:0 2px 4px -1px var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 4px 5px 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 1px 10px 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-btn--elevated:active{box-shadow:0 5px 5px -3px var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 8px 10px 1px var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 3px 14px 2px var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-btn--flat{box-shadow:none}.v-btn--block{display:flex;flex:1 0 auto;min-width:100%}.v-btn--disabled{pointer-events:none;opacity:.26}.v-btn--disabled:hover{opacity:.26}.v-btn--disabled.v-btn--variant-elevated,.v-btn--disabled.v-btn--variant-flat{box-shadow:none;opacity:1;color:rgba(var(--v-theme-on-surface),.26);background:rgb(var(--v-theme-surface))}.v-btn--disabled.v-btn--variant-elevated .v-btn__overlay,.v-btn--disabled.v-btn--variant-flat .v-btn__overlay{opacity:.4615384615}.v-btn--loading{pointer-events:none}.v-btn--loading .v-btn__content,.v-btn--loading .v-btn__prepend,.v-btn--loading .v-btn__append{opacity:0}.v-btn--stacked{grid-template-areas:"prepend" "content" "append";grid-template-columns:auto;grid-template-rows:max-content max-content max-content;justify-items:center;align-content:center}.v-btn--stacked .v-btn__content{flex-direction:column;line-height:1.25}.v-btn--stacked .v-btn__prepend,.v-btn--stacked .v-btn__append,.v-btn--stacked .v-btn__content>.v-icon--start,.v-btn--stacked .v-btn__content>.v-icon--end{margin-inline:0}.v-btn--stacked .v-btn__prepend,.v-btn--stacked .v-btn__content>.v-icon--start{margin-bottom:4px}.v-btn--stacked .v-btn__append,.v-btn--stacked .v-btn__content>.v-icon--end{margin-top:4px}.v-btn--stacked.v-btn--size-x-small{--v-btn-size: .625rem;--v-btn-height: 56px;font-size:var(--v-btn-size);min-width:56px;padding:0 12px}.v-btn--stacked.v-btn--size-small{--v-btn-size: .75rem;--v-btn-height: 64px;font-size:var(--v-btn-size);min-width:64px;padding:0 14px}.v-btn--stacked.v-btn--size-default{--v-btn-size: .875rem;--v-btn-height: 72px;font-size:var(--v-btn-size);min-width:72px;padding:0 16px}.v-btn--stacked.v-btn--size-large{--v-btn-size: 1rem;--v-btn-height: 80px;font-size:var(--v-btn-size);min-width:80px;padding:0 18px}.v-btn--stacked.v-btn--size-x-large{--v-btn-size: 1.125rem;--v-btn-height: 88px;font-size:var(--v-btn-size);min-width:88px;padding:0 20px}.v-btn--stacked.v-btn--density-default{height:calc(var(--v-btn-height) + 0px)}.v-btn--stacked.v-btn--density-comfortable{height:calc(var(--v-btn-height) + -16px)}.v-btn--stacked.v-btn--density-compact{height:calc(var(--v-btn-height) + -24px)}.v-btn--slim{padding:0 8px}.v-btn--readonly{pointer-events:none}.v-btn--rounded{border-radius:24px}.v-btn--rounded.v-btn--icon{border-radius:4px}.v-btn .v-icon{--v-icon-size-multiplier: .8571428571}.v-btn--icon .v-icon{--v-icon-size-multiplier: 1}.v-btn--stacked .v-icon{--v-icon-size-multiplier: 1.1428571429}.v-btn--stacked.v-btn--block{min-width:100%}.v-btn__loader{align-items:center;display:flex;height:100%;justify-content:center;left:0;position:absolute;top:0;width:100%}.v-btn__loader>.v-progress-circular{width:1.5em;height:1.5em}.v-btn__content,.v-btn__prepend,.v-btn__append{align-items:center;display:flex;transition:transform,opacity .2s cubic-bezier(.4,0,.2,1)}.v-btn__prepend{grid-area:prepend;margin-inline:calc(var(--v-btn-height) / -9) calc(var(--v-btn-height) / 4.5)}.v-btn--slim .v-btn__prepend{margin-inline-start:0}.v-btn__append{grid-area:append;margin-inline:calc(var(--v-btn-height) / 4.5) calc(var(--v-btn-height) / -9)}.v-btn--slim .v-btn__append{margin-inline-end:0}.v-btn__content{grid-area:content;justify-content:center;white-space:nowrap}.v-btn__content>.v-icon--start{margin-inline:calc(var(--v-btn-height) / -9) calc(var(--v-btn-height) / 4.5)}.v-btn__content>.v-icon--end{margin-inline:calc(var(--v-btn-height) / 4.5) calc(var(--v-btn-height) / -9)}.v-btn--stacked .v-btn__content{white-space:normal}.v-btn__overlay{background-color:currentColor;border-radius:inherit;opacity:0;transition:opacity .2s ease-in-out}.v-btn__overlay,.v-btn__underlay{pointer-events:none}.v-btn__overlay,.v-btn__underlay{position:absolute;top:0;left:0;width:100%;height:100%}.v-pagination .v-btn{border-radius:4px}.v-pagination .v-btn--rounded{border-radius:50%}.v-btn__overlay{transition:none}.v-pagination__item--is-active .v-btn__overlay{opacity:var(--v-border-opacity)}.v-btn-toggle>.v-btn.v-btn--active:not(.v-btn--disabled)>.v-btn__overlay{opacity:calc(var(--v-activated-opacity) * var(--v-theme-overlay-multiplier))}.v-btn-toggle>.v-btn.v-btn--active:not(.v-btn--disabled):hover>.v-btn__overlay{opacity:calc((var(--v-activated-opacity) + var(--v-hover-opacity)) * var(--v-theme-overlay-multiplier))}.v-btn-toggle>.v-btn.v-btn--active:not(.v-btn--disabled):focus-visible>.v-btn__overlay{opacity:calc((var(--v-activated-opacity) + var(--v-focus-opacity)) * var(--v-theme-overlay-multiplier))}@supports not selector(:focus-visible){.v-btn-toggle>.v-btn.v-btn--active:not(.v-btn--disabled):focus>.v-btn__overlay{opacity:calc((var(--v-activated-opacity) + var(--v-focus-opacity)) * var(--v-theme-overlay-multiplier))}}.v-btn-group{display:inline-flex;flex-wrap:nowrap;max-width:100%;min-width:0;overflow:hidden;vertical-align:middle}.v-btn-group{border-color:rgba(var(--v-border-color),var(--v-border-opacity));border-style:solid;border-width:0}.v-btn-group--border{border-width:thin;box-shadow:none}.v-btn-group{box-shadow:0 0 0 0 var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 0 0 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 0 0 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-btn-group{border-radius:4px}.v-btn-group{background:transparent;color:rgba(var(--v-theme-on-surface),var(--v-high-emphasis-opacity))}.v-btn-group--density-default.v-btn-group{height:48px}.v-btn-group--density-comfortable.v-btn-group{height:40px}.v-btn-group--density-compact.v-btn-group{height:36px}.v-btn-group .v-btn{border-radius:0;border-color:inherit}.v-btn-group .v-btn:not(:last-child){border-inline-end:none}.v-btn-group .v-btn:not(:first-child){border-inline-start:none}.v-btn-group .v-btn:first-child{border-start-start-radius:inherit;border-end-start-radius:inherit}.v-btn-group .v-btn:last-child{border-start-end-radius:inherit;border-end-end-radius:inherit}.v-btn-group--divided .v-btn:not(:last-child){border-inline-end-width:thin;border-inline-end-style:solid;border-inline-end-color:rgba(var(--v-border-color),var(--v-border-opacity))}.v-btn-group--tile{border-radius:0}.v-progress-circular{align-items:center;display:inline-flex;justify-content:center;position:relative;vertical-align:middle}.v-progress-circular>svg{width:100%;height:100%;margin:auto;position:absolute;top:0;bottom:0;left:0;right:0;z-index:0}.v-progress-circular__content{align-items:center;display:flex;justify-content:center}.v-progress-circular__underlay{color:rgba(var(--v-border-color),var(--v-border-opacity));stroke:currentColor;z-index:1}.v-progress-circular__overlay{stroke:currentColor;transition:all .2s ease-in-out,stroke-width 0s;z-index:2}.v-progress-circular--size-x-small{height:16px;width:16px}.v-progress-circular--size-small{height:24px;width:24px}.v-progress-circular--size-default{height:32px;width:32px}.v-progress-circular--size-large{height:48px;width:48px}.v-progress-circular--size-x-large{height:64px;width:64px}.v-progress-circular--indeterminate>svg{animation:progress-circular-rotate 1.4s linear infinite;transform-origin:center center;transition:all .2s ease-in-out}.v-progress-circular--indeterminate .v-progress-circular__overlay{animation:progress-circular-dash 1.4s ease-in-out infinite,progress-circular-rotate 1.4s linear infinite;stroke-dasharray:25,200;stroke-dashoffset:0;stroke-linecap:round;transform-origin:center center;transform:rotate(-90deg)}.v-progress-circular--disable-shrink>svg{animation-duration:.7s}.v-progress-circular--disable-shrink .v-progress-circular__overlay{animation:none}.v-progress-circular--indeterminate:not(.v-progress-circular--visible)>svg,.v-progress-circular--indeterminate:not(.v-progress-circular--visible) .v-progress-circular__overlay{animation-play-state:paused!important}@keyframes progress-circular-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0px}50%{stroke-dasharray:100,200;stroke-dashoffset:-15px}to{stroke-dasharray:100,200;stroke-dashoffset:-124px}}@keyframes progress-circular-rotate{to{transform:rotate(270deg)}} diff --git a/assets/VBtn-nTHrG9ot.js b/assets/VBtn-nTHrG9ot.js new file mode 100644 index 0000000..6893f6c --- /dev/null +++ b/assets/VBtn-nTHrG9ot.js @@ -0,0 +1 @@ +import{ab as K,p as y,f as R,ac as qe,r as H,ad as Fe,q as W,U as G,M as Ue,ae as P,b as v,af as E,ag as be,ah as ue,ai as Ye,aj as Xe,ak as Ke,e as x,P as J,t as M,g as B,u as j,al as Je,v as _,am as Qe,an as Ze,x as g,ao as et,$ as ye,F as tt,ap as Q,aq as nt,ar as ce,d as Z,_ as Ce,as as at,at as de,l as st,j as pe,i as it,L as lt,o as ot,au as rt,K as ut,k as ct,N as ke,s as dt,S as vt,y as ft,a7 as mt,W as gt,Q as ht}from"./index-DA-NTYk_.js";const bt=["top","bottom"],yt=["start","end","left","right"];function Ct(e,t){let[a,n]=e.split(" ");return n||(n=K(bt,a)?"start":K(yt,a)?"top":"center"),{side:ve(a,t),align:ve(n,t)}}function ve(e,t){return e==="start"?t?"right":"left":e==="end"?t?"left":"right":e}const q=y({class:[String,Array,Object],style:{type:[String,Array,Object],default:null}},"component");function $(e){const t=R("useRender");t.render=e}function pt(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"content";const a=qe(),n=H();if(Fe){const s=new ResizeObserver(i=>{e==null||e(i,s),i.length&&(t==="content"?n.value=i[0].contentRect:n.value=i[0].target.getBoundingClientRect())});W(()=>{s.disconnect()}),G(()=>a.el,(i,l)=>{l&&(s.unobserve(l),n.value=void 0),i&&s.observe(i)},{flush:"post"})}return{resizeRef:a,contentRect:Ue(n)}}const Se=y({border:[Boolean,Number,String]},"border");function xe(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:P();return{borderClasses:v(()=>{const n=E(e)?e.value:e.border,s=[];if(n===!0||n==="")s.push(`${t}--border`);else if(typeof n=="string"||n===0)for(const i of String(n).split(" "))s.push(`border-${i}`);return s})}}function ae(e){return be(()=>{const t=[],a={};if(e.value.background)if(ue(e.value.background)){if(a.backgroundColor=e.value.background,!e.value.text&&Ye(e.value.background)){const n=Xe(e.value.background);if(n.a==null||n.a===1){const s=Ke(n);a.color=s,a.caretColor=s}}}else t.push(`bg-${e.value.background}`);return e.value.text&&(ue(e.value.text)?(a.color=e.value.text,a.caretColor=e.value.text):t.push(`text-${e.value.text}`)),{colorClasses:t,colorStyles:a}})}function ee(e,t){const a=v(()=>({text:E(e)?e.value:null})),{colorClasses:n,colorStyles:s}=ae(a);return{textColorClasses:n,textColorStyles:s}}function ln(e,t){const a=v(()=>({background:E(e)?e.value:null})),{colorClasses:n,colorStyles:s}=ae(a);return{backgroundColorClasses:n,backgroundColorStyles:s}}const _e=y({elevation:{type:[Number,String],validator(e){const t=parseInt(e);return!isNaN(t)&&t>=0&&t<=24}}},"elevation");function we(e){return{elevationClasses:v(()=>{const a=E(e)?e.value:e.elevation,n=[];return a==null||n.push(`elevation-${a}`),n})}}const Ie=y({rounded:{type:[Boolean,Number,String],default:void 0},tile:Boolean},"rounded");function Pe(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:P();return{roundedClasses:v(()=>{const n=E(e)?e.value:e.rounded,s=E(e)?e.value:e.tile,i=[];if(n===!0||n==="")i.push(`${t}--rounded`);else if(typeof n=="string"||n===0)for(const l of String(n).split(" "))i.push(`rounded-${l}`);else(s||n===!1)&&i.push("rounded-0");return i})}}const F=y({tag:{type:String,default:"div"}},"tag"),kt=["x-small","small","default","large","x-large"],se=y({size:{type:[String,Number],default:"default"}},"size");function ie(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:P();return be(()=>{let a,n;return K(kt,e.size)?a=`${t}--size-${e.size}`:e.size&&(n={width:x(e.size),height:x(e.size)}),{sizeClasses:a,sizeStyles:n}})}const St=y({color:String,disabled:Boolean,start:Boolean,end:Boolean,icon:J,...q(),...se(),...F({tag:"i"}),...M()},"VIcon"),Y=B()({name:"VIcon",props:St(),setup(e,t){let{attrs:a,slots:n}=t;const s=H(),{themeClasses:i}=j(e),{iconData:l}=Je(v(()=>s.value||e.icon)),{sizeClasses:c}=ie(e),{textColorClasses:d,textColorStyles:b}=ee(_(e,"color"));return $(()=>{var o,u;const C=(o=n.default)==null?void 0:o.call(n);C&&(s.value=(u=Qe(C).filter(f=>f.type===Ze&&f.children&&typeof f.children=="string")[0])==null?void 0:u.children);const h=!!(a.onClick||a.onClickOnce);return g(l.value.component,{tag:e.tag,icon:l.value.icon,class:["v-icon","notranslate",i.value,c.value,d.value,{"v-icon--clickable":h,"v-icon--disabled":e.disabled,"v-icon--start":e.start,"v-icon--end":e.end},e.class],style:[c.value?void 0:{fontSize:x(e.size),height:x(e.size),width:x(e.size)},b.value,e.style],role:h?"button":void 0,"aria-hidden":!h,tabindex:h?e.disabled?-1:0:void 0},{default:()=>[C]})}),{}}}),xt=y({defaults:Object,disabled:Boolean,reset:[Number,String],root:[Boolean,String],scoped:Boolean},"VDefaultsProvider"),X=B(!1)({name:"VDefaultsProvider",props:xt(),setup(e,t){let{slots:a}=t;const{defaults:n,disabled:s,reset:i,root:l,scoped:c}=et(e);return ye(n,{reset:i,root:l,scoped:c,disabled:s}),()=>{var d;return(d=a.default)==null?void 0:d.call(a)}}}),_t=y({height:[Number,String],maxHeight:[Number,String],maxWidth:[Number,String],minHeight:[Number,String],minWidth:[Number,String],width:[Number,String]},"dimension");function wt(e){return{dimensionStyles:v(()=>{const a={},n=x(e.height),s=x(e.maxHeight),i=x(e.maxWidth),l=x(e.minHeight),c=x(e.minWidth),d=x(e.width);return n!=null&&(a.height=n),s!=null&&(a.maxHeight=s),i!=null&&(a.maxWidth=i),l!=null&&(a.minHeight=l),c!=null&&(a.minWidth=c),d!=null&&(a.width=d),a})}}const It=[null,"default","comfortable","compact"],Ee=y({density:{type:String,default:"default",validator:e=>It.includes(e)}},"density");function Be(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:P();return{densityClasses:v(()=>`${t}--density-${e.density}`)}}const Pt=["elevated","flat","tonal","outlined","text","plain"];function Et(e,t){return g(tt,null,[e&&g("span",{key:"overlay",class:`${t}__overlay`},null),g("span",{key:"underlay",class:`${t}__underlay`},null)])}const Le=y({color:String,variant:{type:String,default:"elevated",validator:e=>Pt.includes(e)}},"variant");function Bt(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:P();const a=v(()=>{const{variant:i}=Q(e);return`${t}--variant-${i}`}),{colorClasses:n,colorStyles:s}=ae(v(()=>{const{variant:i,color:l}=Q(e);return{[["elevated","flat"].includes(i)?"background":"text"]:l}}));return{colorClasses:n,colorStyles:s,variantClasses:a}}function Lt(){const e=R("useRoute");return v(()=>{var t;return(t=e==null?void 0:e.proxy)==null?void 0:t.$route})}function on(){var e,t;return(t=(e=R("useRouter"))==null?void 0:e.proxy)==null?void 0:t.$router}function Tt(e,t){var h,o;const a=nt("RouterLink"),n=v(()=>!!(e.href||e.to)),s=v(()=>(n==null?void 0:n.value)||ce(t,"click")||ce(e,"click"));if(typeof a=="string"||!("useLink"in a)){const u=_(e,"href");return{isLink:n,isClickable:s,href:u,linkProps:Z({href:u})}}const i=v(()=>({...e,to:_(()=>e.to||"")})),l=a.useLink(i.value),c=v(()=>e.to?l:void 0),d=Lt(),b=v(()=>{var u,f,r;return c.value?e.exact?d.value?((r=c.value.isExactActive)==null?void 0:r.value)&&Ce(c.value.route.value.query,d.value.query):((f=c.value.isExactActive)==null?void 0:f.value)??!1:((u=c.value.isActive)==null?void 0:u.value)??!1:!1}),C=v(()=>{var u;return e.to?(u=c.value)==null?void 0:u.route.value.href:e.href});return{isLink:n,isClickable:s,isActive:b,route:(h=c.value)==null?void 0:h.route,navigate:(o=c.value)==null?void 0:o.navigate,href:C,linkProps:Z({href:C,"aria-current":v(()=>b.value?"page":void 0)})}}const Vt=y({href:String,replace:Boolean,to:[String,Object],exact:Boolean},"router"),te=Symbol("rippleStop"),Rt=80;function fe(e,t){e.style.transform=t,e.style.webkitTransform=t}function ne(e){return e.constructor.name==="TouchEvent"}function Te(e){return e.constructor.name==="KeyboardEvent"}const $t=function(e,t){var h;let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n=0,s=0;if(!Te(e)){const o=t.getBoundingClientRect(),u=ne(e)?e.touches[e.touches.length-1]:e;n=u.clientX-o.left,s=u.clientY-o.top}let i=0,l=.3;(h=t._ripple)!=null&&h.circle?(l=.15,i=t.clientWidth/2,i=a.center?i:i+Math.sqrt((n-i)**2+(s-i)**2)/4):i=Math.sqrt(t.clientWidth**2+t.clientHeight**2)/2;const c=`${(t.clientWidth-i*2)/2}px`,d=`${(t.clientHeight-i*2)/2}px`,b=a.center?c:`${n-i}px`,C=a.center?d:`${s-i}px`;return{radius:i,scale:l,x:b,y:C,centerX:c,centerY:d}},D={show(e,t){var u;let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(!((u=t==null?void 0:t._ripple)!=null&&u.enabled))return;const n=document.createElement("span"),s=document.createElement("span");n.appendChild(s),n.className="v-ripple__container",a.class&&(n.className+=` ${a.class}`);const{radius:i,scale:l,x:c,y:d,centerX:b,centerY:C}=$t(e,t,a),h=`${i*2}px`;s.className="v-ripple__animation",s.style.width=h,s.style.height=h,t.appendChild(n);const o=window.getComputedStyle(t);o&&o.position==="static"&&(t.style.position="relative",t.dataset.previousPosition="static"),s.classList.add("v-ripple__animation--enter"),s.classList.add("v-ripple__animation--visible"),fe(s,`translate(${c}, ${d}) scale3d(${l},${l},${l})`),s.dataset.activated=String(performance.now()),setTimeout(()=>{s.classList.remove("v-ripple__animation--enter"),s.classList.add("v-ripple__animation--in"),fe(s,`translate(${b}, ${C}) scale3d(1,1,1)`)},0)},hide(e){var i;if(!((i=e==null?void 0:e._ripple)!=null&&i.enabled))return;const t=e.getElementsByClassName("v-ripple__animation");if(t.length===0)return;const a=t[t.length-1];if(a.dataset.isHiding)return;a.dataset.isHiding="true";const n=performance.now()-Number(a.dataset.activated),s=Math.max(250-n,0);setTimeout(()=>{a.classList.remove("v-ripple__animation--in"),a.classList.add("v-ripple__animation--out"),setTimeout(()=>{var c;e.getElementsByClassName("v-ripple__animation").length===1&&e.dataset.previousPosition&&(e.style.position=e.dataset.previousPosition,delete e.dataset.previousPosition),((c=a.parentNode)==null?void 0:c.parentNode)===e&&e.removeChild(a.parentNode)},300)},s)}};function Ve(e){return typeof e>"u"||!!e}function T(e){const t={},a=e.currentTarget;if(!(!(a!=null&&a._ripple)||a._ripple.touched||e[te])){if(e[te]=!0,ne(e))a._ripple.touched=!0,a._ripple.isTouch=!0;else if(a._ripple.isTouch)return;if(t.center=a._ripple.centered||Te(e),a._ripple.class&&(t.class=a._ripple.class),ne(e)){if(a._ripple.showTimerCommit)return;a._ripple.showTimerCommit=()=>{D.show(e,a,t)},a._ripple.showTimer=window.setTimeout(()=>{var n;(n=a==null?void 0:a._ripple)!=null&&n.showTimerCommit&&(a._ripple.showTimerCommit(),a._ripple.showTimerCommit=null)},Rt)}else D.show(e,a,t)}}function me(e){e[te]=!0}function k(e){const t=e.currentTarget;if(t!=null&&t._ripple){if(window.clearTimeout(t._ripple.showTimer),e.type==="touchend"&&t._ripple.showTimerCommit){t._ripple.showTimerCommit(),t._ripple.showTimerCommit=null,t._ripple.showTimer=window.setTimeout(()=>{k(e)});return}window.setTimeout(()=>{t._ripple&&(t._ripple.touched=!1)}),D.hide(t)}}function Re(e){const t=e.currentTarget;t!=null&&t._ripple&&(t._ripple.showTimerCommit&&(t._ripple.showTimerCommit=null),window.clearTimeout(t._ripple.showTimer))}let V=!1;function $e(e){!V&&(e.keyCode===de.enter||e.keyCode===de.space)&&(V=!0,T(e))}function Ne(e){V=!1,k(e)}function ze(e){V&&(V=!1,k(e))}function Ae(e,t,a){const{value:n,modifiers:s}=t,i=Ve(n);if(i||D.hide(e),e._ripple=e._ripple??{},e._ripple.enabled=i,e._ripple.centered=s.center,e._ripple.circle=s.circle,at(n)&&n.class&&(e._ripple.class=n.class),i&&!a){if(s.stop){e.addEventListener("touchstart",me,{passive:!0}),e.addEventListener("mousedown",me);return}e.addEventListener("touchstart",T,{passive:!0}),e.addEventListener("touchend",k,{passive:!0}),e.addEventListener("touchmove",Re,{passive:!0}),e.addEventListener("touchcancel",k),e.addEventListener("mousedown",T),e.addEventListener("mouseup",k),e.addEventListener("mouseleave",k),e.addEventListener("keydown",$e),e.addEventListener("keyup",Ne),e.addEventListener("blur",ze),e.addEventListener("dragstart",k,{passive:!0})}else!i&&a&&Oe(e)}function Oe(e){e.removeEventListener("mousedown",T),e.removeEventListener("touchstart",T),e.removeEventListener("touchend",k),e.removeEventListener("touchmove",Re),e.removeEventListener("touchcancel",k),e.removeEventListener("mouseup",k),e.removeEventListener("mouseleave",k),e.removeEventListener("keydown",$e),e.removeEventListener("keyup",Ne),e.removeEventListener("dragstart",k),e.removeEventListener("blur",ze)}function Nt(e,t){Ae(e,t,!1)}function zt(e){delete e._ripple,Oe(e)}function At(e,t){if(t.value===t.oldValue)return;const a=Ve(t.oldValue);Ae(e,t,a)}const Ot={mounted:Nt,unmounted:zt,updated:At},De=y({baseColor:String,divided:Boolean,...Se(),...q(),...Ee(),..._e(),...Ie(),...F(),...M(),...Le()},"VBtnGroup"),ge=B()({name:"VBtnGroup",props:De(),setup(e,t){let{slots:a}=t;const{themeClasses:n}=j(e),{densityClasses:s}=Be(e),{borderClasses:i}=xe(e),{elevationClasses:l}=we(e),{roundedClasses:c}=Pe(e);ye({VBtn:{height:"auto",baseColor:_(e,"baseColor"),color:_(e,"color"),density:_(e,"density"),flat:!0,variant:_(e,"variant")}}),$(()=>g(e.tag,{class:["v-btn-group",{"v-btn-group--divided":e.divided},n.value,i.value,s.value,l.value,c.value,e.class],style:e.style},a))}}),Dt=y({modelValue:{type:null,default:void 0},multiple:Boolean,mandatory:[Boolean,String],max:Number,selectedClass:String,disabled:Boolean},"group"),Ht=y({value:null,disabled:Boolean,selectedClass:String},"group-item");function Wt(e,t){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;const n=R("useGroupItem");if(!n)throw new Error("[Vuetify] useGroupItem composable must be used inside a component setup function");const s=st();pe(Symbol.for(`${t.description}:id`),s);const i=it(t,null);if(!i){if(!a)return i;throw new Error(`[Vuetify] Could not find useGroup injection with symbol ${t.description}`)}const l=_(e,"value"),c=v(()=>!!(i.disabled.value||e.disabled));i.register({id:s,value:l,disabled:c},n),W(()=>{i.unregister(s)});const d=v(()=>i.isSelected(s)),b=v(()=>i.items.value[0].id===s),C=v(()=>i.items.value[i.items.value.length-1].id===s),h=v(()=>d.value&&[i.selectedClass.value,e.selectedClass]);return G(d,o=>{n.emit("group:selected",{value:o})},{flush:"sync"}),{id:s,isSelected:d,isFirst:b,isLast:C,toggle:()=>i.select(s,!d.value),select:o=>i.select(s,o),selectedClass:h,value:l,disabled:c,group:i}}function Gt(e,t){let a=!1;const n=Z([]),s=lt(e,"modelValue",[],o=>o==null?[]:He(n,ut(o)),o=>{const u=jt(n,o);return e.multiple?u:u[0]}),i=R("useGroup");function l(o,u){const f=o,r=Symbol.for(`${t.description}:id`),p=ct(r,i==null?void 0:i.vnode).indexOf(u);Q(f.value)==null&&(f.value=p,f.useIndexAsValue=!0),p>-1?n.splice(p,0,f):n.push(f)}function c(o){if(a)return;d();const u=n.findIndex(f=>f.id===o);n.splice(u,1)}function d(){const o=n.find(u=>!u.disabled);o&&e.mandatory==="force"&&!s.value.length&&(s.value=[o.id])}ot(()=>{d()}),W(()=>{a=!0}),rt(()=>{for(let o=0;or.id===o);if(!(u&&(f!=null&&f.disabled)))if(e.multiple){const r=s.value.slice(),m=r.findIndex(w=>w===o),p=~m;if(u=u??!p,p&&e.mandatory&&r.length<=1||!p&&e.max!=null&&r.length+1>e.max)return;m<0&&u?r.push(o):m>=0&&!u&&r.splice(m,1),s.value=r}else{const r=s.value.includes(o);if(e.mandatory&&r)return;s.value=u??!r?[o]:[]}}function C(o){if(e.multiple,s.value.length){const u=s.value[0],f=n.findIndex(p=>p.id===u);let r=(f+o)%n.length,m=n[r];for(;m.disabled&&r!==f;)r=(r+o)%n.length,m=n[r];if(m.disabled)return;s.value=[n[r].id]}else{const u=n.find(f=>!f.disabled);u&&(s.value=[u.id])}}const h={register:l,unregister:c,selected:s,select:b,disabled:_(e,"disabled"),prev:()=>C(n.length-1),next:()=>C(1),isSelected:o=>s.value.includes(o),selectedClass:v(()=>e.selectedClass),items:v(()=>n),getItemIndex:o=>Mt(n,o)};return pe(t,h),h}function Mt(e,t){const a=He(e,[t]);return a.length?e.findIndex(n=>n.id===a[0]):-1}function He(e,t){const a=[];return t.forEach(n=>{const s=e.find(l=>Ce(n,l.value)),i=e[n];(s==null?void 0:s.value)!=null?a.push(s.id):i!=null&&a.push(i.id)}),a}function jt(e,t){const a=[];return t.forEach(n=>{const s=e.findIndex(i=>i.id===n);if(~s){const i=e[s];a.push(i.value!=null?i.value:s)}}),a}const We=Symbol.for("vuetify:v-btn-toggle"),qt=y({...De(),...Dt()},"VBtnToggle");B()({name:"VBtnToggle",props:qt(),emits:{"update:modelValue":e=>!0},setup(e,t){let{slots:a}=t;const{isSelected:n,next:s,prev:i,select:l,selected:c}=Gt(e,We);return $(()=>{const d=ge.filterProps(e);return g(ge,ke({class:["v-btn-toggle",e.class]},d,{style:e.style}),{default:()=>{var b;return[(b=a.default)==null?void 0:b.call(a,{isSelected:n,next:s,prev:i,select:l,selected:c})]}})}),{next:s,prev:i,select:l}}});function Ft(e,t){const a=H(),n=dt(!1);if(vt){const s=new IntersectionObserver(i=>{n.value=!!i.find(l=>l.isIntersecting)},t);W(()=>{s.disconnect()}),G(a,(i,l)=>{l&&(s.unobserve(l),n.value=!1),i&&s.observe(i)},{flush:"post"})}return{intersectionRef:a,isIntersecting:n}}const Ut=y({bgColor:String,color:String,indeterminate:[Boolean,String],modelValue:{type:[Number,String],default:0},rotate:{type:[Number,String],default:0},width:{type:[Number,String],default:4},...q(),...se(),...F({tag:"div"}),...M()},"VProgressCircular"),Yt=B()({name:"VProgressCircular",props:Ut(),setup(e,t){let{slots:a}=t;const n=20,s=2*Math.PI*n,i=H(),{themeClasses:l}=j(e),{sizeClasses:c,sizeStyles:d}=ie(e),{textColorClasses:b,textColorStyles:C}=ee(_(e,"color")),{textColorClasses:h,textColorStyles:o}=ee(_(e,"bgColor")),{intersectionRef:u,isIntersecting:f}=Ft(),{resizeRef:r,contentRect:m}=pt(),p=v(()=>Math.max(0,Math.min(100,parseFloat(e.modelValue)))),w=v(()=>Number(e.width)),N=v(()=>d.value?Number(e.size):m.value?m.value.width:Math.max(w.value,32)),L=v(()=>n/(1-w.value/N.value)*2),z=v(()=>w.value/N.value*L.value),U=v(()=>x((100-p.value)/100*s));return ft(()=>{u.value=i.value,r.value=i.value}),$(()=>g(e.tag,{ref:i,class:["v-progress-circular",{"v-progress-circular--indeterminate":!!e.indeterminate,"v-progress-circular--visible":f.value,"v-progress-circular--disable-shrink":e.indeterminate==="disable-shrink"},l.value,c.value,b.value,e.class],style:[d.value,C.value,e.style],role:"progressbar","aria-valuemin":"0","aria-valuemax":"100","aria-valuenow":e.indeterminate?void 0:p.value},{default:()=>[g("svg",{style:{transform:`rotate(calc(-90deg + ${Number(e.rotate)}deg))`},xmlns:"http://www.w3.org/2000/svg",viewBox:`0 0 ${L.value} ${L.value}`},[g("circle",{class:["v-progress-circular__underlay",h.value],style:o.value,fill:"transparent",cx:"50%",cy:"50%",r:n,"stroke-width":z.value,"stroke-dasharray":s,"stroke-dashoffset":0},null),g("circle",{class:"v-progress-circular__overlay",fill:"transparent",cx:"50%",cy:"50%",r:n,"stroke-width":z.value,"stroke-dasharray":s,"stroke-dashoffset":U.value},null)]),a.default&&g("div",{class:"v-progress-circular__content"},[a.default({value:p.value})])]})),{}}}),he={center:"center",top:"bottom",bottom:"top",left:"right",right:"left"},Xt=y({location:String},"location");function Kt(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,a=arguments.length>2?arguments[2]:void 0;const{isRtl:n}=mt();return{locationStyles:v(()=>{if(!e.location)return{};const{side:i,align:l}=Ct(e.location.split(" ").length>1?e.location:`${e.location} center`,n.value);function c(b){return a?a(b):0}const d={};return i!=="center"&&(t?d[he[i]]=`calc(100% - ${c(i)}px)`:d[i]=0),l!=="center"?t?d[he[l]]=`calc(100% - ${c(l)}px)`:d[l]=0:(i==="center"?d.top=d.left="50%":d[{top:"left",bottom:"left",left:"top",right:"top"}[i]]="50%",d.transform={top:"translateX(-50%)",bottom:"translateX(-50%)",left:"translateY(-50%)",right:"translateY(-50%)",center:"translate(-50%, -50%)"}[i]),d})}}const Jt=y({loading:[Boolean,String]},"loader");function Qt(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:P();return{loaderClasses:v(()=>({[`${t}--loading`]:e.loading}))}}const Zt=["static","relative","fixed","absolute","sticky"],en=y({position:{type:String,validator:e=>Zt.includes(e)}},"position");function tn(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:P();return{positionClasses:v(()=>e.position?`${t}--${e.position}`:void 0)}}function nn(e,t){G(()=>{var a;return(a=e.isActive)==null?void 0:a.value},a=>{e.isLink.value&&a&&t&>(()=>{t(!0)})},{immediate:!0})}const an=y({active:{type:Boolean,default:void 0},activeColor:String,baseColor:String,symbol:{type:null,default:We},flat:Boolean,icon:[Boolean,String,Function,Object],prependIcon:J,appendIcon:J,block:Boolean,readonly:Boolean,slim:Boolean,stacked:Boolean,ripple:{type:[Boolean,Object],default:!0},text:String,...Se(),...q(),...Ee(),..._t(),..._e(),...Ht(),...Jt(),...Xt(),...en(),...Ie(),...Vt(),...se(),...F({tag:"button"}),...M(),...Le({variant:"elevated"})},"VBtn"),rn=B()({name:"VBtn",props:an(),emits:{"group:selected":e=>!0},setup(e,t){let{attrs:a,slots:n}=t;const{themeClasses:s}=j(e),{borderClasses:i}=xe(e),{densityClasses:l}=Be(e),{dimensionStyles:c}=wt(e),{elevationClasses:d}=we(e),{loaderClasses:b}=Qt(e),{locationStyles:C}=Kt(e),{positionClasses:h}=tn(e),{roundedClasses:o}=Pe(e),{sizeClasses:u,sizeStyles:f}=ie(e),r=Wt(e,e.symbol,!1),m=Tt(e,a),p=v(()=>{var S;return e.active!==void 0?e.active:m.isLink.value?(S=m.isActive)==null?void 0:S.value:r==null?void 0:r.isSelected.value}),w=v(()=>p.value?e.activeColor??e.color:e.color),N=v(()=>{var I,O;return{color:(r==null?void 0:r.isSelected.value)&&(!m.isLink.value||((I=m.isActive)==null?void 0:I.value))||!r||((O=m.isActive)==null?void 0:O.value)?w.value??e.baseColor:e.baseColor,variant:e.variant}}),{colorClasses:L,colorStyles:z,variantClasses:U}=Bt(N),A=v(()=>(r==null?void 0:r.disabled.value)||e.disabled),Ge=v(()=>e.variant==="elevated"&&!(e.disabled||e.flat||e.border)),Me=v(()=>{if(!(e.value===void 0||typeof e.value=="symbol"))return Object(e.value)===e.value?JSON.stringify(e.value,null,0):e.value});function je(S){var I;A.value||m.isLink.value&&(S.metaKey||S.ctrlKey||S.shiftKey||S.button!==0||a.target==="_blank")||((I=m.navigate)==null||I.call(m,S),r==null||r.toggle())}return nn(m,r==null?void 0:r.select),$(()=>{const S=m.isLink.value?"a":e.tag,I=!!(e.prependIcon||n.prepend),O=!!(e.appendIcon||n.append),le=!!(e.icon&&e.icon!==!0);return ht(g(S,ke({type:S==="a"?void 0:"button",class:["v-btn",r==null?void 0:r.selectedClass.value,{"v-btn--active":p.value,"v-btn--block":e.block,"v-btn--disabled":A.value,"v-btn--elevated":Ge.value,"v-btn--flat":e.flat,"v-btn--icon":!!e.icon,"v-btn--loading":e.loading,"v-btn--readonly":e.readonly,"v-btn--slim":e.slim,"v-btn--stacked":e.stacked},s.value,i.value,L.value,l.value,d.value,b.value,h.value,o.value,u.value,U.value,e.class],style:[z.value,c.value,C.value,f.value,e.style],"aria-busy":e.loading?!0:void 0,disabled:A.value||void 0,tabindex:e.loading||e.readonly?-1:void 0,onClick:je,value:Me.value},m.linkProps),{default:()=>{var oe;return[Et(!0,"v-btn"),!e.icon&&I&&g("span",{key:"prepend",class:"v-btn__prepend"},[n.prepend?g(X,{key:"prepend-defaults",disabled:!e.prependIcon,defaults:{VIcon:{icon:e.prependIcon}}},n.prepend):g(Y,{key:"prepend-icon",icon:e.prependIcon},null)]),g("span",{class:"v-btn__content","data-no-activator":""},[!n.default&&le?g(Y,{key:"content-icon",icon:e.icon},null):g(X,{key:"content-defaults",disabled:!le,defaults:{VIcon:{icon:e.icon}}},{default:()=>{var re;return[((re=n.default)==null?void 0:re.call(n))??e.text]}})]),!e.icon&&O&&g("span",{key:"append",class:"v-btn__append"},[n.append?g(X,{key:"append-defaults",disabled:!e.appendIcon,defaults:{VIcon:{icon:e.appendIcon}}},n.append):g(Y,{key:"append-icon",icon:e.appendIcon},null)]),!!e.loading&&g("span",{key:"loader",class:"v-btn__loader"},[((oe=n.loader)==null?void 0:oe.call(n))??g(Yt,{color:typeof e.loading=="boolean"?void 0:e.loading,indeterminate:!0,width:"2"},null)])]}}),[[Ot,!A.value&&e.ripple,"",{center:!!e.icon}]])}),{group:r}}});export{an as A,rn as B,Ot as R,Y as V,Se as a,_e as b,Ie as c,F as d,ln as e,xe as f,we as g,Pe as h,$ as i,X as j,_t as k,wt as l,q as m,Ee as n,se as o,Le as p,Bt as q,Be as r,ie as s,Et as t,pt as u,Vt as v,Tt as w,ee as x,on as y,ve as z}; diff --git a/assets/default-AzRlkVpy.css b/assets/default-AzRlkVpy.css new file mode 100644 index 0000000..f9b5fdb --- /dev/null +++ b/assets/default-AzRlkVpy.css @@ -0,0 +1 @@ +.social-link[data-v-40134937] .v-icon{color:rgba(var(--v-theme-on-background),var(--v-disabled-opacity));text-decoration:none;transition:.2s ease-in-out}.social-link[data-v-40134937] .v-icon:hover{color:#1976d2}.v-footer{align-items:center;display:flex;flex:1 1 auto;padding:8px 16px;position:relative;transition:.2s cubic-bezier(.4,0,.2,1);transition-property:height,width,transform,max-width,left,right,top,bottom}.v-footer{border-color:rgba(var(--v-border-color),var(--v-border-opacity));border-style:solid;border-width:0}.v-footer--border{border-width:thin;box-shadow:none}.v-footer{box-shadow:0 0 0 0 var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 0 0 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 0 0 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-footer--absolute{position:absolute}.v-footer--fixed{position:fixed}.v-footer{border-radius:0}.v-footer{background:rgb(var(--v-theme-surface));color:rgba(var(--v-theme-on-surface),var(--v-high-emphasis-opacity))}.v-footer--rounded{border-radius:4px}.v-list{overflow:auto;padding:8px 0;position:relative;outline:none}.v-list{border-color:rgba(var(--v-border-color),var(--v-border-opacity));border-style:solid;border-width:0}.v-list--border{border-width:thin;box-shadow:none}.v-list{box-shadow:0 0 0 0 var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 0 0 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 0 0 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-list{border-radius:0}.v-list{background:rgba(var(--v-theme-surface));color:rgba(var(--v-theme-on-surface),var(--v-high-emphasis-opacity))}.v-list--disabled{pointer-events:none;-webkit-user-select:none;user-select:none}.v-list--nav{padding-inline:8px}.v-list--rounded{border-radius:4px}.v-list--subheader{padding-top:0}.v-list-img{border-radius:inherit;display:flex;height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%;z-index:-1}.v-list-subheader{align-items:center;background:inherit;color:rgba(var(--v-theme-on-surface),var(--v-medium-emphasis-opacity));display:flex;font-size:.875rem;font-weight:400;line-height:1.375rem;padding-inline-end:16px;min-height:40px;transition:.2s min-height cubic-bezier(.4,0,.2,1)}.v-list-subheader__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v-list--density-default .v-list-subheader{min-height:40px;padding-inline-start:calc(16px + var(--indent-padding))!important}.v-list--density-comfortable .v-list-subheader{min-height:36px;padding-inline-start:calc(16px + var(--indent-padding))!important}.v-list--density-compact .v-list-subheader{min-height:32px;padding-inline-start:calc(16px + var(--indent-padding))!important}.v-list-subheader--inset{--indent-padding: 56px}.v-list--nav .v-list-subheader{font-size:.75rem}.v-list-subheader--sticky{background:inherit;left:0;position:sticky;top:0;z-index:1}.v-list__overlay{background-color:currentColor;border-radius:inherit;bottom:0;left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .2s ease-in-out}.v-list-item{align-items:center;display:grid;flex:none;grid-template-areas:"prepend content append";grid-template-columns:max-content 1fr auto;outline:none;max-width:100%;padding:4px 16px;position:relative;text-decoration:none}.v-list-item{border-color:rgba(var(--v-border-color),var(--v-border-opacity));border-style:solid;border-width:0}.v-list-item--border{border-width:thin;box-shadow:none}.v-list-item:hover>.v-list-item__overlay{opacity:calc(var(--v-hover-opacity) * var(--v-theme-overlay-multiplier))}.v-list-item:focus-visible>.v-list-item__overlay{opacity:calc(var(--v-focus-opacity) * var(--v-theme-overlay-multiplier))}@supports not selector(:focus-visible){.v-list-item:focus>.v-list-item__overlay{opacity:calc(var(--v-focus-opacity) * var(--v-theme-overlay-multiplier))}}.v-list-item--active>.v-list-item__overlay,.v-list-item[aria-haspopup=menu][aria-expanded=true]>.v-list-item__overlay{opacity:calc(var(--v-activated-opacity) * var(--v-theme-overlay-multiplier))}.v-list-item--active:hover>.v-list-item__overlay,.v-list-item[aria-haspopup=menu][aria-expanded=true]:hover>.v-list-item__overlay{opacity:calc((var(--v-activated-opacity) + var(--v-hover-opacity)) * var(--v-theme-overlay-multiplier))}.v-list-item--active:focus-visible>.v-list-item__overlay,.v-list-item[aria-haspopup=menu][aria-expanded=true]:focus-visible>.v-list-item__overlay{opacity:calc((var(--v-activated-opacity) + var(--v-focus-opacity)) * var(--v-theme-overlay-multiplier))}@supports not selector(:focus-visible){.v-list-item--active:focus>.v-list-item__overlay,.v-list-item[aria-haspopup=menu][aria-expanded=true]:focus>.v-list-item__overlay{opacity:calc((var(--v-activated-opacity) + var(--v-focus-opacity)) * var(--v-theme-overlay-multiplier))}}.v-list-item{border-radius:0}.v-list-item--variant-plain,.v-list-item--variant-outlined,.v-list-item--variant-text,.v-list-item--variant-tonal{background:transparent;color:inherit}.v-list-item--variant-plain{opacity:.62}.v-list-item--variant-plain:focus,.v-list-item--variant-plain:hover{opacity:1}.v-list-item--variant-plain .v-list-item__overlay{display:none}.v-list-item--variant-elevated,.v-list-item--variant-flat{background:rgba(var(--v-theme-surface));color:rgba(var(--v-theme-on-surface),var(--v-high-emphasis-opacity))}.v-list-item--variant-elevated{box-shadow:0 2px 1px -1px var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 1px 1px 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 1px 3px 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-list-item--variant-flat{box-shadow:0 0 0 0 var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 0 0 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 0 0 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-list-item--variant-outlined{border:thin solid currentColor}.v-list-item--variant-text .v-list-item__overlay{background:currentColor}.v-list-item--variant-tonal .v-list-item__underlay{background:currentColor;opacity:var(--v-activated-opacity);border-radius:inherit;top:0;right:0;bottom:0;left:0;pointer-events:none}.v-list-item .v-list-item__underlay{position:absolute}@supports selector(:focus-visible){.v-list-item:after{pointer-events:none;border:2px solid currentColor;border-radius:4px;opacity:0;transition:opacity .2s ease-in-out}.v-list-item:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%}.v-list-item:focus-visible:after{opacity:calc(.15 * var(--v-theme-overlay-multiplier))}}.v-list-item__prepend>.v-badge .v-icon,.v-list-item__prepend>.v-icon,.v-list-item__append>.v-badge .v-icon,.v-list-item__append>.v-icon{opacity:var(--v-medium-emphasis-opacity)}.v-list-item--active .v-list-item__prepend>.v-badge .v-icon,.v-list-item--active .v-list-item__prepend>.v-icon,.v-list-item--active .v-list-item__append>.v-badge .v-icon,.v-list-item--active .v-list-item__append>.v-icon{opacity:1}.v-list-item--active:not(.v-list-item--link) .v-list-item__overlay{opacity:calc(var(--v-activated-opacity) * var(--v-theme-overlay-multiplier))}.v-list-item--rounded{border-radius:4px}.v-list-item--disabled{pointer-events:none;-webkit-user-select:none;user-select:none;opacity:.6}.v-list-item--link{cursor:pointer}.v-navigation-drawer--rail:not(.v-navigation-drawer--expand-on-hover) .v-list-item .v-avatar,.v-navigation-drawer--rail.v-navigation-drawer--expand-on-hover:not(.v-navigation-drawer--is-hovering) .v-list-item .v-avatar{--v-avatar-height: 24px}.v-list-item__prepend{align-items:center;align-self:center;display:flex;grid-area:prepend}.v-list-item__prepend>.v-badge~.v-list-item__spacer,.v-list-item__prepend>.v-icon~.v-list-item__spacer,.v-list-item__prepend>.v-tooltip~.v-list-item__spacer{width:32px}.v-list-item__prepend>.v-avatar~.v-list-item__spacer{width:16px}.v-list-item__prepend>.v-list-item-action~.v-list-item__spacer{width:16px}.v-list-item--slim .v-list-item__prepend>.v-badge~.v-list-item__spacer,.v-list-item--slim .v-list-item__prepend>.v-icon~.v-list-item__spacer,.v-list-item--slim .v-list-item__prepend>.v-tooltip~.v-list-item__spacer{width:20px}.v-list-item--slim .v-list-item__prepend>.v-avatar~.v-list-item__spacer{width:4px}.v-list-item--slim .v-list-item__prepend>.v-list-item-action~.v-list-item__spacer{width:4px}.v-list-item--three-line .v-list-item__prepend{align-self:start}.v-list-item__append{align-self:center;display:flex;align-items:center;grid-area:append}.v-list-item__append .v-list-item__spacer{order:-1;transition:.15s width cubic-bezier(.4,0,.2,1)}.v-list-item__append>.v-badge~.v-list-item__spacer,.v-list-item__append>.v-icon~.v-list-item__spacer,.v-list-item__append>.v-tooltip~.v-list-item__spacer{width:32px}.v-list-item__append>.v-avatar~.v-list-item__spacer{width:16px}.v-list-item__append>.v-list-item-action~.v-list-item__spacer{width:16px}.v-list-item--slim .v-list-item__append>.v-badge~.v-list-item__spacer,.v-list-item--slim .v-list-item__append>.v-icon~.v-list-item__spacer,.v-list-item--slim .v-list-item__append>.v-tooltip~.v-list-item__spacer{width:20px}.v-list-item--slim .v-list-item__append>.v-avatar~.v-list-item__spacer{width:4px}.v-list-item--slim .v-list-item__append>.v-list-item-action~.v-list-item__spacer{width:4px}.v-list-item--three-line .v-list-item__append{align-self:start}.v-list-item__content{align-self:center;grid-area:content;overflow:hidden}.v-list-item-action{align-self:center;display:flex;align-items:center;flex:none;transition:inherit;transition-property:height,width}.v-list-item-action--start{margin-inline-end:8px;margin-inline-start:-8px}.v-list-item-action--end{margin-inline-start:8px;margin-inline-end:-8px}.v-list-item-media{margin-top:0;margin-bottom:0}.v-list-item-media--start{margin-inline-end:16px}.v-list-item-media--end{margin-inline-start:16px}.v-list-item--two-line .v-list-item-media{margin-top:-4px;margin-bottom:-4px}.v-list-item--three-line .v-list-item-media{margin-top:0;margin-bottom:0}.v-list-item-subtitle{-webkit-box-orient:vertical;display:-webkit-box;opacity:var(--v-list-item-subtitle-opacity, var(--v-medium-emphasis-opacity));overflow:hidden;padding:0;text-overflow:ellipsis;overflow-wrap:break-word;word-break:initial}.v-list-item--one-line .v-list-item-subtitle{-webkit-line-clamp:1}.v-list-item--two-line .v-list-item-subtitle{-webkit-line-clamp:2}.v-list-item--three-line .v-list-item-subtitle{-webkit-line-clamp:3}.v-list-item-subtitle{font-size:.875rem;font-weight:400;letter-spacing:.0178571429em;line-height:1rem;text-transform:none}.v-list-item--nav .v-list-item-subtitle{font-size:.75rem;font-weight:400;letter-spacing:.0178571429em;line-height:1rem}.v-list-item-title{-webkit-hyphens:auto;hyphens:auto;overflow-wrap:normal;overflow:hidden;padding:0;white-space:nowrap;text-overflow:ellipsis;word-break:normal;word-wrap:break-word}.v-list-item-title{font-size:1rem;font-weight:400;letter-spacing:.009375em;line-height:1.5;text-transform:none}.v-list-item--nav .v-list-item-title{font-size:.8125rem;font-weight:500;letter-spacing:normal;line-height:1rem}.v-list-item--density-default{min-height:40px}.v-list-item--density-default.v-list-item--one-line{min-height:48px;padding-top:4px;padding-bottom:4px}.v-list-item--density-default.v-list-item--two-line{min-height:64px;padding-top:12px;padding-bottom:12px}.v-list-item--density-default.v-list-item--three-line{min-height:88px;padding-top:16px;padding-bottom:16px}.v-list-item--density-default.v-list-item--three-line .v-list-item__prepend,.v-list-item--density-default.v-list-item--three-line .v-list-item__append{padding-top:8px}.v-list-item--density-default:not(.v-list-item--nav).v-list-item--one-line{padding-inline:16px}.v-list-item--density-default:not(.v-list-item--nav).v-list-item--two-line{padding-inline:16px}.v-list-item--density-default:not(.v-list-item--nav).v-list-item--three-line{padding-inline:16px}.v-list-item--density-comfortable{min-height:36px}.v-list-item--density-comfortable.v-list-item--one-line{min-height:44px}.v-list-item--density-comfortable.v-list-item--two-line{min-height:60px;padding-top:8px;padding-bottom:8px}.v-list-item--density-comfortable.v-list-item--three-line{min-height:84px;padding-top:12px;padding-bottom:12px}.v-list-item--density-comfortable.v-list-item--three-line .v-list-item__prepend,.v-list-item--density-comfortable.v-list-item--three-line .v-list-item__append{padding-top:6px}.v-list-item--density-comfortable:not(.v-list-item--nav).v-list-item--one-line{padding-inline:16px}.v-list-item--density-comfortable:not(.v-list-item--nav).v-list-item--two-line{padding-inline:16px}.v-list-item--density-comfortable:not(.v-list-item--nav).v-list-item--three-line{padding-inline:16px}.v-list-item--density-compact{min-height:32px}.v-list-item--density-compact.v-list-item--one-line{min-height:40px}.v-list-item--density-compact.v-list-item--two-line{min-height:56px;padding-top:4px;padding-bottom:4px}.v-list-item--density-compact.v-list-item--three-line{min-height:80px;padding-top:8px;padding-bottom:8px}.v-list-item--density-compact.v-list-item--three-line .v-list-item__prepend,.v-list-item--density-compact.v-list-item--three-line .v-list-item__append{padding-top:4px}.v-list-item--density-compact:not(.v-list-item--nav).v-list-item--one-line{padding-inline:16px}.v-list-item--density-compact:not(.v-list-item--nav).v-list-item--two-line{padding-inline:16px}.v-list-item--density-compact:not(.v-list-item--nav).v-list-item--three-line{padding-inline:16px}.v-list-item--nav{padding-inline:8px}.v-list .v-list-item--nav:not(:only-child){margin-bottom:4px}.v-list-item__underlay{position:absolute}.v-list-item__overlay{background-color:currentColor;border-radius:inherit;bottom:0;left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .2s ease-in-out}.v-list-item--active.v-list-item--variant-elevated .v-list-item__overlay{--v-theme-overlay-multiplier: 0}.v-list{--indent-padding: 0px}.v-list--nav{--indent-padding: -8px}.v-list-group{--list-indent-size: 16px;--parent-padding: var(--indent-padding);--prepend-width: 40px}.v-list--slim .v-list-group{--prepend-width: 28px}.v-list-group--fluid{--list-indent-size: 0px}.v-list-group--prepend{--parent-padding: calc(var(--indent-padding) + var(--prepend-width))}.v-list-group--fluid.v-list-group--prepend{--parent-padding: var(--indent-padding)}.v-list-group__items{--indent-padding: calc(var(--parent-padding) + var(--list-indent-size))}.v-list-group__items .v-list-item{padding-inline-start:calc(16px + var(--indent-padding))!important}.v-list-group__header:not(.v-treeview-item--activatable-group-activator).v-list-item--active:not(:focus-visible) .v-list-item__overlay{opacity:0}.v-list-group__header:not(.v-treeview-item--activatable-group-activator).v-list-item--active:hover .v-list-item__overlay{opacity:calc(var(--v-hover-opacity) * var(--v-theme-overlay-multiplier))}.v-avatar{flex:none;align-items:center;display:inline-flex;justify-content:center;line-height:normal;overflow:hidden;position:relative;text-align:center;transition:.2s cubic-bezier(.4,0,.2,1);transition-property:width,height;vertical-align:middle}.v-avatar.v-avatar--size-x-small{--v-avatar-height: 24px}.v-avatar.v-avatar--size-small{--v-avatar-height: 32px}.v-avatar.v-avatar--size-default{--v-avatar-height: 40px}.v-avatar.v-avatar--size-large{--v-avatar-height: 48px}.v-avatar.v-avatar--size-x-large{--v-avatar-height: 56px}.v-avatar.v-avatar--density-default{height:calc(var(--v-avatar-height) + 0px);width:calc(var(--v-avatar-height) + 0px)}.v-avatar.v-avatar--density-comfortable{height:calc(var(--v-avatar-height) + -4px);width:calc(var(--v-avatar-height) + -4px)}.v-avatar.v-avatar--density-compact{height:calc(var(--v-avatar-height) + -8px);width:calc(var(--v-avatar-height) + -8px)}.v-avatar{border-color:rgba(var(--v-border-color),var(--v-border-opacity));border-style:solid;border-width:0}.v-avatar--border{border-width:thin;box-shadow:none}.v-avatar{border-radius:50%}.v-avatar--variant-plain,.v-avatar--variant-outlined,.v-avatar--variant-text,.v-avatar--variant-tonal{background:transparent;color:inherit}.v-avatar--variant-plain{opacity:.62}.v-avatar--variant-plain:focus,.v-avatar--variant-plain:hover{opacity:1}.v-avatar--variant-plain .v-avatar__overlay{display:none}.v-avatar--variant-elevated,.v-avatar--variant-flat{background:var(--v-theme-surface);color:rgba(var(--v-theme-on-surface),var(--v-medium-emphasis-opacity))}.v-avatar--variant-elevated{box-shadow:0 2px 1px -1px var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 1px 1px 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 1px 3px 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-avatar--variant-flat{box-shadow:0 0 0 0 var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 0 0 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 0 0 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-avatar--variant-outlined{border:thin solid currentColor}.v-avatar--variant-text .v-avatar__overlay{background:currentColor}.v-avatar--variant-tonal .v-avatar__underlay{background:currentColor;opacity:var(--v-activated-opacity);border-radius:inherit;top:0;right:0;bottom:0;left:0;pointer-events:none}.v-avatar .v-avatar__underlay{position:absolute}.v-avatar--rounded{border-radius:4px}.v-avatar--start{margin-inline-end:8px}.v-avatar--end{margin-inline-start:8px}.v-avatar .v-img{height:100%;width:100%}.v-img{--v-theme-overlay-multiplier: 3;z-index:0}.v-img.v-img--absolute{height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%;z-index:-1}.v-img--booting .v-responsive__sizer{transition:none}.v-img--rounded{border-radius:4px}.v-img__img,.v-img__picture,.v-img__gradient,.v-img__placeholder,.v-img__error{z-index:-1}.v-img__img,.v-img__picture,.v-img__gradient,.v-img__placeholder,.v-img__error{position:absolute;top:0;left:0;width:100%;height:100%}.v-img__img--preload{filter:blur(4px)}.v-img__img--contain{object-fit:contain}.v-img__img--cover{object-fit:cover}.v-img__gradient{background-repeat:no-repeat}.v-responsive{display:flex;flex:1 0 auto;max-height:100%;max-width:100%;overflow:hidden;position:relative}.v-responsive--inline{display:inline-flex;flex:0 0 auto}.v-responsive__content{flex:1 0 0px;max-width:100%}.v-responsive__sizer~.v-responsive__content{margin-inline-start:-100%}.v-responsive__sizer{flex:1 0 0px;transition:padding-bottom .2s cubic-bezier(.4,0,.2,1);pointer-events:none}.v-divider{display:block;flex:1 1 100%;height:0px;max-height:0px;opacity:var(--v-border-opacity);transition:inherit}.v-divider{border-style:solid;border-width:thin 0 0 0}.v-divider--vertical{align-self:stretch;border-width:0 thin 0 0;display:inline-flex;height:auto;margin-left:-1px;max-height:100%;max-width:0px;vertical-align:text-bottom;width:0px}.v-divider--inset:not(.v-divider--vertical){max-width:calc(100% - 72px);margin-inline-start:72px}.v-divider--inset.v-divider--vertical{margin-bottom:8px;margin-top:8px;max-height:calc(100% - 16px)}.v-divider__content{padding:0 16px;text-wrap:nowrap}.v-divider__wrapper--vertical .v-divider__content{padding:4px 0}.v-divider__wrapper{display:flex;align-items:center;justify-content:center}.v-divider__wrapper--vertical{flex-direction:column;height:100%}.v-divider__wrapper--vertical .v-divider{margin:0 auto}.v-navigation-drawer{-webkit-overflow-scrolling:touch;background:rgb(var(--v-theme-surface));display:flex;flex-direction:column;height:100%;max-width:100%;pointer-events:auto;transition-duration:.2s;transition-property:box-shadow,transform,visibility,width,height,left,right,top,bottom;transition-timing-function:cubic-bezier(.4,0,.2,1);position:absolute}.v-navigation-drawer{border-color:rgba(var(--v-border-color),var(--v-border-opacity));border-style:solid;border-width:0}.v-navigation-drawer--border{border-width:thin;box-shadow:none}.v-navigation-drawer{box-shadow:0 0 0 0 var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 0 0 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 0 0 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-navigation-drawer{background:rgb(var(--v-theme-surface));color:rgba(var(--v-theme-on-surface),var(--v-high-emphasis-opacity))}.v-navigation-drawer--rounded{border-radius:4px}.v-navigation-drawer--top,.v-navigation-drawer--bottom{max-height:-webkit-fill-available;overflow-y:auto}.v-navigation-drawer--top{top:0;border-bottom-width:thin}.v-navigation-drawer--bottom{left:0;border-top-width:thin}.v-navigation-drawer--left{top:0;left:0;right:auto;border-right-width:thin}.v-navigation-drawer--right{top:0;left:auto;right:0;border-left-width:thin}.v-navigation-drawer--floating{border:none}.v-navigation-drawer--temporary.v-navigation-drawer--active{box-shadow:0 8px 10px -5px var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 16px 24px 2px var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 6px 30px 5px var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-navigation-drawer--sticky{height:auto;transition:box-shadow,transform,visibility,width,height,left,right}.v-navigation-drawer .v-list{overflow:hidden}.v-navigation-drawer__content{flex:0 1 auto;height:100%;max-width:100%;overflow-x:hidden;overflow-y:auto}.v-navigation-drawer__img{height:100%;left:0;position:absolute;top:0;width:100%;z-index:-1}.v-navigation-drawer__img img:not(.v-img__img){height:inherit;object-fit:cover;width:inherit}.v-navigation-drawer__scrim{position:absolute;top:0;left:0;width:100%;height:100%;background:#000;opacity:.2;transition:opacity .2s cubic-bezier(.4,0,.2,1);z-index:1}.v-navigation-drawer__prepend,.v-navigation-drawer__append{flex:none;overflow:hidden}.v-app-bar{display:flex}.v-app-bar.v-toolbar{background:rgb(var(--v-theme-surface));color:rgba(var(--v-theme-on-surface),var(--v-high-emphasis-opacity))}.v-app-bar.v-toolbar:not(.v-toolbar--flat){box-shadow:0 2px 4px -1px var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 4px 5px 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 1px 10px 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-app-bar:not(.v-toolbar--absolute){padding-inline-end:var(--v-scrollbar-offset)}.v-toolbar{align-items:flex-start;display:flex;flex:none;flex-direction:column;justify-content:space-between;max-width:100%;position:relative;transition:.2s cubic-bezier(.4,0,.2,1);transition-property:height,width,transform,max-width,left,right,top,bottom,box-shadow;width:100%}.v-toolbar{border-color:rgba(var(--v-border-color),var(--v-border-opacity));border-style:solid;border-width:0}.v-toolbar--border{border-width:thin;box-shadow:none}.v-toolbar{box-shadow:0 0 0 0 var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 0 0 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 0 0 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-toolbar{border-radius:0}.v-toolbar{background:rgb(var(--v-theme-surface-light));color:rgba(var(--v-theme-on-surface-light),var(--v-high-emphasis-opacity))}.v-toolbar--absolute{position:absolute}.v-toolbar--collapse{max-width:112px;overflow:hidden;border-end-end-radius:24px}.v-toolbar--collapse .v-toolbar-title{display:none}.v-toolbar--flat{box-shadow:0 0 0 0 var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 0 0 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 0 0 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-toolbar--floating{display:inline-flex}.v-toolbar--rounded{border-radius:4px}.v-toolbar__content,.v-toolbar__extension{align-items:center;display:flex;flex:0 0 auto;position:relative;transition:inherit;width:100%}.v-toolbar__content{overflow:hidden}.v-toolbar__content>.v-btn:first-child{margin-inline-start:4px}.v-toolbar__content>.v-btn:last-child{margin-inline-end:4px}.v-toolbar__content>.v-toolbar-title{margin-inline-start:20px}.v-toolbar--density-prominent .v-toolbar__content{align-items:flex-start}.v-toolbar__image{display:flex;opacity:var(--v-toolbar-image-opacity, 1);transition-property:opacity}.v-toolbar__image{position:absolute;top:0;left:0;width:100%;height:100%}.v-toolbar__prepend,.v-toolbar__append{align-items:center;align-self:stretch;display:flex}.v-toolbar__prepend{margin-inline:4px auto}.v-toolbar__append{margin-inline:auto 4px}.v-toolbar-title{flex:1 1;font-size:1.25rem;min-width:0}.v-toolbar-title{font-size:1.25rem;font-weight:400;letter-spacing:0;line-height:1.75rem;text-transform:none}.v-toolbar--density-prominent .v-toolbar-title{align-self:flex-end;padding-bottom:6px}.v-toolbar--density-prominent .v-toolbar-title{font-size:1.5rem;font-weight:400;letter-spacing:0;line-height:2.25rem;text-transform:none}.v-toolbar-title__placeholder{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v-toolbar-items{display:flex;height:inherit;align-self:stretch}.v-toolbar-items>.v-btn{border-radius:0}.v-application{display:flex;background:rgb(var(--v-theme-background));color:rgba(var(--v-theme-on-background),var(--v-high-emphasis-opacity))}.v-application__wrap{backface-visibility:hidden;display:flex;flex-direction:column;flex:1 1 auto;max-width:100%;min-height:100vh;min-height:100dvh;position:relative}.v-main{flex:1 0 auto;max-width:100%;transition:.2s cubic-bezier(.4,0,.2,1);padding-left:var(--v-layout-left);padding-right:var(--v-layout-right);padding-top:var(--v-layout-top);padding-bottom:var(--v-layout-bottom)}.v-main__scroller{max-width:100%;position:relative}.v-main--scrollable{display:flex}.v-main--scrollable{position:absolute;top:0;left:0;width:100%;height:100%}.v-main--scrollable>.v-main__scroller{flex:1 1 auto;overflow-y:auto;--v-layout-left: 0px;--v-layout-right: 0px;--v-layout-top: 0px;--v-layout-bottom: 0px} diff --git a/assets/default-B2aGEmKt.js b/assets/default-B2aGEmKt.js new file mode 100644 index 0000000..78a9d04 --- /dev/null +++ b/assets/default-B2aGEmKt.js @@ -0,0 +1 @@ +import{g as N,c as Ft,a as ft,h as Re,p as H,i as oe,b as f,r as z,d as ge,e as W,f as Le,s as L,o as Te,j as be,k as Wt,l as mt,m as Gt,n as Yt,q as se,t as ee,u as te,v as M,w as ye,x as u,y as qe,z as Ae,A as $e,B as ie,C as Ut,F as Be,D as qt,E as Ee,G as Ye,H as Xt,T as Xe,I as De,J as D,K as gt,L as Ve,M as Zt,N as K,O as Kt,P as le,Q as Oe,R as yt,S as ht,U as G,V as Jt,W as bt,X as St,Y as Ie,Z as Qt,_ as en,$ as Ze,a0 as tn,a1 as Ce,a2 as nn,a3 as an,a4 as ln,a5 as on,a6 as sn,a7 as Ke,a8 as rn,a9 as un,aa as cn}from"./index-DA-NTYk_.js";import{m as j,u as pt,a as Se,b as Me,c as re,d as X,e as he,f as pe,g as He,h as ue,i as $,V as Ne,j as Q,k as je,l as Fe,n as Je,o as dn,p as Qe,q as wt,r as et,s as vn,t as _t,v as fn,R as mn,w as gn,x as Ct,y as yn,z as hn,A as bn,B as Sn}from"./VBtn-nTHrG9ot.js";function pn(e){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"div",t=arguments.length>2?arguments[2]:void 0;return N()({name:t??Ft(ft(e.replace(/__/g,"-"))),props:{tag:{type:String,default:o},...j()},setup(n,a){let{slots:l}=a;return()=>{var i;return Re(n.tag,{class:[e,n.class],style:n.style},(i=l.default)==null?void 0:i.call(l))}}})}const ze=Symbol.for("vuetify:layout"),kt=Symbol.for("vuetify:layout-item"),ot=1e3,wn=H({overlaps:{type:Array,default:()=>[]},fullHeight:Boolean},"layout"),tt=H({name:{type:String},order:{type:[Number,String],default:0},absolute:Boolean},"layout-item");function _n(){const e=oe(ze);if(!e)throw new Error("[Vuetify] Could not find injected layout");return{getLayoutItem:e.getLayoutItem,mainRect:e.mainRect,mainStyles:e.mainStyles}}function nt(e){const o=oe(ze);if(!o)throw new Error("[Vuetify] Could not find injected layout");const t=e.id??`layout-item-${mt()}`,n=Le("useLayoutItem");be(kt,{id:t});const a=L(!1);Gt(()=>a.value=!0),Yt(()=>a.value=!1);const{layoutItemStyles:l,layoutItemScrimStyles:i}=o.register(n,{...e,active:f(()=>a.value?!1:e.active.value),id:t});return se(()=>o.unregister(t)),{layoutItemStyles:l,layoutRect:o.layoutRect,layoutItemScrimStyles:i}}const Cn=(e,o,t,n)=>{let a={top:0,left:0,right:0,bottom:0};const l=[{id:"",layer:{...a}}];for(const i of e){const s=o.get(i),m=t.get(i),d=n.get(i);if(!s||!m||!d)continue;const c={...a,[s.value]:parseInt(a[s.value],10)+(d.value?parseInt(m.value,10):0)};l.push({id:i,layer:c}),a=c}return l};function kn(e){const o=oe(ze,null),t=f(()=>o?o.rootZIndex.value-100:ot),n=z([]),a=ge(new Map),l=ge(new Map),i=ge(new Map),s=ge(new Map),m=ge(new Map),{resizeRef:d,contentRect:c}=pt(),g=f(()=>{const b=new Map,C=e.overlaps??[];for(const S of C.filter(k=>k.includes(":"))){const[k,I]=S.split(":");if(!n.value.includes(k)||!n.value.includes(I))continue;const x=a.get(k),w=a.get(I),V=l.get(k),O=l.get(I);!x||!w||!V||!O||(b.set(I,{position:x.value,amount:parseInt(V.value,10)}),b.set(k,{position:w.value,amount:-parseInt(O.value,10)}))}return b}),h=f(()=>{const b=[...new Set([...i.values()].map(S=>S.value))].sort((S,k)=>S-k),C=[];for(const S of b){const k=n.value.filter(I=>{var x;return((x=i.get(I))==null?void 0:x.value)===S});C.push(...k)}return Cn(C,a,l,s)}),y=f(()=>!Array.from(m.values()).some(b=>b.value)),r=f(()=>h.value[h.value.length-1].layer),v=f(()=>({"--v-layout-left":W(r.value.left),"--v-layout-right":W(r.value.right),"--v-layout-top":W(r.value.top),"--v-layout-bottom":W(r.value.bottom),...y.value?void 0:{transition:"none"}})),p=f(()=>h.value.slice(1).map((b,C)=>{let{id:S}=b;const{layer:k}=h.value[C],I=l.get(S),x=a.get(S);return{id:S,...k,size:Number(I.value),position:x.value}})),A=b=>p.value.find(C=>C.id===b),_=Le("createLayout"),B=L(!1);Te(()=>{B.value=!0}),be(ze,{register:(b,C)=>{let{id:S,order:k,position:I,layoutSize:x,elementSize:w,active:V,disableTransitions:O,absolute:J}=C;i.set(S,k),a.set(S,I),l.set(S,x),s.set(S,V),O&&m.set(S,O);const ae=Wt(kt,_==null?void 0:_.vnode).indexOf(b);ae>-1?n.value.splice(ae,0,S):n.value.push(S);const ce=f(()=>p.value.findIndex(P=>P.id===S)),Z=f(()=>t.value+h.value.length*2-ce.value*2),we=f(()=>{const P=I.value==="left"||I.value==="right",U=I.value==="right",de=I.value==="bottom",ve=w.value??x.value,Ge=ve===0?"%":"px",_e={[I.value]:0,zIndex:Z.value,transform:`translate${P?"X":"Y"}(${(V.value?0:-(ve===0?100:ve))*(U||de?-1:1)}${Ge})`,position:J.value||t.value!==ot?"absolute":"fixed",...y.value?void 0:{transition:"none"}};if(!B.value)return _e;const F=p.value[ce.value];if(!F)throw new Error(`[Vuetify] Could not find layout item "${S}"`);const fe=g.value.get(S);return fe&&(F[fe.position]+=fe.amount),{..._e,height:P?`calc(100% - ${F.top}px - ${F.bottom}px)`:w.value?`${w.value}px`:void 0,left:U?void 0:`${F.left}px`,right:U?`${F.right}px`:void 0,top:I.value!=="bottom"?`${F.top}px`:void 0,bottom:I.value!=="top"?`${F.bottom}px`:void 0,width:P?w.value?`${w.value}px`:void 0:`calc(100% - ${F.left}px - ${F.right}px)`}}),R=f(()=>({zIndex:Z.value-1}));return{layoutItemStyles:we,layoutItemScrimStyles:R,zIndex:Z}},unregister:b=>{i.delete(b),a.delete(b),l.delete(b),s.delete(b),m.delete(b),n.value=n.value.filter(C=>C!==b)},mainRect:r,mainStyles:v,getLayoutItem:A,items:p,layoutRect:c,rootZIndex:t});const E=f(()=>["v-layout",{"v-layout--full-height":e.fullHeight}]),T=f(()=>({zIndex:o?t.value:void 0,position:o?"relative":void 0,overflow:o?"hidden":void 0}));return{layoutClasses:E,layoutStyles:T,getLayoutItem:A,items:p,layoutRect:c,layoutRef:d}}const Vt=(e,o)=>{const t=e.__vccOpts||e;for(const[n,a]of o)t[n]=a;return t},Vn=H({app:Boolean,color:String,height:{type:[Number,String],default:"auto"},...Se(),...j(),...Me(),...tt(),...re(),...X({tag:"footer"}),...ee()},"VFooter"),In=N()({name:"VFooter",props:Vn(),setup(e,o){let{slots:t}=o;const n=z(),{themeClasses:a}=te(e),{backgroundColorClasses:l,backgroundColorStyles:i}=he(M(e,"color")),{borderClasses:s}=pe(e),{elevationClasses:m}=He(e),{roundedClasses:d}=ue(e),c=L(32),{resizeRef:g}=pt(y=>{y.length&&(c.value=y[0].target.clientHeight)}),h=f(()=>e.height==="auto"?c.value:parseInt(e.height,10));return ye(()=>e.app,()=>{const y=nt({id:e.name,order:f(()=>parseInt(e.order,10)),position:f(()=>"bottom"),layoutSize:h,elementSize:f(()=>e.height==="auto"?void 0:h.value),active:f(()=>e.app),absolute:M(e,"absolute")});qe(()=>{n.value=y.layoutItemStyles.value})}),$(()=>u(e.tag,{ref:g,class:["v-footer",a.value,l.value,s.value,m.value,d.value,e.class],style:[i.value,e.app?n.value:{height:W(e.height)},e.style]},t)),{}}}),xn=["href","title"],An={class:"text-caption text-disabled",style:{position:"absolute",right:"16px"}},Bn={__name:"AppFooter",setup(e){const o=[{title:"Vuetify Documentation",icon:"$vuetify",href:"https://vuetifyjs.com/"},{title:"Vuetify Support",icon:"mdi-shield-star-outline",href:"https://support.vuetifyjs.com/"},{title:"Vuetify X",icon:["M2.04875 3.00002L9.77052 13.3248L1.99998 21.7192H3.74882L10.5519 14.3697L16.0486 21.7192H22L13.8437 10.8137L21.0765 3.00002H19.3277L13.0624 9.76874L8.0001 3.00002H2.04875ZM4.62054 4.28821H7.35461L19.4278 20.4308H16.6937L4.62054 4.28821Z"],href:"https://x.com/vuetifyjs"},{title:"Vuetify GitHub",icon:"mdi-github",href:"https://github.com/vuetifyjs/vuetify"},{title:"Vuetify Discord",icon:["M22,24L16.75,19L17.38,21H4.5A2.5,2.5 0 0,1 2,18.5V3.5A2.5,2.5 0 0,1 4.5,1H19.5A2.5,2.5 0 0,1 22,3.5V24M12,6.8C9.32,6.8 7.44,7.95 7.44,7.95C8.47,7.03 10.27,6.5 10.27,6.5L10.1,6.33C8.41,6.36 6.88,7.53 6.88,7.53C5.16,11.12 5.27,14.22 5.27,14.22C6.67,16.03 8.75,15.9 8.75,15.9L9.46,15C8.21,14.73 7.42,13.62 7.42,13.62C7.42,13.62 9.3,14.9 12,14.9C14.7,14.9 16.58,13.62 16.58,13.62C16.58,13.62 15.79,14.73 14.54,15L15.25,15.9C15.25,15.9 17.33,16.03 18.73,14.22C18.73,14.22 18.84,11.12 17.12,7.53C17.12,7.53 15.59,6.36 13.9,6.33L13.73,6.5C13.73,6.5 15.53,7.03 16.56,7.95C16.56,7.95 14.68,6.8 12,6.8M9.93,10.59C10.58,10.59 11.11,11.16 11.1,11.86C11.1,12.55 10.58,13.13 9.93,13.13C9.29,13.13 8.77,12.55 8.77,11.86C8.77,11.16 9.28,10.59 9.93,10.59M14.1,10.59C14.75,10.59 15.27,11.16 15.27,11.86C15.27,12.55 14.75,13.13 14.1,13.13C13.46,13.13 12.94,12.55 12.94,11.86C12.94,11.16 13.45,10.59 14.1,10.59Z"],href:"https://community.vuetifyjs.com/"},{title:"Vuetify Reddit",icon:"mdi-reddit",href:"https://reddit.com/r/vuetifyjs"}];return(t,n)=>(Ae(),$e(In,{height:"40",app:""},{default:ie(()=>[(Ae(),Ut(Be,null,qt(o,a=>Ee("a",{key:a.title,href:a.href,title:a.title,class:"d-inline-block mx-2 social-link",rel:"noopener noreferrer",target:"_blank"},[u(Ne,{icon:a.icon,size:a.icon==="$vuetify"?24:16},null,8,["icon","size"])],8,xn)),64)),Ee("div",An,[Ye(" © 2016-"+Xt(new Date().getFullYear())+" ",1),n[0]||(n[0]=Ee("span",{class:"d-none d-sm-inline-block"},"Vuetify, LLC",-1)),n[1]||(n[1]=Ye(" — ")),n[2]||(n[2]=Ee("a",{class:"text-decoration-none on-surface",href:"https://vuetifyjs.com/about/licensing/",rel:"noopener noreferrer",target:"_blank"}," MIT License ",-1))])]),_:1}))}},Pn=Vt(Bn,[["__scopeId","data-v-40134937"]]),Ln=H({disabled:Boolean,group:Boolean,hideOnLeave:Boolean,leaveAbsolute:Boolean,mode:String,origin:String},"transition");function Y(e,o,t){return N()({name:e,props:Ln({mode:t,origin:o}),setup(n,a){let{slots:l}=a;const i={onBeforeEnter(s){n.origin&&(s.style.transformOrigin=n.origin)},onLeave(s){if(n.leaveAbsolute){const{offsetTop:m,offsetLeft:d,offsetWidth:c,offsetHeight:g}=s;s._transitionInitialStyles={position:s.style.position,top:s.style.top,left:s.style.left,width:s.style.width,height:s.style.height},s.style.position="absolute",s.style.top=`${m}px`,s.style.left=`${d}px`,s.style.width=`${c}px`,s.style.height=`${g}px`}n.hideOnLeave&&s.style.setProperty("display","none","important")},onAfterLeave(s){if(n.leaveAbsolute&&(s!=null&&s._transitionInitialStyles)){const{position:m,top:d,left:c,width:g,height:h}=s._transitionInitialStyles;delete s._transitionInitialStyles,s.style.position=m||"",s.style.top=d||"",s.style.left=c||"",s.style.width=g||"",s.style.height=h||""}}};return()=>{const s=n.group?Xe:De;return Re(s,{name:n.disabled?"":e,css:!n.disabled,...n.group?void 0:{mode:n.mode},...n.disabled?{}:i},l.default)}}})}function It(e,o){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"in-out";return N()({name:e,props:{mode:{type:String,default:t},disabled:Boolean,group:Boolean},setup(n,a){let{slots:l}=a;const i=n.group?Xe:De;return()=>Re(i,{name:n.disabled?"":e,css:!n.disabled,...n.disabled?{}:o},l.default)}})}function xt(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";const t=(arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1)?"width":"height",n=ft(`offset-${t}`);return{onBeforeEnter(i){i._parent=i.parentNode,i._initialStyle={transition:i.style.transition,overflow:i.style.overflow,[t]:i.style[t]}},onEnter(i){const s=i._initialStyle;i.style.setProperty("transition","none","important"),i.style.overflow="hidden";const m=`${i[n]}px`;i.style[t]="0",i.offsetHeight,i.style.transition=s.transition,e&&i._parent&&i._parent.classList.add(e),requestAnimationFrame(()=>{i.style[t]=m})},onAfterEnter:l,onEnterCancelled:l,onLeave(i){i._initialStyle={transition:"",overflow:i.style.overflow,[t]:i.style[t]},i.style.overflow="hidden",i.style[t]=`${i[n]}px`,i.offsetHeight,requestAnimationFrame(()=>i.style[t]="0")},onAfterLeave:a,onLeaveCancelled:a};function a(i){e&&i._parent&&i._parent.classList.remove(e),l(i)}function l(i){const s=i._initialStyle[t];i.style.overflow=i._initialStyle.overflow,s!=null&&(i.style[t]=s),delete i._initialStyle}}Y("fab-transition","center center","out-in");Y("dialog-bottom-transition");Y("dialog-top-transition");Y("fade-transition");Y("scale-transition");Y("scroll-x-transition");Y("scroll-x-reverse-transition");Y("scroll-y-transition");Y("scroll-y-reverse-transition");Y("slide-x-transition");Y("slide-x-reverse-transition");Y("slide-y-transition");Y("slide-y-reverse-transition");const At=It("expand-transition",xt());It("expand-x-transition",xt("",!0));const Ue=Symbol.for("vuetify:list");function Bt(){const e=oe(Ue,{hasPrepend:L(!1),updateHasPrepend:()=>null}),o={hasPrepend:L(!1),updateHasPrepend:t=>{t&&(o.hasPrepend.value=t)}};return be(Ue,o),e}function Pt(){return oe(Ue,null)}const at=e=>{const o={activate:t=>{let{id:n,value:a,activated:l}=t;return n=D(n),e&&!a&&l.size===1&&l.has(n)||(a?l.add(n):l.delete(n)),l},in:(t,n,a)=>{let l=new Set;if(t!=null)for(const i of gt(t))l=o.activate({id:i,value:!0,activated:new Set(l),children:n,parents:a});return l},out:t=>Array.from(t)};return o},Lt=e=>{const o=at(e);return{activate:n=>{let{activated:a,id:l,...i}=n;l=D(l);const s=a.has(l)?new Set([l]):new Set;return o.activate({...i,id:l,activated:s})},in:(n,a,l)=>{let i=new Set;if(n!=null){const s=gt(n);s.length&&(i=o.in(s.slice(0,1),a,l))}return i},out:(n,a,l)=>o.out(n,a,l)}},Tn=e=>{const o=at(e);return{activate:n=>{let{id:a,activated:l,children:i,...s}=n;return a=D(a),i.has(a)?l:o.activate({id:a,activated:l,children:i,...s})},in:o.in,out:o.out}},Mn=e=>{const o=Lt(e);return{activate:n=>{let{id:a,activated:l,children:i,...s}=n;return a=D(a),i.has(a)?l:o.activate({id:a,activated:l,children:i,...s})},in:o.in,out:o.out}},Hn={open:e=>{let{id:o,value:t,opened:n,parents:a}=e;if(t){const l=new Set;l.add(o);let i=a.get(o);for(;i!=null;)l.add(i),i=a.get(i);return l}else return n.delete(o),n},select:()=>null},Tt={open:e=>{let{id:o,value:t,opened:n,parents:a}=e;if(t){let l=a.get(o);for(n.add(o);l!=null&&l!==o;)n.add(l),l=a.get(l);return n}else n.delete(o);return n},select:()=>null},En={open:Tt.open,select:e=>{let{id:o,value:t,opened:n,parents:a}=e;if(!t)return n;const l=[];let i=a.get(o);for(;i!=null;)l.push(i),i=a.get(i);return new Set(l)}},lt=e=>{const o={select:t=>{let{id:n,value:a,selected:l}=t;if(n=D(n),e&&!a){const i=Array.from(l.entries()).reduce((s,m)=>{let[d,c]=m;return c==="on"&&s.push(d),s},[]);if(i.length===1&&i[0]===n)return l}return l.set(n,a?"on":"off"),l},in:(t,n,a)=>{let l=new Map;for(const i of t||[])l=o.select({id:i,value:!0,selected:new Map(l),children:n,parents:a});return l},out:t=>{const n=[];for(const[a,l]of t.entries())l==="on"&&n.push(a);return n}};return o},Mt=e=>{const o=lt(e);return{select:n=>{let{selected:a,id:l,...i}=n;l=D(l);const s=a.has(l)?new Map([[l,a.get(l)]]):new Map;return o.select({...i,id:l,selected:s})},in:(n,a,l)=>{let i=new Map;return n!=null&&n.length&&(i=o.in(n.slice(0,1),a,l)),i},out:(n,a,l)=>o.out(n,a,l)}},On=e=>{const o=lt(e);return{select:n=>{let{id:a,selected:l,children:i,...s}=n;return a=D(a),i.has(a)?l:o.select({id:a,selected:l,children:i,...s})},in:o.in,out:o.out}},Nn=e=>{const o=Mt(e);return{select:n=>{let{id:a,selected:l,children:i,...s}=n;return a=D(a),i.has(a)?l:o.select({id:a,selected:l,children:i,...s})},in:o.in,out:o.out}},zn=e=>{const o={select:t=>{let{id:n,value:a,selected:l,children:i,parents:s}=t;n=D(n);const m=new Map(l),d=[n];for(;d.length;){const g=d.shift();l.set(D(g),a?"on":"off"),i.has(g)&&d.push(...i.get(g))}let c=D(s.get(n));for(;c;){const g=i.get(c),h=g.every(r=>l.get(D(r))==="on"),y=g.every(r=>!l.has(D(r))||l.get(D(r))==="off");l.set(c,h?"on":y?"off":"indeterminate"),c=D(s.get(c))}return e&&!a&&Array.from(l.entries()).reduce((h,y)=>{let[r,v]=y;return v==="on"&&h.push(r),h},[]).length===0?m:l},in:(t,n,a)=>{let l=new Map;for(const i of t||[])l=o.select({id:i,value:!0,selected:new Map(l),children:n,parents:a});return l},out:(t,n)=>{const a=[];for(const[l,i]of t.entries())i==="on"&&!n.has(l)&&a.push(l);return a}};return o},Pe=Symbol.for("vuetify:nested"),Ht={id:L(),root:{register:()=>null,unregister:()=>null,parents:z(new Map),children:z(new Map),open:()=>null,openOnSelect:()=>null,activate:()=>null,select:()=>null,activatable:z(!1),selectable:z(!1),opened:z(new Set),activated:z(new Set),selected:z(new Map),selectedValues:z([]),getPath:()=>[]}},Rn=H({activatable:Boolean,selectable:Boolean,activeStrategy:[String,Function,Object],selectStrategy:[String,Function,Object],openStrategy:[String,Object],opened:null,activated:null,selected:null,mandatory:Boolean},"nested"),$n=e=>{let o=!1;const t=z(new Map),n=z(new Map),a=Ve(e,"opened",e.opened,r=>new Set(r),r=>[...r.values()]),l=f(()=>{if(typeof e.activeStrategy=="object")return e.activeStrategy;if(typeof e.activeStrategy=="function")return e.activeStrategy(e.mandatory);switch(e.activeStrategy){case"leaf":return Tn(e.mandatory);case"single-leaf":return Mn(e.mandatory);case"independent":return at(e.mandatory);case"single-independent":default:return Lt(e.mandatory)}}),i=f(()=>{if(typeof e.selectStrategy=="object")return e.selectStrategy;if(typeof e.selectStrategy=="function")return e.selectStrategy(e.mandatory);switch(e.selectStrategy){case"single-leaf":return Nn(e.mandatory);case"leaf":return On(e.mandatory);case"independent":return lt(e.mandatory);case"single-independent":return Mt(e.mandatory);case"classic":default:return zn(e.mandatory)}}),s=f(()=>{if(typeof e.openStrategy=="object")return e.openStrategy;switch(e.openStrategy){case"list":return En;case"single":return Hn;case"multiple":default:return Tt}}),m=Ve(e,"activated",e.activated,r=>l.value.in(r,t.value,n.value),r=>l.value.out(r,t.value,n.value)),d=Ve(e,"selected",e.selected,r=>i.value.in(r,t.value,n.value),r=>i.value.out(r,t.value,n.value));se(()=>{o=!0});function c(r){const v=[];let p=r;for(;p!=null;)v.unshift(p),p=n.value.get(p);return v}const g=Le("nested"),h=new Set,y={id:L(),root:{opened:a,activatable:M(e,"activatable"),selectable:M(e,"selectable"),activated:m,selected:d,selectedValues:f(()=>{const r=[];for(const[v,p]of d.value.entries())p==="on"&&r.push(v);return r}),register:(r,v,p)=>{if(h.has(r)){c(r).join(" -> "),c(v).concat(r).join(" -> ");return}else h.add(r);v&&r!==v&&n.value.set(r,v),p&&t.value.set(r,[]),v!=null&&t.value.set(v,[...t.value.get(v)||[],r])},unregister:r=>{if(o)return;h.delete(r),t.value.delete(r);const v=n.value.get(r);if(v){const p=t.value.get(v)??[];t.value.set(v,p.filter(A=>A!==r))}n.value.delete(r)},open:(r,v,p)=>{g.emit("click:open",{id:r,value:v,path:c(r),event:p});const A=s.value.open({id:r,value:v,opened:new Set(a.value),children:t.value,parents:n.value,event:p});A&&(a.value=A)},openOnSelect:(r,v,p)=>{const A=s.value.select({id:r,value:v,selected:new Map(d.value),opened:new Set(a.value),children:t.value,parents:n.value,event:p});A&&(a.value=A)},select:(r,v,p)=>{g.emit("click:select",{id:r,value:v,path:c(r),event:p});const A=i.value.select({id:r,value:v,selected:new Map(d.value),children:t.value,parents:n.value,event:p});A&&(d.value=A),y.root.openOnSelect(r,v,p)},activate:(r,v,p)=>{if(!e.activatable)return y.root.select(r,!0,p);g.emit("click:activate",{id:r,value:v,path:c(r),event:p});const A=l.value.activate({id:r,value:v,activated:new Set(m.value),children:t.value,parents:n.value,event:p});A&&(m.value=A)},children:t,parents:n,getPath:c}};return be(Pe,y),y.root},Et=(e,o)=>{const t=oe(Pe,Ht),n=Symbol(mt()),a=f(()=>e.value!==void 0?e.value:n),l={...t,id:a,open:(i,s)=>t.root.open(a.value,i,s),openOnSelect:(i,s)=>t.root.openOnSelect(a.value,i,s),isOpen:f(()=>t.root.opened.value.has(a.value)),parent:f(()=>t.root.parents.value.get(a.value)),activate:(i,s)=>t.root.activate(a.value,i,s),isActivated:f(()=>t.root.activated.value.has(D(a.value))),select:(i,s)=>t.root.select(a.value,i,s),isSelected:f(()=>t.root.selected.value.get(D(a.value))==="on"),isIndeterminate:f(()=>t.root.selected.value.get(a.value)==="indeterminate"),isLeaf:f(()=>!t.root.children.value.get(a.value)),isGroupActivator:t.isGroupActivator};return!t.isGroupActivator&&t.root.register(a.value,t.id.value,o),se(()=>{!t.isGroupActivator&&t.root.unregister(a.value)}),o&&be(Pe,l),l},Dn=()=>{const e=oe(Pe,Ht);be(Pe,{...e,isGroupActivator:!0})};function We(){const e=L(!1);return Te(()=>{window.requestAnimationFrame(()=>{e.value=!0})}),{ssrBootStyles:f(()=>e.value?void 0:{transition:"none !important"}),isBooted:Zt(e)}}const jn=H({transition:{type:[Boolean,String,Object],default:"fade-transition",validator:e=>e!==!0}},"transition"),ke=(e,o)=>{let{slots:t}=o;const{transition:n,disabled:a,group:l,...i}=e,{component:s=l?Xe:De,...m}=typeof n=="object"?n:{};return Re(s,K(typeof n=="string"?{name:a?"":n}:m,typeof n=="string"?{}:Object.fromEntries(Object.entries({disabled:a,group:l}).filter(d=>{let[c,g]=d;return g!==void 0})),i),t)},Fn=Kt({name:"VListGroupActivator",setup(e,o){let{slots:t}=o;return Dn(),()=>{var n;return(n=t.default)==null?void 0:n.call(t)}}}),Wn=H({activeColor:String,baseColor:String,color:String,collapseIcon:{type:le,default:"$collapse"},expandIcon:{type:le,default:"$expand"},prependIcon:le,appendIcon:le,fluid:Boolean,subgroup:Boolean,title:String,value:null,...j(),...X()},"VListGroup"),st=N()({name:"VListGroup",props:Wn(),setup(e,o){let{slots:t}=o;const{isOpen:n,open:a,id:l}=Et(M(e,"value"),!0),i=f(()=>`v-list-group--id-${String(l.value)}`),s=Pt(),{isBooted:m}=We();function d(y){y.stopPropagation(),a(!n.value,y)}const c=f(()=>({onClick:d,class:"v-list-group__header",id:i.value})),g=f(()=>n.value?e.collapseIcon:e.expandIcon),h=f(()=>({VListItem:{active:n.value,activeColor:e.activeColor,baseColor:e.baseColor,color:e.color,prependIcon:e.prependIcon||e.subgroup&&g.value,appendIcon:e.appendIcon||!e.subgroup&&g.value,title:e.title,value:e.value}}));return $(()=>u(e.tag,{class:["v-list-group",{"v-list-group--prepend":s==null?void 0:s.hasPrepend.value,"v-list-group--fluid":e.fluid,"v-list-group--subgroup":e.subgroup,"v-list-group--open":n.value},e.class],style:e.style},{default:()=>[t.activator&&u(Q,{defaults:h.value},{default:()=>[u(Fn,null,{default:()=>[t.activator({props:c.value,isOpen:n.value})]})]}),u(ke,{transition:{component:At},disabled:!m.value},{default:()=>{var y;return[Oe(u("div",{class:"v-list-group__items",role:"group","aria-labelledby":i.value},[(y=t.default)==null?void 0:y.call(t)]),[[yt,n.value]])]}})]})),{isOpen:n}}}),Gn=H({opacity:[Number,String],...j(),...X()},"VListItemSubtitle"),Yn=N()({name:"VListItemSubtitle",props:Gn(),setup(e,o){let{slots:t}=o;return $(()=>u(e.tag,{class:["v-list-item-subtitle",e.class],style:[{"--v-list-item-subtitle-opacity":e.opacity},e.style]},t)),{}}}),Un=pn("v-list-item-title");function qn(e){return{aspectStyles:f(()=>{const o=Number(e.aspectRatio);return o?{paddingBottom:String(1/o*100)+"%"}:void 0})}}const Ot=H({aspectRatio:[String,Number],contentClass:null,inline:Boolean,...j(),...je()},"VResponsive"),rt=N()({name:"VResponsive",props:Ot(),setup(e,o){let{slots:t}=o;const{aspectStyles:n}=qn(e),{dimensionStyles:a}=Fe(e);return $(()=>{var l;return u("div",{class:["v-responsive",{"v-responsive--inline":e.inline},e.class],style:[a.value,e.style]},[u("div",{class:"v-responsive__sizer",style:n.value},null),(l=t.additional)==null?void 0:l.call(t),t.default&&u("div",{class:["v-responsive__content",e.contentClass]},[t.default()])])}),{}}});function Xn(e,o){if(!ht)return;const t=o.modifiers||{},n=o.value,{handler:a,options:l}=typeof n=="object"?n:{handler:n,options:{}},i=new IntersectionObserver(function(){var g;let s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],m=arguments.length>1?arguments[1]:void 0;const d=(g=e._observe)==null?void 0:g[o.instance.$.uid];if(!d)return;const c=s.some(h=>h.isIntersecting);a&&(!t.quiet||d.init)&&(!t.once||c||d.init)&&a(c,s,m),c&&t.once?Nt(e,o):d.init=!0},l);e._observe=Object(e._observe),e._observe[o.instance.$.uid]={init:!1,observer:i},i.observe(e)}function Nt(e,o){var n;const t=(n=e._observe)==null?void 0:n[o.instance.$.uid];t&&(t.observer.unobserve(e),delete e._observe[o.instance.$.uid])}const Zn={mounted:Xn,unmounted:Nt},Kn=H({absolute:Boolean,alt:String,cover:Boolean,color:String,draggable:{type:[Boolean,String],default:void 0},eager:Boolean,gradient:String,lazySrc:String,options:{type:Object,default:()=>({root:void 0,rootMargin:void 0,threshold:void 0})},sizes:String,src:{type:[String,Object],default:""},crossorigin:String,referrerpolicy:String,srcset:String,position:String,...Ot(),...j(),...re(),...jn()},"VImg"),it=N()({name:"VImg",directives:{intersect:Zn},props:Kn(),emits:{loadstart:e=>!0,load:e=>!0,error:e=>!0},setup(e,o){let{emit:t,slots:n}=o;const{backgroundColorClasses:a,backgroundColorStyles:l}=he(M(e,"color")),{roundedClasses:i}=ue(e),s=Le("VImg"),m=L(""),d=z(),c=L(e.eager?"loading":"idle"),g=L(),h=L(),y=f(()=>e.src&&typeof e.src=="object"?{src:e.src.src,srcset:e.srcset||e.src.srcset,lazySrc:e.lazySrc||e.src.lazySrc,aspect:Number(e.aspectRatio||e.src.aspect||0)}:{src:e.src,srcset:e.srcset,lazySrc:e.lazySrc,aspect:Number(e.aspectRatio||0)}),r=f(()=>y.value.aspect||g.value/h.value||0);G(()=>e.src,()=>{v(c.value!=="idle")}),G(r,(w,V)=>{!w&&V&&d.value&&E(d.value)}),Jt(()=>v());function v(w){if(!(e.eager&&w)&&!(ht&&!w&&!e.eager)){if(c.value="loading",y.value.lazySrc){const V=new Image;V.src=y.value.lazySrc,E(V,null)}y.value.src&&bt(()=>{var V;t("loadstart",((V=d.value)==null?void 0:V.currentSrc)||y.value.src),setTimeout(()=>{var O;if(!s.isUnmounted)if((O=d.value)!=null&&O.complete){if(d.value.naturalWidth||A(),c.value==="error")return;r.value||E(d.value,null),c.value==="loading"&&p()}else r.value||E(d.value),_()})})}}function p(){var w;s.isUnmounted||(_(),E(d.value),c.value="loaded",t("load",((w=d.value)==null?void 0:w.currentSrc)||y.value.src))}function A(){var w;s.isUnmounted||(c.value="error",t("error",((w=d.value)==null?void 0:w.currentSrc)||y.value.src))}function _(){const w=d.value;w&&(m.value=w.currentSrc||w.src)}let B=-1;se(()=>{clearTimeout(B)});function E(w){let V=arguments.length>1&&arguments[1]!==void 0?arguments[1]:100;const O=()=>{if(clearTimeout(B),s.isUnmounted)return;const{naturalHeight:J,naturalWidth:ne}=w;J||ne?(g.value=ne,h.value=J):!w.complete&&c.value==="loading"&&V!=null?B=window.setTimeout(O,V):(w.currentSrc.endsWith(".svg")||w.currentSrc.startsWith("data:image/svg+xml"))&&(g.value=1,h.value=1)};O()}const T=f(()=>({"v-img__img--cover":e.cover,"v-img__img--contain":!e.cover})),b=()=>{var O;if(!y.value.src||c.value==="idle")return null;const w=u("img",{class:["v-img__img",T.value],style:{objectPosition:e.position},src:y.value.src,srcset:y.value.srcset,alt:e.alt,crossorigin:e.crossorigin,referrerpolicy:e.referrerpolicy,draggable:e.draggable,sizes:e.sizes,ref:d,onLoad:p,onError:A},null),V=(O=n.sources)==null?void 0:O.call(n);return u(ke,{transition:e.transition,appear:!0},{default:()=>[Oe(V?u("picture",{class:"v-img__picture"},[V,w]):w,[[yt,c.value==="loaded"]])]})},C=()=>u(ke,{transition:e.transition},{default:()=>[y.value.lazySrc&&c.value!=="loaded"&&u("img",{class:["v-img__img","v-img__img--preload",T.value],style:{objectPosition:e.position},src:y.value.lazySrc,alt:e.alt,crossorigin:e.crossorigin,referrerpolicy:e.referrerpolicy,draggable:e.draggable},null)]}),S=()=>n.placeholder?u(ke,{transition:e.transition,appear:!0},{default:()=>[(c.value==="loading"||c.value==="error"&&!n.error)&&u("div",{class:"v-img__placeholder"},[n.placeholder()])]}):null,k=()=>n.error?u(ke,{transition:e.transition,appear:!0},{default:()=>[c.value==="error"&&u("div",{class:"v-img__error"},[n.error()])]}):null,I=()=>e.gradient?u("div",{class:"v-img__gradient",style:{backgroundImage:`linear-gradient(${e.gradient})`}},null):null,x=L(!1);{const w=G(r,V=>{V&&(requestAnimationFrame(()=>{requestAnimationFrame(()=>{x.value=!0})}),w())})}return $(()=>{const w=rt.filterProps(e);return Oe(u(rt,K({class:["v-img",{"v-img--absolute":e.absolute,"v-img--booting":!x.value},a.value,i.value,e.class],style:[{width:W(e.width==="auto"?g.value:e.width)},l.value,e.style]},w,{aspectRatio:r.value,"aria-label":e.alt,role:e.alt?"img":void 0}),{additional:()=>u(Be,null,[u(b,null,null),u(C,null,null),u(I,null,null),u(S,null,null),u(k,null,null)]),default:n.default}),[[St("intersect"),{handler:v,options:e.options},null,{once:!0}]])}),{currentSrc:m,image:d,state:c,naturalWidth:g,naturalHeight:h}}}),Jn=H({start:Boolean,end:Boolean,icon:le,image:String,text:String,...Se(),...j(),...Je(),...re(),...dn(),...X(),...ee(),...Qe({variant:"flat"})},"VAvatar"),ut=N()({name:"VAvatar",props:Jn(),setup(e,o){let{slots:t}=o;const{themeClasses:n}=te(e),{borderClasses:a}=pe(e),{colorClasses:l,colorStyles:i,variantClasses:s}=wt(e),{densityClasses:m}=et(e),{roundedClasses:d}=ue(e),{sizeClasses:c,sizeStyles:g}=vn(e);return $(()=>u(e.tag,{class:["v-avatar",{"v-avatar--start":e.start,"v-avatar--end":e.end},n.value,a.value,l.value,m.value,d.value,c.value,s.value,e.class],style:[i.value,g.value,e.style]},{default:()=>[t.default?u(Q,{key:"content-defaults",defaults:{VImg:{cover:!0,src:e.image},VIcon:{icon:e.icon}}},{default:()=>[t.default()]}):e.image?u(it,{key:"image",src:e.image,alt:"",cover:!0},null):e.icon?u(Ne,{key:"icon",icon:e.icon},null):e.text,_t(!1,"v-avatar")]})),{}}}),Qn=H({active:{type:Boolean,default:void 0},activeClass:String,activeColor:String,appendAvatar:String,appendIcon:le,baseColor:String,disabled:Boolean,lines:[Boolean,String],link:{type:Boolean,default:void 0},nav:Boolean,prependAvatar:String,prependIcon:le,ripple:{type:[Boolean,Object],default:!0},slim:Boolean,subtitle:[String,Number],title:[String,Number],value:null,onClick:Ie(),onClickOnce:Ie(),...Se(),...j(),...Je(),...je(),...Me(),...re(),...fn(),...X(),...ee(),...Qe({variant:"text"})},"VListItem"),xe=N()({name:"VListItem",directives:{Ripple:mn},props:Qn(),emits:{click:e=>!0},setup(e,o){let{attrs:t,slots:n,emit:a}=o;const l=gn(e,t),i=f(()=>e.value===void 0?l.href.value:e.value),{activate:s,isActivated:m,select:d,isOpen:c,isSelected:g,isIndeterminate:h,isGroupActivator:y,root:r,parent:v,openOnSelect:p,id:A}=Et(i,!1),_=Pt(),B=f(()=>{var P;return e.active!==!1&&(e.active||((P=l.isActive)==null?void 0:P.value)||(r.activatable.value?m.value:g.value))}),E=f(()=>e.link!==!1&&l.isLink.value),T=f(()=>!e.disabled&&e.link!==!1&&(e.link||l.isClickable.value||!!_&&(r.selectable.value||r.activatable.value||e.value!=null))),b=f(()=>e.rounded||e.nav),C=f(()=>e.color??e.activeColor),S=f(()=>({color:B.value?C.value??e.baseColor:e.baseColor,variant:e.variant}));G(()=>{var P;return(P=l.isActive)==null?void 0:P.value},P=>{P&&v.value!=null&&r.open(v.value,!0),P&&p(P)},{immediate:!0});const{themeClasses:k}=te(e),{borderClasses:I}=pe(e),{colorClasses:x,colorStyles:w,variantClasses:V}=wt(S),{densityClasses:O}=et(e),{dimensionStyles:J}=Fe(e),{elevationClasses:ne}=He(e),{roundedClasses:ae}=ue(b),ce=f(()=>e.lines?`v-list-item--${e.lines}-line`:void 0),Z=f(()=>({isActive:B.value,select:d,isOpen:c.value,isSelected:g.value,isIndeterminate:h.value}));function we(P){var U;a("click",P),T.value&&((U=l.navigate)==null||U.call(l,P),!y&&(r.activatable.value?s(!m.value,P):(r.selectable.value||e.value!=null)&&d(!g.value,P)))}function R(P){(P.key==="Enter"||P.key===" ")&&(P.preventDefault(),P.target.dispatchEvent(new MouseEvent("click",P)))}return $(()=>{const P=E.value?"a":e.tag,U=n.title||e.title!=null,de=n.subtitle||e.subtitle!=null,ve=!!(e.appendAvatar||e.appendIcon),Ge=!!(ve||n.append),_e=!!(e.prependAvatar||e.prependIcon),F=!!(_e||n.prepend);return _==null||_.updateHasPrepend(F),e.activeColor&&Qt("active-color",["color","base-color"]),Oe(u(P,K({class:["v-list-item",{"v-list-item--active":B.value,"v-list-item--disabled":e.disabled,"v-list-item--link":T.value,"v-list-item--nav":e.nav,"v-list-item--prepend":!F&&(_==null?void 0:_.hasPrepend.value),"v-list-item--slim":e.slim,[`${e.activeClass}`]:e.activeClass&&B.value},k.value,I.value,x.value,O.value,ne.value,ce.value,ae.value,V.value,e.class],style:[w.value,J.value,e.style],tabindex:T.value?_?-2:0:void 0,onClick:we,onKeydown:T.value&&!E.value&&R},l.linkProps),{default:()=>{var fe;return[_t(T.value||B.value,"v-list-item"),F&&u("div",{key:"prepend",class:"v-list-item__prepend"},[n.prepend?u(Q,{key:"prepend-defaults",disabled:!_e,defaults:{VAvatar:{density:e.density,image:e.prependAvatar},VIcon:{density:e.density,icon:e.prependIcon},VListItemAction:{start:!0}}},{default:()=>{var q;return[(q=n.prepend)==null?void 0:q.call(n,Z.value)]}}):u(Be,null,[e.prependAvatar&&u(ut,{key:"prepend-avatar",density:e.density,image:e.prependAvatar},null),e.prependIcon&&u(Ne,{key:"prepend-icon",density:e.density,icon:e.prependIcon},null)]),u("div",{class:"v-list-item__spacer"},null)]),u("div",{class:"v-list-item__content","data-no-activator":""},[U&&u(Un,{key:"title"},{default:()=>{var q;return[((q=n.title)==null?void 0:q.call(n,{title:e.title}))??e.title]}}),de&&u(Yn,{key:"subtitle"},{default:()=>{var q;return[((q=n.subtitle)==null?void 0:q.call(n,{subtitle:e.subtitle}))??e.subtitle]}}),(fe=n.default)==null?void 0:fe.call(n,Z.value)]),Ge&&u("div",{key:"append",class:"v-list-item__append"},[n.append?u(Q,{key:"append-defaults",disabled:!ve,defaults:{VAvatar:{density:e.density,image:e.appendAvatar},VIcon:{density:e.density,icon:e.appendIcon},VListItemAction:{end:!0}}},{default:()=>{var q;return[(q=n.append)==null?void 0:q.call(n,Z.value)]}}):u(Be,null,[e.appendIcon&&u(Ne,{key:"append-icon",density:e.density,icon:e.appendIcon},null),e.appendAvatar&&u(ut,{key:"append-avatar",density:e.density,image:e.appendAvatar},null)]),u("div",{class:"v-list-item__spacer"},null)])]}}),[[St("ripple"),T.value&&e.ripple]])}),{activate:s,isActivated:m,isGroupActivator:y,isSelected:g,list:_,select:d,root:r,id:A}}}),ea=H({color:String,inset:Boolean,sticky:Boolean,title:String,...j(),...X()},"VListSubheader"),ta=N()({name:"VListSubheader",props:ea(),setup(e,o){let{slots:t}=o;const{textColorClasses:n,textColorStyles:a}=Ct(M(e,"color"));return $(()=>{const l=!!(t.default||e.title);return u(e.tag,{class:["v-list-subheader",{"v-list-subheader--inset":e.inset,"v-list-subheader--sticky":e.sticky},n.value,e.class],style:[{textColorStyles:a},e.style]},{default:()=>{var i;return[l&&u("div",{class:"v-list-subheader__text"},[((i=t.default)==null?void 0:i.call(t))??e.title])]}})}),{}}}),na=H({color:String,inset:Boolean,length:[Number,String],opacity:[Number,String],thickness:[Number,String],vertical:Boolean,...j(),...ee()},"VDivider"),aa=N()({name:"VDivider",props:na(),setup(e,o){let{attrs:t,slots:n}=o;const{themeClasses:a}=te(e),{textColorClasses:l,textColorStyles:i}=Ct(M(e,"color")),s=f(()=>{const m={};return e.length&&(m[e.vertical?"height":"width"]=W(e.length)),e.thickness&&(m[e.vertical?"borderRightWidth":"borderTopWidth"]=W(e.thickness)),m});return $(()=>{const m=u("hr",{class:[{"v-divider":!0,"v-divider--inset":e.inset,"v-divider--vertical":e.vertical},a.value,l.value,e.class],style:[s.value,i.value,{"--v-border-opacity":e.opacity},e.style],"aria-orientation":!t.role||t.role==="separator"?e.vertical?"vertical":"horizontal":void 0,role:`${t.role||"separator"}`},null);return n.default?u("div",{class:["v-divider__wrapper",{"v-divider__wrapper--vertical":e.vertical,"v-divider__wrapper--inset":e.inset}]},[m,u("div",{class:"v-divider__content"},[n.default()]),m]):m}),{}}}),la=H({items:Array,returnObject:Boolean},"VListChildren"),zt=N()({name:"VListChildren",props:la(),setup(e,o){let{slots:t}=o;return Bt(),()=>{var n,a;return((n=t.default)==null?void 0:n.call(t))??((a=e.items)==null?void 0:a.map(l=>{var h,y;let{children:i,props:s,type:m,raw:d}=l;if(m==="divider")return((h=t.divider)==null?void 0:h.call(t,{props:s}))??u(aa,s,null);if(m==="subheader")return((y=t.subheader)==null?void 0:y.call(t,{props:s}))??u(ta,s,null);const c={subtitle:t.subtitle?r=>{var v;return(v=t.subtitle)==null?void 0:v.call(t,{...r,item:d})}:void 0,prepend:t.prepend?r=>{var v;return(v=t.prepend)==null?void 0:v.call(t,{...r,item:d})}:void 0,append:t.append?r=>{var v;return(v=t.append)==null?void 0:v.call(t,{...r,item:d})}:void 0,title:t.title?r=>{var v;return(v=t.title)==null?void 0:v.call(t,{...r,item:d})}:void 0},g=st.filterProps(s);return i?u(st,K({value:s==null?void 0:s.value},g),{activator:r=>{let{props:v}=r;const p={...s,...v,value:e.returnObject?d:s.value};return t.header?t.header({props:p}):u(xe,p,c)},default:()=>u(zt,{items:i,returnObject:e.returnObject},t)}):t.item?t.item({props:s}):u(xe,K(s,{value:e.returnObject?d:s.value}),c)}))}}}),ia=H({items:{type:Array,default:()=>[]},itemTitle:{type:[String,Array,Function],default:"title"},itemValue:{type:[String,Array,Function],default:"value"},itemChildren:{type:[Boolean,String,Array,Function],default:"children"},itemProps:{type:[Boolean,String,Array,Function],default:"props"},returnObject:Boolean,valueComparator:{type:Function,default:en}},"list-items");function oa(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"}function sa(e,o){const t=Ce(o,e.itemType,"item"),n=oa(o)?o:Ce(o,e.itemTitle),a=Ce(o,e.itemValue,void 0),l=Ce(o,e.itemChildren),i=e.itemProps===!0?nn(o,["children"]):Ce(o,e.itemProps),s={title:n,value:a,...i};return{type:t,title:s.title,value:s.value,props:s,children:t==="item"&&l?Rt(e,l):void 0,raw:o}}function Rt(e,o){const t=[];for(const n of o)t.push(sa(e,n));return t}function ra(e){return{items:f(()=>Rt(e,e.items))}}const ua=H({baseColor:String,activeColor:String,activeClass:String,bgColor:String,disabled:Boolean,expandIcon:String,collapseIcon:String,lines:{type:[Boolean,String],default:"one"},slim:Boolean,nav:Boolean,"onClick:open":Ie(),"onClick:select":Ie(),"onUpdate:opened":Ie(),...Rn({selectStrategy:"single-leaf",openStrategy:"list"}),...Se(),...j(),...Je(),...je(),...Me(),itemType:{type:String,default:"type"},...ia(),...re(),...X(),...ee(),...Qe({variant:"text"})},"VList"),ca=N()({name:"VList",props:ua(),emits:{"update:selected":e=>!0,"update:activated":e=>!0,"update:opened":e=>!0,"click:open":e=>!0,"click:activate":e=>!0,"click:select":e=>!0},setup(e,o){let{slots:t}=o;const{items:n}=ra(e),{themeClasses:a}=te(e),{backgroundColorClasses:l,backgroundColorStyles:i}=he(M(e,"bgColor")),{borderClasses:s}=pe(e),{densityClasses:m}=et(e),{dimensionStyles:d}=Fe(e),{elevationClasses:c}=He(e),{roundedClasses:g}=ue(e),{children:h,open:y,parents:r,select:v,getPath:p}=$n(e),A=f(()=>e.lines?`v-list--${e.lines}-line`:void 0),_=M(e,"activeColor"),B=M(e,"baseColor"),E=M(e,"color");Bt(),Ze({VListGroup:{activeColor:_,baseColor:B,color:E,expandIcon:M(e,"expandIcon"),collapseIcon:M(e,"collapseIcon")},VListItem:{activeClass:M(e,"activeClass"),activeColor:_,baseColor:B,color:E,density:M(e,"density"),disabled:M(e,"disabled"),lines:M(e,"lines"),nav:M(e,"nav"),slim:M(e,"slim"),variant:M(e,"variant")}});const T=L(!1),b=z();function C(V){T.value=!0}function S(V){T.value=!1}function k(V){var O;!T.value&&!(V.relatedTarget&&((O=b.value)!=null&&O.contains(V.relatedTarget)))&&w()}function I(V){const O=V.target;if(!(!b.value||["INPUT","TEXTAREA"].includes(O.tagName))){if(V.key==="ArrowDown")w("next");else if(V.key==="ArrowUp")w("prev");else if(V.key==="Home")w("first");else if(V.key==="End")w("last");else return;V.preventDefault()}}function x(V){T.value=!0}function w(V){if(b.value)return tn(b.value,V)}return $(()=>u(e.tag,{ref:b,class:["v-list",{"v-list--disabled":e.disabled,"v-list--nav":e.nav,"v-list--slim":e.slim},a.value,l.value,s.value,m.value,c.value,A.value,g.value,e.class],style:[i.value,d.value,e.style],tabindex:e.disabled||T.value?-1:0,role:"listbox","aria-activedescendant":void 0,onFocusin:C,onFocusout:S,onFocus:k,onKeydown:I,onMousedown:x},{default:()=>[u(zt,{items:n.value,returnObject:e.returnObject},t)]})),{open:y,select:v,focus:w,children:h,parents:r,getPath:p}}});function da(e){let{rootEl:o,isSticky:t,layoutItemStyles:n}=e;const a=L(!1),l=L(0),i=f(()=>{const d=typeof a.value=="boolean"?"top":a.value;return[t.value?{top:"auto",bottom:"auto",height:void 0}:void 0,a.value?{[d]:W(l.value)}:{top:n.value.top}]});Te(()=>{G(t,d=>{d?window.addEventListener("scroll",m,{passive:!0}):window.removeEventListener("scroll",m)},{immediate:!0})}),se(()=>{window.removeEventListener("scroll",m)});let s=0;function m(){const d=s>window.scrollY?"up":"down",c=o.value.getBoundingClientRect(),g=parseFloat(n.value.top??0),h=window.scrollY-Math.max(0,l.value-g),y=c.height+Math.max(l.value,g)-window.scrollY-window.innerHeight,r=parseFloat(getComputedStyle(o.value).getPropertyValue("--v-body-scroll-y"))||0;c.height0;t--){if(e[t].t===e[t-1].t)continue;const n=ct(o),a=(e[t].d-e[t-1].d)/(e[t].t-e[t-1].t);o+=(a-n)*Math.abs(a),t===e.length-1&&(o*=.5)}return ct(o)*1e3}function ma(){const e={};function o(a){Array.from(a.changedTouches).forEach(l=>{(e[l.identifier]??(e[l.identifier]=new an(fa))).push([a.timeStamp,l])})}function t(a){Array.from(a.changedTouches).forEach(l=>{delete e[l.identifier]})}function n(a){var d;const l=(d=e[a])==null?void 0:d.values().reverse();if(!l)throw new Error(`No samples for touch id ${a}`);const i=l[0],s=[],m=[];for(const c of l){if(i[0]-c[0]>va)break;s.push({t:c[0],d:c[1].clientX}),m.push({t:c[0],d:c[1].clientY})}return{x:dt(s),y:dt(m),get direction(){const{x:c,y:g}=this,[h,y]=[Math.abs(c),Math.abs(g)];return h>y&&c>=0?"right":h>y&&c<=0?"left":y>h&&g>=0?"down":y>h&&g<=0?"up":ga()}}}return{addMovement:o,endTouch:t,getVelocity:n}}function ga(){throw new Error}function ya(e){let{el:o,isActive:t,isTemporary:n,width:a,touchless:l,position:i}=e;Te(()=>{window.addEventListener("touchstart",_,{passive:!0}),window.addEventListener("touchmove",B,{passive:!1}),window.addEventListener("touchend",E,{passive:!0})}),se(()=>{window.removeEventListener("touchstart",_),window.removeEventListener("touchmove",B),window.removeEventListener("touchend",E)});const s=f(()=>["left","right"].includes(i.value)),{addMovement:m,endTouch:d,getVelocity:c}=ma();let g=!1;const h=L(!1),y=L(0),r=L(0);let v;function p(b,C){return(i.value==="left"?b:i.value==="right"?document.documentElement.clientWidth-b:i.value==="top"?b:i.value==="bottom"?document.documentElement.clientHeight-b:me())-(C?a.value:0)}function A(b){let C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;const S=i.value==="left"?(b-r.value)/a.value:i.value==="right"?(document.documentElement.clientWidth-b-r.value)/a.value:i.value==="top"?(b-r.value)/a.value:i.value==="bottom"?(document.documentElement.clientHeight-b-r.value)/a.value:me();return C?Math.max(0,Math.min(1,S)):S}function _(b){if(l.value)return;const C=b.changedTouches[0].clientX,S=b.changedTouches[0].clientY,k=25,I=i.value==="left"?Cdocument.documentElement.clientWidth-k:i.value==="top"?Sdocument.documentElement.clientHeight-k:me(),x=t.value&&(i.value==="left"?Cdocument.documentElement.clientWidth-a.value:i.value==="top"?Sdocument.documentElement.clientHeight-a.value:me());(I||x||t.value&&n.value)&&(v=[C,S],r.value=p(s.value?C:S,t.value),y.value=A(s.value?C:S),g=r.value>-20&&r.value<80,d(b),m(b))}function B(b){const C=b.changedTouches[0].clientX,S=b.changedTouches[0].clientY;if(g){if(!b.cancelable){g=!1;return}const I=Math.abs(C-v[0]),x=Math.abs(S-v[1]);(s.value?I>x&&I>3:x>I&&x>3)?(h.value=!0,g=!1):(s.value?x:I)>3&&(g=!1)}if(!h.value)return;b.preventDefault(),m(b);const k=A(s.value?C:S,!1);y.value=Math.max(0,Math.min(1,k)),k>1?r.value=p(s.value?C:S,!0):k<0&&(r.value=p(s.value?C:S,!1))}function E(b){if(g=!1,!h.value)return;m(b),h.value=!1;const C=c(b.changedTouches[0].identifier),S=Math.abs(C.x),k=Math.abs(C.y);(s.value?S>k&&S>400:k>S&&k>3)?t.value=C.direction===({left:"right",right:"left",top:"down",bottom:"up"}[i.value]||me()):t.value=y.value>.5}const T=f(()=>h.value?{transform:i.value==="left"?`translateX(calc(-100% + ${y.value*a.value}px))`:i.value==="right"?`translateX(calc(100% - ${y.value*a.value}px))`:i.value==="top"?`translateY(calc(-100% + ${y.value*a.value}px))`:i.value==="bottom"?`translateY(calc(100% - ${y.value*a.value}px))`:me(),transition:"none"}:void 0);return ye(h,()=>{var S,k;const b=((S=o.value)==null?void 0:S.style.transform)??null,C=((k=o.value)==null?void 0:k.style.transition)??null;qe(()=>{var I,x,w,V;(x=o.value)==null||x.style.setProperty("transform",((I=T.value)==null?void 0:I.transform)||"none"),(V=o.value)==null||V.style.setProperty("transition",((w=T.value)==null?void 0:w.transition)||null)}),ln(()=>{var I,x;(I=o.value)==null||I.style.setProperty("transform",b),(x=o.value)==null||x.style.setProperty("transition",C)})}),{isDragging:h,dragProgress:y,dragStyles:T}}function me(){throw new Error}const ha=H({closeDelay:[Number,String],openDelay:[Number,String]},"delay");function ba(e,o){let t=()=>{};function n(i){t==null||t();const s=Number(i?e.openDelay:e.closeDelay);return new Promise(m=>{t=on(s,()=>{o==null||o(i),m(i)})})}function a(){return n(!0)}function l(){return n(!1)}return{clearDelay:t,runOpenDelay:a,runCloseDelay:l}}function Sa(){const o=Le("useScopeId").vnode.scopeId;return{scopeId:o?{[o]:""}:void 0}}const pa=["start","end","left","right","top","bottom"],wa=H({color:String,disableResizeWatcher:Boolean,disableRouteWatcher:Boolean,expandOnHover:Boolean,floating:Boolean,modelValue:{type:Boolean,default:null},permanent:Boolean,rail:{type:Boolean,default:null},railWidth:{type:[Number,String],default:56},scrim:{type:[Boolean,String],default:!0},image:String,temporary:Boolean,persistent:Boolean,touchless:Boolean,width:{type:[Number,String],default:256},location:{type:String,default:"start",validator:e=>pa.includes(e)},sticky:Boolean,...Se(),...j(),...ha(),...sn({mobile:null}),...Me(),...tt(),...re(),...X({tag:"nav"}),...ee()},"VNavigationDrawer"),_a=N()({name:"VNavigationDrawer",props:wa(),emits:{"update:modelValue":e=>!0,"update:rail":e=>!0},setup(e,o){let{attrs:t,emit:n,slots:a}=o;const{isRtl:l}=Ke(),{themeClasses:i}=te(e),{borderClasses:s}=pe(e),{backgroundColorClasses:m,backgroundColorStyles:d}=he(M(e,"color")),{elevationClasses:c}=He(e),{displayClasses:g,mobile:h}=rn(e),{roundedClasses:y}=ue(e),r=yn(),v=Ve(e,"modelValue",null,R=>!!R),{ssrBootStyles:p}=We(),{scopeId:A}=Sa(),_=z(),B=L(!1),{runOpenDelay:E,runCloseDelay:T}=ba(e,R=>{B.value=R}),b=f(()=>e.rail&&e.expandOnHover&&B.value?Number(e.width):Number(e.rail?e.railWidth:e.width)),C=f(()=>hn(e.location,l.value)),S=f(()=>e.persistent),k=f(()=>!e.permanent&&(h.value||e.temporary)),I=f(()=>e.sticky&&!k.value&&C.value!=="bottom");ye(()=>e.expandOnHover&&e.rail!=null,()=>{G(B,R=>n("update:rail",!R))}),ye(()=>!e.disableResizeWatcher,()=>{G(k,R=>!e.permanent&&bt(()=>v.value=!R))}),ye(()=>!e.disableRouteWatcher&&!!r,()=>{G(r.currentRoute,()=>k.value&&(v.value=!1))}),G(()=>e.permanent,R=>{R&&(v.value=!0)}),e.modelValue==null&&!k.value&&(v.value=e.permanent||!h.value);const{isDragging:x,dragProgress:w}=ya({el:_,isActive:v,isTemporary:k,width:b,touchless:M(e,"touchless"),position:C}),V=f(()=>{const R=k.value?0:e.rail&&e.expandOnHover?Number(e.railWidth):b.value;return x.value?R*w.value:R}),O=f(()=>["top","bottom"].includes(e.location)?0:b.value),{layoutItemStyles:J,layoutItemScrimStyles:ne}=nt({id:e.name,order:f(()=>parseInt(e.order,10)),position:C,layoutSize:V,elementSize:O,active:f(()=>v.value||x.value),disableTransitions:f(()=>x.value),absolute:f(()=>e.absolute||I.value&&typeof ae.value!="string")}),{isStuck:ae,stickyStyles:ce}=da({rootEl:_,isSticky:I,layoutItemStyles:J}),Z=he(f(()=>typeof e.scrim=="string"?e.scrim:null)),we=f(()=>({...x.value?{opacity:w.value*.2,transition:"none"}:void 0,...ne.value}));return Ze({VList:{bgColor:"transparent"}}),$(()=>{const R=a.image||e.image;return u(Be,null,[u(e.tag,K({ref:_,onMouseenter:E,onMouseleave:T,class:["v-navigation-drawer",`v-navigation-drawer--${C.value}`,{"v-navigation-drawer--expand-on-hover":e.expandOnHover,"v-navigation-drawer--floating":e.floating,"v-navigation-drawer--is-hovering":B.value,"v-navigation-drawer--rail":e.rail,"v-navigation-drawer--temporary":k.value,"v-navigation-drawer--persistent":S.value,"v-navigation-drawer--active":v.value,"v-navigation-drawer--sticky":I.value},i.value,m.value,s.value,g.value,c.value,y.value,e.class],style:[d.value,J.value,p.value,ce.value,e.style,["top","bottom"].includes(C.value)?{height:"auto"}:{}]},A,t),{default:()=>{var P,U,de;return[R&&u("div",{key:"image",class:"v-navigation-drawer__img"},[a.image?u(Q,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{alt:"",cover:!0,height:"inherit",src:e.image}}},a.image):u(it,{key:"image-img",alt:"",cover:!0,height:"inherit",src:e.image},null)]),a.prepend&&u("div",{class:"v-navigation-drawer__prepend"},[(P=a.prepend)==null?void 0:P.call(a)]),u("div",{class:"v-navigation-drawer__content"},[(U=a.default)==null?void 0:U.call(a)]),a.append&&u("div",{class:"v-navigation-drawer__append"},[(de=a.append)==null?void 0:de.call(a)])]}}),u(De,{name:"fade-transition"},{default:()=>[k.value&&(x.value||v.value)&&!!e.scrim&&u("div",K({class:["v-navigation-drawer__scrim",Z.backgroundColorClasses.value],style:[we.value,Z.backgroundColorStyles.value],onClick:()=>{S.value||(v.value=!1)}},A),null)]})])}),{isStuck:ae}}}),Ca={__name:"AppNavigation",setup(e){const o=z(!1),t=z(!1);return(n,a)=>(Ae(),$e(_a,{modelValue:o.value,"onUpdate:modelValue":a[0]||(a[0]=l=>o.value=l),rail:t.value,permanent:"",onClick:a[1]||(a[1]=l=>t.value=!1)},{default:ie(()=>[u(ca,{density:"compact",nav:""},{default:ie(()=>[u(xe,{"prepend-icon":"mdi-home-city",title:"Home",value:"home"}),u(xe,{"prepend-icon":"mdi-account",title:"My Account",value:"account"}),u(xe,{"prepend-icon":"mdi-account-group-outline",title:"Users",value:"users"})]),_:1})]),_:1},8,["modelValue","rail"]))}},$t=H({text:String,...j(),...X()},"VToolbarTitle"),Dt=N()({name:"VToolbarTitle",props:$t(),setup(e,o){let{slots:t}=o;return $(()=>{const n=!!(t.default||t.text||e.text);return u(e.tag,{class:["v-toolbar-title",e.class],style:e.style},{default:()=>{var a;return[n&&u("div",{class:"v-toolbar-title__placeholder"},[t.text?t.text():e.text,(a=t.default)==null?void 0:a.call(t)])]}})}),{}}}),ka=[null,"prominent","default","comfortable","compact"],jt=H({absolute:Boolean,collapse:Boolean,color:String,density:{type:String,default:"default",validator:e=>ka.includes(e)},extended:Boolean,extensionHeight:{type:[Number,String],default:48},flat:Boolean,floating:Boolean,height:{type:[Number,String],default:64},image:String,title:String,...Se(),...j(),...Me(),...re(),...X({tag:"header"}),...ee()},"VToolbar"),vt=N()({name:"VToolbar",props:jt(),setup(e,o){var y;let{slots:t}=o;const{backgroundColorClasses:n,backgroundColorStyles:a}=he(M(e,"color")),{borderClasses:l}=pe(e),{elevationClasses:i}=He(e),{roundedClasses:s}=ue(e),{themeClasses:m}=te(e),{rtlClasses:d}=Ke(),c=L(!!(e.extended||(y=t.extension)!=null&&y.call(t))),g=f(()=>parseInt(Number(e.height)+(e.density==="prominent"?Number(e.height):0)-(e.density==="comfortable"?8:0)-(e.density==="compact"?16:0),10)),h=f(()=>c.value?parseInt(Number(e.extensionHeight)+(e.density==="prominent"?Number(e.extensionHeight):0)-(e.density==="comfortable"?4:0)-(e.density==="compact"?8:0),10):0);return Ze({VBtn:{variant:"text"}}),$(()=>{var A;const r=!!(e.title||t.title),v=!!(t.image||e.image),p=(A=t.extension)==null?void 0:A.call(t);return c.value=!!(e.extended||p),u(e.tag,{class:["v-toolbar",{"v-toolbar--absolute":e.absolute,"v-toolbar--collapse":e.collapse,"v-toolbar--flat":e.flat,"v-toolbar--floating":e.floating,[`v-toolbar--density-${e.density}`]:!0},n.value,l.value,i.value,s.value,m.value,d.value,e.class],style:[a.value,e.style]},{default:()=>[v&&u("div",{key:"image",class:"v-toolbar__image"},[t.image?u(Q,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{cover:!0,src:e.image}}},t.image):u(it,{key:"image-img",cover:!0,src:e.image},null)]),u(Q,{defaults:{VTabs:{height:W(g.value)}}},{default:()=>{var _,B,E;return[u("div",{class:"v-toolbar__content",style:{height:W(g.value)}},[t.prepend&&u("div",{class:"v-toolbar__prepend"},[(_=t.prepend)==null?void 0:_.call(t)]),r&&u(Dt,{key:"title",text:e.title},{text:t.title}),(B=t.default)==null?void 0:B.call(t),t.append&&u("div",{class:"v-toolbar__append"},[(E=t.append)==null?void 0:E.call(t)])])]}}),u(Q,{defaults:{VTabs:{height:W(h.value)}}},{default:()=>[u(At,null,{default:()=>[c.value&&u("div",{class:"v-toolbar__extension",style:{height:W(h.value)}},[p])]})]})]})}),{contentHeight:g,extensionHeight:h}}}),Va=H({scrollTarget:{type:String},scrollThreshold:{type:[String,Number],default:300}},"scroll");function Ia(e){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const{canScroll:t}=o;let n=0,a=0;const l=z(null),i=L(0),s=L(0),m=L(0),d=L(!1),c=L(!1),g=f(()=>Number(e.scrollThreshold)),h=f(()=>un((g.value-i.value)/g.value||0)),y=()=>{const r=l.value;if(!r||t&&!t.value)return;n=i.value,i.value="window"in r?r.pageYOffset:r.scrollTop;const v=r instanceof Window?document.documentElement.scrollHeight:r.scrollHeight;if(a!==v){a=v;return}c.value=i.value{s.value=s.value||i.value}),G(d,()=>{s.value=0}),Te(()=>{G(()=>e.scrollTarget,r=>{var p;const v=r?document.querySelector(r):window;v&&v!==l.value&&((p=l.value)==null||p.removeEventListener("scroll",y),l.value=v,l.value.addEventListener("scroll",y,{passive:!0}))},{immediate:!0})}),se(()=>{var r;(r=l.value)==null||r.removeEventListener("scroll",y)}),t&&G(t,y,{immediate:!0}),{scrollThreshold:g,currentScroll:i,currentThreshold:m,isScrollActive:d,scrollRatio:h,isScrollingUp:c,savedScroll:s}}const xa=H({scrollBehavior:String,modelValue:{type:Boolean,default:!0},location:{type:String,default:"top",validator:e=>["top","bottom"].includes(e)},...jt(),...tt(),...Va(),height:{type:[Number,String],default:64}},"VAppBar"),Aa=N()({name:"VAppBar",props:xa(),emits:{"update:modelValue":e=>!0},setup(e,o){let{slots:t}=o;const n=z(),a=Ve(e,"modelValue"),l=f(()=>{var B;const _=new Set(((B=e.scrollBehavior)==null?void 0:B.split(" "))??[]);return{hide:_.has("hide"),fullyHide:_.has("fully-hide"),inverted:_.has("inverted"),collapse:_.has("collapse"),elevate:_.has("elevate"),fadeImage:_.has("fade-image")}}),i=f(()=>{const _=l.value;return _.hide||_.fullyHide||_.inverted||_.collapse||_.elevate||_.fadeImage||!a.value}),{currentScroll:s,scrollThreshold:m,isScrollingUp:d,scrollRatio:c}=Ia(e,{canScroll:i}),g=f(()=>l.value.hide||l.value.fullyHide),h=f(()=>e.collapse||l.value.collapse&&(l.value.inverted?c.value>0:c.value===0)),y=f(()=>e.flat||l.value.fullyHide&&!a.value||l.value.elevate&&(l.value.inverted?s.value>0:s.value===0)),r=f(()=>l.value.fadeImage?l.value.inverted?1-c.value:c.value:void 0),v=f(()=>{var E,T;if(l.value.hide&&l.value.inverted)return 0;const _=((E=n.value)==null?void 0:E.contentHeight)??0,B=((T=n.value)==null?void 0:T.extensionHeight)??0;return g.value?s.value!!e.scrollBehavior),()=>{qe(()=>{g.value?l.value.inverted?a.value=s.value>m.value:a.value=d.value||s.valueparseInt(e.order,10)),position:M(e,"location"),layoutSize:v,elementSize:L(void 0),active:a,absolute:M(e,"absolute")});return $(()=>{const _=vt.filterProps(e);return u(vt,K({ref:n,class:["v-app-bar",{"v-app-bar--bottom":e.location==="bottom"},e.class],style:[{...A.value,"--v-toolbar-image-opacity":r.value,height:void 0,...p.value},e.style]},_,{collapse:h.value,flat:y.value}),t)}),{}}}),Ba=H({...bn({icon:"$menu",variant:"text"})},"VAppBarNavIcon"),Pa=N()({name:"VAppBarNavIcon",props:Ba(),setup(e,o){let{slots:t}=o;return $(()=>u(Sn,K(e,{class:["v-app-bar-nav-icon"]}),t)),{}}}),La=N()({name:"VAppBarTitle",props:$t(),setup(e,o){let{slots:t}=o;return $(()=>u(Dt,K(e,{class:"v-app-bar-title"}),t)),{}}}),Ta={__name:"AppHeader",setup(e){return ge({initials:"JD",fullName:"John Doe",email:"john.doe@doe.com"}),(o,t)=>(Ae(),$e(Aa,{class:"px-1"},{default:ie(()=>[u(Pa,{icon:"mdi-menu"}),u(La,null,{default:ie(()=>t[0]||(t[0]=[Ye("Smorrery WebApp")])),_:1})]),_:1}))}},Ma=H({...j(),...wn({fullHeight:!0}),...ee()},"VApp"),Ha=N()({name:"VApp",props:Ma(),setup(e,o){let{slots:t}=o;const n=te(e),{layoutClasses:a,getLayoutItem:l,items:i,layoutRef:s}=kn(e),{rtlClasses:m}=Ke();return $(()=>{var d;return u("div",{ref:s,class:["v-application",n.themeClasses.value,a.value,m.value,e.class],style:[e.style]},[u("div",{class:"v-application__wrap"},[(d=t.default)==null?void 0:d.call(t)])])}),{getLayoutItem:l,items:i,theme:n}}}),Ea=H({scrollable:Boolean,...j(),...je(),...X({tag:"main"})},"VMain"),Oa=N()({name:"VMain",props:Ea(),setup(e,o){let{slots:t}=o;const{dimensionStyles:n}=Fe(e),{mainStyles:a}=_n(),{ssrBootStyles:l}=We();return $(()=>u(e.tag,{class:["v-main",{"v-main--scrollable":e.scrollable},e.class],style:[a.value,l.value,n.value,e.style]},{default:()=>{var i,s;return[e.scrollable?u("div",{class:"v-main__scroller"},[(i=t.default)==null?void 0:i.call(t)]):(s=t.default)==null?void 0:s.call(t)]}})),{}}}),Na={};function za(e,o){const t=Ta,n=Ca,a=cn("router-view"),l=Pn;return Ae(),$e(Ha,null,{default:ie(()=>[u(Oa,null,{default:ie(()=>[u(t),u(n),u(a)]),_:1}),u(l)]),_:1})}const Da=Vt(Na,[["render",za]]);export{Da as default}; diff --git a/assets/default-UyMn9SWA.js b/assets/default-UyMn9SWA.js deleted file mode 100644 index 3a00758..0000000 --- a/assets/default-UyMn9SWA.js +++ /dev/null @@ -1 +0,0 @@ -import{i as ot,p as L,g as R,c as Pn,a as Ft,h as Je,b as se,t as Tn,r as O,I as An,o as ne,w as W,d as Wt,e as ce,f as d,j as oe,k as M,s as N,l as Pe,m as de,n as Gt,q as mt,u as En,v as $n,x as he,y as Ve,z as Yt,A as Bt,B as Nn,C as Rn,D as zn,E as Z,F as J,G as T,H as xe,J as c,K as Qe,L as ie,M as Mn,N as On,T as Hn,O as ze,P as et,Q as ye,R as Dn,S as Le,U as jn,V as Xe,W as rt,X as Fn,Y as gt,Z as tt,_ as Wn,$ as Fe,a0 as F,a1 as yt,a2 as Ie,a3 as K,a4 as Gn,a5 as Me,a6 as Ut,a7 as ht,a8 as Yn,a9 as bt,aa as qt,ab as ut,ac as Un,ad as Pt,ae as St,af as qn,ag as Tt,ah as Ne,ai as Xn,aj as Kn,ak as Ee,al as Zn,am as Jn,an as Qn,ao as ea,ap as ta,aq as nt,ar as na,as as aa,at as la,au as ia}from"./index-DVsZ779A.js";const sa=["top","bottom"],oa=["start","end","left","right"];function ra(e,l){let[t,n]=e.split(" ");return n||(n=ot(sa,t)?"start":ot(oa,t)?"top":"center"),{side:ct(t,l),align:ct(n,l)}}function ct(e,l){return e==="start"?l?"right":"left":e==="end"?l?"left":"right":e}const D=L({class:[String,Array,Object],style:{type:[String,Array,Object],default:null}},"component");function ua(e){let l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"div",t=arguments.length>2?arguments[2]:void 0;return R()({name:t??Pn(Ft(e.replace(/__/g,"-"))),props:{tag:{type:String,default:l},...D()},setup(n,a){let{slots:i}=a;return()=>{var s;return Je(n.tag,{class:[e,n.class],style:n.style},(s=i.default)==null?void 0:s.call(i))}}})}function H(e){const l=se("useRender");l.render=e}function Ct(e){let l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"content";const t=Tn(),n=O();if(An){const a=new ResizeObserver(i=>{e==null||e(i,a),i.length&&(l==="content"?n.value=i[0].contentRect:n.value=i[0].target.getBoundingClientRect())});ne(()=>{a.disconnect()}),W(()=>t.el,(i,s)=>{s&&(a.unobserve(s),n.value=void 0),i&&a.observe(i)},{flush:"post"})}return{resizeRef:t,contentRect:Wt(n)}}const Ke=Symbol.for("vuetify:layout"),Xt=Symbol.for("vuetify:layout-item"),At=1e3,ca=L({overlaps:{type:Array,default:()=>[]},fullHeight:Boolean},"layout"),pt=L({name:{type:String},order:{type:[Number,String],default:0},absolute:Boolean},"layout-item");function da(){const e=ce(Ke);if(!e)throw new Error("[Vuetify] Could not find injected layout");return{getLayoutItem:e.getLayoutItem,mainRect:e.mainRect,mainStyles:e.mainStyles}}function wt(e){const l=ce(Ke);if(!l)throw new Error("[Vuetify] Could not find injected layout");const t=e.id??`layout-item-${mt()}`,n=se("useLayoutItem");de(Xt,{id:t});const a=N(!1);En(()=>a.value=!0),$n(()=>a.value=!1);const{layoutItemStyles:i,layoutItemScrimStyles:s}=l.register(n,{...e,active:d(()=>a.value?!1:e.active.value),id:t});return ne(()=>l.unregister(t)),{layoutItemStyles:i,layoutRect:l.layoutRect,layoutItemScrimStyles:s}}const va=(e,l,t,n)=>{let a={top:0,left:0,right:0,bottom:0};const i=[{id:"",layer:{...a}}];for(const s of e){const o=l.get(s),v=t.get(s),y=n.get(s);if(!o||!v||!y)continue;const g={...a,[o.value]:parseInt(a[o.value],10)+(y.value?parseInt(v.value,10):0)};i.push({id:s,layer:g}),a=g}return i};function fa(e){const l=ce(Ke,null),t=d(()=>l?l.rootZIndex.value-100:At),n=O([]),a=oe(new Map),i=oe(new Map),s=oe(new Map),o=oe(new Map),v=oe(new Map),{resizeRef:y,contentRect:g}=Ct(),h=d(()=>{const S=new Map,_=e.overlaps??[];for(const w of _.filter(V=>V.includes(":"))){const[V,B]=w.split(":");if(!n.value.includes(V)||!n.value.includes(B))continue;const x=a.get(V),C=a.get(B),I=i.get(V),z=i.get(B);!x||!C||!I||!z||(S.set(B,{position:x.value,amount:parseInt(I.value,10)}),S.set(V,{position:C.value,amount:-parseInt(z.value,10)}))}return S}),f=d(()=>{const S=[...new Set([...s.values()].map(w=>w.value))].sort((w,V)=>w-V),_=[];for(const w of S){const V=n.value.filter(B=>{var x;return((x=s.get(B))==null?void 0:x.value)===w});_.push(...V)}return va(_,a,i,o)}),m=d(()=>!Array.from(v.values()).some(S=>S.value)),r=d(()=>f.value[f.value.length-1].layer),u=d(()=>({"--v-layout-left":M(r.value.left),"--v-layout-right":M(r.value.right),"--v-layout-top":M(r.value.top),"--v-layout-bottom":M(r.value.bottom),...m.value?void 0:{transition:"none"}})),b=d(()=>f.value.slice(1).map((S,_)=>{let{id:w}=S;const{layer:V}=f.value[_],B=i.get(w),x=a.get(w);return{id:w,...V,size:Number(B.value),position:x.value}})),k=S=>b.value.find(_=>_.id===S),p=se("createLayout"),P=N(!1);Pe(()=>{P.value=!0}),de(Ke,{register:(S,_)=>{let{id:w,order:V,position:B,layoutSize:x,elementSize:C,active:I,disableTransitions:z,absolute:X}=_;s.set(w,V),a.set(w,B),i.set(w,x),o.set(w,I),z&&v.set(w,z);const me=Gt(Xt,p==null?void 0:p.vnode).indexOf(S);me>-1?n.value.splice(me,0,w):n.value.push(w);const Ce=d(()=>b.value.findIndex(A=>A.id===w)),le=d(()=>t.value+f.value.length*2-Ce.value*2),Te=d(()=>{const A=B.value==="left"||B.value==="right",Q=B.value==="right",pe=B.value==="bottom",we=C.value??x.value,st=we===0?"%":"px",Ae={[B.value]:0,zIndex:le.value,transform:`translate${A?"X":"Y"}(${(I.value?0:-(we===0?100:we))*(Q||pe?-1:1)}${st})`,position:X.value||t.value!==At?"absolute":"fixed",...m.value?void 0:{transition:"none"}};if(!P.value)return Ae;const Y=b.value[Ce.value];if(!Y)throw new Error(`[Vuetify] Could not find layout item "${w}"`);const _e=h.value.get(w);return _e&&(Y[_e.position]+=_e.amount),{...Ae,height:A?`calc(100% - ${Y.top}px - ${Y.bottom}px)`:C.value?`${C.value}px`:void 0,left:Q?void 0:`${Y.left}px`,right:Q?`${Y.right}px`:void 0,top:B.value!=="bottom"?`${Y.top}px`:void 0,bottom:B.value!=="top"?`${Y.bottom}px`:void 0,width:A?C.value?`${C.value}px`:void 0:`calc(100% - ${Y.left}px - ${Y.right}px)`}}),j=d(()=>({zIndex:le.value-1}));return{layoutItemStyles:Te,layoutItemScrimStyles:j,zIndex:le}},unregister:S=>{s.delete(S),a.delete(S),i.delete(S),o.delete(S),v.delete(S),n.value=n.value.filter(_=>_!==S)},mainRect:r,mainStyles:u,getLayoutItem:k,items:b,layoutRect:g,rootZIndex:t});const $=d(()=>["v-layout",{"v-layout--full-height":e.fullHeight}]),E=d(()=>({zIndex:l?t.value:void 0,position:l?"relative":void 0,overflow:l?"hidden":void 0}));return{layoutClasses:$,layoutStyles:E,getLayoutItem:k,items:b,layoutRect:g,layoutRef:y}}const Kt=(e,l)=>{const t=e.__vccOpts||e;for(const[n,a]of l)t[n]=a;return t},ve=L({border:[Boolean,Number,String]},"border");function fe(e){let l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:he();return{borderClasses:d(()=>{const n=Ve(e)?e.value:e.border,a=[];if(n===!0||n==="")a.push(`${l}--border`);else if(typeof n=="string"||n===0)for(const i of String(n).split(" "))a.push(`border-${i}`);return a})}}function _t(e){return Yt(()=>{const l=[],t={};if(e.value.background)if(Bt(e.value.background)){if(t.backgroundColor=e.value.background,!e.value.text&&Nn(e.value.background)){const n=Rn(e.value.background);if(n.a==null||n.a===1){const a=zn(n);t.color=a,t.caretColor=a}}}else l.push(`bg-${e.value.background}`);return e.value.text&&(Bt(e.value.text)?(t.color=e.value.text,t.caretColor=e.value.text):l.push(`text-${e.value.text}`)),{colorClasses:l,colorStyles:t}})}function Oe(e,l){const t=d(()=>({text:Ve(e)?e.value:null})),{colorClasses:n,colorStyles:a}=_t(t);return{textColorClasses:n,textColorStyles:a}}function Be(e,l){const t=d(()=>({background:Ve(e)?e.value:null})),{colorClasses:n,colorStyles:a}=_t(t);return{backgroundColorClasses:n,backgroundColorStyles:a}}const be=L({elevation:{type:[Number,String],validator(e){const l=parseInt(e);return!isNaN(l)&&l>=0&&l<=24}}},"elevation");function Se(e){return{elevationClasses:d(()=>{const t=Ve(e)?e.value:e.elevation,n=[];return t==null||n.push(`elevation-${t}`),n})}}const re=L({rounded:{type:[Boolean,Number,String],default:void 0},tile:Boolean},"rounded");function ue(e){let l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:he();return{roundedClasses:d(()=>{const n=Ve(e)?e.value:e.rounded,a=Ve(e)?e.value:e.tile,i=[];if(n===!0||n==="")i.push(`${l}--rounded`);else if(typeof n=="string"||n===0)for(const s of String(n).split(" "))i.push(`rounded-${s}`);else(a||n===!1)&&i.push("rounded-0");return i})}}const G=L({tag:{type:String,default:"div"}},"tag"),ma=L({app:Boolean,color:String,height:{type:[Number,String],default:"auto"},...ve(),...D(),...be(),...pt(),...re(),...G({tag:"footer"}),...Z()},"VFooter"),ga=R()({name:"VFooter",props:ma(),setup(e,l){let{slots:t}=l;const n=O(),{themeClasses:a}=J(e),{backgroundColorClasses:i,backgroundColorStyles:s}=Be(T(e,"color")),{borderClasses:o}=fe(e),{elevationClasses:v}=Se(e),{roundedClasses:y}=ue(e),g=N(32),{resizeRef:h}=Ct(m=>{m.length&&(g.value=m[0].target.clientHeight)}),f=d(()=>e.height==="auto"?g.value:parseInt(e.height,10));return xe(()=>e.app,()=>{const m=wt({id:e.name,order:d(()=>parseInt(e.order,10)),position:d(()=>"bottom"),layoutSize:f,elementSize:d(()=>e.height==="auto"?void 0:f.value),active:d(()=>e.app),absolute:T(e,"absolute")});Qe(()=>{n.value=m.layoutItemStyles.value})}),H(()=>c(e.tag,{ref:h,class:["v-footer",a.value,i.value,o.value,v.value,y.value,e.class],style:[s.value,e.app?n.value:{height:M(e.height)},e.style]},t)),{}}}),ya=["x-small","small","default","large","x-large"],at=L({size:{type:[String,Number],default:"default"}},"size");function lt(e){let l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:he();return Yt(()=>{let t,n;return ot(ya,e.size)?t=`${l}--size-${e.size}`:e.size&&(n={width:M(e.size),height:M(e.size)}),{sizeClasses:t,sizeStyles:n}})}const ha=L({color:String,disabled:Boolean,start:Boolean,end:Boolean,icon:ie,...D(),...at(),...G({tag:"i"}),...Z()},"VIcon"),ge=R()({name:"VIcon",props:ha(),setup(e,l){let{attrs:t,slots:n}=l;const a=O(),{themeClasses:i}=J(e),{iconData:s}=Mn(d(()=>a.value||e.icon)),{sizeClasses:o}=lt(e),{textColorClasses:v,textColorStyles:y}=Oe(T(e,"color"));return H(()=>{var f,m;const g=(f=n.default)==null?void 0:f.call(n);g&&(a.value=(m=On(g).filter(r=>r.type===Hn&&r.children&&typeof r.children=="string")[0])==null?void 0:m.children);const h=!!(t.onClick||t.onClickOnce);return c(s.value.component,{tag:e.tag,icon:s.value.icon,class:["v-icon","notranslate",i.value,o.value,v.value,{"v-icon--clickable":h,"v-icon--disabled":e.disabled,"v-icon--start":e.start,"v-icon--end":e.end},e.class],style:[o.value?void 0:{fontSize:M(e.size),height:M(e.size),width:M(e.size)},y.value,e.style],role:h?"button":void 0,"aria-hidden":!h,tabindex:h?e.disabled?-1:0:void 0},{default:()=>[g]})}),{}}}),ba=["href","title"],Sa={class:"text-caption text-disabled",style:{position:"absolute",right:"16px"}},Ca={__name:"AppFooter",setup(e){const l=[{title:"Vuetify Documentation",icon:"$vuetify",href:"https://vuetifyjs.com/"},{title:"Vuetify Support",icon:"mdi-shield-star-outline",href:"https://support.vuetifyjs.com/"},{title:"Vuetify X",icon:["M2.04875 3.00002L9.77052 13.3248L1.99998 21.7192H3.74882L10.5519 14.3697L16.0486 21.7192H22L13.8437 10.8137L21.0765 3.00002H19.3277L13.0624 9.76874L8.0001 3.00002H2.04875ZM4.62054 4.28821H7.35461L19.4278 20.4308H16.6937L4.62054 4.28821Z"],href:"https://x.com/vuetifyjs"},{title:"Vuetify GitHub",icon:"mdi-github",href:"https://github.com/vuetifyjs/vuetify"},{title:"Vuetify Discord",icon:["M22,24L16.75,19L17.38,21H4.5A2.5,2.5 0 0,1 2,18.5V3.5A2.5,2.5 0 0,1 4.5,1H19.5A2.5,2.5 0 0,1 22,3.5V24M12,6.8C9.32,6.8 7.44,7.95 7.44,7.95C8.47,7.03 10.27,6.5 10.27,6.5L10.1,6.33C8.41,6.36 6.88,7.53 6.88,7.53C5.16,11.12 5.27,14.22 5.27,14.22C6.67,16.03 8.75,15.9 8.75,15.9L9.46,15C8.21,14.73 7.42,13.62 7.42,13.62C7.42,13.62 9.3,14.9 12,14.9C14.7,14.9 16.58,13.62 16.58,13.62C16.58,13.62 15.79,14.73 14.54,15L15.25,15.9C15.25,15.9 17.33,16.03 18.73,14.22C18.73,14.22 18.84,11.12 17.12,7.53C17.12,7.53 15.59,6.36 13.9,6.33L13.73,6.5C13.73,6.5 15.53,7.03 16.56,7.95C16.56,7.95 14.68,6.8 12,6.8M9.93,10.59C10.58,10.59 11.11,11.16 11.1,11.86C11.1,12.55 10.58,13.13 9.93,13.13C9.29,13.13 8.77,12.55 8.77,11.86C8.77,11.16 9.28,10.59 9.93,10.59M14.1,10.59C14.75,10.59 15.27,11.16 15.27,11.86C15.27,12.55 14.75,13.13 14.1,13.13C13.46,13.13 12.94,12.55 12.94,11.86C12.94,11.16 13.45,10.59 14.1,10.59Z"],href:"https://community.vuetifyjs.com/"},{title:"Vuetify Reddit",icon:"mdi-reddit",href:"https://reddit.com/r/vuetifyjs"}];return(t,n)=>(ze(),et(ga,{height:"40",app:""},{default:ye(()=>[(ze(),Dn(Le,null,jn(l,a=>Xe("a",{key:a.title,href:a.href,title:a.title,class:"d-inline-block mx-2 social-link",rel:"noopener noreferrer",target:"_blank"},[c(ge,{icon:a.icon,size:a.icon==="$vuetify"?24:16},null,8,["icon","size"])],8,ba)),64)),Xe("div",Sa,[rt(" © 2016-"+Fn(new Date().getFullYear())+" ",1),n[0]||(n[0]=Xe("span",{class:"d-none d-sm-inline-block"},"Vuetify, LLC",-1)),n[1]||(n[1]=rt(" — ")),n[2]||(n[2]=Xe("a",{class:"text-decoration-none on-surface",href:"https://vuetifyjs.com/about/licensing/",rel:"noopener noreferrer",target:"_blank"}," MIT License ",-1))])]),_:1}))}},pa=Kt(Ca,[["__scopeId","data-v-40134937"]]),wa=L({disabled:Boolean,group:Boolean,hideOnLeave:Boolean,leaveAbsolute:Boolean,mode:String,origin:String},"transition");function q(e,l,t){return R()({name:e,props:wa({mode:t,origin:l}),setup(n,a){let{slots:i}=a;const s={onBeforeEnter(o){n.origin&&(o.style.transformOrigin=n.origin)},onLeave(o){if(n.leaveAbsolute){const{offsetTop:v,offsetLeft:y,offsetWidth:g,offsetHeight:h}=o;o._transitionInitialStyles={position:o.style.position,top:o.style.top,left:o.style.left,width:o.style.width,height:o.style.height},o.style.position="absolute",o.style.top=`${v}px`,o.style.left=`${y}px`,o.style.width=`${g}px`,o.style.height=`${h}px`}n.hideOnLeave&&o.style.setProperty("display","none","important")},onAfterLeave(o){if(n.leaveAbsolute&&(o!=null&&o._transitionInitialStyles)){const{position:v,top:y,left:g,width:h,height:f}=o._transitionInitialStyles;delete o._transitionInitialStyles,o.style.position=v||"",o.style.top=y||"",o.style.left=g||"",o.style.width=h||"",o.style.height=f||""}}};return()=>{const o=n.group?gt:tt;return Je(o,{name:n.disabled?"":e,css:!n.disabled,...n.group?void 0:{mode:n.mode},...n.disabled?{}:s},i.default)}}})}function Zt(e,l){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"in-out";return R()({name:e,props:{mode:{type:String,default:t},disabled:Boolean,group:Boolean},setup(n,a){let{slots:i}=a;const s=n.group?gt:tt;return()=>Je(s,{name:n.disabled?"":e,css:!n.disabled,...n.disabled?{}:l},i.default)}})}function Jt(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";const t=(arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1)?"width":"height",n=Ft(`offset-${t}`);return{onBeforeEnter(s){s._parent=s.parentNode,s._initialStyle={transition:s.style.transition,overflow:s.style.overflow,[t]:s.style[t]}},onEnter(s){const o=s._initialStyle;s.style.setProperty("transition","none","important"),s.style.overflow="hidden";const v=`${s[n]}px`;s.style[t]="0",s.offsetHeight,s.style.transition=o.transition,e&&s._parent&&s._parent.classList.add(e),requestAnimationFrame(()=>{s.style[t]=v})},onAfterEnter:i,onEnterCancelled:i,onLeave(s){s._initialStyle={transition:"",overflow:s.style.overflow,[t]:s.style[t]},s.style.overflow="hidden",s.style[t]=`${s[n]}px`,s.offsetHeight,requestAnimationFrame(()=>s.style[t]="0")},onAfterLeave:a,onLeaveCancelled:a};function a(s){e&&s._parent&&s._parent.classList.remove(e),i(s)}function i(s){const o=s._initialStyle[t];s.style.overflow=s._initialStyle.overflow,o!=null&&(s.style[t]=o),delete s._initialStyle}}q("fab-transition","center center","out-in");q("dialog-bottom-transition");q("dialog-top-transition");q("fade-transition");q("scale-transition");q("scroll-x-transition");q("scroll-x-reverse-transition");q("scroll-y-transition");q("scroll-y-reverse-transition");q("slide-x-transition");q("slide-x-reverse-transition");q("slide-y-transition");q("slide-y-reverse-transition");const Qt=Zt("expand-transition",Jt());Zt("expand-x-transition",Jt("",!0));const _a=L({defaults:Object,disabled:Boolean,reset:[Number,String],root:[Boolean,String],scoped:Boolean},"VDefaultsProvider"),te=R(!1)({name:"VDefaultsProvider",props:_a(),setup(e,l){let{slots:t}=l;const{defaults:n,disabled:a,reset:i,root:s,scoped:o}=Wn(e);return Fe(n,{reset:i,root:s,scoped:o,disabled:a}),()=>{var v;return(v=t.default)==null?void 0:v.call(t)}}}),dt=Symbol.for("vuetify:list");function en(){const e=ce(dt,{hasPrepend:N(!1),updateHasPrepend:()=>null}),l={hasPrepend:N(!1),updateHasPrepend:t=>{t&&(l.hasPrepend.value=t)}};return de(dt,l),e}function tn(){return ce(dt,null)}const kt=e=>{const l={activate:t=>{let{id:n,value:a,activated:i}=t;return n=F(n),e&&!a&&i.size===1&&i.has(n)||(a?i.add(n):i.delete(n)),i},in:(t,n,a)=>{let i=new Set;if(t!=null)for(const s of yt(t))i=l.activate({id:s,value:!0,activated:new Set(i),children:n,parents:a});return i},out:t=>Array.from(t)};return l},nn=e=>{const l=kt(e);return{activate:n=>{let{activated:a,id:i,...s}=n;i=F(i);const o=a.has(i)?new Set([i]):new Set;return l.activate({...s,id:i,activated:o})},in:(n,a,i)=>{let s=new Set;if(n!=null){const o=yt(n);o.length&&(s=l.in(o.slice(0,1),a,i))}return s},out:(n,a,i)=>l.out(n,a,i)}},ka=e=>{const l=kt(e);return{activate:n=>{let{id:a,activated:i,children:s,...o}=n;return a=F(a),s.has(a)?i:l.activate({id:a,activated:i,children:s,...o})},in:l.in,out:l.out}},xa=e=>{const l=nn(e);return{activate:n=>{let{id:a,activated:i,children:s,...o}=n;return a=F(a),s.has(a)?i:l.activate({id:a,activated:i,children:s,...o})},in:l.in,out:l.out}},Ia={open:e=>{let{id:l,value:t,opened:n,parents:a}=e;if(t){const i=new Set;i.add(l);let s=a.get(l);for(;s!=null;)i.add(s),s=a.get(s);return i}else return n.delete(l),n},select:()=>null},an={open:e=>{let{id:l,value:t,opened:n,parents:a}=e;if(t){let i=a.get(l);for(n.add(l);i!=null&&i!==l;)n.add(i),i=a.get(i);return n}else n.delete(l);return n},select:()=>null},Va={open:an.open,select:e=>{let{id:l,value:t,opened:n,parents:a}=e;if(!t)return n;const i=[];let s=a.get(l);for(;s!=null;)i.push(s),s=a.get(s);return new Set(i)}},xt=e=>{const l={select:t=>{let{id:n,value:a,selected:i}=t;if(n=F(n),e&&!a){const s=Array.from(i.entries()).reduce((o,v)=>{let[y,g]=v;return g==="on"&&o.push(y),o},[]);if(s.length===1&&s[0]===n)return i}return i.set(n,a?"on":"off"),i},in:(t,n,a)=>{let i=new Map;for(const s of t||[])i=l.select({id:s,value:!0,selected:new Map(i),children:n,parents:a});return i},out:t=>{const n=[];for(const[a,i]of t.entries())i==="on"&&n.push(a);return n}};return l},ln=e=>{const l=xt(e);return{select:n=>{let{selected:a,id:i,...s}=n;i=F(i);const o=a.has(i)?new Map([[i,a.get(i)]]):new Map;return l.select({...s,id:i,selected:o})},in:(n,a,i)=>{let s=new Map;return n!=null&&n.length&&(s=l.in(n.slice(0,1),a,i)),s},out:(n,a,i)=>l.out(n,a,i)}},La=e=>{const l=xt(e);return{select:n=>{let{id:a,selected:i,children:s,...o}=n;return a=F(a),s.has(a)?i:l.select({id:a,selected:i,children:s,...o})},in:l.in,out:l.out}},Ba=e=>{const l=ln(e);return{select:n=>{let{id:a,selected:i,children:s,...o}=n;return a=F(a),s.has(a)?i:l.select({id:a,selected:i,children:s,...o})},in:l.in,out:l.out}},Pa=e=>{const l={select:t=>{let{id:n,value:a,selected:i,children:s,parents:o}=t;n=F(n);const v=new Map(i),y=[n];for(;y.length;){const h=y.shift();i.set(F(h),a?"on":"off"),s.has(h)&&y.push(...s.get(h))}let g=F(o.get(n));for(;g;){const h=s.get(g),f=h.every(r=>i.get(F(r))==="on"),m=h.every(r=>!i.has(F(r))||i.get(F(r))==="off");i.set(g,f?"on":m?"off":"indeterminate"),g=F(o.get(g))}return e&&!a&&Array.from(i.entries()).reduce((f,m)=>{let[r,u]=m;return u==="on"&&f.push(r),f},[]).length===0?v:i},in:(t,n,a)=>{let i=new Map;for(const s of t||[])i=l.select({id:s,value:!0,selected:new Map(i),children:n,parents:a});return i},out:(t,n)=>{const a=[];for(const[i,s]of t.entries())s==="on"&&!n.has(i)&&a.push(i);return a}};return l},He=Symbol.for("vuetify:nested"),sn={id:N(),root:{register:()=>null,unregister:()=>null,parents:O(new Map),children:O(new Map),open:()=>null,openOnSelect:()=>null,activate:()=>null,select:()=>null,activatable:O(!1),selectable:O(!1),opened:O(new Set),activated:O(new Set),selected:O(new Map),selectedValues:O([]),getPath:()=>[]}},Ta=L({activatable:Boolean,selectable:Boolean,activeStrategy:[String,Function,Object],selectStrategy:[String,Function,Object],openStrategy:[String,Object],opened:null,activated:null,selected:null,mandatory:Boolean},"nested"),Aa=e=>{let l=!1;const t=O(new Map),n=O(new Map),a=Ie(e,"opened",e.opened,r=>new Set(r),r=>[...r.values()]),i=d(()=>{if(typeof e.activeStrategy=="object")return e.activeStrategy;if(typeof e.activeStrategy=="function")return e.activeStrategy(e.mandatory);switch(e.activeStrategy){case"leaf":return ka(e.mandatory);case"single-leaf":return xa(e.mandatory);case"independent":return kt(e.mandatory);case"single-independent":default:return nn(e.mandatory)}}),s=d(()=>{if(typeof e.selectStrategy=="object")return e.selectStrategy;if(typeof e.selectStrategy=="function")return e.selectStrategy(e.mandatory);switch(e.selectStrategy){case"single-leaf":return Ba(e.mandatory);case"leaf":return La(e.mandatory);case"independent":return xt(e.mandatory);case"single-independent":return ln(e.mandatory);case"classic":default:return Pa(e.mandatory)}}),o=d(()=>{if(typeof e.openStrategy=="object")return e.openStrategy;switch(e.openStrategy){case"list":return Va;case"single":return Ia;case"multiple":default:return an}}),v=Ie(e,"activated",e.activated,r=>i.value.in(r,t.value,n.value),r=>i.value.out(r,t.value,n.value)),y=Ie(e,"selected",e.selected,r=>s.value.in(r,t.value,n.value),r=>s.value.out(r,t.value,n.value));ne(()=>{l=!0});function g(r){const u=[];let b=r;for(;b!=null;)u.unshift(b),b=n.value.get(b);return u}const h=se("nested"),f=new Set,m={id:N(),root:{opened:a,activatable:T(e,"activatable"),selectable:T(e,"selectable"),activated:v,selected:y,selectedValues:d(()=>{const r=[];for(const[u,b]of y.value.entries())b==="on"&&r.push(u);return r}),register:(r,u,b)=>{if(f.has(r)){g(r).join(" -> "),g(u).concat(r).join(" -> ");return}else f.add(r);u&&r!==u&&n.value.set(r,u),b&&t.value.set(r,[]),u!=null&&t.value.set(u,[...t.value.get(u)||[],r])},unregister:r=>{if(l)return;f.delete(r),t.value.delete(r);const u=n.value.get(r);if(u){const b=t.value.get(u)??[];t.value.set(u,b.filter(k=>k!==r))}n.value.delete(r)},open:(r,u,b)=>{h.emit("click:open",{id:r,value:u,path:g(r),event:b});const k=o.value.open({id:r,value:u,opened:new Set(a.value),children:t.value,parents:n.value,event:b});k&&(a.value=k)},openOnSelect:(r,u,b)=>{const k=o.value.select({id:r,value:u,selected:new Map(y.value),opened:new Set(a.value),children:t.value,parents:n.value,event:b});k&&(a.value=k)},select:(r,u,b)=>{h.emit("click:select",{id:r,value:u,path:g(r),event:b});const k=s.value.select({id:r,value:u,selected:new Map(y.value),children:t.value,parents:n.value,event:b});k&&(y.value=k),m.root.openOnSelect(r,u,b)},activate:(r,u,b)=>{if(!e.activatable)return m.root.select(r,!0,b);h.emit("click:activate",{id:r,value:u,path:g(r),event:b});const k=i.value.activate({id:r,value:u,activated:new Set(v.value),children:t.value,parents:n.value,event:b});k&&(v.value=k)},children:t,parents:n,getPath:g}};return de(He,m),m.root},on=(e,l)=>{const t=ce(He,sn),n=Symbol(mt()),a=d(()=>e.value!==void 0?e.value:n),i={...t,id:a,open:(s,o)=>t.root.open(a.value,s,o),openOnSelect:(s,o)=>t.root.openOnSelect(a.value,s,o),isOpen:d(()=>t.root.opened.value.has(a.value)),parent:d(()=>t.root.parents.value.get(a.value)),activate:(s,o)=>t.root.activate(a.value,s,o),isActivated:d(()=>t.root.activated.value.has(F(a.value))),select:(s,o)=>t.root.select(a.value,s,o),isSelected:d(()=>t.root.selected.value.get(F(a.value))==="on"),isIndeterminate:d(()=>t.root.selected.value.get(a.value)==="indeterminate"),isLeaf:d(()=>!t.root.children.value.get(a.value)),isGroupActivator:t.isGroupActivator};return!t.isGroupActivator&&t.root.register(a.value,t.id.value,l),ne(()=>{!t.isGroupActivator&&t.root.unregister(a.value)}),l&&de(He,i),i},Ea=()=>{const e=ce(He,sn);de(He,{...e,isGroupActivator:!0})};function it(){const e=N(!1);return Pe(()=>{window.requestAnimationFrame(()=>{e.value=!0})}),{ssrBootStyles:d(()=>e.value?void 0:{transition:"none !important"}),isBooted:Wt(e)}}const $a=L({transition:{type:[Boolean,String,Object],default:"fade-transition",validator:e=>e!==!0}},"transition"),$e=(e,l)=>{let{slots:t}=l;const{transition:n,disabled:a,group:i,...s}=e,{component:o=i?gt:tt,...v}=typeof n=="object"?n:{};return Je(o,K(typeof n=="string"?{name:a?"":n}:v,typeof n=="string"?{}:Object.fromEntries(Object.entries({disabled:a,group:i}).filter(y=>{let[g,h]=y;return h!==void 0})),s),t)},Na=Gn({name:"VListGroupActivator",setup(e,l){let{slots:t}=l;return Ea(),()=>{var n;return(n=t.default)==null?void 0:n.call(t)}}}),Ra=L({activeColor:String,baseColor:String,color:String,collapseIcon:{type:ie,default:"$collapse"},expandIcon:{type:ie,default:"$expand"},prependIcon:ie,appendIcon:ie,fluid:Boolean,subgroup:Boolean,title:String,value:null,...D(),...G()},"VListGroup"),Et=R()({name:"VListGroup",props:Ra(),setup(e,l){let{slots:t}=l;const{isOpen:n,open:a,id:i}=on(T(e,"value"),!0),s=d(()=>`v-list-group--id-${String(i.value)}`),o=tn(),{isBooted:v}=it();function y(m){m.stopPropagation(),a(!n.value,m)}const g=d(()=>({onClick:y,class:"v-list-group__header",id:s.value})),h=d(()=>n.value?e.collapseIcon:e.expandIcon),f=d(()=>({VListItem:{active:n.value,activeColor:e.activeColor,baseColor:e.baseColor,color:e.color,prependIcon:e.prependIcon||e.subgroup&&h.value,appendIcon:e.appendIcon||!e.subgroup&&h.value,title:e.title,value:e.value}}));return H(()=>c(e.tag,{class:["v-list-group",{"v-list-group--prepend":o==null?void 0:o.hasPrepend.value,"v-list-group--fluid":e.fluid,"v-list-group--subgroup":e.subgroup,"v-list-group--open":n.value},e.class],style:e.style},{default:()=>[t.activator&&c(te,{defaults:f.value},{default:()=>[c(Na,null,{default:()=>[t.activator({props:g.value,isOpen:n.value})]})]}),c($e,{transition:{component:Qt},disabled:!v.value},{default:()=>{var m;return[Me(c("div",{class:"v-list-group__items",role:"group","aria-labelledby":s.value},[(m=t.default)==null?void 0:m.call(t)]),[[Ut,n.value]])]}})]})),{isOpen:n}}}),za=L({opacity:[Number,String],...D(),...G()},"VListItemSubtitle"),Ma=R()({name:"VListItemSubtitle",props:za(),setup(e,l){let{slots:t}=l;return H(()=>c(e.tag,{class:["v-list-item-subtitle",e.class],style:[{"--v-list-item-subtitle-opacity":e.opacity},e.style]},t)),{}}}),Oa=ua("v-list-item-title"),We=L({height:[Number,String],maxHeight:[Number,String],maxWidth:[Number,String],minHeight:[Number,String],minWidth:[Number,String],width:[Number,String]},"dimension");function Ge(e){return{dimensionStyles:d(()=>{const t={},n=M(e.height),a=M(e.maxHeight),i=M(e.maxWidth),s=M(e.minHeight),o=M(e.minWidth),v=M(e.width);return n!=null&&(t.height=n),a!=null&&(t.maxHeight=a),i!=null&&(t.maxWidth=i),s!=null&&(t.minHeight=s),o!=null&&(t.minWidth=o),v!=null&&(t.width=v),t})}}function Ha(e){return{aspectStyles:d(()=>{const l=Number(e.aspectRatio);return l?{paddingBottom:String(1/l*100)+"%"}:void 0})}}const rn=L({aspectRatio:[String,Number],contentClass:null,inline:Boolean,...D(),...We()},"VResponsive"),$t=R()({name:"VResponsive",props:rn(),setup(e,l){let{slots:t}=l;const{aspectStyles:n}=Ha(e),{dimensionStyles:a}=Ge(e);return H(()=>{var i;return c("div",{class:["v-responsive",{"v-responsive--inline":e.inline},e.class],style:[a.value,e.style]},[c("div",{class:"v-responsive__sizer",style:n.value},null),(i=t.additional)==null?void 0:i.call(t),t.default&&c("div",{class:["v-responsive__content",e.contentClass]},[t.default()])])}),{}}});function Da(e,l){if(!ht)return;const t=l.modifiers||{},n=l.value,{handler:a,options:i}=typeof n=="object"?n:{handler:n,options:{}},s=new IntersectionObserver(function(){var h;let o=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],v=arguments.length>1?arguments[1]:void 0;const y=(h=e._observe)==null?void 0:h[l.instance.$.uid];if(!y)return;const g=o.some(f=>f.isIntersecting);a&&(!t.quiet||y.init)&&(!t.once||g||y.init)&&a(g,o,v),g&&t.once?un(e,l):y.init=!0},i);e._observe=Object(e._observe),e._observe[l.instance.$.uid]={init:!1,observer:s},s.observe(e)}function un(e,l){var n;const t=(n=e._observe)==null?void 0:n[l.instance.$.uid];t&&(t.observer.unobserve(e),delete e._observe[l.instance.$.uid])}const ja={mounted:Da,unmounted:un},Fa=L({absolute:Boolean,alt:String,cover:Boolean,color:String,draggable:{type:[Boolean,String],default:void 0},eager:Boolean,gradient:String,lazySrc:String,options:{type:Object,default:()=>({root:void 0,rootMargin:void 0,threshold:void 0})},sizes:String,src:{type:[String,Object],default:""},crossorigin:String,referrerpolicy:String,srcset:String,position:String,...rn(),...D(),...re(),...$a()},"VImg"),It=R()({name:"VImg",directives:{intersect:ja},props:Fa(),emits:{loadstart:e=>!0,load:e=>!0,error:e=>!0},setup(e,l){let{emit:t,slots:n}=l;const{backgroundColorClasses:a,backgroundColorStyles:i}=Be(T(e,"color")),{roundedClasses:s}=ue(e),o=se("VImg"),v=N(""),y=O(),g=N(e.eager?"loading":"idle"),h=N(),f=N(),m=d(()=>e.src&&typeof e.src=="object"?{src:e.src.src,srcset:e.srcset||e.src.srcset,lazySrc:e.lazySrc||e.src.lazySrc,aspect:Number(e.aspectRatio||e.src.aspect||0)}:{src:e.src,srcset:e.srcset,lazySrc:e.lazySrc,aspect:Number(e.aspectRatio||0)}),r=d(()=>m.value.aspect||h.value/f.value||0);W(()=>e.src,()=>{u(g.value!=="idle")}),W(r,(C,I)=>{!C&&I&&y.value&&$(y.value)}),Yn(()=>u());function u(C){if(!(e.eager&&C)&&!(ht&&!C&&!e.eager)){if(g.value="loading",m.value.lazySrc){const I=new Image;I.src=m.value.lazySrc,$(I,null)}m.value.src&&bt(()=>{var I;t("loadstart",((I=y.value)==null?void 0:I.currentSrc)||m.value.src),setTimeout(()=>{var z;if(!o.isUnmounted)if((z=y.value)!=null&&z.complete){if(y.value.naturalWidth||k(),g.value==="error")return;r.value||$(y.value,null),g.value==="loading"&&b()}else r.value||$(y.value),p()})})}}function b(){var C;o.isUnmounted||(p(),$(y.value),g.value="loaded",t("load",((C=y.value)==null?void 0:C.currentSrc)||m.value.src))}function k(){var C;o.isUnmounted||(g.value="error",t("error",((C=y.value)==null?void 0:C.currentSrc)||m.value.src))}function p(){const C=y.value;C&&(v.value=C.currentSrc||C.src)}let P=-1;ne(()=>{clearTimeout(P)});function $(C){let I=arguments.length>1&&arguments[1]!==void 0?arguments[1]:100;const z=()=>{if(clearTimeout(P),o.isUnmounted)return;const{naturalHeight:X,naturalWidth:ae}=C;X||ae?(h.value=ae,f.value=X):!C.complete&&g.value==="loading"&&I!=null?P=window.setTimeout(z,I):(C.currentSrc.endsWith(".svg")||C.currentSrc.startsWith("data:image/svg+xml"))&&(h.value=1,f.value=1)};z()}const E=d(()=>({"v-img__img--cover":e.cover,"v-img__img--contain":!e.cover})),S=()=>{var z;if(!m.value.src||g.value==="idle")return null;const C=c("img",{class:["v-img__img",E.value],style:{objectPosition:e.position},src:m.value.src,srcset:m.value.srcset,alt:e.alt,crossorigin:e.crossorigin,referrerpolicy:e.referrerpolicy,draggable:e.draggable,sizes:e.sizes,ref:y,onLoad:b,onError:k},null),I=(z=n.sources)==null?void 0:z.call(n);return c($e,{transition:e.transition,appear:!0},{default:()=>[Me(I?c("picture",{class:"v-img__picture"},[I,C]):C,[[Ut,g.value==="loaded"]])]})},_=()=>c($e,{transition:e.transition},{default:()=>[m.value.lazySrc&&g.value!=="loaded"&&c("img",{class:["v-img__img","v-img__img--preload",E.value],style:{objectPosition:e.position},src:m.value.lazySrc,alt:e.alt,crossorigin:e.crossorigin,referrerpolicy:e.referrerpolicy,draggable:e.draggable},null)]}),w=()=>n.placeholder?c($e,{transition:e.transition,appear:!0},{default:()=>[(g.value==="loading"||g.value==="error"&&!n.error)&&c("div",{class:"v-img__placeholder"},[n.placeholder()])]}):null,V=()=>n.error?c($e,{transition:e.transition,appear:!0},{default:()=>[g.value==="error"&&c("div",{class:"v-img__error"},[n.error()])]}):null,B=()=>e.gradient?c("div",{class:"v-img__gradient",style:{backgroundImage:`linear-gradient(${e.gradient})`}},null):null,x=N(!1);{const C=W(r,I=>{I&&(requestAnimationFrame(()=>{requestAnimationFrame(()=>{x.value=!0})}),C())})}return H(()=>{const C=$t.filterProps(e);return Me(c($t,K({class:["v-img",{"v-img--absolute":e.absolute,"v-img--booting":!x.value},a.value,s.value,e.class],style:[{width:M(e.width==="auto"?h.value:e.width)},i.value,e.style]},C,{aspectRatio:r.value,"aria-label":e.alt,role:e.alt?"img":void 0}),{additional:()=>c(Le,null,[c(S,null,null),c(_,null,null),c(B,null,null),c(w,null,null),c(V,null,null)]),default:n.default}),[[qt("intersect"),{handler:u,options:e.options},null,{once:!0}]])}),{currentSrc:v,image:y,state:g,naturalWidth:h,naturalHeight:f}}}),Wa=[null,"default","comfortable","compact"],Ye=L({density:{type:String,default:"default",validator:e=>Wa.includes(e)}},"density");function Ue(e){let l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:he();return{densityClasses:d(()=>`${l}--density-${e.density}`)}}const Ga=["elevated","flat","tonal","outlined","text","plain"];function Vt(e,l){return c(Le,null,[e&&c("span",{key:"overlay",class:`${l}__overlay`},null),c("span",{key:"underlay",class:`${l}__underlay`},null)])}const qe=L({color:String,variant:{type:String,default:"elevated",validator:e=>Ga.includes(e)}},"variant");function Lt(e){let l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:he();const t=d(()=>{const{variant:i}=ut(e);return`${l}--variant-${i}`}),{colorClasses:n,colorStyles:a}=_t(d(()=>{const{variant:i,color:s}=ut(e);return{[["elevated","flat"].includes(i)?"background":"text"]:s}}));return{colorClasses:n,colorStyles:a,variantClasses:t}}const Ya=L({start:Boolean,end:Boolean,icon:ie,image:String,text:String,...ve(),...D(),...Ye(),...re(),...at(),...G(),...Z(),...qe({variant:"flat"})},"VAvatar"),Nt=R()({name:"VAvatar",props:Ya(),setup(e,l){let{slots:t}=l;const{themeClasses:n}=J(e),{borderClasses:a}=fe(e),{colorClasses:i,colorStyles:s,variantClasses:o}=Lt(e),{densityClasses:v}=Ue(e),{roundedClasses:y}=ue(e),{sizeClasses:g,sizeStyles:h}=lt(e);return H(()=>c(e.tag,{class:["v-avatar",{"v-avatar--start":e.start,"v-avatar--end":e.end},n.value,a.value,i.value,v.value,y.value,g.value,o.value,e.class],style:[s.value,h.value,e.style]},{default:()=>[t.default?c(te,{key:"content-defaults",defaults:{VImg:{cover:!0,src:e.image},VIcon:{icon:e.icon}}},{default:()=>[t.default()]}):e.image?c(It,{key:"image",src:e.image,alt:"",cover:!0},null):e.icon?c(ge,{key:"icon",icon:e.icon},null):e.text,Vt(!1,"v-avatar")]})),{}}});function Ua(){const e=se("useRoute");return d(()=>{var l;return(l=e==null?void 0:e.proxy)==null?void 0:l.$route})}function qa(){var e,l;return(l=(e=se("useRouter"))==null?void 0:e.proxy)==null?void 0:l.$router}function cn(e,l){var h,f;const t=Un("RouterLink"),n=d(()=>!!(e.href||e.to)),a=d(()=>(n==null?void 0:n.value)||Pt(l,"click")||Pt(e,"click"));if(typeof t=="string"||!("useLink"in t)){const m=T(e,"href");return{isLink:n,isClickable:a,href:m,linkProps:oe({href:m})}}const i=d(()=>({...e,to:T(()=>e.to||"")})),s=t.useLink(i.value),o=d(()=>e.to?s:void 0),v=Ua(),y=d(()=>{var m,r,u;return o.value?e.exact?v.value?((u=o.value.isExactActive)==null?void 0:u.value)&&St(o.value.route.value.query,v.value.query):((r=o.value.isExactActive)==null?void 0:r.value)??!1:((m=o.value.isActive)==null?void 0:m.value)??!1:!1}),g=d(()=>{var m;return e.to?(m=o.value)==null?void 0:m.route.value.href:e.href});return{isLink:n,isClickable:a,isActive:y,route:(h=o.value)==null?void 0:h.route,navigate:(f=o.value)==null?void 0:f.navigate,href:g,linkProps:oe({href:g,"aria-current":d(()=>y.value?"page":void 0)})}}const dn=L({href:String,replace:Boolean,to:[String,Object],exact:Boolean},"router"),vt=Symbol("rippleStop"),Xa=80;function Rt(e,l){e.style.transform=l,e.style.webkitTransform=l}function ft(e){return e.constructor.name==="TouchEvent"}function vn(e){return e.constructor.name==="KeyboardEvent"}const Ka=function(e,l){var h;let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n=0,a=0;if(!vn(e)){const f=l.getBoundingClientRect(),m=ft(e)?e.touches[e.touches.length-1]:e;n=m.clientX-f.left,a=m.clientY-f.top}let i=0,s=.3;(h=l._ripple)!=null&&h.circle?(s=.15,i=l.clientWidth/2,i=t.center?i:i+Math.sqrt((n-i)**2+(a-i)**2)/4):i=Math.sqrt(l.clientWidth**2+l.clientHeight**2)/2;const o=`${(l.clientWidth-i*2)/2}px`,v=`${(l.clientHeight-i*2)/2}px`,y=t.center?o:`${n-i}px`,g=t.center?v:`${a-i}px`;return{radius:i,scale:s,x:y,y:g,centerX:o,centerY:v}},Ze={show(e,l){var m;let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(!((m=l==null?void 0:l._ripple)!=null&&m.enabled))return;const n=document.createElement("span"),a=document.createElement("span");n.appendChild(a),n.className="v-ripple__container",t.class&&(n.className+=` ${t.class}`);const{radius:i,scale:s,x:o,y:v,centerX:y,centerY:g}=Ka(e,l,t),h=`${i*2}px`;a.className="v-ripple__animation",a.style.width=h,a.style.height=h,l.appendChild(n);const f=window.getComputedStyle(l);f&&f.position==="static"&&(l.style.position="relative",l.dataset.previousPosition="static"),a.classList.add("v-ripple__animation--enter"),a.classList.add("v-ripple__animation--visible"),Rt(a,`translate(${o}, ${v}) scale3d(${s},${s},${s})`),a.dataset.activated=String(performance.now()),setTimeout(()=>{a.classList.remove("v-ripple__animation--enter"),a.classList.add("v-ripple__animation--in"),Rt(a,`translate(${y}, ${g}) scale3d(1,1,1)`)},0)},hide(e){var i;if(!((i=e==null?void 0:e._ripple)!=null&&i.enabled))return;const l=e.getElementsByClassName("v-ripple__animation");if(l.length===0)return;const t=l[l.length-1];if(t.dataset.isHiding)return;t.dataset.isHiding="true";const n=performance.now()-Number(t.dataset.activated),a=Math.max(250-n,0);setTimeout(()=>{t.classList.remove("v-ripple__animation--in"),t.classList.add("v-ripple__animation--out"),setTimeout(()=>{var o;e.getElementsByClassName("v-ripple__animation").length===1&&e.dataset.previousPosition&&(e.style.position=e.dataset.previousPosition,delete e.dataset.previousPosition),((o=t.parentNode)==null?void 0:o.parentNode)===e&&e.removeChild(t.parentNode)},300)},a)}};function fn(e){return typeof e>"u"||!!e}function De(e){const l={},t=e.currentTarget;if(!(!(t!=null&&t._ripple)||t._ripple.touched||e[vt])){if(e[vt]=!0,ft(e))t._ripple.touched=!0,t._ripple.isTouch=!0;else if(t._ripple.isTouch)return;if(l.center=t._ripple.centered||vn(e),t._ripple.class&&(l.class=t._ripple.class),ft(e)){if(t._ripple.showTimerCommit)return;t._ripple.showTimerCommit=()=>{Ze.show(e,t,l)},t._ripple.showTimer=window.setTimeout(()=>{var n;(n=t==null?void 0:t._ripple)!=null&&n.showTimerCommit&&(t._ripple.showTimerCommit(),t._ripple.showTimerCommit=null)},Xa)}else Ze.show(e,t,l)}}function zt(e){e[vt]=!0}function U(e){const l=e.currentTarget;if(l!=null&&l._ripple){if(window.clearTimeout(l._ripple.showTimer),e.type==="touchend"&&l._ripple.showTimerCommit){l._ripple.showTimerCommit(),l._ripple.showTimerCommit=null,l._ripple.showTimer=window.setTimeout(()=>{U(e)});return}window.setTimeout(()=>{l._ripple&&(l._ripple.touched=!1)}),Ze.hide(l)}}function mn(e){const l=e.currentTarget;l!=null&&l._ripple&&(l._ripple.showTimerCommit&&(l._ripple.showTimerCommit=null),window.clearTimeout(l._ripple.showTimer))}let je=!1;function gn(e){!je&&(e.keyCode===Tt.enter||e.keyCode===Tt.space)&&(je=!0,De(e))}function yn(e){je=!1,U(e)}function hn(e){je&&(je=!1,U(e))}function bn(e,l,t){const{value:n,modifiers:a}=l,i=fn(n);if(i||Ze.hide(e),e._ripple=e._ripple??{},e._ripple.enabled=i,e._ripple.centered=a.center,e._ripple.circle=a.circle,qn(n)&&n.class&&(e._ripple.class=n.class),i&&!t){if(a.stop){e.addEventListener("touchstart",zt,{passive:!0}),e.addEventListener("mousedown",zt);return}e.addEventListener("touchstart",De,{passive:!0}),e.addEventListener("touchend",U,{passive:!0}),e.addEventListener("touchmove",mn,{passive:!0}),e.addEventListener("touchcancel",U),e.addEventListener("mousedown",De),e.addEventListener("mouseup",U),e.addEventListener("mouseleave",U),e.addEventListener("keydown",gn),e.addEventListener("keyup",yn),e.addEventListener("blur",hn),e.addEventListener("dragstart",U,{passive:!0})}else!i&&t&&Sn(e)}function Sn(e){e.removeEventListener("mousedown",De),e.removeEventListener("touchstart",De),e.removeEventListener("touchend",U),e.removeEventListener("touchmove",mn),e.removeEventListener("touchcancel",U),e.removeEventListener("mouseup",U),e.removeEventListener("mouseleave",U),e.removeEventListener("keydown",gn),e.removeEventListener("keyup",yn),e.removeEventListener("dragstart",U),e.removeEventListener("blur",hn)}function Za(e,l){bn(e,l,!1)}function Ja(e){delete e._ripple,Sn(e)}function Qa(e,l){if(l.value===l.oldValue)return;const t=fn(l.oldValue);bn(e,l,t)}const Cn={mounted:Za,unmounted:Ja,updated:Qa},el=L({active:{type:Boolean,default:void 0},activeClass:String,activeColor:String,appendAvatar:String,appendIcon:ie,baseColor:String,disabled:Boolean,lines:[Boolean,String],link:{type:Boolean,default:void 0},nav:Boolean,prependAvatar:String,prependIcon:ie,ripple:{type:[Boolean,Object],default:!0},slim:Boolean,subtitle:[String,Number],title:[String,Number],value:null,onClick:Ne(),onClickOnce:Ne(),...ve(),...D(),...Ye(),...We(),...be(),...re(),...dn(),...G(),...Z(),...qe({variant:"text"})},"VListItem"),Re=R()({name:"VListItem",directives:{Ripple:Cn},props:el(),emits:{click:e=>!0},setup(e,l){let{attrs:t,slots:n,emit:a}=l;const i=cn(e,t),s=d(()=>e.value===void 0?i.href.value:e.value),{activate:o,isActivated:v,select:y,isOpen:g,isSelected:h,isIndeterminate:f,isGroupActivator:m,root:r,parent:u,openOnSelect:b,id:k}=on(s,!1),p=tn(),P=d(()=>{var A;return e.active!==!1&&(e.active||((A=i.isActive)==null?void 0:A.value)||(r.activatable.value?v.value:h.value))}),$=d(()=>e.link!==!1&&i.isLink.value),E=d(()=>!e.disabled&&e.link!==!1&&(e.link||i.isClickable.value||!!p&&(r.selectable.value||r.activatable.value||e.value!=null))),S=d(()=>e.rounded||e.nav),_=d(()=>e.color??e.activeColor),w=d(()=>({color:P.value?_.value??e.baseColor:e.baseColor,variant:e.variant}));W(()=>{var A;return(A=i.isActive)==null?void 0:A.value},A=>{A&&u.value!=null&&r.open(u.value,!0),A&&b(A)},{immediate:!0});const{themeClasses:V}=J(e),{borderClasses:B}=fe(e),{colorClasses:x,colorStyles:C,variantClasses:I}=Lt(w),{densityClasses:z}=Ue(e),{dimensionStyles:X}=Ge(e),{elevationClasses:ae}=Se(e),{roundedClasses:me}=ue(S),Ce=d(()=>e.lines?`v-list-item--${e.lines}-line`:void 0),le=d(()=>({isActive:P.value,select:y,isOpen:g.value,isSelected:h.value,isIndeterminate:f.value}));function Te(A){var Q;a("click",A),E.value&&((Q=i.navigate)==null||Q.call(i,A),!m&&(r.activatable.value?o(!v.value,A):(r.selectable.value||e.value!=null)&&y(!h.value,A)))}function j(A){(A.key==="Enter"||A.key===" ")&&(A.preventDefault(),A.target.dispatchEvent(new MouseEvent("click",A)))}return H(()=>{const A=$.value?"a":e.tag,Q=n.title||e.title!=null,pe=n.subtitle||e.subtitle!=null,we=!!(e.appendAvatar||e.appendIcon),st=!!(we||n.append),Ae=!!(e.prependAvatar||e.prependIcon),Y=!!(Ae||n.prepend);return p==null||p.updateHasPrepend(Y),e.activeColor&&Xn("active-color",["color","base-color"]),Me(c(A,K({class:["v-list-item",{"v-list-item--active":P.value,"v-list-item--disabled":e.disabled,"v-list-item--link":E.value,"v-list-item--nav":e.nav,"v-list-item--prepend":!Y&&(p==null?void 0:p.hasPrepend.value),"v-list-item--slim":e.slim,[`${e.activeClass}`]:e.activeClass&&P.value},V.value,B.value,x.value,z.value,ae.value,Ce.value,me.value,I.value,e.class],style:[C.value,X.value,e.style],tabindex:E.value?p?-2:0:void 0,onClick:Te,onKeydown:E.value&&!$.value&&j},i.linkProps),{default:()=>{var _e;return[Vt(E.value||P.value,"v-list-item"),Y&&c("div",{key:"prepend",class:"v-list-item__prepend"},[n.prepend?c(te,{key:"prepend-defaults",disabled:!Ae,defaults:{VAvatar:{density:e.density,image:e.prependAvatar},VIcon:{density:e.density,icon:e.prependIcon},VListItemAction:{start:!0}}},{default:()=>{var ee;return[(ee=n.prepend)==null?void 0:ee.call(n,le.value)]}}):c(Le,null,[e.prependAvatar&&c(Nt,{key:"prepend-avatar",density:e.density,image:e.prependAvatar},null),e.prependIcon&&c(ge,{key:"prepend-icon",density:e.density,icon:e.prependIcon},null)]),c("div",{class:"v-list-item__spacer"},null)]),c("div",{class:"v-list-item__content","data-no-activator":""},[Q&&c(Oa,{key:"title"},{default:()=>{var ee;return[((ee=n.title)==null?void 0:ee.call(n,{title:e.title}))??e.title]}}),pe&&c(Ma,{key:"subtitle"},{default:()=>{var ee;return[((ee=n.subtitle)==null?void 0:ee.call(n,{subtitle:e.subtitle}))??e.subtitle]}}),(_e=n.default)==null?void 0:_e.call(n,le.value)]),st&&c("div",{key:"append",class:"v-list-item__append"},[n.append?c(te,{key:"append-defaults",disabled:!we,defaults:{VAvatar:{density:e.density,image:e.appendAvatar},VIcon:{density:e.density,icon:e.appendIcon},VListItemAction:{end:!0}}},{default:()=>{var ee;return[(ee=n.append)==null?void 0:ee.call(n,le.value)]}}):c(Le,null,[e.appendIcon&&c(ge,{key:"append-icon",density:e.density,icon:e.appendIcon},null),e.appendAvatar&&c(Nt,{key:"append-avatar",density:e.density,image:e.appendAvatar},null)]),c("div",{class:"v-list-item__spacer"},null)])]}}),[[qt("ripple"),E.value&&e.ripple]])}),{activate:o,isActivated:v,isGroupActivator:m,isSelected:h,list:p,select:y,root:r,id:k}}}),tl=L({color:String,inset:Boolean,sticky:Boolean,title:String,...D(),...G()},"VListSubheader"),nl=R()({name:"VListSubheader",props:tl(),setup(e,l){let{slots:t}=l;const{textColorClasses:n,textColorStyles:a}=Oe(T(e,"color"));return H(()=>{const i=!!(t.default||e.title);return c(e.tag,{class:["v-list-subheader",{"v-list-subheader--inset":e.inset,"v-list-subheader--sticky":e.sticky},n.value,e.class],style:[{textColorStyles:a},e.style]},{default:()=>{var s;return[i&&c("div",{class:"v-list-subheader__text"},[((s=t.default)==null?void 0:s.call(t))??e.title])]}})}),{}}}),al=L({color:String,inset:Boolean,length:[Number,String],opacity:[Number,String],thickness:[Number,String],vertical:Boolean,...D(),...Z()},"VDivider"),ll=R()({name:"VDivider",props:al(),setup(e,l){let{attrs:t,slots:n}=l;const{themeClasses:a}=J(e),{textColorClasses:i,textColorStyles:s}=Oe(T(e,"color")),o=d(()=>{const v={};return e.length&&(v[e.vertical?"height":"width"]=M(e.length)),e.thickness&&(v[e.vertical?"borderRightWidth":"borderTopWidth"]=M(e.thickness)),v});return H(()=>{const v=c("hr",{class:[{"v-divider":!0,"v-divider--inset":e.inset,"v-divider--vertical":e.vertical},a.value,i.value,e.class],style:[o.value,s.value,{"--v-border-opacity":e.opacity},e.style],"aria-orientation":!t.role||t.role==="separator"?e.vertical?"vertical":"horizontal":void 0,role:`${t.role||"separator"}`},null);return n.default?c("div",{class:["v-divider__wrapper",{"v-divider__wrapper--vertical":e.vertical,"v-divider__wrapper--inset":e.inset}]},[v,c("div",{class:"v-divider__content"},[n.default()]),v]):v}),{}}}),il=L({items:Array,returnObject:Boolean},"VListChildren"),pn=R()({name:"VListChildren",props:il(),setup(e,l){let{slots:t}=l;return en(),()=>{var n,a;return((n=t.default)==null?void 0:n.call(t))??((a=e.items)==null?void 0:a.map(i=>{var f,m;let{children:s,props:o,type:v,raw:y}=i;if(v==="divider")return((f=t.divider)==null?void 0:f.call(t,{props:o}))??c(ll,o,null);if(v==="subheader")return((m=t.subheader)==null?void 0:m.call(t,{props:o}))??c(nl,o,null);const g={subtitle:t.subtitle?r=>{var u;return(u=t.subtitle)==null?void 0:u.call(t,{...r,item:y})}:void 0,prepend:t.prepend?r=>{var u;return(u=t.prepend)==null?void 0:u.call(t,{...r,item:y})}:void 0,append:t.append?r=>{var u;return(u=t.append)==null?void 0:u.call(t,{...r,item:y})}:void 0,title:t.title?r=>{var u;return(u=t.title)==null?void 0:u.call(t,{...r,item:y})}:void 0},h=Et.filterProps(o);return s?c(Et,K({value:o==null?void 0:o.value},h),{activator:r=>{let{props:u}=r;const b={...o,...u,value:e.returnObject?y:o.value};return t.header?t.header({props:b}):c(Re,b,g)},default:()=>c(pn,{items:s,returnObject:e.returnObject},t)}):t.item?t.item({props:o}):c(Re,K(o,{value:e.returnObject?y:o.value}),g)}))}}}),sl=L({items:{type:Array,default:()=>[]},itemTitle:{type:[String,Array,Function],default:"title"},itemValue:{type:[String,Array,Function],default:"value"},itemChildren:{type:[Boolean,String,Array,Function],default:"children"},itemProps:{type:[Boolean,String,Array,Function],default:"props"},returnObject:Boolean,valueComparator:{type:Function,default:St}},"list-items");function ol(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"}function rl(e,l){const t=Ee(l,e.itemType,"item"),n=ol(l)?l:Ee(l,e.itemTitle),a=Ee(l,e.itemValue,void 0),i=Ee(l,e.itemChildren),s=e.itemProps===!0?Zn(l,["children"]):Ee(l,e.itemProps),o={title:n,value:a,...s};return{type:t,title:o.title,value:o.value,props:o,children:t==="item"&&i?wn(e,i):void 0,raw:l}}function wn(e,l){const t=[];for(const n of l)t.push(rl(e,n));return t}function ul(e){return{items:d(()=>wn(e,e.items))}}const cl=L({baseColor:String,activeColor:String,activeClass:String,bgColor:String,disabled:Boolean,expandIcon:String,collapseIcon:String,lines:{type:[Boolean,String],default:"one"},slim:Boolean,nav:Boolean,"onClick:open":Ne(),"onClick:select":Ne(),"onUpdate:opened":Ne(),...Ta({selectStrategy:"single-leaf",openStrategy:"list"}),...ve(),...D(),...Ye(),...We(),...be(),itemType:{type:String,default:"type"},...sl(),...re(),...G(),...Z(),...qe({variant:"text"})},"VList"),dl=R()({name:"VList",props:cl(),emits:{"update:selected":e=>!0,"update:activated":e=>!0,"update:opened":e=>!0,"click:open":e=>!0,"click:activate":e=>!0,"click:select":e=>!0},setup(e,l){let{slots:t}=l;const{items:n}=ul(e),{themeClasses:a}=J(e),{backgroundColorClasses:i,backgroundColorStyles:s}=Be(T(e,"bgColor")),{borderClasses:o}=fe(e),{densityClasses:v}=Ue(e),{dimensionStyles:y}=Ge(e),{elevationClasses:g}=Se(e),{roundedClasses:h}=ue(e),{children:f,open:m,parents:r,select:u,getPath:b}=Aa(e),k=d(()=>e.lines?`v-list--${e.lines}-line`:void 0),p=T(e,"activeColor"),P=T(e,"baseColor"),$=T(e,"color");en(),Fe({VListGroup:{activeColor:p,baseColor:P,color:$,expandIcon:T(e,"expandIcon"),collapseIcon:T(e,"collapseIcon")},VListItem:{activeClass:T(e,"activeClass"),activeColor:p,baseColor:P,color:$,density:T(e,"density"),disabled:T(e,"disabled"),lines:T(e,"lines"),nav:T(e,"nav"),slim:T(e,"slim"),variant:T(e,"variant")}});const E=N(!1),S=O();function _(I){E.value=!0}function w(I){E.value=!1}function V(I){var z;!E.value&&!(I.relatedTarget&&((z=S.value)!=null&&z.contains(I.relatedTarget)))&&C()}function B(I){const z=I.target;if(!(!S.value||["INPUT","TEXTAREA"].includes(z.tagName))){if(I.key==="ArrowDown")C("next");else if(I.key==="ArrowUp")C("prev");else if(I.key==="Home")C("first");else if(I.key==="End")C("last");else return;I.preventDefault()}}function x(I){E.value=!0}function C(I){if(S.value)return Kn(S.value,I)}return H(()=>c(e.tag,{ref:S,class:["v-list",{"v-list--disabled":e.disabled,"v-list--nav":e.nav,"v-list--slim":e.slim},a.value,i.value,o.value,v.value,g.value,k.value,h.value,e.class],style:[s.value,y.value,e.style],tabindex:e.disabled||E.value?-1:0,role:"listbox","aria-activedescendant":void 0,onFocusin:_,onFocusout:w,onFocus:V,onKeydown:B,onMousedown:x},{default:()=>[c(pn,{items:n.value,returnObject:e.returnObject},t)]})),{open:m,select:u,focus:C,children:f,parents:r,getPath:b}}});function vl(e){let{rootEl:l,isSticky:t,layoutItemStyles:n}=e;const a=N(!1),i=N(0),s=d(()=>{const y=typeof a.value=="boolean"?"top":a.value;return[t.value?{top:"auto",bottom:"auto",height:void 0}:void 0,a.value?{[y]:M(i.value)}:{top:n.value.top}]});Pe(()=>{W(t,y=>{y?window.addEventListener("scroll",v,{passive:!0}):window.removeEventListener("scroll",v)},{immediate:!0})}),ne(()=>{window.removeEventListener("scroll",v)});let o=0;function v(){const y=o>window.scrollY?"up":"down",g=l.value.getBoundingClientRect(),h=parseFloat(n.value.top??0),f=window.scrollY-Math.max(0,i.value-h),m=g.height+Math.max(i.value,h)-window.scrollY-window.innerHeight,r=parseFloat(getComputedStyle(l.value).getPropertyValue("--v-body-scroll-y"))||0;g.height0;t--){if(e[t].t===e[t-1].t)continue;const n=Mt(l),a=(e[t].d-e[t-1].d)/(e[t].t-e[t-1].t);l+=(a-n)*Math.abs(a),t===e.length-1&&(l*=.5)}return Mt(l)*1e3}function gl(){const e={};function l(a){Array.from(a.changedTouches).forEach(i=>{(e[i.identifier]??(e[i.identifier]=new Jn(ml))).push([a.timeStamp,i])})}function t(a){Array.from(a.changedTouches).forEach(i=>{delete e[i.identifier]})}function n(a){var y;const i=(y=e[a])==null?void 0:y.values().reverse();if(!i)throw new Error(`No samples for touch id ${a}`);const s=i[0],o=[],v=[];for(const g of i){if(s[0]-g[0]>fl)break;o.push({t:g[0],d:g[1].clientX}),v.push({t:g[0],d:g[1].clientY})}return{x:Ot(o),y:Ot(v),get direction(){const{x:g,y:h}=this,[f,m]=[Math.abs(g),Math.abs(h)];return f>m&&g>=0?"right":f>m&&g<=0?"left":m>f&&h>=0?"down":m>f&&h<=0?"up":yl()}}}return{addMovement:l,endTouch:t,getVelocity:n}}function yl(){throw new Error}function hl(e){let{el:l,isActive:t,isTemporary:n,width:a,touchless:i,position:s}=e;Pe(()=>{window.addEventListener("touchstart",p,{passive:!0}),window.addEventListener("touchmove",P,{passive:!1}),window.addEventListener("touchend",$,{passive:!0})}),ne(()=>{window.removeEventListener("touchstart",p),window.removeEventListener("touchmove",P),window.removeEventListener("touchend",$)});const o=d(()=>["left","right"].includes(s.value)),{addMovement:v,endTouch:y,getVelocity:g}=gl();let h=!1;const f=N(!1),m=N(0),r=N(0);let u;function b(S,_){return(s.value==="left"?S:s.value==="right"?document.documentElement.clientWidth-S:s.value==="top"?S:s.value==="bottom"?document.documentElement.clientHeight-S:ke())-(_?a.value:0)}function k(S){let _=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;const w=s.value==="left"?(S-r.value)/a.value:s.value==="right"?(document.documentElement.clientWidth-S-r.value)/a.value:s.value==="top"?(S-r.value)/a.value:s.value==="bottom"?(document.documentElement.clientHeight-S-r.value)/a.value:ke();return _?Math.max(0,Math.min(1,w)):w}function p(S){if(i.value)return;const _=S.changedTouches[0].clientX,w=S.changedTouches[0].clientY,V=25,B=s.value==="left"?_document.documentElement.clientWidth-V:s.value==="top"?wdocument.documentElement.clientHeight-V:ke(),x=t.value&&(s.value==="left"?_document.documentElement.clientWidth-a.value:s.value==="top"?wdocument.documentElement.clientHeight-a.value:ke());(B||x||t.value&&n.value)&&(u=[_,w],r.value=b(o.value?_:w,t.value),m.value=k(o.value?_:w),h=r.value>-20&&r.value<80,y(S),v(S))}function P(S){const _=S.changedTouches[0].clientX,w=S.changedTouches[0].clientY;if(h){if(!S.cancelable){h=!1;return}const B=Math.abs(_-u[0]),x=Math.abs(w-u[1]);(o.value?B>x&&B>3:x>B&&x>3)?(f.value=!0,h=!1):(o.value?x:B)>3&&(h=!1)}if(!f.value)return;S.preventDefault(),v(S);const V=k(o.value?_:w,!1);m.value=Math.max(0,Math.min(1,V)),V>1?r.value=b(o.value?_:w,!0):V<0&&(r.value=b(o.value?_:w,!1))}function $(S){if(h=!1,!f.value)return;v(S),f.value=!1;const _=g(S.changedTouches[0].identifier),w=Math.abs(_.x),V=Math.abs(_.y);(o.value?w>V&&w>400:V>w&&V>3)?t.value=_.direction===({left:"right",right:"left",top:"down",bottom:"up"}[s.value]||ke()):t.value=m.value>.5}const E=d(()=>f.value?{transform:s.value==="left"?`translateX(calc(-100% + ${m.value*a.value}px))`:s.value==="right"?`translateX(calc(100% - ${m.value*a.value}px))`:s.value==="top"?`translateY(calc(-100% + ${m.value*a.value}px))`:s.value==="bottom"?`translateY(calc(100% - ${m.value*a.value}px))`:ke(),transition:"none"}:void 0);return xe(f,()=>{var w,V;const S=((w=l.value)==null?void 0:w.style.transform)??null,_=((V=l.value)==null?void 0:V.style.transition)??null;Qe(()=>{var B,x,C,I;(x=l.value)==null||x.style.setProperty("transform",((B=E.value)==null?void 0:B.transform)||"none"),(I=l.value)==null||I.style.setProperty("transition",((C=E.value)==null?void 0:C.transition)||null)}),Qn(()=>{var B,x;(B=l.value)==null||B.style.setProperty("transform",S),(x=l.value)==null||x.style.setProperty("transition",_)})}),{isDragging:f,dragProgress:m,dragStyles:E}}function ke(){throw new Error}const bl=L({closeDelay:[Number,String],openDelay:[Number,String]},"delay");function Sl(e,l){let t=()=>{};function n(s){t==null||t();const o=Number(s?e.openDelay:e.closeDelay);return new Promise(v=>{t=ea(o,()=>{l==null||l(s),v(s)})})}function a(){return n(!0)}function i(){return n(!1)}return{clearDelay:t,runOpenDelay:a,runCloseDelay:i}}function Cl(){const l=se("useScopeId").vnode.scopeId;return{scopeId:l?{[l]:""}:void 0}}const pl=["start","end","left","right","top","bottom"],wl=L({color:String,disableResizeWatcher:Boolean,disableRouteWatcher:Boolean,expandOnHover:Boolean,floating:Boolean,modelValue:{type:Boolean,default:null},permanent:Boolean,rail:{type:Boolean,default:null},railWidth:{type:[Number,String],default:56},scrim:{type:[Boolean,String],default:!0},image:String,temporary:Boolean,persistent:Boolean,touchless:Boolean,width:{type:[Number,String],default:256},location:{type:String,default:"start",validator:e=>pl.includes(e)},sticky:Boolean,...ve(),...D(),...bl(),...ta({mobile:null}),...be(),...pt(),...re(),...G({tag:"nav"}),...Z()},"VNavigationDrawer"),_l=R()({name:"VNavigationDrawer",props:wl(),emits:{"update:modelValue":e=>!0,"update:rail":e=>!0},setup(e,l){let{attrs:t,emit:n,slots:a}=l;const{isRtl:i}=nt(),{themeClasses:s}=J(e),{borderClasses:o}=fe(e),{backgroundColorClasses:v,backgroundColorStyles:y}=Be(T(e,"color")),{elevationClasses:g}=Se(e),{displayClasses:h,mobile:f}=na(e),{roundedClasses:m}=ue(e),r=qa(),u=Ie(e,"modelValue",null,j=>!!j),{ssrBootStyles:b}=it(),{scopeId:k}=Cl(),p=O(),P=N(!1),{runOpenDelay:$,runCloseDelay:E}=Sl(e,j=>{P.value=j}),S=d(()=>e.rail&&e.expandOnHover&&P.value?Number(e.width):Number(e.rail?e.railWidth:e.width)),_=d(()=>ct(e.location,i.value)),w=d(()=>e.persistent),V=d(()=>!e.permanent&&(f.value||e.temporary)),B=d(()=>e.sticky&&!V.value&&_.value!=="bottom");xe(()=>e.expandOnHover&&e.rail!=null,()=>{W(P,j=>n("update:rail",!j))}),xe(()=>!e.disableResizeWatcher,()=>{W(V,j=>!e.permanent&&bt(()=>u.value=!j))}),xe(()=>!e.disableRouteWatcher&&!!r,()=>{W(r.currentRoute,()=>V.value&&(u.value=!1))}),W(()=>e.permanent,j=>{j&&(u.value=!0)}),e.modelValue==null&&!V.value&&(u.value=e.permanent||!f.value);const{isDragging:x,dragProgress:C}=hl({el:p,isActive:u,isTemporary:V,width:S,touchless:T(e,"touchless"),position:_}),I=d(()=>{const j=V.value?0:e.rail&&e.expandOnHover?Number(e.railWidth):S.value;return x.value?j*C.value:j}),z=d(()=>["top","bottom"].includes(e.location)?0:S.value),{layoutItemStyles:X,layoutItemScrimStyles:ae}=wt({id:e.name,order:d(()=>parseInt(e.order,10)),position:_,layoutSize:I,elementSize:z,active:d(()=>u.value||x.value),disableTransitions:d(()=>x.value),absolute:d(()=>e.absolute||B.value&&typeof me.value!="string")}),{isStuck:me,stickyStyles:Ce}=vl({rootEl:p,isSticky:B,layoutItemStyles:X}),le=Be(d(()=>typeof e.scrim=="string"?e.scrim:null)),Te=d(()=>({...x.value?{opacity:C.value*.2,transition:"none"}:void 0,...ae.value}));return Fe({VList:{bgColor:"transparent"}}),H(()=>{const j=a.image||e.image;return c(Le,null,[c(e.tag,K({ref:p,onMouseenter:$,onMouseleave:E,class:["v-navigation-drawer",`v-navigation-drawer--${_.value}`,{"v-navigation-drawer--expand-on-hover":e.expandOnHover,"v-navigation-drawer--floating":e.floating,"v-navigation-drawer--is-hovering":P.value,"v-navigation-drawer--rail":e.rail,"v-navigation-drawer--temporary":V.value,"v-navigation-drawer--persistent":w.value,"v-navigation-drawer--active":u.value,"v-navigation-drawer--sticky":B.value},s.value,v.value,o.value,h.value,g.value,m.value,e.class],style:[y.value,X.value,b.value,Ce.value,e.style,["top","bottom"].includes(_.value)?{height:"auto"}:{}]},k,t),{default:()=>{var A,Q,pe;return[j&&c("div",{key:"image",class:"v-navigation-drawer__img"},[a.image?c(te,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{alt:"",cover:!0,height:"inherit",src:e.image}}},a.image):c(It,{key:"image-img",alt:"",cover:!0,height:"inherit",src:e.image},null)]),a.prepend&&c("div",{class:"v-navigation-drawer__prepend"},[(A=a.prepend)==null?void 0:A.call(a)]),c("div",{class:"v-navigation-drawer__content"},[(Q=a.default)==null?void 0:Q.call(a)]),a.append&&c("div",{class:"v-navigation-drawer__append"},[(pe=a.append)==null?void 0:pe.call(a)])]}}),c(tt,{name:"fade-transition"},{default:()=>[V.value&&(x.value||u.value)&&!!e.scrim&&c("div",K({class:["v-navigation-drawer__scrim",le.backgroundColorClasses.value],style:[Te.value,le.backgroundColorStyles.value],onClick:()=>{w.value||(u.value=!1)}},k),null)]})])}),{isStuck:me}}}),kl={__name:"AppNavigation",setup(e){const l=O(!1),t=O(!1);return(n,a)=>(ze(),et(_l,{modelValue:l.value,"onUpdate:modelValue":a[0]||(a[0]=i=>l.value=i),rail:t.value,permanent:"",onClick:a[1]||(a[1]=i=>t.value=!1)},{default:ye(()=>[c(dl,{density:"compact",nav:""},{default:ye(()=>[c(Re,{"prepend-icon":"mdi-home-city",title:"Home",value:"home"}),c(Re,{"prepend-icon":"mdi-account",title:"My Account",value:"account"}),c(Re,{"prepend-icon":"mdi-account-group-outline",title:"Users",value:"users"})]),_:1})]),_:1},8,["modelValue","rail"]))}},_n=L({text:String,...D(),...G()},"VToolbarTitle"),kn=R()({name:"VToolbarTitle",props:_n(),setup(e,l){let{slots:t}=l;return H(()=>{const n=!!(t.default||t.text||e.text);return c(e.tag,{class:["v-toolbar-title",e.class],style:e.style},{default:()=>{var a;return[n&&c("div",{class:"v-toolbar-title__placeholder"},[t.text?t.text():e.text,(a=t.default)==null?void 0:a.call(t)])]}})}),{}}}),xl=[null,"prominent","default","comfortable","compact"],xn=L({absolute:Boolean,collapse:Boolean,color:String,density:{type:String,default:"default",validator:e=>xl.includes(e)},extended:Boolean,extensionHeight:{type:[Number,String],default:48},flat:Boolean,floating:Boolean,height:{type:[Number,String],default:64},image:String,title:String,...ve(),...D(),...be(),...re(),...G({tag:"header"}),...Z()},"VToolbar"),Ht=R()({name:"VToolbar",props:xn(),setup(e,l){var m;let{slots:t}=l;const{backgroundColorClasses:n,backgroundColorStyles:a}=Be(T(e,"color")),{borderClasses:i}=fe(e),{elevationClasses:s}=Se(e),{roundedClasses:o}=ue(e),{themeClasses:v}=J(e),{rtlClasses:y}=nt(),g=N(!!(e.extended||(m=t.extension)!=null&&m.call(t))),h=d(()=>parseInt(Number(e.height)+(e.density==="prominent"?Number(e.height):0)-(e.density==="comfortable"?8:0)-(e.density==="compact"?16:0),10)),f=d(()=>g.value?parseInt(Number(e.extensionHeight)+(e.density==="prominent"?Number(e.extensionHeight):0)-(e.density==="comfortable"?4:0)-(e.density==="compact"?8:0),10):0);return Fe({VBtn:{variant:"text"}}),H(()=>{var k;const r=!!(e.title||t.title),u=!!(t.image||e.image),b=(k=t.extension)==null?void 0:k.call(t);return g.value=!!(e.extended||b),c(e.tag,{class:["v-toolbar",{"v-toolbar--absolute":e.absolute,"v-toolbar--collapse":e.collapse,"v-toolbar--flat":e.flat,"v-toolbar--floating":e.floating,[`v-toolbar--density-${e.density}`]:!0},n.value,i.value,s.value,o.value,v.value,y.value,e.class],style:[a.value,e.style]},{default:()=>[u&&c("div",{key:"image",class:"v-toolbar__image"},[t.image?c(te,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{cover:!0,src:e.image}}},t.image):c(It,{key:"image-img",cover:!0,src:e.image},null)]),c(te,{defaults:{VTabs:{height:M(h.value)}}},{default:()=>{var p,P,$;return[c("div",{class:"v-toolbar__content",style:{height:M(h.value)}},[t.prepend&&c("div",{class:"v-toolbar__prepend"},[(p=t.prepend)==null?void 0:p.call(t)]),r&&c(kn,{key:"title",text:e.title},{text:t.title}),(P=t.default)==null?void 0:P.call(t),t.append&&c("div",{class:"v-toolbar__append"},[($=t.append)==null?void 0:$.call(t)])])]}}),c(te,{defaults:{VTabs:{height:M(f.value)}}},{default:()=>[c(Qt,null,{default:()=>[g.value&&c("div",{class:"v-toolbar__extension",style:{height:M(f.value)}},[b])]})]})]})}),{contentHeight:h,extensionHeight:f}}}),Il=L({scrollTarget:{type:String},scrollThreshold:{type:[String,Number],default:300}},"scroll");function Vl(e){let l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const{canScroll:t}=l;let n=0,a=0;const i=O(null),s=N(0),o=N(0),v=N(0),y=N(!1),g=N(!1),h=d(()=>Number(e.scrollThreshold)),f=d(()=>aa((h.value-s.value)/h.value||0)),m=()=>{const r=i.value;if(!r||t&&!t.value)return;n=s.value,s.value="window"in r?r.pageYOffset:r.scrollTop;const u=r instanceof Window?document.documentElement.scrollHeight:r.scrollHeight;if(a!==u){a=u;return}g.value=s.value{o.value=o.value||s.value}),W(y,()=>{o.value=0}),Pe(()=>{W(()=>e.scrollTarget,r=>{var b;const u=r?document.querySelector(r):window;u&&u!==i.value&&((b=i.value)==null||b.removeEventListener("scroll",m),i.value=u,i.value.addEventListener("scroll",m,{passive:!0}))},{immediate:!0})}),ne(()=>{var r;(r=i.value)==null||r.removeEventListener("scroll",m)}),t&&W(t,m,{immediate:!0}),{scrollThreshold:h,currentScroll:s,currentThreshold:v,isScrollActive:y,scrollRatio:f,isScrollingUp:g,savedScroll:o}}const Ll=L({scrollBehavior:String,modelValue:{type:Boolean,default:!0},location:{type:String,default:"top",validator:e=>["top","bottom"].includes(e)},...xn(),...pt(),...Il(),height:{type:[Number,String],default:64}},"VAppBar"),Bl=R()({name:"VAppBar",props:Ll(),emits:{"update:modelValue":e=>!0},setup(e,l){let{slots:t}=l;const n=O(),a=Ie(e,"modelValue"),i=d(()=>{var P;const p=new Set(((P=e.scrollBehavior)==null?void 0:P.split(" "))??[]);return{hide:p.has("hide"),fullyHide:p.has("fully-hide"),inverted:p.has("inverted"),collapse:p.has("collapse"),elevate:p.has("elevate"),fadeImage:p.has("fade-image")}}),s=d(()=>{const p=i.value;return p.hide||p.fullyHide||p.inverted||p.collapse||p.elevate||p.fadeImage||!a.value}),{currentScroll:o,scrollThreshold:v,isScrollingUp:y,scrollRatio:g}=Vl(e,{canScroll:s}),h=d(()=>i.value.hide||i.value.fullyHide),f=d(()=>e.collapse||i.value.collapse&&(i.value.inverted?g.value>0:g.value===0)),m=d(()=>e.flat||i.value.fullyHide&&!a.value||i.value.elevate&&(i.value.inverted?o.value>0:o.value===0)),r=d(()=>i.value.fadeImage?i.value.inverted?1-g.value:g.value:void 0),u=d(()=>{var $,E;if(i.value.hide&&i.value.inverted)return 0;const p=(($=n.value)==null?void 0:$.contentHeight)??0,P=((E=n.value)==null?void 0:E.extensionHeight)??0;return h.value?o.value!!e.scrollBehavior),()=>{Qe(()=>{h.value?i.value.inverted?a.value=o.value>v.value:a.value=y.value||o.valueparseInt(e.order,10)),position:T(e,"location"),layoutSize:u,elementSize:N(void 0),active:a,absolute:T(e,"absolute")});return H(()=>{const p=Ht.filterProps(e);return c(Ht,K({ref:n,class:["v-app-bar",{"v-app-bar--bottom":e.location==="bottom"},e.class],style:[{...k.value,"--v-toolbar-image-opacity":r.value,height:void 0,...b.value},e.style]},p,{collapse:f.value,flat:m.value}),t)}),{}}}),In=L({baseColor:String,divided:Boolean,...ve(),...D(),...Ye(),...be(),...re(),...G(),...Z(),...qe()},"VBtnGroup"),Dt=R()({name:"VBtnGroup",props:In(),setup(e,l){let{slots:t}=l;const{themeClasses:n}=J(e),{densityClasses:a}=Ue(e),{borderClasses:i}=fe(e),{elevationClasses:s}=Se(e),{roundedClasses:o}=ue(e);Fe({VBtn:{height:"auto",baseColor:T(e,"baseColor"),color:T(e,"color"),density:T(e,"density"),flat:!0,variant:T(e,"variant")}}),H(()=>c(e.tag,{class:["v-btn-group",{"v-btn-group--divided":e.divided},n.value,i.value,a.value,s.value,o.value,e.class],style:e.style},t))}}),Pl=L({modelValue:{type:null,default:void 0},multiple:Boolean,mandatory:[Boolean,String],max:Number,selectedClass:String,disabled:Boolean},"group"),Tl=L({value:null,disabled:Boolean,selectedClass:String},"group-item");function Al(e,l){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;const n=se("useGroupItem");if(!n)throw new Error("[Vuetify] useGroupItem composable must be used inside a component setup function");const a=mt();de(Symbol.for(`${l.description}:id`),a);const i=ce(l,null);if(!i){if(!t)return i;throw new Error(`[Vuetify] Could not find useGroup injection with symbol ${l.description}`)}const s=T(e,"value"),o=d(()=>!!(i.disabled.value||e.disabled));i.register({id:a,value:s,disabled:o},n),ne(()=>{i.unregister(a)});const v=d(()=>i.isSelected(a)),y=d(()=>i.items.value[0].id===a),g=d(()=>i.items.value[i.items.value.length-1].id===a),h=d(()=>v.value&&[i.selectedClass.value,e.selectedClass]);return W(v,f=>{n.emit("group:selected",{value:f})},{flush:"sync"}),{id:a,isSelected:v,isFirst:y,isLast:g,toggle:()=>i.select(a,!v.value),select:f=>i.select(a,f),selectedClass:h,value:s,disabled:o,group:i}}function El(e,l){let t=!1;const n=oe([]),a=Ie(e,"modelValue",[],f=>f==null?[]:Vn(n,yt(f)),f=>{const m=Nl(n,f);return e.multiple?m:m[0]}),i=se("useGroup");function s(f,m){const r=f,u=Symbol.for(`${l.description}:id`),k=Gt(u,i==null?void 0:i.vnode).indexOf(m);ut(r.value)==null&&(r.value=k,r.useIndexAsValue=!0),k>-1?n.splice(k,0,r):n.push(r)}function o(f){if(t)return;v();const m=n.findIndex(r=>r.id===f);n.splice(m,1)}function v(){const f=n.find(m=>!m.disabled);f&&e.mandatory==="force"&&!a.value.length&&(a.value=[f.id])}Pe(()=>{v()}),ne(()=>{t=!0}),la(()=>{for(let f=0;fu.id===f);if(!(m&&(r!=null&&r.disabled)))if(e.multiple){const u=a.value.slice(),b=u.findIndex(p=>p===f),k=~b;if(m=m??!k,k&&e.mandatory&&u.length<=1||!k&&e.max!=null&&u.length+1>e.max)return;b<0&&m?u.push(f):b>=0&&!m&&u.splice(b,1),a.value=u}else{const u=a.value.includes(f);if(e.mandatory&&u)return;a.value=m??!u?[f]:[]}}function g(f){if(e.multiple,a.value.length){const m=a.value[0],r=n.findIndex(k=>k.id===m);let u=(r+f)%n.length,b=n[u];for(;b.disabled&&u!==r;)u=(u+f)%n.length,b=n[u];if(b.disabled)return;a.value=[n[u].id]}else{const m=n.find(r=>!r.disabled);m&&(a.value=[m.id])}}const h={register:s,unregister:o,selected:a,select:y,disabled:T(e,"disabled"),prev:()=>g(n.length-1),next:()=>g(1),isSelected:f=>a.value.includes(f),selectedClass:d(()=>e.selectedClass),items:d(()=>n),getItemIndex:f=>$l(n,f)};return de(l,h),h}function $l(e,l){const t=Vn(e,[l]);return t.length?e.findIndex(n=>n.id===t[0]):-1}function Vn(e,l){const t=[];return l.forEach(n=>{const a=e.find(s=>St(n,s.value)),i=e[n];(a==null?void 0:a.value)!=null?t.push(a.id):i!=null&&t.push(i.id)}),t}function Nl(e,l){const t=[];return l.forEach(n=>{const a=e.findIndex(i=>i.id===n);if(~a){const i=e[a];t.push(i.value!=null?i.value:a)}}),t}const Ln=Symbol.for("vuetify:v-btn-toggle"),Rl=L({...In(),...Pl()},"VBtnToggle");R()({name:"VBtnToggle",props:Rl(),emits:{"update:modelValue":e=>!0},setup(e,l){let{slots:t}=l;const{isSelected:n,next:a,prev:i,select:s,selected:o}=El(e,Ln);return H(()=>{const v=Dt.filterProps(e);return c(Dt,K({class:["v-btn-toggle",e.class]},v,{style:e.style}),{default:()=>{var y;return[(y=t.default)==null?void 0:y.call(t,{isSelected:n,next:a,prev:i,select:s,selected:o})]}})}),{next:a,prev:i,select:s}}});function zl(e,l){const t=O(),n=N(!1);if(ht){const a=new IntersectionObserver(i=>{n.value=!!i.find(s=>s.isIntersecting)},l);ne(()=>{a.disconnect()}),W(t,(i,s)=>{s&&(a.unobserve(s),n.value=!1),i&&a.observe(i)},{flush:"post"})}return{intersectionRef:t,isIntersecting:n}}const Ml=L({bgColor:String,color:String,indeterminate:[Boolean,String],modelValue:{type:[Number,String],default:0},rotate:{type:[Number,String],default:0},width:{type:[Number,String],default:4},...D(),...at(),...G({tag:"div"}),...Z()},"VProgressCircular"),Ol=R()({name:"VProgressCircular",props:Ml(),setup(e,l){let{slots:t}=l;const n=20,a=2*Math.PI*n,i=O(),{themeClasses:s}=J(e),{sizeClasses:o,sizeStyles:v}=lt(e),{textColorClasses:y,textColorStyles:g}=Oe(T(e,"color")),{textColorClasses:h,textColorStyles:f}=Oe(T(e,"bgColor")),{intersectionRef:m,isIntersecting:r}=zl(),{resizeRef:u,contentRect:b}=Ct(),k=d(()=>Math.max(0,Math.min(100,parseFloat(e.modelValue)))),p=d(()=>Number(e.width)),P=d(()=>v.value?Number(e.size):b.value?b.value.width:Math.max(p.value,32)),$=d(()=>n/(1-p.value/P.value)*2),E=d(()=>p.value/P.value*$.value),S=d(()=>M((100-k.value)/100*a));return Qe(()=>{m.value=i.value,u.value=i.value}),H(()=>c(e.tag,{ref:i,class:["v-progress-circular",{"v-progress-circular--indeterminate":!!e.indeterminate,"v-progress-circular--visible":r.value,"v-progress-circular--disable-shrink":e.indeterminate==="disable-shrink"},s.value,o.value,y.value,e.class],style:[v.value,g.value,e.style],role:"progressbar","aria-valuemin":"0","aria-valuemax":"100","aria-valuenow":e.indeterminate?void 0:k.value},{default:()=>[c("svg",{style:{transform:`rotate(calc(-90deg + ${Number(e.rotate)}deg))`},xmlns:"http://www.w3.org/2000/svg",viewBox:`0 0 ${$.value} ${$.value}`},[c("circle",{class:["v-progress-circular__underlay",h.value],style:f.value,fill:"transparent",cx:"50%",cy:"50%",r:n,"stroke-width":E.value,"stroke-dasharray":a,"stroke-dashoffset":0},null),c("circle",{class:"v-progress-circular__overlay",fill:"transparent",cx:"50%",cy:"50%",r:n,"stroke-width":E.value,"stroke-dasharray":a,"stroke-dashoffset":S.value},null)]),t.default&&c("div",{class:"v-progress-circular__content"},[t.default({value:k.value})])]})),{}}}),jt={center:"center",top:"bottom",bottom:"top",left:"right",right:"left"},Hl=L({location:String},"location");function Dl(e){let l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,t=arguments.length>2?arguments[2]:void 0;const{isRtl:n}=nt();return{locationStyles:d(()=>{if(!e.location)return{};const{side:i,align:s}=ra(e.location.split(" ").length>1?e.location:`${e.location} center`,n.value);function o(y){return t?t(y):0}const v={};return i!=="center"&&(l?v[jt[i]]=`calc(100% - ${o(i)}px)`:v[i]=0),s!=="center"?l?v[jt[s]]=`calc(100% - ${o(s)}px)`:v[s]=0:(i==="center"?v.top=v.left="50%":v[{top:"left",bottom:"left",left:"top",right:"top"}[i]]="50%",v.transform={top:"translateX(-50%)",bottom:"translateX(-50%)",left:"translateY(-50%)",right:"translateY(-50%)",center:"translate(-50%, -50%)"}[i]),v})}}const jl=L({loading:[Boolean,String]},"loader");function Fl(e){let l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:he();return{loaderClasses:d(()=>({[`${l}--loading`]:e.loading}))}}const Wl=["static","relative","fixed","absolute","sticky"],Gl=L({position:{type:String,validator:e=>Wl.includes(e)}},"position");function Yl(e){let l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:he();return{positionClasses:d(()=>e.position?`${l}--${e.position}`:void 0)}}function Ul(e,l){W(()=>{var t;return(t=e.isActive)==null?void 0:t.value},t=>{e.isLink.value&&t&&l&&bt(()=>{l(!0)})},{immediate:!0})}const Bn=L({active:{type:Boolean,default:void 0},activeColor:String,baseColor:String,symbol:{type:null,default:Ln},flat:Boolean,icon:[Boolean,String,Function,Object],prependIcon:ie,appendIcon:ie,block:Boolean,readonly:Boolean,slim:Boolean,stacked:Boolean,ripple:{type:[Boolean,Object],default:!0},text:String,...ve(),...D(),...Ye(),...We(),...be(),...Tl(),...jl(),...Hl(),...Gl(),...re(),...dn(),...at(),...G({tag:"button"}),...Z(),...qe({variant:"elevated"})},"VBtn"),ql=R()({name:"VBtn",props:Bn(),emits:{"group:selected":e=>!0},setup(e,l){let{attrs:t,slots:n}=l;const{themeClasses:a}=J(e),{borderClasses:i}=fe(e),{densityClasses:s}=Ue(e),{dimensionStyles:o}=Ge(e),{elevationClasses:v}=Se(e),{loaderClasses:y}=Fl(e),{locationStyles:g}=Dl(e),{positionClasses:h}=Yl(e),{roundedClasses:f}=ue(e),{sizeClasses:m,sizeStyles:r}=lt(e),u=Al(e,e.symbol,!1),b=cn(e,t),k=d(()=>{var x;return e.active!==void 0?e.active:b.isLink.value?(x=b.isActive)==null?void 0:x.value:u==null?void 0:u.isSelected.value}),p=d(()=>k.value?e.activeColor??e.color:e.color),P=d(()=>{var C,I;return{color:(u==null?void 0:u.isSelected.value)&&(!b.isLink.value||((C=b.isActive)==null?void 0:C.value))||!u||((I=b.isActive)==null?void 0:I.value)?p.value??e.baseColor:e.baseColor,variant:e.variant}}),{colorClasses:$,colorStyles:E,variantClasses:S}=Lt(P),_=d(()=>(u==null?void 0:u.disabled.value)||e.disabled),w=d(()=>e.variant==="elevated"&&!(e.disabled||e.flat||e.border)),V=d(()=>{if(!(e.value===void 0||typeof e.value=="symbol"))return Object(e.value)===e.value?JSON.stringify(e.value,null,0):e.value});function B(x){var C;_.value||b.isLink.value&&(x.metaKey||x.ctrlKey||x.shiftKey||x.button!==0||t.target==="_blank")||((C=b.navigate)==null||C.call(b,x),u==null||u.toggle())}return Ul(b,u==null?void 0:u.select),H(()=>{const x=b.isLink.value?"a":e.tag,C=!!(e.prependIcon||n.prepend),I=!!(e.appendIcon||n.append),z=!!(e.icon&&e.icon!==!0);return Me(c(x,K({type:x==="a"?void 0:"button",class:["v-btn",u==null?void 0:u.selectedClass.value,{"v-btn--active":k.value,"v-btn--block":e.block,"v-btn--disabled":_.value,"v-btn--elevated":w.value,"v-btn--flat":e.flat,"v-btn--icon":!!e.icon,"v-btn--loading":e.loading,"v-btn--readonly":e.readonly,"v-btn--slim":e.slim,"v-btn--stacked":e.stacked},a.value,i.value,$.value,s.value,v.value,y.value,h.value,f.value,m.value,S.value,e.class],style:[E.value,o.value,g.value,r.value,e.style],"aria-busy":e.loading?!0:void 0,disabled:_.value||void 0,tabindex:e.loading||e.readonly?-1:void 0,onClick:B,value:V.value},b.linkProps),{default:()=>{var X;return[Vt(!0,"v-btn"),!e.icon&&C&&c("span",{key:"prepend",class:"v-btn__prepend"},[n.prepend?c(te,{key:"prepend-defaults",disabled:!e.prependIcon,defaults:{VIcon:{icon:e.prependIcon}}},n.prepend):c(ge,{key:"prepend-icon",icon:e.prependIcon},null)]),c("span",{class:"v-btn__content","data-no-activator":""},[!n.default&&z?c(ge,{key:"content-icon",icon:e.icon},null):c(te,{key:"content-defaults",disabled:!z,defaults:{VIcon:{icon:e.icon}}},{default:()=>{var ae;return[((ae=n.default)==null?void 0:ae.call(n))??e.text]}})]),!e.icon&&I&&c("span",{key:"append",class:"v-btn__append"},[n.append?c(te,{key:"append-defaults",disabled:!e.appendIcon,defaults:{VIcon:{icon:e.appendIcon}}},n.append):c(ge,{key:"append-icon",icon:e.appendIcon},null)]),!!e.loading&&c("span",{key:"loader",class:"v-btn__loader"},[((X=n.loader)==null?void 0:X.call(n))??c(Ol,{color:typeof e.loading=="boolean"?void 0:e.loading,indeterminate:!0,width:"2"},null)])]}}),[[Cn,!_.value&&e.ripple,"",{center:!!e.icon}]])}),{group:u}}}),Xl=L({...Bn({icon:"$menu",variant:"text"})},"VAppBarNavIcon"),Kl=R()({name:"VAppBarNavIcon",props:Xl(),setup(e,l){let{slots:t}=l;return H(()=>c(ql,K(e,{class:["v-app-bar-nav-icon"]}),t)),{}}}),Zl=R()({name:"VAppBarTitle",props:_n(),setup(e,l){let{slots:t}=l;return H(()=>c(kn,K(e,{class:"v-app-bar-title"}),t)),{}}}),Jl={__name:"AppHeader",setup(e){return oe({initials:"JD",fullName:"John Doe",email:"john.doe@doe.com"}),(l,t)=>(ze(),et(Bl,{class:"px-1"},{default:ye(()=>[c(Kl,{icon:"mdi-menu"}),c(Zl,null,{default:ye(()=>t[0]||(t[0]=[rt("Smorrery WebApp")])),_:1})]),_:1}))}},Ql=L({...D(),...ca({fullHeight:!0}),...Z()},"VApp"),ei=R()({name:"VApp",props:Ql(),setup(e,l){let{slots:t}=l;const n=J(e),{layoutClasses:a,getLayoutItem:i,items:s,layoutRef:o}=fa(e),{rtlClasses:v}=nt();return H(()=>{var y;return c("div",{ref:o,class:["v-application",n.themeClasses.value,a.value,v.value,e.class],style:[e.style]},[c("div",{class:"v-application__wrap"},[(y=t.default)==null?void 0:y.call(t)])])}),{getLayoutItem:i,items:s,theme:n}}}),ti=L({scrollable:Boolean,...D(),...We(),...G({tag:"main"})},"VMain"),ni=R()({name:"VMain",props:ti(),setup(e,l){let{slots:t}=l;const{dimensionStyles:n}=Ge(e),{mainStyles:a}=da(),{ssrBootStyles:i}=it();return H(()=>c(e.tag,{class:["v-main",{"v-main--scrollable":e.scrollable},e.class],style:[a.value,i.value,n.value,e.style]},{default:()=>{var s,o;return[e.scrollable?c("div",{class:"v-main__scroller"},[(s=t.default)==null?void 0:s.call(t)]):(o=t.default)==null?void 0:o.call(t)]}})),{}}}),ai={};function li(e,l){const t=Jl,n=kl,a=ia("router-view"),i=pa;return ze(),et(ei,null,{default:ye(()=>[c(ni,null,{default:ye(()=>[c(t),c(n),c(a)]),_:1}),c(i)]),_:1})}const si=Kt(ai,[["render",li]]);export{si as default}; diff --git a/assets/default-y6g5o1_w.css b/assets/default-y6g5o1_w.css deleted file mode 100644 index 37632bc..0000000 --- a/assets/default-y6g5o1_w.css +++ /dev/null @@ -1 +0,0 @@ -.social-link[data-v-40134937] .v-icon{color:rgba(var(--v-theme-on-background),var(--v-disabled-opacity));text-decoration:none;transition:.2s ease-in-out}.social-link[data-v-40134937] .v-icon:hover{color:#1976d2}.v-footer{align-items:center;display:flex;flex:1 1 auto;padding:8px 16px;position:relative;transition:.2s cubic-bezier(.4,0,.2,1);transition-property:height,width,transform,max-width,left,right,top,bottom}.v-footer{border-color:rgba(var(--v-border-color),var(--v-border-opacity));border-style:solid;border-width:0}.v-footer--border{border-width:thin;box-shadow:none}.v-footer{box-shadow:0 0 0 0 var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 0 0 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 0 0 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-footer--absolute{position:absolute}.v-footer--fixed{position:fixed}.v-footer{border-radius:0}.v-footer{background:rgb(var(--v-theme-surface));color:rgba(var(--v-theme-on-surface),var(--v-high-emphasis-opacity))}.v-footer--rounded{border-radius:4px}.v-icon{--v-icon-size-multiplier: 1;align-items:center;display:inline-flex;font-feature-settings:"liga";height:1em;justify-content:center;letter-spacing:normal;line-height:1;position:relative;text-indent:0;text-align:center;-webkit-user-select:none;user-select:none;vertical-align:middle;width:1em;min-width:1em}.v-icon--clickable{cursor:pointer}.v-icon--disabled{pointer-events:none;opacity:.38}.v-icon--size-x-small{font-size:calc(var(--v-icon-size-multiplier) * 1em)}.v-icon--size-small{font-size:calc(var(--v-icon-size-multiplier) * 1.25em)}.v-icon--size-default{font-size:calc(var(--v-icon-size-multiplier) * 1.5em)}.v-icon--size-large{font-size:calc(var(--v-icon-size-multiplier) * 1.75em)}.v-icon--size-x-large{font-size:calc(var(--v-icon-size-multiplier) * 2em)}.v-icon__svg{fill:currentColor;width:100%;height:100%}.v-icon--start{margin-inline-end:8px}.v-icon--end{margin-inline-start:8px}.v-list{overflow:auto;padding:8px 0;position:relative;outline:none}.v-list{border-color:rgba(var(--v-border-color),var(--v-border-opacity));border-style:solid;border-width:0}.v-list--border{border-width:thin;box-shadow:none}.v-list{box-shadow:0 0 0 0 var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 0 0 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 0 0 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-list{border-radius:0}.v-list{background:rgba(var(--v-theme-surface));color:rgba(var(--v-theme-on-surface),var(--v-high-emphasis-opacity))}.v-list--disabled{pointer-events:none;-webkit-user-select:none;user-select:none}.v-list--nav{padding-inline:8px}.v-list--rounded{border-radius:4px}.v-list--subheader{padding-top:0}.v-list-img{border-radius:inherit;display:flex;height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%;z-index:-1}.v-list-subheader{align-items:center;background:inherit;color:rgba(var(--v-theme-on-surface),var(--v-medium-emphasis-opacity));display:flex;font-size:.875rem;font-weight:400;line-height:1.375rem;padding-inline-end:16px;min-height:40px;transition:.2s min-height cubic-bezier(.4,0,.2,1)}.v-list-subheader__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v-list--density-default .v-list-subheader{min-height:40px;padding-inline-start:calc(16px + var(--indent-padding))!important}.v-list--density-comfortable .v-list-subheader{min-height:36px;padding-inline-start:calc(16px + var(--indent-padding))!important}.v-list--density-compact .v-list-subheader{min-height:32px;padding-inline-start:calc(16px + var(--indent-padding))!important}.v-list-subheader--inset{--indent-padding: 56px}.v-list--nav .v-list-subheader{font-size:.75rem}.v-list-subheader--sticky{background:inherit;left:0;position:sticky;top:0;z-index:1}.v-list__overlay{background-color:currentColor;border-radius:inherit;bottom:0;left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .2s ease-in-out}.v-list-item{align-items:center;display:grid;flex:none;grid-template-areas:"prepend content append";grid-template-columns:max-content 1fr auto;outline:none;max-width:100%;padding:4px 16px;position:relative;text-decoration:none}.v-list-item{border-color:rgba(var(--v-border-color),var(--v-border-opacity));border-style:solid;border-width:0}.v-list-item--border{border-width:thin;box-shadow:none}.v-list-item:hover>.v-list-item__overlay{opacity:calc(var(--v-hover-opacity) * var(--v-theme-overlay-multiplier))}.v-list-item:focus-visible>.v-list-item__overlay{opacity:calc(var(--v-focus-opacity) * var(--v-theme-overlay-multiplier))}@supports not selector(:focus-visible){.v-list-item:focus>.v-list-item__overlay{opacity:calc(var(--v-focus-opacity) * var(--v-theme-overlay-multiplier))}}.v-list-item--active>.v-list-item__overlay,.v-list-item[aria-haspopup=menu][aria-expanded=true]>.v-list-item__overlay{opacity:calc(var(--v-activated-opacity) * var(--v-theme-overlay-multiplier))}.v-list-item--active:hover>.v-list-item__overlay,.v-list-item[aria-haspopup=menu][aria-expanded=true]:hover>.v-list-item__overlay{opacity:calc((var(--v-activated-opacity) + var(--v-hover-opacity)) * var(--v-theme-overlay-multiplier))}.v-list-item--active:focus-visible>.v-list-item__overlay,.v-list-item[aria-haspopup=menu][aria-expanded=true]:focus-visible>.v-list-item__overlay{opacity:calc((var(--v-activated-opacity) + var(--v-focus-opacity)) * var(--v-theme-overlay-multiplier))}@supports not selector(:focus-visible){.v-list-item--active:focus>.v-list-item__overlay,.v-list-item[aria-haspopup=menu][aria-expanded=true]:focus>.v-list-item__overlay{opacity:calc((var(--v-activated-opacity) + var(--v-focus-opacity)) * var(--v-theme-overlay-multiplier))}}.v-list-item{border-radius:0}.v-list-item--variant-plain,.v-list-item--variant-outlined,.v-list-item--variant-text,.v-list-item--variant-tonal{background:transparent;color:inherit}.v-list-item--variant-plain{opacity:.62}.v-list-item--variant-plain:focus,.v-list-item--variant-plain:hover{opacity:1}.v-list-item--variant-plain .v-list-item__overlay{display:none}.v-list-item--variant-elevated,.v-list-item--variant-flat{background:rgba(var(--v-theme-surface));color:rgba(var(--v-theme-on-surface),var(--v-high-emphasis-opacity))}.v-list-item--variant-elevated{box-shadow:0 2px 1px -1px var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 1px 1px 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 1px 3px 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-list-item--variant-flat{box-shadow:0 0 0 0 var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 0 0 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 0 0 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-list-item--variant-outlined{border:thin solid currentColor}.v-list-item--variant-text .v-list-item__overlay{background:currentColor}.v-list-item--variant-tonal .v-list-item__underlay{background:currentColor;opacity:var(--v-activated-opacity);border-radius:inherit;top:0;right:0;bottom:0;left:0;pointer-events:none}.v-list-item .v-list-item__underlay{position:absolute}@supports selector(:focus-visible){.v-list-item:after{pointer-events:none;border:2px solid currentColor;border-radius:4px;opacity:0;transition:opacity .2s ease-in-out}.v-list-item:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%}.v-list-item:focus-visible:after{opacity:calc(.15 * var(--v-theme-overlay-multiplier))}}.v-list-item__prepend>.v-badge .v-icon,.v-list-item__prepend>.v-icon,.v-list-item__append>.v-badge .v-icon,.v-list-item__append>.v-icon{opacity:var(--v-medium-emphasis-opacity)}.v-list-item--active .v-list-item__prepend>.v-badge .v-icon,.v-list-item--active .v-list-item__prepend>.v-icon,.v-list-item--active .v-list-item__append>.v-badge .v-icon,.v-list-item--active .v-list-item__append>.v-icon{opacity:1}.v-list-item--active:not(.v-list-item--link) .v-list-item__overlay{opacity:calc(var(--v-activated-opacity) * var(--v-theme-overlay-multiplier))}.v-list-item--rounded{border-radius:4px}.v-list-item--disabled{pointer-events:none;-webkit-user-select:none;user-select:none;opacity:.6}.v-list-item--link{cursor:pointer}.v-navigation-drawer--rail:not(.v-navigation-drawer--expand-on-hover) .v-list-item .v-avatar,.v-navigation-drawer--rail.v-navigation-drawer--expand-on-hover:not(.v-navigation-drawer--is-hovering) .v-list-item .v-avatar{--v-avatar-height: 24px}.v-list-item__prepend{align-items:center;align-self:center;display:flex;grid-area:prepend}.v-list-item__prepend>.v-badge~.v-list-item__spacer,.v-list-item__prepend>.v-icon~.v-list-item__spacer,.v-list-item__prepend>.v-tooltip~.v-list-item__spacer{width:32px}.v-list-item__prepend>.v-avatar~.v-list-item__spacer{width:16px}.v-list-item__prepend>.v-list-item-action~.v-list-item__spacer{width:16px}.v-list-item--slim .v-list-item__prepend>.v-badge~.v-list-item__spacer,.v-list-item--slim .v-list-item__prepend>.v-icon~.v-list-item__spacer,.v-list-item--slim .v-list-item__prepend>.v-tooltip~.v-list-item__spacer{width:20px}.v-list-item--slim .v-list-item__prepend>.v-avatar~.v-list-item__spacer{width:4px}.v-list-item--slim .v-list-item__prepend>.v-list-item-action~.v-list-item__spacer{width:4px}.v-list-item--three-line .v-list-item__prepend{align-self:start}.v-list-item__append{align-self:center;display:flex;align-items:center;grid-area:append}.v-list-item__append .v-list-item__spacer{order:-1;transition:.15s width cubic-bezier(.4,0,.2,1)}.v-list-item__append>.v-badge~.v-list-item__spacer,.v-list-item__append>.v-icon~.v-list-item__spacer,.v-list-item__append>.v-tooltip~.v-list-item__spacer{width:32px}.v-list-item__append>.v-avatar~.v-list-item__spacer{width:16px}.v-list-item__append>.v-list-item-action~.v-list-item__spacer{width:16px}.v-list-item--slim .v-list-item__append>.v-badge~.v-list-item__spacer,.v-list-item--slim .v-list-item__append>.v-icon~.v-list-item__spacer,.v-list-item--slim .v-list-item__append>.v-tooltip~.v-list-item__spacer{width:20px}.v-list-item--slim .v-list-item__append>.v-avatar~.v-list-item__spacer{width:4px}.v-list-item--slim .v-list-item__append>.v-list-item-action~.v-list-item__spacer{width:4px}.v-list-item--three-line .v-list-item__append{align-self:start}.v-list-item__content{align-self:center;grid-area:content;overflow:hidden}.v-list-item-action{align-self:center;display:flex;align-items:center;flex:none;transition:inherit;transition-property:height,width}.v-list-item-action--start{margin-inline-end:8px;margin-inline-start:-8px}.v-list-item-action--end{margin-inline-start:8px;margin-inline-end:-8px}.v-list-item-media{margin-top:0;margin-bottom:0}.v-list-item-media--start{margin-inline-end:16px}.v-list-item-media--end{margin-inline-start:16px}.v-list-item--two-line .v-list-item-media{margin-top:-4px;margin-bottom:-4px}.v-list-item--three-line .v-list-item-media{margin-top:0;margin-bottom:0}.v-list-item-subtitle{-webkit-box-orient:vertical;display:-webkit-box;opacity:var(--v-list-item-subtitle-opacity, var(--v-medium-emphasis-opacity));overflow:hidden;padding:0;text-overflow:ellipsis;overflow-wrap:break-word;word-break:initial}.v-list-item--one-line .v-list-item-subtitle{-webkit-line-clamp:1}.v-list-item--two-line .v-list-item-subtitle{-webkit-line-clamp:2}.v-list-item--three-line .v-list-item-subtitle{-webkit-line-clamp:3}.v-list-item-subtitle{font-size:.875rem;font-weight:400;letter-spacing:.0178571429em;line-height:1rem;text-transform:none}.v-list-item--nav .v-list-item-subtitle{font-size:.75rem;font-weight:400;letter-spacing:.0178571429em;line-height:1rem}.v-list-item-title{-webkit-hyphens:auto;hyphens:auto;overflow-wrap:normal;overflow:hidden;padding:0;white-space:nowrap;text-overflow:ellipsis;word-break:normal;word-wrap:break-word}.v-list-item-title{font-size:1rem;font-weight:400;letter-spacing:.009375em;line-height:1.5;text-transform:none}.v-list-item--nav .v-list-item-title{font-size:.8125rem;font-weight:500;letter-spacing:normal;line-height:1rem}.v-list-item--density-default{min-height:40px}.v-list-item--density-default.v-list-item--one-line{min-height:48px;padding-top:4px;padding-bottom:4px}.v-list-item--density-default.v-list-item--two-line{min-height:64px;padding-top:12px;padding-bottom:12px}.v-list-item--density-default.v-list-item--three-line{min-height:88px;padding-top:16px;padding-bottom:16px}.v-list-item--density-default.v-list-item--three-line .v-list-item__prepend,.v-list-item--density-default.v-list-item--three-line .v-list-item__append{padding-top:8px}.v-list-item--density-default:not(.v-list-item--nav).v-list-item--one-line{padding-inline:16px}.v-list-item--density-default:not(.v-list-item--nav).v-list-item--two-line{padding-inline:16px}.v-list-item--density-default:not(.v-list-item--nav).v-list-item--three-line{padding-inline:16px}.v-list-item--density-comfortable{min-height:36px}.v-list-item--density-comfortable.v-list-item--one-line{min-height:44px}.v-list-item--density-comfortable.v-list-item--two-line{min-height:60px;padding-top:8px;padding-bottom:8px}.v-list-item--density-comfortable.v-list-item--three-line{min-height:84px;padding-top:12px;padding-bottom:12px}.v-list-item--density-comfortable.v-list-item--three-line .v-list-item__prepend,.v-list-item--density-comfortable.v-list-item--three-line .v-list-item__append{padding-top:6px}.v-list-item--density-comfortable:not(.v-list-item--nav).v-list-item--one-line{padding-inline:16px}.v-list-item--density-comfortable:not(.v-list-item--nav).v-list-item--two-line{padding-inline:16px}.v-list-item--density-comfortable:not(.v-list-item--nav).v-list-item--three-line{padding-inline:16px}.v-list-item--density-compact{min-height:32px}.v-list-item--density-compact.v-list-item--one-line{min-height:40px}.v-list-item--density-compact.v-list-item--two-line{min-height:56px;padding-top:4px;padding-bottom:4px}.v-list-item--density-compact.v-list-item--three-line{min-height:80px;padding-top:8px;padding-bottom:8px}.v-list-item--density-compact.v-list-item--three-line .v-list-item__prepend,.v-list-item--density-compact.v-list-item--three-line .v-list-item__append{padding-top:4px}.v-list-item--density-compact:not(.v-list-item--nav).v-list-item--one-line{padding-inline:16px}.v-list-item--density-compact:not(.v-list-item--nav).v-list-item--two-line{padding-inline:16px}.v-list-item--density-compact:not(.v-list-item--nav).v-list-item--three-line{padding-inline:16px}.v-list-item--nav{padding-inline:8px}.v-list .v-list-item--nav:not(:only-child){margin-bottom:4px}.v-list-item__underlay{position:absolute}.v-list-item__overlay{background-color:currentColor;border-radius:inherit;bottom:0;left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .2s ease-in-out}.v-list-item--active.v-list-item--variant-elevated .v-list-item__overlay{--v-theme-overlay-multiplier: 0}.v-list{--indent-padding: 0px}.v-list--nav{--indent-padding: -8px}.v-list-group{--list-indent-size: 16px;--parent-padding: var(--indent-padding);--prepend-width: 40px}.v-list--slim .v-list-group{--prepend-width: 28px}.v-list-group--fluid{--list-indent-size: 0px}.v-list-group--prepend{--parent-padding: calc(var(--indent-padding) + var(--prepend-width))}.v-list-group--fluid.v-list-group--prepend{--parent-padding: var(--indent-padding)}.v-list-group__items{--indent-padding: calc(var(--parent-padding) + var(--list-indent-size))}.v-list-group__items .v-list-item{padding-inline-start:calc(16px + var(--indent-padding))!important}.v-list-group__header:not(.v-treeview-item--activatable-group-activator).v-list-item--active:not(:focus-visible) .v-list-item__overlay{opacity:0}.v-list-group__header:not(.v-treeview-item--activatable-group-activator).v-list-item--active:hover .v-list-item__overlay{opacity:calc(var(--v-hover-opacity) * var(--v-theme-overlay-multiplier))}.v-avatar{flex:none;align-items:center;display:inline-flex;justify-content:center;line-height:normal;overflow:hidden;position:relative;text-align:center;transition:.2s cubic-bezier(.4,0,.2,1);transition-property:width,height;vertical-align:middle}.v-avatar.v-avatar--size-x-small{--v-avatar-height: 24px}.v-avatar.v-avatar--size-small{--v-avatar-height: 32px}.v-avatar.v-avatar--size-default{--v-avatar-height: 40px}.v-avatar.v-avatar--size-large{--v-avatar-height: 48px}.v-avatar.v-avatar--size-x-large{--v-avatar-height: 56px}.v-avatar.v-avatar--density-default{height:calc(var(--v-avatar-height) + 0px);width:calc(var(--v-avatar-height) + 0px)}.v-avatar.v-avatar--density-comfortable{height:calc(var(--v-avatar-height) + -4px);width:calc(var(--v-avatar-height) + -4px)}.v-avatar.v-avatar--density-compact{height:calc(var(--v-avatar-height) + -8px);width:calc(var(--v-avatar-height) + -8px)}.v-avatar{border-color:rgba(var(--v-border-color),var(--v-border-opacity));border-style:solid;border-width:0}.v-avatar--border{border-width:thin;box-shadow:none}.v-avatar{border-radius:50%}.v-avatar--variant-plain,.v-avatar--variant-outlined,.v-avatar--variant-text,.v-avatar--variant-tonal{background:transparent;color:inherit}.v-avatar--variant-plain{opacity:.62}.v-avatar--variant-plain:focus,.v-avatar--variant-plain:hover{opacity:1}.v-avatar--variant-plain .v-avatar__overlay{display:none}.v-avatar--variant-elevated,.v-avatar--variant-flat{background:var(--v-theme-surface);color:rgba(var(--v-theme-on-surface),var(--v-medium-emphasis-opacity))}.v-avatar--variant-elevated{box-shadow:0 2px 1px -1px var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 1px 1px 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 1px 3px 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-avatar--variant-flat{box-shadow:0 0 0 0 var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 0 0 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 0 0 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-avatar--variant-outlined{border:thin solid currentColor}.v-avatar--variant-text .v-avatar__overlay{background:currentColor}.v-avatar--variant-tonal .v-avatar__underlay{background:currentColor;opacity:var(--v-activated-opacity);border-radius:inherit;top:0;right:0;bottom:0;left:0;pointer-events:none}.v-avatar .v-avatar__underlay{position:absolute}.v-avatar--rounded{border-radius:4px}.v-avatar--start{margin-inline-end:8px}.v-avatar--end{margin-inline-start:8px}.v-avatar .v-img{height:100%;width:100%}.v-img{--v-theme-overlay-multiplier: 3;z-index:0}.v-img.v-img--absolute{height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%;z-index:-1}.v-img--booting .v-responsive__sizer{transition:none}.v-img--rounded{border-radius:4px}.v-img__img,.v-img__picture,.v-img__gradient,.v-img__placeholder,.v-img__error{z-index:-1}.v-img__img,.v-img__picture,.v-img__gradient,.v-img__placeholder,.v-img__error{position:absolute;top:0;left:0;width:100%;height:100%}.v-img__img--preload{filter:blur(4px)}.v-img__img--contain{object-fit:contain}.v-img__img--cover{object-fit:cover}.v-img__gradient{background-repeat:no-repeat}.v-responsive{display:flex;flex:1 0 auto;max-height:100%;max-width:100%;overflow:hidden;position:relative}.v-responsive--inline{display:inline-flex;flex:0 0 auto}.v-responsive__content{flex:1 0 0px;max-width:100%}.v-responsive__sizer~.v-responsive__content{margin-inline-start:-100%}.v-responsive__sizer{flex:1 0 0px;transition:padding-bottom .2s cubic-bezier(.4,0,.2,1);pointer-events:none}.v-ripple__container{color:inherit;border-radius:inherit;position:absolute;width:100%;height:100%;left:0;top:0;overflow:hidden;z-index:0;pointer-events:none;contain:strict}.v-ripple__animation{color:inherit;position:absolute;top:0;left:0;border-radius:50%;background:currentColor;opacity:0;pointer-events:none;overflow:hidden;will-change:transform,opacity}.v-ripple__animation--enter{transition:none;opacity:0}.v-ripple__animation--in{transition:transform .25s cubic-bezier(0,0,.2,1),opacity .1s cubic-bezier(0,0,.2,1);opacity:calc(.25 * var(--v-theme-overlay-multiplier))}.v-ripple__animation--out{transition:opacity .3s cubic-bezier(0,0,.2,1);opacity:0}.v-divider{display:block;flex:1 1 100%;height:0px;max-height:0px;opacity:var(--v-border-opacity);transition:inherit}.v-divider{border-style:solid;border-width:thin 0 0 0}.v-divider--vertical{align-self:stretch;border-width:0 thin 0 0;display:inline-flex;height:auto;margin-left:-1px;max-height:100%;max-width:0px;vertical-align:text-bottom;width:0px}.v-divider--inset:not(.v-divider--vertical){max-width:calc(100% - 72px);margin-inline-start:72px}.v-divider--inset.v-divider--vertical{margin-bottom:8px;margin-top:8px;max-height:calc(100% - 16px)}.v-divider__content{padding:0 16px;text-wrap:nowrap}.v-divider__wrapper--vertical .v-divider__content{padding:4px 0}.v-divider__wrapper{display:flex;align-items:center;justify-content:center}.v-divider__wrapper--vertical{flex-direction:column;height:100%}.v-divider__wrapper--vertical .v-divider{margin:0 auto}.v-navigation-drawer{-webkit-overflow-scrolling:touch;background:rgb(var(--v-theme-surface));display:flex;flex-direction:column;height:100%;max-width:100%;pointer-events:auto;transition-duration:.2s;transition-property:box-shadow,transform,visibility,width,height,left,right,top,bottom;transition-timing-function:cubic-bezier(.4,0,.2,1);position:absolute}.v-navigation-drawer{border-color:rgba(var(--v-border-color),var(--v-border-opacity));border-style:solid;border-width:0}.v-navigation-drawer--border{border-width:thin;box-shadow:none}.v-navigation-drawer{box-shadow:0 0 0 0 var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 0 0 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 0 0 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-navigation-drawer{background:rgb(var(--v-theme-surface));color:rgba(var(--v-theme-on-surface),var(--v-high-emphasis-opacity))}.v-navigation-drawer--rounded{border-radius:4px}.v-navigation-drawer--top,.v-navigation-drawer--bottom{max-height:-webkit-fill-available;overflow-y:auto}.v-navigation-drawer--top{top:0;border-bottom-width:thin}.v-navigation-drawer--bottom{left:0;border-top-width:thin}.v-navigation-drawer--left{top:0;left:0;right:auto;border-right-width:thin}.v-navigation-drawer--right{top:0;left:auto;right:0;border-left-width:thin}.v-navigation-drawer--floating{border:none}.v-navigation-drawer--temporary.v-navigation-drawer--active{box-shadow:0 8px 10px -5px var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 16px 24px 2px var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 6px 30px 5px var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-navigation-drawer--sticky{height:auto;transition:box-shadow,transform,visibility,width,height,left,right}.v-navigation-drawer .v-list{overflow:hidden}.v-navigation-drawer__content{flex:0 1 auto;height:100%;max-width:100%;overflow-x:hidden;overflow-y:auto}.v-navigation-drawer__img{height:100%;left:0;position:absolute;top:0;width:100%;z-index:-1}.v-navigation-drawer__img img:not(.v-img__img){height:inherit;object-fit:cover;width:inherit}.v-navigation-drawer__scrim{position:absolute;top:0;left:0;width:100%;height:100%;background:#000;opacity:.2;transition:opacity .2s cubic-bezier(.4,0,.2,1);z-index:1}.v-navigation-drawer__prepend,.v-navigation-drawer__append{flex:none;overflow:hidden}.v-app-bar{display:flex}.v-app-bar.v-toolbar{background:rgb(var(--v-theme-surface));color:rgba(var(--v-theme-on-surface),var(--v-high-emphasis-opacity))}.v-app-bar.v-toolbar:not(.v-toolbar--flat){box-shadow:0 2px 4px -1px var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 4px 5px 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 1px 10px 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-app-bar:not(.v-toolbar--absolute){padding-inline-end:var(--v-scrollbar-offset)}.v-toolbar{align-items:flex-start;display:flex;flex:none;flex-direction:column;justify-content:space-between;max-width:100%;position:relative;transition:.2s cubic-bezier(.4,0,.2,1);transition-property:height,width,transform,max-width,left,right,top,bottom,box-shadow;width:100%}.v-toolbar{border-color:rgba(var(--v-border-color),var(--v-border-opacity));border-style:solid;border-width:0}.v-toolbar--border{border-width:thin;box-shadow:none}.v-toolbar{box-shadow:0 0 0 0 var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 0 0 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 0 0 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-toolbar{border-radius:0}.v-toolbar{background:rgb(var(--v-theme-surface-light));color:rgba(var(--v-theme-on-surface-light),var(--v-high-emphasis-opacity))}.v-toolbar--absolute{position:absolute}.v-toolbar--collapse{max-width:112px;overflow:hidden;border-end-end-radius:24px}.v-toolbar--collapse .v-toolbar-title{display:none}.v-toolbar--flat{box-shadow:0 0 0 0 var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 0 0 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 0 0 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-toolbar--floating{display:inline-flex}.v-toolbar--rounded{border-radius:4px}.v-toolbar__content,.v-toolbar__extension{align-items:center;display:flex;flex:0 0 auto;position:relative;transition:inherit;width:100%}.v-toolbar__content{overflow:hidden}.v-toolbar__content>.v-btn:first-child{margin-inline-start:4px}.v-toolbar__content>.v-btn:last-child{margin-inline-end:4px}.v-toolbar__content>.v-toolbar-title{margin-inline-start:20px}.v-toolbar--density-prominent .v-toolbar__content{align-items:flex-start}.v-toolbar__image{display:flex;opacity:var(--v-toolbar-image-opacity, 1);transition-property:opacity}.v-toolbar__image{position:absolute;top:0;left:0;width:100%;height:100%}.v-toolbar__prepend,.v-toolbar__append{align-items:center;align-self:stretch;display:flex}.v-toolbar__prepend{margin-inline:4px auto}.v-toolbar__append{margin-inline:auto 4px}.v-toolbar-title{flex:1 1;font-size:1.25rem;min-width:0}.v-toolbar-title{font-size:1.25rem;font-weight:400;letter-spacing:0;line-height:1.75rem;text-transform:none}.v-toolbar--density-prominent .v-toolbar-title{align-self:flex-end;padding-bottom:6px}.v-toolbar--density-prominent .v-toolbar-title{font-size:1.5rem;font-weight:400;letter-spacing:0;line-height:2.25rem;text-transform:none}.v-toolbar-title__placeholder{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v-toolbar-items{display:flex;height:inherit;align-self:stretch}.v-toolbar-items>.v-btn{border-radius:0}.v-btn{align-items:center;border-radius:4px;display:inline-grid;grid-template-areas:"prepend content append";grid-template-columns:max-content auto max-content;font-weight:500;justify-content:center;letter-spacing:.0892857143em;line-height:normal;max-width:100%;outline:none;position:relative;text-decoration:none;text-indent:.0892857143em;text-transform:uppercase;transition-property:box-shadow,transform,opacity,background;transition-duration:.28s;transition-timing-function:cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none;vertical-align:middle;flex-shrink:0}.v-btn--size-x-small{--v-btn-size: .625rem;--v-btn-height: 20px;font-size:var(--v-btn-size);min-width:36px;padding:0 8px}.v-btn--size-small{--v-btn-size: .75rem;--v-btn-height: 28px;font-size:var(--v-btn-size);min-width:50px;padding:0 12px}.v-btn--size-default{--v-btn-size: .875rem;--v-btn-height: 36px;font-size:var(--v-btn-size);min-width:64px;padding:0 16px}.v-btn--size-large{--v-btn-size: 1rem;--v-btn-height: 44px;font-size:var(--v-btn-size);min-width:78px;padding:0 20px}.v-btn--size-x-large{--v-btn-size: 1.125rem;--v-btn-height: 52px;font-size:var(--v-btn-size);min-width:92px;padding:0 24px}.v-btn.v-btn--density-default{height:calc(var(--v-btn-height) + 0px)}.v-btn.v-btn--density-comfortable{height:calc(var(--v-btn-height) + -8px)}.v-btn.v-btn--density-compact{height:calc(var(--v-btn-height) + -12px)}.v-btn{border-color:rgba(var(--v-border-color),var(--v-border-opacity));border-style:solid;border-width:0}.v-btn--border{border-width:thin;box-shadow:none}.v-btn--absolute{position:absolute}.v-btn--fixed{position:fixed}.v-btn:hover>.v-btn__overlay{opacity:calc(var(--v-hover-opacity) * var(--v-theme-overlay-multiplier))}.v-btn:focus-visible>.v-btn__overlay{opacity:calc(var(--v-focus-opacity) * var(--v-theme-overlay-multiplier))}@supports not selector(:focus-visible){.v-btn:focus>.v-btn__overlay{opacity:calc(var(--v-focus-opacity) * var(--v-theme-overlay-multiplier))}}.v-btn--active>.v-btn__overlay,.v-btn[aria-haspopup=menu][aria-expanded=true]>.v-btn__overlay{opacity:calc(var(--v-activated-opacity) * var(--v-theme-overlay-multiplier))}.v-btn--active:hover>.v-btn__overlay,.v-btn[aria-haspopup=menu][aria-expanded=true]:hover>.v-btn__overlay{opacity:calc((var(--v-activated-opacity) + var(--v-hover-opacity)) * var(--v-theme-overlay-multiplier))}.v-btn--active:focus-visible>.v-btn__overlay,.v-btn[aria-haspopup=menu][aria-expanded=true]:focus-visible>.v-btn__overlay{opacity:calc((var(--v-activated-opacity) + var(--v-focus-opacity)) * var(--v-theme-overlay-multiplier))}@supports not selector(:focus-visible){.v-btn--active:focus>.v-btn__overlay,.v-btn[aria-haspopup=menu][aria-expanded=true]:focus>.v-btn__overlay{opacity:calc((var(--v-activated-opacity) + var(--v-focus-opacity)) * var(--v-theme-overlay-multiplier))}}.v-btn--variant-plain,.v-btn--variant-outlined,.v-btn--variant-text,.v-btn--variant-tonal{background:transparent;color:inherit}.v-btn--variant-plain{opacity:.62}.v-btn--variant-plain:focus,.v-btn--variant-plain:hover{opacity:1}.v-btn--variant-plain .v-btn__overlay{display:none}.v-btn--variant-elevated,.v-btn--variant-flat{background:rgb(var(--v-theme-surface));color:rgba(var(--v-theme-on-surface),var(--v-high-emphasis-opacity))}.v-btn--variant-elevated{box-shadow:0 3px 1px -2px var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 2px 2px 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 1px 5px 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-btn--variant-flat{box-shadow:0 0 0 0 var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 0 0 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 0 0 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-btn--variant-outlined{border:thin solid currentColor}.v-btn--variant-text .v-btn__overlay{background:currentColor}.v-btn--variant-tonal .v-btn__underlay{background:currentColor;opacity:var(--v-activated-opacity);border-radius:inherit;top:0;right:0;bottom:0;left:0;pointer-events:none}.v-btn .v-btn__underlay{position:absolute}@supports selector(:focus-visible){.v-btn:after{pointer-events:none;border:2px solid currentColor;border-radius:inherit;opacity:0;transition:opacity .2s ease-in-out}.v-btn:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%}.v-btn:focus-visible:after{opacity:calc(.25 * var(--v-theme-overlay-multiplier))}}.v-btn--icon{border-radius:50%;min-width:0;padding:0}.v-btn--icon.v-btn--size-default{--v-btn-size: 1rem}.v-btn--icon.v-btn--density-default{width:calc(var(--v-btn-height) + 12px);height:calc(var(--v-btn-height) + 12px)}.v-btn--icon.v-btn--density-comfortable{width:calc(var(--v-btn-height) + 0px);height:calc(var(--v-btn-height) + 0px)}.v-btn--icon.v-btn--density-compact{width:calc(var(--v-btn-height) + -8px);height:calc(var(--v-btn-height) + -8px)}.v-btn--elevated:hover,.v-btn--elevated:focus{box-shadow:0 2px 4px -1px var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 4px 5px 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 1px 10px 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-btn--elevated:active{box-shadow:0 5px 5px -3px var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 8px 10px 1px var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 3px 14px 2px var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-btn--flat{box-shadow:none}.v-btn--block{display:flex;flex:1 0 auto;min-width:100%}.v-btn--disabled{pointer-events:none;opacity:.26}.v-btn--disabled:hover{opacity:.26}.v-btn--disabled.v-btn--variant-elevated,.v-btn--disabled.v-btn--variant-flat{box-shadow:none;opacity:1;color:rgba(var(--v-theme-on-surface),.26);background:rgb(var(--v-theme-surface))}.v-btn--disabled.v-btn--variant-elevated .v-btn__overlay,.v-btn--disabled.v-btn--variant-flat .v-btn__overlay{opacity:.4615384615}.v-btn--loading{pointer-events:none}.v-btn--loading .v-btn__content,.v-btn--loading .v-btn__prepend,.v-btn--loading .v-btn__append{opacity:0}.v-btn--stacked{grid-template-areas:"prepend" "content" "append";grid-template-columns:auto;grid-template-rows:max-content max-content max-content;justify-items:center;align-content:center}.v-btn--stacked .v-btn__content{flex-direction:column;line-height:1.25}.v-btn--stacked .v-btn__prepend,.v-btn--stacked .v-btn__append,.v-btn--stacked .v-btn__content>.v-icon--start,.v-btn--stacked .v-btn__content>.v-icon--end{margin-inline:0}.v-btn--stacked .v-btn__prepend,.v-btn--stacked .v-btn__content>.v-icon--start{margin-bottom:4px}.v-btn--stacked .v-btn__append,.v-btn--stacked .v-btn__content>.v-icon--end{margin-top:4px}.v-btn--stacked.v-btn--size-x-small{--v-btn-size: .625rem;--v-btn-height: 56px;font-size:var(--v-btn-size);min-width:56px;padding:0 12px}.v-btn--stacked.v-btn--size-small{--v-btn-size: .75rem;--v-btn-height: 64px;font-size:var(--v-btn-size);min-width:64px;padding:0 14px}.v-btn--stacked.v-btn--size-default{--v-btn-size: .875rem;--v-btn-height: 72px;font-size:var(--v-btn-size);min-width:72px;padding:0 16px}.v-btn--stacked.v-btn--size-large{--v-btn-size: 1rem;--v-btn-height: 80px;font-size:var(--v-btn-size);min-width:80px;padding:0 18px}.v-btn--stacked.v-btn--size-x-large{--v-btn-size: 1.125rem;--v-btn-height: 88px;font-size:var(--v-btn-size);min-width:88px;padding:0 20px}.v-btn--stacked.v-btn--density-default{height:calc(var(--v-btn-height) + 0px)}.v-btn--stacked.v-btn--density-comfortable{height:calc(var(--v-btn-height) + -16px)}.v-btn--stacked.v-btn--density-compact{height:calc(var(--v-btn-height) + -24px)}.v-btn--slim{padding:0 8px}.v-btn--readonly{pointer-events:none}.v-btn--rounded{border-radius:24px}.v-btn--rounded.v-btn--icon{border-radius:4px}.v-btn .v-icon{--v-icon-size-multiplier: .8571428571}.v-btn--icon .v-icon{--v-icon-size-multiplier: 1}.v-btn--stacked .v-icon{--v-icon-size-multiplier: 1.1428571429}.v-btn--stacked.v-btn--block{min-width:100%}.v-btn__loader{align-items:center;display:flex;height:100%;justify-content:center;left:0;position:absolute;top:0;width:100%}.v-btn__loader>.v-progress-circular{width:1.5em;height:1.5em}.v-btn__content,.v-btn__prepend,.v-btn__append{align-items:center;display:flex;transition:transform,opacity .2s cubic-bezier(.4,0,.2,1)}.v-btn__prepend{grid-area:prepend;margin-inline:calc(var(--v-btn-height) / -9) calc(var(--v-btn-height) / 4.5)}.v-btn--slim .v-btn__prepend{margin-inline-start:0}.v-btn__append{grid-area:append;margin-inline:calc(var(--v-btn-height) / 4.5) calc(var(--v-btn-height) / -9)}.v-btn--slim .v-btn__append{margin-inline-end:0}.v-btn__content{grid-area:content;justify-content:center;white-space:nowrap}.v-btn__content>.v-icon--start{margin-inline:calc(var(--v-btn-height) / -9) calc(var(--v-btn-height) / 4.5)}.v-btn__content>.v-icon--end{margin-inline:calc(var(--v-btn-height) / 4.5) calc(var(--v-btn-height) / -9)}.v-btn--stacked .v-btn__content{white-space:normal}.v-btn__overlay{background-color:currentColor;border-radius:inherit;opacity:0;transition:opacity .2s ease-in-out}.v-btn__overlay,.v-btn__underlay{pointer-events:none}.v-btn__overlay,.v-btn__underlay{position:absolute;top:0;left:0;width:100%;height:100%}.v-pagination .v-btn{border-radius:4px}.v-pagination .v-btn--rounded{border-radius:50%}.v-btn__overlay{transition:none}.v-pagination__item--is-active .v-btn__overlay{opacity:var(--v-border-opacity)}.v-btn-toggle>.v-btn.v-btn--active:not(.v-btn--disabled)>.v-btn__overlay{opacity:calc(var(--v-activated-opacity) * var(--v-theme-overlay-multiplier))}.v-btn-toggle>.v-btn.v-btn--active:not(.v-btn--disabled):hover>.v-btn__overlay{opacity:calc((var(--v-activated-opacity) + var(--v-hover-opacity)) * var(--v-theme-overlay-multiplier))}.v-btn-toggle>.v-btn.v-btn--active:not(.v-btn--disabled):focus-visible>.v-btn__overlay{opacity:calc((var(--v-activated-opacity) + var(--v-focus-opacity)) * var(--v-theme-overlay-multiplier))}@supports not selector(:focus-visible){.v-btn-toggle>.v-btn.v-btn--active:not(.v-btn--disabled):focus>.v-btn__overlay{opacity:calc((var(--v-activated-opacity) + var(--v-focus-opacity)) * var(--v-theme-overlay-multiplier))}}.v-btn-group{display:inline-flex;flex-wrap:nowrap;max-width:100%;min-width:0;overflow:hidden;vertical-align:middle}.v-btn-group{border-color:rgba(var(--v-border-color),var(--v-border-opacity));border-style:solid;border-width:0}.v-btn-group--border{border-width:thin;box-shadow:none}.v-btn-group{box-shadow:0 0 0 0 var(--v-shadow-key-umbra-opacity, rgba(0, 0, 0, .2)),0 0 0 0 var(--v-shadow-key-penumbra-opacity, rgba(0, 0, 0, .14)),0 0 0 0 var(--v-shadow-key-ambient-opacity, rgba(0, 0, 0, .12))}.v-btn-group{border-radius:4px}.v-btn-group{background:transparent;color:rgba(var(--v-theme-on-surface),var(--v-high-emphasis-opacity))}.v-btn-group--density-default.v-btn-group{height:48px}.v-btn-group--density-comfortable.v-btn-group{height:40px}.v-btn-group--density-compact.v-btn-group{height:36px}.v-btn-group .v-btn{border-radius:0;border-color:inherit}.v-btn-group .v-btn:not(:last-child){border-inline-end:none}.v-btn-group .v-btn:not(:first-child){border-inline-start:none}.v-btn-group .v-btn:first-child{border-start-start-radius:inherit;border-end-start-radius:inherit}.v-btn-group .v-btn:last-child{border-start-end-radius:inherit;border-end-end-radius:inherit}.v-btn-group--divided .v-btn:not(:last-child){border-inline-end-width:thin;border-inline-end-style:solid;border-inline-end-color:rgba(var(--v-border-color),var(--v-border-opacity))}.v-btn-group--tile{border-radius:0}.v-progress-circular{align-items:center;display:inline-flex;justify-content:center;position:relative;vertical-align:middle}.v-progress-circular>svg{width:100%;height:100%;margin:auto;position:absolute;top:0;bottom:0;left:0;right:0;z-index:0}.v-progress-circular__content{align-items:center;display:flex;justify-content:center}.v-progress-circular__underlay{color:rgba(var(--v-border-color),var(--v-border-opacity));stroke:currentColor;z-index:1}.v-progress-circular__overlay{stroke:currentColor;transition:all .2s ease-in-out,stroke-width 0s;z-index:2}.v-progress-circular--size-x-small{height:16px;width:16px}.v-progress-circular--size-small{height:24px;width:24px}.v-progress-circular--size-default{height:32px;width:32px}.v-progress-circular--size-large{height:48px;width:48px}.v-progress-circular--size-x-large{height:64px;width:64px}.v-progress-circular--indeterminate>svg{animation:progress-circular-rotate 1.4s linear infinite;transform-origin:center center;transition:all .2s ease-in-out}.v-progress-circular--indeterminate .v-progress-circular__overlay{animation:progress-circular-dash 1.4s ease-in-out infinite,progress-circular-rotate 1.4s linear infinite;stroke-dasharray:25,200;stroke-dashoffset:0;stroke-linecap:round;transform-origin:center center;transform:rotate(-90deg)}.v-progress-circular--disable-shrink>svg{animation-duration:.7s}.v-progress-circular--disable-shrink .v-progress-circular__overlay{animation:none}.v-progress-circular--indeterminate:not(.v-progress-circular--visible)>svg,.v-progress-circular--indeterminate:not(.v-progress-circular--visible) .v-progress-circular__overlay{animation-play-state:paused!important}@keyframes progress-circular-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0px}50%{stroke-dasharray:100,200;stroke-dashoffset:-15px}to{stroke-dasharray:100,200;stroke-dashoffset:-124px}}@keyframes progress-circular-rotate{to{transform:rotate(270deg)}}.v-application{display:flex;background:rgb(var(--v-theme-background));color:rgba(var(--v-theme-on-background),var(--v-high-emphasis-opacity))}.v-application__wrap{backface-visibility:hidden;display:flex;flex-direction:column;flex:1 1 auto;max-width:100%;min-height:100vh;min-height:100dvh;position:relative}.v-main{flex:1 0 auto;max-width:100%;transition:.2s cubic-bezier(.4,0,.2,1);padding-left:var(--v-layout-left);padding-right:var(--v-layout-right);padding-top:var(--v-layout-top);padding-bottom:var(--v-layout-bottom)}.v-main__scroller{max-width:100%;position:relative}.v-main--scrollable{display:flex}.v-main--scrollable{position:absolute;top:0;left:0;width:100%;height:100%}.v-main--scrollable>.v-main__scroller{flex:1 1 auto;overflow-y:auto;--v-layout-left: 0px;--v-layout-right: 0px;--v-layout-top: 0px;--v-layout-bottom: 0px} diff --git a/assets/index-CdApKlwa.js b/assets/index-CFgTnFr_.js similarity index 79% rename from assets/index-CdApKlwa.js rename to assets/index-CFgTnFr_.js index 0911c56..87d91dc 100644 --- a/assets/index-CdApKlwa.js +++ b/assets/index-CFgTnFr_.js @@ -1,12 +1,12 @@ -import{r as Dl,l as Ul,O as Ho,R as Il,P as Nl}from"./index-DVsZ779A.js";/** +import{B as wa}from"./VBtn-nTHrG9ot.js";import{r as fi,o as zl,z as qo,C as Hl,E as Ir,G as Ra,x as Ca,A as Gl}from"./index-DA-NTYk_.js";/** * @license * Copyright 2010-2024 Three.js Authors * SPDX-License-Identifier: MIT - */const Qs="169",Qn={LEFT:0,MIDDLE:1,RIGHT:2,ROTATE:0,DOLLY:1,PAN:2},$n={ROTATE:0,PAN:1,DOLLY_PAN:2,DOLLY_ROTATE:3},Fl=0,Ta=1,Ol=2,Go=1,Vo=2,$e=3,mn=0,_e=1,Ve=2,fn=0,ti=1,Aa=2,ba=3,wa=4,Bl=5,bn=100,zl=101,Hl=102,Gl=103,Vl=104,kl=200,Wl=201,Xl=202,Yl=203,fs=204,ps=205,ql=206,Kl=207,Zl=208,jl=209,$l=210,Jl=211,Ql=212,tc=213,ec=214,ms=0,_s=1,gs=2,ii=3,vs=4,xs=5,Ms=6,Ss=7,ko=0,nc=1,ic=2,pn=0,rc=1,sc=2,ac=3,oc=4,lc=5,cc=6,hc=7,Wo=300,ri=301,si=302,Es=303,ys=304,Sr=306,Ts=1e3,Rn=1001,As=1002,Le=1003,uc=1004,Ii=1005,Fe=1006,Lr=1007,Cn=1008,en=1009,Xo=1010,Yo=1011,Ai=1012,ta=1013,Pn=1014,Qe=1015,Ri=1016,ea=1017,na=1018,ai=1020,qo=35902,Ko=1021,Zo=1022,Be=1023,jo=1024,$o=1025,ei=1026,oi=1027,Jo=1028,ia=1029,Qo=1030,ra=1031,sa=1033,or=33776,lr=33777,cr=33778,hr=33779,bs=35840,ws=35841,Rs=35842,Cs=35843,Ps=36196,Ls=37492,Ds=37496,Us=37808,Is=37809,Ns=37810,Fs=37811,Os=37812,Bs=37813,zs=37814,Hs=37815,Gs=37816,Vs=37817,ks=37818,Ws=37819,Xs=37820,Ys=37821,ur=36492,qs=36494,Ks=36495,tl=36283,Zs=36284,js=36285,$s=36286,dc=3200,fc=3201,el=0,pc=1,dn="",He="srgb",gn="srgb-linear",aa="display-p3",Er="display-p3-linear",pr="linear",te="srgb",mr="rec709",_r="p3",Nn=7680,Ra=519,mc=512,_c=513,gc=514,nl=515,vc=516,xc=517,Mc=518,Sc=519,Ca=35044,Pa="300 es",tn=2e3,gr=2001;class Un{addEventListener(t,e){this._listeners===void 0&&(this._listeners={});const n=this._listeners;n[t]===void 0&&(n[t]=[]),n[t].indexOf(e)===-1&&n[t].push(e)}hasEventListener(t,e){if(this._listeners===void 0)return!1;const n=this._listeners;return n[t]!==void 0&&n[t].indexOf(e)!==-1}removeEventListener(t,e){if(this._listeners===void 0)return;const r=this._listeners[t];if(r!==void 0){const s=r.indexOf(e);s!==-1&&r.splice(s,1)}}dispatchEvent(t){if(this._listeners===void 0)return;const n=this._listeners[t.type];if(n!==void 0){t.target=this;const r=n.slice(0);for(let s=0,a=r.length;s>8&255]+he[i>>16&255]+he[i>>24&255]+"-"+he[t&255]+he[t>>8&255]+"-"+he[t>>16&15|64]+he[t>>24&255]+"-"+he[e&63|128]+he[e>>8&255]+"-"+he[e>>16&255]+he[e>>24&255]+he[n&255]+he[n>>8&255]+he[n>>16&255]+he[n>>24&255]).toLowerCase()}function de(i,t,e){return Math.max(t,Math.min(e,i))}function oa(i,t){return(i%t+t)%t}function Ec(i,t,e,n,r){return n+(i-t)*(r-n)/(e-t)}function yc(i,t,e){return i!==t?(e-i)/(t-i):0}function Ti(i,t,e){return(1-e)*i+e*t}function Tc(i,t,e,n){return Ti(i,t,1-Math.exp(-e*n))}function Ac(i,t=1){return t-Math.abs(oa(i,t*2)-t)}function bc(i,t,e){return i<=t?0:i>=e?1:(i=(i-t)/(e-t),i*i*(3-2*i))}function wc(i,t,e){return i<=t?0:i>=e?1:(i=(i-t)/(e-t),i*i*i*(i*(i*6-15)+10))}function Rc(i,t){return i+Math.floor(Math.random()*(t-i+1))}function Cc(i,t){return i+Math.random()*(t-i)}function Pc(i){return i*(.5-Math.random())}function Lc(i){i!==void 0&&(La=i);let t=La+=1831565813;return t=Math.imul(t^t>>>15,t|1),t^=t+Math.imul(t^t>>>7,t|61),((t^t>>>14)>>>0)/4294967296}function Dc(i){return i*yi}function Uc(i){return i*bi}function Ic(i){return(i&i-1)===0&&i!==0}function Nc(i){return Math.pow(2,Math.ceil(Math.log(i)/Math.LN2))}function Fc(i){return Math.pow(2,Math.floor(Math.log(i)/Math.LN2))}function Oc(i,t,e,n,r){const s=Math.cos,a=Math.sin,o=s(e/2),l=a(e/2),c=s((t+n)/2),u=a((t+n)/2),f=s((t-n)/2),p=a((t-n)/2),m=s((n-t)/2),_=a((n-t)/2);switch(r){case"XYX":i.set(o*u,l*f,l*p,o*c);break;case"YZY":i.set(l*p,o*u,l*f,o*c);break;case"ZXZ":i.set(l*f,l*p,o*u,o*c);break;case"XZX":i.set(o*u,l*_,l*m,o*c);break;case"YXY":i.set(l*m,o*u,l*_,o*c);break;case"ZYZ":i.set(l*_,l*m,o*u,o*c);break;default:console.warn("THREE.MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: "+r)}}function jn(i,t){switch(t.constructor){case Float32Array:return i;case Uint32Array:return i/4294967295;case Uint16Array:return i/65535;case Uint8Array:return i/255;case Int32Array:return Math.max(i/2147483647,-1);case Int16Array:return Math.max(i/32767,-1);case Int8Array:return Math.max(i/127,-1);default:throw new Error("Invalid component type.")}}function pe(i,t){switch(t.constructor){case Float32Array:return i;case Uint32Array:return Math.round(i*4294967295);case Uint16Array:return Math.round(i*65535);case Uint8Array:return Math.round(i*255);case Int32Array:return Math.round(i*2147483647);case Int16Array:return Math.round(i*32767);case Int8Array:return Math.round(i*127);default:throw new Error("Invalid component type.")}}const Bc={DEG2RAD:yi,RAD2DEG:bi,generateUUID:ci,clamp:de,euclideanModulo:oa,mapLinear:Ec,inverseLerp:yc,lerp:Ti,damp:Tc,pingpong:Ac,smoothstep:bc,smootherstep:wc,randInt:Rc,randFloat:Cc,randFloatSpread:Pc,seededRandom:Lc,degToRad:Dc,radToDeg:Uc,isPowerOfTwo:Ic,ceilPowerOfTwo:Nc,floorPowerOfTwo:Fc,setQuaternionFromProperEuler:Oc,normalize:pe,denormalize:jn};class wt{constructor(t=0,e=0){wt.prototype.isVector2=!0,this.x=t,this.y=e}get width(){return this.x}set width(t){this.x=t}get height(){return this.y}set height(t){this.y=t}set(t,e){return this.x=t,this.y=e,this}setScalar(t){return this.x=t,this.y=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;default:throw new Error("index is out of range: "+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;default:throw new Error("index is out of range: "+t)}}clone(){return new this.constructor(this.x,this.y)}copy(t){return this.x=t.x,this.y=t.y,this}add(t){return this.x+=t.x,this.y+=t.y,this}addScalar(t){return this.x+=t,this.y+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this}sub(t){return this.x-=t.x,this.y-=t.y,this}subScalar(t){return this.x-=t,this.y-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this}multiply(t){return this.x*=t.x,this.y*=t.y,this}multiplyScalar(t){return this.x*=t,this.y*=t,this}divide(t){return this.x/=t.x,this.y/=t.y,this}divideScalar(t){return this.multiplyScalar(1/t)}applyMatrix3(t){const e=this.x,n=this.y,r=t.elements;return this.x=r[0]*e+r[3]*n+r[6],this.y=r[1]*e+r[4]*n+r[7],this}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this}clampLength(t,e){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this}negate(){return this.x=-this.x,this.y=-this.y,this}dot(t){return this.x*t.x+this.y*t.y}cross(t){return this.x*t.y-this.y*t.x}lengthSq(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)}normalize(){return this.divideScalar(this.length()||1)}angle(){return Math.atan2(-this.y,-this.x)+Math.PI}angleTo(t){const e=Math.sqrt(this.lengthSq()*t.lengthSq());if(e===0)return Math.PI/2;const n=this.dot(t)/e;return Math.acos(de(n,-1,1))}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){const e=this.x-t.x,n=this.y-t.y;return e*e+n*n}manhattanDistanceTo(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this}lerpVectors(t,e,n){return this.x=t.x+(e.x-t.x)*n,this.y=t.y+(e.y-t.y)*n,this}equals(t){return t.x===this.x&&t.y===this.y}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t}fromBufferAttribute(t,e){return this.x=t.getX(e),this.y=t.getY(e),this}rotateAround(t,e){const n=Math.cos(e),r=Math.sin(e),s=this.x-t.x,a=this.y-t.y;return this.x=s*n-a*r+t.x,this.y=s*r+a*n+t.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}}class Lt{constructor(t,e,n,r,s,a,o,l,c){Lt.prototype.isMatrix3=!0,this.elements=[1,0,0,0,1,0,0,0,1],t!==void 0&&this.set(t,e,n,r,s,a,o,l,c)}set(t,e,n,r,s,a,o,l,c){const u=this.elements;return u[0]=t,u[1]=r,u[2]=o,u[3]=e,u[4]=s,u[5]=l,u[6]=n,u[7]=a,u[8]=c,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(t){const e=this.elements,n=t.elements;return e[0]=n[0],e[1]=n[1],e[2]=n[2],e[3]=n[3],e[4]=n[4],e[5]=n[5],e[6]=n[6],e[7]=n[7],e[8]=n[8],this}extractBasis(t,e,n){return t.setFromMatrix3Column(this,0),e.setFromMatrix3Column(this,1),n.setFromMatrix3Column(this,2),this}setFromMatrix4(t){const e=t.elements;return this.set(e[0],e[4],e[8],e[1],e[5],e[9],e[2],e[6],e[10]),this}multiply(t){return this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){const n=t.elements,r=e.elements,s=this.elements,a=n[0],o=n[3],l=n[6],c=n[1],u=n[4],f=n[7],p=n[2],m=n[5],_=n[8],x=r[0],d=r[3],h=r[6],T=r[1],E=r[4],A=r[7],F=r[2],R=r[5],b=r[8];return s[0]=a*x+o*T+l*F,s[3]=a*d+o*E+l*R,s[6]=a*h+o*A+l*b,s[1]=c*x+u*T+f*F,s[4]=c*d+u*E+f*R,s[7]=c*h+u*A+f*b,s[2]=p*x+m*T+_*F,s[5]=p*d+m*E+_*R,s[8]=p*h+m*A+_*b,this}multiplyScalar(t){const e=this.elements;return e[0]*=t,e[3]*=t,e[6]*=t,e[1]*=t,e[4]*=t,e[7]*=t,e[2]*=t,e[5]*=t,e[8]*=t,this}determinant(){const t=this.elements,e=t[0],n=t[1],r=t[2],s=t[3],a=t[4],o=t[5],l=t[6],c=t[7],u=t[8];return e*a*u-e*o*c-n*s*u+n*o*l+r*s*c-r*a*l}invert(){const t=this.elements,e=t[0],n=t[1],r=t[2],s=t[3],a=t[4],o=t[5],l=t[6],c=t[7],u=t[8],f=u*a-o*c,p=o*l-u*s,m=c*s-a*l,_=e*f+n*p+r*m;if(_===0)return this.set(0,0,0,0,0,0,0,0,0);const x=1/_;return t[0]=f*x,t[1]=(r*c-u*n)*x,t[2]=(o*n-r*a)*x,t[3]=p*x,t[4]=(u*e-r*l)*x,t[5]=(r*s-o*e)*x,t[6]=m*x,t[7]=(n*l-c*e)*x,t[8]=(a*e-n*s)*x,this}transpose(){let t;const e=this.elements;return t=e[1],e[1]=e[3],e[3]=t,t=e[2],e[2]=e[6],e[6]=t,t=e[5],e[5]=e[7],e[7]=t,this}getNormalMatrix(t){return this.setFromMatrix4(t).invert().transpose()}transposeIntoArray(t){const e=this.elements;return t[0]=e[0],t[1]=e[3],t[2]=e[6],t[3]=e[1],t[4]=e[4],t[5]=e[7],t[6]=e[2],t[7]=e[5],t[8]=e[8],this}setUvTransform(t,e,n,r,s,a,o){const l=Math.cos(s),c=Math.sin(s);return this.set(n*l,n*c,-n*(l*a+c*o)+a+t,-r*c,r*l,-r*(-c*a+l*o)+o+e,0,0,1),this}scale(t,e){return this.premultiply(Dr.makeScale(t,e)),this}rotate(t){return this.premultiply(Dr.makeRotation(-t)),this}translate(t,e){return this.premultiply(Dr.makeTranslation(t,e)),this}makeTranslation(t,e){return t.isVector2?this.set(1,0,t.x,0,1,t.y,0,0,1):this.set(1,0,t,0,1,e,0,0,1),this}makeRotation(t){const e=Math.cos(t),n=Math.sin(t);return this.set(e,-n,0,n,e,0,0,0,1),this}makeScale(t,e){return this.set(t,0,0,0,e,0,0,0,1),this}equals(t){const e=this.elements,n=t.elements;for(let r=0;r<9;r++)if(e[r]!==n[r])return!1;return!0}fromArray(t,e=0){for(let n=0;n<9;n++)this.elements[n]=t[n+e];return this}toArray(t=[],e=0){const n=this.elements;return t[e]=n[0],t[e+1]=n[1],t[e+2]=n[2],t[e+3]=n[3],t[e+4]=n[4],t[e+5]=n[5],t[e+6]=n[6],t[e+7]=n[7],t[e+8]=n[8],t}clone(){return new this.constructor().fromArray(this.elements)}}const Dr=new Lt;function il(i){for(let t=i.length-1;t>=0;--t)if(i[t]>=65535)return!0;return!1}function wi(i){return document.createElementNS("http://www.w3.org/1999/xhtml",i)}function zc(){const i=wi("canvas");return i.style.display="block",i}const Da={};function dr(i){i in Da||(Da[i]=!0,console.warn(i))}function Hc(i,t,e){return new Promise(function(n,r){function s(){switch(i.clientWaitSync(t,i.SYNC_FLUSH_COMMANDS_BIT,0)){case i.WAIT_FAILED:r();break;case i.TIMEOUT_EXPIRED:setTimeout(s,e);break;default:n()}}setTimeout(s,e)})}function Gc(i){const t=i.elements;t[2]=.5*t[2]+.5*t[3],t[6]=.5*t[6]+.5*t[7],t[10]=.5*t[10]+.5*t[11],t[14]=.5*t[14]+.5*t[15]}function Vc(i){const t=i.elements;t[11]===-1?(t[10]=-t[10]-1,t[14]=-t[14]):(t[10]=-t[10],t[14]=-t[14]+1)}const Ua=new Lt().set(.8224621,.177538,0,.0331941,.9668058,0,.0170827,.0723974,.9105199),Ia=new Lt().set(1.2249401,-.2249404,0,-.0420569,1.0420571,0,-.0196376,-.0786361,1.0982735),di={[gn]:{transfer:pr,primaries:mr,luminanceCoefficients:[.2126,.7152,.0722],toReference:i=>i,fromReference:i=>i},[He]:{transfer:te,primaries:mr,luminanceCoefficients:[.2126,.7152,.0722],toReference:i=>i.convertSRGBToLinear(),fromReference:i=>i.convertLinearToSRGB()},[Er]:{transfer:pr,primaries:_r,luminanceCoefficients:[.2289,.6917,.0793],toReference:i=>i.applyMatrix3(Ia),fromReference:i=>i.applyMatrix3(Ua)},[aa]:{transfer:te,primaries:_r,luminanceCoefficients:[.2289,.6917,.0793],toReference:i=>i.convertSRGBToLinear().applyMatrix3(Ia),fromReference:i=>i.applyMatrix3(Ua).convertLinearToSRGB()}},kc=new Set([gn,Er]),Wt={enabled:!0,_workingColorSpace:gn,get workingColorSpace(){return this._workingColorSpace},set workingColorSpace(i){if(!kc.has(i))throw new Error(`Unsupported working color space, "${i}".`);this._workingColorSpace=i},convert:function(i,t,e){if(this.enabled===!1||t===e||!t||!e)return i;const n=di[t].toReference,r=di[e].fromReference;return r(n(i))},fromWorkingColorSpace:function(i,t){return this.convert(i,this._workingColorSpace,t)},toWorkingColorSpace:function(i,t){return this.convert(i,t,this._workingColorSpace)},getPrimaries:function(i){return di[i].primaries},getTransfer:function(i){return i===dn?pr:di[i].transfer},getLuminanceCoefficients:function(i,t=this._workingColorSpace){return i.fromArray(di[t].luminanceCoefficients)}};function ni(i){return i<.04045?i*.0773993808:Math.pow(i*.9478672986+.0521327014,2.4)}function Ur(i){return i<.0031308?i*12.92:1.055*Math.pow(i,.41666)-.055}let Fn;class Wc{static getDataURL(t){if(/^data:/i.test(t.src)||typeof HTMLCanvasElement>"u")return t.src;let e;if(t instanceof HTMLCanvasElement)e=t;else{Fn===void 0&&(Fn=wi("canvas")),Fn.width=t.width,Fn.height=t.height;const n=Fn.getContext("2d");t instanceof ImageData?n.putImageData(t,0,0):n.drawImage(t,0,0,t.width,t.height),e=Fn}return e.width>2048||e.height>2048?(console.warn("THREE.ImageUtils.getDataURL: Image converted to jpg for performance reasons",t),e.toDataURL("image/jpeg",.6)):e.toDataURL("image/png")}static sRGBToLinear(t){if(typeof HTMLImageElement<"u"&&t instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&t instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&t instanceof ImageBitmap){const e=wi("canvas");e.width=t.width,e.height=t.height;const n=e.getContext("2d");n.drawImage(t,0,0,t.width,t.height);const r=n.getImageData(0,0,t.width,t.height),s=r.data;for(let a=0;a0&&(n.userData=this.userData),e||(t.textures[this.uuid]=n),n}dispose(){this.dispatchEvent({type:"dispose"})}transformUv(t){if(this.mapping!==Wo)return t;if(t.applyMatrix3(this.matrix),t.x<0||t.x>1)switch(this.wrapS){case Ts:t.x=t.x-Math.floor(t.x);break;case Rn:t.x=t.x<0?0:1;break;case As:Math.abs(Math.floor(t.x)%2)===1?t.x=Math.ceil(t.x)-t.x:t.x=t.x-Math.floor(t.x);break}if(t.y<0||t.y>1)switch(this.wrapT){case Ts:t.y=t.y-Math.floor(t.y);break;case Rn:t.y=t.y<0?0:1;break;case As:Math.abs(Math.floor(t.y)%2)===1?t.y=Math.ceil(t.y)-t.y:t.y=t.y-Math.floor(t.y);break}return this.flipY&&(t.y=1-t.y),t}set needsUpdate(t){t===!0&&(this.version++,this.source.needsUpdate=!0)}set needsPMREMUpdate(t){t===!0&&this.pmremVersion++}}ge.DEFAULT_IMAGE=null;ge.DEFAULT_MAPPING=Wo;ge.DEFAULT_ANISOTROPY=1;class Zt{constructor(t=0,e=0,n=0,r=1){Zt.prototype.isVector4=!0,this.x=t,this.y=e,this.z=n,this.w=r}get width(){return this.z}set width(t){this.z=t}get height(){return this.w}set height(t){this.w=t}set(t,e,n,r){return this.x=t,this.y=e,this.z=n,this.w=r,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this.w=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setW(t){return this.w=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;case 3:this.w=e;break;default:throw new Error("index is out of range: "+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw new Error("index is out of range: "+t)}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=t.w!==void 0?t.w:1,this}add(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this.w+=t.w,this}addScalar(t){return this.x+=t,this.y+=t,this.z+=t,this.w+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this.w=t.w+e.w,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this.w+=t.w*e,this}sub(t){return this.x-=t.x,this.y-=t.y,this.z-=t.z,this.w-=t.w,this}subScalar(t){return this.x-=t,this.y-=t,this.z-=t,this.w-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this.w=t.w-e.w,this}multiply(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this.w*=t.w,this}multiplyScalar(t){return this.x*=t,this.y*=t,this.z*=t,this.w*=t,this}applyMatrix4(t){const e=this.x,n=this.y,r=this.z,s=this.w,a=t.elements;return this.x=a[0]*e+a[4]*n+a[8]*r+a[12]*s,this.y=a[1]*e+a[5]*n+a[9]*r+a[13]*s,this.z=a[2]*e+a[6]*n+a[10]*r+a[14]*s,this.w=a[3]*e+a[7]*n+a[11]*r+a[15]*s,this}divideScalar(t){return this.multiplyScalar(1/t)}setAxisAngleFromQuaternion(t){this.w=2*Math.acos(t.w);const e=Math.sqrt(1-t.w*t.w);return e<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=t.x/e,this.y=t.y/e,this.z=t.z/e),this}setAxisAngleFromRotationMatrix(t){let e,n,r,s;const l=t.elements,c=l[0],u=l[4],f=l[8],p=l[1],m=l[5],_=l[9],x=l[2],d=l[6],h=l[10];if(Math.abs(u-p)<.01&&Math.abs(f-x)<.01&&Math.abs(_-d)<.01){if(Math.abs(u+p)<.1&&Math.abs(f+x)<.1&&Math.abs(_+d)<.1&&Math.abs(c+m+h-3)<.1)return this.set(1,0,0,0),this;e=Math.PI;const E=(c+1)/2,A=(m+1)/2,F=(h+1)/2,R=(u+p)/4,b=(f+x)/4,O=(_+d)/4;return E>A&&E>F?E<.01?(n=0,r=.707106781,s=.707106781):(n=Math.sqrt(E),r=R/n,s=b/n):A>F?A<.01?(n=.707106781,r=0,s=.707106781):(r=Math.sqrt(A),n=R/r,s=O/r):F<.01?(n=.707106781,r=.707106781,s=0):(s=Math.sqrt(F),n=b/s,r=O/s),this.set(n,r,s,e),this}let T=Math.sqrt((d-_)*(d-_)+(f-x)*(f-x)+(p-u)*(p-u));return Math.abs(T)<.001&&(T=1),this.x=(d-_)/T,this.y=(f-x)/T,this.z=(p-u)/T,this.w=Math.acos((c+m+h-1)/2),this}setFromMatrixPosition(t){const e=t.elements;return this.x=e[12],this.y=e[13],this.z=e[14],this.w=e[15],this}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this.w=Math.min(this.w,t.w),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this.w=Math.max(this.w,t.w),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this.w=Math.max(t.w,Math.min(e.w,this.w)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this.w=Math.max(t,Math.min(e,this.w)),this}clampLength(t,e){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this.w=Math.trunc(this.w),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z+this.w*t.w}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)}normalize(){return this.divideScalar(this.length()||1)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this.w+=(t.w-this.w)*e,this}lerpVectors(t,e,n){return this.x=t.x+(e.x-t.x)*n,this.y=t.y+(e.y-t.y)*n,this.z=t.z+(e.z-t.z)*n,this.w=t.w+(e.w-t.w)*n,this}equals(t){return t.x===this.x&&t.y===this.y&&t.z===this.z&&t.w===this.w}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this.z=t[e+2],this.w=t[e+3],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t[e+3]=this.w,t}fromBufferAttribute(t,e){return this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this.w=t.getW(e),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this.w=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z,yield this.w}}class qc extends Un{constructor(t=1,e=1,n={}){super(),this.isRenderTarget=!0,this.width=t,this.height=e,this.depth=1,this.scissor=new Zt(0,0,t,e),this.scissorTest=!1,this.viewport=new Zt(0,0,t,e);const r={width:t,height:e,depth:1};n=Object.assign({generateMipmaps:!1,internalFormat:null,minFilter:Fe,depthBuffer:!0,stencilBuffer:!1,resolveDepthBuffer:!0,resolveStencilBuffer:!0,depthTexture:null,samples:0,count:1},n);const s=new ge(r,n.mapping,n.wrapS,n.wrapT,n.magFilter,n.minFilter,n.format,n.type,n.anisotropy,n.colorSpace);s.flipY=!1,s.generateMipmaps=n.generateMipmaps,s.internalFormat=n.internalFormat,this.textures=[];const a=n.count;for(let o=0;o=0?1:-1,E=1-h*h;if(E>Number.EPSILON){const F=Math.sqrt(E),R=Math.atan2(F,h*T);d=Math.sin(d*R)/F,o=Math.sin(o*R)/F}const A=o*T;if(l=l*d+p*A,c=c*d+m*A,u=u*d+_*A,f=f*d+x*A,d===1-o){const F=1/Math.sqrt(l*l+c*c+u*u+f*f);l*=F,c*=F,u*=F,f*=F}}t[e]=l,t[e+1]=c,t[e+2]=u,t[e+3]=f}static multiplyQuaternionsFlat(t,e,n,r,s,a){const o=n[r],l=n[r+1],c=n[r+2],u=n[r+3],f=s[a],p=s[a+1],m=s[a+2],_=s[a+3];return t[e]=o*_+u*f+l*m-c*p,t[e+1]=l*_+u*p+c*f-o*m,t[e+2]=c*_+u*m+o*p-l*f,t[e+3]=u*_-o*f-l*p-c*m,t}get x(){return this._x}set x(t){this._x=t,this._onChangeCallback()}get y(){return this._y}set y(t){this._y=t,this._onChangeCallback()}get z(){return this._z}set z(t){this._z=t,this._onChangeCallback()}get w(){return this._w}set w(t){this._w=t,this._onChangeCallback()}set(t,e,n,r){return this._x=t,this._y=e,this._z=n,this._w=r,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(t){return this._x=t.x,this._y=t.y,this._z=t.z,this._w=t.w,this._onChangeCallback(),this}setFromEuler(t,e=!0){const n=t._x,r=t._y,s=t._z,a=t._order,o=Math.cos,l=Math.sin,c=o(n/2),u=o(r/2),f=o(s/2),p=l(n/2),m=l(r/2),_=l(s/2);switch(a){case"XYZ":this._x=p*u*f+c*m*_,this._y=c*m*f-p*u*_,this._z=c*u*_+p*m*f,this._w=c*u*f-p*m*_;break;case"YXZ":this._x=p*u*f+c*m*_,this._y=c*m*f-p*u*_,this._z=c*u*_-p*m*f,this._w=c*u*f+p*m*_;break;case"ZXY":this._x=p*u*f-c*m*_,this._y=c*m*f+p*u*_,this._z=c*u*_+p*m*f,this._w=c*u*f-p*m*_;break;case"ZYX":this._x=p*u*f-c*m*_,this._y=c*m*f+p*u*_,this._z=c*u*_-p*m*f,this._w=c*u*f+p*m*_;break;case"YZX":this._x=p*u*f+c*m*_,this._y=c*m*f+p*u*_,this._z=c*u*_-p*m*f,this._w=c*u*f-p*m*_;break;case"XZY":this._x=p*u*f-c*m*_,this._y=c*m*f-p*u*_,this._z=c*u*_+p*m*f,this._w=c*u*f+p*m*_;break;default:console.warn("THREE.Quaternion: .setFromEuler() encountered an unknown order: "+a)}return e===!0&&this._onChangeCallback(),this}setFromAxisAngle(t,e){const n=e/2,r=Math.sin(n);return this._x=t.x*r,this._y=t.y*r,this._z=t.z*r,this._w=Math.cos(n),this._onChangeCallback(),this}setFromRotationMatrix(t){const e=t.elements,n=e[0],r=e[4],s=e[8],a=e[1],o=e[5],l=e[9],c=e[2],u=e[6],f=e[10],p=n+o+f;if(p>0){const m=.5/Math.sqrt(p+1);this._w=.25/m,this._x=(u-l)*m,this._y=(s-c)*m,this._z=(a-r)*m}else if(n>o&&n>f){const m=2*Math.sqrt(1+n-o-f);this._w=(u-l)/m,this._x=.25*m,this._y=(r+a)/m,this._z=(s+c)/m}else if(o>f){const m=2*Math.sqrt(1+o-n-f);this._w=(s-c)/m,this._x=(r+a)/m,this._y=.25*m,this._z=(l+u)/m}else{const m=2*Math.sqrt(1+f-n-o);this._w=(a-r)/m,this._x=(s+c)/m,this._y=(l+u)/m,this._z=.25*m}return this._onChangeCallback(),this}setFromUnitVectors(t,e){let n=t.dot(e)+1;return nMath.abs(t.z)?(this._x=-t.y,this._y=t.x,this._z=0,this._w=n):(this._x=0,this._y=-t.z,this._z=t.y,this._w=n)):(this._x=t.y*e.z-t.z*e.y,this._y=t.z*e.x-t.x*e.z,this._z=t.x*e.y-t.y*e.x,this._w=n),this.normalize()}angleTo(t){return 2*Math.acos(Math.abs(de(this.dot(t),-1,1)))}rotateTowards(t,e){const n=this.angleTo(t);if(n===0)return this;const r=Math.min(1,e/n);return this.slerp(t,r),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(t){return this._x*t._x+this._y*t._y+this._z*t._z+this._w*t._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let t=this.length();return t===0?(this._x=0,this._y=0,this._z=0,this._w=1):(t=1/t,this._x=this._x*t,this._y=this._y*t,this._z=this._z*t,this._w=this._w*t),this._onChangeCallback(),this}multiply(t){return this.multiplyQuaternions(this,t)}premultiply(t){return this.multiplyQuaternions(t,this)}multiplyQuaternions(t,e){const n=t._x,r=t._y,s=t._z,a=t._w,o=e._x,l=e._y,c=e._z,u=e._w;return this._x=n*u+a*o+r*c-s*l,this._y=r*u+a*l+s*o-n*c,this._z=s*u+a*c+n*l-r*o,this._w=a*u-n*o-r*l-s*c,this._onChangeCallback(),this}slerp(t,e){if(e===0)return this;if(e===1)return this.copy(t);const n=this._x,r=this._y,s=this._z,a=this._w;let o=a*t._w+n*t._x+r*t._y+s*t._z;if(o<0?(this._w=-t._w,this._x=-t._x,this._y=-t._y,this._z=-t._z,o=-o):this.copy(t),o>=1)return this._w=a,this._x=n,this._y=r,this._z=s,this;const l=1-o*o;if(l<=Number.EPSILON){const m=1-e;return this._w=m*a+e*this._w,this._x=m*n+e*this._x,this._y=m*r+e*this._y,this._z=m*s+e*this._z,this.normalize(),this}const c=Math.sqrt(l),u=Math.atan2(c,o),f=Math.sin((1-e)*u)/c,p=Math.sin(e*u)/c;return this._w=a*f+this._w*p,this._x=n*f+this._x*p,this._y=r*f+this._y*p,this._z=s*f+this._z*p,this._onChangeCallback(),this}slerpQuaternions(t,e,n){return this.copy(t).slerp(e,n)}random(){const t=2*Math.PI*Math.random(),e=2*Math.PI*Math.random(),n=Math.random(),r=Math.sqrt(1-n),s=Math.sqrt(n);return this.set(r*Math.sin(t),r*Math.cos(t),s*Math.sin(e),s*Math.cos(e))}equals(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._w===this._w}fromArray(t,e=0){return this._x=t[e],this._y=t[e+1],this._z=t[e+2],this._w=t[e+3],this._onChangeCallback(),this}toArray(t=[],e=0){return t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._w,t}fromBufferAttribute(t,e){return this._x=t.getX(e),this._y=t.getY(e),this._z=t.getZ(e),this._w=t.getW(e),this._onChangeCallback(),this}toJSON(){return this.toArray()}_onChange(t){return this._onChangeCallback=t,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._w}}class L{constructor(t=0,e=0,n=0){L.prototype.isVector3=!0,this.x=t,this.y=e,this.z=n}set(t,e,n){return n===void 0&&(n=this.z),this.x=t,this.y=e,this.z=n,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;default:throw new Error("index is out of range: "+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw new Error("index is out of range: "+t)}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this}add(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this}addScalar(t){return this.x+=t,this.y+=t,this.z+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this}sub(t){return this.x-=t.x,this.y-=t.y,this.z-=t.z,this}subScalar(t){return this.x-=t,this.y-=t,this.z-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this}multiply(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this}multiplyScalar(t){return this.x*=t,this.y*=t,this.z*=t,this}multiplyVectors(t,e){return this.x=t.x*e.x,this.y=t.y*e.y,this.z=t.z*e.z,this}applyEuler(t){return this.applyQuaternion(Na.setFromEuler(t))}applyAxisAngle(t,e){return this.applyQuaternion(Na.setFromAxisAngle(t,e))}applyMatrix3(t){const e=this.x,n=this.y,r=this.z,s=t.elements;return this.x=s[0]*e+s[3]*n+s[6]*r,this.y=s[1]*e+s[4]*n+s[7]*r,this.z=s[2]*e+s[5]*n+s[8]*r,this}applyNormalMatrix(t){return this.applyMatrix3(t).normalize()}applyMatrix4(t){const e=this.x,n=this.y,r=this.z,s=t.elements,a=1/(s[3]*e+s[7]*n+s[11]*r+s[15]);return this.x=(s[0]*e+s[4]*n+s[8]*r+s[12])*a,this.y=(s[1]*e+s[5]*n+s[9]*r+s[13])*a,this.z=(s[2]*e+s[6]*n+s[10]*r+s[14])*a,this}applyQuaternion(t){const e=this.x,n=this.y,r=this.z,s=t.x,a=t.y,o=t.z,l=t.w,c=2*(a*r-o*n),u=2*(o*e-s*r),f=2*(s*n-a*e);return this.x=e+l*c+a*f-o*u,this.y=n+l*u+o*c-s*f,this.z=r+l*f+s*u-a*c,this}project(t){return this.applyMatrix4(t.matrixWorldInverse).applyMatrix4(t.projectionMatrix)}unproject(t){return this.applyMatrix4(t.projectionMatrixInverse).applyMatrix4(t.matrixWorld)}transformDirection(t){const e=this.x,n=this.y,r=this.z,s=t.elements;return this.x=s[0]*e+s[4]*n+s[8]*r,this.y=s[1]*e+s[5]*n+s[9]*r,this.z=s[2]*e+s[6]*n+s[10]*r,this.normalize()}divide(t){return this.x/=t.x,this.y/=t.y,this.z/=t.z,this}divideScalar(t){return this.multiplyScalar(1/t)}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this}clampLength(t,e){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}normalize(){return this.divideScalar(this.length()||1)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this}lerpVectors(t,e,n){return this.x=t.x+(e.x-t.x)*n,this.y=t.y+(e.y-t.y)*n,this.z=t.z+(e.z-t.z)*n,this}cross(t){return this.crossVectors(this,t)}crossVectors(t,e){const n=t.x,r=t.y,s=t.z,a=e.x,o=e.y,l=e.z;return this.x=r*l-s*o,this.y=s*a-n*l,this.z=n*o-r*a,this}projectOnVector(t){const e=t.lengthSq();if(e===0)return this.set(0,0,0);const n=t.dot(this)/e;return this.copy(t).multiplyScalar(n)}projectOnPlane(t){return Nr.copy(this).projectOnVector(t),this.sub(Nr)}reflect(t){return this.sub(Nr.copy(t).multiplyScalar(2*this.dot(t)))}angleTo(t){const e=Math.sqrt(this.lengthSq()*t.lengthSq());if(e===0)return Math.PI/2;const n=this.dot(t)/e;return Math.acos(de(n,-1,1))}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){const e=this.x-t.x,n=this.y-t.y,r=this.z-t.z;return e*e+n*n+r*r}manhattanDistanceTo(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)+Math.abs(this.z-t.z)}setFromSpherical(t){return this.setFromSphericalCoords(t.radius,t.phi,t.theta)}setFromSphericalCoords(t,e,n){const r=Math.sin(e)*t;return this.x=r*Math.sin(n),this.y=Math.cos(e)*t,this.z=r*Math.cos(n),this}setFromCylindrical(t){return this.setFromCylindricalCoords(t.radius,t.theta,t.y)}setFromCylindricalCoords(t,e,n){return this.x=t*Math.sin(e),this.y=n,this.z=t*Math.cos(e),this}setFromMatrixPosition(t){const e=t.elements;return this.x=e[12],this.y=e[13],this.z=e[14],this}setFromMatrixScale(t){const e=this.setFromMatrixColumn(t,0).length(),n=this.setFromMatrixColumn(t,1).length(),r=this.setFromMatrixColumn(t,2).length();return this.x=e,this.y=n,this.z=r,this}setFromMatrixColumn(t,e){return this.fromArray(t.elements,e*4)}setFromMatrix3Column(t,e){return this.fromArray(t.elements,e*3)}setFromEuler(t){return this.x=t._x,this.y=t._y,this.z=t._z,this}setFromColor(t){return this.x=t.r,this.y=t.g,this.z=t.b,this}equals(t){return t.x===this.x&&t.y===this.y&&t.z===this.z}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this.z=t[e+2],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t}fromBufferAttribute(t,e){return this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){const t=Math.random()*Math.PI*2,e=Math.random()*2-1,n=Math.sqrt(1-e*e);return this.x=n*Math.cos(t),this.y=e,this.z=n*Math.sin(t),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}}const Nr=new L,Na=new Dn;class Ci{constructor(t=new L(1/0,1/0,1/0),e=new L(-1/0,-1/0,-1/0)){this.isBox3=!0,this.min=t,this.max=e}set(t,e){return this.min.copy(t),this.max.copy(e),this}setFromArray(t){this.makeEmpty();for(let e=0,n=t.length;e=this.min.x&&t.x<=this.max.x&&t.y>=this.min.y&&t.y<=this.max.y&&t.z>=this.min.z&&t.z<=this.max.z}containsBox(t){return this.min.x<=t.min.x&&t.max.x<=this.max.x&&this.min.y<=t.min.y&&t.max.y<=this.max.y&&this.min.z<=t.min.z&&t.max.z<=this.max.z}getParameter(t,e){return e.set((t.x-this.min.x)/(this.max.x-this.min.x),(t.y-this.min.y)/(this.max.y-this.min.y),(t.z-this.min.z)/(this.max.z-this.min.z))}intersectsBox(t){return t.max.x>=this.min.x&&t.min.x<=this.max.x&&t.max.y>=this.min.y&&t.min.y<=this.max.y&&t.max.z>=this.min.z&&t.min.z<=this.max.z}intersectsSphere(t){return this.clampPoint(t.center,Ue),Ue.distanceToSquared(t.center)<=t.radius*t.radius}intersectsPlane(t){let e,n;return t.normal.x>0?(e=t.normal.x*this.min.x,n=t.normal.x*this.max.x):(e=t.normal.x*this.max.x,n=t.normal.x*this.min.x),t.normal.y>0?(e+=t.normal.y*this.min.y,n+=t.normal.y*this.max.y):(e+=t.normal.y*this.max.y,n+=t.normal.y*this.min.y),t.normal.z>0?(e+=t.normal.z*this.min.z,n+=t.normal.z*this.max.z):(e+=t.normal.z*this.max.z,n+=t.normal.z*this.min.z),e<=-t.constant&&n>=-t.constant}intersectsTriangle(t){if(this.isEmpty())return!1;this.getCenter(fi),Fi.subVectors(this.max,fi),On.subVectors(t.a,fi),Bn.subVectors(t.b,fi),zn.subVectors(t.c,fi),rn.subVectors(Bn,On),sn.subVectors(zn,Bn),xn.subVectors(On,zn);let e=[0,-rn.z,rn.y,0,-sn.z,sn.y,0,-xn.z,xn.y,rn.z,0,-rn.x,sn.z,0,-sn.x,xn.z,0,-xn.x,-rn.y,rn.x,0,-sn.y,sn.x,0,-xn.y,xn.x,0];return!Fr(e,On,Bn,zn,Fi)||(e=[1,0,0,0,1,0,0,0,1],!Fr(e,On,Bn,zn,Fi))?!1:(Oi.crossVectors(rn,sn),e=[Oi.x,Oi.y,Oi.z],Fr(e,On,Bn,zn,Fi))}clampPoint(t,e){return e.copy(t).clamp(this.min,this.max)}distanceToPoint(t){return this.clampPoint(t,Ue).distanceTo(t)}getBoundingSphere(t){return this.isEmpty()?t.makeEmpty():(this.getCenter(t.center),t.radius=this.getSize(Ue).length()*.5),t}intersect(t){return this.min.max(t.min),this.max.min(t.max),this.isEmpty()&&this.makeEmpty(),this}union(t){return this.min.min(t.min),this.max.max(t.max),this}applyMatrix4(t){return this.isEmpty()?this:(Ye[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(t),Ye[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(t),Ye[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(t),Ye[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(t),Ye[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(t),Ye[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(t),Ye[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(t),Ye[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(t),this.setFromPoints(Ye),this)}translate(t){return this.min.add(t),this.max.add(t),this}equals(t){return t.min.equals(this.min)&&t.max.equals(this.max)}}const Ye=[new L,new L,new L,new L,new L,new L,new L,new L],Ue=new L,Ni=new Ci,On=new L,Bn=new L,zn=new L,rn=new L,sn=new L,xn=new L,fi=new L,Fi=new L,Oi=new L,Mn=new L;function Fr(i,t,e,n,r){for(let s=0,a=i.length-3;s<=a;s+=3){Mn.fromArray(i,s);const o=r.x*Math.abs(Mn.x)+r.y*Math.abs(Mn.y)+r.z*Math.abs(Mn.z),l=t.dot(Mn),c=e.dot(Mn),u=n.dot(Mn);if(Math.max(-Math.max(l,c,u),Math.min(l,c,u))>o)return!1}return!0}const Zc=new Ci,pi=new L,Or=new L;class yr{constructor(t=new L,e=-1){this.isSphere=!0,this.center=t,this.radius=e}set(t,e){return this.center.copy(t),this.radius=e,this}setFromPoints(t,e){const n=this.center;e!==void 0?n.copy(e):Zc.setFromPoints(t).getCenter(n);let r=0;for(let s=0,a=t.length;sthis.radius*this.radius&&(e.sub(this.center).normalize(),e.multiplyScalar(this.radius).add(this.center)),e}getBoundingBox(t){return this.isEmpty()?(t.makeEmpty(),t):(t.set(this.center,this.center),t.expandByScalar(this.radius),t)}applyMatrix4(t){return this.center.applyMatrix4(t),this.radius=this.radius*t.getMaxScaleOnAxis(),this}translate(t){return this.center.add(t),this}expandByPoint(t){if(this.isEmpty())return this.center.copy(t),this.radius=0,this;pi.subVectors(t,this.center);const e=pi.lengthSq();if(e>this.radius*this.radius){const n=Math.sqrt(e),r=(n-this.radius)*.5;this.center.addScaledVector(pi,r/n),this.radius+=r}return this}union(t){return t.isEmpty()?this:this.isEmpty()?(this.copy(t),this):(this.center.equals(t.center)===!0?this.radius=Math.max(this.radius,t.radius):(Or.subVectors(t.center,this.center).setLength(t.radius),this.expandByPoint(pi.copy(t.center).add(Or)),this.expandByPoint(pi.copy(t.center).sub(Or))),this)}equals(t){return t.center.equals(this.center)&&t.radius===this.radius}clone(){return new this.constructor().copy(this)}}const qe=new L,Br=new L,Bi=new L,an=new L,zr=new L,zi=new L,Hr=new L;class la{constructor(t=new L,e=new L(0,0,-1)){this.origin=t,this.direction=e}set(t,e){return this.origin.copy(t),this.direction.copy(e),this}copy(t){return this.origin.copy(t.origin),this.direction.copy(t.direction),this}at(t,e){return e.copy(this.origin).addScaledVector(this.direction,t)}lookAt(t){return this.direction.copy(t).sub(this.origin).normalize(),this}recast(t){return this.origin.copy(this.at(t,qe)),this}closestPointToPoint(t,e){e.subVectors(t,this.origin);const n=e.dot(this.direction);return n<0?e.copy(this.origin):e.copy(this.origin).addScaledVector(this.direction,n)}distanceToPoint(t){return Math.sqrt(this.distanceSqToPoint(t))}distanceSqToPoint(t){const e=qe.subVectors(t,this.origin).dot(this.direction);return e<0?this.origin.distanceToSquared(t):(qe.copy(this.origin).addScaledVector(this.direction,e),qe.distanceToSquared(t))}distanceSqToSegment(t,e,n,r){Br.copy(t).add(e).multiplyScalar(.5),Bi.copy(e).sub(t).normalize(),an.copy(this.origin).sub(Br);const s=t.distanceTo(e)*.5,a=-this.direction.dot(Bi),o=an.dot(this.direction),l=-an.dot(Bi),c=an.lengthSq(),u=Math.abs(1-a*a);let f,p,m,_;if(u>0)if(f=a*l-o,p=a*o-l,_=s*u,f>=0)if(p>=-_)if(p<=_){const x=1/u;f*=x,p*=x,m=f*(f+a*p+2*o)+p*(a*f+p+2*l)+c}else p=s,f=Math.max(0,-(a*p+o)),m=-f*f+p*(p+2*l)+c;else p=-s,f=Math.max(0,-(a*p+o)),m=-f*f+p*(p+2*l)+c;else p<=-_?(f=Math.max(0,-(-a*s+o)),p=f>0?-s:Math.min(Math.max(-s,-l),s),m=-f*f+p*(p+2*l)+c):p<=_?(f=0,p=Math.min(Math.max(-s,-l),s),m=p*(p+2*l)+c):(f=Math.max(0,-(a*s+o)),p=f>0?s:Math.min(Math.max(-s,-l),s),m=-f*f+p*(p+2*l)+c);else p=a>0?-s:s,f=Math.max(0,-(a*p+o)),m=-f*f+p*(p+2*l)+c;return n&&n.copy(this.origin).addScaledVector(this.direction,f),r&&r.copy(Br).addScaledVector(Bi,p),m}intersectSphere(t,e){qe.subVectors(t.center,this.origin);const n=qe.dot(this.direction),r=qe.dot(qe)-n*n,s=t.radius*t.radius;if(r>s)return null;const a=Math.sqrt(s-r),o=n-a,l=n+a;return l<0?null:o<0?this.at(l,e):this.at(o,e)}intersectsSphere(t){return this.distanceSqToPoint(t.center)<=t.radius*t.radius}distanceToPlane(t){const e=t.normal.dot(this.direction);if(e===0)return t.distanceToPoint(this.origin)===0?0:null;const n=-(this.origin.dot(t.normal)+t.constant)/e;return n>=0?n:null}intersectPlane(t,e){const n=this.distanceToPlane(t);return n===null?null:this.at(n,e)}intersectsPlane(t){const e=t.distanceToPoint(this.origin);return e===0||t.normal.dot(this.direction)*e<0}intersectBox(t,e){let n,r,s,a,o,l;const c=1/this.direction.x,u=1/this.direction.y,f=1/this.direction.z,p=this.origin;return c>=0?(n=(t.min.x-p.x)*c,r=(t.max.x-p.x)*c):(n=(t.max.x-p.x)*c,r=(t.min.x-p.x)*c),u>=0?(s=(t.min.y-p.y)*u,a=(t.max.y-p.y)*u):(s=(t.max.y-p.y)*u,a=(t.min.y-p.y)*u),n>a||s>r||((s>n||isNaN(n))&&(n=s),(a=0?(o=(t.min.z-p.z)*f,l=(t.max.z-p.z)*f):(o=(t.max.z-p.z)*f,l=(t.min.z-p.z)*f),n>l||o>r)||((o>n||n!==n)&&(n=o),(l=0?n:r,e)}intersectsBox(t){return this.intersectBox(t,qe)!==null}intersectTriangle(t,e,n,r,s){zr.subVectors(e,t),zi.subVectors(n,t),Hr.crossVectors(zr,zi);let a=this.direction.dot(Hr),o;if(a>0){if(r)return null;o=1}else if(a<0)o=-1,a=-a;else return null;an.subVectors(this.origin,t);const l=o*this.direction.dot(zi.crossVectors(an,zi));if(l<0)return null;const c=o*this.direction.dot(zr.cross(an));if(c<0||l+c>a)return null;const u=-o*an.dot(Hr);return u<0?null:this.at(u/a,s)}applyMatrix4(t){return this.origin.applyMatrix4(t),this.direction.transformDirection(t),this}equals(t){return t.origin.equals(this.origin)&&t.direction.equals(this.direction)}clone(){return new this.constructor().copy(this)}}class $t{constructor(t,e,n,r,s,a,o,l,c,u,f,p,m,_,x,d){$t.prototype.isMatrix4=!0,this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],t!==void 0&&this.set(t,e,n,r,s,a,o,l,c,u,f,p,m,_,x,d)}set(t,e,n,r,s,a,o,l,c,u,f,p,m,_,x,d){const h=this.elements;return h[0]=t,h[4]=e,h[8]=n,h[12]=r,h[1]=s,h[5]=a,h[9]=o,h[13]=l,h[2]=c,h[6]=u,h[10]=f,h[14]=p,h[3]=m,h[7]=_,h[11]=x,h[15]=d,this}identity(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}clone(){return new $t().fromArray(this.elements)}copy(t){const e=this.elements,n=t.elements;return e[0]=n[0],e[1]=n[1],e[2]=n[2],e[3]=n[3],e[4]=n[4],e[5]=n[5],e[6]=n[6],e[7]=n[7],e[8]=n[8],e[9]=n[9],e[10]=n[10],e[11]=n[11],e[12]=n[12],e[13]=n[13],e[14]=n[14],e[15]=n[15],this}copyPosition(t){const e=this.elements,n=t.elements;return e[12]=n[12],e[13]=n[13],e[14]=n[14],this}setFromMatrix3(t){const e=t.elements;return this.set(e[0],e[3],e[6],0,e[1],e[4],e[7],0,e[2],e[5],e[8],0,0,0,0,1),this}extractBasis(t,e,n){return t.setFromMatrixColumn(this,0),e.setFromMatrixColumn(this,1),n.setFromMatrixColumn(this,2),this}makeBasis(t,e,n){return this.set(t.x,e.x,n.x,0,t.y,e.y,n.y,0,t.z,e.z,n.z,0,0,0,0,1),this}extractRotation(t){const e=this.elements,n=t.elements,r=1/Hn.setFromMatrixColumn(t,0).length(),s=1/Hn.setFromMatrixColumn(t,1).length(),a=1/Hn.setFromMatrixColumn(t,2).length();return e[0]=n[0]*r,e[1]=n[1]*r,e[2]=n[2]*r,e[3]=0,e[4]=n[4]*s,e[5]=n[5]*s,e[6]=n[6]*s,e[7]=0,e[8]=n[8]*a,e[9]=n[9]*a,e[10]=n[10]*a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}makeRotationFromEuler(t){const e=this.elements,n=t.x,r=t.y,s=t.z,a=Math.cos(n),o=Math.sin(n),l=Math.cos(r),c=Math.sin(r),u=Math.cos(s),f=Math.sin(s);if(t.order==="XYZ"){const p=a*u,m=a*f,_=o*u,x=o*f;e[0]=l*u,e[4]=-l*f,e[8]=c,e[1]=m+_*c,e[5]=p-x*c,e[9]=-o*l,e[2]=x-p*c,e[6]=_+m*c,e[10]=a*l}else if(t.order==="YXZ"){const p=l*u,m=l*f,_=c*u,x=c*f;e[0]=p+x*o,e[4]=_*o-m,e[8]=a*c,e[1]=a*f,e[5]=a*u,e[9]=-o,e[2]=m*o-_,e[6]=x+p*o,e[10]=a*l}else if(t.order==="ZXY"){const p=l*u,m=l*f,_=c*u,x=c*f;e[0]=p-x*o,e[4]=-a*f,e[8]=_+m*o,e[1]=m+_*o,e[5]=a*u,e[9]=x-p*o,e[2]=-a*c,e[6]=o,e[10]=a*l}else if(t.order==="ZYX"){const p=a*u,m=a*f,_=o*u,x=o*f;e[0]=l*u,e[4]=_*c-m,e[8]=p*c+x,e[1]=l*f,e[5]=x*c+p,e[9]=m*c-_,e[2]=-c,e[6]=o*l,e[10]=a*l}else if(t.order==="YZX"){const p=a*l,m=a*c,_=o*l,x=o*c;e[0]=l*u,e[4]=x-p*f,e[8]=_*f+m,e[1]=f,e[5]=a*u,e[9]=-o*u,e[2]=-c*u,e[6]=m*f+_,e[10]=p-x*f}else if(t.order==="XZY"){const p=a*l,m=a*c,_=o*l,x=o*c;e[0]=l*u,e[4]=-f,e[8]=c*u,e[1]=p*f+x,e[5]=a*u,e[9]=m*f-_,e[2]=_*f-m,e[6]=o*u,e[10]=x*f+p}return e[3]=0,e[7]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}makeRotationFromQuaternion(t){return this.compose(jc,t,$c)}lookAt(t,e,n){const r=this.elements;return Ae.subVectors(t,e),Ae.lengthSq()===0&&(Ae.z=1),Ae.normalize(),on.crossVectors(n,Ae),on.lengthSq()===0&&(Math.abs(n.z)===1?Ae.x+=1e-4:Ae.z+=1e-4,Ae.normalize(),on.crossVectors(n,Ae)),on.normalize(),Hi.crossVectors(Ae,on),r[0]=on.x,r[4]=Hi.x,r[8]=Ae.x,r[1]=on.y,r[5]=Hi.y,r[9]=Ae.y,r[2]=on.z,r[6]=Hi.z,r[10]=Ae.z,this}multiply(t){return this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){const n=t.elements,r=e.elements,s=this.elements,a=n[0],o=n[4],l=n[8],c=n[12],u=n[1],f=n[5],p=n[9],m=n[13],_=n[2],x=n[6],d=n[10],h=n[14],T=n[3],E=n[7],A=n[11],F=n[15],R=r[0],b=r[4],O=r[8],tt=r[12],g=r[1],S=r[5],V=r[9],z=r[13],k=r[2],Z=r[6],B=r[10],J=r[14],G=r[3],ot=r[7],lt=r[11],_t=r[15];return s[0]=a*R+o*g+l*k+c*G,s[4]=a*b+o*S+l*Z+c*ot,s[8]=a*O+o*V+l*B+c*lt,s[12]=a*tt+o*z+l*J+c*_t,s[1]=u*R+f*g+p*k+m*G,s[5]=u*b+f*S+p*Z+m*ot,s[9]=u*O+f*V+p*B+m*lt,s[13]=u*tt+f*z+p*J+m*_t,s[2]=_*R+x*g+d*k+h*G,s[6]=_*b+x*S+d*Z+h*ot,s[10]=_*O+x*V+d*B+h*lt,s[14]=_*tt+x*z+d*J+h*_t,s[3]=T*R+E*g+A*k+F*G,s[7]=T*b+E*S+A*Z+F*ot,s[11]=T*O+E*V+A*B+F*lt,s[15]=T*tt+E*z+A*J+F*_t,this}multiplyScalar(t){const e=this.elements;return e[0]*=t,e[4]*=t,e[8]*=t,e[12]*=t,e[1]*=t,e[5]*=t,e[9]*=t,e[13]*=t,e[2]*=t,e[6]*=t,e[10]*=t,e[14]*=t,e[3]*=t,e[7]*=t,e[11]*=t,e[15]*=t,this}determinant(){const t=this.elements,e=t[0],n=t[4],r=t[8],s=t[12],a=t[1],o=t[5],l=t[9],c=t[13],u=t[2],f=t[6],p=t[10],m=t[14],_=t[3],x=t[7],d=t[11],h=t[15];return _*(+s*l*f-r*c*f-s*o*p+n*c*p+r*o*m-n*l*m)+x*(+e*l*m-e*c*p+s*a*p-r*a*m+r*c*u-s*l*u)+d*(+e*c*f-e*o*m-s*a*f+n*a*m+s*o*u-n*c*u)+h*(-r*o*u-e*l*f+e*o*p+r*a*f-n*a*p+n*l*u)}transpose(){const t=this.elements;let e;return e=t[1],t[1]=t[4],t[4]=e,e=t[2],t[2]=t[8],t[8]=e,e=t[6],t[6]=t[9],t[9]=e,e=t[3],t[3]=t[12],t[12]=e,e=t[7],t[7]=t[13],t[13]=e,e=t[11],t[11]=t[14],t[14]=e,this}setPosition(t,e,n){const r=this.elements;return t.isVector3?(r[12]=t.x,r[13]=t.y,r[14]=t.z):(r[12]=t,r[13]=e,r[14]=n),this}invert(){const t=this.elements,e=t[0],n=t[1],r=t[2],s=t[3],a=t[4],o=t[5],l=t[6],c=t[7],u=t[8],f=t[9],p=t[10],m=t[11],_=t[12],x=t[13],d=t[14],h=t[15],T=f*d*c-x*p*c+x*l*m-o*d*m-f*l*h+o*p*h,E=_*p*c-u*d*c-_*l*m+a*d*m+u*l*h-a*p*h,A=u*x*c-_*f*c+_*o*m-a*x*m-u*o*h+a*f*h,F=_*f*l-u*x*l-_*o*p+a*x*p+u*o*d-a*f*d,R=e*T+n*E+r*A+s*F;if(R===0)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);const b=1/R;return t[0]=T*b,t[1]=(x*p*s-f*d*s-x*r*m+n*d*m+f*r*h-n*p*h)*b,t[2]=(o*d*s-x*l*s+x*r*c-n*d*c-o*r*h+n*l*h)*b,t[3]=(f*l*s-o*p*s-f*r*c+n*p*c+o*r*m-n*l*m)*b,t[4]=E*b,t[5]=(u*d*s-_*p*s+_*r*m-e*d*m-u*r*h+e*p*h)*b,t[6]=(_*l*s-a*d*s-_*r*c+e*d*c+a*r*h-e*l*h)*b,t[7]=(a*p*s-u*l*s+u*r*c-e*p*c-a*r*m+e*l*m)*b,t[8]=A*b,t[9]=(_*f*s-u*x*s-_*n*m+e*x*m+u*n*h-e*f*h)*b,t[10]=(a*x*s-_*o*s+_*n*c-e*x*c-a*n*h+e*o*h)*b,t[11]=(u*o*s-a*f*s-u*n*c+e*f*c+a*n*m-e*o*m)*b,t[12]=F*b,t[13]=(u*x*r-_*f*r+_*n*p-e*x*p-u*n*d+e*f*d)*b,t[14]=(_*o*r-a*x*r-_*n*l+e*x*l+a*n*d-e*o*d)*b,t[15]=(a*f*r-u*o*r+u*n*l-e*f*l-a*n*p+e*o*p)*b,this}scale(t){const e=this.elements,n=t.x,r=t.y,s=t.z;return e[0]*=n,e[4]*=r,e[8]*=s,e[1]*=n,e[5]*=r,e[9]*=s,e[2]*=n,e[6]*=r,e[10]*=s,e[3]*=n,e[7]*=r,e[11]*=s,this}getMaxScaleOnAxis(){const t=this.elements,e=t[0]*t[0]+t[1]*t[1]+t[2]*t[2],n=t[4]*t[4]+t[5]*t[5]+t[6]*t[6],r=t[8]*t[8]+t[9]*t[9]+t[10]*t[10];return Math.sqrt(Math.max(e,n,r))}makeTranslation(t,e,n){return t.isVector3?this.set(1,0,0,t.x,0,1,0,t.y,0,0,1,t.z,0,0,0,1):this.set(1,0,0,t,0,1,0,e,0,0,1,n,0,0,0,1),this}makeRotationX(t){const e=Math.cos(t),n=Math.sin(t);return this.set(1,0,0,0,0,e,-n,0,0,n,e,0,0,0,0,1),this}makeRotationY(t){const e=Math.cos(t),n=Math.sin(t);return this.set(e,0,n,0,0,1,0,0,-n,0,e,0,0,0,0,1),this}makeRotationZ(t){const e=Math.cos(t),n=Math.sin(t);return this.set(e,-n,0,0,n,e,0,0,0,0,1,0,0,0,0,1),this}makeRotationAxis(t,e){const n=Math.cos(e),r=Math.sin(e),s=1-n,a=t.x,o=t.y,l=t.z,c=s*a,u=s*o;return this.set(c*a+n,c*o-r*l,c*l+r*o,0,c*o+r*l,u*o+n,u*l-r*a,0,c*l-r*o,u*l+r*a,s*l*l+n,0,0,0,0,1),this}makeScale(t,e,n){return this.set(t,0,0,0,0,e,0,0,0,0,n,0,0,0,0,1),this}makeShear(t,e,n,r,s,a){return this.set(1,n,s,0,t,1,a,0,e,r,1,0,0,0,0,1),this}compose(t,e,n){const r=this.elements,s=e._x,a=e._y,o=e._z,l=e._w,c=s+s,u=a+a,f=o+o,p=s*c,m=s*u,_=s*f,x=a*u,d=a*f,h=o*f,T=l*c,E=l*u,A=l*f,F=n.x,R=n.y,b=n.z;return r[0]=(1-(x+h))*F,r[1]=(m+A)*F,r[2]=(_-E)*F,r[3]=0,r[4]=(m-A)*R,r[5]=(1-(p+h))*R,r[6]=(d+T)*R,r[7]=0,r[8]=(_+E)*b,r[9]=(d-T)*b,r[10]=(1-(p+x))*b,r[11]=0,r[12]=t.x,r[13]=t.y,r[14]=t.z,r[15]=1,this}decompose(t,e,n){const r=this.elements;let s=Hn.set(r[0],r[1],r[2]).length();const a=Hn.set(r[4],r[5],r[6]).length(),o=Hn.set(r[8],r[9],r[10]).length();this.determinant()<0&&(s=-s),t.x=r[12],t.y=r[13],t.z=r[14],Ie.copy(this);const c=1/s,u=1/a,f=1/o;return Ie.elements[0]*=c,Ie.elements[1]*=c,Ie.elements[2]*=c,Ie.elements[4]*=u,Ie.elements[5]*=u,Ie.elements[6]*=u,Ie.elements[8]*=f,Ie.elements[9]*=f,Ie.elements[10]*=f,e.setFromRotationMatrix(Ie),n.x=s,n.y=a,n.z=o,this}makePerspective(t,e,n,r,s,a,o=tn){const l=this.elements,c=2*s/(e-t),u=2*s/(n-r),f=(e+t)/(e-t),p=(n+r)/(n-r);let m,_;if(o===tn)m=-(a+s)/(a-s),_=-2*a*s/(a-s);else if(o===gr)m=-a/(a-s),_=-a*s/(a-s);else throw new Error("THREE.Matrix4.makePerspective(): Invalid coordinate system: "+o);return l[0]=c,l[4]=0,l[8]=f,l[12]=0,l[1]=0,l[5]=u,l[9]=p,l[13]=0,l[2]=0,l[6]=0,l[10]=m,l[14]=_,l[3]=0,l[7]=0,l[11]=-1,l[15]=0,this}makeOrthographic(t,e,n,r,s,a,o=tn){const l=this.elements,c=1/(e-t),u=1/(n-r),f=1/(a-s),p=(e+t)*c,m=(n+r)*u;let _,x;if(o===tn)_=(a+s)*f,x=-2*f;else if(o===gr)_=s*f,x=-1*f;else throw new Error("THREE.Matrix4.makeOrthographic(): Invalid coordinate system: "+o);return l[0]=2*c,l[4]=0,l[8]=0,l[12]=-p,l[1]=0,l[5]=2*u,l[9]=0,l[13]=-m,l[2]=0,l[6]=0,l[10]=x,l[14]=-_,l[3]=0,l[7]=0,l[11]=0,l[15]=1,this}equals(t){const e=this.elements,n=t.elements;for(let r=0;r<16;r++)if(e[r]!==n[r])return!1;return!0}fromArray(t,e=0){for(let n=0;n<16;n++)this.elements[n]=t[n+e];return this}toArray(t=[],e=0){const n=this.elements;return t[e]=n[0],t[e+1]=n[1],t[e+2]=n[2],t[e+3]=n[3],t[e+4]=n[4],t[e+5]=n[5],t[e+6]=n[6],t[e+7]=n[7],t[e+8]=n[8],t[e+9]=n[9],t[e+10]=n[10],t[e+11]=n[11],t[e+12]=n[12],t[e+13]=n[13],t[e+14]=n[14],t[e+15]=n[15],t}}const Hn=new L,Ie=new $t,jc=new L(0,0,0),$c=new L(1,1,1),on=new L,Hi=new L,Ae=new L,Fa=new $t,Oa=new Dn;class We{constructor(t=0,e=0,n=0,r=We.DEFAULT_ORDER){this.isEuler=!0,this._x=t,this._y=e,this._z=n,this._order=r}get x(){return this._x}set x(t){this._x=t,this._onChangeCallback()}get y(){return this._y}set y(t){this._y=t,this._onChangeCallback()}get z(){return this._z}set z(t){this._z=t,this._onChangeCallback()}get order(){return this._order}set order(t){this._order=t,this._onChangeCallback()}set(t,e,n,r=this._order){return this._x=t,this._y=e,this._z=n,this._order=r,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._order)}copy(t){return this._x=t._x,this._y=t._y,this._z=t._z,this._order=t._order,this._onChangeCallback(),this}setFromRotationMatrix(t,e=this._order,n=!0){const r=t.elements,s=r[0],a=r[4],o=r[8],l=r[1],c=r[5],u=r[9],f=r[2],p=r[6],m=r[10];switch(e){case"XYZ":this._y=Math.asin(de(o,-1,1)),Math.abs(o)<.9999999?(this._x=Math.atan2(-u,m),this._z=Math.atan2(-a,s)):(this._x=Math.atan2(p,c),this._z=0);break;case"YXZ":this._x=Math.asin(-de(u,-1,1)),Math.abs(u)<.9999999?(this._y=Math.atan2(o,m),this._z=Math.atan2(l,c)):(this._y=Math.atan2(-f,s),this._z=0);break;case"ZXY":this._x=Math.asin(de(p,-1,1)),Math.abs(p)<.9999999?(this._y=Math.atan2(-f,m),this._z=Math.atan2(-a,c)):(this._y=0,this._z=Math.atan2(l,s));break;case"ZYX":this._y=Math.asin(-de(f,-1,1)),Math.abs(f)<.9999999?(this._x=Math.atan2(p,m),this._z=Math.atan2(l,s)):(this._x=0,this._z=Math.atan2(-a,c));break;case"YZX":this._z=Math.asin(de(l,-1,1)),Math.abs(l)<.9999999?(this._x=Math.atan2(-u,c),this._y=Math.atan2(-f,s)):(this._x=0,this._y=Math.atan2(o,m));break;case"XZY":this._z=Math.asin(-de(a,-1,1)),Math.abs(a)<.9999999?(this._x=Math.atan2(p,c),this._y=Math.atan2(o,s)):(this._x=Math.atan2(-u,m),this._y=0);break;default:console.warn("THREE.Euler: .setFromRotationMatrix() encountered an unknown order: "+e)}return this._order=e,n===!0&&this._onChangeCallback(),this}setFromQuaternion(t,e,n){return Fa.makeRotationFromQuaternion(t),this.setFromRotationMatrix(Fa,e,n)}setFromVector3(t,e=this._order){return this.set(t.x,t.y,t.z,e)}reorder(t){return Oa.setFromEuler(this),this.setFromQuaternion(Oa,t)}equals(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._order===this._order}fromArray(t){return this._x=t[0],this._y=t[1],this._z=t[2],t[3]!==void 0&&(this._order=t[3]),this._onChangeCallback(),this}toArray(t=[],e=0){return t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._order,t}_onChange(t){return this._onChangeCallback=t,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._order}}We.DEFAULT_ORDER="XYZ";class al{constructor(){this.mask=1}set(t){this.mask=(1<>>0}enable(t){this.mask|=1<1){for(let e=0;e1){for(let n=0;n0&&(r.userData=this.userData),r.layers=this.layers.mask,r.matrix=this.matrix.toArray(),r.up=this.up.toArray(),this.matrixAutoUpdate===!1&&(r.matrixAutoUpdate=!1),this.isInstancedMesh&&(r.type="InstancedMesh",r.count=this.count,r.instanceMatrix=this.instanceMatrix.toJSON(),this.instanceColor!==null&&(r.instanceColor=this.instanceColor.toJSON())),this.isBatchedMesh&&(r.type="BatchedMesh",r.perObjectFrustumCulled=this.perObjectFrustumCulled,r.sortObjects=this.sortObjects,r.drawRanges=this._drawRanges,r.reservedRanges=this._reservedRanges,r.visibility=this._visibility,r.active=this._active,r.bounds=this._bounds.map(o=>({boxInitialized:o.boxInitialized,boxMin:o.box.min.toArray(),boxMax:o.box.max.toArray(),sphereInitialized:o.sphereInitialized,sphereRadius:o.sphere.radius,sphereCenter:o.sphere.center.toArray()})),r.maxInstanceCount=this._maxInstanceCount,r.maxVertexCount=this._maxVertexCount,r.maxIndexCount=this._maxIndexCount,r.geometryInitialized=this._geometryInitialized,r.geometryCount=this._geometryCount,r.matricesTexture=this._matricesTexture.toJSON(t),this._colorsTexture!==null&&(r.colorsTexture=this._colorsTexture.toJSON(t)),this.boundingSphere!==null&&(r.boundingSphere={center:r.boundingSphere.center.toArray(),radius:r.boundingSphere.radius}),this.boundingBox!==null&&(r.boundingBox={min:r.boundingBox.min.toArray(),max:r.boundingBox.max.toArray()}));function s(o,l){return o[l.uuid]===void 0&&(o[l.uuid]=l.toJSON(t)),l.uuid}if(this.isScene)this.background&&(this.background.isColor?r.background=this.background.toJSON():this.background.isTexture&&(r.background=this.background.toJSON(t).uuid)),this.environment&&this.environment.isTexture&&this.environment.isRenderTargetTexture!==!0&&(r.environment=this.environment.toJSON(t).uuid);else if(this.isMesh||this.isLine||this.isPoints){r.geometry=s(t.geometries,this.geometry);const o=this.geometry.parameters;if(o!==void 0&&o.shapes!==void 0){const l=o.shapes;if(Array.isArray(l))for(let c=0,u=l.length;c0){r.children=[];for(let o=0;o0){r.animations=[];for(let o=0;o0&&(n.geometries=o),l.length>0&&(n.materials=l),c.length>0&&(n.textures=c),u.length>0&&(n.images=u),f.length>0&&(n.shapes=f),p.length>0&&(n.skeletons=p),m.length>0&&(n.animations=m),_.length>0&&(n.nodes=_)}return n.object=r,n;function a(o){const l=[];for(const c in o){const u=o[c];delete u.metadata,l.push(u)}return l}}clone(t){return new this.constructor().copy(this,t)}copy(t,e=!0){if(this.name=t.name,this.up.copy(t.up),this.position.copy(t.position),this.rotation.order=t.rotation.order,this.quaternion.copy(t.quaternion),this.scale.copy(t.scale),this.matrix.copy(t.matrix),this.matrixWorld.copy(t.matrixWorld),this.matrixAutoUpdate=t.matrixAutoUpdate,this.matrixWorldAutoUpdate=t.matrixWorldAutoUpdate,this.matrixWorldNeedsUpdate=t.matrixWorldNeedsUpdate,this.layers.mask=t.layers.mask,this.visible=t.visible,this.castShadow=t.castShadow,this.receiveShadow=t.receiveShadow,this.frustumCulled=t.frustumCulled,this.renderOrder=t.renderOrder,this.animations=t.animations.slice(),this.userData=JSON.parse(JSON.stringify(t.userData)),e===!0)for(let n=0;n0?r.multiplyScalar(1/Math.sqrt(s)):r.set(0,0,0)}static getBarycoord(t,e,n,r,s){Ne.subVectors(r,e),Ze.subVectors(n,e),Vr.subVectors(t,e);const a=Ne.dot(Ne),o=Ne.dot(Ze),l=Ne.dot(Vr),c=Ze.dot(Ze),u=Ze.dot(Vr),f=a*c-o*o;if(f===0)return s.set(0,0,0),null;const p=1/f,m=(c*l-o*u)*p,_=(a*u-o*l)*p;return s.set(1-m-_,_,m)}static containsPoint(t,e,n,r){return this.getBarycoord(t,e,n,r,je)===null?!1:je.x>=0&&je.y>=0&&je.x+je.y<=1}static getInterpolation(t,e,n,r,s,a,o,l){return this.getBarycoord(t,e,n,r,je)===null?(l.x=0,l.y=0,"z"in l&&(l.z=0),"w"in l&&(l.w=0),null):(l.setScalar(0),l.addScaledVector(s,je.x),l.addScaledVector(a,je.y),l.addScaledVector(o,je.z),l)}static getInterpolatedAttribute(t,e,n,r,s,a){return Yr.setScalar(0),qr.setScalar(0),Kr.setScalar(0),Yr.fromBufferAttribute(t,e),qr.fromBufferAttribute(t,n),Kr.fromBufferAttribute(t,r),a.setScalar(0),a.addScaledVector(Yr,s.x),a.addScaledVector(qr,s.y),a.addScaledVector(Kr,s.z),a}static isFrontFacing(t,e,n,r){return Ne.subVectors(n,e),Ze.subVectors(t,e),Ne.cross(Ze).dot(r)<0}set(t,e,n){return this.a.copy(t),this.b.copy(e),this.c.copy(n),this}setFromPointsAndIndices(t,e,n,r){return this.a.copy(t[e]),this.b.copy(t[n]),this.c.copy(t[r]),this}setFromAttributeAndIndices(t,e,n,r){return this.a.fromBufferAttribute(t,e),this.b.fromBufferAttribute(t,n),this.c.fromBufferAttribute(t,r),this}clone(){return new this.constructor().copy(this)}copy(t){return this.a.copy(t.a),this.b.copy(t.b),this.c.copy(t.c),this}getArea(){return Ne.subVectors(this.c,this.b),Ze.subVectors(this.a,this.b),Ne.cross(Ze).length()*.5}getMidpoint(t){return t.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(t){return Oe.getNormal(this.a,this.b,this.c,t)}getPlane(t){return t.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(t,e){return Oe.getBarycoord(t,this.a,this.b,this.c,e)}getInterpolation(t,e,n,r,s){return Oe.getInterpolation(t,this.a,this.b,this.c,e,n,r,s)}containsPoint(t){return Oe.containsPoint(t,this.a,this.b,this.c)}isFrontFacing(t){return Oe.isFrontFacing(this.a,this.b,this.c,t)}intersectsBox(t){return t.intersectsTriangle(this)}closestPointToPoint(t,e){const n=this.a,r=this.b,s=this.c;let a,o;kn.subVectors(r,n),Wn.subVectors(s,n),kr.subVectors(t,n);const l=kn.dot(kr),c=Wn.dot(kr);if(l<=0&&c<=0)return e.copy(n);Wr.subVectors(t,r);const u=kn.dot(Wr),f=Wn.dot(Wr);if(u>=0&&f<=u)return e.copy(r);const p=l*f-u*c;if(p<=0&&l>=0&&u<=0)return a=l/(l-u),e.copy(n).addScaledVector(kn,a);Xr.subVectors(t,s);const m=kn.dot(Xr),_=Wn.dot(Xr);if(_>=0&&m<=_)return e.copy(s);const x=m*c-l*_;if(x<=0&&c>=0&&_<=0)return o=c/(c-_),e.copy(n).addScaledVector(Wn,o);const d=u*_-m*f;if(d<=0&&f-u>=0&&m-_>=0)return ka.subVectors(s,r),o=(f-u)/(f-u+(m-_)),e.copy(r).addScaledVector(ka,o);const h=1/(d+x+p);return a=x*h,o=p*h,e.copy(n).addScaledVector(kn,a).addScaledVector(Wn,o)}equals(t){return t.a.equals(this.a)&&t.b.equals(this.b)&&t.c.equals(this.c)}}const ol={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},ln={h:0,s:0,l:0},Vi={h:0,s:0,l:0};function Zr(i,t,e){return e<0&&(e+=1),e>1&&(e-=1),e<1/6?i+(t-i)*6*e:e<1/2?t:e<2/3?i+(t-i)*6*(2/3-e):i}class zt{constructor(t,e,n){return this.isColor=!0,this.r=1,this.g=1,this.b=1,this.set(t,e,n)}set(t,e,n){if(e===void 0&&n===void 0){const r=t;r&&r.isColor?this.copy(r):typeof r=="number"?this.setHex(r):typeof r=="string"&&this.setStyle(r)}else this.setRGB(t,e,n);return this}setScalar(t){return this.r=t,this.g=t,this.b=t,this}setHex(t,e=He){return t=Math.floor(t),this.r=(t>>16&255)/255,this.g=(t>>8&255)/255,this.b=(t&255)/255,Wt.toWorkingColorSpace(this,e),this}setRGB(t,e,n,r=Wt.workingColorSpace){return this.r=t,this.g=e,this.b=n,Wt.toWorkingColorSpace(this,r),this}setHSL(t,e,n,r=Wt.workingColorSpace){if(t=oa(t,1),e=de(e,0,1),n=de(n,0,1),e===0)this.r=this.g=this.b=n;else{const s=n<=.5?n*(1+e):n+e-n*e,a=2*n-s;this.r=Zr(a,s,t+1/3),this.g=Zr(a,s,t),this.b=Zr(a,s,t-1/3)}return Wt.toWorkingColorSpace(this,r),this}setStyle(t,e=He){function n(s){s!==void 0&&parseFloat(s)<1&&console.warn("THREE.Color: Alpha component of "+t+" will be ignored.")}let r;if(r=/^(\w+)\(([^\)]*)\)/.exec(t)){let s;const a=r[1],o=r[2];switch(a){case"rgb":case"rgba":if(s=/^\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o))return n(s[4]),this.setRGB(Math.min(255,parseInt(s[1],10))/255,Math.min(255,parseInt(s[2],10))/255,Math.min(255,parseInt(s[3],10))/255,e);if(s=/^\s*(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o))return n(s[4]),this.setRGB(Math.min(100,parseInt(s[1],10))/100,Math.min(100,parseInt(s[2],10))/100,Math.min(100,parseInt(s[3],10))/100,e);break;case"hsl":case"hsla":if(s=/^\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\%\s*,\s*(\d*\.?\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o))return n(s[4]),this.setHSL(parseFloat(s[1])/360,parseFloat(s[2])/100,parseFloat(s[3])/100,e);break;default:console.warn("THREE.Color: Unknown color model "+t)}}else if(r=/^\#([A-Fa-f\d]+)$/.exec(t)){const s=r[1],a=s.length;if(a===3)return this.setRGB(parseInt(s.charAt(0),16)/15,parseInt(s.charAt(1),16)/15,parseInt(s.charAt(2),16)/15,e);if(a===6)return this.setHex(parseInt(s,16),e);console.warn("THREE.Color: Invalid hex color "+t)}else if(t&&t.length>0)return this.setColorName(t,e);return this}setColorName(t,e=He){const n=ol[t.toLowerCase()];return n!==void 0?this.setHex(n,e):console.warn("THREE.Color: Unknown color "+t),this}clone(){return new this.constructor(this.r,this.g,this.b)}copy(t){return this.r=t.r,this.g=t.g,this.b=t.b,this}copySRGBToLinear(t){return this.r=ni(t.r),this.g=ni(t.g),this.b=ni(t.b),this}copyLinearToSRGB(t){return this.r=Ur(t.r),this.g=Ur(t.g),this.b=Ur(t.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(t=He){return Wt.fromWorkingColorSpace(ue.copy(this),t),Math.round(de(ue.r*255,0,255))*65536+Math.round(de(ue.g*255,0,255))*256+Math.round(de(ue.b*255,0,255))}getHexString(t=He){return("000000"+this.getHex(t).toString(16)).slice(-6)}getHSL(t,e=Wt.workingColorSpace){Wt.fromWorkingColorSpace(ue.copy(this),e);const n=ue.r,r=ue.g,s=ue.b,a=Math.max(n,r,s),o=Math.min(n,r,s);let l,c;const u=(o+a)/2;if(o===a)l=0,c=0;else{const f=a-o;switch(c=u<=.5?f/(a+o):f/(2-a-o),a){case n:l=(r-s)/f+(r0!=t>0&&this.version++,this._alphaTest=t}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(t){if(t!==void 0)for(const e in t){const n=t[e];if(n===void 0){console.warn(`THREE.Material: parameter '${e}' has value of undefined.`);continue}const r=this[e];if(r===void 0){console.warn(`THREE.Material: '${e}' is not a property of THREE.${this.type}.`);continue}r&&r.isColor?r.set(n):r&&r.isVector3&&n&&n.isVector3?r.copy(n):this[e]=n}}toJSON(t){const e=t===void 0||typeof t=="string";e&&(t={textures:{},images:{}});const n={metadata:{version:4.6,type:"Material",generator:"Material.toJSON"}};n.uuid=this.uuid,n.type=this.type,this.name!==""&&(n.name=this.name),this.color&&this.color.isColor&&(n.color=this.color.getHex()),this.roughness!==void 0&&(n.roughness=this.roughness),this.metalness!==void 0&&(n.metalness=this.metalness),this.sheen!==void 0&&(n.sheen=this.sheen),this.sheenColor&&this.sheenColor.isColor&&(n.sheenColor=this.sheenColor.getHex()),this.sheenRoughness!==void 0&&(n.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(n.emissive=this.emissive.getHex()),this.emissiveIntensity!==void 0&&this.emissiveIntensity!==1&&(n.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(n.specular=this.specular.getHex()),this.specularIntensity!==void 0&&(n.specularIntensity=this.specularIntensity),this.specularColor&&this.specularColor.isColor&&(n.specularColor=this.specularColor.getHex()),this.shininess!==void 0&&(n.shininess=this.shininess),this.clearcoat!==void 0&&(n.clearcoat=this.clearcoat),this.clearcoatRoughness!==void 0&&(n.clearcoatRoughness=this.clearcoatRoughness),this.clearcoatMap&&this.clearcoatMap.isTexture&&(n.clearcoatMap=this.clearcoatMap.toJSON(t).uuid),this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(n.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(t).uuid),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(n.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(t).uuid,n.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),this.dispersion!==void 0&&(n.dispersion=this.dispersion),this.iridescence!==void 0&&(n.iridescence=this.iridescence),this.iridescenceIOR!==void 0&&(n.iridescenceIOR=this.iridescenceIOR),this.iridescenceThicknessRange!==void 0&&(n.iridescenceThicknessRange=this.iridescenceThicknessRange),this.iridescenceMap&&this.iridescenceMap.isTexture&&(n.iridescenceMap=this.iridescenceMap.toJSON(t).uuid),this.iridescenceThicknessMap&&this.iridescenceThicknessMap.isTexture&&(n.iridescenceThicknessMap=this.iridescenceThicknessMap.toJSON(t).uuid),this.anisotropy!==void 0&&(n.anisotropy=this.anisotropy),this.anisotropyRotation!==void 0&&(n.anisotropyRotation=this.anisotropyRotation),this.anisotropyMap&&this.anisotropyMap.isTexture&&(n.anisotropyMap=this.anisotropyMap.toJSON(t).uuid),this.map&&this.map.isTexture&&(n.map=this.map.toJSON(t).uuid),this.matcap&&this.matcap.isTexture&&(n.matcap=this.matcap.toJSON(t).uuid),this.alphaMap&&this.alphaMap.isTexture&&(n.alphaMap=this.alphaMap.toJSON(t).uuid),this.lightMap&&this.lightMap.isTexture&&(n.lightMap=this.lightMap.toJSON(t).uuid,n.lightMapIntensity=this.lightMapIntensity),this.aoMap&&this.aoMap.isTexture&&(n.aoMap=this.aoMap.toJSON(t).uuid,n.aoMapIntensity=this.aoMapIntensity),this.bumpMap&&this.bumpMap.isTexture&&(n.bumpMap=this.bumpMap.toJSON(t).uuid,n.bumpScale=this.bumpScale),this.normalMap&&this.normalMap.isTexture&&(n.normalMap=this.normalMap.toJSON(t).uuid,n.normalMapType=this.normalMapType,n.normalScale=this.normalScale.toArray()),this.displacementMap&&this.displacementMap.isTexture&&(n.displacementMap=this.displacementMap.toJSON(t).uuid,n.displacementScale=this.displacementScale,n.displacementBias=this.displacementBias),this.roughnessMap&&this.roughnessMap.isTexture&&(n.roughnessMap=this.roughnessMap.toJSON(t).uuid),this.metalnessMap&&this.metalnessMap.isTexture&&(n.metalnessMap=this.metalnessMap.toJSON(t).uuid),this.emissiveMap&&this.emissiveMap.isTexture&&(n.emissiveMap=this.emissiveMap.toJSON(t).uuid),this.specularMap&&this.specularMap.isTexture&&(n.specularMap=this.specularMap.toJSON(t).uuid),this.specularIntensityMap&&this.specularIntensityMap.isTexture&&(n.specularIntensityMap=this.specularIntensityMap.toJSON(t).uuid),this.specularColorMap&&this.specularColorMap.isTexture&&(n.specularColorMap=this.specularColorMap.toJSON(t).uuid),this.envMap&&this.envMap.isTexture&&(n.envMap=this.envMap.toJSON(t).uuid,this.combine!==void 0&&(n.combine=this.combine)),this.envMapRotation!==void 0&&(n.envMapRotation=this.envMapRotation.toArray()),this.envMapIntensity!==void 0&&(n.envMapIntensity=this.envMapIntensity),this.reflectivity!==void 0&&(n.reflectivity=this.reflectivity),this.refractionRatio!==void 0&&(n.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(n.gradientMap=this.gradientMap.toJSON(t).uuid),this.transmission!==void 0&&(n.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(n.transmissionMap=this.transmissionMap.toJSON(t).uuid),this.thickness!==void 0&&(n.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(n.thicknessMap=this.thicknessMap.toJSON(t).uuid),this.attenuationDistance!==void 0&&this.attenuationDistance!==1/0&&(n.attenuationDistance=this.attenuationDistance),this.attenuationColor!==void 0&&(n.attenuationColor=this.attenuationColor.getHex()),this.size!==void 0&&(n.size=this.size),this.shadowSide!==null&&(n.shadowSide=this.shadowSide),this.sizeAttenuation!==void 0&&(n.sizeAttenuation=this.sizeAttenuation),this.blending!==ti&&(n.blending=this.blending),this.side!==mn&&(n.side=this.side),this.vertexColors===!0&&(n.vertexColors=!0),this.opacity<1&&(n.opacity=this.opacity),this.transparent===!0&&(n.transparent=!0),this.blendSrc!==fs&&(n.blendSrc=this.blendSrc),this.blendDst!==ps&&(n.blendDst=this.blendDst),this.blendEquation!==bn&&(n.blendEquation=this.blendEquation),this.blendSrcAlpha!==null&&(n.blendSrcAlpha=this.blendSrcAlpha),this.blendDstAlpha!==null&&(n.blendDstAlpha=this.blendDstAlpha),this.blendEquationAlpha!==null&&(n.blendEquationAlpha=this.blendEquationAlpha),this.blendColor&&this.blendColor.isColor&&(n.blendColor=this.blendColor.getHex()),this.blendAlpha!==0&&(n.blendAlpha=this.blendAlpha),this.depthFunc!==ii&&(n.depthFunc=this.depthFunc),this.depthTest===!1&&(n.depthTest=this.depthTest),this.depthWrite===!1&&(n.depthWrite=this.depthWrite),this.colorWrite===!1&&(n.colorWrite=this.colorWrite),this.stencilWriteMask!==255&&(n.stencilWriteMask=this.stencilWriteMask),this.stencilFunc!==Ra&&(n.stencilFunc=this.stencilFunc),this.stencilRef!==0&&(n.stencilRef=this.stencilRef),this.stencilFuncMask!==255&&(n.stencilFuncMask=this.stencilFuncMask),this.stencilFail!==Nn&&(n.stencilFail=this.stencilFail),this.stencilZFail!==Nn&&(n.stencilZFail=this.stencilZFail),this.stencilZPass!==Nn&&(n.stencilZPass=this.stencilZPass),this.stencilWrite===!0&&(n.stencilWrite=this.stencilWrite),this.rotation!==void 0&&this.rotation!==0&&(n.rotation=this.rotation),this.polygonOffset===!0&&(n.polygonOffset=!0),this.polygonOffsetFactor!==0&&(n.polygonOffsetFactor=this.polygonOffsetFactor),this.polygonOffsetUnits!==0&&(n.polygonOffsetUnits=this.polygonOffsetUnits),this.linewidth!==void 0&&this.linewidth!==1&&(n.linewidth=this.linewidth),this.dashSize!==void 0&&(n.dashSize=this.dashSize),this.gapSize!==void 0&&(n.gapSize=this.gapSize),this.scale!==void 0&&(n.scale=this.scale),this.dithering===!0&&(n.dithering=!0),this.alphaTest>0&&(n.alphaTest=this.alphaTest),this.alphaHash===!0&&(n.alphaHash=!0),this.alphaToCoverage===!0&&(n.alphaToCoverage=!0),this.premultipliedAlpha===!0&&(n.premultipliedAlpha=!0),this.forceSinglePass===!0&&(n.forceSinglePass=!0),this.wireframe===!0&&(n.wireframe=!0),this.wireframeLinewidth>1&&(n.wireframeLinewidth=this.wireframeLinewidth),this.wireframeLinecap!=="round"&&(n.wireframeLinecap=this.wireframeLinecap),this.wireframeLinejoin!=="round"&&(n.wireframeLinejoin=this.wireframeLinejoin),this.flatShading===!0&&(n.flatShading=!0),this.visible===!1&&(n.visible=!1),this.toneMapped===!1&&(n.toneMapped=!1),this.fog===!1&&(n.fog=!1),Object.keys(this.userData).length>0&&(n.userData=this.userData);function r(s){const a=[];for(const o in s){const l=s[o];delete l.metadata,a.push(l)}return a}if(e){const s=r(t.textures),a=r(t.images);s.length>0&&(n.textures=s),a.length>0&&(n.images=a)}return n}clone(){return new this.constructor().copy(this)}copy(t){this.name=t.name,this.blending=t.blending,this.side=t.side,this.vertexColors=t.vertexColors,this.opacity=t.opacity,this.transparent=t.transparent,this.blendSrc=t.blendSrc,this.blendDst=t.blendDst,this.blendEquation=t.blendEquation,this.blendSrcAlpha=t.blendSrcAlpha,this.blendDstAlpha=t.blendDstAlpha,this.blendEquationAlpha=t.blendEquationAlpha,this.blendColor.copy(t.blendColor),this.blendAlpha=t.blendAlpha,this.depthFunc=t.depthFunc,this.depthTest=t.depthTest,this.depthWrite=t.depthWrite,this.stencilWriteMask=t.stencilWriteMask,this.stencilFunc=t.stencilFunc,this.stencilRef=t.stencilRef,this.stencilFuncMask=t.stencilFuncMask,this.stencilFail=t.stencilFail,this.stencilZFail=t.stencilZFail,this.stencilZPass=t.stencilZPass,this.stencilWrite=t.stencilWrite;const e=t.clippingPlanes;let n=null;if(e!==null){const r=e.length;n=new Array(r);for(let s=0;s!==r;++s)n[s]=e[s].clone()}return this.clippingPlanes=n,this.clipIntersection=t.clipIntersection,this.clipShadows=t.clipShadows,this.shadowSide=t.shadowSide,this.colorWrite=t.colorWrite,this.precision=t.precision,this.polygonOffset=t.polygonOffset,this.polygonOffsetFactor=t.polygonOffsetFactor,this.polygonOffsetUnits=t.polygonOffsetUnits,this.dithering=t.dithering,this.alphaTest=t.alphaTest,this.alphaHash=t.alphaHash,this.alphaToCoverage=t.alphaToCoverage,this.premultipliedAlpha=t.premultipliedAlpha,this.forceSinglePass=t.forceSinglePass,this.visible=t.visible,this.toneMapped=t.toneMapped,this.userData=JSON.parse(JSON.stringify(t.userData)),this}dispose(){this.dispatchEvent({type:"dispose"})}set needsUpdate(t){t===!0&&this.version++}onBuild(){console.warn("Material: onBuild() has been removed.")}}class ca extends hi{constructor(t){super(),this.isMeshBasicMaterial=!0,this.type="MeshBasicMaterial",this.color=new zt(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new We,this.combine=ko,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.envMapRotation.copy(t.envMapRotation),this.combine=t.combine,this.reflectivity=t.reflectivity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.fog=t.fog,this}}const re=new L,ki=new wt;class ke{constructor(t,e,n=!1){if(Array.isArray(t))throw new TypeError("THREE.BufferAttribute: array should be a Typed Array.");this.isBufferAttribute=!0,this.name="",this.array=t,this.itemSize=e,this.count=t!==void 0?t.length/e:0,this.normalized=n,this.usage=Ca,this.updateRanges=[],this.gpuType=Qe,this.version=0}onUploadCallback(){}set needsUpdate(t){t===!0&&this.version++}setUsage(t){return this.usage=t,this}addUpdateRange(t,e){this.updateRanges.push({start:t,count:e})}clearUpdateRanges(){this.updateRanges.length=0}copy(t){return this.name=t.name,this.array=new t.array.constructor(t.array),this.itemSize=t.itemSize,this.count=t.count,this.normalized=t.normalized,this.usage=t.usage,this.gpuType=t.gpuType,this}copyAt(t,e,n){t*=this.itemSize,n*=e.itemSize;for(let r=0,s=this.itemSize;r0&&(t.userData=this.userData),this.parameters!==void 0){const l=this.parameters;for(const c in l)l[c]!==void 0&&(t[c]=l[c]);return t}t.data={attributes:{}};const e=this.index;e!==null&&(t.data.index={type:e.array.constructor.name,array:Array.prototype.slice.call(e.array)});const n=this.attributes;for(const l in n){const c=n[l];t.data.attributes[l]=c.toJSON(t.data)}const r={};let s=!1;for(const l in this.morphAttributes){const c=this.morphAttributes[l],u=[];for(let f=0,p=c.length;f0&&(r[l]=u,s=!0)}s&&(t.data.morphAttributes=r,t.data.morphTargetsRelative=this.morphTargetsRelative);const a=this.groups;a.length>0&&(t.data.groups=JSON.parse(JSON.stringify(a)));const o=this.boundingSphere;return o!==null&&(t.data.boundingSphere={center:o.center.toArray(),radius:o.radius}),t}clone(){return new this.constructor().copy(this)}copy(t){this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null;const e={};this.name=t.name;const n=t.index;n!==null&&this.setIndex(n.clone(e));const r=t.attributes;for(const c in r){const u=r[c];this.setAttribute(c,u.clone(e))}const s=t.morphAttributes;for(const c in s){const u=[],f=s[c];for(let p=0,m=f.length;p0){const r=e[n[0]];if(r!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let s=0,a=r.length;s(t.far-t.near)**2))&&(Wa.copy(s).invert(),Sn.copy(t.ray).applyMatrix4(Wa),!(n.boundingBox!==null&&Sn.intersectsBox(n.boundingBox)===!1)&&this._computeIntersections(t,e,Sn)))}_computeIntersections(t,e,n){let r;const s=this.geometry,a=this.material,o=s.index,l=s.attributes.position,c=s.attributes.uv,u=s.attributes.uv1,f=s.attributes.normal,p=s.groups,m=s.drawRange;if(o!==null)if(Array.isArray(a))for(let _=0,x=p.length;_e.far?null:{distance:c,point:Zi.clone(),object:i}}function ji(i,t,e,n,r,s,a,o,l,c){i.getVertexPosition(o,Xi),i.getVertexPosition(l,Yi),i.getVertexPosition(c,qi);const u=rh(i,t,e,n,Xi,Yi,qi,Ya);if(u){const f=new L;Oe.getBarycoord(Ya,Xi,Yi,qi,f),r&&(u.uv=Oe.getInterpolatedAttribute(r,o,l,c,f,new wt)),s&&(u.uv1=Oe.getInterpolatedAttribute(s,o,l,c,f,new wt)),a&&(u.normal=Oe.getInterpolatedAttribute(a,o,l,c,f,new L),u.normal.dot(n.direction)>0&&u.normal.multiplyScalar(-1));const p={a:o,b:l,c,normal:new L,materialIndex:0};Oe.getNormal(Xi,Yi,qi,p.normal),u.face=p,u.barycoord=f}return u}class Pi extends ze{constructor(t=1,e=1,n=1,r=1,s=1,a=1){super(),this.type="BoxGeometry",this.parameters={width:t,height:e,depth:n,widthSegments:r,heightSegments:s,depthSegments:a};const o=this;r=Math.floor(r),s=Math.floor(s),a=Math.floor(a);const l=[],c=[],u=[],f=[];let p=0,m=0;_("z","y","x",-1,-1,n,e,t,a,s,0),_("z","y","x",1,-1,n,e,-t,a,s,1),_("x","z","y",1,1,t,n,e,r,a,2),_("x","z","y",1,-1,t,n,-e,r,a,3),_("x","y","z",1,-1,t,e,n,r,s,4),_("x","y","z",-1,-1,t,e,-n,r,s,5),this.setIndex(l),this.setAttribute("position",new Se(c,3)),this.setAttribute("normal",new Se(u,3)),this.setAttribute("uv",new Se(f,2));function _(x,d,h,T,E,A,F,R,b,O,tt){const g=A/b,S=F/O,V=A/2,z=F/2,k=R/2,Z=b+1,B=O+1;let J=0,G=0;const ot=new L;for(let lt=0;lt0?1:-1,u.push(ot.x,ot.y,ot.z),f.push(Ht/b),f.push(1-lt/O),J+=1}}for(let lt=0;lt>8&255]+he[i>>16&255]+he[i>>24&255]+"-"+he[t&255]+he[t>>8&255]+"-"+he[t>>16&15|64]+he[t>>24&255]+"-"+he[e&63|128]+he[e>>8&255]+"-"+he[e>>16&255]+he[e>>24&255]+he[n&255]+he[n>>8&255]+he[n>>16&255]+he[n>>24&255]).toLowerCase()}function de(i,t,e){return Math.max(t,Math.min(e,i))}function ha(i,t){return(i%t+t)%t}function Rc(i,t,e,n,r){return n+(i-t)*(r-n)/(e-t)}function Cc(i,t,e){return i!==t?(e-i)/(t-i):0}function wi(i,t,e){return(1-e)*i+e*t}function Pc(i,t,e,n){return wi(i,t,1-Math.exp(-e*n))}function Lc(i,t=1){return t-Math.abs(ha(i,t*2)-t)}function Dc(i,t,e){return i<=t?0:i>=e?1:(i=(i-t)/(e-t),i*i*(3-2*i))}function Uc(i,t,e){return i<=t?0:i>=e?1:(i=(i-t)/(e-t),i*i*i*(i*(i*6-15)+10))}function Ic(i,t){return i+Math.floor(Math.random()*(t-i+1))}function Nc(i,t){return i+Math.random()*(t-i)}function Fc(i){return i*(.5-Math.random())}function Oc(i){i!==void 0&&(Oa=i);let t=Oa+=1831565813;return t=Math.imul(t^t>>>15,t|1),t^=t+Math.imul(t^t>>>7,t|61),((t^t>>>14)>>>0)/4294967296}function Bc(i){return i*bi}function zc(i){return i*Ci}function Hc(i){return(i&i-1)===0&&i!==0}function Gc(i){return Math.pow(2,Math.ceil(Math.log(i)/Math.LN2))}function kc(i){return Math.pow(2,Math.floor(Math.log(i)/Math.LN2))}function Vc(i,t,e,n,r){const s=Math.cos,a=Math.sin,o=s(e/2),l=a(e/2),c=s((t+n)/2),u=a((t+n)/2),f=s((t-n)/2),p=a((t-n)/2),m=s((n-t)/2),_=a((n-t)/2);switch(r){case"XYX":i.set(o*u,l*f,l*p,o*c);break;case"YZY":i.set(l*p,o*u,l*f,o*c);break;case"ZXZ":i.set(l*f,l*p,o*u,o*c);break;case"XZX":i.set(o*u,l*_,l*m,o*c);break;case"YXY":i.set(l*m,o*u,l*_,o*c);break;case"ZYZ":i.set(l*_,l*m,o*u,o*c);break;default:console.warn("THREE.MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: "+r)}}function $n(i,t){switch(t.constructor){case Float32Array:return i;case Uint32Array:return i/4294967295;case Uint16Array:return i/65535;case Uint8Array:return i/255;case Int32Array:return Math.max(i/2147483647,-1);case Int16Array:return Math.max(i/32767,-1);case Int8Array:return Math.max(i/127,-1);default:throw new Error("Invalid component type.")}}function pe(i,t){switch(t.constructor){case Float32Array:return i;case Uint32Array:return Math.round(i*4294967295);case Uint16Array:return Math.round(i*65535);case Uint8Array:return Math.round(i*255);case Int32Array:return Math.round(i*2147483647);case Int16Array:return Math.round(i*32767);case Int8Array:return Math.round(i*127);default:throw new Error("Invalid component type.")}}const Wc={DEG2RAD:bi,RAD2DEG:Ci,generateUUID:hi,clamp:de,euclideanModulo:ha,mapLinear:Rc,inverseLerp:Cc,lerp:wi,damp:Pc,pingpong:Lc,smoothstep:Dc,smootherstep:Uc,randInt:Ic,randFloat:Nc,randFloatSpread:Fc,seededRandom:Oc,degToRad:Bc,radToDeg:zc,isPowerOfTwo:Hc,ceilPowerOfTwo:Gc,floorPowerOfTwo:kc,setQuaternionFromProperEuler:Vc,normalize:pe,denormalize:$n};class wt{constructor(t=0,e=0){wt.prototype.isVector2=!0,this.x=t,this.y=e}get width(){return this.x}set width(t){this.x=t}get height(){return this.y}set height(t){this.y=t}set(t,e){return this.x=t,this.y=e,this}setScalar(t){return this.x=t,this.y=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;default:throw new Error("index is out of range: "+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;default:throw new Error("index is out of range: "+t)}}clone(){return new this.constructor(this.x,this.y)}copy(t){return this.x=t.x,this.y=t.y,this}add(t){return this.x+=t.x,this.y+=t.y,this}addScalar(t){return this.x+=t,this.y+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this}sub(t){return this.x-=t.x,this.y-=t.y,this}subScalar(t){return this.x-=t,this.y-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this}multiply(t){return this.x*=t.x,this.y*=t.y,this}multiplyScalar(t){return this.x*=t,this.y*=t,this}divide(t){return this.x/=t.x,this.y/=t.y,this}divideScalar(t){return this.multiplyScalar(1/t)}applyMatrix3(t){const e=this.x,n=this.y,r=t.elements;return this.x=r[0]*e+r[3]*n+r[6],this.y=r[1]*e+r[4]*n+r[7],this}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this}clampLength(t,e){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this}negate(){return this.x=-this.x,this.y=-this.y,this}dot(t){return this.x*t.x+this.y*t.y}cross(t){return this.x*t.y-this.y*t.x}lengthSq(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)}normalize(){return this.divideScalar(this.length()||1)}angle(){return Math.atan2(-this.y,-this.x)+Math.PI}angleTo(t){const e=Math.sqrt(this.lengthSq()*t.lengthSq());if(e===0)return Math.PI/2;const n=this.dot(t)/e;return Math.acos(de(n,-1,1))}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){const e=this.x-t.x,n=this.y-t.y;return e*e+n*n}manhattanDistanceTo(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this}lerpVectors(t,e,n){return this.x=t.x+(e.x-t.x)*n,this.y=t.y+(e.y-t.y)*n,this}equals(t){return t.x===this.x&&t.y===this.y}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t}fromBufferAttribute(t,e){return this.x=t.getX(e),this.y=t.getY(e),this}rotateAround(t,e){const n=Math.cos(e),r=Math.sin(e),s=this.x-t.x,a=this.y-t.y;return this.x=s*n-a*r+t.x,this.y=s*r+a*n+t.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}}class Lt{constructor(t,e,n,r,s,a,o,l,c){Lt.prototype.isMatrix3=!0,this.elements=[1,0,0,0,1,0,0,0,1],t!==void 0&&this.set(t,e,n,r,s,a,o,l,c)}set(t,e,n,r,s,a,o,l,c){const u=this.elements;return u[0]=t,u[1]=r,u[2]=o,u[3]=e,u[4]=s,u[5]=l,u[6]=n,u[7]=a,u[8]=c,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(t){const e=this.elements,n=t.elements;return e[0]=n[0],e[1]=n[1],e[2]=n[2],e[3]=n[3],e[4]=n[4],e[5]=n[5],e[6]=n[6],e[7]=n[7],e[8]=n[8],this}extractBasis(t,e,n){return t.setFromMatrix3Column(this,0),e.setFromMatrix3Column(this,1),n.setFromMatrix3Column(this,2),this}setFromMatrix4(t){const e=t.elements;return this.set(e[0],e[4],e[8],e[1],e[5],e[9],e[2],e[6],e[10]),this}multiply(t){return this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){const n=t.elements,r=e.elements,s=this.elements,a=n[0],o=n[3],l=n[6],c=n[1],u=n[4],f=n[7],p=n[2],m=n[5],_=n[8],x=r[0],d=r[3],h=r[6],T=r[1],E=r[4],A=r[7],F=r[2],R=r[5],b=r[8];return s[0]=a*x+o*T+l*F,s[3]=a*d+o*E+l*R,s[6]=a*h+o*A+l*b,s[1]=c*x+u*T+f*F,s[4]=c*d+u*E+f*R,s[7]=c*h+u*A+f*b,s[2]=p*x+m*T+_*F,s[5]=p*d+m*E+_*R,s[8]=p*h+m*A+_*b,this}multiplyScalar(t){const e=this.elements;return e[0]*=t,e[3]*=t,e[6]*=t,e[1]*=t,e[4]*=t,e[7]*=t,e[2]*=t,e[5]*=t,e[8]*=t,this}determinant(){const t=this.elements,e=t[0],n=t[1],r=t[2],s=t[3],a=t[4],o=t[5],l=t[6],c=t[7],u=t[8];return e*a*u-e*o*c-n*s*u+n*o*l+r*s*c-r*a*l}invert(){const t=this.elements,e=t[0],n=t[1],r=t[2],s=t[3],a=t[4],o=t[5],l=t[6],c=t[7],u=t[8],f=u*a-o*c,p=o*l-u*s,m=c*s-a*l,_=e*f+n*p+r*m;if(_===0)return this.set(0,0,0,0,0,0,0,0,0);const x=1/_;return t[0]=f*x,t[1]=(r*c-u*n)*x,t[2]=(o*n-r*a)*x,t[3]=p*x,t[4]=(u*e-r*l)*x,t[5]=(r*s-o*e)*x,t[6]=m*x,t[7]=(n*l-c*e)*x,t[8]=(a*e-n*s)*x,this}transpose(){let t;const e=this.elements;return t=e[1],e[1]=e[3],e[3]=t,t=e[2],e[2]=e[6],e[6]=t,t=e[5],e[5]=e[7],e[7]=t,this}getNormalMatrix(t){return this.setFromMatrix4(t).invert().transpose()}transposeIntoArray(t){const e=this.elements;return t[0]=e[0],t[1]=e[3],t[2]=e[6],t[3]=e[1],t[4]=e[4],t[5]=e[7],t[6]=e[2],t[7]=e[5],t[8]=e[8],this}setUvTransform(t,e,n,r,s,a,o){const l=Math.cos(s),c=Math.sin(s);return this.set(n*l,n*c,-n*(l*a+c*o)+a+t,-r*c,r*l,-r*(-c*a+l*o)+o+e,0,0,1),this}scale(t,e){return this.premultiply(Fr.makeScale(t,e)),this}rotate(t){return this.premultiply(Fr.makeRotation(-t)),this}translate(t,e){return this.premultiply(Fr.makeTranslation(t,e)),this}makeTranslation(t,e){return t.isVector2?this.set(1,0,t.x,0,1,t.y,0,0,1):this.set(1,0,t,0,1,e,0,0,1),this}makeRotation(t){const e=Math.cos(t),n=Math.sin(t);return this.set(e,-n,0,n,e,0,0,0,1),this}makeScale(t,e){return this.set(t,0,0,0,e,0,0,0,1),this}equals(t){const e=this.elements,n=t.elements;for(let r=0;r<9;r++)if(e[r]!==n[r])return!1;return!0}fromArray(t,e=0){for(let n=0;n<9;n++)this.elements[n]=t[n+e];return this}toArray(t=[],e=0){const n=this.elements;return t[e]=n[0],t[e+1]=n[1],t[e+2]=n[2],t[e+3]=n[3],t[e+4]=n[4],t[e+5]=n[5],t[e+6]=n[6],t[e+7]=n[7],t[e+8]=n[8],t}clone(){return new this.constructor().fromArray(this.elements)}}const Fr=new Lt;function hl(i){for(let t=i.length-1;t>=0;--t)if(i[t]>=65535)return!0;return!1}function Pi(i){return document.createElementNS("http://www.w3.org/1999/xhtml",i)}function Xc(){const i=Pi("canvas");return i.style.display="block",i}const Ba={};function mr(i){i in Ba||(Ba[i]=!0,console.warn(i))}function Yc(i,t,e){return new Promise(function(n,r){function s(){switch(i.clientWaitSync(t,i.SYNC_FLUSH_COMMANDS_BIT,0)){case i.WAIT_FAILED:r();break;case i.TIMEOUT_EXPIRED:setTimeout(s,e);break;default:n()}}setTimeout(s,e)})}function qc(i){const t=i.elements;t[2]=.5*t[2]+.5*t[3],t[6]=.5*t[6]+.5*t[7],t[10]=.5*t[10]+.5*t[11],t[14]=.5*t[14]+.5*t[15]}function Kc(i){const t=i.elements;t[11]===-1?(t[10]=-t[10]-1,t[14]=-t[14]):(t[10]=-t[10],t[14]=-t[14]+1)}const za=new Lt().set(.8224621,.177538,0,.0331941,.9668058,0,.0170827,.0723974,.9105199),Ha=new Lt().set(1.2249401,-.2249404,0,-.0420569,1.0420571,0,-.0196376,-.0786361,1.0982735),pi={[gn]:{transfer:gr,primaries:vr,luminanceCoefficients:[.2126,.7152,.0722],toReference:i=>i,fromReference:i=>i},[He]:{transfer:te,primaries:vr,luminanceCoefficients:[.2126,.7152,.0722],toReference:i=>i.convertSRGBToLinear(),fromReference:i=>i.convertLinearToSRGB()},[Ar]:{transfer:gr,primaries:xr,luminanceCoefficients:[.2289,.6917,.0793],toReference:i=>i.applyMatrix3(Ha),fromReference:i=>i.applyMatrix3(za)},[ca]:{transfer:te,primaries:xr,luminanceCoefficients:[.2289,.6917,.0793],toReference:i=>i.convertSRGBToLinear().applyMatrix3(Ha),fromReference:i=>i.applyMatrix3(za).convertLinearToSRGB()}},Zc=new Set([gn,Ar]),Wt={enabled:!0,_workingColorSpace:gn,get workingColorSpace(){return this._workingColorSpace},set workingColorSpace(i){if(!Zc.has(i))throw new Error(`Unsupported working color space, "${i}".`);this._workingColorSpace=i},convert:function(i,t,e){if(this.enabled===!1||t===e||!t||!e)return i;const n=pi[t].toReference,r=pi[e].fromReference;return r(n(i))},fromWorkingColorSpace:function(i,t){return this.convert(i,this._workingColorSpace,t)},toWorkingColorSpace:function(i,t){return this.convert(i,t,this._workingColorSpace)},getPrimaries:function(i){return pi[i].primaries},getTransfer:function(i){return i===dn?gr:pi[i].transfer},getLuminanceCoefficients:function(i,t=this._workingColorSpace){return i.fromArray(pi[t].luminanceCoefficients)}};function ii(i){return i<.04045?i*.0773993808:Math.pow(i*.9478672986+.0521327014,2.4)}function Or(i){return i<.0031308?i*12.92:1.055*Math.pow(i,.41666)-.055}let Fn;class jc{static getDataURL(t){if(/^data:/i.test(t.src)||typeof HTMLCanvasElement>"u")return t.src;let e;if(t instanceof HTMLCanvasElement)e=t;else{Fn===void 0&&(Fn=Pi("canvas")),Fn.width=t.width,Fn.height=t.height;const n=Fn.getContext("2d");t instanceof ImageData?n.putImageData(t,0,0):n.drawImage(t,0,0,t.width,t.height),e=Fn}return e.width>2048||e.height>2048?(console.warn("THREE.ImageUtils.getDataURL: Image converted to jpg for performance reasons",t),e.toDataURL("image/jpeg",.6)):e.toDataURL("image/png")}static sRGBToLinear(t){if(typeof HTMLImageElement<"u"&&t instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&t instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&t instanceof ImageBitmap){const e=Pi("canvas");e.width=t.width,e.height=t.height;const n=e.getContext("2d");n.drawImage(t,0,0,t.width,t.height);const r=n.getImageData(0,0,t.width,t.height),s=r.data;for(let a=0;a0&&(n.userData=this.userData),e||(t.textures[this.uuid]=n),n}dispose(){this.dispatchEvent({type:"dispose"})}transformUv(t){if(this.mapping!==$o)return t;if(t.applyMatrix3(this.matrix),t.x<0||t.x>1)switch(this.wrapS){case ws:t.x=t.x-Math.floor(t.x);break;case Rn:t.x=t.x<0?0:1;break;case Rs:Math.abs(Math.floor(t.x)%2)===1?t.x=Math.ceil(t.x)-t.x:t.x=t.x-Math.floor(t.x);break}if(t.y<0||t.y>1)switch(this.wrapT){case ws:t.y=t.y-Math.floor(t.y);break;case Rn:t.y=t.y<0?0:1;break;case Rs:Math.abs(Math.floor(t.y)%2)===1?t.y=Math.ceil(t.y)-t.y:t.y=t.y-Math.floor(t.y);break}return this.flipY&&(t.y=1-t.y),t}set needsUpdate(t){t===!0&&(this.version++,this.source.needsUpdate=!0)}set needsPMREMUpdate(t){t===!0&&this.pmremVersion++}}ge.DEFAULT_IMAGE=null;ge.DEFAULT_MAPPING=$o;ge.DEFAULT_ANISOTROPY=1;class Zt{constructor(t=0,e=0,n=0,r=1){Zt.prototype.isVector4=!0,this.x=t,this.y=e,this.z=n,this.w=r}get width(){return this.z}set width(t){this.z=t}get height(){return this.w}set height(t){this.w=t}set(t,e,n,r){return this.x=t,this.y=e,this.z=n,this.w=r,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this.w=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setW(t){return this.w=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;case 3:this.w=e;break;default:throw new Error("index is out of range: "+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw new Error("index is out of range: "+t)}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=t.w!==void 0?t.w:1,this}add(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this.w+=t.w,this}addScalar(t){return this.x+=t,this.y+=t,this.z+=t,this.w+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this.w=t.w+e.w,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this.w+=t.w*e,this}sub(t){return this.x-=t.x,this.y-=t.y,this.z-=t.z,this.w-=t.w,this}subScalar(t){return this.x-=t,this.y-=t,this.z-=t,this.w-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this.w=t.w-e.w,this}multiply(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this.w*=t.w,this}multiplyScalar(t){return this.x*=t,this.y*=t,this.z*=t,this.w*=t,this}applyMatrix4(t){const e=this.x,n=this.y,r=this.z,s=this.w,a=t.elements;return this.x=a[0]*e+a[4]*n+a[8]*r+a[12]*s,this.y=a[1]*e+a[5]*n+a[9]*r+a[13]*s,this.z=a[2]*e+a[6]*n+a[10]*r+a[14]*s,this.w=a[3]*e+a[7]*n+a[11]*r+a[15]*s,this}divideScalar(t){return this.multiplyScalar(1/t)}setAxisAngleFromQuaternion(t){this.w=2*Math.acos(t.w);const e=Math.sqrt(1-t.w*t.w);return e<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=t.x/e,this.y=t.y/e,this.z=t.z/e),this}setAxisAngleFromRotationMatrix(t){let e,n,r,s;const l=t.elements,c=l[0],u=l[4],f=l[8],p=l[1],m=l[5],_=l[9],x=l[2],d=l[6],h=l[10];if(Math.abs(u-p)<.01&&Math.abs(f-x)<.01&&Math.abs(_-d)<.01){if(Math.abs(u+p)<.1&&Math.abs(f+x)<.1&&Math.abs(_+d)<.1&&Math.abs(c+m+h-3)<.1)return this.set(1,0,0,0),this;e=Math.PI;const E=(c+1)/2,A=(m+1)/2,F=(h+1)/2,R=(u+p)/4,b=(f+x)/4,O=(_+d)/4;return E>A&&E>F?E<.01?(n=0,r=.707106781,s=.707106781):(n=Math.sqrt(E),r=R/n,s=b/n):A>F?A<.01?(n=.707106781,r=0,s=.707106781):(r=Math.sqrt(A),n=R/r,s=O/r):F<.01?(n=.707106781,r=.707106781,s=0):(s=Math.sqrt(F),n=b/s,r=O/s),this.set(n,r,s,e),this}let T=Math.sqrt((d-_)*(d-_)+(f-x)*(f-x)+(p-u)*(p-u));return Math.abs(T)<.001&&(T=1),this.x=(d-_)/T,this.y=(f-x)/T,this.z=(p-u)/T,this.w=Math.acos((c+m+h-1)/2),this}setFromMatrixPosition(t){const e=t.elements;return this.x=e[12],this.y=e[13],this.z=e[14],this.w=e[15],this}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this.w=Math.min(this.w,t.w),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this.w=Math.max(this.w,t.w),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this.w=Math.max(t.w,Math.min(e.w,this.w)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this.w=Math.max(t,Math.min(e,this.w)),this}clampLength(t,e){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this.w=Math.trunc(this.w),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z+this.w*t.w}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)}normalize(){return this.divideScalar(this.length()||1)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this.w+=(t.w-this.w)*e,this}lerpVectors(t,e,n){return this.x=t.x+(e.x-t.x)*n,this.y=t.y+(e.y-t.y)*n,this.z=t.z+(e.z-t.z)*n,this.w=t.w+(e.w-t.w)*n,this}equals(t){return t.x===this.x&&t.y===this.y&&t.z===this.z&&t.w===this.w}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this.z=t[e+2],this.w=t[e+3],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t[e+3]=this.w,t}fromBufferAttribute(t,e){return this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this.w=t.getW(e),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this.w=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z,yield this.w}}class Qc extends Un{constructor(t=1,e=1,n={}){super(),this.isRenderTarget=!0,this.width=t,this.height=e,this.depth=1,this.scissor=new Zt(0,0,t,e),this.scissorTest=!1,this.viewport=new Zt(0,0,t,e);const r={width:t,height:e,depth:1};n=Object.assign({generateMipmaps:!1,internalFormat:null,minFilter:Fe,depthBuffer:!0,stencilBuffer:!1,resolveDepthBuffer:!0,resolveStencilBuffer:!0,depthTexture:null,samples:0,count:1},n);const s=new ge(r,n.mapping,n.wrapS,n.wrapT,n.magFilter,n.minFilter,n.format,n.type,n.anisotropy,n.colorSpace);s.flipY=!1,s.generateMipmaps=n.generateMipmaps,s.internalFormat=n.internalFormat,this.textures=[];const a=n.count;for(let o=0;o=0?1:-1,E=1-h*h;if(E>Number.EPSILON){const F=Math.sqrt(E),R=Math.atan2(F,h*T);d=Math.sin(d*R)/F,o=Math.sin(o*R)/F}const A=o*T;if(l=l*d+p*A,c=c*d+m*A,u=u*d+_*A,f=f*d+x*A,d===1-o){const F=1/Math.sqrt(l*l+c*c+u*u+f*f);l*=F,c*=F,u*=F,f*=F}}t[e]=l,t[e+1]=c,t[e+2]=u,t[e+3]=f}static multiplyQuaternionsFlat(t,e,n,r,s,a){const o=n[r],l=n[r+1],c=n[r+2],u=n[r+3],f=s[a],p=s[a+1],m=s[a+2],_=s[a+3];return t[e]=o*_+u*f+l*m-c*p,t[e+1]=l*_+u*p+c*f-o*m,t[e+2]=c*_+u*m+o*p-l*f,t[e+3]=u*_-o*f-l*p-c*m,t}get x(){return this._x}set x(t){this._x=t,this._onChangeCallback()}get y(){return this._y}set y(t){this._y=t,this._onChangeCallback()}get z(){return this._z}set z(t){this._z=t,this._onChangeCallback()}get w(){return this._w}set w(t){this._w=t,this._onChangeCallback()}set(t,e,n,r){return this._x=t,this._y=e,this._z=n,this._w=r,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(t){return this._x=t.x,this._y=t.y,this._z=t.z,this._w=t.w,this._onChangeCallback(),this}setFromEuler(t,e=!0){const n=t._x,r=t._y,s=t._z,a=t._order,o=Math.cos,l=Math.sin,c=o(n/2),u=o(r/2),f=o(s/2),p=l(n/2),m=l(r/2),_=l(s/2);switch(a){case"XYZ":this._x=p*u*f+c*m*_,this._y=c*m*f-p*u*_,this._z=c*u*_+p*m*f,this._w=c*u*f-p*m*_;break;case"YXZ":this._x=p*u*f+c*m*_,this._y=c*m*f-p*u*_,this._z=c*u*_-p*m*f,this._w=c*u*f+p*m*_;break;case"ZXY":this._x=p*u*f-c*m*_,this._y=c*m*f+p*u*_,this._z=c*u*_+p*m*f,this._w=c*u*f-p*m*_;break;case"ZYX":this._x=p*u*f-c*m*_,this._y=c*m*f+p*u*_,this._z=c*u*_-p*m*f,this._w=c*u*f+p*m*_;break;case"YZX":this._x=p*u*f+c*m*_,this._y=c*m*f+p*u*_,this._z=c*u*_-p*m*f,this._w=c*u*f-p*m*_;break;case"XZY":this._x=p*u*f-c*m*_,this._y=c*m*f-p*u*_,this._z=c*u*_+p*m*f,this._w=c*u*f+p*m*_;break;default:console.warn("THREE.Quaternion: .setFromEuler() encountered an unknown order: "+a)}return e===!0&&this._onChangeCallback(),this}setFromAxisAngle(t,e){const n=e/2,r=Math.sin(n);return this._x=t.x*r,this._y=t.y*r,this._z=t.z*r,this._w=Math.cos(n),this._onChangeCallback(),this}setFromRotationMatrix(t){const e=t.elements,n=e[0],r=e[4],s=e[8],a=e[1],o=e[5],l=e[9],c=e[2],u=e[6],f=e[10],p=n+o+f;if(p>0){const m=.5/Math.sqrt(p+1);this._w=.25/m,this._x=(u-l)*m,this._y=(s-c)*m,this._z=(a-r)*m}else if(n>o&&n>f){const m=2*Math.sqrt(1+n-o-f);this._w=(u-l)/m,this._x=.25*m,this._y=(r+a)/m,this._z=(s+c)/m}else if(o>f){const m=2*Math.sqrt(1+o-n-f);this._w=(s-c)/m,this._x=(r+a)/m,this._y=.25*m,this._z=(l+u)/m}else{const m=2*Math.sqrt(1+f-n-o);this._w=(a-r)/m,this._x=(s+c)/m,this._y=(l+u)/m,this._z=.25*m}return this._onChangeCallback(),this}setFromUnitVectors(t,e){let n=t.dot(e)+1;return nMath.abs(t.z)?(this._x=-t.y,this._y=t.x,this._z=0,this._w=n):(this._x=0,this._y=-t.z,this._z=t.y,this._w=n)):(this._x=t.y*e.z-t.z*e.y,this._y=t.z*e.x-t.x*e.z,this._z=t.x*e.y-t.y*e.x,this._w=n),this.normalize()}angleTo(t){return 2*Math.acos(Math.abs(de(this.dot(t),-1,1)))}rotateTowards(t,e){const n=this.angleTo(t);if(n===0)return this;const r=Math.min(1,e/n);return this.slerp(t,r),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(t){return this._x*t._x+this._y*t._y+this._z*t._z+this._w*t._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let t=this.length();return t===0?(this._x=0,this._y=0,this._z=0,this._w=1):(t=1/t,this._x=this._x*t,this._y=this._y*t,this._z=this._z*t,this._w=this._w*t),this._onChangeCallback(),this}multiply(t){return this.multiplyQuaternions(this,t)}premultiply(t){return this.multiplyQuaternions(t,this)}multiplyQuaternions(t,e){const n=t._x,r=t._y,s=t._z,a=t._w,o=e._x,l=e._y,c=e._z,u=e._w;return this._x=n*u+a*o+r*c-s*l,this._y=r*u+a*l+s*o-n*c,this._z=s*u+a*c+n*l-r*o,this._w=a*u-n*o-r*l-s*c,this._onChangeCallback(),this}slerp(t,e){if(e===0)return this;if(e===1)return this.copy(t);const n=this._x,r=this._y,s=this._z,a=this._w;let o=a*t._w+n*t._x+r*t._y+s*t._z;if(o<0?(this._w=-t._w,this._x=-t._x,this._y=-t._y,this._z=-t._z,o=-o):this.copy(t),o>=1)return this._w=a,this._x=n,this._y=r,this._z=s,this;const l=1-o*o;if(l<=Number.EPSILON){const m=1-e;return this._w=m*a+e*this._w,this._x=m*n+e*this._x,this._y=m*r+e*this._y,this._z=m*s+e*this._z,this.normalize(),this}const c=Math.sqrt(l),u=Math.atan2(c,o),f=Math.sin((1-e)*u)/c,p=Math.sin(e*u)/c;return this._w=a*f+this._w*p,this._x=n*f+this._x*p,this._y=r*f+this._y*p,this._z=s*f+this._z*p,this._onChangeCallback(),this}slerpQuaternions(t,e,n){return this.copy(t).slerp(e,n)}random(){const t=2*Math.PI*Math.random(),e=2*Math.PI*Math.random(),n=Math.random(),r=Math.sqrt(1-n),s=Math.sqrt(n);return this.set(r*Math.sin(t),r*Math.cos(t),s*Math.sin(e),s*Math.cos(e))}equals(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._w===this._w}fromArray(t,e=0){return this._x=t[e],this._y=t[e+1],this._z=t[e+2],this._w=t[e+3],this._onChangeCallback(),this}toArray(t=[],e=0){return t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._w,t}fromBufferAttribute(t,e){return this._x=t.getX(e),this._y=t.getY(e),this._z=t.getZ(e),this._w=t.getW(e),this._onChangeCallback(),this}toJSON(){return this.toArray()}_onChange(t){return this._onChangeCallback=t,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._w}}class L{constructor(t=0,e=0,n=0){L.prototype.isVector3=!0,this.x=t,this.y=e,this.z=n}set(t,e,n){return n===void 0&&(n=this.z),this.x=t,this.y=e,this.z=n,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;default:throw new Error("index is out of range: "+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw new Error("index is out of range: "+t)}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this}add(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this}addScalar(t){return this.x+=t,this.y+=t,this.z+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this}sub(t){return this.x-=t.x,this.y-=t.y,this.z-=t.z,this}subScalar(t){return this.x-=t,this.y-=t,this.z-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this}multiply(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this}multiplyScalar(t){return this.x*=t,this.y*=t,this.z*=t,this}multiplyVectors(t,e){return this.x=t.x*e.x,this.y=t.y*e.y,this.z=t.z*e.z,this}applyEuler(t){return this.applyQuaternion(Ga.setFromEuler(t))}applyAxisAngle(t,e){return this.applyQuaternion(Ga.setFromAxisAngle(t,e))}applyMatrix3(t){const e=this.x,n=this.y,r=this.z,s=t.elements;return this.x=s[0]*e+s[3]*n+s[6]*r,this.y=s[1]*e+s[4]*n+s[7]*r,this.z=s[2]*e+s[5]*n+s[8]*r,this}applyNormalMatrix(t){return this.applyMatrix3(t).normalize()}applyMatrix4(t){const e=this.x,n=this.y,r=this.z,s=t.elements,a=1/(s[3]*e+s[7]*n+s[11]*r+s[15]);return this.x=(s[0]*e+s[4]*n+s[8]*r+s[12])*a,this.y=(s[1]*e+s[5]*n+s[9]*r+s[13])*a,this.z=(s[2]*e+s[6]*n+s[10]*r+s[14])*a,this}applyQuaternion(t){const e=this.x,n=this.y,r=this.z,s=t.x,a=t.y,o=t.z,l=t.w,c=2*(a*r-o*n),u=2*(o*e-s*r),f=2*(s*n-a*e);return this.x=e+l*c+a*f-o*u,this.y=n+l*u+o*c-s*f,this.z=r+l*f+s*u-a*c,this}project(t){return this.applyMatrix4(t.matrixWorldInverse).applyMatrix4(t.projectionMatrix)}unproject(t){return this.applyMatrix4(t.projectionMatrixInverse).applyMatrix4(t.matrixWorld)}transformDirection(t){const e=this.x,n=this.y,r=this.z,s=t.elements;return this.x=s[0]*e+s[4]*n+s[8]*r,this.y=s[1]*e+s[5]*n+s[9]*r,this.z=s[2]*e+s[6]*n+s[10]*r,this.normalize()}divide(t){return this.x/=t.x,this.y/=t.y,this.z/=t.z,this}divideScalar(t){return this.multiplyScalar(1/t)}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this}clampLength(t,e){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}normalize(){return this.divideScalar(this.length()||1)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this}lerpVectors(t,e,n){return this.x=t.x+(e.x-t.x)*n,this.y=t.y+(e.y-t.y)*n,this.z=t.z+(e.z-t.z)*n,this}cross(t){return this.crossVectors(this,t)}crossVectors(t,e){const n=t.x,r=t.y,s=t.z,a=e.x,o=e.y,l=e.z;return this.x=r*l-s*o,this.y=s*a-n*l,this.z=n*o-r*a,this}projectOnVector(t){const e=t.lengthSq();if(e===0)return this.set(0,0,0);const n=t.dot(this)/e;return this.copy(t).multiplyScalar(n)}projectOnPlane(t){return zr.copy(this).projectOnVector(t),this.sub(zr)}reflect(t){return this.sub(zr.copy(t).multiplyScalar(2*this.dot(t)))}angleTo(t){const e=Math.sqrt(this.lengthSq()*t.lengthSq());if(e===0)return Math.PI/2;const n=this.dot(t)/e;return Math.acos(de(n,-1,1))}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){const e=this.x-t.x,n=this.y-t.y,r=this.z-t.z;return e*e+n*n+r*r}manhattanDistanceTo(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)+Math.abs(this.z-t.z)}setFromSpherical(t){return this.setFromSphericalCoords(t.radius,t.phi,t.theta)}setFromSphericalCoords(t,e,n){const r=Math.sin(e)*t;return this.x=r*Math.sin(n),this.y=Math.cos(e)*t,this.z=r*Math.cos(n),this}setFromCylindrical(t){return this.setFromCylindricalCoords(t.radius,t.theta,t.y)}setFromCylindricalCoords(t,e,n){return this.x=t*Math.sin(e),this.y=n,this.z=t*Math.cos(e),this}setFromMatrixPosition(t){const e=t.elements;return this.x=e[12],this.y=e[13],this.z=e[14],this}setFromMatrixScale(t){const e=this.setFromMatrixColumn(t,0).length(),n=this.setFromMatrixColumn(t,1).length(),r=this.setFromMatrixColumn(t,2).length();return this.x=e,this.y=n,this.z=r,this}setFromMatrixColumn(t,e){return this.fromArray(t.elements,e*4)}setFromMatrix3Column(t,e){return this.fromArray(t.elements,e*3)}setFromEuler(t){return this.x=t._x,this.y=t._y,this.z=t._z,this}setFromColor(t){return this.x=t.r,this.y=t.g,this.z=t.b,this}equals(t){return t.x===this.x&&t.y===this.y&&t.z===this.z}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this.z=t[e+2],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t}fromBufferAttribute(t,e){return this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){const t=Math.random()*Math.PI*2,e=Math.random()*2-1,n=Math.sqrt(1-e*e);return this.x=n*Math.cos(t),this.y=e,this.z=n*Math.sin(t),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}}const zr=new L,Ga=new Dn;class Di{constructor(t=new L(1/0,1/0,1/0),e=new L(-1/0,-1/0,-1/0)){this.isBox3=!0,this.min=t,this.max=e}set(t,e){return this.min.copy(t),this.max.copy(e),this}setFromArray(t){this.makeEmpty();for(let e=0,n=t.length;e=this.min.x&&t.x<=this.max.x&&t.y>=this.min.y&&t.y<=this.max.y&&t.z>=this.min.z&&t.z<=this.max.z}containsBox(t){return this.min.x<=t.min.x&&t.max.x<=this.max.x&&this.min.y<=t.min.y&&t.max.y<=this.max.y&&this.min.z<=t.min.z&&t.max.z<=this.max.z}getParameter(t,e){return e.set((t.x-this.min.x)/(this.max.x-this.min.x),(t.y-this.min.y)/(this.max.y-this.min.y),(t.z-this.min.z)/(this.max.z-this.min.z))}intersectsBox(t){return t.max.x>=this.min.x&&t.min.x<=this.max.x&&t.max.y>=this.min.y&&t.min.y<=this.max.y&&t.max.z>=this.min.z&&t.min.z<=this.max.z}intersectsSphere(t){return this.clampPoint(t.center,Ue),Ue.distanceToSquared(t.center)<=t.radius*t.radius}intersectsPlane(t){let e,n;return t.normal.x>0?(e=t.normal.x*this.min.x,n=t.normal.x*this.max.x):(e=t.normal.x*this.max.x,n=t.normal.x*this.min.x),t.normal.y>0?(e+=t.normal.y*this.min.y,n+=t.normal.y*this.max.y):(e+=t.normal.y*this.max.y,n+=t.normal.y*this.min.y),t.normal.z>0?(e+=t.normal.z*this.min.z,n+=t.normal.z*this.max.z):(e+=t.normal.z*this.max.z,n+=t.normal.z*this.min.z),e<=-t.constant&&n>=-t.constant}intersectsTriangle(t){if(this.isEmpty())return!1;this.getCenter(mi),zi.subVectors(this.max,mi),On.subVectors(t.a,mi),Bn.subVectors(t.b,mi),zn.subVectors(t.c,mi),rn.subVectors(Bn,On),sn.subVectors(zn,Bn),xn.subVectors(On,zn);let e=[0,-rn.z,rn.y,0,-sn.z,sn.y,0,-xn.z,xn.y,rn.z,0,-rn.x,sn.z,0,-sn.x,xn.z,0,-xn.x,-rn.y,rn.x,0,-sn.y,sn.x,0,-xn.y,xn.x,0];return!Hr(e,On,Bn,zn,zi)||(e=[1,0,0,0,1,0,0,0,1],!Hr(e,On,Bn,zn,zi))?!1:(Hi.crossVectors(rn,sn),e=[Hi.x,Hi.y,Hi.z],Hr(e,On,Bn,zn,zi))}clampPoint(t,e){return e.copy(t).clamp(this.min,this.max)}distanceToPoint(t){return this.clampPoint(t,Ue).distanceTo(t)}getBoundingSphere(t){return this.isEmpty()?t.makeEmpty():(this.getCenter(t.center),t.radius=this.getSize(Ue).length()*.5),t}intersect(t){return this.min.max(t.min),this.max.min(t.max),this.isEmpty()&&this.makeEmpty(),this}union(t){return this.min.min(t.min),this.max.max(t.max),this}applyMatrix4(t){return this.isEmpty()?this:(Ye[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(t),Ye[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(t),Ye[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(t),Ye[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(t),Ye[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(t),Ye[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(t),Ye[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(t),Ye[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(t),this.setFromPoints(Ye),this)}translate(t){return this.min.add(t),this.max.add(t),this}equals(t){return t.min.equals(this.min)&&t.max.equals(this.max)}}const Ye=[new L,new L,new L,new L,new L,new L,new L,new L],Ue=new L,Bi=new Di,On=new L,Bn=new L,zn=new L,rn=new L,sn=new L,xn=new L,mi=new L,zi=new L,Hi=new L,Mn=new L;function Hr(i,t,e,n,r){for(let s=0,a=i.length-3;s<=a;s+=3){Mn.fromArray(i,s);const o=r.x*Math.abs(Mn.x)+r.y*Math.abs(Mn.y)+r.z*Math.abs(Mn.z),l=t.dot(Mn),c=e.dot(Mn),u=n.dot(Mn);if(Math.max(-Math.max(l,c,u),Math.min(l,c,u))>o)return!1}return!0}const eh=new Di,_i=new L,Gr=new L;class br{constructor(t=new L,e=-1){this.isSphere=!0,this.center=t,this.radius=e}set(t,e){return this.center.copy(t),this.radius=e,this}setFromPoints(t,e){const n=this.center;e!==void 0?n.copy(e):eh.setFromPoints(t).getCenter(n);let r=0;for(let s=0,a=t.length;sthis.radius*this.radius&&(e.sub(this.center).normalize(),e.multiplyScalar(this.radius).add(this.center)),e}getBoundingBox(t){return this.isEmpty()?(t.makeEmpty(),t):(t.set(this.center,this.center),t.expandByScalar(this.radius),t)}applyMatrix4(t){return this.center.applyMatrix4(t),this.radius=this.radius*t.getMaxScaleOnAxis(),this}translate(t){return this.center.add(t),this}expandByPoint(t){if(this.isEmpty())return this.center.copy(t),this.radius=0,this;_i.subVectors(t,this.center);const e=_i.lengthSq();if(e>this.radius*this.radius){const n=Math.sqrt(e),r=(n-this.radius)*.5;this.center.addScaledVector(_i,r/n),this.radius+=r}return this}union(t){return t.isEmpty()?this:this.isEmpty()?(this.copy(t),this):(this.center.equals(t.center)===!0?this.radius=Math.max(this.radius,t.radius):(Gr.subVectors(t.center,this.center).setLength(t.radius),this.expandByPoint(_i.copy(t.center).add(Gr)),this.expandByPoint(_i.copy(t.center).sub(Gr))),this)}equals(t){return t.center.equals(this.center)&&t.radius===this.radius}clone(){return new this.constructor().copy(this)}}const qe=new L,kr=new L,Gi=new L,an=new L,Vr=new L,ki=new L,Wr=new L;class ua{constructor(t=new L,e=new L(0,0,-1)){this.origin=t,this.direction=e}set(t,e){return this.origin.copy(t),this.direction.copy(e),this}copy(t){return this.origin.copy(t.origin),this.direction.copy(t.direction),this}at(t,e){return e.copy(this.origin).addScaledVector(this.direction,t)}lookAt(t){return this.direction.copy(t).sub(this.origin).normalize(),this}recast(t){return this.origin.copy(this.at(t,qe)),this}closestPointToPoint(t,e){e.subVectors(t,this.origin);const n=e.dot(this.direction);return n<0?e.copy(this.origin):e.copy(this.origin).addScaledVector(this.direction,n)}distanceToPoint(t){return Math.sqrt(this.distanceSqToPoint(t))}distanceSqToPoint(t){const e=qe.subVectors(t,this.origin).dot(this.direction);return e<0?this.origin.distanceToSquared(t):(qe.copy(this.origin).addScaledVector(this.direction,e),qe.distanceToSquared(t))}distanceSqToSegment(t,e,n,r){kr.copy(t).add(e).multiplyScalar(.5),Gi.copy(e).sub(t).normalize(),an.copy(this.origin).sub(kr);const s=t.distanceTo(e)*.5,a=-this.direction.dot(Gi),o=an.dot(this.direction),l=-an.dot(Gi),c=an.lengthSq(),u=Math.abs(1-a*a);let f,p,m,_;if(u>0)if(f=a*l-o,p=a*o-l,_=s*u,f>=0)if(p>=-_)if(p<=_){const x=1/u;f*=x,p*=x,m=f*(f+a*p+2*o)+p*(a*f+p+2*l)+c}else p=s,f=Math.max(0,-(a*p+o)),m=-f*f+p*(p+2*l)+c;else p=-s,f=Math.max(0,-(a*p+o)),m=-f*f+p*(p+2*l)+c;else p<=-_?(f=Math.max(0,-(-a*s+o)),p=f>0?-s:Math.min(Math.max(-s,-l),s),m=-f*f+p*(p+2*l)+c):p<=_?(f=0,p=Math.min(Math.max(-s,-l),s),m=p*(p+2*l)+c):(f=Math.max(0,-(a*s+o)),p=f>0?s:Math.min(Math.max(-s,-l),s),m=-f*f+p*(p+2*l)+c);else p=a>0?-s:s,f=Math.max(0,-(a*p+o)),m=-f*f+p*(p+2*l)+c;return n&&n.copy(this.origin).addScaledVector(this.direction,f),r&&r.copy(kr).addScaledVector(Gi,p),m}intersectSphere(t,e){qe.subVectors(t.center,this.origin);const n=qe.dot(this.direction),r=qe.dot(qe)-n*n,s=t.radius*t.radius;if(r>s)return null;const a=Math.sqrt(s-r),o=n-a,l=n+a;return l<0?null:o<0?this.at(l,e):this.at(o,e)}intersectsSphere(t){return this.distanceSqToPoint(t.center)<=t.radius*t.radius}distanceToPlane(t){const e=t.normal.dot(this.direction);if(e===0)return t.distanceToPoint(this.origin)===0?0:null;const n=-(this.origin.dot(t.normal)+t.constant)/e;return n>=0?n:null}intersectPlane(t,e){const n=this.distanceToPlane(t);return n===null?null:this.at(n,e)}intersectsPlane(t){const e=t.distanceToPoint(this.origin);return e===0||t.normal.dot(this.direction)*e<0}intersectBox(t,e){let n,r,s,a,o,l;const c=1/this.direction.x,u=1/this.direction.y,f=1/this.direction.z,p=this.origin;return c>=0?(n=(t.min.x-p.x)*c,r=(t.max.x-p.x)*c):(n=(t.max.x-p.x)*c,r=(t.min.x-p.x)*c),u>=0?(s=(t.min.y-p.y)*u,a=(t.max.y-p.y)*u):(s=(t.max.y-p.y)*u,a=(t.min.y-p.y)*u),n>a||s>r||((s>n||isNaN(n))&&(n=s),(a=0?(o=(t.min.z-p.z)*f,l=(t.max.z-p.z)*f):(o=(t.max.z-p.z)*f,l=(t.min.z-p.z)*f),n>l||o>r)||((o>n||n!==n)&&(n=o),(l=0?n:r,e)}intersectsBox(t){return this.intersectBox(t,qe)!==null}intersectTriangle(t,e,n,r,s){Vr.subVectors(e,t),ki.subVectors(n,t),Wr.crossVectors(Vr,ki);let a=this.direction.dot(Wr),o;if(a>0){if(r)return null;o=1}else if(a<0)o=-1,a=-a;else return null;an.subVectors(this.origin,t);const l=o*this.direction.dot(ki.crossVectors(an,ki));if(l<0)return null;const c=o*this.direction.dot(Vr.cross(an));if(c<0||l+c>a)return null;const u=-o*an.dot(Wr);return u<0?null:this.at(u/a,s)}applyMatrix4(t){return this.origin.applyMatrix4(t),this.direction.transformDirection(t),this}equals(t){return t.origin.equals(this.origin)&&t.direction.equals(this.direction)}clone(){return new this.constructor().copy(this)}}class $t{constructor(t,e,n,r,s,a,o,l,c,u,f,p,m,_,x,d){$t.prototype.isMatrix4=!0,this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],t!==void 0&&this.set(t,e,n,r,s,a,o,l,c,u,f,p,m,_,x,d)}set(t,e,n,r,s,a,o,l,c,u,f,p,m,_,x,d){const h=this.elements;return h[0]=t,h[4]=e,h[8]=n,h[12]=r,h[1]=s,h[5]=a,h[9]=o,h[13]=l,h[2]=c,h[6]=u,h[10]=f,h[14]=p,h[3]=m,h[7]=_,h[11]=x,h[15]=d,this}identity(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}clone(){return new $t().fromArray(this.elements)}copy(t){const e=this.elements,n=t.elements;return e[0]=n[0],e[1]=n[1],e[2]=n[2],e[3]=n[3],e[4]=n[4],e[5]=n[5],e[6]=n[6],e[7]=n[7],e[8]=n[8],e[9]=n[9],e[10]=n[10],e[11]=n[11],e[12]=n[12],e[13]=n[13],e[14]=n[14],e[15]=n[15],this}copyPosition(t){const e=this.elements,n=t.elements;return e[12]=n[12],e[13]=n[13],e[14]=n[14],this}setFromMatrix3(t){const e=t.elements;return this.set(e[0],e[3],e[6],0,e[1],e[4],e[7],0,e[2],e[5],e[8],0,0,0,0,1),this}extractBasis(t,e,n){return t.setFromMatrixColumn(this,0),e.setFromMatrixColumn(this,1),n.setFromMatrixColumn(this,2),this}makeBasis(t,e,n){return this.set(t.x,e.x,n.x,0,t.y,e.y,n.y,0,t.z,e.z,n.z,0,0,0,0,1),this}extractRotation(t){const e=this.elements,n=t.elements,r=1/Hn.setFromMatrixColumn(t,0).length(),s=1/Hn.setFromMatrixColumn(t,1).length(),a=1/Hn.setFromMatrixColumn(t,2).length();return e[0]=n[0]*r,e[1]=n[1]*r,e[2]=n[2]*r,e[3]=0,e[4]=n[4]*s,e[5]=n[5]*s,e[6]=n[6]*s,e[7]=0,e[8]=n[8]*a,e[9]=n[9]*a,e[10]=n[10]*a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}makeRotationFromEuler(t){const e=this.elements,n=t.x,r=t.y,s=t.z,a=Math.cos(n),o=Math.sin(n),l=Math.cos(r),c=Math.sin(r),u=Math.cos(s),f=Math.sin(s);if(t.order==="XYZ"){const p=a*u,m=a*f,_=o*u,x=o*f;e[0]=l*u,e[4]=-l*f,e[8]=c,e[1]=m+_*c,e[5]=p-x*c,e[9]=-o*l,e[2]=x-p*c,e[6]=_+m*c,e[10]=a*l}else if(t.order==="YXZ"){const p=l*u,m=l*f,_=c*u,x=c*f;e[0]=p+x*o,e[4]=_*o-m,e[8]=a*c,e[1]=a*f,e[5]=a*u,e[9]=-o,e[2]=m*o-_,e[6]=x+p*o,e[10]=a*l}else if(t.order==="ZXY"){const p=l*u,m=l*f,_=c*u,x=c*f;e[0]=p-x*o,e[4]=-a*f,e[8]=_+m*o,e[1]=m+_*o,e[5]=a*u,e[9]=x-p*o,e[2]=-a*c,e[6]=o,e[10]=a*l}else if(t.order==="ZYX"){const p=a*u,m=a*f,_=o*u,x=o*f;e[0]=l*u,e[4]=_*c-m,e[8]=p*c+x,e[1]=l*f,e[5]=x*c+p,e[9]=m*c-_,e[2]=-c,e[6]=o*l,e[10]=a*l}else if(t.order==="YZX"){const p=a*l,m=a*c,_=o*l,x=o*c;e[0]=l*u,e[4]=x-p*f,e[8]=_*f+m,e[1]=f,e[5]=a*u,e[9]=-o*u,e[2]=-c*u,e[6]=m*f+_,e[10]=p-x*f}else if(t.order==="XZY"){const p=a*l,m=a*c,_=o*l,x=o*c;e[0]=l*u,e[4]=-f,e[8]=c*u,e[1]=p*f+x,e[5]=a*u,e[9]=m*f-_,e[2]=_*f-m,e[6]=o*u,e[10]=x*f+p}return e[3]=0,e[7]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}makeRotationFromQuaternion(t){return this.compose(nh,t,ih)}lookAt(t,e,n){const r=this.elements;return Ae.subVectors(t,e),Ae.lengthSq()===0&&(Ae.z=1),Ae.normalize(),on.crossVectors(n,Ae),on.lengthSq()===0&&(Math.abs(n.z)===1?Ae.x+=1e-4:Ae.z+=1e-4,Ae.normalize(),on.crossVectors(n,Ae)),on.normalize(),Vi.crossVectors(Ae,on),r[0]=on.x,r[4]=Vi.x,r[8]=Ae.x,r[1]=on.y,r[5]=Vi.y,r[9]=Ae.y,r[2]=on.z,r[6]=Vi.z,r[10]=Ae.z,this}multiply(t){return this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){const n=t.elements,r=e.elements,s=this.elements,a=n[0],o=n[4],l=n[8],c=n[12],u=n[1],f=n[5],p=n[9],m=n[13],_=n[2],x=n[6],d=n[10],h=n[14],T=n[3],E=n[7],A=n[11],F=n[15],R=r[0],b=r[4],O=r[8],tt=r[12],g=r[1],S=r[5],k=r[9],z=r[13],V=r[2],Z=r[6],B=r[10],J=r[14],G=r[3],ot=r[7],lt=r[11],_t=r[15];return s[0]=a*R+o*g+l*V+c*G,s[4]=a*b+o*S+l*Z+c*ot,s[8]=a*O+o*k+l*B+c*lt,s[12]=a*tt+o*z+l*J+c*_t,s[1]=u*R+f*g+p*V+m*G,s[5]=u*b+f*S+p*Z+m*ot,s[9]=u*O+f*k+p*B+m*lt,s[13]=u*tt+f*z+p*J+m*_t,s[2]=_*R+x*g+d*V+h*G,s[6]=_*b+x*S+d*Z+h*ot,s[10]=_*O+x*k+d*B+h*lt,s[14]=_*tt+x*z+d*J+h*_t,s[3]=T*R+E*g+A*V+F*G,s[7]=T*b+E*S+A*Z+F*ot,s[11]=T*O+E*k+A*B+F*lt,s[15]=T*tt+E*z+A*J+F*_t,this}multiplyScalar(t){const e=this.elements;return e[0]*=t,e[4]*=t,e[8]*=t,e[12]*=t,e[1]*=t,e[5]*=t,e[9]*=t,e[13]*=t,e[2]*=t,e[6]*=t,e[10]*=t,e[14]*=t,e[3]*=t,e[7]*=t,e[11]*=t,e[15]*=t,this}determinant(){const t=this.elements,e=t[0],n=t[4],r=t[8],s=t[12],a=t[1],o=t[5],l=t[9],c=t[13],u=t[2],f=t[6],p=t[10],m=t[14],_=t[3],x=t[7],d=t[11],h=t[15];return _*(+s*l*f-r*c*f-s*o*p+n*c*p+r*o*m-n*l*m)+x*(+e*l*m-e*c*p+s*a*p-r*a*m+r*c*u-s*l*u)+d*(+e*c*f-e*o*m-s*a*f+n*a*m+s*o*u-n*c*u)+h*(-r*o*u-e*l*f+e*o*p+r*a*f-n*a*p+n*l*u)}transpose(){const t=this.elements;let e;return e=t[1],t[1]=t[4],t[4]=e,e=t[2],t[2]=t[8],t[8]=e,e=t[6],t[6]=t[9],t[9]=e,e=t[3],t[3]=t[12],t[12]=e,e=t[7],t[7]=t[13],t[13]=e,e=t[11],t[11]=t[14],t[14]=e,this}setPosition(t,e,n){const r=this.elements;return t.isVector3?(r[12]=t.x,r[13]=t.y,r[14]=t.z):(r[12]=t,r[13]=e,r[14]=n),this}invert(){const t=this.elements,e=t[0],n=t[1],r=t[2],s=t[3],a=t[4],o=t[5],l=t[6],c=t[7],u=t[8],f=t[9],p=t[10],m=t[11],_=t[12],x=t[13],d=t[14],h=t[15],T=f*d*c-x*p*c+x*l*m-o*d*m-f*l*h+o*p*h,E=_*p*c-u*d*c-_*l*m+a*d*m+u*l*h-a*p*h,A=u*x*c-_*f*c+_*o*m-a*x*m-u*o*h+a*f*h,F=_*f*l-u*x*l-_*o*p+a*x*p+u*o*d-a*f*d,R=e*T+n*E+r*A+s*F;if(R===0)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);const b=1/R;return t[0]=T*b,t[1]=(x*p*s-f*d*s-x*r*m+n*d*m+f*r*h-n*p*h)*b,t[2]=(o*d*s-x*l*s+x*r*c-n*d*c-o*r*h+n*l*h)*b,t[3]=(f*l*s-o*p*s-f*r*c+n*p*c+o*r*m-n*l*m)*b,t[4]=E*b,t[5]=(u*d*s-_*p*s+_*r*m-e*d*m-u*r*h+e*p*h)*b,t[6]=(_*l*s-a*d*s-_*r*c+e*d*c+a*r*h-e*l*h)*b,t[7]=(a*p*s-u*l*s+u*r*c-e*p*c-a*r*m+e*l*m)*b,t[8]=A*b,t[9]=(_*f*s-u*x*s-_*n*m+e*x*m+u*n*h-e*f*h)*b,t[10]=(a*x*s-_*o*s+_*n*c-e*x*c-a*n*h+e*o*h)*b,t[11]=(u*o*s-a*f*s-u*n*c+e*f*c+a*n*m-e*o*m)*b,t[12]=F*b,t[13]=(u*x*r-_*f*r+_*n*p-e*x*p-u*n*d+e*f*d)*b,t[14]=(_*o*r-a*x*r-_*n*l+e*x*l+a*n*d-e*o*d)*b,t[15]=(a*f*r-u*o*r+u*n*l-e*f*l-a*n*p+e*o*p)*b,this}scale(t){const e=this.elements,n=t.x,r=t.y,s=t.z;return e[0]*=n,e[4]*=r,e[8]*=s,e[1]*=n,e[5]*=r,e[9]*=s,e[2]*=n,e[6]*=r,e[10]*=s,e[3]*=n,e[7]*=r,e[11]*=s,this}getMaxScaleOnAxis(){const t=this.elements,e=t[0]*t[0]+t[1]*t[1]+t[2]*t[2],n=t[4]*t[4]+t[5]*t[5]+t[6]*t[6],r=t[8]*t[8]+t[9]*t[9]+t[10]*t[10];return Math.sqrt(Math.max(e,n,r))}makeTranslation(t,e,n){return t.isVector3?this.set(1,0,0,t.x,0,1,0,t.y,0,0,1,t.z,0,0,0,1):this.set(1,0,0,t,0,1,0,e,0,0,1,n,0,0,0,1),this}makeRotationX(t){const e=Math.cos(t),n=Math.sin(t);return this.set(1,0,0,0,0,e,-n,0,0,n,e,0,0,0,0,1),this}makeRotationY(t){const e=Math.cos(t),n=Math.sin(t);return this.set(e,0,n,0,0,1,0,0,-n,0,e,0,0,0,0,1),this}makeRotationZ(t){const e=Math.cos(t),n=Math.sin(t);return this.set(e,-n,0,0,n,e,0,0,0,0,1,0,0,0,0,1),this}makeRotationAxis(t,e){const n=Math.cos(e),r=Math.sin(e),s=1-n,a=t.x,o=t.y,l=t.z,c=s*a,u=s*o;return this.set(c*a+n,c*o-r*l,c*l+r*o,0,c*o+r*l,u*o+n,u*l-r*a,0,c*l-r*o,u*l+r*a,s*l*l+n,0,0,0,0,1),this}makeScale(t,e,n){return this.set(t,0,0,0,0,e,0,0,0,0,n,0,0,0,0,1),this}makeShear(t,e,n,r,s,a){return this.set(1,n,s,0,t,1,a,0,e,r,1,0,0,0,0,1),this}compose(t,e,n){const r=this.elements,s=e._x,a=e._y,o=e._z,l=e._w,c=s+s,u=a+a,f=o+o,p=s*c,m=s*u,_=s*f,x=a*u,d=a*f,h=o*f,T=l*c,E=l*u,A=l*f,F=n.x,R=n.y,b=n.z;return r[0]=(1-(x+h))*F,r[1]=(m+A)*F,r[2]=(_-E)*F,r[3]=0,r[4]=(m-A)*R,r[5]=(1-(p+h))*R,r[6]=(d+T)*R,r[7]=0,r[8]=(_+E)*b,r[9]=(d-T)*b,r[10]=(1-(p+x))*b,r[11]=0,r[12]=t.x,r[13]=t.y,r[14]=t.z,r[15]=1,this}decompose(t,e,n){const r=this.elements;let s=Hn.set(r[0],r[1],r[2]).length();const a=Hn.set(r[4],r[5],r[6]).length(),o=Hn.set(r[8],r[9],r[10]).length();this.determinant()<0&&(s=-s),t.x=r[12],t.y=r[13],t.z=r[14],Ie.copy(this);const c=1/s,u=1/a,f=1/o;return Ie.elements[0]*=c,Ie.elements[1]*=c,Ie.elements[2]*=c,Ie.elements[4]*=u,Ie.elements[5]*=u,Ie.elements[6]*=u,Ie.elements[8]*=f,Ie.elements[9]*=f,Ie.elements[10]*=f,e.setFromRotationMatrix(Ie),n.x=s,n.y=a,n.z=o,this}makePerspective(t,e,n,r,s,a,o=tn){const l=this.elements,c=2*s/(e-t),u=2*s/(n-r),f=(e+t)/(e-t),p=(n+r)/(n-r);let m,_;if(o===tn)m=-(a+s)/(a-s),_=-2*a*s/(a-s);else if(o===Mr)m=-a/(a-s),_=-a*s/(a-s);else throw new Error("THREE.Matrix4.makePerspective(): Invalid coordinate system: "+o);return l[0]=c,l[4]=0,l[8]=f,l[12]=0,l[1]=0,l[5]=u,l[9]=p,l[13]=0,l[2]=0,l[6]=0,l[10]=m,l[14]=_,l[3]=0,l[7]=0,l[11]=-1,l[15]=0,this}makeOrthographic(t,e,n,r,s,a,o=tn){const l=this.elements,c=1/(e-t),u=1/(n-r),f=1/(a-s),p=(e+t)*c,m=(n+r)*u;let _,x;if(o===tn)_=(a+s)*f,x=-2*f;else if(o===Mr)_=s*f,x=-1*f;else throw new Error("THREE.Matrix4.makeOrthographic(): Invalid coordinate system: "+o);return l[0]=2*c,l[4]=0,l[8]=0,l[12]=-p,l[1]=0,l[5]=2*u,l[9]=0,l[13]=-m,l[2]=0,l[6]=0,l[10]=x,l[14]=-_,l[3]=0,l[7]=0,l[11]=0,l[15]=1,this}equals(t){const e=this.elements,n=t.elements;for(let r=0;r<16;r++)if(e[r]!==n[r])return!1;return!0}fromArray(t,e=0){for(let n=0;n<16;n++)this.elements[n]=t[n+e];return this}toArray(t=[],e=0){const n=this.elements;return t[e]=n[0],t[e+1]=n[1],t[e+2]=n[2],t[e+3]=n[3],t[e+4]=n[4],t[e+5]=n[5],t[e+6]=n[6],t[e+7]=n[7],t[e+8]=n[8],t[e+9]=n[9],t[e+10]=n[10],t[e+11]=n[11],t[e+12]=n[12],t[e+13]=n[13],t[e+14]=n[14],t[e+15]=n[15],t}}const Hn=new L,Ie=new $t,nh=new L(0,0,0),ih=new L(1,1,1),on=new L,Vi=new L,Ae=new L,ka=new $t,Va=new Dn;class We{constructor(t=0,e=0,n=0,r=We.DEFAULT_ORDER){this.isEuler=!0,this._x=t,this._y=e,this._z=n,this._order=r}get x(){return this._x}set x(t){this._x=t,this._onChangeCallback()}get y(){return this._y}set y(t){this._y=t,this._onChangeCallback()}get z(){return this._z}set z(t){this._z=t,this._onChangeCallback()}get order(){return this._order}set order(t){this._order=t,this._onChangeCallback()}set(t,e,n,r=this._order){return this._x=t,this._y=e,this._z=n,this._order=r,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._order)}copy(t){return this._x=t._x,this._y=t._y,this._z=t._z,this._order=t._order,this._onChangeCallback(),this}setFromRotationMatrix(t,e=this._order,n=!0){const r=t.elements,s=r[0],a=r[4],o=r[8],l=r[1],c=r[5],u=r[9],f=r[2],p=r[6],m=r[10];switch(e){case"XYZ":this._y=Math.asin(de(o,-1,1)),Math.abs(o)<.9999999?(this._x=Math.atan2(-u,m),this._z=Math.atan2(-a,s)):(this._x=Math.atan2(p,c),this._z=0);break;case"YXZ":this._x=Math.asin(-de(u,-1,1)),Math.abs(u)<.9999999?(this._y=Math.atan2(o,m),this._z=Math.atan2(l,c)):(this._y=Math.atan2(-f,s),this._z=0);break;case"ZXY":this._x=Math.asin(de(p,-1,1)),Math.abs(p)<.9999999?(this._y=Math.atan2(-f,m),this._z=Math.atan2(-a,c)):(this._y=0,this._z=Math.atan2(l,s));break;case"ZYX":this._y=Math.asin(-de(f,-1,1)),Math.abs(f)<.9999999?(this._x=Math.atan2(p,m),this._z=Math.atan2(l,s)):(this._x=0,this._z=Math.atan2(-a,c));break;case"YZX":this._z=Math.asin(de(l,-1,1)),Math.abs(l)<.9999999?(this._x=Math.atan2(-u,c),this._y=Math.atan2(-f,s)):(this._x=0,this._y=Math.atan2(o,m));break;case"XZY":this._z=Math.asin(-de(a,-1,1)),Math.abs(a)<.9999999?(this._x=Math.atan2(p,c),this._y=Math.atan2(o,s)):(this._x=Math.atan2(-u,m),this._y=0);break;default:console.warn("THREE.Euler: .setFromRotationMatrix() encountered an unknown order: "+e)}return this._order=e,n===!0&&this._onChangeCallback(),this}setFromQuaternion(t,e,n){return ka.makeRotationFromQuaternion(t),this.setFromRotationMatrix(ka,e,n)}setFromVector3(t,e=this._order){return this.set(t.x,t.y,t.z,e)}reorder(t){return Va.setFromEuler(this),this.setFromQuaternion(Va,t)}equals(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._order===this._order}fromArray(t){return this._x=t[0],this._y=t[1],this._z=t[2],t[3]!==void 0&&(this._order=t[3]),this._onChangeCallback(),this}toArray(t=[],e=0){return t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._order,t}_onChange(t){return this._onChangeCallback=t,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._order}}We.DEFAULT_ORDER="XYZ";class fl{constructor(){this.mask=1}set(t){this.mask=(1<>>0}enable(t){this.mask|=1<1){for(let e=0;e1){for(let n=0;n0&&(r.userData=this.userData),r.layers=this.layers.mask,r.matrix=this.matrix.toArray(),r.up=this.up.toArray(),this.matrixAutoUpdate===!1&&(r.matrixAutoUpdate=!1),this.isInstancedMesh&&(r.type="InstancedMesh",r.count=this.count,r.instanceMatrix=this.instanceMatrix.toJSON(),this.instanceColor!==null&&(r.instanceColor=this.instanceColor.toJSON())),this.isBatchedMesh&&(r.type="BatchedMesh",r.perObjectFrustumCulled=this.perObjectFrustumCulled,r.sortObjects=this.sortObjects,r.drawRanges=this._drawRanges,r.reservedRanges=this._reservedRanges,r.visibility=this._visibility,r.active=this._active,r.bounds=this._bounds.map(o=>({boxInitialized:o.boxInitialized,boxMin:o.box.min.toArray(),boxMax:o.box.max.toArray(),sphereInitialized:o.sphereInitialized,sphereRadius:o.sphere.radius,sphereCenter:o.sphere.center.toArray()})),r.maxInstanceCount=this._maxInstanceCount,r.maxVertexCount=this._maxVertexCount,r.maxIndexCount=this._maxIndexCount,r.geometryInitialized=this._geometryInitialized,r.geometryCount=this._geometryCount,r.matricesTexture=this._matricesTexture.toJSON(t),this._colorsTexture!==null&&(r.colorsTexture=this._colorsTexture.toJSON(t)),this.boundingSphere!==null&&(r.boundingSphere={center:r.boundingSphere.center.toArray(),radius:r.boundingSphere.radius}),this.boundingBox!==null&&(r.boundingBox={min:r.boundingBox.min.toArray(),max:r.boundingBox.max.toArray()}));function s(o,l){return o[l.uuid]===void 0&&(o[l.uuid]=l.toJSON(t)),l.uuid}if(this.isScene)this.background&&(this.background.isColor?r.background=this.background.toJSON():this.background.isTexture&&(r.background=this.background.toJSON(t).uuid)),this.environment&&this.environment.isTexture&&this.environment.isRenderTargetTexture!==!0&&(r.environment=this.environment.toJSON(t).uuid);else if(this.isMesh||this.isLine||this.isPoints){r.geometry=s(t.geometries,this.geometry);const o=this.geometry.parameters;if(o!==void 0&&o.shapes!==void 0){const l=o.shapes;if(Array.isArray(l))for(let c=0,u=l.length;c0){r.children=[];for(let o=0;o0){r.animations=[];for(let o=0;o0&&(n.geometries=o),l.length>0&&(n.materials=l),c.length>0&&(n.textures=c),u.length>0&&(n.images=u),f.length>0&&(n.shapes=f),p.length>0&&(n.skeletons=p),m.length>0&&(n.animations=m),_.length>0&&(n.nodes=_)}return n.object=r,n;function a(o){const l=[];for(const c in o){const u=o[c];delete u.metadata,l.push(u)}return l}}clone(t){return new this.constructor().copy(this,t)}copy(t,e=!0){if(this.name=t.name,this.up.copy(t.up),this.position.copy(t.position),this.rotation.order=t.rotation.order,this.quaternion.copy(t.quaternion),this.scale.copy(t.scale),this.matrix.copy(t.matrix),this.matrixWorld.copy(t.matrixWorld),this.matrixAutoUpdate=t.matrixAutoUpdate,this.matrixWorldAutoUpdate=t.matrixWorldAutoUpdate,this.matrixWorldNeedsUpdate=t.matrixWorldNeedsUpdate,this.layers.mask=t.layers.mask,this.visible=t.visible,this.castShadow=t.castShadow,this.receiveShadow=t.receiveShadow,this.frustumCulled=t.frustumCulled,this.renderOrder=t.renderOrder,this.animations=t.animations.slice(),this.userData=JSON.parse(JSON.stringify(t.userData)),e===!0)for(let n=0;n0?r.multiplyScalar(1/Math.sqrt(s)):r.set(0,0,0)}static getBarycoord(t,e,n,r,s){Ne.subVectors(r,e),Ze.subVectors(n,e),Yr.subVectors(t,e);const a=Ne.dot(Ne),o=Ne.dot(Ze),l=Ne.dot(Yr),c=Ze.dot(Ze),u=Ze.dot(Yr),f=a*c-o*o;if(f===0)return s.set(0,0,0),null;const p=1/f,m=(c*l-o*u)*p,_=(a*u-o*l)*p;return s.set(1-m-_,_,m)}static containsPoint(t,e,n,r){return this.getBarycoord(t,e,n,r,je)===null?!1:je.x>=0&&je.y>=0&&je.x+je.y<=1}static getInterpolation(t,e,n,r,s,a,o,l){return this.getBarycoord(t,e,n,r,je)===null?(l.x=0,l.y=0,"z"in l&&(l.z=0),"w"in l&&(l.w=0),null):(l.setScalar(0),l.addScaledVector(s,je.x),l.addScaledVector(a,je.y),l.addScaledVector(o,je.z),l)}static getInterpolatedAttribute(t,e,n,r,s,a){return jr.setScalar(0),$r.setScalar(0),Jr.setScalar(0),jr.fromBufferAttribute(t,e),$r.fromBufferAttribute(t,n),Jr.fromBufferAttribute(t,r),a.setScalar(0),a.addScaledVector(jr,s.x),a.addScaledVector($r,s.y),a.addScaledVector(Jr,s.z),a}static isFrontFacing(t,e,n,r){return Ne.subVectors(n,e),Ze.subVectors(t,e),Ne.cross(Ze).dot(r)<0}set(t,e,n){return this.a.copy(t),this.b.copy(e),this.c.copy(n),this}setFromPointsAndIndices(t,e,n,r){return this.a.copy(t[e]),this.b.copy(t[n]),this.c.copy(t[r]),this}setFromAttributeAndIndices(t,e,n,r){return this.a.fromBufferAttribute(t,e),this.b.fromBufferAttribute(t,n),this.c.fromBufferAttribute(t,r),this}clone(){return new this.constructor().copy(this)}copy(t){return this.a.copy(t.a),this.b.copy(t.b),this.c.copy(t.c),this}getArea(){return Ne.subVectors(this.c,this.b),Ze.subVectors(this.a,this.b),Ne.cross(Ze).length()*.5}getMidpoint(t){return t.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(t){return Oe.getNormal(this.a,this.b,this.c,t)}getPlane(t){return t.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(t,e){return Oe.getBarycoord(t,this.a,this.b,this.c,e)}getInterpolation(t,e,n,r,s){return Oe.getInterpolation(t,this.a,this.b,this.c,e,n,r,s)}containsPoint(t){return Oe.containsPoint(t,this.a,this.b,this.c)}isFrontFacing(t){return Oe.isFrontFacing(this.a,this.b,this.c,t)}intersectsBox(t){return t.intersectsTriangle(this)}closestPointToPoint(t,e){const n=this.a,r=this.b,s=this.c;let a,o;Vn.subVectors(r,n),Wn.subVectors(s,n),qr.subVectors(t,n);const l=Vn.dot(qr),c=Wn.dot(qr);if(l<=0&&c<=0)return e.copy(n);Kr.subVectors(t,r);const u=Vn.dot(Kr),f=Wn.dot(Kr);if(u>=0&&f<=u)return e.copy(r);const p=l*f-u*c;if(p<=0&&l>=0&&u<=0)return a=l/(l-u),e.copy(n).addScaledVector(Vn,a);Zr.subVectors(t,s);const m=Vn.dot(Zr),_=Wn.dot(Zr);if(_>=0&&m<=_)return e.copy(s);const x=m*c-l*_;if(x<=0&&c>=0&&_<=0)return o=c/(c-_),e.copy(n).addScaledVector(Wn,o);const d=u*_-m*f;if(d<=0&&f-u>=0&&m-_>=0)return Za.subVectors(s,r),o=(f-u)/(f-u+(m-_)),e.copy(r).addScaledVector(Za,o);const h=1/(d+x+p);return a=x*h,o=p*h,e.copy(n).addScaledVector(Vn,a).addScaledVector(Wn,o)}equals(t){return t.a.equals(this.a)&&t.b.equals(this.b)&&t.c.equals(this.c)}}const pl={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},ln={h:0,s:0,l:0},Xi={h:0,s:0,l:0};function Qr(i,t,e){return e<0&&(e+=1),e>1&&(e-=1),e<1/6?i+(t-i)*6*e:e<1/2?t:e<2/3?i+(t-i)*6*(2/3-e):i}class zt{constructor(t,e,n){return this.isColor=!0,this.r=1,this.g=1,this.b=1,this.set(t,e,n)}set(t,e,n){if(e===void 0&&n===void 0){const r=t;r&&r.isColor?this.copy(r):typeof r=="number"?this.setHex(r):typeof r=="string"&&this.setStyle(r)}else this.setRGB(t,e,n);return this}setScalar(t){return this.r=t,this.g=t,this.b=t,this}setHex(t,e=He){return t=Math.floor(t),this.r=(t>>16&255)/255,this.g=(t>>8&255)/255,this.b=(t&255)/255,Wt.toWorkingColorSpace(this,e),this}setRGB(t,e,n,r=Wt.workingColorSpace){return this.r=t,this.g=e,this.b=n,Wt.toWorkingColorSpace(this,r),this}setHSL(t,e,n,r=Wt.workingColorSpace){if(t=ha(t,1),e=de(e,0,1),n=de(n,0,1),e===0)this.r=this.g=this.b=n;else{const s=n<=.5?n*(1+e):n+e-n*e,a=2*n-s;this.r=Qr(a,s,t+1/3),this.g=Qr(a,s,t),this.b=Qr(a,s,t-1/3)}return Wt.toWorkingColorSpace(this,r),this}setStyle(t,e=He){function n(s){s!==void 0&&parseFloat(s)<1&&console.warn("THREE.Color: Alpha component of "+t+" will be ignored.")}let r;if(r=/^(\w+)\(([^\)]*)\)/.exec(t)){let s;const a=r[1],o=r[2];switch(a){case"rgb":case"rgba":if(s=/^\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o))return n(s[4]),this.setRGB(Math.min(255,parseInt(s[1],10))/255,Math.min(255,parseInt(s[2],10))/255,Math.min(255,parseInt(s[3],10))/255,e);if(s=/^\s*(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o))return n(s[4]),this.setRGB(Math.min(100,parseInt(s[1],10))/100,Math.min(100,parseInt(s[2],10))/100,Math.min(100,parseInt(s[3],10))/100,e);break;case"hsl":case"hsla":if(s=/^\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\%\s*,\s*(\d*\.?\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o))return n(s[4]),this.setHSL(parseFloat(s[1])/360,parseFloat(s[2])/100,parseFloat(s[3])/100,e);break;default:console.warn("THREE.Color: Unknown color model "+t)}}else if(r=/^\#([A-Fa-f\d]+)$/.exec(t)){const s=r[1],a=s.length;if(a===3)return this.setRGB(parseInt(s.charAt(0),16)/15,parseInt(s.charAt(1),16)/15,parseInt(s.charAt(2),16)/15,e);if(a===6)return this.setHex(parseInt(s,16),e);console.warn("THREE.Color: Invalid hex color "+t)}else if(t&&t.length>0)return this.setColorName(t,e);return this}setColorName(t,e=He){const n=pl[t.toLowerCase()];return n!==void 0?this.setHex(n,e):console.warn("THREE.Color: Unknown color "+t),this}clone(){return new this.constructor(this.r,this.g,this.b)}copy(t){return this.r=t.r,this.g=t.g,this.b=t.b,this}copySRGBToLinear(t){return this.r=ii(t.r),this.g=ii(t.g),this.b=ii(t.b),this}copyLinearToSRGB(t){return this.r=Or(t.r),this.g=Or(t.g),this.b=Or(t.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(t=He){return Wt.fromWorkingColorSpace(ue.copy(this),t),Math.round(de(ue.r*255,0,255))*65536+Math.round(de(ue.g*255,0,255))*256+Math.round(de(ue.b*255,0,255))}getHexString(t=He){return("000000"+this.getHex(t).toString(16)).slice(-6)}getHSL(t,e=Wt.workingColorSpace){Wt.fromWorkingColorSpace(ue.copy(this),e);const n=ue.r,r=ue.g,s=ue.b,a=Math.max(n,r,s),o=Math.min(n,r,s);let l,c;const u=(o+a)/2;if(o===a)l=0,c=0;else{const f=a-o;switch(c=u<=.5?f/(a+o):f/(2-a-o),a){case n:l=(r-s)/f+(r0!=t>0&&this.version++,this._alphaTest=t}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(t){if(t!==void 0)for(const e in t){const n=t[e];if(n===void 0){console.warn(`THREE.Material: parameter '${e}' has value of undefined.`);continue}const r=this[e];if(r===void 0){console.warn(`THREE.Material: '${e}' is not a property of THREE.${this.type}.`);continue}r&&r.isColor?r.set(n):r&&r.isVector3&&n&&n.isVector3?r.copy(n):this[e]=n}}toJSON(t){const e=t===void 0||typeof t=="string";e&&(t={textures:{},images:{}});const n={metadata:{version:4.6,type:"Material",generator:"Material.toJSON"}};n.uuid=this.uuid,n.type=this.type,this.name!==""&&(n.name=this.name),this.color&&this.color.isColor&&(n.color=this.color.getHex()),this.roughness!==void 0&&(n.roughness=this.roughness),this.metalness!==void 0&&(n.metalness=this.metalness),this.sheen!==void 0&&(n.sheen=this.sheen),this.sheenColor&&this.sheenColor.isColor&&(n.sheenColor=this.sheenColor.getHex()),this.sheenRoughness!==void 0&&(n.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(n.emissive=this.emissive.getHex()),this.emissiveIntensity!==void 0&&this.emissiveIntensity!==1&&(n.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(n.specular=this.specular.getHex()),this.specularIntensity!==void 0&&(n.specularIntensity=this.specularIntensity),this.specularColor&&this.specularColor.isColor&&(n.specularColor=this.specularColor.getHex()),this.shininess!==void 0&&(n.shininess=this.shininess),this.clearcoat!==void 0&&(n.clearcoat=this.clearcoat),this.clearcoatRoughness!==void 0&&(n.clearcoatRoughness=this.clearcoatRoughness),this.clearcoatMap&&this.clearcoatMap.isTexture&&(n.clearcoatMap=this.clearcoatMap.toJSON(t).uuid),this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(n.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(t).uuid),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(n.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(t).uuid,n.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),this.dispersion!==void 0&&(n.dispersion=this.dispersion),this.iridescence!==void 0&&(n.iridescence=this.iridescence),this.iridescenceIOR!==void 0&&(n.iridescenceIOR=this.iridescenceIOR),this.iridescenceThicknessRange!==void 0&&(n.iridescenceThicknessRange=this.iridescenceThicknessRange),this.iridescenceMap&&this.iridescenceMap.isTexture&&(n.iridescenceMap=this.iridescenceMap.toJSON(t).uuid),this.iridescenceThicknessMap&&this.iridescenceThicknessMap.isTexture&&(n.iridescenceThicknessMap=this.iridescenceThicknessMap.toJSON(t).uuid),this.anisotropy!==void 0&&(n.anisotropy=this.anisotropy),this.anisotropyRotation!==void 0&&(n.anisotropyRotation=this.anisotropyRotation),this.anisotropyMap&&this.anisotropyMap.isTexture&&(n.anisotropyMap=this.anisotropyMap.toJSON(t).uuid),this.map&&this.map.isTexture&&(n.map=this.map.toJSON(t).uuid),this.matcap&&this.matcap.isTexture&&(n.matcap=this.matcap.toJSON(t).uuid),this.alphaMap&&this.alphaMap.isTexture&&(n.alphaMap=this.alphaMap.toJSON(t).uuid),this.lightMap&&this.lightMap.isTexture&&(n.lightMap=this.lightMap.toJSON(t).uuid,n.lightMapIntensity=this.lightMapIntensity),this.aoMap&&this.aoMap.isTexture&&(n.aoMap=this.aoMap.toJSON(t).uuid,n.aoMapIntensity=this.aoMapIntensity),this.bumpMap&&this.bumpMap.isTexture&&(n.bumpMap=this.bumpMap.toJSON(t).uuid,n.bumpScale=this.bumpScale),this.normalMap&&this.normalMap.isTexture&&(n.normalMap=this.normalMap.toJSON(t).uuid,n.normalMapType=this.normalMapType,n.normalScale=this.normalScale.toArray()),this.displacementMap&&this.displacementMap.isTexture&&(n.displacementMap=this.displacementMap.toJSON(t).uuid,n.displacementScale=this.displacementScale,n.displacementBias=this.displacementBias),this.roughnessMap&&this.roughnessMap.isTexture&&(n.roughnessMap=this.roughnessMap.toJSON(t).uuid),this.metalnessMap&&this.metalnessMap.isTexture&&(n.metalnessMap=this.metalnessMap.toJSON(t).uuid),this.emissiveMap&&this.emissiveMap.isTexture&&(n.emissiveMap=this.emissiveMap.toJSON(t).uuid),this.specularMap&&this.specularMap.isTexture&&(n.specularMap=this.specularMap.toJSON(t).uuid),this.specularIntensityMap&&this.specularIntensityMap.isTexture&&(n.specularIntensityMap=this.specularIntensityMap.toJSON(t).uuid),this.specularColorMap&&this.specularColorMap.isTexture&&(n.specularColorMap=this.specularColorMap.toJSON(t).uuid),this.envMap&&this.envMap.isTexture&&(n.envMap=this.envMap.toJSON(t).uuid,this.combine!==void 0&&(n.combine=this.combine)),this.envMapRotation!==void 0&&(n.envMapRotation=this.envMapRotation.toArray()),this.envMapIntensity!==void 0&&(n.envMapIntensity=this.envMapIntensity),this.reflectivity!==void 0&&(n.reflectivity=this.reflectivity),this.refractionRatio!==void 0&&(n.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(n.gradientMap=this.gradientMap.toJSON(t).uuid),this.transmission!==void 0&&(n.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(n.transmissionMap=this.transmissionMap.toJSON(t).uuid),this.thickness!==void 0&&(n.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(n.thicknessMap=this.thicknessMap.toJSON(t).uuid),this.attenuationDistance!==void 0&&this.attenuationDistance!==1/0&&(n.attenuationDistance=this.attenuationDistance),this.attenuationColor!==void 0&&(n.attenuationColor=this.attenuationColor.getHex()),this.size!==void 0&&(n.size=this.size),this.shadowSide!==null&&(n.shadowSide=this.shadowSide),this.sizeAttenuation!==void 0&&(n.sizeAttenuation=this.sizeAttenuation),this.blending!==ei&&(n.blending=this.blending),this.side!==mn&&(n.side=this.side),this.vertexColors===!0&&(n.vertexColors=!0),this.opacity<1&&(n.opacity=this.opacity),this.transparent===!0&&(n.transparent=!0),this.blendSrc!==_s&&(n.blendSrc=this.blendSrc),this.blendDst!==gs&&(n.blendDst=this.blendDst),this.blendEquation!==bn&&(n.blendEquation=this.blendEquation),this.blendSrcAlpha!==null&&(n.blendSrcAlpha=this.blendSrcAlpha),this.blendDstAlpha!==null&&(n.blendDstAlpha=this.blendDstAlpha),this.blendEquationAlpha!==null&&(n.blendEquationAlpha=this.blendEquationAlpha),this.blendColor&&this.blendColor.isColor&&(n.blendColor=this.blendColor.getHex()),this.blendAlpha!==0&&(n.blendAlpha=this.blendAlpha),this.depthFunc!==ri&&(n.depthFunc=this.depthFunc),this.depthTest===!1&&(n.depthTest=this.depthTest),this.depthWrite===!1&&(n.depthWrite=this.depthWrite),this.colorWrite===!1&&(n.colorWrite=this.colorWrite),this.stencilWriteMask!==255&&(n.stencilWriteMask=this.stencilWriteMask),this.stencilFunc!==Ia&&(n.stencilFunc=this.stencilFunc),this.stencilRef!==0&&(n.stencilRef=this.stencilRef),this.stencilFuncMask!==255&&(n.stencilFuncMask=this.stencilFuncMask),this.stencilFail!==Nn&&(n.stencilFail=this.stencilFail),this.stencilZFail!==Nn&&(n.stencilZFail=this.stencilZFail),this.stencilZPass!==Nn&&(n.stencilZPass=this.stencilZPass),this.stencilWrite===!0&&(n.stencilWrite=this.stencilWrite),this.rotation!==void 0&&this.rotation!==0&&(n.rotation=this.rotation),this.polygonOffset===!0&&(n.polygonOffset=!0),this.polygonOffsetFactor!==0&&(n.polygonOffsetFactor=this.polygonOffsetFactor),this.polygonOffsetUnits!==0&&(n.polygonOffsetUnits=this.polygonOffsetUnits),this.linewidth!==void 0&&this.linewidth!==1&&(n.linewidth=this.linewidth),this.dashSize!==void 0&&(n.dashSize=this.dashSize),this.gapSize!==void 0&&(n.gapSize=this.gapSize),this.scale!==void 0&&(n.scale=this.scale),this.dithering===!0&&(n.dithering=!0),this.alphaTest>0&&(n.alphaTest=this.alphaTest),this.alphaHash===!0&&(n.alphaHash=!0),this.alphaToCoverage===!0&&(n.alphaToCoverage=!0),this.premultipliedAlpha===!0&&(n.premultipliedAlpha=!0),this.forceSinglePass===!0&&(n.forceSinglePass=!0),this.wireframe===!0&&(n.wireframe=!0),this.wireframeLinewidth>1&&(n.wireframeLinewidth=this.wireframeLinewidth),this.wireframeLinecap!=="round"&&(n.wireframeLinecap=this.wireframeLinecap),this.wireframeLinejoin!=="round"&&(n.wireframeLinejoin=this.wireframeLinejoin),this.flatShading===!0&&(n.flatShading=!0),this.visible===!1&&(n.visible=!1),this.toneMapped===!1&&(n.toneMapped=!1),this.fog===!1&&(n.fog=!1),Object.keys(this.userData).length>0&&(n.userData=this.userData);function r(s){const a=[];for(const o in s){const l=s[o];delete l.metadata,a.push(l)}return a}if(e){const s=r(t.textures),a=r(t.images);s.length>0&&(n.textures=s),a.length>0&&(n.images=a)}return n}clone(){return new this.constructor().copy(this)}copy(t){this.name=t.name,this.blending=t.blending,this.side=t.side,this.vertexColors=t.vertexColors,this.opacity=t.opacity,this.transparent=t.transparent,this.blendSrc=t.blendSrc,this.blendDst=t.blendDst,this.blendEquation=t.blendEquation,this.blendSrcAlpha=t.blendSrcAlpha,this.blendDstAlpha=t.blendDstAlpha,this.blendEquationAlpha=t.blendEquationAlpha,this.blendColor.copy(t.blendColor),this.blendAlpha=t.blendAlpha,this.depthFunc=t.depthFunc,this.depthTest=t.depthTest,this.depthWrite=t.depthWrite,this.stencilWriteMask=t.stencilWriteMask,this.stencilFunc=t.stencilFunc,this.stencilRef=t.stencilRef,this.stencilFuncMask=t.stencilFuncMask,this.stencilFail=t.stencilFail,this.stencilZFail=t.stencilZFail,this.stencilZPass=t.stencilZPass,this.stencilWrite=t.stencilWrite;const e=t.clippingPlanes;let n=null;if(e!==null){const r=e.length;n=new Array(r);for(let s=0;s!==r;++s)n[s]=e[s].clone()}return this.clippingPlanes=n,this.clipIntersection=t.clipIntersection,this.clipShadows=t.clipShadows,this.shadowSide=t.shadowSide,this.colorWrite=t.colorWrite,this.precision=t.precision,this.polygonOffset=t.polygonOffset,this.polygonOffsetFactor=t.polygonOffsetFactor,this.polygonOffsetUnits=t.polygonOffsetUnits,this.dithering=t.dithering,this.alphaTest=t.alphaTest,this.alphaHash=t.alphaHash,this.alphaToCoverage=t.alphaToCoverage,this.premultipliedAlpha=t.premultipliedAlpha,this.forceSinglePass=t.forceSinglePass,this.visible=t.visible,this.toneMapped=t.toneMapped,this.userData=JSON.parse(JSON.stringify(t.userData)),this}dispose(){this.dispatchEvent({type:"dispose"})}set needsUpdate(t){t===!0&&this.version++}onBuild(){console.warn("Material: onBuild() has been removed.")}}class da extends ui{constructor(t){super(),this.isMeshBasicMaterial=!0,this.type="MeshBasicMaterial",this.color=new zt(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new We,this.combine=jo,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.envMapRotation.copy(t.envMapRotation),this.combine=t.combine,this.reflectivity=t.reflectivity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.fog=t.fog,this}}const re=new L,Yi=new wt;class Ve{constructor(t,e,n=!1){if(Array.isArray(t))throw new TypeError("THREE.BufferAttribute: array should be a Typed Array.");this.isBufferAttribute=!0,this.name="",this.array=t,this.itemSize=e,this.count=t!==void 0?t.length/e:0,this.normalized=n,this.usage=Na,this.updateRanges=[],this.gpuType=Qe,this.version=0}onUploadCallback(){}set needsUpdate(t){t===!0&&this.version++}setUsage(t){return this.usage=t,this}addUpdateRange(t,e){this.updateRanges.push({start:t,count:e})}clearUpdateRanges(){this.updateRanges.length=0}copy(t){return this.name=t.name,this.array=new t.array.constructor(t.array),this.itemSize=t.itemSize,this.count=t.count,this.normalized=t.normalized,this.usage=t.usage,this.gpuType=t.gpuType,this}copyAt(t,e,n){t*=this.itemSize,n*=e.itemSize;for(let r=0,s=this.itemSize;r0&&(t.userData=this.userData),this.parameters!==void 0){const l=this.parameters;for(const c in l)l[c]!==void 0&&(t[c]=l[c]);return t}t.data={attributes:{}};const e=this.index;e!==null&&(t.data.index={type:e.array.constructor.name,array:Array.prototype.slice.call(e.array)});const n=this.attributes;for(const l in n){const c=n[l];t.data.attributes[l]=c.toJSON(t.data)}const r={};let s=!1;for(const l in this.morphAttributes){const c=this.morphAttributes[l],u=[];for(let f=0,p=c.length;f0&&(r[l]=u,s=!0)}s&&(t.data.morphAttributes=r,t.data.morphTargetsRelative=this.morphTargetsRelative);const a=this.groups;a.length>0&&(t.data.groups=JSON.parse(JSON.stringify(a)));const o=this.boundingSphere;return o!==null&&(t.data.boundingSphere={center:o.center.toArray(),radius:o.radius}),t}clone(){return new this.constructor().copy(this)}copy(t){this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null;const e={};this.name=t.name;const n=t.index;n!==null&&this.setIndex(n.clone(e));const r=t.attributes;for(const c in r){const u=r[c];this.setAttribute(c,u.clone(e))}const s=t.morphAttributes;for(const c in s){const u=[],f=s[c];for(let p=0,m=f.length;p0){const r=e[n[0]];if(r!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let s=0,a=r.length;s(t.far-t.near)**2))&&(ja.copy(s).invert(),Sn.copy(t.ray).applyMatrix4(ja),!(n.boundingBox!==null&&Sn.intersectsBox(n.boundingBox)===!1)&&this._computeIntersections(t,e,Sn)))}_computeIntersections(t,e,n){let r;const s=this.geometry,a=this.material,o=s.index,l=s.attributes.position,c=s.attributes.uv,u=s.attributes.uv1,f=s.attributes.normal,p=s.groups,m=s.drawRange;if(o!==null)if(Array.isArray(a))for(let _=0,x=p.length;_e.far?null:{distance:c,point:Ji.clone(),object:i}}function Qi(i,t,e,n,r,s,a,o,l,c){i.getVertexPosition(o,Ki),i.getVertexPosition(l,Zi),i.getVertexPosition(c,ji);const u=hh(i,t,e,n,Ki,Zi,ji,Ja);if(u){const f=new L;Oe.getBarycoord(Ja,Ki,Zi,ji,f),r&&(u.uv=Oe.getInterpolatedAttribute(r,o,l,c,f,new wt)),s&&(u.uv1=Oe.getInterpolatedAttribute(s,o,l,c,f,new wt)),a&&(u.normal=Oe.getInterpolatedAttribute(a,o,l,c,f,new L),u.normal.dot(n.direction)>0&&u.normal.multiplyScalar(-1));const p={a:o,b:l,c,normal:new L,materialIndex:0};Oe.getNormal(Ki,Zi,ji,p.normal),u.face=p,u.barycoord=f}return u}class Ui extends ze{constructor(t=1,e=1,n=1,r=1,s=1,a=1){super(),this.type="BoxGeometry",this.parameters={width:t,height:e,depth:n,widthSegments:r,heightSegments:s,depthSegments:a};const o=this;r=Math.floor(r),s=Math.floor(s),a=Math.floor(a);const l=[],c=[],u=[],f=[];let p=0,m=0;_("z","y","x",-1,-1,n,e,t,a,s,0),_("z","y","x",1,-1,n,e,-t,a,s,1),_("x","z","y",1,1,t,n,e,r,a,2),_("x","z","y",1,-1,t,n,-e,r,a,3),_("x","y","z",1,-1,t,e,n,r,s,4),_("x","y","z",-1,-1,t,e,-n,r,s,5),this.setIndex(l),this.setAttribute("position",new Se(c,3)),this.setAttribute("normal",new Se(u,3)),this.setAttribute("uv",new Se(f,2));function _(x,d,h,T,E,A,F,R,b,O,tt){const g=A/b,S=F/O,k=A/2,z=F/2,V=R/2,Z=b+1,B=O+1;let J=0,G=0;const ot=new L;for(let lt=0;lt0?1:-1,u.push(ot.x,ot.y,ot.z),f.push(Ht/b),f.push(1-lt/O),J+=1}}for(let lt=0;lt0&&(e.defines=this.defines),e.vertexShader=this.vertexShader,e.fragmentShader=this.fragmentShader,e.lights=this.lights,e.clipping=this.clipping;const n={};for(const r in this.extensions)this.extensions[r]===!0&&(n[r]=!0);return Object.keys(n).length>0&&(e.extensions=n),e}}class ul extends fe{constructor(){super(),this.isCamera=!0,this.type="Camera",this.matrixWorldInverse=new $t,this.projectionMatrix=new $t,this.projectionMatrixInverse=new $t,this.coordinateSystem=tn}copy(t,e){return super.copy(t,e),this.matrixWorldInverse.copy(t.matrixWorldInverse),this.projectionMatrix.copy(t.projectionMatrix),this.projectionMatrixInverse.copy(t.projectionMatrixInverse),this.coordinateSystem=t.coordinateSystem,this}getWorldDirection(t){return super.getWorldDirection(t).negate()}updateMatrixWorld(t){super.updateMatrixWorld(t),this.matrixWorldInverse.copy(this.matrixWorld).invert()}updateWorldMatrix(t,e){super.updateWorldMatrix(t,e),this.matrixWorldInverse.copy(this.matrixWorld).invert()}clone(){return new this.constructor().copy(this)}}const cn=new L,qa=new wt,Ka=new wt;class we extends ul{constructor(t=50,e=1,n=.1,r=2e3){super(),this.isPerspectiveCamera=!0,this.type="PerspectiveCamera",this.fov=t,this.zoom=1,this.near=n,this.far=r,this.focus=10,this.aspect=e,this.view=null,this.filmGauge=35,this.filmOffset=0,this.updateProjectionMatrix()}copy(t,e){return super.copy(t,e),this.fov=t.fov,this.zoom=t.zoom,this.near=t.near,this.far=t.far,this.focus=t.focus,this.aspect=t.aspect,this.view=t.view===null?null:Object.assign({},t.view),this.filmGauge=t.filmGauge,this.filmOffset=t.filmOffset,this}setFocalLength(t){const e=.5*this.getFilmHeight()/t;this.fov=bi*2*Math.atan(e),this.updateProjectionMatrix()}getFocalLength(){const t=Math.tan(yi*.5*this.fov);return .5*this.getFilmHeight()/t}getEffectiveFOV(){return bi*2*Math.atan(Math.tan(yi*.5*this.fov)/this.zoom)}getFilmWidth(){return this.filmGauge*Math.min(this.aspect,1)}getFilmHeight(){return this.filmGauge/Math.max(this.aspect,1)}getViewBounds(t,e,n){cn.set(-1,-1,.5).applyMatrix4(this.projectionMatrixInverse),e.set(cn.x,cn.y).multiplyScalar(-t/cn.z),cn.set(1,1,.5).applyMatrix4(this.projectionMatrixInverse),n.set(cn.x,cn.y).multiplyScalar(-t/cn.z)}getViewSize(t,e){return this.getViewBounds(t,qa,Ka),e.subVectors(Ka,qa)}setViewOffset(t,e,n,r,s,a){this.aspect=t/e,this.view===null&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=n,this.view.offsetY=r,this.view.width=s,this.view.height=a,this.updateProjectionMatrix()}clearViewOffset(){this.view!==null&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const t=this.near;let e=t*Math.tan(yi*.5*this.fov)/this.zoom,n=2*e,r=this.aspect*n,s=-.5*r;const a=this.view;if(this.view!==null&&this.view.enabled){const l=a.fullWidth,c=a.fullHeight;s+=a.offsetX*r/l,e-=a.offsetY*n/c,r*=a.width/l,n*=a.height/c}const o=this.filmOffset;o!==0&&(s+=t*o/this.getFilmWidth()),this.projectionMatrix.makePerspective(s,s+r,e,e-n,t,this.far,this.coordinateSystem),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){const e=super.toJSON(t);return e.object.fov=this.fov,e.object.zoom=this.zoom,e.object.near=this.near,e.object.far=this.far,e.object.focus=this.focus,e.object.aspect=this.aspect,this.view!==null&&(e.object.view=Object.assign({},this.view)),e.object.filmGauge=this.filmGauge,e.object.filmOffset=this.filmOffset,e}}const Yn=-90,qn=1;class ch extends fe{constructor(t,e,n){super(),this.type="CubeCamera",this.renderTarget=n,this.coordinateSystem=null,this.activeMipmapLevel=0;const r=new we(Yn,qn,t,e);r.layers=this.layers,this.add(r);const s=new we(Yn,qn,t,e);s.layers=this.layers,this.add(s);const a=new we(Yn,qn,t,e);a.layers=this.layers,this.add(a);const o=new we(Yn,qn,t,e);o.layers=this.layers,this.add(o);const l=new we(Yn,qn,t,e);l.layers=this.layers,this.add(l);const c=new we(Yn,qn,t,e);c.layers=this.layers,this.add(c)}updateCoordinateSystem(){const t=this.coordinateSystem,e=this.children.concat(),[n,r,s,a,o,l]=e;for(const c of e)this.remove(c);if(t===tn)n.up.set(0,1,0),n.lookAt(1,0,0),r.up.set(0,1,0),r.lookAt(-1,0,0),s.up.set(0,0,-1),s.lookAt(0,1,0),a.up.set(0,0,1),a.lookAt(0,-1,0),o.up.set(0,1,0),o.lookAt(0,0,1),l.up.set(0,1,0),l.lookAt(0,0,-1);else if(t===gr)n.up.set(0,-1,0),n.lookAt(-1,0,0),r.up.set(0,-1,0),r.lookAt(1,0,0),s.up.set(0,0,1),s.lookAt(0,1,0),a.up.set(0,0,-1),a.lookAt(0,-1,0),o.up.set(0,-1,0),o.lookAt(0,0,1),l.up.set(0,-1,0),l.lookAt(0,0,-1);else throw new Error("THREE.CubeCamera.updateCoordinateSystem(): Invalid coordinate system: "+t);for(const c of e)this.add(c),c.updateMatrixWorld()}update(t,e){this.parent===null&&this.updateMatrixWorld();const{renderTarget:n,activeMipmapLevel:r}=this;this.coordinateSystem!==t.coordinateSystem&&(this.coordinateSystem=t.coordinateSystem,this.updateCoordinateSystem());const[s,a,o,l,c,u]=this.children,f=t.getRenderTarget(),p=t.getActiveCubeFace(),m=t.getActiveMipmapLevel(),_=t.xr.enabled;t.xr.enabled=!1;const x=n.texture.generateMipmaps;n.texture.generateMipmaps=!1,t.setRenderTarget(n,0,r),t.render(e,s),t.setRenderTarget(n,1,r),t.render(e,a),t.setRenderTarget(n,2,r),t.render(e,o),t.setRenderTarget(n,3,r),t.render(e,l),t.setRenderTarget(n,4,r),t.render(e,c),n.texture.generateMipmaps=x,t.setRenderTarget(n,5,r),t.render(e,u),t.setRenderTarget(f,p,m),t.xr.enabled=_,n.texture.needsPMREMUpdate=!0}}class dl extends ge{constructor(t,e,n,r,s,a,o,l,c,u){t=t!==void 0?t:[],e=e!==void 0?e:ri,super(t,e,n,r,s,a,o,l,c,u),this.isCubeTexture=!0,this.flipY=!1}get images(){return this.image}set images(t){this.image=t}}class hh extends Ln{constructor(t=1,e={}){super(t,t,e),this.isWebGLCubeRenderTarget=!0;const n={width:t,height:t,depth:1},r=[n,n,n,n,n,n];this.texture=new dl(r,e.mapping,e.wrapS,e.wrapT,e.magFilter,e.minFilter,e.format,e.type,e.anisotropy,e.colorSpace),this.texture.isRenderTargetTexture=!0,this.texture.generateMipmaps=e.generateMipmaps!==void 0?e.generateMipmaps:!1,this.texture.minFilter=e.minFilter!==void 0?e.minFilter:Fe}fromEquirectangularTexture(t,e){this.texture.type=e.type,this.texture.colorSpace=e.colorSpace,this.texture.generateMipmaps=e.generateMipmaps,this.texture.minFilter=e.minFilter,this.texture.magFilter=e.magFilter;const n={uniforms:{tEquirect:{value:null}},vertexShader:` +}`;class _n extends ui{constructor(t){super(),this.isShaderMaterial=!0,this.type="ShaderMaterial",this.defines={},this.uniforms={},this.uniformsGroups=[],this.vertexShader=fh,this.fragmentShader=ph,this.linewidth=1,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!1,this.lights=!1,this.clipping=!1,this.forceSinglePass=!0,this.extensions={clipCullDistance:!1,multiDraw:!1},this.defaultAttributeValues={color:[1,1,1],uv:[0,0],uv1:[0,0]},this.index0AttributeName=void 0,this.uniformsNeedUpdate=!1,this.glslVersion=null,t!==void 0&&this.setValues(t)}copy(t){return super.copy(t),this.fragmentShader=t.fragmentShader,this.vertexShader=t.vertexShader,this.uniforms=ci(t.uniforms),this.uniformsGroups=uh(t.uniformsGroups),this.defines=Object.assign({},t.defines),this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.fog=t.fog,this.lights=t.lights,this.clipping=t.clipping,this.extensions=Object.assign({},t.extensions),this.glslVersion=t.glslVersion,this}toJSON(t){const e=super.toJSON(t);e.glslVersion=this.glslVersion,e.uniforms={};for(const r in this.uniforms){const a=this.uniforms[r].value;a&&a.isTexture?e.uniforms[r]={type:"t",value:a.toJSON(t).uuid}:a&&a.isColor?e.uniforms[r]={type:"c",value:a.getHex()}:a&&a.isVector2?e.uniforms[r]={type:"v2",value:a.toArray()}:a&&a.isVector3?e.uniforms[r]={type:"v3",value:a.toArray()}:a&&a.isVector4?e.uniforms[r]={type:"v4",value:a.toArray()}:a&&a.isMatrix3?e.uniforms[r]={type:"m3",value:a.toArray()}:a&&a.isMatrix4?e.uniforms[r]={type:"m4",value:a.toArray()}:e.uniforms[r]={value:a}}Object.keys(this.defines).length>0&&(e.defines=this.defines),e.vertexShader=this.vertexShader,e.fragmentShader=this.fragmentShader,e.lights=this.lights,e.clipping=this.clipping;const n={};for(const r in this.extensions)this.extensions[r]===!0&&(n[r]=!0);return Object.keys(n).length>0&&(e.extensions=n),e}}class vl extends fe{constructor(){super(),this.isCamera=!0,this.type="Camera",this.matrixWorldInverse=new $t,this.projectionMatrix=new $t,this.projectionMatrixInverse=new $t,this.coordinateSystem=tn}copy(t,e){return super.copy(t,e),this.matrixWorldInverse.copy(t.matrixWorldInverse),this.projectionMatrix.copy(t.projectionMatrix),this.projectionMatrixInverse.copy(t.projectionMatrixInverse),this.coordinateSystem=t.coordinateSystem,this}getWorldDirection(t){return super.getWorldDirection(t).negate()}updateMatrixWorld(t){super.updateMatrixWorld(t),this.matrixWorldInverse.copy(this.matrixWorld).invert()}updateWorldMatrix(t,e){super.updateWorldMatrix(t,e),this.matrixWorldInverse.copy(this.matrixWorld).invert()}clone(){return new this.constructor().copy(this)}}const cn=new L,Qa=new wt,to=new wt;class we extends vl{constructor(t=50,e=1,n=.1,r=2e3){super(),this.isPerspectiveCamera=!0,this.type="PerspectiveCamera",this.fov=t,this.zoom=1,this.near=n,this.far=r,this.focus=10,this.aspect=e,this.view=null,this.filmGauge=35,this.filmOffset=0,this.updateProjectionMatrix()}copy(t,e){return super.copy(t,e),this.fov=t.fov,this.zoom=t.zoom,this.near=t.near,this.far=t.far,this.focus=t.focus,this.aspect=t.aspect,this.view=t.view===null?null:Object.assign({},t.view),this.filmGauge=t.filmGauge,this.filmOffset=t.filmOffset,this}setFocalLength(t){const e=.5*this.getFilmHeight()/t;this.fov=Ci*2*Math.atan(e),this.updateProjectionMatrix()}getFocalLength(){const t=Math.tan(bi*.5*this.fov);return .5*this.getFilmHeight()/t}getEffectiveFOV(){return Ci*2*Math.atan(Math.tan(bi*.5*this.fov)/this.zoom)}getFilmWidth(){return this.filmGauge*Math.min(this.aspect,1)}getFilmHeight(){return this.filmGauge/Math.max(this.aspect,1)}getViewBounds(t,e,n){cn.set(-1,-1,.5).applyMatrix4(this.projectionMatrixInverse),e.set(cn.x,cn.y).multiplyScalar(-t/cn.z),cn.set(1,1,.5).applyMatrix4(this.projectionMatrixInverse),n.set(cn.x,cn.y).multiplyScalar(-t/cn.z)}getViewSize(t,e){return this.getViewBounds(t,Qa,to),e.subVectors(to,Qa)}setViewOffset(t,e,n,r,s,a){this.aspect=t/e,this.view===null&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=n,this.view.offsetY=r,this.view.width=s,this.view.height=a,this.updateProjectionMatrix()}clearViewOffset(){this.view!==null&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const t=this.near;let e=t*Math.tan(bi*.5*this.fov)/this.zoom,n=2*e,r=this.aspect*n,s=-.5*r;const a=this.view;if(this.view!==null&&this.view.enabled){const l=a.fullWidth,c=a.fullHeight;s+=a.offsetX*r/l,e-=a.offsetY*n/c,r*=a.width/l,n*=a.height/c}const o=this.filmOffset;o!==0&&(s+=t*o/this.getFilmWidth()),this.projectionMatrix.makePerspective(s,s+r,e,e-n,t,this.far,this.coordinateSystem),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){const e=super.toJSON(t);return e.object.fov=this.fov,e.object.zoom=this.zoom,e.object.near=this.near,e.object.far=this.far,e.object.focus=this.focus,e.object.aspect=this.aspect,this.view!==null&&(e.object.view=Object.assign({},this.view)),e.object.filmGauge=this.filmGauge,e.object.filmOffset=this.filmOffset,e}}const Yn=-90,qn=1;class mh extends fe{constructor(t,e,n){super(),this.type="CubeCamera",this.renderTarget=n,this.coordinateSystem=null,this.activeMipmapLevel=0;const r=new we(Yn,qn,t,e);r.layers=this.layers,this.add(r);const s=new we(Yn,qn,t,e);s.layers=this.layers,this.add(s);const a=new we(Yn,qn,t,e);a.layers=this.layers,this.add(a);const o=new we(Yn,qn,t,e);o.layers=this.layers,this.add(o);const l=new we(Yn,qn,t,e);l.layers=this.layers,this.add(l);const c=new we(Yn,qn,t,e);c.layers=this.layers,this.add(c)}updateCoordinateSystem(){const t=this.coordinateSystem,e=this.children.concat(),[n,r,s,a,o,l]=e;for(const c of e)this.remove(c);if(t===tn)n.up.set(0,1,0),n.lookAt(1,0,0),r.up.set(0,1,0),r.lookAt(-1,0,0),s.up.set(0,0,-1),s.lookAt(0,1,0),a.up.set(0,0,1),a.lookAt(0,-1,0),o.up.set(0,1,0),o.lookAt(0,0,1),l.up.set(0,1,0),l.lookAt(0,0,-1);else if(t===Mr)n.up.set(0,-1,0),n.lookAt(-1,0,0),r.up.set(0,-1,0),r.lookAt(1,0,0),s.up.set(0,0,1),s.lookAt(0,1,0),a.up.set(0,0,-1),a.lookAt(0,-1,0),o.up.set(0,-1,0),o.lookAt(0,0,1),l.up.set(0,-1,0),l.lookAt(0,0,-1);else throw new Error("THREE.CubeCamera.updateCoordinateSystem(): Invalid coordinate system: "+t);for(const c of e)this.add(c),c.updateMatrixWorld()}update(t,e){this.parent===null&&this.updateMatrixWorld();const{renderTarget:n,activeMipmapLevel:r}=this;this.coordinateSystem!==t.coordinateSystem&&(this.coordinateSystem=t.coordinateSystem,this.updateCoordinateSystem());const[s,a,o,l,c,u]=this.children,f=t.getRenderTarget(),p=t.getActiveCubeFace(),m=t.getActiveMipmapLevel(),_=t.xr.enabled;t.xr.enabled=!1;const x=n.texture.generateMipmaps;n.texture.generateMipmaps=!1,t.setRenderTarget(n,0,r),t.render(e,s),t.setRenderTarget(n,1,r),t.render(e,a),t.setRenderTarget(n,2,r),t.render(e,o),t.setRenderTarget(n,3,r),t.render(e,l),t.setRenderTarget(n,4,r),t.render(e,c),n.texture.generateMipmaps=x,t.setRenderTarget(n,5,r),t.render(e,u),t.setRenderTarget(f,p,m),t.xr.enabled=_,n.texture.needsPMREMUpdate=!0}}class xl extends ge{constructor(t,e,n,r,s,a,o,l,c,u){t=t!==void 0?t:[],e=e!==void 0?e:si,super(t,e,n,r,s,a,o,l,c,u),this.isCubeTexture=!0,this.flipY=!1}get images(){return this.image}set images(t){this.image=t}}class _h extends Ln{constructor(t=1,e={}){super(t,t,e),this.isWebGLCubeRenderTarget=!0;const n={width:t,height:t,depth:1},r=[n,n,n,n,n,n];this.texture=new xl(r,e.mapping,e.wrapS,e.wrapT,e.magFilter,e.minFilter,e.format,e.type,e.anisotropy,e.colorSpace),this.texture.isRenderTargetTexture=!0,this.texture.generateMipmaps=e.generateMipmaps!==void 0?e.generateMipmaps:!1,this.texture.minFilter=e.minFilter!==void 0?e.minFilter:Fe}fromEquirectangularTexture(t,e){this.texture.type=e.type,this.texture.colorSpace=e.colorSpace,this.texture.generateMipmaps=e.generateMipmaps,this.texture.minFilter=e.minFilter,this.texture.magFilter=e.magFilter;const n={uniforms:{tEquirect:{value:null}},vertexShader:` varying vec3 vWorldDirection; @@ -41,9 +41,9 @@ import{r as Dl,l as Ul,O as Ho,R as Il,P as Nl}from"./index-DVsZ779A.js";/** gl_FragColor = texture2D( tEquirect, sampleUV ); } - `},r=new Pi(5,5,5),s=new _n({name:"CubemapFromEquirect",uniforms:li(n.uniforms),vertexShader:n.vertexShader,fragmentShader:n.fragmentShader,side:_e,blending:fn});s.uniforms.tEquirect.value=e;const a=new Re(r,s),o=e.minFilter;return e.minFilter===Cn&&(e.minFilter=Fe),new ch(1,10,this).update(t,a),e.minFilter=o,a.geometry.dispose(),a.material.dispose(),this}clear(t,e,n,r){const s=t.getRenderTarget();for(let a=0;a<6;a++)t.setRenderTarget(this,a),t.clear(e,n,r);t.setRenderTarget(s)}}const Jr=new L,uh=new L,dh=new Lt;class un{constructor(t=new L(1,0,0),e=0){this.isPlane=!0,this.normal=t,this.constant=e}set(t,e){return this.normal.copy(t),this.constant=e,this}setComponents(t,e,n,r){return this.normal.set(t,e,n),this.constant=r,this}setFromNormalAndCoplanarPoint(t,e){return this.normal.copy(t),this.constant=-e.dot(this.normal),this}setFromCoplanarPoints(t,e,n){const r=Jr.subVectors(n,e).cross(uh.subVectors(t,e)).normalize();return this.setFromNormalAndCoplanarPoint(r,t),this}copy(t){return this.normal.copy(t.normal),this.constant=t.constant,this}normalize(){const t=1/this.normal.length();return this.normal.multiplyScalar(t),this.constant*=t,this}negate(){return this.constant*=-1,this.normal.negate(),this}distanceToPoint(t){return this.normal.dot(t)+this.constant}distanceToSphere(t){return this.distanceToPoint(t.center)-t.radius}projectPoint(t,e){return e.copy(t).addScaledVector(this.normal,-this.distanceToPoint(t))}intersectLine(t,e){const n=t.delta(Jr),r=this.normal.dot(n);if(r===0)return this.distanceToPoint(t.start)===0?e.copy(t.start):null;const s=-(t.start.dot(this.normal)+this.constant)/r;return s<0||s>1?null:e.copy(t.start).addScaledVector(n,s)}intersectsLine(t){const e=this.distanceToPoint(t.start),n=this.distanceToPoint(t.end);return e<0&&n>0||n<0&&e>0}intersectsBox(t){return t.intersectsPlane(this)}intersectsSphere(t){return t.intersectsPlane(this)}coplanarPoint(t){return t.copy(this.normal).multiplyScalar(-this.constant)}applyMatrix4(t,e){const n=e||dh.getNormalMatrix(t),r=this.coplanarPoint(Jr).applyMatrix4(t),s=this.normal.applyMatrix3(n).normalize();return this.constant=-r.dot(s),this}translate(t){return this.constant-=t.dot(this.normal),this}equals(t){return t.normal.equals(this.normal)&&t.constant===this.constant}clone(){return new this.constructor().copy(this)}}const En=new yr,$i=new L;class ha{constructor(t=new un,e=new un,n=new un,r=new un,s=new un,a=new un){this.planes=[t,e,n,r,s,a]}set(t,e,n,r,s,a){const o=this.planes;return o[0].copy(t),o[1].copy(e),o[2].copy(n),o[3].copy(r),o[4].copy(s),o[5].copy(a),this}copy(t){const e=this.planes;for(let n=0;n<6;n++)e[n].copy(t.planes[n]);return this}setFromProjectionMatrix(t,e=tn){const n=this.planes,r=t.elements,s=r[0],a=r[1],o=r[2],l=r[3],c=r[4],u=r[5],f=r[6],p=r[7],m=r[8],_=r[9],x=r[10],d=r[11],h=r[12],T=r[13],E=r[14],A=r[15];if(n[0].setComponents(l-s,p-c,d-m,A-h).normalize(),n[1].setComponents(l+s,p+c,d+m,A+h).normalize(),n[2].setComponents(l+a,p+u,d+_,A+T).normalize(),n[3].setComponents(l-a,p-u,d-_,A-T).normalize(),n[4].setComponents(l-o,p-f,d-x,A-E).normalize(),e===tn)n[5].setComponents(l+o,p+f,d+x,A+E).normalize();else if(e===gr)n[5].setComponents(o,f,x,E).normalize();else throw new Error("THREE.Frustum.setFromProjectionMatrix(): Invalid coordinate system: "+e);return this}intersectsObject(t){if(t.boundingSphere!==void 0)t.boundingSphere===null&&t.computeBoundingSphere(),En.copy(t.boundingSphere).applyMatrix4(t.matrixWorld);else{const e=t.geometry;e.boundingSphere===null&&e.computeBoundingSphere(),En.copy(e.boundingSphere).applyMatrix4(t.matrixWorld)}return this.intersectsSphere(En)}intersectsSprite(t){return En.center.set(0,0,0),En.radius=.7071067811865476,En.applyMatrix4(t.matrixWorld),this.intersectsSphere(En)}intersectsSphere(t){const e=this.planes,n=t.center,r=-t.radius;for(let s=0;s<6;s++)if(e[s].distanceToPoint(n)0?t.max.x:t.min.x,$i.y=r.normal.y>0?t.max.y:t.min.y,$i.z=r.normal.z>0?t.max.z:t.min.z,r.distanceToPoint($i)<0)return!1}return!0}containsPoint(t){const e=this.planes;for(let n=0;n<6;n++)if(e[n].distanceToPoint(t)<0)return!1;return!0}clone(){return new this.constructor().copy(this)}}function fl(){let i=null,t=!1,e=null,n=null;function r(s,a){e(s,a),n=i.requestAnimationFrame(r)}return{start:function(){t!==!0&&e!==null&&(n=i.requestAnimationFrame(r),t=!0)},stop:function(){i.cancelAnimationFrame(n),t=!1},setAnimationLoop:function(s){e=s},setContext:function(s){i=s}}}function fh(i){const t=new WeakMap;function e(o,l){const c=o.array,u=o.usage,f=c.byteLength,p=i.createBuffer();i.bindBuffer(l,p),i.bufferData(l,c,u),o.onUploadCallback();let m;if(c instanceof Float32Array)m=i.FLOAT;else if(c instanceof Uint16Array)o.isFloat16BufferAttribute?m=i.HALF_FLOAT:m=i.UNSIGNED_SHORT;else if(c instanceof Int16Array)m=i.SHORT;else if(c instanceof Uint32Array)m=i.UNSIGNED_INT;else if(c instanceof Int32Array)m=i.INT;else if(c instanceof Int8Array)m=i.BYTE;else if(c instanceof Uint8Array)m=i.UNSIGNED_BYTE;else if(c instanceof Uint8ClampedArray)m=i.UNSIGNED_BYTE;else throw new Error("THREE.WebGLAttributes: Unsupported buffer data format: "+c);return{buffer:p,type:m,bytesPerElement:c.BYTES_PER_ELEMENT,version:o.version,size:f}}function n(o,l,c){const u=l.array,f=l.updateRanges;if(i.bindBuffer(c,o),f.length===0)i.bufferSubData(c,0,u);else{f.sort((m,_)=>m.start-_.start);let p=0;for(let m=1;m1?null:e.copy(t.start).addScaledVector(n,s)}intersectsLine(t){const e=this.distanceToPoint(t.start),n=this.distanceToPoint(t.end);return e<0&&n>0||n<0&&e>0}intersectsBox(t){return t.intersectsPlane(this)}intersectsSphere(t){return t.intersectsPlane(this)}coplanarPoint(t){return t.copy(this.normal).multiplyScalar(-this.constant)}applyMatrix4(t,e){const n=e||vh.getNormalMatrix(t),r=this.coplanarPoint(ns).applyMatrix4(t),s=this.normal.applyMatrix3(n).normalize();return this.constant=-r.dot(s),this}translate(t){return this.constant-=t.dot(this.normal),this}equals(t){return t.normal.equals(this.normal)&&t.constant===this.constant}clone(){return new this.constructor().copy(this)}}const En=new br,tr=new L;class fa{constructor(t=new un,e=new un,n=new un,r=new un,s=new un,a=new un){this.planes=[t,e,n,r,s,a]}set(t,e,n,r,s,a){const o=this.planes;return o[0].copy(t),o[1].copy(e),o[2].copy(n),o[3].copy(r),o[4].copy(s),o[5].copy(a),this}copy(t){const e=this.planes;for(let n=0;n<6;n++)e[n].copy(t.planes[n]);return this}setFromProjectionMatrix(t,e=tn){const n=this.planes,r=t.elements,s=r[0],a=r[1],o=r[2],l=r[3],c=r[4],u=r[5],f=r[6],p=r[7],m=r[8],_=r[9],x=r[10],d=r[11],h=r[12],T=r[13],E=r[14],A=r[15];if(n[0].setComponents(l-s,p-c,d-m,A-h).normalize(),n[1].setComponents(l+s,p+c,d+m,A+h).normalize(),n[2].setComponents(l+a,p+u,d+_,A+T).normalize(),n[3].setComponents(l-a,p-u,d-_,A-T).normalize(),n[4].setComponents(l-o,p-f,d-x,A-E).normalize(),e===tn)n[5].setComponents(l+o,p+f,d+x,A+E).normalize();else if(e===Mr)n[5].setComponents(o,f,x,E).normalize();else throw new Error("THREE.Frustum.setFromProjectionMatrix(): Invalid coordinate system: "+e);return this}intersectsObject(t){if(t.boundingSphere!==void 0)t.boundingSphere===null&&t.computeBoundingSphere(),En.copy(t.boundingSphere).applyMatrix4(t.matrixWorld);else{const e=t.geometry;e.boundingSphere===null&&e.computeBoundingSphere(),En.copy(e.boundingSphere).applyMatrix4(t.matrixWorld)}return this.intersectsSphere(En)}intersectsSprite(t){return En.center.set(0,0,0),En.radius=.7071067811865476,En.applyMatrix4(t.matrixWorld),this.intersectsSphere(En)}intersectsSphere(t){const e=this.planes,n=t.center,r=-t.radius;for(let s=0;s<6;s++)if(e[s].distanceToPoint(n)0?t.max.x:t.min.x,tr.y=r.normal.y>0?t.max.y:t.min.y,tr.z=r.normal.z>0?t.max.z:t.min.z,r.distanceToPoint(tr)<0)return!1}return!0}containsPoint(t){const e=this.planes;for(let n=0;n<6;n++)if(e[n].distanceToPoint(t)<0)return!1;return!0}clone(){return new this.constructor().copy(this)}}function Ml(){let i=null,t=!1,e=null,n=null;function r(s,a){e(s,a),n=i.requestAnimationFrame(r)}return{start:function(){t!==!0&&e!==null&&(n=i.requestAnimationFrame(r),t=!0)},stop:function(){i.cancelAnimationFrame(n),t=!1},setAnimationLoop:function(s){e=s},setContext:function(s){i=s}}}function xh(i){const t=new WeakMap;function e(o,l){const c=o.array,u=o.usage,f=c.byteLength,p=i.createBuffer();i.bindBuffer(l,p),i.bufferData(l,c,u),o.onUploadCallback();let m;if(c instanceof Float32Array)m=i.FLOAT;else if(c instanceof Uint16Array)o.isFloat16BufferAttribute?m=i.HALF_FLOAT:m=i.UNSIGNED_SHORT;else if(c instanceof Int16Array)m=i.SHORT;else if(c instanceof Uint32Array)m=i.UNSIGNED_INT;else if(c instanceof Int32Array)m=i.INT;else if(c instanceof Int8Array)m=i.BYTE;else if(c instanceof Uint8Array)m=i.UNSIGNED_BYTE;else if(c instanceof Uint8ClampedArray)m=i.UNSIGNED_BYTE;else throw new Error("THREE.WebGLAttributes: Unsupported buffer data format: "+c);return{buffer:p,type:m,bytesPerElement:c.BYTES_PER_ELEMENT,version:o.version,size:f}}function n(o,l,c){const u=l.array,f=l.updateRanges;if(i.bindBuffer(c,o),f.length===0)i.bufferSubData(c,0,u);else{f.sort((m,_)=>m.start-_.start);let p=0;for(let m=1;m 0 +#endif`,Nh=`#if NUM_CLIPPING_PLANES > 0 vec4 plane; #ifdef ALPHA_TO_COVERAGE float distanceToPlane, distanceGradient; @@ -293,26 +293,26 @@ vec3 BRDF_BlinnPhong( const in vec3 lightDir, const in vec3 viewDir, const in ve if ( clipped ) discard; #endif #endif -#endif`,Ph=`#if NUM_CLIPPING_PLANES > 0 +#endif`,Fh=`#if NUM_CLIPPING_PLANES > 0 varying vec3 vClipPosition; uniform vec4 clippingPlanes[ NUM_CLIPPING_PLANES ]; -#endif`,Lh=`#if NUM_CLIPPING_PLANES > 0 +#endif`,Oh=`#if NUM_CLIPPING_PLANES > 0 varying vec3 vClipPosition; -#endif`,Dh=`#if NUM_CLIPPING_PLANES > 0 +#endif`,Bh=`#if NUM_CLIPPING_PLANES > 0 vClipPosition = - mvPosition.xyz; -#endif`,Uh=`#if defined( USE_COLOR_ALPHA ) +#endif`,zh=`#if defined( USE_COLOR_ALPHA ) diffuseColor *= vColor; #elif defined( USE_COLOR ) diffuseColor.rgb *= vColor; -#endif`,Ih=`#if defined( USE_COLOR_ALPHA ) +#endif`,Hh=`#if defined( USE_COLOR_ALPHA ) varying vec4 vColor; #elif defined( USE_COLOR ) varying vec3 vColor; -#endif`,Nh=`#if defined( USE_COLOR_ALPHA ) +#endif`,Gh=`#if defined( USE_COLOR_ALPHA ) varying vec4 vColor; #elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR ) || defined( USE_BATCHING_COLOR ) varying vec3 vColor; -#endif`,Fh=`#if defined( USE_COLOR_ALPHA ) +#endif`,kh=`#if defined( USE_COLOR_ALPHA ) vColor = vec4( 1.0 ); #elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR ) || defined( USE_BATCHING_COLOR ) vColor = vec3( 1.0 ); @@ -326,7 +326,7 @@ vec3 BRDF_BlinnPhong( const in vec3 lightDir, const in vec3 viewDir, const in ve #ifdef USE_BATCHING_COLOR vec3 batchingColor = getBatchingColor( getIndirectIndex( gl_DrawID ) ); vColor.xyz *= batchingColor.xyz; -#endif`,Oh=`#define PI 3.141592653589793 +#endif`,Vh=`#define PI 3.141592653589793 #define PI2 6.283185307179586 #define PI_HALF 1.5707963267948966 #define RECIPROCAL_PI 0.3183098861837907 @@ -400,7 +400,7 @@ vec3 F_Schlick( const in vec3 f0, const in float f90, const in float dotVH ) { float F_Schlick( const in float f0, const in float f90, const in float dotVH ) { float fresnel = exp2( ( - 5.55473 * dotVH - 6.98316 ) * dotVH ); return f0 * ( 1.0 - fresnel ) + ( f90 * fresnel ); -} // validated`,Bh=`#ifdef ENVMAP_TYPE_CUBE_UV +} // validated`,Wh=`#ifdef ENVMAP_TYPE_CUBE_UV #define cubeUV_minMipLevel 4.0 #define cubeUV_minTileSize 16.0 float getFace( vec3 direction ) { @@ -493,7 +493,7 @@ float F_Schlick( const in float f0, const in float f90, const in float dotVH ) { return vec4( mix( color0, color1, mipF ), 1.0 ); } } -#endif`,zh=`vec3 transformedNormal = objectNormal; +#endif`,Xh=`vec3 transformedNormal = objectNormal; #ifdef USE_TANGENT vec3 transformedTangent = objectTangent; #endif @@ -522,18 +522,18 @@ transformedNormal = normalMatrix * transformedNormal; #ifdef FLIP_SIDED transformedTangent = - transformedTangent; #endif -#endif`,Hh=`#ifdef USE_DISPLACEMENTMAP +#endif`,Yh=`#ifdef USE_DISPLACEMENTMAP uniform sampler2D displacementMap; uniform float displacementScale; uniform float displacementBias; -#endif`,Gh=`#ifdef USE_DISPLACEMENTMAP +#endif`,qh=`#ifdef USE_DISPLACEMENTMAP transformed += normalize( objectNormal ) * ( texture2D( displacementMap, vDisplacementMapUv ).x * displacementScale + displacementBias ); -#endif`,Vh=`#ifdef USE_EMISSIVEMAP +#endif`,Kh=`#ifdef USE_EMISSIVEMAP vec4 emissiveColor = texture2D( emissiveMap, vEmissiveMapUv ); totalEmissiveRadiance *= emissiveColor.rgb; -#endif`,kh=`#ifdef USE_EMISSIVEMAP +#endif`,Zh=`#ifdef USE_EMISSIVEMAP uniform sampler2D emissiveMap; -#endif`,Wh="gl_FragColor = linearToOutputTexel( gl_FragColor );",Xh=` +#endif`,jh="gl_FragColor = linearToOutputTexel( gl_FragColor );",$h=` const mat3 LINEAR_SRGB_TO_LINEAR_DISPLAY_P3 = mat3( vec3( 0.8224621, 0.177538, 0.0 ), vec3( 0.0331941, 0.9668058, 0.0 ), @@ -555,7 +555,7 @@ vec4 LinearTransferOETF( in vec4 value ) { } vec4 sRGBTransferOETF( in vec4 value ) { return vec4( mix( pow( value.rgb, vec3( 0.41666 ) ) * 1.055 - vec3( 0.055 ), value.rgb * 12.92, vec3( lessThanEqual( value.rgb, vec3( 0.0031308 ) ) ) ), value.a ); -}`,Yh=`#ifdef USE_ENVMAP +}`,Jh=`#ifdef USE_ENVMAP #ifdef ENV_WORLDPOS vec3 cameraToFrag; if ( isOrthographic ) { @@ -584,7 +584,7 @@ vec4 sRGBTransferOETF( in vec4 value ) { #elif defined( ENVMAP_BLENDING_ADD ) outgoingLight += envColor.xyz * specularStrength * reflectivity; #endif -#endif`,qh=`#ifdef USE_ENVMAP +#endif`,Qh=`#ifdef USE_ENVMAP uniform float envMapIntensity; uniform float flipEnvMap; uniform mat3 envMapRotation; @@ -594,7 +594,7 @@ vec4 sRGBTransferOETF( in vec4 value ) { uniform sampler2D envMap; #endif -#endif`,Kh=`#ifdef USE_ENVMAP +#endif`,tu=`#ifdef USE_ENVMAP uniform float reflectivity; #if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) || defined( LAMBERT ) #define ENV_WORLDPOS @@ -605,7 +605,7 @@ vec4 sRGBTransferOETF( in vec4 value ) { #else varying vec3 vReflect; #endif -#endif`,Zh=`#ifdef USE_ENVMAP +#endif`,eu=`#ifdef USE_ENVMAP #if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) || defined( LAMBERT ) #define ENV_WORLDPOS #endif @@ -616,7 +616,7 @@ vec4 sRGBTransferOETF( in vec4 value ) { varying vec3 vReflect; uniform float refractionRatio; #endif -#endif`,jh=`#ifdef USE_ENVMAP +#endif`,nu=`#ifdef USE_ENVMAP #ifdef ENV_WORLDPOS vWorldPosition = worldPosition.xyz; #else @@ -633,18 +633,18 @@ vec4 sRGBTransferOETF( in vec4 value ) { vReflect = refract( cameraToVertex, worldNormal, refractionRatio ); #endif #endif -#endif`,$h=`#ifdef USE_FOG +#endif`,iu=`#ifdef USE_FOG vFogDepth = - mvPosition.z; -#endif`,Jh=`#ifdef USE_FOG +#endif`,ru=`#ifdef USE_FOG varying float vFogDepth; -#endif`,Qh=`#ifdef USE_FOG +#endif`,su=`#ifdef USE_FOG #ifdef FOG_EXP2 float fogFactor = 1.0 - exp( - fogDensity * fogDensity * vFogDepth * vFogDepth ); #else float fogFactor = smoothstep( fogNear, fogFar, vFogDepth ); #endif gl_FragColor.rgb = mix( gl_FragColor.rgb, fogColor, fogFactor ); -#endif`,tu=`#ifdef USE_FOG +#endif`,au=`#ifdef USE_FOG uniform vec3 fogColor; varying float vFogDepth; #ifdef FOG_EXP2 @@ -653,7 +653,7 @@ vec4 sRGBTransferOETF( in vec4 value ) { uniform float fogNear; uniform float fogFar; #endif -#endif`,eu=`#ifdef USE_GRADIENTMAP +#endif`,ou=`#ifdef USE_GRADIENTMAP uniform sampler2D gradientMap; #endif vec3 getGradientIrradiance( vec3 normal, vec3 lightDirection ) { @@ -665,12 +665,12 @@ vec3 getGradientIrradiance( vec3 normal, vec3 lightDirection ) { vec2 fw = fwidth( coord ) * 0.5; return mix( vec3( 0.7 ), vec3( 1.0 ), smoothstep( 0.7 - fw.x, 0.7 + fw.x, coord.x ) ); #endif -}`,nu=`#ifdef USE_LIGHTMAP +}`,lu=`#ifdef USE_LIGHTMAP uniform sampler2D lightMap; uniform float lightMapIntensity; -#endif`,iu=`LambertMaterial material; +#endif`,cu=`LambertMaterial material; material.diffuseColor = diffuseColor.rgb; -material.specularStrength = specularStrength;`,ru=`varying vec3 vViewPosition; +material.specularStrength = specularStrength;`,hu=`varying vec3 vViewPosition; struct LambertMaterial { vec3 diffuseColor; float specularStrength; @@ -684,7 +684,7 @@ void RE_IndirectDiffuse_Lambert( const in vec3 irradiance, const in vec3 geometr reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); } #define RE_Direct RE_Direct_Lambert -#define RE_IndirectDiffuse RE_IndirectDiffuse_Lambert`,su=`uniform bool receiveShadow; +#define RE_IndirectDiffuse RE_IndirectDiffuse_Lambert`,uu=`uniform bool receiveShadow; uniform vec3 ambientLightColor; #if defined( USE_LIGHT_PROBES ) uniform vec3 lightProbe[ 9 ]; @@ -800,7 +800,7 @@ float getSpotAttenuation( const in float coneCosine, const in float penumbraCosi vec3 irradiance = mix( hemiLight.groundColor, hemiLight.skyColor, hemiDiffuseWeight ); return irradiance; } -#endif`,au=`#ifdef USE_ENVMAP +#endif`,du=`#ifdef USE_ENVMAP vec3 getIBLIrradiance( const in vec3 normal ) { #ifdef ENVMAP_TYPE_CUBE_UV vec3 worldNormal = inverseTransformDirection( normal, viewMatrix ); @@ -833,8 +833,8 @@ float getSpotAttenuation( const in float coneCosine, const in float penumbraCosi #endif } #endif -#endif`,ou=`ToonMaterial material; -material.diffuseColor = diffuseColor.rgb;`,lu=`varying vec3 vViewPosition; +#endif`,fu=`ToonMaterial material; +material.diffuseColor = diffuseColor.rgb;`,pu=`varying vec3 vViewPosition; struct ToonMaterial { vec3 diffuseColor; }; @@ -846,11 +846,11 @@ void RE_IndirectDiffuse_Toon( const in vec3 irradiance, const in vec3 geometryPo reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); } #define RE_Direct RE_Direct_Toon -#define RE_IndirectDiffuse RE_IndirectDiffuse_Toon`,cu=`BlinnPhongMaterial material; +#define RE_IndirectDiffuse RE_IndirectDiffuse_Toon`,mu=`BlinnPhongMaterial material; material.diffuseColor = diffuseColor.rgb; material.specularColor = specular; material.specularShininess = shininess; -material.specularStrength = specularStrength;`,hu=`varying vec3 vViewPosition; +material.specularStrength = specularStrength;`,_u=`varying vec3 vViewPosition; struct BlinnPhongMaterial { vec3 diffuseColor; vec3 specularColor; @@ -867,7 +867,7 @@ void RE_IndirectDiffuse_BlinnPhong( const in vec3 irradiance, const in vec3 geom reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); } #define RE_Direct RE_Direct_BlinnPhong -#define RE_IndirectDiffuse RE_IndirectDiffuse_BlinnPhong`,uu=`PhysicalMaterial material; +#define RE_IndirectDiffuse RE_IndirectDiffuse_BlinnPhong`,gu=`PhysicalMaterial material; material.diffuseColor = diffuseColor.rgb * ( 1.0 - metalnessFactor ); vec3 dxy = max( abs( dFdx( nonPerturbedNormal ) ), abs( dFdy( nonPerturbedNormal ) ) ); float geometryRoughness = max( max( dxy.x, dxy.y ), dxy.z ); @@ -953,7 +953,7 @@ material.roughness = min( material.roughness, 1.0 ); material.alphaT = mix( pow2( material.roughness ), 1.0, pow2( material.anisotropy ) ); material.anisotropyT = tbn[ 0 ] * anisotropyV.x + tbn[ 1 ] * anisotropyV.y; material.anisotropyB = tbn[ 1 ] * anisotropyV.x - tbn[ 0 ] * anisotropyV.y; -#endif`,du=`struct PhysicalMaterial { +#endif`,vu=`struct PhysicalMaterial { vec3 diffuseColor; float roughness; vec3 specularColor; @@ -1254,7 +1254,7 @@ void RE_IndirectSpecular_Physical( const in vec3 radiance, const in vec3 irradia #define RE_IndirectSpecular RE_IndirectSpecular_Physical float computeSpecularOcclusion( const in float dotNV, const in float ambientOcclusion, const in float roughness ) { return saturate( pow( dotNV + ambientOcclusion, exp2( - 16.0 * roughness - 1.0 ) ) - 1.0 + ambientOcclusion ); -}`,fu=` +}`,xu=` vec3 geometryPosition = - vViewPosition; vec3 geometryNormal = normal; vec3 geometryViewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( vViewPosition ); @@ -1369,7 +1369,7 @@ IncidentLight directLight; #if defined( RE_IndirectSpecular ) vec3 radiance = vec3( 0.0 ); vec3 clearcoatRadiance = vec3( 0.0 ); -#endif`,pu=`#if defined( RE_IndirectDiffuse ) +#endif`,Mu=`#if defined( RE_IndirectDiffuse ) #ifdef USE_LIGHTMAP vec4 lightMapTexel = texture2D( lightMap, vLightMapUv ); vec3 lightMapIrradiance = lightMapTexel.rgb * lightMapIntensity; @@ -1388,33 +1388,33 @@ IncidentLight directLight; #ifdef USE_CLEARCOAT clearcoatRadiance += getIBLRadiance( geometryViewDir, geometryClearcoatNormal, material.clearcoatRoughness ); #endif -#endif`,mu=`#if defined( RE_IndirectDiffuse ) +#endif`,Su=`#if defined( RE_IndirectDiffuse ) RE_IndirectDiffuse( irradiance, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight ); #endif #if defined( RE_IndirectSpecular ) RE_IndirectSpecular( radiance, iblIrradiance, clearcoatRadiance, geometryPosition, geometryNormal, geometryViewDir, geometryClearcoatNormal, material, reflectedLight ); -#endif`,_u=`#if defined( USE_LOGDEPTHBUF ) +#endif`,Eu=`#if defined( USE_LOGDEPTHBUF ) gl_FragDepth = vIsPerspective == 0.0 ? gl_FragCoord.z : log2( vFragDepth ) * logDepthBufFC * 0.5; -#endif`,gu=`#if defined( USE_LOGDEPTHBUF ) +#endif`,yu=`#if defined( USE_LOGDEPTHBUF ) uniform float logDepthBufFC; varying float vFragDepth; varying float vIsPerspective; -#endif`,vu=`#ifdef USE_LOGDEPTHBUF +#endif`,Tu=`#ifdef USE_LOGDEPTHBUF varying float vFragDepth; varying float vIsPerspective; -#endif`,xu=`#ifdef USE_LOGDEPTHBUF +#endif`,Au=`#ifdef USE_LOGDEPTHBUF vFragDepth = 1.0 + gl_Position.w; vIsPerspective = float( isPerspectiveMatrix( projectionMatrix ) ); -#endif`,Mu=`#ifdef USE_MAP +#endif`,bu=`#ifdef USE_MAP vec4 sampledDiffuseColor = texture2D( map, vMapUv ); #ifdef DECODE_VIDEO_TEXTURE sampledDiffuseColor = vec4( mix( pow( sampledDiffuseColor.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), sampledDiffuseColor.rgb * 0.0773993808, vec3( lessThanEqual( sampledDiffuseColor.rgb, vec3( 0.04045 ) ) ) ), sampledDiffuseColor.w ); #endif diffuseColor *= sampledDiffuseColor; -#endif`,Su=`#ifdef USE_MAP +#endif`,wu=`#ifdef USE_MAP uniform sampler2D map; -#endif`,Eu=`#if defined( USE_MAP ) || defined( USE_ALPHAMAP ) +#endif`,Ru=`#if defined( USE_MAP ) || defined( USE_ALPHAMAP ) #if defined( USE_POINTS_UV ) vec2 uv = vUv; #else @@ -1426,7 +1426,7 @@ IncidentLight directLight; #endif #ifdef USE_ALPHAMAP diffuseColor.a *= texture2D( alphaMap, uv ).g; -#endif`,yu=`#if defined( USE_POINTS_UV ) +#endif`,Cu=`#if defined( USE_POINTS_UV ) varying vec2 vUv; #else #if defined( USE_MAP ) || defined( USE_ALPHAMAP ) @@ -1438,19 +1438,19 @@ IncidentLight directLight; #endif #ifdef USE_ALPHAMAP uniform sampler2D alphaMap; -#endif`,Tu=`float metalnessFactor = metalness; +#endif`,Pu=`float metalnessFactor = metalness; #ifdef USE_METALNESSMAP vec4 texelMetalness = texture2D( metalnessMap, vMetalnessMapUv ); metalnessFactor *= texelMetalness.b; -#endif`,Au=`#ifdef USE_METALNESSMAP +#endif`,Lu=`#ifdef USE_METALNESSMAP uniform sampler2D metalnessMap; -#endif`,bu=`#ifdef USE_INSTANCING_MORPH +#endif`,Du=`#ifdef USE_INSTANCING_MORPH float morphTargetInfluences[ MORPHTARGETS_COUNT ]; float morphTargetBaseInfluence = texelFetch( morphTexture, ivec2( 0, gl_InstanceID ), 0 ).r; for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) { morphTargetInfluences[i] = texelFetch( morphTexture, ivec2( i + 1, gl_InstanceID ), 0 ).r; } -#endif`,wu=`#if defined( USE_MORPHCOLORS ) +#endif`,Uu=`#if defined( USE_MORPHCOLORS ) vColor *= morphTargetBaseInfluence; for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) { #if defined( USE_COLOR_ALPHA ) @@ -1459,12 +1459,12 @@ IncidentLight directLight; if ( morphTargetInfluences[ i ] != 0.0 ) vColor += getMorph( gl_VertexID, i, 2 ).rgb * morphTargetInfluences[ i ]; #endif } -#endif`,Ru=`#ifdef USE_MORPHNORMALS +#endif`,Iu=`#ifdef USE_MORPHNORMALS objectNormal *= morphTargetBaseInfluence; for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) { if ( morphTargetInfluences[ i ] != 0.0 ) objectNormal += getMorph( gl_VertexID, i, 1 ).xyz * morphTargetInfluences[ i ]; } -#endif`,Cu=`#ifdef USE_MORPHTARGETS +#endif`,Nu=`#ifdef USE_MORPHTARGETS #ifndef USE_INSTANCING_MORPH uniform float morphTargetBaseInfluence; uniform float morphTargetInfluences[ MORPHTARGETS_COUNT ]; @@ -1478,12 +1478,12 @@ IncidentLight directLight; ivec3 morphUV = ivec3( x, y, morphTargetIndex ); return texelFetch( morphTargetsTexture, morphUV, 0 ); } -#endif`,Pu=`#ifdef USE_MORPHTARGETS +#endif`,Fu=`#ifdef USE_MORPHTARGETS transformed *= morphTargetBaseInfluence; for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) { if ( morphTargetInfluences[ i ] != 0.0 ) transformed += getMorph( gl_VertexID, i, 0 ).xyz * morphTargetInfluences[ i ]; } -#endif`,Lu=`float faceDirection = gl_FrontFacing ? 1.0 : - 1.0; +#endif`,Ou=`float faceDirection = gl_FrontFacing ? 1.0 : - 1.0; #ifdef FLAT_SHADED vec3 fdx = dFdx( vViewPosition ); vec3 fdy = dFdy( vViewPosition ); @@ -1524,7 +1524,7 @@ IncidentLight directLight; tbn2[1] *= faceDirection; #endif #endif -vec3 nonPerturbedNormal = normal;`,Du=`#ifdef USE_NORMALMAP_OBJECTSPACE +vec3 nonPerturbedNormal = normal;`,Bu=`#ifdef USE_NORMALMAP_OBJECTSPACE normal = texture2D( normalMap, vNormalMapUv ).xyz * 2.0 - 1.0; #ifdef FLIP_SIDED normal = - normal; @@ -1539,25 +1539,25 @@ vec3 nonPerturbedNormal = normal;`,Du=`#ifdef USE_NORMALMAP_OBJECTSPACE normal = normalize( tbn * mapN ); #elif defined( USE_BUMPMAP ) normal = perturbNormalArb( - vViewPosition, normal, dHdxy_fwd(), faceDirection ); -#endif`,Uu=`#ifndef FLAT_SHADED +#endif`,zu=`#ifndef FLAT_SHADED varying vec3 vNormal; #ifdef USE_TANGENT varying vec3 vTangent; varying vec3 vBitangent; #endif -#endif`,Iu=`#ifndef FLAT_SHADED +#endif`,Hu=`#ifndef FLAT_SHADED varying vec3 vNormal; #ifdef USE_TANGENT varying vec3 vTangent; varying vec3 vBitangent; #endif -#endif`,Nu=`#ifndef FLAT_SHADED +#endif`,Gu=`#ifndef FLAT_SHADED vNormal = normalize( transformedNormal ); #ifdef USE_TANGENT vTangent = normalize( transformedTangent ); vBitangent = normalize( cross( vNormal, vTangent ) * tangent.w ); #endif -#endif`,Fu=`#ifdef USE_NORMALMAP +#endif`,ku=`#ifdef USE_NORMALMAP uniform sampler2D normalMap; uniform vec2 normalScale; #endif @@ -1579,13 +1579,13 @@ vec3 nonPerturbedNormal = normal;`,Du=`#ifdef USE_NORMALMAP_OBJECTSPACE float scale = ( det == 0.0 ) ? 0.0 : inversesqrt( det ); return mat3( T * scale, B * scale, N ); } -#endif`,Ou=`#ifdef USE_CLEARCOAT +#endif`,Vu=`#ifdef USE_CLEARCOAT vec3 clearcoatNormal = nonPerturbedNormal; -#endif`,Bu=`#ifdef USE_CLEARCOAT_NORMALMAP +#endif`,Wu=`#ifdef USE_CLEARCOAT_NORMALMAP vec3 clearcoatMapN = texture2D( clearcoatNormalMap, vClearcoatNormalMapUv ).xyz * 2.0 - 1.0; clearcoatMapN.xy *= clearcoatNormalScale; clearcoatNormal = normalize( tbn2 * clearcoatMapN ); -#endif`,zu=`#ifdef USE_CLEARCOATMAP +#endif`,Xu=`#ifdef USE_CLEARCOATMAP uniform sampler2D clearcoatMap; #endif #ifdef USE_CLEARCOAT_NORMALMAP @@ -1594,18 +1594,18 @@ vec3 nonPerturbedNormal = normal;`,Du=`#ifdef USE_NORMALMAP_OBJECTSPACE #endif #ifdef USE_CLEARCOAT_ROUGHNESSMAP uniform sampler2D clearcoatRoughnessMap; -#endif`,Hu=`#ifdef USE_IRIDESCENCEMAP +#endif`,Yu=`#ifdef USE_IRIDESCENCEMAP uniform sampler2D iridescenceMap; #endif #ifdef USE_IRIDESCENCE_THICKNESSMAP uniform sampler2D iridescenceThicknessMap; -#endif`,Gu=`#ifdef OPAQUE +#endif`,qu=`#ifdef OPAQUE diffuseColor.a = 1.0; #endif #ifdef USE_TRANSMISSION diffuseColor.a *= material.transmissionAlpha; #endif -gl_FragColor = vec4( outgoingLight, diffuseColor.a );`,Vu=`vec3 packNormalToRGB( const in vec3 normal ) { +gl_FragColor = vec4( outgoingLight, diffuseColor.a );`,Ku=`vec3 packNormalToRGB( const in vec3 normal ) { return normalize( normal ) * 0.5 + 0.5; } vec3 unpackRGBToNormal( const in vec3 rgb ) { @@ -1674,9 +1674,9 @@ float viewZToPerspectiveDepth( const in float viewZ, const in float near, const } float perspectiveDepthToViewZ( const in float depth, const in float near, const in float far ) { return ( near * far ) / ( ( far - near ) * depth - far ); -}`,ku=`#ifdef PREMULTIPLIED_ALPHA +}`,Zu=`#ifdef PREMULTIPLIED_ALPHA gl_FragColor.rgb *= gl_FragColor.a; -#endif`,Wu=`vec4 mvPosition = vec4( transformed, 1.0 ); +#endif`,ju=`vec4 mvPosition = vec4( transformed, 1.0 ); #ifdef USE_BATCHING mvPosition = batchingMatrix * mvPosition; #endif @@ -1684,22 +1684,22 @@ float perspectiveDepthToViewZ( const in float depth, const in float near, const mvPosition = instanceMatrix * mvPosition; #endif mvPosition = modelViewMatrix * mvPosition; -gl_Position = projectionMatrix * mvPosition;`,Xu=`#ifdef DITHERING +gl_Position = projectionMatrix * mvPosition;`,$u=`#ifdef DITHERING gl_FragColor.rgb = dithering( gl_FragColor.rgb ); -#endif`,Yu=`#ifdef DITHERING +#endif`,Ju=`#ifdef DITHERING vec3 dithering( vec3 color ) { float grid_position = rand( gl_FragCoord.xy ); vec3 dither_shift_RGB = vec3( 0.25 / 255.0, -0.25 / 255.0, 0.25 / 255.0 ); dither_shift_RGB = mix( 2.0 * dither_shift_RGB, -2.0 * dither_shift_RGB, grid_position ); return color + dither_shift_RGB; } -#endif`,qu=`float roughnessFactor = roughness; +#endif`,Qu=`float roughnessFactor = roughness; #ifdef USE_ROUGHNESSMAP vec4 texelRoughness = texture2D( roughnessMap, vRoughnessMapUv ); roughnessFactor *= texelRoughness.g; -#endif`,Ku=`#ifdef USE_ROUGHNESSMAP +#endif`,td=`#ifdef USE_ROUGHNESSMAP uniform sampler2D roughnessMap; -#endif`,Zu=`#if NUM_SPOT_LIGHT_COORDS > 0 +#endif`,ed=`#if NUM_SPOT_LIGHT_COORDS > 0 varying vec4 vSpotLightCoord[ NUM_SPOT_LIGHT_COORDS ]; #endif #if NUM_SPOT_LIGHT_MAPS > 0 @@ -1885,7 +1885,7 @@ gl_Position = projectionMatrix * mvPosition;`,Xu=`#ifdef DITHERING } return mix( 1.0, shadow, shadowIntensity ); } -#endif`,ju=`#if NUM_SPOT_LIGHT_COORDS > 0 +#endif`,nd=`#if NUM_SPOT_LIGHT_COORDS > 0 uniform mat4 spotLightMatrix[ NUM_SPOT_LIGHT_COORDS ]; varying vec4 vSpotLightCoord[ NUM_SPOT_LIGHT_COORDS ]; #endif @@ -1926,7 +1926,7 @@ gl_Position = projectionMatrix * mvPosition;`,Xu=`#ifdef DITHERING }; uniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ]; #endif -#endif`,$u=`#if ( defined( USE_SHADOWMAP ) && ( NUM_DIR_LIGHT_SHADOWS > 0 || NUM_POINT_LIGHT_SHADOWS > 0 ) ) || ( NUM_SPOT_LIGHT_COORDS > 0 ) +#endif`,id=`#if ( defined( USE_SHADOWMAP ) && ( NUM_DIR_LIGHT_SHADOWS > 0 || NUM_POINT_LIGHT_SHADOWS > 0 ) ) || ( NUM_SPOT_LIGHT_COORDS > 0 ) vec3 shadowWorldNormal = inverseTransformDirection( transformedNormal, viewMatrix ); vec4 shadowWorldPosition; #endif @@ -1958,7 +1958,7 @@ gl_Position = projectionMatrix * mvPosition;`,Xu=`#ifdef DITHERING vSpotLightCoord[ i ] = spotLightMatrix[ i ] * shadowWorldPosition; } #pragma unroll_loop_end -#endif`,Ju=`float getShadowMask() { +#endif`,rd=`float getShadowMask() { float shadow = 1.0; #ifdef USE_SHADOWMAP #if NUM_DIR_LIGHT_SHADOWS > 0 @@ -1990,12 +1990,12 @@ gl_Position = projectionMatrix * mvPosition;`,Xu=`#ifdef DITHERING #endif #endif return shadow; -}`,Qu=`#ifdef USE_SKINNING +}`,sd=`#ifdef USE_SKINNING mat4 boneMatX = getBoneMatrix( skinIndex.x ); mat4 boneMatY = getBoneMatrix( skinIndex.y ); mat4 boneMatZ = getBoneMatrix( skinIndex.z ); mat4 boneMatW = getBoneMatrix( skinIndex.w ); -#endif`,td=`#ifdef USE_SKINNING +#endif`,ad=`#ifdef USE_SKINNING uniform mat4 bindMatrix; uniform mat4 bindMatrixInverse; uniform highp sampler2D boneTexture; @@ -2010,7 +2010,7 @@ gl_Position = projectionMatrix * mvPosition;`,Xu=`#ifdef DITHERING vec4 v4 = texelFetch( boneTexture, ivec2( x + 3, y ), 0 ); return mat4( v1, v2, v3, v4 ); } -#endif`,ed=`#ifdef USE_SKINNING +#endif`,od=`#ifdef USE_SKINNING vec4 skinVertex = bindMatrix * vec4( transformed, 1.0 ); vec4 skinned = vec4( 0.0 ); skinned += boneMatX * skinVertex * skinWeight.x; @@ -2018,7 +2018,7 @@ gl_Position = projectionMatrix * mvPosition;`,Xu=`#ifdef DITHERING skinned += boneMatZ * skinVertex * skinWeight.z; skinned += boneMatW * skinVertex * skinWeight.w; transformed = ( bindMatrixInverse * skinned ).xyz; -#endif`,nd=`#ifdef USE_SKINNING +#endif`,ld=`#ifdef USE_SKINNING mat4 skinMatrix = mat4( 0.0 ); skinMatrix += skinWeight.x * boneMatX; skinMatrix += skinWeight.y * boneMatY; @@ -2029,17 +2029,17 @@ gl_Position = projectionMatrix * mvPosition;`,Xu=`#ifdef DITHERING #ifdef USE_TANGENT objectTangent = vec4( skinMatrix * vec4( objectTangent, 0.0 ) ).xyz; #endif -#endif`,id=`float specularStrength; +#endif`,cd=`float specularStrength; #ifdef USE_SPECULARMAP vec4 texelSpecular = texture2D( specularMap, vSpecularMapUv ); specularStrength = texelSpecular.r; #else specularStrength = 1.0; -#endif`,rd=`#ifdef USE_SPECULARMAP +#endif`,hd=`#ifdef USE_SPECULARMAP uniform sampler2D specularMap; -#endif`,sd=`#if defined( TONE_MAPPING ) +#endif`,ud=`#if defined( TONE_MAPPING ) gl_FragColor.rgb = toneMapping( gl_FragColor.rgb ); -#endif`,ad=`#ifndef saturate +#endif`,dd=`#ifndef saturate #define saturate( a ) clamp( a, 0.0, 1.0 ) #endif uniform float toneMappingExposure; @@ -2136,7 +2136,7 @@ vec3 NeutralToneMapping( vec3 color ) { float g = 1. - 1. / ( Desaturation * ( peak - newPeak ) + 1. ); return mix( color, vec3( newPeak ), g ); } -vec3 CustomToneMapping( vec3 color ) { return color; }`,od=`#ifdef USE_TRANSMISSION +vec3 CustomToneMapping( vec3 color ) { return color; }`,fd=`#ifdef USE_TRANSMISSION material.transmission = transmission; material.transmissionAlpha = 1.0; material.thickness = thickness; @@ -2157,7 +2157,7 @@ vec3 CustomToneMapping( vec3 color ) { return color; }`,od=`#ifdef USE_TRANSMISS material.attenuationColor, material.attenuationDistance ); material.transmissionAlpha = mix( material.transmissionAlpha, transmitted.a, material.transmission ); totalDiffuse = mix( totalDiffuse, transmitted.rgb, material.transmission ); -#endif`,ld=`#ifdef USE_TRANSMISSION +#endif`,pd=`#ifdef USE_TRANSMISSION uniform float transmission; uniform float thickness; uniform float attenuationDistance; @@ -2288,7 +2288,7 @@ vec3 CustomToneMapping( vec3 color ) { return color; }`,od=`#ifdef USE_TRANSMISS float transmittanceFactor = ( transmittance.r + transmittance.g + transmittance.b ) / 3.0; return vec4( ( 1.0 - F ) * attenuatedColor, 1.0 - ( 1.0 - transmittedLight.a ) * transmittanceFactor ); } -#endif`,cd=`#if defined( USE_UV ) || defined( USE_ANISOTROPY ) +#endif`,md=`#if defined( USE_UV ) || defined( USE_ANISOTROPY ) varying vec2 vUv; #endif #ifdef USE_MAP @@ -2358,7 +2358,7 @@ vec3 CustomToneMapping( vec3 color ) { return color; }`,od=`#ifdef USE_TRANSMISS #ifdef USE_THICKNESSMAP uniform mat3 thicknessMapTransform; varying vec2 vThicknessMapUv; -#endif`,hd=`#if defined( USE_UV ) || defined( USE_ANISOTROPY ) +#endif`,_d=`#if defined( USE_UV ) || defined( USE_ANISOTROPY ) varying vec2 vUv; #endif #ifdef USE_MAP @@ -2452,7 +2452,7 @@ vec3 CustomToneMapping( vec3 color ) { return color; }`,od=`#ifdef USE_TRANSMISS #ifdef USE_THICKNESSMAP uniform mat3 thicknessMapTransform; varying vec2 vThicknessMapUv; -#endif`,ud=`#if defined( USE_UV ) || defined( USE_ANISOTROPY ) +#endif`,gd=`#if defined( USE_UV ) || defined( USE_ANISOTROPY ) vUv = vec3( uv, 1 ).xy; #endif #ifdef USE_MAP @@ -2523,7 +2523,7 @@ vec3 CustomToneMapping( vec3 color ) { return color; }`,od=`#ifdef USE_TRANSMISS #endif #ifdef USE_THICKNESSMAP vThicknessMapUv = ( thicknessMapTransform * vec3( THICKNESSMAP_UV, 1 ) ).xy; -#endif`,dd=`#if defined( USE_ENVMAP ) || defined( DISTANCE ) || defined ( USE_SHADOWMAP ) || defined ( USE_TRANSMISSION ) || NUM_SPOT_LIGHT_COORDS > 0 +#endif`,vd=`#if defined( USE_ENVMAP ) || defined( DISTANCE ) || defined ( USE_SHADOWMAP ) || defined ( USE_TRANSMISSION ) || NUM_SPOT_LIGHT_COORDS > 0 vec4 worldPosition = vec4( transformed, 1.0 ); #ifdef USE_BATCHING worldPosition = batchingMatrix * worldPosition; @@ -2532,12 +2532,12 @@ vec3 CustomToneMapping( vec3 color ) { return color; }`,od=`#ifdef USE_TRANSMISS worldPosition = instanceMatrix * worldPosition; #endif worldPosition = modelMatrix * worldPosition; -#endif`;const fd=`varying vec2 vUv; +#endif`;const xd=`varying vec2 vUv; uniform mat3 uvTransform; void main() { vUv = ( uvTransform * vec3( uv, 1 ) ).xy; gl_Position = vec4( position.xy, 1.0, 1.0 ); -}`,pd=`uniform sampler2D t2D; +}`,Md=`uniform sampler2D t2D; uniform float backgroundIntensity; varying vec2 vUv; void main() { @@ -2549,14 +2549,14 @@ void main() { gl_FragColor = texColor; #include #include -}`,md=`varying vec3 vWorldDirection; +}`,Sd=`varying vec3 vWorldDirection; #include void main() { vWorldDirection = transformDirection( position, modelMatrix ); #include #include gl_Position.z = gl_Position.w; -}`,_d=`#ifdef ENVMAP_TYPE_CUBE +}`,Ed=`#ifdef ENVMAP_TYPE_CUBE uniform samplerCube envMap; #elif defined( ENVMAP_TYPE_CUBE_UV ) uniform sampler2D envMap; @@ -2579,14 +2579,14 @@ void main() { gl_FragColor = texColor; #include #include -}`,gd=`varying vec3 vWorldDirection; +}`,yd=`varying vec3 vWorldDirection; #include void main() { vWorldDirection = transformDirection( position, modelMatrix ); #include #include gl_Position.z = gl_Position.w; -}`,vd=`uniform samplerCube tCube; +}`,Td=`uniform samplerCube tCube; uniform float tFlip; uniform float opacity; varying vec3 vWorldDirection; @@ -2596,7 +2596,7 @@ void main() { gl_FragColor.a *= opacity; #include #include -}`,xd=`#include +}`,Ad=`#include #include #include #include @@ -2623,7 +2623,7 @@ void main() { #include #include vHighPrecisionZW = gl_Position.zw; -}`,Md=`#if DEPTH_PACKING == 3200 +}`,bd=`#if DEPTH_PACKING == 3200 uniform float opacity; #endif #include @@ -2657,7 +2657,7 @@ void main() { #elif DEPTH_PACKING == 3203 gl_FragColor = vec4( packDepthToRG( fragCoordZ ), 0.0, 1.0 ); #endif -}`,Sd=`#define DISTANCE +}`,wd=`#define DISTANCE varying vec3 vWorldPosition; #include #include @@ -2684,7 +2684,7 @@ void main() { #include #include vWorldPosition = worldPosition.xyz; -}`,Ed=`#define DISTANCE +}`,Rd=`#define DISTANCE uniform vec3 referencePosition; uniform float nearDistance; uniform float farDistance; @@ -2708,13 +2708,13 @@ void main () { dist = ( dist - nearDistance ) / ( farDistance - nearDistance ); dist = saturate( dist ); gl_FragColor = packDepthToRGBA( dist ); -}`,yd=`varying vec3 vWorldDirection; +}`,Cd=`varying vec3 vWorldDirection; #include void main() { vWorldDirection = transformDirection( position, modelMatrix ); #include #include -}`,Td=`uniform sampler2D tEquirect; +}`,Pd=`uniform sampler2D tEquirect; varying vec3 vWorldDirection; #include void main() { @@ -2723,7 +2723,7 @@ void main() { gl_FragColor = texture2D( tEquirect, sampleUV ); #include #include -}`,Ad=`uniform float scale; +}`,Ld=`uniform float scale; attribute float lineDistance; varying float vLineDistance; #include @@ -2745,7 +2745,7 @@ void main() { #include #include #include -}`,bd=`uniform vec3 diffuse; +}`,Dd=`uniform vec3 diffuse; uniform float opacity; uniform float dashSize; uniform float totalSize; @@ -2773,7 +2773,7 @@ void main() { #include #include #include -}`,wd=`#include +}`,Ud=`#include #include #include #include @@ -2805,7 +2805,7 @@ void main() { #include #include #include -}`,Rd=`uniform vec3 diffuse; +}`,Id=`uniform vec3 diffuse; uniform float opacity; #ifndef FLAT_SHADED varying vec3 vNormal; @@ -2853,7 +2853,7 @@ void main() { #include #include #include -}`,Cd=`#define LAMBERT +}`,Nd=`#define LAMBERT varying vec3 vViewPosition; #include #include @@ -2892,7 +2892,7 @@ void main() { #include #include #include -}`,Pd=`#define LAMBERT +}`,Fd=`#define LAMBERT uniform vec3 diffuse; uniform vec3 emissive; uniform float opacity; @@ -2949,7 +2949,7 @@ void main() { #include #include #include -}`,Ld=`#define MATCAP +}`,Od=`#define MATCAP varying vec3 vViewPosition; #include #include @@ -2983,7 +2983,7 @@ void main() { #include #include vViewPosition = - mvPosition.xyz; -}`,Dd=`#define MATCAP +}`,Bd=`#define MATCAP uniform vec3 diffuse; uniform float opacity; uniform sampler2D matcap; @@ -3029,7 +3029,7 @@ void main() { #include #include #include -}`,Ud=`#define NORMAL +}`,zd=`#define NORMAL #if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE ) varying vec3 vViewPosition; #endif @@ -3062,7 +3062,7 @@ void main() { #if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE ) vViewPosition = - mvPosition.xyz; #endif -}`,Id=`#define NORMAL +}`,Hd=`#define NORMAL uniform float opacity; #if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP_TANGENTSPACE ) varying vec3 vViewPosition; @@ -3084,7 +3084,7 @@ void main() { #ifdef OPAQUE gl_FragColor.a = 1.0; #endif -}`,Nd=`#define PHONG +}`,Gd=`#define PHONG varying vec3 vViewPosition; #include #include @@ -3123,7 +3123,7 @@ void main() { #include #include #include -}`,Fd=`#define PHONG +}`,kd=`#define PHONG uniform vec3 diffuse; uniform vec3 emissive; uniform vec3 specular; @@ -3182,7 +3182,7 @@ void main() { #include #include #include -}`,Od=`#define STANDARD +}`,Vd=`#define STANDARD varying vec3 vViewPosition; #ifdef USE_TRANSMISSION varying vec3 vWorldPosition; @@ -3225,7 +3225,7 @@ void main() { #ifdef USE_TRANSMISSION vWorldPosition = worldPosition.xyz; #endif -}`,Bd=`#define STANDARD +}`,Wd=`#define STANDARD #ifdef PHYSICAL #define IOR #define USE_SPECULAR @@ -3350,7 +3350,7 @@ void main() { #include #include #include -}`,zd=`#define TOON +}`,Xd=`#define TOON varying vec3 vViewPosition; #include #include @@ -3387,7 +3387,7 @@ void main() { #include #include #include -}`,Hd=`#define TOON +}`,Yd=`#define TOON uniform vec3 diffuse; uniform vec3 emissive; uniform float opacity; @@ -3440,7 +3440,7 @@ void main() { #include #include #include -}`,Gd=`uniform float size; +}`,qd=`uniform float size; uniform float scale; #include #include @@ -3471,7 +3471,7 @@ void main() { #include #include #include -}`,Vd=`uniform vec3 diffuse; +}`,Kd=`uniform vec3 diffuse; uniform float opacity; #include #include @@ -3496,7 +3496,7 @@ void main() { #include #include #include -}`,kd=`#include +}`,Zd=`#include #include #include #include @@ -3519,7 +3519,7 @@ void main() { #include #include #include -}`,Wd=`uniform vec3 color; +}`,jd=`uniform vec3 color; uniform float opacity; #include #include @@ -3535,7 +3535,7 @@ void main() { #include #include #include -}`,Xd=`uniform float rotation; +}`,$d=`uniform float rotation; uniform vec2 center; #include #include @@ -3559,7 +3559,7 @@ void main() { #include #include #include -}`,Yd=`uniform vec3 diffuse; +}`,Jd=`uniform vec3 diffuse; uniform float opacity; #include #include @@ -3584,7 +3584,7 @@ void main() { #include #include #include -}`,Pt={alphahash_fragment:ph,alphahash_pars_fragment:mh,alphamap_fragment:_h,alphamap_pars_fragment:gh,alphatest_fragment:vh,alphatest_pars_fragment:xh,aomap_fragment:Mh,aomap_pars_fragment:Sh,batching_pars_vertex:Eh,batching_vertex:yh,begin_vertex:Th,beginnormal_vertex:Ah,bsdfs:bh,iridescence_fragment:wh,bumpmap_pars_fragment:Rh,clipping_planes_fragment:Ch,clipping_planes_pars_fragment:Ph,clipping_planes_pars_vertex:Lh,clipping_planes_vertex:Dh,color_fragment:Uh,color_pars_fragment:Ih,color_pars_vertex:Nh,color_vertex:Fh,common:Oh,cube_uv_reflection_fragment:Bh,defaultnormal_vertex:zh,displacementmap_pars_vertex:Hh,displacementmap_vertex:Gh,emissivemap_fragment:Vh,emissivemap_pars_fragment:kh,colorspace_fragment:Wh,colorspace_pars_fragment:Xh,envmap_fragment:Yh,envmap_common_pars_fragment:qh,envmap_pars_fragment:Kh,envmap_pars_vertex:Zh,envmap_physical_pars_fragment:au,envmap_vertex:jh,fog_vertex:$h,fog_pars_vertex:Jh,fog_fragment:Qh,fog_pars_fragment:tu,gradientmap_pars_fragment:eu,lightmap_pars_fragment:nu,lights_lambert_fragment:iu,lights_lambert_pars_fragment:ru,lights_pars_begin:su,lights_toon_fragment:ou,lights_toon_pars_fragment:lu,lights_phong_fragment:cu,lights_phong_pars_fragment:hu,lights_physical_fragment:uu,lights_physical_pars_fragment:du,lights_fragment_begin:fu,lights_fragment_maps:pu,lights_fragment_end:mu,logdepthbuf_fragment:_u,logdepthbuf_pars_fragment:gu,logdepthbuf_pars_vertex:vu,logdepthbuf_vertex:xu,map_fragment:Mu,map_pars_fragment:Su,map_particle_fragment:Eu,map_particle_pars_fragment:yu,metalnessmap_fragment:Tu,metalnessmap_pars_fragment:Au,morphinstance_vertex:bu,morphcolor_vertex:wu,morphnormal_vertex:Ru,morphtarget_pars_vertex:Cu,morphtarget_vertex:Pu,normal_fragment_begin:Lu,normal_fragment_maps:Du,normal_pars_fragment:Uu,normal_pars_vertex:Iu,normal_vertex:Nu,normalmap_pars_fragment:Fu,clearcoat_normal_fragment_begin:Ou,clearcoat_normal_fragment_maps:Bu,clearcoat_pars_fragment:zu,iridescence_pars_fragment:Hu,opaque_fragment:Gu,packing:Vu,premultiplied_alpha_fragment:ku,project_vertex:Wu,dithering_fragment:Xu,dithering_pars_fragment:Yu,roughnessmap_fragment:qu,roughnessmap_pars_fragment:Ku,shadowmap_pars_fragment:Zu,shadowmap_pars_vertex:ju,shadowmap_vertex:$u,shadowmask_pars_fragment:Ju,skinbase_vertex:Qu,skinning_pars_vertex:td,skinning_vertex:ed,skinnormal_vertex:nd,specularmap_fragment:id,specularmap_pars_fragment:rd,tonemapping_fragment:sd,tonemapping_pars_fragment:ad,transmission_fragment:od,transmission_pars_fragment:ld,uv_pars_fragment:cd,uv_pars_vertex:hd,uv_vertex:ud,worldpos_vertex:dd,background_vert:fd,background_frag:pd,backgroundCube_vert:md,backgroundCube_frag:_d,cube_vert:gd,cube_frag:vd,depth_vert:xd,depth_frag:Md,distanceRGBA_vert:Sd,distanceRGBA_frag:Ed,equirect_vert:yd,equirect_frag:Td,linedashed_vert:Ad,linedashed_frag:bd,meshbasic_vert:wd,meshbasic_frag:Rd,meshlambert_vert:Cd,meshlambert_frag:Pd,meshmatcap_vert:Ld,meshmatcap_frag:Dd,meshnormal_vert:Ud,meshnormal_frag:Id,meshphong_vert:Nd,meshphong_frag:Fd,meshphysical_vert:Od,meshphysical_frag:Bd,meshtoon_vert:zd,meshtoon_frag:Hd,points_vert:Gd,points_frag:Vd,shadow_vert:kd,shadow_frag:Wd,sprite_vert:Xd,sprite_frag:Yd},et={common:{diffuse:{value:new zt(16777215)},opacity:{value:1},map:{value:null},mapTransform:{value:new Lt},alphaMap:{value:null},alphaMapTransform:{value:new Lt},alphaTest:{value:0}},specularmap:{specularMap:{value:null},specularMapTransform:{value:new Lt}},envmap:{envMap:{value:null},envMapRotation:{value:new Lt},flipEnvMap:{value:-1},reflectivity:{value:1},ior:{value:1.5},refractionRatio:{value:.98}},aomap:{aoMap:{value:null},aoMapIntensity:{value:1},aoMapTransform:{value:new Lt}},lightmap:{lightMap:{value:null},lightMapIntensity:{value:1},lightMapTransform:{value:new Lt}},bumpmap:{bumpMap:{value:null},bumpMapTransform:{value:new Lt},bumpScale:{value:1}},normalmap:{normalMap:{value:null},normalMapTransform:{value:new Lt},normalScale:{value:new wt(1,1)}},displacementmap:{displacementMap:{value:null},displacementMapTransform:{value:new Lt},displacementScale:{value:1},displacementBias:{value:0}},emissivemap:{emissiveMap:{value:null},emissiveMapTransform:{value:new Lt}},metalnessmap:{metalnessMap:{value:null},metalnessMapTransform:{value:new Lt}},roughnessmap:{roughnessMap:{value:null},roughnessMapTransform:{value:new Lt}},gradientmap:{gradientMap:{value:null}},fog:{fogDensity:{value:25e-5},fogNear:{value:1},fogFar:{value:2e3},fogColor:{value:new zt(16777215)}},lights:{ambientLightColor:{value:[]},lightProbe:{value:[]},directionalLights:{value:[],properties:{direction:{},color:{}}},directionalLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},directionalShadowMap:{value:[]},directionalShadowMatrix:{value:[]},spotLights:{value:[],properties:{color:{},position:{},direction:{},distance:{},coneCos:{},penumbraCos:{},decay:{}}},spotLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},spotLightMap:{value:[]},spotShadowMap:{value:[]},spotLightMatrix:{value:[]},pointLights:{value:[],properties:{color:{},position:{},decay:{},distance:{}}},pointLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{},shadowCameraNear:{},shadowCameraFar:{}}},pointShadowMap:{value:[]},pointShadowMatrix:{value:[]},hemisphereLights:{value:[],properties:{direction:{},skyColor:{},groundColor:{}}},rectAreaLights:{value:[],properties:{color:{},position:{},width:{},height:{}}},ltc_1:{value:null},ltc_2:{value:null}},points:{diffuse:{value:new zt(16777215)},opacity:{value:1},size:{value:1},scale:{value:1},map:{value:null},alphaMap:{value:null},alphaMapTransform:{value:new Lt},alphaTest:{value:0},uvTransform:{value:new Lt}},sprite:{diffuse:{value:new zt(16777215)},opacity:{value:1},center:{value:new wt(.5,.5)},rotation:{value:0},map:{value:null},mapTransform:{value:new Lt},alphaMap:{value:null},alphaMapTransform:{value:new Lt},alphaTest:{value:0}}},Ge={basic:{uniforms:me([et.common,et.specularmap,et.envmap,et.aomap,et.lightmap,et.fog]),vertexShader:Pt.meshbasic_vert,fragmentShader:Pt.meshbasic_frag},lambert:{uniforms:me([et.common,et.specularmap,et.envmap,et.aomap,et.lightmap,et.emissivemap,et.bumpmap,et.normalmap,et.displacementmap,et.fog,et.lights,{emissive:{value:new zt(0)}}]),vertexShader:Pt.meshlambert_vert,fragmentShader:Pt.meshlambert_frag},phong:{uniforms:me([et.common,et.specularmap,et.envmap,et.aomap,et.lightmap,et.emissivemap,et.bumpmap,et.normalmap,et.displacementmap,et.fog,et.lights,{emissive:{value:new zt(0)},specular:{value:new zt(1118481)},shininess:{value:30}}]),vertexShader:Pt.meshphong_vert,fragmentShader:Pt.meshphong_frag},standard:{uniforms:me([et.common,et.envmap,et.aomap,et.lightmap,et.emissivemap,et.bumpmap,et.normalmap,et.displacementmap,et.roughnessmap,et.metalnessmap,et.fog,et.lights,{emissive:{value:new zt(0)},roughness:{value:1},metalness:{value:0},envMapIntensity:{value:1}}]),vertexShader:Pt.meshphysical_vert,fragmentShader:Pt.meshphysical_frag},toon:{uniforms:me([et.common,et.aomap,et.lightmap,et.emissivemap,et.bumpmap,et.normalmap,et.displacementmap,et.gradientmap,et.fog,et.lights,{emissive:{value:new zt(0)}}]),vertexShader:Pt.meshtoon_vert,fragmentShader:Pt.meshtoon_frag},matcap:{uniforms:me([et.common,et.bumpmap,et.normalmap,et.displacementmap,et.fog,{matcap:{value:null}}]),vertexShader:Pt.meshmatcap_vert,fragmentShader:Pt.meshmatcap_frag},points:{uniforms:me([et.points,et.fog]),vertexShader:Pt.points_vert,fragmentShader:Pt.points_frag},dashed:{uniforms:me([et.common,et.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:Pt.linedashed_vert,fragmentShader:Pt.linedashed_frag},depth:{uniforms:me([et.common,et.displacementmap]),vertexShader:Pt.depth_vert,fragmentShader:Pt.depth_frag},normal:{uniforms:me([et.common,et.bumpmap,et.normalmap,et.displacementmap,{opacity:{value:1}}]),vertexShader:Pt.meshnormal_vert,fragmentShader:Pt.meshnormal_frag},sprite:{uniforms:me([et.sprite,et.fog]),vertexShader:Pt.sprite_vert,fragmentShader:Pt.sprite_frag},background:{uniforms:{uvTransform:{value:new Lt},t2D:{value:null},backgroundIntensity:{value:1}},vertexShader:Pt.background_vert,fragmentShader:Pt.background_frag},backgroundCube:{uniforms:{envMap:{value:null},flipEnvMap:{value:-1},backgroundBlurriness:{value:0},backgroundIntensity:{value:1},backgroundRotation:{value:new Lt}},vertexShader:Pt.backgroundCube_vert,fragmentShader:Pt.backgroundCube_frag},cube:{uniforms:{tCube:{value:null},tFlip:{value:-1},opacity:{value:1}},vertexShader:Pt.cube_vert,fragmentShader:Pt.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:Pt.equirect_vert,fragmentShader:Pt.equirect_frag},distanceRGBA:{uniforms:me([et.common,et.displacementmap,{referencePosition:{value:new L},nearDistance:{value:1},farDistance:{value:1e3}}]),vertexShader:Pt.distanceRGBA_vert,fragmentShader:Pt.distanceRGBA_frag},shadow:{uniforms:me([et.lights,et.fog,{color:{value:new zt(0)},opacity:{value:1}}]),vertexShader:Pt.shadow_vert,fragmentShader:Pt.shadow_frag}};Ge.physical={uniforms:me([Ge.standard.uniforms,{clearcoat:{value:0},clearcoatMap:{value:null},clearcoatMapTransform:{value:new Lt},clearcoatNormalMap:{value:null},clearcoatNormalMapTransform:{value:new Lt},clearcoatNormalScale:{value:new wt(1,1)},clearcoatRoughness:{value:0},clearcoatRoughnessMap:{value:null},clearcoatRoughnessMapTransform:{value:new Lt},dispersion:{value:0},iridescence:{value:0},iridescenceMap:{value:null},iridescenceMapTransform:{value:new Lt},iridescenceIOR:{value:1.3},iridescenceThicknessMinimum:{value:100},iridescenceThicknessMaximum:{value:400},iridescenceThicknessMap:{value:null},iridescenceThicknessMapTransform:{value:new Lt},sheen:{value:0},sheenColor:{value:new zt(0)},sheenColorMap:{value:null},sheenColorMapTransform:{value:new Lt},sheenRoughness:{value:1},sheenRoughnessMap:{value:null},sheenRoughnessMapTransform:{value:new Lt},transmission:{value:0},transmissionMap:{value:null},transmissionMapTransform:{value:new Lt},transmissionSamplerSize:{value:new wt},transmissionSamplerMap:{value:null},thickness:{value:0},thicknessMap:{value:null},thicknessMapTransform:{value:new Lt},attenuationDistance:{value:0},attenuationColor:{value:new zt(0)},specularColor:{value:new zt(1,1,1)},specularColorMap:{value:null},specularColorMapTransform:{value:new Lt},specularIntensity:{value:1},specularIntensityMap:{value:null},specularIntensityMapTransform:{value:new Lt},anisotropyVector:{value:new wt},anisotropyMap:{value:null},anisotropyMapTransform:{value:new Lt}}]),vertexShader:Pt.meshphysical_vert,fragmentShader:Pt.meshphysical_frag};const Ji={r:0,b:0,g:0},yn=new We,qd=new $t;function Kd(i,t,e,n,r,s,a){const o=new zt(0);let l=s===!0?0:1,c,u,f=null,p=0,m=null;function _(T){let E=T.isScene===!0?T.background:null;return E&&E.isTexture&&(E=(T.backgroundBlurriness>0?e:t).get(E)),E}function x(T){let E=!1;const A=_(T);A===null?h(o,l):A&&A.isColor&&(h(A,1),E=!0);const F=i.xr.getEnvironmentBlendMode();F==="additive"?n.buffers.color.setClear(0,0,0,1,a):F==="alpha-blend"&&n.buffers.color.setClear(0,0,0,0,a),(i.autoClear||E)&&(n.buffers.depth.setTest(!0),n.buffers.depth.setMask(!0),n.buffers.color.setMask(!0),i.clear(i.autoClearColor,i.autoClearDepth,i.autoClearStencil))}function d(T,E){const A=_(E);A&&(A.isCubeTexture||A.mapping===Sr)?(u===void 0&&(u=new Re(new Pi(1,1,1),new _n({name:"BackgroundCubeMaterial",uniforms:li(Ge.backgroundCube.uniforms),vertexShader:Ge.backgroundCube.vertexShader,fragmentShader:Ge.backgroundCube.fragmentShader,side:_e,depthTest:!1,depthWrite:!1,fog:!1})),u.geometry.deleteAttribute("normal"),u.geometry.deleteAttribute("uv"),u.onBeforeRender=function(F,R,b){this.matrixWorld.copyPosition(b.matrixWorld)},Object.defineProperty(u.material,"envMap",{get:function(){return this.uniforms.envMap.value}}),r.update(u)),yn.copy(E.backgroundRotation),yn.x*=-1,yn.y*=-1,yn.z*=-1,A.isCubeTexture&&A.isRenderTargetTexture===!1&&(yn.y*=-1,yn.z*=-1),u.material.uniforms.envMap.value=A,u.material.uniforms.flipEnvMap.value=A.isCubeTexture&&A.isRenderTargetTexture===!1?-1:1,u.material.uniforms.backgroundBlurriness.value=E.backgroundBlurriness,u.material.uniforms.backgroundIntensity.value=E.backgroundIntensity,u.material.uniforms.backgroundRotation.value.setFromMatrix4(qd.makeRotationFromEuler(yn)),u.material.toneMapped=Wt.getTransfer(A.colorSpace)!==te,(f!==A||p!==A.version||m!==i.toneMapping)&&(u.material.needsUpdate=!0,f=A,p=A.version,m=i.toneMapping),u.layers.enableAll(),T.unshift(u,u.geometry,u.material,0,0,null)):A&&A.isTexture&&(c===void 0&&(c=new Re(new Tr(2,2),new _n({name:"BackgroundMaterial",uniforms:li(Ge.background.uniforms),vertexShader:Ge.background.vertexShader,fragmentShader:Ge.background.fragmentShader,side:mn,depthTest:!1,depthWrite:!1,fog:!1})),c.geometry.deleteAttribute("normal"),Object.defineProperty(c.material,"map",{get:function(){return this.uniforms.t2D.value}}),r.update(c)),c.material.uniforms.t2D.value=A,c.material.uniforms.backgroundIntensity.value=E.backgroundIntensity,c.material.toneMapped=Wt.getTransfer(A.colorSpace)!==te,A.matrixAutoUpdate===!0&&A.updateMatrix(),c.material.uniforms.uvTransform.value.copy(A.matrix),(f!==A||p!==A.version||m!==i.toneMapping)&&(c.material.needsUpdate=!0,f=A,p=A.version,m=i.toneMapping),c.layers.enableAll(),T.unshift(c,c.geometry,c.material,0,0,null))}function h(T,E){T.getRGB(Ji,hl(i)),n.buffers.color.setClear(Ji.r,Ji.g,Ji.b,E,a)}return{getClearColor:function(){return o},setClearColor:function(T,E=1){o.set(T),l=E,h(o,l)},getClearAlpha:function(){return l},setClearAlpha:function(T){l=T,h(o,l)},render:x,addToRenderList:d}}function Zd(i,t){const e=i.getParameter(i.MAX_VERTEX_ATTRIBS),n={},r=p(null);let s=r,a=!1;function o(g,S,V,z,k){let Z=!1;const B=f(z,V,S);s!==B&&(s=B,c(s.object)),Z=m(g,z,V,k),Z&&_(g,z,V,k),k!==null&&t.update(k,i.ELEMENT_ARRAY_BUFFER),(Z||a)&&(a=!1,A(g,S,V,z),k!==null&&i.bindBuffer(i.ELEMENT_ARRAY_BUFFER,t.get(k).buffer))}function l(){return i.createVertexArray()}function c(g){return i.bindVertexArray(g)}function u(g){return i.deleteVertexArray(g)}function f(g,S,V){const z=V.wireframe===!0;let k=n[g.id];k===void 0&&(k={},n[g.id]=k);let Z=k[S.id];Z===void 0&&(Z={},k[S.id]=Z);let B=Z[z];return B===void 0&&(B=p(l()),Z[z]=B),B}function p(g){const S=[],V=[],z=[];for(let k=0;k=0){const lt=k[G];let _t=Z[G];if(_t===void 0&&(G==="instanceMatrix"&&g.instanceMatrix&&(_t=g.instanceMatrix),G==="instanceColor"&&g.instanceColor&&(_t=g.instanceColor)),lt===void 0||lt.attribute!==_t||_t&<.data!==_t.data)return!0;B++}return s.attributesNum!==B||s.index!==z}function _(g,S,V,z){const k={},Z=S.attributes;let B=0;const J=V.getAttributes();for(const G in J)if(J[G].location>=0){let lt=Z[G];lt===void 0&&(G==="instanceMatrix"&&g.instanceMatrix&&(lt=g.instanceMatrix),G==="instanceColor"&&g.instanceColor&&(lt=g.instanceColor));const _t={};_t.attribute=lt,lt&<.data&&(_t.data=lt.data),k[G]=_t,B++}s.attributes=k,s.attributesNum=B,s.index=z}function x(){const g=s.newAttributes;for(let S=0,V=g.length;S=0){let ot=k[J];if(ot===void 0&&(J==="instanceMatrix"&&g.instanceMatrix&&(ot=g.instanceMatrix),J==="instanceColor"&&g.instanceColor&&(ot=g.instanceColor)),ot!==void 0){const lt=ot.normalized,_t=ot.itemSize,Ht=t.get(ot);if(Ht===void 0)continue;const Xt=Ht.buffer,W=Ht.type,j=Ht.bytesPerElement,pt=W===i.INT||W===i.UNSIGNED_INT||ot.gpuType===ta;if(ot.isInterleavedBufferAttribute){const ct=ot.data,Rt=ct.stride,St=ot.offset;if(ct.isInstancedInterleavedBuffer){for(let It=0;It0&&i.getShaderPrecisionFormat(i.FRAGMENT_SHADER,i.HIGH_FLOAT).precision>0)return"highp";b="mediump"}return b==="mediump"&&i.getShaderPrecisionFormat(i.VERTEX_SHADER,i.MEDIUM_FLOAT).precision>0&&i.getShaderPrecisionFormat(i.FRAGMENT_SHADER,i.MEDIUM_FLOAT).precision>0?"mediump":"lowp"}let c=e.precision!==void 0?e.precision:"highp";const u=l(c);u!==c&&(console.warn("THREE.WebGLRenderer:",c,"not supported, using",u,"instead."),c=u);const f=e.logarithmicDepthBuffer===!0,p=e.reverseDepthBuffer===!0&&t.has("EXT_clip_control");if(p===!0){const b=t.get("EXT_clip_control");b.clipControlEXT(b.LOWER_LEFT_EXT,b.ZERO_TO_ONE_EXT)}const m=i.getParameter(i.MAX_TEXTURE_IMAGE_UNITS),_=i.getParameter(i.MAX_VERTEX_TEXTURE_IMAGE_UNITS),x=i.getParameter(i.MAX_TEXTURE_SIZE),d=i.getParameter(i.MAX_CUBE_MAP_TEXTURE_SIZE),h=i.getParameter(i.MAX_VERTEX_ATTRIBS),T=i.getParameter(i.MAX_VERTEX_UNIFORM_VECTORS),E=i.getParameter(i.MAX_VARYING_VECTORS),A=i.getParameter(i.MAX_FRAGMENT_UNIFORM_VECTORS),F=_>0,R=i.getParameter(i.MAX_SAMPLES);return{isWebGL2:!0,getMaxAnisotropy:s,getMaxPrecision:l,textureFormatReadable:a,textureTypeReadable:o,precision:c,logarithmicDepthBuffer:f,reverseDepthBuffer:p,maxTextures:m,maxVertexTextures:_,maxTextureSize:x,maxCubemapSize:d,maxAttributes:h,maxVertexUniforms:T,maxVaryings:E,maxFragmentUniforms:A,vertexTextures:F,maxSamples:R}}function Jd(i){const t=this;let e=null,n=0,r=!1,s=!1;const a=new un,o=new Lt,l={value:null,needsUpdate:!1};this.uniform=l,this.numPlanes=0,this.numIntersection=0,this.init=function(f,p){const m=f.length!==0||p||n!==0||r;return r=p,n=f.length,m},this.beginShadows=function(){s=!0,u(null)},this.endShadows=function(){s=!1},this.setGlobalState=function(f,p){e=u(f,p,0)},this.setState=function(f,p,m){const _=f.clippingPlanes,x=f.clipIntersection,d=f.clipShadows,h=i.get(f);if(!r||_===null||_.length===0||s&&!d)s?u(null):c();else{const T=s?0:n,E=T*4;let A=h.clippingState||null;l.value=A,A=u(_,p,E,m);for(let F=0;F!==E;++F)A[F]=e[F];h.clippingState=A,this.numIntersection=x?this.numPlanes:0,this.numPlanes+=T}};function c(){l.value!==e&&(l.value=e,l.needsUpdate=n>0),t.numPlanes=n,t.numIntersection=0}function u(f,p,m,_){const x=f!==null?f.length:0;let d=null;if(x!==0){if(d=l.value,_!==!0||d===null){const h=m+x*4,T=p.matrixWorldInverse;o.getNormalMatrix(T),(d===null||d.length0){const c=new hh(l.height);return c.fromEquirectangularTexture(i,a),t.set(a,c),a.addEventListener("dispose",r),e(c.texture,a.mapping)}else return null}}return a}function r(a){const o=a.target;o.removeEventListener("dispose",r);const l=t.get(o);l!==void 0&&(t.delete(o),l.dispose())}function s(){t=new WeakMap}return{get:n,dispose:s}}class tf extends ul{constructor(t=-1,e=1,n=1,r=-1,s=.1,a=2e3){super(),this.isOrthographicCamera=!0,this.type="OrthographicCamera",this.zoom=1,this.view=null,this.left=t,this.right=e,this.top=n,this.bottom=r,this.near=s,this.far=a,this.updateProjectionMatrix()}copy(t,e){return super.copy(t,e),this.left=t.left,this.right=t.right,this.top=t.top,this.bottom=t.bottom,this.near=t.near,this.far=t.far,this.zoom=t.zoom,this.view=t.view===null?null:Object.assign({},t.view),this}setViewOffset(t,e,n,r,s,a){this.view===null&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=n,this.view.offsetY=r,this.view.width=s,this.view.height=a,this.updateProjectionMatrix()}clearViewOffset(){this.view!==null&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const t=(this.right-this.left)/(2*this.zoom),e=(this.top-this.bottom)/(2*this.zoom),n=(this.right+this.left)/2,r=(this.top+this.bottom)/2;let s=n-t,a=n+t,o=r+e,l=r-e;if(this.view!==null&&this.view.enabled){const c=(this.right-this.left)/this.view.fullWidth/this.zoom,u=(this.top-this.bottom)/this.view.fullHeight/this.zoom;s+=c*this.view.offsetX,a=s+c*this.view.width,o-=u*this.view.offsetY,l=o-u*this.view.height}this.projectionMatrix.makeOrthographic(s,a,o,l,this.near,this.far,this.coordinateSystem),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){const e=super.toJSON(t);return e.object.zoom=this.zoom,e.object.left=this.left,e.object.right=this.right,e.object.top=this.top,e.object.bottom=this.bottom,e.object.near=this.near,e.object.far=this.far,this.view!==null&&(e.object.view=Object.assign({},this.view)),e}}const Jn=4,Za=[.125,.215,.35,.446,.526,.582],wn=20,Qr=new tf,ja=new zt;let ts=null,es=0,ns=0,is=!1;const An=(1+Math.sqrt(5))/2,Kn=1/An,$a=[new L(-An,Kn,0),new L(An,Kn,0),new L(-Kn,0,An),new L(Kn,0,An),new L(0,An,-Kn),new L(0,An,Kn),new L(-1,1,-1),new L(1,1,-1),new L(-1,1,1),new L(1,1,1)];class Ja{constructor(t){this._renderer=t,this._pingPongRenderTarget=null,this._lodMax=0,this._cubeSize=0,this._lodPlanes=[],this._sizeLods=[],this._sigmas=[],this._blurMaterial=null,this._cubemapMaterial=null,this._equirectMaterial=null,this._compileMaterial(this._blurMaterial)}fromScene(t,e=0,n=.1,r=100){ts=this._renderer.getRenderTarget(),es=this._renderer.getActiveCubeFace(),ns=this._renderer.getActiveMipmapLevel(),is=this._renderer.xr.enabled,this._renderer.xr.enabled=!1,this._setSize(256);const s=this._allocateTargets();return s.depthBuffer=!0,this._sceneToCubeUV(t,n,r,s),e>0&&this._blur(s,0,0,e),this._applyPMREM(s),this._cleanup(s),s}fromEquirectangular(t,e=null){return this._fromTexture(t,e)}fromCubemap(t,e=null){return this._fromTexture(t,e)}compileCubemapShader(){this._cubemapMaterial===null&&(this._cubemapMaterial=eo(),this._compileMaterial(this._cubemapMaterial))}compileEquirectangularShader(){this._equirectMaterial===null&&(this._equirectMaterial=to(),this._compileMaterial(this._equirectMaterial))}dispose(){this._dispose(),this._cubemapMaterial!==null&&this._cubemapMaterial.dispose(),this._equirectMaterial!==null&&this._equirectMaterial.dispose()}_setSize(t){this._lodMax=Math.floor(Math.log2(t)),this._cubeSize=Math.pow(2,this._lodMax)}_dispose(){this._blurMaterial!==null&&this._blurMaterial.dispose(),this._pingPongRenderTarget!==null&&this._pingPongRenderTarget.dispose();for(let t=0;t2?E:0,E,E),u.setRenderTarget(r),x&&u.render(_,o),u.render(t,o)}_.geometry.dispose(),_.material.dispose(),u.toneMapping=p,u.autoClear=f,t.background=d}_textureToCubeUV(t,e){const n=this._renderer,r=t.mapping===ri||t.mapping===si;r?(this._cubemapMaterial===null&&(this._cubemapMaterial=eo()),this._cubemapMaterial.uniforms.flipEnvMap.value=t.isRenderTargetTexture===!1?-1:1):this._equirectMaterial===null&&(this._equirectMaterial=to());const s=r?this._cubemapMaterial:this._equirectMaterial,a=new Re(this._lodPlanes[0],s),o=s.uniforms;o.envMap.value=t;const l=this._cubeSize;Qi(e,0,0,3*l,2*l),n.setRenderTarget(e),n.render(a,Qr)}_applyPMREM(t){const e=this._renderer,n=e.autoClear;e.autoClear=!1;const r=this._lodPlanes.length;for(let s=1;swn&&console.warn(`sigmaRadians, ${s}, is too large and will clip, as it requested ${d} samples when the maximum is set to ${wn}`);const h=[];let T=0;for(let b=0;bE-Jn?r-E+Jn:0),R=4*(this._cubeSize-A);Qi(e,F,R,3*A,2*A),l.setRenderTarget(e),l.render(f,Qr)}}function ef(i){const t=[],e=[],n=[];let r=i;const s=i-Jn+1+Za.length;for(let a=0;ai-Jn?l=Za[a-i+Jn-1]:a===0&&(l=0),n.push(l);const c=1/(o-2),u=-c,f=1+c,p=[u,u,f,u,f,f,u,u,f,f,u,f],m=6,_=6,x=3,d=2,h=1,T=new Float32Array(x*_*m),E=new Float32Array(d*_*m),A=new Float32Array(h*_*m);for(let R=0;R2?0:-1,tt=[b,O,0,b+2/3,O,0,b+2/3,O+1,0,b,O,0,b+2/3,O+1,0,b,O+1,0];T.set(tt,x*_*R),E.set(p,d*_*R);const g=[R,R,R,R,R,R];A.set(g,h*_*R)}const F=new ze;F.setAttribute("position",new ke(T,x)),F.setAttribute("uv",new ke(E,d)),F.setAttribute("faceIndex",new ke(A,h)),t.push(F),r>Jn&&r--}return{lodPlanes:t,sizeLods:e,sigmas:n}}function Qa(i,t,e){const n=new Ln(i,t,e);return n.texture.mapping=Sr,n.texture.name="PMREM.cubeUv",n.scissorTest=!0,n}function Qi(i,t,e,n,r){i.viewport.set(t,e,n,r),i.scissor.set(t,e,n,r)}function nf(i,t,e){const n=new Float32Array(wn),r=new L(0,1,0);return new _n({name:"SphericalGaussianBlur",defines:{n:wn,CUBEUV_TEXEL_WIDTH:1/t,CUBEUV_TEXEL_HEIGHT:1/e,CUBEUV_MAX_MIP:`${i}.0`},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:n},latitudinal:{value:!1},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:r}},vertexShader:ua(),fragmentShader:` +}`,Pt={alphahash_fragment:Mh,alphahash_pars_fragment:Sh,alphamap_fragment:Eh,alphamap_pars_fragment:yh,alphatest_fragment:Th,alphatest_pars_fragment:Ah,aomap_fragment:bh,aomap_pars_fragment:wh,batching_pars_vertex:Rh,batching_vertex:Ch,begin_vertex:Ph,beginnormal_vertex:Lh,bsdfs:Dh,iridescence_fragment:Uh,bumpmap_pars_fragment:Ih,clipping_planes_fragment:Nh,clipping_planes_pars_fragment:Fh,clipping_planes_pars_vertex:Oh,clipping_planes_vertex:Bh,color_fragment:zh,color_pars_fragment:Hh,color_pars_vertex:Gh,color_vertex:kh,common:Vh,cube_uv_reflection_fragment:Wh,defaultnormal_vertex:Xh,displacementmap_pars_vertex:Yh,displacementmap_vertex:qh,emissivemap_fragment:Kh,emissivemap_pars_fragment:Zh,colorspace_fragment:jh,colorspace_pars_fragment:$h,envmap_fragment:Jh,envmap_common_pars_fragment:Qh,envmap_pars_fragment:tu,envmap_pars_vertex:eu,envmap_physical_pars_fragment:du,envmap_vertex:nu,fog_vertex:iu,fog_pars_vertex:ru,fog_fragment:su,fog_pars_fragment:au,gradientmap_pars_fragment:ou,lightmap_pars_fragment:lu,lights_lambert_fragment:cu,lights_lambert_pars_fragment:hu,lights_pars_begin:uu,lights_toon_fragment:fu,lights_toon_pars_fragment:pu,lights_phong_fragment:mu,lights_phong_pars_fragment:_u,lights_physical_fragment:gu,lights_physical_pars_fragment:vu,lights_fragment_begin:xu,lights_fragment_maps:Mu,lights_fragment_end:Su,logdepthbuf_fragment:Eu,logdepthbuf_pars_fragment:yu,logdepthbuf_pars_vertex:Tu,logdepthbuf_vertex:Au,map_fragment:bu,map_pars_fragment:wu,map_particle_fragment:Ru,map_particle_pars_fragment:Cu,metalnessmap_fragment:Pu,metalnessmap_pars_fragment:Lu,morphinstance_vertex:Du,morphcolor_vertex:Uu,morphnormal_vertex:Iu,morphtarget_pars_vertex:Nu,morphtarget_vertex:Fu,normal_fragment_begin:Ou,normal_fragment_maps:Bu,normal_pars_fragment:zu,normal_pars_vertex:Hu,normal_vertex:Gu,normalmap_pars_fragment:ku,clearcoat_normal_fragment_begin:Vu,clearcoat_normal_fragment_maps:Wu,clearcoat_pars_fragment:Xu,iridescence_pars_fragment:Yu,opaque_fragment:qu,packing:Ku,premultiplied_alpha_fragment:Zu,project_vertex:ju,dithering_fragment:$u,dithering_pars_fragment:Ju,roughnessmap_fragment:Qu,roughnessmap_pars_fragment:td,shadowmap_pars_fragment:ed,shadowmap_pars_vertex:nd,shadowmap_vertex:id,shadowmask_pars_fragment:rd,skinbase_vertex:sd,skinning_pars_vertex:ad,skinning_vertex:od,skinnormal_vertex:ld,specularmap_fragment:cd,specularmap_pars_fragment:hd,tonemapping_fragment:ud,tonemapping_pars_fragment:dd,transmission_fragment:fd,transmission_pars_fragment:pd,uv_pars_fragment:md,uv_pars_vertex:_d,uv_vertex:gd,worldpos_vertex:vd,background_vert:xd,background_frag:Md,backgroundCube_vert:Sd,backgroundCube_frag:Ed,cube_vert:yd,cube_frag:Td,depth_vert:Ad,depth_frag:bd,distanceRGBA_vert:wd,distanceRGBA_frag:Rd,equirect_vert:Cd,equirect_frag:Pd,linedashed_vert:Ld,linedashed_frag:Dd,meshbasic_vert:Ud,meshbasic_frag:Id,meshlambert_vert:Nd,meshlambert_frag:Fd,meshmatcap_vert:Od,meshmatcap_frag:Bd,meshnormal_vert:zd,meshnormal_frag:Hd,meshphong_vert:Gd,meshphong_frag:kd,meshphysical_vert:Vd,meshphysical_frag:Wd,meshtoon_vert:Xd,meshtoon_frag:Yd,points_vert:qd,points_frag:Kd,shadow_vert:Zd,shadow_frag:jd,sprite_vert:$d,sprite_frag:Jd},et={common:{diffuse:{value:new zt(16777215)},opacity:{value:1},map:{value:null},mapTransform:{value:new Lt},alphaMap:{value:null},alphaMapTransform:{value:new Lt},alphaTest:{value:0}},specularmap:{specularMap:{value:null},specularMapTransform:{value:new Lt}},envmap:{envMap:{value:null},envMapRotation:{value:new Lt},flipEnvMap:{value:-1},reflectivity:{value:1},ior:{value:1.5},refractionRatio:{value:.98}},aomap:{aoMap:{value:null},aoMapIntensity:{value:1},aoMapTransform:{value:new Lt}},lightmap:{lightMap:{value:null},lightMapIntensity:{value:1},lightMapTransform:{value:new Lt}},bumpmap:{bumpMap:{value:null},bumpMapTransform:{value:new Lt},bumpScale:{value:1}},normalmap:{normalMap:{value:null},normalMapTransform:{value:new Lt},normalScale:{value:new wt(1,1)}},displacementmap:{displacementMap:{value:null},displacementMapTransform:{value:new Lt},displacementScale:{value:1},displacementBias:{value:0}},emissivemap:{emissiveMap:{value:null},emissiveMapTransform:{value:new Lt}},metalnessmap:{metalnessMap:{value:null},metalnessMapTransform:{value:new Lt}},roughnessmap:{roughnessMap:{value:null},roughnessMapTransform:{value:new Lt}},gradientmap:{gradientMap:{value:null}},fog:{fogDensity:{value:25e-5},fogNear:{value:1},fogFar:{value:2e3},fogColor:{value:new zt(16777215)}},lights:{ambientLightColor:{value:[]},lightProbe:{value:[]},directionalLights:{value:[],properties:{direction:{},color:{}}},directionalLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},directionalShadowMap:{value:[]},directionalShadowMatrix:{value:[]},spotLights:{value:[],properties:{color:{},position:{},direction:{},distance:{},coneCos:{},penumbraCos:{},decay:{}}},spotLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},spotLightMap:{value:[]},spotShadowMap:{value:[]},spotLightMatrix:{value:[]},pointLights:{value:[],properties:{color:{},position:{},decay:{},distance:{}}},pointLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{},shadowCameraNear:{},shadowCameraFar:{}}},pointShadowMap:{value:[]},pointShadowMatrix:{value:[]},hemisphereLights:{value:[],properties:{direction:{},skyColor:{},groundColor:{}}},rectAreaLights:{value:[],properties:{color:{},position:{},width:{},height:{}}},ltc_1:{value:null},ltc_2:{value:null}},points:{diffuse:{value:new zt(16777215)},opacity:{value:1},size:{value:1},scale:{value:1},map:{value:null},alphaMap:{value:null},alphaMapTransform:{value:new Lt},alphaTest:{value:0},uvTransform:{value:new Lt}},sprite:{diffuse:{value:new zt(16777215)},opacity:{value:1},center:{value:new wt(.5,.5)},rotation:{value:0},map:{value:null},mapTransform:{value:new Lt},alphaMap:{value:null},alphaMapTransform:{value:new Lt},alphaTest:{value:0}}},Ge={basic:{uniforms:me([et.common,et.specularmap,et.envmap,et.aomap,et.lightmap,et.fog]),vertexShader:Pt.meshbasic_vert,fragmentShader:Pt.meshbasic_frag},lambert:{uniforms:me([et.common,et.specularmap,et.envmap,et.aomap,et.lightmap,et.emissivemap,et.bumpmap,et.normalmap,et.displacementmap,et.fog,et.lights,{emissive:{value:new zt(0)}}]),vertexShader:Pt.meshlambert_vert,fragmentShader:Pt.meshlambert_frag},phong:{uniforms:me([et.common,et.specularmap,et.envmap,et.aomap,et.lightmap,et.emissivemap,et.bumpmap,et.normalmap,et.displacementmap,et.fog,et.lights,{emissive:{value:new zt(0)},specular:{value:new zt(1118481)},shininess:{value:30}}]),vertexShader:Pt.meshphong_vert,fragmentShader:Pt.meshphong_frag},standard:{uniforms:me([et.common,et.envmap,et.aomap,et.lightmap,et.emissivemap,et.bumpmap,et.normalmap,et.displacementmap,et.roughnessmap,et.metalnessmap,et.fog,et.lights,{emissive:{value:new zt(0)},roughness:{value:1},metalness:{value:0},envMapIntensity:{value:1}}]),vertexShader:Pt.meshphysical_vert,fragmentShader:Pt.meshphysical_frag},toon:{uniforms:me([et.common,et.aomap,et.lightmap,et.emissivemap,et.bumpmap,et.normalmap,et.displacementmap,et.gradientmap,et.fog,et.lights,{emissive:{value:new zt(0)}}]),vertexShader:Pt.meshtoon_vert,fragmentShader:Pt.meshtoon_frag},matcap:{uniforms:me([et.common,et.bumpmap,et.normalmap,et.displacementmap,et.fog,{matcap:{value:null}}]),vertexShader:Pt.meshmatcap_vert,fragmentShader:Pt.meshmatcap_frag},points:{uniforms:me([et.points,et.fog]),vertexShader:Pt.points_vert,fragmentShader:Pt.points_frag},dashed:{uniforms:me([et.common,et.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:Pt.linedashed_vert,fragmentShader:Pt.linedashed_frag},depth:{uniforms:me([et.common,et.displacementmap]),vertexShader:Pt.depth_vert,fragmentShader:Pt.depth_frag},normal:{uniforms:me([et.common,et.bumpmap,et.normalmap,et.displacementmap,{opacity:{value:1}}]),vertexShader:Pt.meshnormal_vert,fragmentShader:Pt.meshnormal_frag},sprite:{uniforms:me([et.sprite,et.fog]),vertexShader:Pt.sprite_vert,fragmentShader:Pt.sprite_frag},background:{uniforms:{uvTransform:{value:new Lt},t2D:{value:null},backgroundIntensity:{value:1}},vertexShader:Pt.background_vert,fragmentShader:Pt.background_frag},backgroundCube:{uniforms:{envMap:{value:null},flipEnvMap:{value:-1},backgroundBlurriness:{value:0},backgroundIntensity:{value:1},backgroundRotation:{value:new Lt}},vertexShader:Pt.backgroundCube_vert,fragmentShader:Pt.backgroundCube_frag},cube:{uniforms:{tCube:{value:null},tFlip:{value:-1},opacity:{value:1}},vertexShader:Pt.cube_vert,fragmentShader:Pt.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:Pt.equirect_vert,fragmentShader:Pt.equirect_frag},distanceRGBA:{uniforms:me([et.common,et.displacementmap,{referencePosition:{value:new L},nearDistance:{value:1},farDistance:{value:1e3}}]),vertexShader:Pt.distanceRGBA_vert,fragmentShader:Pt.distanceRGBA_frag},shadow:{uniforms:me([et.lights,et.fog,{color:{value:new zt(0)},opacity:{value:1}}]),vertexShader:Pt.shadow_vert,fragmentShader:Pt.shadow_frag}};Ge.physical={uniforms:me([Ge.standard.uniforms,{clearcoat:{value:0},clearcoatMap:{value:null},clearcoatMapTransform:{value:new Lt},clearcoatNormalMap:{value:null},clearcoatNormalMapTransform:{value:new Lt},clearcoatNormalScale:{value:new wt(1,1)},clearcoatRoughness:{value:0},clearcoatRoughnessMap:{value:null},clearcoatRoughnessMapTransform:{value:new Lt},dispersion:{value:0},iridescence:{value:0},iridescenceMap:{value:null},iridescenceMapTransform:{value:new Lt},iridescenceIOR:{value:1.3},iridescenceThicknessMinimum:{value:100},iridescenceThicknessMaximum:{value:400},iridescenceThicknessMap:{value:null},iridescenceThicknessMapTransform:{value:new Lt},sheen:{value:0},sheenColor:{value:new zt(0)},sheenColorMap:{value:null},sheenColorMapTransform:{value:new Lt},sheenRoughness:{value:1},sheenRoughnessMap:{value:null},sheenRoughnessMapTransform:{value:new Lt},transmission:{value:0},transmissionMap:{value:null},transmissionMapTransform:{value:new Lt},transmissionSamplerSize:{value:new wt},transmissionSamplerMap:{value:null},thickness:{value:0},thicknessMap:{value:null},thicknessMapTransform:{value:new Lt},attenuationDistance:{value:0},attenuationColor:{value:new zt(0)},specularColor:{value:new zt(1,1,1)},specularColorMap:{value:null},specularColorMapTransform:{value:new Lt},specularIntensity:{value:1},specularIntensityMap:{value:null},specularIntensityMapTransform:{value:new Lt},anisotropyVector:{value:new wt},anisotropyMap:{value:null},anisotropyMapTransform:{value:new Lt}}]),vertexShader:Pt.meshphysical_vert,fragmentShader:Pt.meshphysical_frag};const er={r:0,b:0,g:0},yn=new We,Qd=new $t;function tf(i,t,e,n,r,s,a){const o=new zt(0);let l=s===!0?0:1,c,u,f=null,p=0,m=null;function _(T){let E=T.isScene===!0?T.background:null;return E&&E.isTexture&&(E=(T.backgroundBlurriness>0?e:t).get(E)),E}function x(T){let E=!1;const A=_(T);A===null?h(o,l):A&&A.isColor&&(h(A,1),E=!0);const F=i.xr.getEnvironmentBlendMode();F==="additive"?n.buffers.color.setClear(0,0,0,1,a):F==="alpha-blend"&&n.buffers.color.setClear(0,0,0,0,a),(i.autoClear||E)&&(n.buffers.depth.setTest(!0),n.buffers.depth.setMask(!0),n.buffers.color.setMask(!0),i.clear(i.autoClearColor,i.autoClearDepth,i.autoClearStencil))}function d(T,E){const A=_(E);A&&(A.isCubeTexture||A.mapping===Tr)?(u===void 0&&(u=new Re(new Ui(1,1,1),new _n({name:"BackgroundCubeMaterial",uniforms:ci(Ge.backgroundCube.uniforms),vertexShader:Ge.backgroundCube.vertexShader,fragmentShader:Ge.backgroundCube.fragmentShader,side:_e,depthTest:!1,depthWrite:!1,fog:!1})),u.geometry.deleteAttribute("normal"),u.geometry.deleteAttribute("uv"),u.onBeforeRender=function(F,R,b){this.matrixWorld.copyPosition(b.matrixWorld)},Object.defineProperty(u.material,"envMap",{get:function(){return this.uniforms.envMap.value}}),r.update(u)),yn.copy(E.backgroundRotation),yn.x*=-1,yn.y*=-1,yn.z*=-1,A.isCubeTexture&&A.isRenderTargetTexture===!1&&(yn.y*=-1,yn.z*=-1),u.material.uniforms.envMap.value=A,u.material.uniforms.flipEnvMap.value=A.isCubeTexture&&A.isRenderTargetTexture===!1?-1:1,u.material.uniforms.backgroundBlurriness.value=E.backgroundBlurriness,u.material.uniforms.backgroundIntensity.value=E.backgroundIntensity,u.material.uniforms.backgroundRotation.value.setFromMatrix4(Qd.makeRotationFromEuler(yn)),u.material.toneMapped=Wt.getTransfer(A.colorSpace)!==te,(f!==A||p!==A.version||m!==i.toneMapping)&&(u.material.needsUpdate=!0,f=A,p=A.version,m=i.toneMapping),u.layers.enableAll(),T.unshift(u,u.geometry,u.material,0,0,null)):A&&A.isTexture&&(c===void 0&&(c=new Re(new wr(2,2),new _n({name:"BackgroundMaterial",uniforms:ci(Ge.background.uniforms),vertexShader:Ge.background.vertexShader,fragmentShader:Ge.background.fragmentShader,side:mn,depthTest:!1,depthWrite:!1,fog:!1})),c.geometry.deleteAttribute("normal"),Object.defineProperty(c.material,"map",{get:function(){return this.uniforms.t2D.value}}),r.update(c)),c.material.uniforms.t2D.value=A,c.material.uniforms.backgroundIntensity.value=E.backgroundIntensity,c.material.toneMapped=Wt.getTransfer(A.colorSpace)!==te,A.matrixAutoUpdate===!0&&A.updateMatrix(),c.material.uniforms.uvTransform.value.copy(A.matrix),(f!==A||p!==A.version||m!==i.toneMapping)&&(c.material.needsUpdate=!0,f=A,p=A.version,m=i.toneMapping),c.layers.enableAll(),T.unshift(c,c.geometry,c.material,0,0,null))}function h(T,E){T.getRGB(er,gl(i)),n.buffers.color.setClear(er.r,er.g,er.b,E,a)}return{getClearColor:function(){return o},setClearColor:function(T,E=1){o.set(T),l=E,h(o,l)},getClearAlpha:function(){return l},setClearAlpha:function(T){l=T,h(o,l)},render:x,addToRenderList:d}}function ef(i,t){const e=i.getParameter(i.MAX_VERTEX_ATTRIBS),n={},r=p(null);let s=r,a=!1;function o(g,S,k,z,V){let Z=!1;const B=f(z,k,S);s!==B&&(s=B,c(s.object)),Z=m(g,z,k,V),Z&&_(g,z,k,V),V!==null&&t.update(V,i.ELEMENT_ARRAY_BUFFER),(Z||a)&&(a=!1,A(g,S,k,z),V!==null&&i.bindBuffer(i.ELEMENT_ARRAY_BUFFER,t.get(V).buffer))}function l(){return i.createVertexArray()}function c(g){return i.bindVertexArray(g)}function u(g){return i.deleteVertexArray(g)}function f(g,S,k){const z=k.wireframe===!0;let V=n[g.id];V===void 0&&(V={},n[g.id]=V);let Z=V[S.id];Z===void 0&&(Z={},V[S.id]=Z);let B=Z[z];return B===void 0&&(B=p(l()),Z[z]=B),B}function p(g){const S=[],k=[],z=[];for(let V=0;V=0){const lt=V[G];let _t=Z[G];if(_t===void 0&&(G==="instanceMatrix"&&g.instanceMatrix&&(_t=g.instanceMatrix),G==="instanceColor"&&g.instanceColor&&(_t=g.instanceColor)),lt===void 0||lt.attribute!==_t||_t&<.data!==_t.data)return!0;B++}return s.attributesNum!==B||s.index!==z}function _(g,S,k,z){const V={},Z=S.attributes;let B=0;const J=k.getAttributes();for(const G in J)if(J[G].location>=0){let lt=Z[G];lt===void 0&&(G==="instanceMatrix"&&g.instanceMatrix&&(lt=g.instanceMatrix),G==="instanceColor"&&g.instanceColor&&(lt=g.instanceColor));const _t={};_t.attribute=lt,lt&<.data&&(_t.data=lt.data),V[G]=_t,B++}s.attributes=V,s.attributesNum=B,s.index=z}function x(){const g=s.newAttributes;for(let S=0,k=g.length;S=0){let ot=V[J];if(ot===void 0&&(J==="instanceMatrix"&&g.instanceMatrix&&(ot=g.instanceMatrix),J==="instanceColor"&&g.instanceColor&&(ot=g.instanceColor)),ot!==void 0){const lt=ot.normalized,_t=ot.itemSize,Ht=t.get(ot);if(Ht===void 0)continue;const Xt=Ht.buffer,W=Ht.type,j=Ht.bytesPerElement,pt=W===i.INT||W===i.UNSIGNED_INT||ot.gpuType===ia;if(ot.isInterleavedBufferAttribute){const ct=ot.data,Rt=ct.stride,St=ot.offset;if(ct.isInstancedInterleavedBuffer){for(let It=0;It0&&i.getShaderPrecisionFormat(i.FRAGMENT_SHADER,i.HIGH_FLOAT).precision>0)return"highp";b="mediump"}return b==="mediump"&&i.getShaderPrecisionFormat(i.VERTEX_SHADER,i.MEDIUM_FLOAT).precision>0&&i.getShaderPrecisionFormat(i.FRAGMENT_SHADER,i.MEDIUM_FLOAT).precision>0?"mediump":"lowp"}let c=e.precision!==void 0?e.precision:"highp";const u=l(c);u!==c&&(console.warn("THREE.WebGLRenderer:",c,"not supported, using",u,"instead."),c=u);const f=e.logarithmicDepthBuffer===!0,p=e.reverseDepthBuffer===!0&&t.has("EXT_clip_control");if(p===!0){const b=t.get("EXT_clip_control");b.clipControlEXT(b.LOWER_LEFT_EXT,b.ZERO_TO_ONE_EXT)}const m=i.getParameter(i.MAX_TEXTURE_IMAGE_UNITS),_=i.getParameter(i.MAX_VERTEX_TEXTURE_IMAGE_UNITS),x=i.getParameter(i.MAX_TEXTURE_SIZE),d=i.getParameter(i.MAX_CUBE_MAP_TEXTURE_SIZE),h=i.getParameter(i.MAX_VERTEX_ATTRIBS),T=i.getParameter(i.MAX_VERTEX_UNIFORM_VECTORS),E=i.getParameter(i.MAX_VARYING_VECTORS),A=i.getParameter(i.MAX_FRAGMENT_UNIFORM_VECTORS),F=_>0,R=i.getParameter(i.MAX_SAMPLES);return{isWebGL2:!0,getMaxAnisotropy:s,getMaxPrecision:l,textureFormatReadable:a,textureTypeReadable:o,precision:c,logarithmicDepthBuffer:f,reverseDepthBuffer:p,maxTextures:m,maxVertexTextures:_,maxTextureSize:x,maxCubemapSize:d,maxAttributes:h,maxVertexUniforms:T,maxVaryings:E,maxFragmentUniforms:A,vertexTextures:F,maxSamples:R}}function sf(i){const t=this;let e=null,n=0,r=!1,s=!1;const a=new un,o=new Lt,l={value:null,needsUpdate:!1};this.uniform=l,this.numPlanes=0,this.numIntersection=0,this.init=function(f,p){const m=f.length!==0||p||n!==0||r;return r=p,n=f.length,m},this.beginShadows=function(){s=!0,u(null)},this.endShadows=function(){s=!1},this.setGlobalState=function(f,p){e=u(f,p,0)},this.setState=function(f,p,m){const _=f.clippingPlanes,x=f.clipIntersection,d=f.clipShadows,h=i.get(f);if(!r||_===null||_.length===0||s&&!d)s?u(null):c();else{const T=s?0:n,E=T*4;let A=h.clippingState||null;l.value=A,A=u(_,p,E,m);for(let F=0;F!==E;++F)A[F]=e[F];h.clippingState=A,this.numIntersection=x?this.numPlanes:0,this.numPlanes+=T}};function c(){l.value!==e&&(l.value=e,l.needsUpdate=n>0),t.numPlanes=n,t.numIntersection=0}function u(f,p,m,_){const x=f!==null?f.length:0;let d=null;if(x!==0){if(d=l.value,_!==!0||d===null){const h=m+x*4,T=p.matrixWorldInverse;o.getNormalMatrix(T),(d===null||d.length0){const c=new _h(l.height);return c.fromEquirectangularTexture(i,a),t.set(a,c),a.addEventListener("dispose",r),e(c.texture,a.mapping)}else return null}}return a}function r(a){const o=a.target;o.removeEventListener("dispose",r);const l=t.get(o);l!==void 0&&(t.delete(o),l.dispose())}function s(){t=new WeakMap}return{get:n,dispose:s}}class of extends vl{constructor(t=-1,e=1,n=1,r=-1,s=.1,a=2e3){super(),this.isOrthographicCamera=!0,this.type="OrthographicCamera",this.zoom=1,this.view=null,this.left=t,this.right=e,this.top=n,this.bottom=r,this.near=s,this.far=a,this.updateProjectionMatrix()}copy(t,e){return super.copy(t,e),this.left=t.left,this.right=t.right,this.top=t.top,this.bottom=t.bottom,this.near=t.near,this.far=t.far,this.zoom=t.zoom,this.view=t.view===null?null:Object.assign({},t.view),this}setViewOffset(t,e,n,r,s,a){this.view===null&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=n,this.view.offsetY=r,this.view.width=s,this.view.height=a,this.updateProjectionMatrix()}clearViewOffset(){this.view!==null&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const t=(this.right-this.left)/(2*this.zoom),e=(this.top-this.bottom)/(2*this.zoom),n=(this.right+this.left)/2,r=(this.top+this.bottom)/2;let s=n-t,a=n+t,o=r+e,l=r-e;if(this.view!==null&&this.view.enabled){const c=(this.right-this.left)/this.view.fullWidth/this.zoom,u=(this.top-this.bottom)/this.view.fullHeight/this.zoom;s+=c*this.view.offsetX,a=s+c*this.view.width,o-=u*this.view.offsetY,l=o-u*this.view.height}this.projectionMatrix.makeOrthographic(s,a,o,l,this.near,this.far,this.coordinateSystem),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){const e=super.toJSON(t);return e.object.zoom=this.zoom,e.object.left=this.left,e.object.right=this.right,e.object.top=this.top,e.object.bottom=this.bottom,e.object.near=this.near,e.object.far=this.far,this.view!==null&&(e.object.view=Object.assign({},this.view)),e}}const Qn=4,eo=[.125,.215,.35,.446,.526,.582],wn=20,is=new of,no=new zt;let rs=null,ss=0,as=0,os=!1;const An=(1+Math.sqrt(5))/2,Kn=1/An,io=[new L(-An,Kn,0),new L(An,Kn,0),new L(-Kn,0,An),new L(Kn,0,An),new L(0,An,-Kn),new L(0,An,Kn),new L(-1,1,-1),new L(1,1,-1),new L(-1,1,1),new L(1,1,1)];class ro{constructor(t){this._renderer=t,this._pingPongRenderTarget=null,this._lodMax=0,this._cubeSize=0,this._lodPlanes=[],this._sizeLods=[],this._sigmas=[],this._blurMaterial=null,this._cubemapMaterial=null,this._equirectMaterial=null,this._compileMaterial(this._blurMaterial)}fromScene(t,e=0,n=.1,r=100){rs=this._renderer.getRenderTarget(),ss=this._renderer.getActiveCubeFace(),as=this._renderer.getActiveMipmapLevel(),os=this._renderer.xr.enabled,this._renderer.xr.enabled=!1,this._setSize(256);const s=this._allocateTargets();return s.depthBuffer=!0,this._sceneToCubeUV(t,n,r,s),e>0&&this._blur(s,0,0,e),this._applyPMREM(s),this._cleanup(s),s}fromEquirectangular(t,e=null){return this._fromTexture(t,e)}fromCubemap(t,e=null){return this._fromTexture(t,e)}compileCubemapShader(){this._cubemapMaterial===null&&(this._cubemapMaterial=oo(),this._compileMaterial(this._cubemapMaterial))}compileEquirectangularShader(){this._equirectMaterial===null&&(this._equirectMaterial=ao(),this._compileMaterial(this._equirectMaterial))}dispose(){this._dispose(),this._cubemapMaterial!==null&&this._cubemapMaterial.dispose(),this._equirectMaterial!==null&&this._equirectMaterial.dispose()}_setSize(t){this._lodMax=Math.floor(Math.log2(t)),this._cubeSize=Math.pow(2,this._lodMax)}_dispose(){this._blurMaterial!==null&&this._blurMaterial.dispose(),this._pingPongRenderTarget!==null&&this._pingPongRenderTarget.dispose();for(let t=0;t2?E:0,E,E),u.setRenderTarget(r),x&&u.render(_,o),u.render(t,o)}_.geometry.dispose(),_.material.dispose(),u.toneMapping=p,u.autoClear=f,t.background=d}_textureToCubeUV(t,e){const n=this._renderer,r=t.mapping===si||t.mapping===ai;r?(this._cubemapMaterial===null&&(this._cubemapMaterial=oo()),this._cubemapMaterial.uniforms.flipEnvMap.value=t.isRenderTargetTexture===!1?-1:1):this._equirectMaterial===null&&(this._equirectMaterial=ao());const s=r?this._cubemapMaterial:this._equirectMaterial,a=new Re(this._lodPlanes[0],s),o=s.uniforms;o.envMap.value=t;const l=this._cubeSize;nr(e,0,0,3*l,2*l),n.setRenderTarget(e),n.render(a,is)}_applyPMREM(t){const e=this._renderer,n=e.autoClear;e.autoClear=!1;const r=this._lodPlanes.length;for(let s=1;swn&&console.warn(`sigmaRadians, ${s}, is too large and will clip, as it requested ${d} samples when the maximum is set to ${wn}`);const h=[];let T=0;for(let b=0;bE-Qn?r-E+Qn:0),R=4*(this._cubeSize-A);nr(e,F,R,3*A,2*A),l.setRenderTarget(e),l.render(f,is)}}function lf(i){const t=[],e=[],n=[];let r=i;const s=i-Qn+1+eo.length;for(let a=0;ai-Qn?l=eo[a-i+Qn-1]:a===0&&(l=0),n.push(l);const c=1/(o-2),u=-c,f=1+c,p=[u,u,f,u,f,f,u,u,f,f,u,f],m=6,_=6,x=3,d=2,h=1,T=new Float32Array(x*_*m),E=new Float32Array(d*_*m),A=new Float32Array(h*_*m);for(let R=0;R2?0:-1,tt=[b,O,0,b+2/3,O,0,b+2/3,O+1,0,b,O,0,b+2/3,O+1,0,b,O+1,0];T.set(tt,x*_*R),E.set(p,d*_*R);const g=[R,R,R,R,R,R];A.set(g,h*_*R)}const F=new ze;F.setAttribute("position",new Ve(T,x)),F.setAttribute("uv",new Ve(E,d)),F.setAttribute("faceIndex",new Ve(A,h)),t.push(F),r>Qn&&r--}return{lodPlanes:t,sizeLods:e,sigmas:n}}function so(i,t,e){const n=new Ln(i,t,e);return n.texture.mapping=Tr,n.texture.name="PMREM.cubeUv",n.scissorTest=!0,n}function nr(i,t,e,n,r){i.viewport.set(t,e,n,r),i.scissor.set(t,e,n,r)}function cf(i,t,e){const n=new Float32Array(wn),r=new L(0,1,0);return new _n({name:"SphericalGaussianBlur",defines:{n:wn,CUBEUV_TEXEL_WIDTH:1/t,CUBEUV_TEXEL_HEIGHT:1/e,CUBEUV_MAX_MIP:`${i}.0`},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:n},latitudinal:{value:!1},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:r}},vertexShader:pa(),fragmentShader:` precision mediump float; precision mediump int; @@ -3644,7 +3644,7 @@ void main() { } } - `,blending:fn,depthTest:!1,depthWrite:!1})}function to(){return new _n({name:"EquirectangularToCubeUV",uniforms:{envMap:{value:null}},vertexShader:ua(),fragmentShader:` + `,blending:fn,depthTest:!1,depthWrite:!1})}function ao(){return new _n({name:"EquirectangularToCubeUV",uniforms:{envMap:{value:null}},vertexShader:pa(),fragmentShader:` precision mediump float; precision mediump int; @@ -3663,7 +3663,7 @@ void main() { gl_FragColor = vec4( texture2D ( envMap, uv ).rgb, 1.0 ); } - `,blending:fn,depthTest:!1,depthWrite:!1})}function eo(){return new _n({name:"CubemapToCubeUV",uniforms:{envMap:{value:null},flipEnvMap:{value:-1}},vertexShader:ua(),fragmentShader:` + `,blending:fn,depthTest:!1,depthWrite:!1})}function oo(){return new _n({name:"CubemapToCubeUV",uniforms:{envMap:{value:null},flipEnvMap:{value:-1}},vertexShader:pa(),fragmentShader:` precision mediump float; precision mediump int; @@ -3679,7 +3679,7 @@ void main() { gl_FragColor = textureCube( envMap, vec3( flipEnvMap * vOutputDirection.x, vOutputDirection.yz ) ); } - `,blending:fn,depthTest:!1,depthWrite:!1})}function ua(){return` + `,blending:fn,depthTest:!1,depthWrite:!1})}function pa(){return` precision mediump float; precision mediump int; @@ -3734,16 +3734,16 @@ void main() { gl_Position = vec4( position, 1.0 ); } - `}function rf(i){let t=new WeakMap,e=null;function n(o){if(o&&o.isTexture){const l=o.mapping,c=l===Es||l===ys,u=l===ri||l===si;if(c||u){let f=t.get(o);const p=f!==void 0?f.texture.pmremVersion:0;if(o.isRenderTargetTexture&&o.pmremVersion!==p)return e===null&&(e=new Ja(i)),f=c?e.fromEquirectangular(o,f):e.fromCubemap(o,f),f.texture.pmremVersion=o.pmremVersion,t.set(o,f),f.texture;if(f!==void 0)return f.texture;{const m=o.image;return c&&m&&m.height>0||u&&m&&r(m)?(e===null&&(e=new Ja(i)),f=c?e.fromEquirectangular(o):e.fromCubemap(o),f.texture.pmremVersion=o.pmremVersion,t.set(o,f),o.addEventListener("dispose",s),f.texture):null}}}return o}function r(o){let l=0;const c=6;for(let u=0;ut.maxTextureSize&&(F=Math.ceil(A/t.maxTextureSize),A=t.maxTextureSize);const R=new Float32Array(A*F*4*f),b=new sl(R,A,F,f);b.type=Qe,b.needsUpdate=!0;const O=E*4;for(let g=0;g0)return i;const r=t*e;let s=io[r];if(s===void 0&&(s=new Float32Array(r),io[r]=s),t!==0){n.toArray(s,0);for(let a=1,o=0;a!==t;++a)o+=e,i[a].toArray(s,o)}return s}function ae(i,t){if(i.length!==t.length)return!1;for(let e=0,n=i.length;e0||u&&m&&r(m)?(e===null&&(e=new ro(i)),f=c?e.fromEquirectangular(o):e.fromCubemap(o),f.texture.pmremVersion=o.pmremVersion,t.set(o,f),o.addEventListener("dispose",s),f.texture):null}}}return o}function r(o){let l=0;const c=6;for(let u=0;ut.maxTextureSize&&(F=Math.ceil(A/t.maxTextureSize),A=t.maxTextureSize);const R=new Float32Array(A*F*4*f),b=new dl(R,A,F,f);b.type=Qe,b.needsUpdate=!0;const O=E*4;for(let g=0;g0)return i;const r=t*e;let s=co[r];if(s===void 0&&(s=new Float32Array(r),co[r]=s),t!==0){n.toArray(s,0);for(let a=1,o=0;a!==t;++a)o+=e,i[a].toArray(s,o)}return s}function ae(i,t){if(i.length!==t.length)return!1;for(let e=0,n=i.length;e":" "} ${o}: ${e[a]}`)}return n.join(` -`)}function rp(i){const t=Wt.getPrimaries(Wt.workingColorSpace),e=Wt.getPrimaries(i);let n;switch(t===e?n="":t===_r&&e===mr?n="LinearDisplayP3ToLinearSRGB":t===mr&&e===_r&&(n="LinearSRGBToLinearDisplayP3"),i){case gn:case Er:return[n,"LinearTransferOETF"];case He:case aa:return[n,"sRGBTransferOETF"];default:return console.warn("THREE.WebGLProgram: Unsupported color space:",i),[n,"LinearTransferOETF"]}}function ho(i,t,e){const n=i.getShaderParameter(t,i.COMPILE_STATUS),r=i.getShaderInfoLog(t).trim();if(n&&r==="")return"";const s=/ERROR: 0:(\d+)/.exec(r);if(s){const a=parseInt(s[1]);return e.toUpperCase()+` +`)}function hp(i){const t=Wt.getPrimaries(Wt.workingColorSpace),e=Wt.getPrimaries(i);let n;switch(t===e?n="":t===xr&&e===vr?n="LinearDisplayP3ToLinearSRGB":t===vr&&e===xr&&(n="LinearSRGBToLinearDisplayP3"),i){case gn:case Ar:return[n,"LinearTransferOETF"];case He:case ca:return[n,"sRGBTransferOETF"];default:return console.warn("THREE.WebGLProgram: Unsupported color space:",i),[n,"LinearTransferOETF"]}}function go(i,t,e){const n=i.getShaderParameter(t,i.COMPILE_STATUS),r=i.getShaderInfoLog(t).trim();if(n&&r==="")return"";const s=/ERROR: 0:(\d+)/.exec(r);if(s){const a=parseInt(s[1]);return e.toUpperCase()+` `+r+` -`+ip(i.getShaderSource(t),a)}else return r}function sp(i,t){const e=rp(t);return`vec4 ${i}( vec4 value ) { return ${e[0]}( ${e[1]}( value ) ); }`}function ap(i,t){let e;switch(t){case rc:e="Linear";break;case sc:e="Reinhard";break;case ac:e="Cineon";break;case oc:e="ACESFilmic";break;case cc:e="AgX";break;case hc:e="Neutral";break;case lc:e="Custom";break;default:console.warn("THREE.WebGLProgram: Unsupported toneMapping:",t),e="Linear"}return"vec3 "+i+"( vec3 color ) { return "+e+"ToneMapping( color ); }"}const tr=new L;function op(){Wt.getLuminanceCoefficients(tr);const i=tr.x.toFixed(4),t=tr.y.toFixed(4),e=tr.z.toFixed(4);return["float luminance( const in vec3 rgb ) {",` const vec3 weights = vec3( ${i}, ${t}, ${e} );`," return dot( weights, rgb );","}"].join(` -`)}function lp(i){return[i.extensionClipCullDistance?"#extension GL_ANGLE_clip_cull_distance : require":"",i.extensionMultiDraw?"#extension GL_ANGLE_multi_draw : require":""].filter(Ei).join(` -`)}function cp(i){const t=[];for(const e in i){const n=i[e];n!==!1&&t.push("#define "+e+" "+n)}return t.join(` -`)}function hp(i,t){const e={},n=i.getProgramParameter(t,i.ACTIVE_ATTRIBUTES);for(let r=0;r/gm;function Js(i){return i.replace(up,fp)}const dp=new Map;function fp(i,t){let e=Pt[t];if(e===void 0){const n=dp.get(t);if(n!==void 0)e=Pt[n],console.warn('THREE.WebGLRenderer: Shader chunk "%s" has been deprecated. Use "%s" instead.',t,n);else throw new Error("Can not resolve #include <"+t+">")}return Js(e)}const pp=/#pragma unroll_loop_start\s+for\s*\(\s*int\s+i\s*=\s*(\d+)\s*;\s*i\s*<\s*(\d+)\s*;\s*i\s*\+\+\s*\)\s*{([\s\S]+?)}\s+#pragma unroll_loop_end/g;function po(i){return i.replace(pp,mp)}function mp(i,t,e,n){let r="";for(let s=parseInt(t);s/gm;function ea(i){return i.replace(gp,xp)}const vp=new Map;function xp(i,t){let e=Pt[t];if(e===void 0){const n=vp.get(t);if(n!==void 0)e=Pt[n],console.warn('THREE.WebGLRenderer: Shader chunk "%s" has been deprecated. Use "%s" instead.',t,n);else throw new Error("Can not resolve #include <"+t+">")}return ea(e)}const Mp=/#pragma unroll_loop_start\s+for\s*\(\s*int\s+i\s*=\s*(\d+)\s*;\s*i\s*<\s*(\d+)\s*;\s*i\s*\+\+\s*\)\s*{([\s\S]+?)}\s+#pragma unroll_loop_end/g;function Mo(i){return i.replace(Mp,Sp)}function Sp(i,t,e,n){let r="";for(let s=parseInt(t);s0&&(d+=` -`),h=["#define SHADER_TYPE "+e.shaderType,"#define SHADER_NAME "+e.shaderName,_].filter(Ei).join(` +`),h=["#define SHADER_TYPE "+e.shaderType,"#define SHADER_NAME "+e.shaderName,_].filter(Ai).join(` `),h.length>0&&(h+=` -`)):(d=[mo(e),"#define SHADER_TYPE "+e.shaderType,"#define SHADER_NAME "+e.shaderName,_,e.extensionClipCullDistance?"#define USE_CLIP_DISTANCE":"",e.batching?"#define USE_BATCHING":"",e.batchingColor?"#define USE_BATCHING_COLOR":"",e.instancing?"#define USE_INSTANCING":"",e.instancingColor?"#define USE_INSTANCING_COLOR":"",e.instancingMorph?"#define USE_INSTANCING_MORPH":"",e.useFog&&e.fog?"#define USE_FOG":"",e.useFog&&e.fogExp2?"#define FOG_EXP2":"",e.map?"#define USE_MAP":"",e.envMap?"#define USE_ENVMAP":"",e.envMap?"#define "+u:"",e.lightMap?"#define USE_LIGHTMAP":"",e.aoMap?"#define USE_AOMAP":"",e.bumpMap?"#define USE_BUMPMAP":"",e.normalMap?"#define USE_NORMALMAP":"",e.normalMapObjectSpace?"#define USE_NORMALMAP_OBJECTSPACE":"",e.normalMapTangentSpace?"#define USE_NORMALMAP_TANGENTSPACE":"",e.displacementMap?"#define USE_DISPLACEMENTMAP":"",e.emissiveMap?"#define USE_EMISSIVEMAP":"",e.anisotropy?"#define USE_ANISOTROPY":"",e.anisotropyMap?"#define USE_ANISOTROPYMAP":"",e.clearcoatMap?"#define USE_CLEARCOATMAP":"",e.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",e.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",e.iridescenceMap?"#define USE_IRIDESCENCEMAP":"",e.iridescenceThicknessMap?"#define USE_IRIDESCENCE_THICKNESSMAP":"",e.specularMap?"#define USE_SPECULARMAP":"",e.specularColorMap?"#define USE_SPECULAR_COLORMAP":"",e.specularIntensityMap?"#define USE_SPECULAR_INTENSITYMAP":"",e.roughnessMap?"#define USE_ROUGHNESSMAP":"",e.metalnessMap?"#define USE_METALNESSMAP":"",e.alphaMap?"#define USE_ALPHAMAP":"",e.alphaHash?"#define USE_ALPHAHASH":"",e.transmission?"#define USE_TRANSMISSION":"",e.transmissionMap?"#define USE_TRANSMISSIONMAP":"",e.thicknessMap?"#define USE_THICKNESSMAP":"",e.sheenColorMap?"#define USE_SHEEN_COLORMAP":"",e.sheenRoughnessMap?"#define USE_SHEEN_ROUGHNESSMAP":"",e.mapUv?"#define MAP_UV "+e.mapUv:"",e.alphaMapUv?"#define ALPHAMAP_UV "+e.alphaMapUv:"",e.lightMapUv?"#define LIGHTMAP_UV "+e.lightMapUv:"",e.aoMapUv?"#define AOMAP_UV "+e.aoMapUv:"",e.emissiveMapUv?"#define EMISSIVEMAP_UV "+e.emissiveMapUv:"",e.bumpMapUv?"#define BUMPMAP_UV "+e.bumpMapUv:"",e.normalMapUv?"#define NORMALMAP_UV "+e.normalMapUv:"",e.displacementMapUv?"#define DISPLACEMENTMAP_UV "+e.displacementMapUv:"",e.metalnessMapUv?"#define METALNESSMAP_UV "+e.metalnessMapUv:"",e.roughnessMapUv?"#define ROUGHNESSMAP_UV "+e.roughnessMapUv:"",e.anisotropyMapUv?"#define ANISOTROPYMAP_UV "+e.anisotropyMapUv:"",e.clearcoatMapUv?"#define CLEARCOATMAP_UV "+e.clearcoatMapUv:"",e.clearcoatNormalMapUv?"#define CLEARCOAT_NORMALMAP_UV "+e.clearcoatNormalMapUv:"",e.clearcoatRoughnessMapUv?"#define CLEARCOAT_ROUGHNESSMAP_UV "+e.clearcoatRoughnessMapUv:"",e.iridescenceMapUv?"#define IRIDESCENCEMAP_UV "+e.iridescenceMapUv:"",e.iridescenceThicknessMapUv?"#define IRIDESCENCE_THICKNESSMAP_UV "+e.iridescenceThicknessMapUv:"",e.sheenColorMapUv?"#define SHEEN_COLORMAP_UV "+e.sheenColorMapUv:"",e.sheenRoughnessMapUv?"#define SHEEN_ROUGHNESSMAP_UV "+e.sheenRoughnessMapUv:"",e.specularMapUv?"#define SPECULARMAP_UV "+e.specularMapUv:"",e.specularColorMapUv?"#define SPECULAR_COLORMAP_UV "+e.specularColorMapUv:"",e.specularIntensityMapUv?"#define SPECULAR_INTENSITYMAP_UV "+e.specularIntensityMapUv:"",e.transmissionMapUv?"#define TRANSMISSIONMAP_UV "+e.transmissionMapUv:"",e.thicknessMapUv?"#define THICKNESSMAP_UV "+e.thicknessMapUv:"",e.vertexTangents&&e.flatShading===!1?"#define USE_TANGENT":"",e.vertexColors?"#define USE_COLOR":"",e.vertexAlphas?"#define USE_COLOR_ALPHA":"",e.vertexUv1s?"#define USE_UV1":"",e.vertexUv2s?"#define USE_UV2":"",e.vertexUv3s?"#define USE_UV3":"",e.pointsUvs?"#define USE_POINTS_UV":"",e.flatShading?"#define FLAT_SHADED":"",e.skinning?"#define USE_SKINNING":"",e.morphTargets?"#define USE_MORPHTARGETS":"",e.morphNormals&&e.flatShading===!1?"#define USE_MORPHNORMALS":"",e.morphColors?"#define USE_MORPHCOLORS":"",e.morphTargetsCount>0?"#define MORPHTARGETS_TEXTURE_STRIDE "+e.morphTextureStride:"",e.morphTargetsCount>0?"#define MORPHTARGETS_COUNT "+e.morphTargetsCount:"",e.doubleSided?"#define DOUBLE_SIDED":"",e.flipSided?"#define FLIP_SIDED":"",e.shadowMapEnabled?"#define USE_SHADOWMAP":"",e.shadowMapEnabled?"#define "+l:"",e.sizeAttenuation?"#define USE_SIZEATTENUATION":"",e.numLightProbes>0?"#define USE_LIGHT_PROBES":"",e.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",e.reverseDepthBuffer?"#define USE_REVERSEDEPTHBUF":"","uniform mat4 modelMatrix;","uniform mat4 modelViewMatrix;","uniform mat4 projectionMatrix;","uniform mat4 viewMatrix;","uniform mat3 normalMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;","#ifdef USE_INSTANCING"," attribute mat4 instanceMatrix;","#endif","#ifdef USE_INSTANCING_COLOR"," attribute vec3 instanceColor;","#endif","#ifdef USE_INSTANCING_MORPH"," uniform sampler2D morphTexture;","#endif","attribute vec3 position;","attribute vec3 normal;","attribute vec2 uv;","#ifdef USE_UV1"," attribute vec2 uv1;","#endif","#ifdef USE_UV2"," attribute vec2 uv2;","#endif","#ifdef USE_UV3"," attribute vec2 uv3;","#endif","#ifdef USE_TANGENT"," attribute vec4 tangent;","#endif","#if defined( USE_COLOR_ALPHA )"," attribute vec4 color;","#elif defined( USE_COLOR )"," attribute vec3 color;","#endif","#ifdef USE_SKINNING"," attribute vec4 skinIndex;"," attribute vec4 skinWeight;","#endif",` -`].filter(Ei).join(` -`),h=[mo(e),"#define SHADER_TYPE "+e.shaderType,"#define SHADER_NAME "+e.shaderName,_,e.useFog&&e.fog?"#define USE_FOG":"",e.useFog&&e.fogExp2?"#define FOG_EXP2":"",e.alphaToCoverage?"#define ALPHA_TO_COVERAGE":"",e.map?"#define USE_MAP":"",e.matcap?"#define USE_MATCAP":"",e.envMap?"#define USE_ENVMAP":"",e.envMap?"#define "+c:"",e.envMap?"#define "+u:"",e.envMap?"#define "+f:"",p?"#define CUBEUV_TEXEL_WIDTH "+p.texelWidth:"",p?"#define CUBEUV_TEXEL_HEIGHT "+p.texelHeight:"",p?"#define CUBEUV_MAX_MIP "+p.maxMip+".0":"",e.lightMap?"#define USE_LIGHTMAP":"",e.aoMap?"#define USE_AOMAP":"",e.bumpMap?"#define USE_BUMPMAP":"",e.normalMap?"#define USE_NORMALMAP":"",e.normalMapObjectSpace?"#define USE_NORMALMAP_OBJECTSPACE":"",e.normalMapTangentSpace?"#define USE_NORMALMAP_TANGENTSPACE":"",e.emissiveMap?"#define USE_EMISSIVEMAP":"",e.anisotropy?"#define USE_ANISOTROPY":"",e.anisotropyMap?"#define USE_ANISOTROPYMAP":"",e.clearcoat?"#define USE_CLEARCOAT":"",e.clearcoatMap?"#define USE_CLEARCOATMAP":"",e.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",e.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",e.dispersion?"#define USE_DISPERSION":"",e.iridescence?"#define USE_IRIDESCENCE":"",e.iridescenceMap?"#define USE_IRIDESCENCEMAP":"",e.iridescenceThicknessMap?"#define USE_IRIDESCENCE_THICKNESSMAP":"",e.specularMap?"#define USE_SPECULARMAP":"",e.specularColorMap?"#define USE_SPECULAR_COLORMAP":"",e.specularIntensityMap?"#define USE_SPECULAR_INTENSITYMAP":"",e.roughnessMap?"#define USE_ROUGHNESSMAP":"",e.metalnessMap?"#define USE_METALNESSMAP":"",e.alphaMap?"#define USE_ALPHAMAP":"",e.alphaTest?"#define USE_ALPHATEST":"",e.alphaHash?"#define USE_ALPHAHASH":"",e.sheen?"#define USE_SHEEN":"",e.sheenColorMap?"#define USE_SHEEN_COLORMAP":"",e.sheenRoughnessMap?"#define USE_SHEEN_ROUGHNESSMAP":"",e.transmission?"#define USE_TRANSMISSION":"",e.transmissionMap?"#define USE_TRANSMISSIONMAP":"",e.thicknessMap?"#define USE_THICKNESSMAP":"",e.vertexTangents&&e.flatShading===!1?"#define USE_TANGENT":"",e.vertexColors||e.instancingColor||e.batchingColor?"#define USE_COLOR":"",e.vertexAlphas?"#define USE_COLOR_ALPHA":"",e.vertexUv1s?"#define USE_UV1":"",e.vertexUv2s?"#define USE_UV2":"",e.vertexUv3s?"#define USE_UV3":"",e.pointsUvs?"#define USE_POINTS_UV":"",e.gradientMap?"#define USE_GRADIENTMAP":"",e.flatShading?"#define FLAT_SHADED":"",e.doubleSided?"#define DOUBLE_SIDED":"",e.flipSided?"#define FLIP_SIDED":"",e.shadowMapEnabled?"#define USE_SHADOWMAP":"",e.shadowMapEnabled?"#define "+l:"",e.premultipliedAlpha?"#define PREMULTIPLIED_ALPHA":"",e.numLightProbes>0?"#define USE_LIGHT_PROBES":"",e.decodeVideoTexture?"#define DECODE_VIDEO_TEXTURE":"",e.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",e.reverseDepthBuffer?"#define USE_REVERSEDEPTHBUF":"","uniform mat4 viewMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;",e.toneMapping!==pn?"#define TONE_MAPPING":"",e.toneMapping!==pn?Pt.tonemapping_pars_fragment:"",e.toneMapping!==pn?ap("toneMapping",e.toneMapping):"",e.dithering?"#define DITHERING":"",e.opaque?"#define OPAQUE":"",Pt.colorspace_pars_fragment,sp("linearToOutputTexel",e.outputColorSpace),op(),e.useDepthPacking?"#define DEPTH_PACKING "+e.depthPacking:"",` -`].filter(Ei).join(` -`)),a=Js(a),a=uo(a,e),a=fo(a,e),o=Js(o),o=uo(o,e),o=fo(o,e),a=po(a),o=po(o),e.isRawShaderMaterial!==!0&&(T=`#version 300 es +`)):(d=[So(e),"#define SHADER_TYPE "+e.shaderType,"#define SHADER_NAME "+e.shaderName,_,e.extensionClipCullDistance?"#define USE_CLIP_DISTANCE":"",e.batching?"#define USE_BATCHING":"",e.batchingColor?"#define USE_BATCHING_COLOR":"",e.instancing?"#define USE_INSTANCING":"",e.instancingColor?"#define USE_INSTANCING_COLOR":"",e.instancingMorph?"#define USE_INSTANCING_MORPH":"",e.useFog&&e.fog?"#define USE_FOG":"",e.useFog&&e.fogExp2?"#define FOG_EXP2":"",e.map?"#define USE_MAP":"",e.envMap?"#define USE_ENVMAP":"",e.envMap?"#define "+u:"",e.lightMap?"#define USE_LIGHTMAP":"",e.aoMap?"#define USE_AOMAP":"",e.bumpMap?"#define USE_BUMPMAP":"",e.normalMap?"#define USE_NORMALMAP":"",e.normalMapObjectSpace?"#define USE_NORMALMAP_OBJECTSPACE":"",e.normalMapTangentSpace?"#define USE_NORMALMAP_TANGENTSPACE":"",e.displacementMap?"#define USE_DISPLACEMENTMAP":"",e.emissiveMap?"#define USE_EMISSIVEMAP":"",e.anisotropy?"#define USE_ANISOTROPY":"",e.anisotropyMap?"#define USE_ANISOTROPYMAP":"",e.clearcoatMap?"#define USE_CLEARCOATMAP":"",e.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",e.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",e.iridescenceMap?"#define USE_IRIDESCENCEMAP":"",e.iridescenceThicknessMap?"#define USE_IRIDESCENCE_THICKNESSMAP":"",e.specularMap?"#define USE_SPECULARMAP":"",e.specularColorMap?"#define USE_SPECULAR_COLORMAP":"",e.specularIntensityMap?"#define USE_SPECULAR_INTENSITYMAP":"",e.roughnessMap?"#define USE_ROUGHNESSMAP":"",e.metalnessMap?"#define USE_METALNESSMAP":"",e.alphaMap?"#define USE_ALPHAMAP":"",e.alphaHash?"#define USE_ALPHAHASH":"",e.transmission?"#define USE_TRANSMISSION":"",e.transmissionMap?"#define USE_TRANSMISSIONMAP":"",e.thicknessMap?"#define USE_THICKNESSMAP":"",e.sheenColorMap?"#define USE_SHEEN_COLORMAP":"",e.sheenRoughnessMap?"#define USE_SHEEN_ROUGHNESSMAP":"",e.mapUv?"#define MAP_UV "+e.mapUv:"",e.alphaMapUv?"#define ALPHAMAP_UV "+e.alphaMapUv:"",e.lightMapUv?"#define LIGHTMAP_UV "+e.lightMapUv:"",e.aoMapUv?"#define AOMAP_UV "+e.aoMapUv:"",e.emissiveMapUv?"#define EMISSIVEMAP_UV "+e.emissiveMapUv:"",e.bumpMapUv?"#define BUMPMAP_UV "+e.bumpMapUv:"",e.normalMapUv?"#define NORMALMAP_UV "+e.normalMapUv:"",e.displacementMapUv?"#define DISPLACEMENTMAP_UV "+e.displacementMapUv:"",e.metalnessMapUv?"#define METALNESSMAP_UV "+e.metalnessMapUv:"",e.roughnessMapUv?"#define ROUGHNESSMAP_UV "+e.roughnessMapUv:"",e.anisotropyMapUv?"#define ANISOTROPYMAP_UV "+e.anisotropyMapUv:"",e.clearcoatMapUv?"#define CLEARCOATMAP_UV "+e.clearcoatMapUv:"",e.clearcoatNormalMapUv?"#define CLEARCOAT_NORMALMAP_UV "+e.clearcoatNormalMapUv:"",e.clearcoatRoughnessMapUv?"#define CLEARCOAT_ROUGHNESSMAP_UV "+e.clearcoatRoughnessMapUv:"",e.iridescenceMapUv?"#define IRIDESCENCEMAP_UV "+e.iridescenceMapUv:"",e.iridescenceThicknessMapUv?"#define IRIDESCENCE_THICKNESSMAP_UV "+e.iridescenceThicknessMapUv:"",e.sheenColorMapUv?"#define SHEEN_COLORMAP_UV "+e.sheenColorMapUv:"",e.sheenRoughnessMapUv?"#define SHEEN_ROUGHNESSMAP_UV "+e.sheenRoughnessMapUv:"",e.specularMapUv?"#define SPECULARMAP_UV "+e.specularMapUv:"",e.specularColorMapUv?"#define SPECULAR_COLORMAP_UV "+e.specularColorMapUv:"",e.specularIntensityMapUv?"#define SPECULAR_INTENSITYMAP_UV "+e.specularIntensityMapUv:"",e.transmissionMapUv?"#define TRANSMISSIONMAP_UV "+e.transmissionMapUv:"",e.thicknessMapUv?"#define THICKNESSMAP_UV "+e.thicknessMapUv:"",e.vertexTangents&&e.flatShading===!1?"#define USE_TANGENT":"",e.vertexColors?"#define USE_COLOR":"",e.vertexAlphas?"#define USE_COLOR_ALPHA":"",e.vertexUv1s?"#define USE_UV1":"",e.vertexUv2s?"#define USE_UV2":"",e.vertexUv3s?"#define USE_UV3":"",e.pointsUvs?"#define USE_POINTS_UV":"",e.flatShading?"#define FLAT_SHADED":"",e.skinning?"#define USE_SKINNING":"",e.morphTargets?"#define USE_MORPHTARGETS":"",e.morphNormals&&e.flatShading===!1?"#define USE_MORPHNORMALS":"",e.morphColors?"#define USE_MORPHCOLORS":"",e.morphTargetsCount>0?"#define MORPHTARGETS_TEXTURE_STRIDE "+e.morphTextureStride:"",e.morphTargetsCount>0?"#define MORPHTARGETS_COUNT "+e.morphTargetsCount:"",e.doubleSided?"#define DOUBLE_SIDED":"",e.flipSided?"#define FLIP_SIDED":"",e.shadowMapEnabled?"#define USE_SHADOWMAP":"",e.shadowMapEnabled?"#define "+l:"",e.sizeAttenuation?"#define USE_SIZEATTENUATION":"",e.numLightProbes>0?"#define USE_LIGHT_PROBES":"",e.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",e.reverseDepthBuffer?"#define USE_REVERSEDEPTHBUF":"","uniform mat4 modelMatrix;","uniform mat4 modelViewMatrix;","uniform mat4 projectionMatrix;","uniform mat4 viewMatrix;","uniform mat3 normalMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;","#ifdef USE_INSTANCING"," attribute mat4 instanceMatrix;","#endif","#ifdef USE_INSTANCING_COLOR"," attribute vec3 instanceColor;","#endif","#ifdef USE_INSTANCING_MORPH"," uniform sampler2D morphTexture;","#endif","attribute vec3 position;","attribute vec3 normal;","attribute vec2 uv;","#ifdef USE_UV1"," attribute vec2 uv1;","#endif","#ifdef USE_UV2"," attribute vec2 uv2;","#endif","#ifdef USE_UV3"," attribute vec2 uv3;","#endif","#ifdef USE_TANGENT"," attribute vec4 tangent;","#endif","#if defined( USE_COLOR_ALPHA )"," attribute vec4 color;","#elif defined( USE_COLOR )"," attribute vec3 color;","#endif","#ifdef USE_SKINNING"," attribute vec4 skinIndex;"," attribute vec4 skinWeight;","#endif",` +`].filter(Ai).join(` +`),h=[So(e),"#define SHADER_TYPE "+e.shaderType,"#define SHADER_NAME "+e.shaderName,_,e.useFog&&e.fog?"#define USE_FOG":"",e.useFog&&e.fogExp2?"#define FOG_EXP2":"",e.alphaToCoverage?"#define ALPHA_TO_COVERAGE":"",e.map?"#define USE_MAP":"",e.matcap?"#define USE_MATCAP":"",e.envMap?"#define USE_ENVMAP":"",e.envMap?"#define "+c:"",e.envMap?"#define "+u:"",e.envMap?"#define "+f:"",p?"#define CUBEUV_TEXEL_WIDTH "+p.texelWidth:"",p?"#define CUBEUV_TEXEL_HEIGHT "+p.texelHeight:"",p?"#define CUBEUV_MAX_MIP "+p.maxMip+".0":"",e.lightMap?"#define USE_LIGHTMAP":"",e.aoMap?"#define USE_AOMAP":"",e.bumpMap?"#define USE_BUMPMAP":"",e.normalMap?"#define USE_NORMALMAP":"",e.normalMapObjectSpace?"#define USE_NORMALMAP_OBJECTSPACE":"",e.normalMapTangentSpace?"#define USE_NORMALMAP_TANGENTSPACE":"",e.emissiveMap?"#define USE_EMISSIVEMAP":"",e.anisotropy?"#define USE_ANISOTROPY":"",e.anisotropyMap?"#define USE_ANISOTROPYMAP":"",e.clearcoat?"#define USE_CLEARCOAT":"",e.clearcoatMap?"#define USE_CLEARCOATMAP":"",e.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",e.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",e.dispersion?"#define USE_DISPERSION":"",e.iridescence?"#define USE_IRIDESCENCE":"",e.iridescenceMap?"#define USE_IRIDESCENCEMAP":"",e.iridescenceThicknessMap?"#define USE_IRIDESCENCE_THICKNESSMAP":"",e.specularMap?"#define USE_SPECULARMAP":"",e.specularColorMap?"#define USE_SPECULAR_COLORMAP":"",e.specularIntensityMap?"#define USE_SPECULAR_INTENSITYMAP":"",e.roughnessMap?"#define USE_ROUGHNESSMAP":"",e.metalnessMap?"#define USE_METALNESSMAP":"",e.alphaMap?"#define USE_ALPHAMAP":"",e.alphaTest?"#define USE_ALPHATEST":"",e.alphaHash?"#define USE_ALPHAHASH":"",e.sheen?"#define USE_SHEEN":"",e.sheenColorMap?"#define USE_SHEEN_COLORMAP":"",e.sheenRoughnessMap?"#define USE_SHEEN_ROUGHNESSMAP":"",e.transmission?"#define USE_TRANSMISSION":"",e.transmissionMap?"#define USE_TRANSMISSIONMAP":"",e.thicknessMap?"#define USE_THICKNESSMAP":"",e.vertexTangents&&e.flatShading===!1?"#define USE_TANGENT":"",e.vertexColors||e.instancingColor||e.batchingColor?"#define USE_COLOR":"",e.vertexAlphas?"#define USE_COLOR_ALPHA":"",e.vertexUv1s?"#define USE_UV1":"",e.vertexUv2s?"#define USE_UV2":"",e.vertexUv3s?"#define USE_UV3":"",e.pointsUvs?"#define USE_POINTS_UV":"",e.gradientMap?"#define USE_GRADIENTMAP":"",e.flatShading?"#define FLAT_SHADED":"",e.doubleSided?"#define DOUBLE_SIDED":"",e.flipSided?"#define FLIP_SIDED":"",e.shadowMapEnabled?"#define USE_SHADOWMAP":"",e.shadowMapEnabled?"#define "+l:"",e.premultipliedAlpha?"#define PREMULTIPLIED_ALPHA":"",e.numLightProbes>0?"#define USE_LIGHT_PROBES":"",e.decodeVideoTexture?"#define DECODE_VIDEO_TEXTURE":"",e.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",e.reverseDepthBuffer?"#define USE_REVERSEDEPTHBUF":"","uniform mat4 viewMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;",e.toneMapping!==pn?"#define TONE_MAPPING":"",e.toneMapping!==pn?Pt.tonemapping_pars_fragment:"",e.toneMapping!==pn?dp("toneMapping",e.toneMapping):"",e.dithering?"#define DITHERING":"",e.opaque?"#define OPAQUE":"",Pt.colorspace_pars_fragment,up("linearToOutputTexel",e.outputColorSpace),fp(),e.useDepthPacking?"#define DEPTH_PACKING "+e.depthPacking:"",` +`].filter(Ai).join(` +`)),a=ea(a),a=vo(a,e),a=xo(a,e),o=ea(o),o=vo(o,e),o=xo(o,e),a=Mo(a),o=Mo(o),e.isRawShaderMaterial!==!0&&(T=`#version 300 es `,d=[m,"#define attribute in","#define varying out","#define texture2D texture"].join(` `)+` -`+d,h=["#define varying in",e.glslVersion===Pa?"":"layout(location = 0) out highp vec4 pc_fragColor;",e.glslVersion===Pa?"":"#define gl_FragColor pc_fragColor","#define gl_FragDepthEXT gl_FragDepth","#define texture2D texture","#define textureCube texture","#define texture2DProj textureProj","#define texture2DLodEXT textureLod","#define texture2DProjLodEXT textureProjLod","#define textureCubeLodEXT textureLod","#define texture2DGradEXT textureGrad","#define texture2DProjGradEXT textureProjGrad","#define textureCubeGradEXT textureGrad"].join(` +`+d,h=["#define varying in",e.glslVersion===Fa?"":"layout(location = 0) out highp vec4 pc_fragColor;",e.glslVersion===Fa?"":"#define gl_FragColor pc_fragColor","#define gl_FragDepthEXT gl_FragDepth","#define texture2D texture","#define textureCube texture","#define texture2DProj textureProj","#define texture2DLodEXT textureLod","#define texture2DProjLodEXT textureProjLod","#define textureCubeLodEXT textureLod","#define texture2DGradEXT textureGrad","#define texture2DProjGradEXT textureProjGrad","#define textureCubeGradEXT textureGrad"].join(` `)+` -`+h);const E=T+d+a,A=T+h+o,F=co(r,r.VERTEX_SHADER,E),R=co(r,r.FRAGMENT_SHADER,A);r.attachShader(x,F),r.attachShader(x,R),e.index0AttributeName!==void 0?r.bindAttribLocation(x,0,e.index0AttributeName):e.morphTargets===!0&&r.bindAttribLocation(x,0,"position"),r.linkProgram(x);function b(S){if(i.debug.checkShaderErrors){const V=r.getProgramInfoLog(x).trim(),z=r.getShaderInfoLog(F).trim(),k=r.getShaderInfoLog(R).trim();let Z=!0,B=!0;if(r.getProgramParameter(x,r.LINK_STATUS)===!1)if(Z=!1,typeof i.debug.onShaderError=="function")i.debug.onShaderError(r,x,F,R);else{const J=ho(r,F,"vertex"),G=ho(r,R,"fragment");console.error("THREE.WebGLProgram: Shader Error "+r.getError()+" - VALIDATE_STATUS "+r.getProgramParameter(x,r.VALIDATE_STATUS)+` +`+h);const E=T+d+a,A=T+h+o,F=_o(r,r.VERTEX_SHADER,E),R=_o(r,r.FRAGMENT_SHADER,A);r.attachShader(x,F),r.attachShader(x,R),e.index0AttributeName!==void 0?r.bindAttribLocation(x,0,e.index0AttributeName):e.morphTargets===!0&&r.bindAttribLocation(x,0,"position"),r.linkProgram(x);function b(S){if(i.debug.checkShaderErrors){const k=r.getProgramInfoLog(x).trim(),z=r.getShaderInfoLog(F).trim(),V=r.getShaderInfoLog(R).trim();let Z=!0,B=!0;if(r.getProgramParameter(x,r.LINK_STATUS)===!1)if(Z=!1,typeof i.debug.onShaderError=="function")i.debug.onShaderError(r,x,F,R);else{const J=go(r,F,"vertex"),G=go(r,R,"fragment");console.error("THREE.WebGLProgram: Shader Error "+r.getError()+" - VALIDATE_STATUS "+r.getProgramParameter(x,r.VALIDATE_STATUS)+` Material Name: `+S.name+` Material Type: `+S.type+` -Program Info Log: `+V+` +Program Info Log: `+k+` `+J+` -`+G)}else V!==""?console.warn("THREE.WebGLProgram: Program Info Log:",V):(z===""||k==="")&&(B=!1);B&&(S.diagnostics={runnable:Z,programLog:V,vertexShader:{log:z,prefix:d},fragmentShader:{log:k,prefix:h}})}r.deleteShader(F),r.deleteShader(R),O=new fr(r,x),tt=hp(r,x)}let O;this.getUniforms=function(){return O===void 0&&b(this),O};let tt;this.getAttributes=function(){return tt===void 0&&b(this),tt};let g=e.rendererExtensionParallelShaderCompile===!1;return this.isReady=function(){return g===!1&&(g=r.getProgramParameter(x,ep)),g},this.destroy=function(){n.releaseStatesOfProgram(this),r.deleteProgram(x),this.program=void 0},this.type=e.shaderType,this.name=e.shaderName,this.id=np++,this.cacheKey=t,this.usedTimes=1,this.program=x,this.vertexShader=F,this.fragmentShader=R,this}let Ep=0;class yp{constructor(){this.shaderCache=new Map,this.materialCache=new Map}update(t){const e=t.vertexShader,n=t.fragmentShader,r=this._getShaderStage(e),s=this._getShaderStage(n),a=this._getShaderCacheForMaterial(t);return a.has(r)===!1&&(a.add(r),r.usedTimes++),a.has(s)===!1&&(a.add(s),s.usedTimes++),this}remove(t){const e=this.materialCache.get(t);for(const n of e)n.usedTimes--,n.usedTimes===0&&this.shaderCache.delete(n.code);return this.materialCache.delete(t),this}getVertexShaderID(t){return this._getShaderStage(t.vertexShader).id}getFragmentShaderID(t){return this._getShaderStage(t.fragmentShader).id}dispose(){this.shaderCache.clear(),this.materialCache.clear()}_getShaderCacheForMaterial(t){const e=this.materialCache;let n=e.get(t);return n===void 0&&(n=new Set,e.set(t,n)),n}_getShaderStage(t){const e=this.shaderCache;let n=e.get(t);return n===void 0&&(n=new Tp(t),e.set(t,n)),n}}class Tp{constructor(t){this.id=Ep++,this.code=t,this.usedTimes=0}}function Ap(i,t,e,n,r,s,a){const o=new al,l=new yp,c=new Set,u=[],f=r.logarithmicDepthBuffer,p=r.reverseDepthBuffer,m=r.vertexTextures;let _=r.precision;const x={MeshDepthMaterial:"depth",MeshDistanceMaterial:"distanceRGBA",MeshNormalMaterial:"normal",MeshBasicMaterial:"basic",MeshLambertMaterial:"lambert",MeshPhongMaterial:"phong",MeshToonMaterial:"toon",MeshStandardMaterial:"physical",MeshPhysicalMaterial:"physical",MeshMatcapMaterial:"matcap",LineBasicMaterial:"basic",LineDashedMaterial:"dashed",PointsMaterial:"points",ShadowMaterial:"shadow",SpriteMaterial:"sprite"};function d(g){return c.add(g),g===0?"uv":`uv${g}`}function h(g,S,V,z,k){const Z=z.fog,B=k.geometry,J=g.isMeshStandardMaterial?z.environment:null,G=(g.isMeshStandardMaterial?e:t).get(g.envMap||J),ot=G&&G.mapping===Sr?G.image.height:null,lt=x[g.type];g.precision!==null&&(_=r.getMaxPrecision(g.precision),_!==g.precision&&console.warn("THREE.WebGLProgram.getParameters:",g.precision,"not supported, using",_,"instead."));const _t=B.morphAttributes.position||B.morphAttributes.normal||B.morphAttributes.color,Ht=_t!==void 0?_t.length:0;let Xt=0;B.morphAttributes.position!==void 0&&(Xt=1),B.morphAttributes.normal!==void 0&&(Xt=2),B.morphAttributes.color!==void 0&&(Xt=3);let W,j,pt,ct;if(lt){const xe=Ge[lt];W=xe.vertexShader,j=xe.fragmentShader}else W=g.vertexShader,j=g.fragmentShader,l.update(g),pt=l.getVertexShaderID(g),ct=l.getFragmentShaderID(g);const Rt=i.getRenderTarget(),St=k.isInstancedMesh===!0,It=k.isBatchedMesh===!0,qt=!!g.map,Nt=!!g.matcap,w=!!G,Ee=!!g.aoMap,Dt=!!g.lightMap,Ot=!!g.bumpMap,yt=!!g.normalMap,Jt=!!g.displacementMap,bt=!!g.emissiveMap,y=!!g.metalnessMap,v=!!g.roughnessMap,U=g.anisotropy>0,Y=g.clearcoat>0,K=g.dispersion>0,X=g.iridescence>0,gt=g.sheen>0,nt=g.transmission>0,ht=U&&!!g.anisotropyMap,Bt=Y&&!!g.clearcoatMap,$=Y&&!!g.clearcoatNormalMap,ut=Y&&!!g.clearcoatRoughnessMap,Tt=X&&!!g.iridescenceMap,At=X&&!!g.iridescenceThicknessMap,dt=gt&&!!g.sheenColorMap,Ut=gt&&!!g.sheenRoughnessMap,Ct=!!g.specularMap,jt=!!g.specularColorMap,C=!!g.specularIntensityMap,st=nt&&!!g.transmissionMap,H=nt&&!!g.thicknessMap,q=!!g.gradientMap,it=!!g.alphaMap,at=g.alphaTest>0,Ft=!!g.alphaHash,ie=!!g.extensions;let ve=pn;g.toneMapped&&(Rt===null||Rt.isXRRenderTarget===!0)&&(ve=i.toneMapping);const Gt={shaderID:lt,shaderType:g.type,shaderName:g.name,vertexShader:W,fragmentShader:j,defines:g.defines,customVertexShaderID:pt,customFragmentShaderID:ct,isRawShaderMaterial:g.isRawShaderMaterial===!0,glslVersion:g.glslVersion,precision:_,batching:It,batchingColor:It&&k._colorsTexture!==null,instancing:St,instancingColor:St&&k.instanceColor!==null,instancingMorph:St&&k.morphTexture!==null,supportsVertexTextures:m,outputColorSpace:Rt===null?i.outputColorSpace:Rt.isXRRenderTarget===!0?Rt.texture.colorSpace:gn,alphaToCoverage:!!g.alphaToCoverage,map:qt,matcap:Nt,envMap:w,envMapMode:w&&G.mapping,envMapCubeUVHeight:ot,aoMap:Ee,lightMap:Dt,bumpMap:Ot,normalMap:yt,displacementMap:m&&Jt,emissiveMap:bt,normalMapObjectSpace:yt&&g.normalMapType===pc,normalMapTangentSpace:yt&&g.normalMapType===el,metalnessMap:y,roughnessMap:v,anisotropy:U,anisotropyMap:ht,clearcoat:Y,clearcoatMap:Bt,clearcoatNormalMap:$,clearcoatRoughnessMap:ut,dispersion:K,iridescence:X,iridescenceMap:Tt,iridescenceThicknessMap:At,sheen:gt,sheenColorMap:dt,sheenRoughnessMap:Ut,specularMap:Ct,specularColorMap:jt,specularIntensityMap:C,transmission:nt,transmissionMap:st,thicknessMap:H,gradientMap:q,opaque:g.transparent===!1&&g.blending===ti&&g.alphaToCoverage===!1,alphaMap:it,alphaTest:at,alphaHash:Ft,combine:g.combine,mapUv:qt&&d(g.map.channel),aoMapUv:Ee&&d(g.aoMap.channel),lightMapUv:Dt&&d(g.lightMap.channel),bumpMapUv:Ot&&d(g.bumpMap.channel),normalMapUv:yt&&d(g.normalMap.channel),displacementMapUv:Jt&&d(g.displacementMap.channel),emissiveMapUv:bt&&d(g.emissiveMap.channel),metalnessMapUv:y&&d(g.metalnessMap.channel),roughnessMapUv:v&&d(g.roughnessMap.channel),anisotropyMapUv:ht&&d(g.anisotropyMap.channel),clearcoatMapUv:Bt&&d(g.clearcoatMap.channel),clearcoatNormalMapUv:$&&d(g.clearcoatNormalMap.channel),clearcoatRoughnessMapUv:ut&&d(g.clearcoatRoughnessMap.channel),iridescenceMapUv:Tt&&d(g.iridescenceMap.channel),iridescenceThicknessMapUv:At&&d(g.iridescenceThicknessMap.channel),sheenColorMapUv:dt&&d(g.sheenColorMap.channel),sheenRoughnessMapUv:Ut&&d(g.sheenRoughnessMap.channel),specularMapUv:Ct&&d(g.specularMap.channel),specularColorMapUv:jt&&d(g.specularColorMap.channel),specularIntensityMapUv:C&&d(g.specularIntensityMap.channel),transmissionMapUv:st&&d(g.transmissionMap.channel),thicknessMapUv:H&&d(g.thicknessMap.channel),alphaMapUv:it&&d(g.alphaMap.channel),vertexTangents:!!B.attributes.tangent&&(yt||U),vertexColors:g.vertexColors,vertexAlphas:g.vertexColors===!0&&!!B.attributes.color&&B.attributes.color.itemSize===4,pointsUvs:k.isPoints===!0&&!!B.attributes.uv&&(qt||it),fog:!!Z,useFog:g.fog===!0,fogExp2:!!Z&&Z.isFogExp2,flatShading:g.flatShading===!0,sizeAttenuation:g.sizeAttenuation===!0,logarithmicDepthBuffer:f,reverseDepthBuffer:p,skinning:k.isSkinnedMesh===!0,morphTargets:B.morphAttributes.position!==void 0,morphNormals:B.morphAttributes.normal!==void 0,morphColors:B.morphAttributes.color!==void 0,morphTargetsCount:Ht,morphTextureStride:Xt,numDirLights:S.directional.length,numPointLights:S.point.length,numSpotLights:S.spot.length,numSpotLightMaps:S.spotLightMap.length,numRectAreaLights:S.rectArea.length,numHemiLights:S.hemi.length,numDirLightShadows:S.directionalShadowMap.length,numPointLightShadows:S.pointShadowMap.length,numSpotLightShadows:S.spotShadowMap.length,numSpotLightShadowsWithMaps:S.numSpotLightShadowsWithMaps,numLightProbes:S.numLightProbes,numClippingPlanes:a.numPlanes,numClipIntersection:a.numIntersection,dithering:g.dithering,shadowMapEnabled:i.shadowMap.enabled&&V.length>0,shadowMapType:i.shadowMap.type,toneMapping:ve,decodeVideoTexture:qt&&g.map.isVideoTexture===!0&&Wt.getTransfer(g.map.colorSpace)===te,premultipliedAlpha:g.premultipliedAlpha,doubleSided:g.side===Ve,flipSided:g.side===_e,useDepthPacking:g.depthPacking>=0,depthPacking:g.depthPacking||0,index0AttributeName:g.index0AttributeName,extensionClipCullDistance:ie&&g.extensions.clipCullDistance===!0&&n.has("WEBGL_clip_cull_distance"),extensionMultiDraw:(ie&&g.extensions.multiDraw===!0||It)&&n.has("WEBGL_multi_draw"),rendererExtensionParallelShaderCompile:n.has("KHR_parallel_shader_compile"),customProgramCacheKey:g.customProgramCacheKey()};return Gt.vertexUv1s=c.has(1),Gt.vertexUv2s=c.has(2),Gt.vertexUv3s=c.has(3),c.clear(),Gt}function T(g){const S=[];if(g.shaderID?S.push(g.shaderID):(S.push(g.customVertexShaderID),S.push(g.customFragmentShaderID)),g.defines!==void 0)for(const V in g.defines)S.push(V),S.push(g.defines[V]);return g.isRawShaderMaterial===!1&&(E(S,g),A(S,g),S.push(i.outputColorSpace)),S.push(g.customProgramCacheKey),S.join()}function E(g,S){g.push(S.precision),g.push(S.outputColorSpace),g.push(S.envMapMode),g.push(S.envMapCubeUVHeight),g.push(S.mapUv),g.push(S.alphaMapUv),g.push(S.lightMapUv),g.push(S.aoMapUv),g.push(S.bumpMapUv),g.push(S.normalMapUv),g.push(S.displacementMapUv),g.push(S.emissiveMapUv),g.push(S.metalnessMapUv),g.push(S.roughnessMapUv),g.push(S.anisotropyMapUv),g.push(S.clearcoatMapUv),g.push(S.clearcoatNormalMapUv),g.push(S.clearcoatRoughnessMapUv),g.push(S.iridescenceMapUv),g.push(S.iridescenceThicknessMapUv),g.push(S.sheenColorMapUv),g.push(S.sheenRoughnessMapUv),g.push(S.specularMapUv),g.push(S.specularColorMapUv),g.push(S.specularIntensityMapUv),g.push(S.transmissionMapUv),g.push(S.thicknessMapUv),g.push(S.combine),g.push(S.fogExp2),g.push(S.sizeAttenuation),g.push(S.morphTargetsCount),g.push(S.morphAttributeCount),g.push(S.numDirLights),g.push(S.numPointLights),g.push(S.numSpotLights),g.push(S.numSpotLightMaps),g.push(S.numHemiLights),g.push(S.numRectAreaLights),g.push(S.numDirLightShadows),g.push(S.numPointLightShadows),g.push(S.numSpotLightShadows),g.push(S.numSpotLightShadowsWithMaps),g.push(S.numLightProbes),g.push(S.shadowMapType),g.push(S.toneMapping),g.push(S.numClippingPlanes),g.push(S.numClipIntersection),g.push(S.depthPacking)}function A(g,S){o.disableAll(),S.supportsVertexTextures&&o.enable(0),S.instancing&&o.enable(1),S.instancingColor&&o.enable(2),S.instancingMorph&&o.enable(3),S.matcap&&o.enable(4),S.envMap&&o.enable(5),S.normalMapObjectSpace&&o.enable(6),S.normalMapTangentSpace&&o.enable(7),S.clearcoat&&o.enable(8),S.iridescence&&o.enable(9),S.alphaTest&&o.enable(10),S.vertexColors&&o.enable(11),S.vertexAlphas&&o.enable(12),S.vertexUv1s&&o.enable(13),S.vertexUv2s&&o.enable(14),S.vertexUv3s&&o.enable(15),S.vertexTangents&&o.enable(16),S.anisotropy&&o.enable(17),S.alphaHash&&o.enable(18),S.batching&&o.enable(19),S.dispersion&&o.enable(20),S.batchingColor&&o.enable(21),g.push(o.mask),o.disableAll(),S.fog&&o.enable(0),S.useFog&&o.enable(1),S.flatShading&&o.enable(2),S.logarithmicDepthBuffer&&o.enable(3),S.reverseDepthBuffer&&o.enable(4),S.skinning&&o.enable(5),S.morphTargets&&o.enable(6),S.morphNormals&&o.enable(7),S.morphColors&&o.enable(8),S.premultipliedAlpha&&o.enable(9),S.shadowMapEnabled&&o.enable(10),S.doubleSided&&o.enable(11),S.flipSided&&o.enable(12),S.useDepthPacking&&o.enable(13),S.dithering&&o.enable(14),S.transmission&&o.enable(15),S.sheen&&o.enable(16),S.opaque&&o.enable(17),S.pointsUvs&&o.enable(18),S.decodeVideoTexture&&o.enable(19),S.alphaToCoverage&&o.enable(20),g.push(o.mask)}function F(g){const S=x[g.type];let V;if(S){const z=Ge[S];V=ah.clone(z.uniforms)}else V=g.uniforms;return V}function R(g,S){let V;for(let z=0,k=u.length;z0?n.push(h):m.transparent===!0?r.push(h):e.push(h)}function l(f,p,m,_,x,d){const h=a(f,p,m,_,x,d);m.transmission>0?n.unshift(h):m.transparent===!0?r.unshift(h):e.unshift(h)}function c(f,p){e.length>1&&e.sort(f||wp),n.length>1&&n.sort(p||_o),r.length>1&&r.sort(p||_o)}function u(){for(let f=t,p=i.length;f=s.length?(a=new go,s.push(a)):a=s[r],a}function e(){i=new WeakMap}return{get:t,dispose:e}}function Cp(){const i={};return{get:function(t){if(i[t.id]!==void 0)return i[t.id];let e;switch(t.type){case"DirectionalLight":e={direction:new L,color:new zt};break;case"SpotLight":e={position:new L,direction:new L,color:new zt,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case"PointLight":e={position:new L,color:new zt,distance:0,decay:0};break;case"HemisphereLight":e={direction:new L,skyColor:new zt,groundColor:new zt};break;case"RectAreaLight":e={color:new zt,position:new L,halfWidth:new L,halfHeight:new L};break}return i[t.id]=e,e}}}function Pp(){const i={};return{get:function(t){if(i[t.id]!==void 0)return i[t.id];let e;switch(t.type){case"DirectionalLight":e={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new wt};break;case"SpotLight":e={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new wt};break;case"PointLight":e={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new wt,shadowCameraNear:1,shadowCameraFar:1e3};break}return i[t.id]=e,e}}}let Lp=0;function Dp(i,t){return(t.castShadow?2:0)-(i.castShadow?2:0)+(t.map?1:0)-(i.map?1:0)}function Up(i){const t=new Cp,e=Pp(),n={version:0,hash:{directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1,numSpotMaps:-1,numLightProbes:-1},ambient:[0,0,0],probe:[],directional:[],directionalShadow:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotLightMap:[],spotShadow:[],spotShadowMap:[],spotLightMatrix:[],rectArea:[],rectAreaLTC1:null,rectAreaLTC2:null,point:[],pointShadow:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[],numSpotLightShadowsWithMaps:0,numLightProbes:0};for(let c=0;c<9;c++)n.probe.push(new L);const r=new L,s=new $t,a=new $t;function o(c){let u=0,f=0,p=0;for(let tt=0;tt<9;tt++)n.probe[tt].set(0,0,0);let m=0,_=0,x=0,d=0,h=0,T=0,E=0,A=0,F=0,R=0,b=0;c.sort(Dp);for(let tt=0,g=c.length;tt0&&(i.has("OES_texture_float_linear")===!0?(n.rectAreaLTC1=et.LTC_FLOAT_1,n.rectAreaLTC2=et.LTC_FLOAT_2):(n.rectAreaLTC1=et.LTC_HALF_1,n.rectAreaLTC2=et.LTC_HALF_2)),n.ambient[0]=u,n.ambient[1]=f,n.ambient[2]=p;const O=n.hash;(O.directionalLength!==m||O.pointLength!==_||O.spotLength!==x||O.rectAreaLength!==d||O.hemiLength!==h||O.numDirectionalShadows!==T||O.numPointShadows!==E||O.numSpotShadows!==A||O.numSpotMaps!==F||O.numLightProbes!==b)&&(n.directional.length=m,n.spot.length=x,n.rectArea.length=d,n.point.length=_,n.hemi.length=h,n.directionalShadow.length=T,n.directionalShadowMap.length=T,n.pointShadow.length=E,n.pointShadowMap.length=E,n.spotShadow.length=A,n.spotShadowMap.length=A,n.directionalShadowMatrix.length=T,n.pointShadowMatrix.length=E,n.spotLightMatrix.length=A+F-R,n.spotLightMap.length=F,n.numSpotLightShadowsWithMaps=R,n.numLightProbes=b,O.directionalLength=m,O.pointLength=_,O.spotLength=x,O.rectAreaLength=d,O.hemiLength=h,O.numDirectionalShadows=T,O.numPointShadows=E,O.numSpotShadows=A,O.numSpotMaps=F,O.numLightProbes=b,n.version=Lp++)}function l(c,u){let f=0,p=0,m=0,_=0,x=0;const d=u.matrixWorldInverse;for(let h=0,T=c.length;h=a.length?(o=new vo(i),a.push(o)):o=a[s],o}function n(){t=new WeakMap}return{get:e,dispose:n}}class Np extends hi{constructor(t){super(),this.isMeshDepthMaterial=!0,this.type="MeshDepthMaterial",this.depthPacking=dc,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.setValues(t)}copy(t){return super.copy(t),this.depthPacking=t.depthPacking,this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this}}class Fp extends hi{constructor(t){super(),this.isMeshDistanceMaterial=!0,this.type="MeshDistanceMaterial",this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.setValues(t)}copy(t){return super.copy(t),this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this}}const Op=`void main() { +`+G)}else k!==""?console.warn("THREE.WebGLProgram: Program Info Log:",k):(z===""||V==="")&&(B=!1);B&&(S.diagnostics={runnable:Z,programLog:k,vertexShader:{log:z,prefix:d},fragmentShader:{log:V,prefix:h}})}r.deleteShader(F),r.deleteShader(R),O=new _r(r,x),tt=_p(r,x)}let O;this.getUniforms=function(){return O===void 0&&b(this),O};let tt;this.getAttributes=function(){return tt===void 0&&b(this),tt};let g=e.rendererExtensionParallelShaderCompile===!1;return this.isReady=function(){return g===!1&&(g=r.getProgramParameter(x,op)),g},this.destroy=function(){n.releaseStatesOfProgram(this),r.deleteProgram(x),this.program=void 0},this.type=e.shaderType,this.name=e.shaderName,this.id=lp++,this.cacheKey=t,this.usedTimes=1,this.program=x,this.vertexShader=F,this.fragmentShader=R,this}let Rp=0;class Cp{constructor(){this.shaderCache=new Map,this.materialCache=new Map}update(t){const e=t.vertexShader,n=t.fragmentShader,r=this._getShaderStage(e),s=this._getShaderStage(n),a=this._getShaderCacheForMaterial(t);return a.has(r)===!1&&(a.add(r),r.usedTimes++),a.has(s)===!1&&(a.add(s),s.usedTimes++),this}remove(t){const e=this.materialCache.get(t);for(const n of e)n.usedTimes--,n.usedTimes===0&&this.shaderCache.delete(n.code);return this.materialCache.delete(t),this}getVertexShaderID(t){return this._getShaderStage(t.vertexShader).id}getFragmentShaderID(t){return this._getShaderStage(t.fragmentShader).id}dispose(){this.shaderCache.clear(),this.materialCache.clear()}_getShaderCacheForMaterial(t){const e=this.materialCache;let n=e.get(t);return n===void 0&&(n=new Set,e.set(t,n)),n}_getShaderStage(t){const e=this.shaderCache;let n=e.get(t);return n===void 0&&(n=new Pp(t),e.set(t,n)),n}}class Pp{constructor(t){this.id=Rp++,this.code=t,this.usedTimes=0}}function Lp(i,t,e,n,r,s,a){const o=new fl,l=new Cp,c=new Set,u=[],f=r.logarithmicDepthBuffer,p=r.reverseDepthBuffer,m=r.vertexTextures;let _=r.precision;const x={MeshDepthMaterial:"depth",MeshDistanceMaterial:"distanceRGBA",MeshNormalMaterial:"normal",MeshBasicMaterial:"basic",MeshLambertMaterial:"lambert",MeshPhongMaterial:"phong",MeshToonMaterial:"toon",MeshStandardMaterial:"physical",MeshPhysicalMaterial:"physical",MeshMatcapMaterial:"matcap",LineBasicMaterial:"basic",LineDashedMaterial:"dashed",PointsMaterial:"points",ShadowMaterial:"shadow",SpriteMaterial:"sprite"};function d(g){return c.add(g),g===0?"uv":`uv${g}`}function h(g,S,k,z,V){const Z=z.fog,B=V.geometry,J=g.isMeshStandardMaterial?z.environment:null,G=(g.isMeshStandardMaterial?e:t).get(g.envMap||J),ot=G&&G.mapping===Tr?G.image.height:null,lt=x[g.type];g.precision!==null&&(_=r.getMaxPrecision(g.precision),_!==g.precision&&console.warn("THREE.WebGLProgram.getParameters:",g.precision,"not supported, using",_,"instead."));const _t=B.morphAttributes.position||B.morphAttributes.normal||B.morphAttributes.color,Ht=_t!==void 0?_t.length:0;let Xt=0;B.morphAttributes.position!==void 0&&(Xt=1),B.morphAttributes.normal!==void 0&&(Xt=2),B.morphAttributes.color!==void 0&&(Xt=3);let W,j,pt,ct;if(lt){const xe=Ge[lt];W=xe.vertexShader,j=xe.fragmentShader}else W=g.vertexShader,j=g.fragmentShader,l.update(g),pt=l.getVertexShaderID(g),ct=l.getFragmentShaderID(g);const Rt=i.getRenderTarget(),St=V.isInstancedMesh===!0,It=V.isBatchedMesh===!0,qt=!!g.map,Nt=!!g.matcap,w=!!G,Ee=!!g.aoMap,Dt=!!g.lightMap,Ot=!!g.bumpMap,yt=!!g.normalMap,Jt=!!g.displacementMap,bt=!!g.emissiveMap,y=!!g.metalnessMap,v=!!g.roughnessMap,U=g.anisotropy>0,Y=g.clearcoat>0,K=g.dispersion>0,X=g.iridescence>0,gt=g.sheen>0,nt=g.transmission>0,ht=U&&!!g.anisotropyMap,Bt=Y&&!!g.clearcoatMap,$=Y&&!!g.clearcoatNormalMap,ut=Y&&!!g.clearcoatRoughnessMap,Tt=X&&!!g.iridescenceMap,At=X&&!!g.iridescenceThicknessMap,dt=gt&&!!g.sheenColorMap,Ut=gt&&!!g.sheenRoughnessMap,Ct=!!g.specularMap,jt=!!g.specularColorMap,C=!!g.specularIntensityMap,st=nt&&!!g.transmissionMap,H=nt&&!!g.thicknessMap,q=!!g.gradientMap,it=!!g.alphaMap,at=g.alphaTest>0,Ft=!!g.alphaHash,ie=!!g.extensions;let ve=pn;g.toneMapped&&(Rt===null||Rt.isXRRenderTarget===!0)&&(ve=i.toneMapping);const Gt={shaderID:lt,shaderType:g.type,shaderName:g.name,vertexShader:W,fragmentShader:j,defines:g.defines,customVertexShaderID:pt,customFragmentShaderID:ct,isRawShaderMaterial:g.isRawShaderMaterial===!0,glslVersion:g.glslVersion,precision:_,batching:It,batchingColor:It&&V._colorsTexture!==null,instancing:St,instancingColor:St&&V.instanceColor!==null,instancingMorph:St&&V.morphTexture!==null,supportsVertexTextures:m,outputColorSpace:Rt===null?i.outputColorSpace:Rt.isXRRenderTarget===!0?Rt.texture.colorSpace:gn,alphaToCoverage:!!g.alphaToCoverage,map:qt,matcap:Nt,envMap:w,envMapMode:w&&G.mapping,envMapCubeUVHeight:ot,aoMap:Ee,lightMap:Dt,bumpMap:Ot,normalMap:yt,displacementMap:m&&Jt,emissiveMap:bt,normalMapObjectSpace:yt&&g.normalMapType===Mc,normalMapTangentSpace:yt&&g.normalMapType===ll,metalnessMap:y,roughnessMap:v,anisotropy:U,anisotropyMap:ht,clearcoat:Y,clearcoatMap:Bt,clearcoatNormalMap:$,clearcoatRoughnessMap:ut,dispersion:K,iridescence:X,iridescenceMap:Tt,iridescenceThicknessMap:At,sheen:gt,sheenColorMap:dt,sheenRoughnessMap:Ut,specularMap:Ct,specularColorMap:jt,specularIntensityMap:C,transmission:nt,transmissionMap:st,thicknessMap:H,gradientMap:q,opaque:g.transparent===!1&&g.blending===ei&&g.alphaToCoverage===!1,alphaMap:it,alphaTest:at,alphaHash:Ft,combine:g.combine,mapUv:qt&&d(g.map.channel),aoMapUv:Ee&&d(g.aoMap.channel),lightMapUv:Dt&&d(g.lightMap.channel),bumpMapUv:Ot&&d(g.bumpMap.channel),normalMapUv:yt&&d(g.normalMap.channel),displacementMapUv:Jt&&d(g.displacementMap.channel),emissiveMapUv:bt&&d(g.emissiveMap.channel),metalnessMapUv:y&&d(g.metalnessMap.channel),roughnessMapUv:v&&d(g.roughnessMap.channel),anisotropyMapUv:ht&&d(g.anisotropyMap.channel),clearcoatMapUv:Bt&&d(g.clearcoatMap.channel),clearcoatNormalMapUv:$&&d(g.clearcoatNormalMap.channel),clearcoatRoughnessMapUv:ut&&d(g.clearcoatRoughnessMap.channel),iridescenceMapUv:Tt&&d(g.iridescenceMap.channel),iridescenceThicknessMapUv:At&&d(g.iridescenceThicknessMap.channel),sheenColorMapUv:dt&&d(g.sheenColorMap.channel),sheenRoughnessMapUv:Ut&&d(g.sheenRoughnessMap.channel),specularMapUv:Ct&&d(g.specularMap.channel),specularColorMapUv:jt&&d(g.specularColorMap.channel),specularIntensityMapUv:C&&d(g.specularIntensityMap.channel),transmissionMapUv:st&&d(g.transmissionMap.channel),thicknessMapUv:H&&d(g.thicknessMap.channel),alphaMapUv:it&&d(g.alphaMap.channel),vertexTangents:!!B.attributes.tangent&&(yt||U),vertexColors:g.vertexColors,vertexAlphas:g.vertexColors===!0&&!!B.attributes.color&&B.attributes.color.itemSize===4,pointsUvs:V.isPoints===!0&&!!B.attributes.uv&&(qt||it),fog:!!Z,useFog:g.fog===!0,fogExp2:!!Z&&Z.isFogExp2,flatShading:g.flatShading===!0,sizeAttenuation:g.sizeAttenuation===!0,logarithmicDepthBuffer:f,reverseDepthBuffer:p,skinning:V.isSkinnedMesh===!0,morphTargets:B.morphAttributes.position!==void 0,morphNormals:B.morphAttributes.normal!==void 0,morphColors:B.morphAttributes.color!==void 0,morphTargetsCount:Ht,morphTextureStride:Xt,numDirLights:S.directional.length,numPointLights:S.point.length,numSpotLights:S.spot.length,numSpotLightMaps:S.spotLightMap.length,numRectAreaLights:S.rectArea.length,numHemiLights:S.hemi.length,numDirLightShadows:S.directionalShadowMap.length,numPointLightShadows:S.pointShadowMap.length,numSpotLightShadows:S.spotShadowMap.length,numSpotLightShadowsWithMaps:S.numSpotLightShadowsWithMaps,numLightProbes:S.numLightProbes,numClippingPlanes:a.numPlanes,numClipIntersection:a.numIntersection,dithering:g.dithering,shadowMapEnabled:i.shadowMap.enabled&&k.length>0,shadowMapType:i.shadowMap.type,toneMapping:ve,decodeVideoTexture:qt&&g.map.isVideoTexture===!0&&Wt.getTransfer(g.map.colorSpace)===te,premultipliedAlpha:g.premultipliedAlpha,doubleSided:g.side===ke,flipSided:g.side===_e,useDepthPacking:g.depthPacking>=0,depthPacking:g.depthPacking||0,index0AttributeName:g.index0AttributeName,extensionClipCullDistance:ie&&g.extensions.clipCullDistance===!0&&n.has("WEBGL_clip_cull_distance"),extensionMultiDraw:(ie&&g.extensions.multiDraw===!0||It)&&n.has("WEBGL_multi_draw"),rendererExtensionParallelShaderCompile:n.has("KHR_parallel_shader_compile"),customProgramCacheKey:g.customProgramCacheKey()};return Gt.vertexUv1s=c.has(1),Gt.vertexUv2s=c.has(2),Gt.vertexUv3s=c.has(3),c.clear(),Gt}function T(g){const S=[];if(g.shaderID?S.push(g.shaderID):(S.push(g.customVertexShaderID),S.push(g.customFragmentShaderID)),g.defines!==void 0)for(const k in g.defines)S.push(k),S.push(g.defines[k]);return g.isRawShaderMaterial===!1&&(E(S,g),A(S,g),S.push(i.outputColorSpace)),S.push(g.customProgramCacheKey),S.join()}function E(g,S){g.push(S.precision),g.push(S.outputColorSpace),g.push(S.envMapMode),g.push(S.envMapCubeUVHeight),g.push(S.mapUv),g.push(S.alphaMapUv),g.push(S.lightMapUv),g.push(S.aoMapUv),g.push(S.bumpMapUv),g.push(S.normalMapUv),g.push(S.displacementMapUv),g.push(S.emissiveMapUv),g.push(S.metalnessMapUv),g.push(S.roughnessMapUv),g.push(S.anisotropyMapUv),g.push(S.clearcoatMapUv),g.push(S.clearcoatNormalMapUv),g.push(S.clearcoatRoughnessMapUv),g.push(S.iridescenceMapUv),g.push(S.iridescenceThicknessMapUv),g.push(S.sheenColorMapUv),g.push(S.sheenRoughnessMapUv),g.push(S.specularMapUv),g.push(S.specularColorMapUv),g.push(S.specularIntensityMapUv),g.push(S.transmissionMapUv),g.push(S.thicknessMapUv),g.push(S.combine),g.push(S.fogExp2),g.push(S.sizeAttenuation),g.push(S.morphTargetsCount),g.push(S.morphAttributeCount),g.push(S.numDirLights),g.push(S.numPointLights),g.push(S.numSpotLights),g.push(S.numSpotLightMaps),g.push(S.numHemiLights),g.push(S.numRectAreaLights),g.push(S.numDirLightShadows),g.push(S.numPointLightShadows),g.push(S.numSpotLightShadows),g.push(S.numSpotLightShadowsWithMaps),g.push(S.numLightProbes),g.push(S.shadowMapType),g.push(S.toneMapping),g.push(S.numClippingPlanes),g.push(S.numClipIntersection),g.push(S.depthPacking)}function A(g,S){o.disableAll(),S.supportsVertexTextures&&o.enable(0),S.instancing&&o.enable(1),S.instancingColor&&o.enable(2),S.instancingMorph&&o.enable(3),S.matcap&&o.enable(4),S.envMap&&o.enable(5),S.normalMapObjectSpace&&o.enable(6),S.normalMapTangentSpace&&o.enable(7),S.clearcoat&&o.enable(8),S.iridescence&&o.enable(9),S.alphaTest&&o.enable(10),S.vertexColors&&o.enable(11),S.vertexAlphas&&o.enable(12),S.vertexUv1s&&o.enable(13),S.vertexUv2s&&o.enable(14),S.vertexUv3s&&o.enable(15),S.vertexTangents&&o.enable(16),S.anisotropy&&o.enable(17),S.alphaHash&&o.enable(18),S.batching&&o.enable(19),S.dispersion&&o.enable(20),S.batchingColor&&o.enable(21),g.push(o.mask),o.disableAll(),S.fog&&o.enable(0),S.useFog&&o.enable(1),S.flatShading&&o.enable(2),S.logarithmicDepthBuffer&&o.enable(3),S.reverseDepthBuffer&&o.enable(4),S.skinning&&o.enable(5),S.morphTargets&&o.enable(6),S.morphNormals&&o.enable(7),S.morphColors&&o.enable(8),S.premultipliedAlpha&&o.enable(9),S.shadowMapEnabled&&o.enable(10),S.doubleSided&&o.enable(11),S.flipSided&&o.enable(12),S.useDepthPacking&&o.enable(13),S.dithering&&o.enable(14),S.transmission&&o.enable(15),S.sheen&&o.enable(16),S.opaque&&o.enable(17),S.pointsUvs&&o.enable(18),S.decodeVideoTexture&&o.enable(19),S.alphaToCoverage&&o.enable(20),g.push(o.mask)}function F(g){const S=x[g.type];let k;if(S){const z=Ge[S];k=dh.clone(z.uniforms)}else k=g.uniforms;return k}function R(g,S){let k;for(let z=0,V=u.length;z0?n.push(h):m.transparent===!0?r.push(h):e.push(h)}function l(f,p,m,_,x,d){const h=a(f,p,m,_,x,d);m.transmission>0?n.unshift(h):m.transparent===!0?r.unshift(h):e.unshift(h)}function c(f,p){e.length>1&&e.sort(f||Up),n.length>1&&n.sort(p||Eo),r.length>1&&r.sort(p||Eo)}function u(){for(let f=t,p=i.length;f=s.length?(a=new yo,s.push(a)):a=s[r],a}function e(){i=new WeakMap}return{get:t,dispose:e}}function Np(){const i={};return{get:function(t){if(i[t.id]!==void 0)return i[t.id];let e;switch(t.type){case"DirectionalLight":e={direction:new L,color:new zt};break;case"SpotLight":e={position:new L,direction:new L,color:new zt,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case"PointLight":e={position:new L,color:new zt,distance:0,decay:0};break;case"HemisphereLight":e={direction:new L,skyColor:new zt,groundColor:new zt};break;case"RectAreaLight":e={color:new zt,position:new L,halfWidth:new L,halfHeight:new L};break}return i[t.id]=e,e}}}function Fp(){const i={};return{get:function(t){if(i[t.id]!==void 0)return i[t.id];let e;switch(t.type){case"DirectionalLight":e={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new wt};break;case"SpotLight":e={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new wt};break;case"PointLight":e={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new wt,shadowCameraNear:1,shadowCameraFar:1e3};break}return i[t.id]=e,e}}}let Op=0;function Bp(i,t){return(t.castShadow?2:0)-(i.castShadow?2:0)+(t.map?1:0)-(i.map?1:0)}function zp(i){const t=new Np,e=Fp(),n={version:0,hash:{directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1,numSpotMaps:-1,numLightProbes:-1},ambient:[0,0,0],probe:[],directional:[],directionalShadow:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotLightMap:[],spotShadow:[],spotShadowMap:[],spotLightMatrix:[],rectArea:[],rectAreaLTC1:null,rectAreaLTC2:null,point:[],pointShadow:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[],numSpotLightShadowsWithMaps:0,numLightProbes:0};for(let c=0;c<9;c++)n.probe.push(new L);const r=new L,s=new $t,a=new $t;function o(c){let u=0,f=0,p=0;for(let tt=0;tt<9;tt++)n.probe[tt].set(0,0,0);let m=0,_=0,x=0,d=0,h=0,T=0,E=0,A=0,F=0,R=0,b=0;c.sort(Bp);for(let tt=0,g=c.length;tt0&&(i.has("OES_texture_float_linear")===!0?(n.rectAreaLTC1=et.LTC_FLOAT_1,n.rectAreaLTC2=et.LTC_FLOAT_2):(n.rectAreaLTC1=et.LTC_HALF_1,n.rectAreaLTC2=et.LTC_HALF_2)),n.ambient[0]=u,n.ambient[1]=f,n.ambient[2]=p;const O=n.hash;(O.directionalLength!==m||O.pointLength!==_||O.spotLength!==x||O.rectAreaLength!==d||O.hemiLength!==h||O.numDirectionalShadows!==T||O.numPointShadows!==E||O.numSpotShadows!==A||O.numSpotMaps!==F||O.numLightProbes!==b)&&(n.directional.length=m,n.spot.length=x,n.rectArea.length=d,n.point.length=_,n.hemi.length=h,n.directionalShadow.length=T,n.directionalShadowMap.length=T,n.pointShadow.length=E,n.pointShadowMap.length=E,n.spotShadow.length=A,n.spotShadowMap.length=A,n.directionalShadowMatrix.length=T,n.pointShadowMatrix.length=E,n.spotLightMatrix.length=A+F-R,n.spotLightMap.length=F,n.numSpotLightShadowsWithMaps=R,n.numLightProbes=b,O.directionalLength=m,O.pointLength=_,O.spotLength=x,O.rectAreaLength=d,O.hemiLength=h,O.numDirectionalShadows=T,O.numPointShadows=E,O.numSpotShadows=A,O.numSpotMaps=F,O.numLightProbes=b,n.version=Op++)}function l(c,u){let f=0,p=0,m=0,_=0,x=0;const d=u.matrixWorldInverse;for(let h=0,T=c.length;h=a.length?(o=new To(i),a.push(o)):o=a[s],o}function n(){t=new WeakMap}return{get:e,dispose:n}}class Gp extends ui{constructor(t){super(),this.isMeshDepthMaterial=!0,this.type="MeshDepthMaterial",this.depthPacking=vc,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.setValues(t)}copy(t){return super.copy(t),this.depthPacking=t.depthPacking,this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this}}class kp extends ui{constructor(t){super(),this.isMeshDistanceMaterial=!0,this.type="MeshDistanceMaterial",this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.setValues(t)}copy(t){return super.copy(t),this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this}}const Vp=`void main() { gl_Position = vec4( position, 1.0 ); -}`,Bp=`uniform sampler2D shadow_pass; +}`,Wp=`uniform sampler2D shadow_pass; uniform vec2 resolution; uniform float radius; #include @@ -3812,12 +3812,12 @@ void main() { squared_mean = squared_mean / samples; float std_dev = sqrt( squared_mean - mean * mean ); gl_FragColor = pack2HalfToRGBA( vec2( mean, std_dev ) ); -}`;function zp(i,t,e){let n=new ha;const r=new wt,s=new wt,a=new Zt,o=new Np({depthPacking:fc}),l=new Fp,c={},u=e.maxTextureSize,f={[mn]:_e,[_e]:mn,[Ve]:Ve},p=new _n({defines:{VSM_SAMPLES:8},uniforms:{shadow_pass:{value:null},resolution:{value:new wt},radius:{value:4}},vertexShader:Op,fragmentShader:Bp}),m=p.clone();m.defines.HORIZONTAL_PASS=1;const _=new ze;_.setAttribute("position",new ke(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));const x=new Re(_,p),d=this;this.enabled=!1,this.autoUpdate=!0,this.needsUpdate=!1,this.type=Go;let h=this.type;this.render=function(R,b,O){if(d.enabled===!1||d.autoUpdate===!1&&d.needsUpdate===!1||R.length===0)return;const tt=i.getRenderTarget(),g=i.getActiveCubeFace(),S=i.getActiveMipmapLevel(),V=i.state;V.setBlending(fn),V.buffers.color.setClear(1,1,1,1),V.buffers.depth.setTest(!0),V.setScissorTest(!1);const z=h!==$e&&this.type===$e,k=h===$e&&this.type!==$e;for(let Z=0,B=R.length;Zu||r.y>u)&&(r.x>u&&(s.x=Math.floor(u/ot.x),r.x=s.x*ot.x,G.mapSize.x=s.x),r.y>u&&(s.y=Math.floor(u/ot.y),r.y=s.y*ot.y,G.mapSize.y=s.y)),G.map===null||z===!0||k===!0){const _t=this.type!==$e?{minFilter:Le,magFilter:Le}:{};G.map!==null&&G.map.dispose(),G.map=new Ln(r.x,r.y,_t),G.map.texture.name=J.name+".shadowMap",G.camera.updateProjectionMatrix()}i.setRenderTarget(G.map),i.clear();const lt=G.getViewportCount();for(let _t=0;_t0||b.map&&b.alphaTest>0){const V=g.uuid,z=b.uuid;let k=c[V];k===void 0&&(k={},c[V]=k);let Z=k[z];Z===void 0&&(Z=g.clone(),k[z]=Z,b.addEventListener("dispose",F)),g=Z}if(g.visible=b.visible,g.wireframe=b.wireframe,tt===$e?g.side=b.shadowSide!==null?b.shadowSide:b.side:g.side=b.shadowSide!==null?b.shadowSide:f[b.side],g.alphaMap=b.alphaMap,g.alphaTest=b.alphaTest,g.map=b.map,g.clipShadows=b.clipShadows,g.clippingPlanes=b.clippingPlanes,g.clipIntersection=b.clipIntersection,g.displacementMap=b.displacementMap,g.displacementScale=b.displacementScale,g.displacementBias=b.displacementBias,g.wireframeLinewidth=b.wireframeLinewidth,g.linewidth=b.linewidth,O.isPointLight===!0&&g.isMeshDistanceMaterial===!0){const V=i.properties.get(g);V.light=O}return g}function A(R,b,O,tt,g){if(R.visible===!1)return;if(R.layers.test(b.layers)&&(R.isMesh||R.isLine||R.isPoints)&&(R.castShadow||R.receiveShadow&&g===$e)&&(!R.frustumCulled||n.intersectsObject(R))){R.modelViewMatrix.multiplyMatrices(O.matrixWorldInverse,R.matrixWorld);const z=t.update(R),k=R.material;if(Array.isArray(k)){const Z=z.groups;for(let B=0,J=Z.length;B=1):J.indexOf("OpenGL ES")!==-1&&(B=parseFloat(/^OpenGL ES (\d)/.exec(J)[1]),Z=B>=2);let G=null,ot={};const lt=i.getParameter(i.SCISSOR_BOX),_t=i.getParameter(i.VIEWPORT),Ht=new Zt().fromArray(lt),Xt=new Zt().fromArray(_t);function W(C,st,H,q){const it=new Uint8Array(4),at=i.createTexture();i.bindTexture(C,at),i.texParameteri(C,i.TEXTURE_MIN_FILTER,i.NEAREST),i.texParameteri(C,i.TEXTURE_MAG_FILTER,i.NEAREST);for(let Ft=0;Ft"u"?!1:/OculusBrowser/g.test(navigator.userAgent),c=new wt,u=new WeakMap;let f;const p=new WeakMap;let m=!1;try{m=typeof OffscreenCanvas<"u"&&new OffscreenCanvas(1,1).getContext("2d")!==null}catch{}function _(y,v){return m?new OffscreenCanvas(y,v):wi("canvas")}function x(y,v,U){let Y=1;const K=bt(y);if((K.width>U||K.height>U)&&(Y=U/Math.max(K.width,K.height)),Y<1)if(typeof HTMLImageElement<"u"&&y instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&y instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&y instanceof ImageBitmap||typeof VideoFrame<"u"&&y instanceof VideoFrame){const X=Math.floor(Y*K.width),gt=Math.floor(Y*K.height);f===void 0&&(f=_(X,gt));const nt=v?_(X,gt):f;return nt.width=X,nt.height=gt,nt.getContext("2d").drawImage(y,0,0,X,gt),console.warn("THREE.WebGLRenderer: Texture has been resized from ("+K.width+"x"+K.height+") to ("+X+"x"+gt+")."),nt}else return"data"in y&&console.warn("THREE.WebGLRenderer: Image in DataTexture is too big ("+K.width+"x"+K.height+")."),y;return y}function d(y){return y.generateMipmaps&&y.minFilter!==Le&&y.minFilter!==Fe}function h(y){i.generateMipmap(y)}function T(y,v,U,Y,K=!1){if(y!==null){if(i[y]!==void 0)return i[y];console.warn("THREE.WebGLRenderer: Attempt to use non-existing WebGL internal format '"+y+"'")}let X=v;if(v===i.RED&&(U===i.FLOAT&&(X=i.R32F),U===i.HALF_FLOAT&&(X=i.R16F),U===i.UNSIGNED_BYTE&&(X=i.R8)),v===i.RED_INTEGER&&(U===i.UNSIGNED_BYTE&&(X=i.R8UI),U===i.UNSIGNED_SHORT&&(X=i.R16UI),U===i.UNSIGNED_INT&&(X=i.R32UI),U===i.BYTE&&(X=i.R8I),U===i.SHORT&&(X=i.R16I),U===i.INT&&(X=i.R32I)),v===i.RG&&(U===i.FLOAT&&(X=i.RG32F),U===i.HALF_FLOAT&&(X=i.RG16F),U===i.UNSIGNED_BYTE&&(X=i.RG8)),v===i.RG_INTEGER&&(U===i.UNSIGNED_BYTE&&(X=i.RG8UI),U===i.UNSIGNED_SHORT&&(X=i.RG16UI),U===i.UNSIGNED_INT&&(X=i.RG32UI),U===i.BYTE&&(X=i.RG8I),U===i.SHORT&&(X=i.RG16I),U===i.INT&&(X=i.RG32I)),v===i.RGB_INTEGER&&(U===i.UNSIGNED_BYTE&&(X=i.RGB8UI),U===i.UNSIGNED_SHORT&&(X=i.RGB16UI),U===i.UNSIGNED_INT&&(X=i.RGB32UI),U===i.BYTE&&(X=i.RGB8I),U===i.SHORT&&(X=i.RGB16I),U===i.INT&&(X=i.RGB32I)),v===i.RGBA_INTEGER&&(U===i.UNSIGNED_BYTE&&(X=i.RGBA8UI),U===i.UNSIGNED_SHORT&&(X=i.RGBA16UI),U===i.UNSIGNED_INT&&(X=i.RGBA32UI),U===i.BYTE&&(X=i.RGBA8I),U===i.SHORT&&(X=i.RGBA16I),U===i.INT&&(X=i.RGBA32I)),v===i.RGB&&U===i.UNSIGNED_INT_5_9_9_9_REV&&(X=i.RGB9_E5),v===i.RGBA){const gt=K?pr:Wt.getTransfer(Y);U===i.FLOAT&&(X=i.RGBA32F),U===i.HALF_FLOAT&&(X=i.RGBA16F),U===i.UNSIGNED_BYTE&&(X=gt===te?i.SRGB8_ALPHA8:i.RGBA8),U===i.UNSIGNED_SHORT_4_4_4_4&&(X=i.RGBA4),U===i.UNSIGNED_SHORT_5_5_5_1&&(X=i.RGB5_A1)}return(X===i.R16F||X===i.R32F||X===i.RG16F||X===i.RG32F||X===i.RGBA16F||X===i.RGBA32F)&&t.get("EXT_color_buffer_float"),X}function E(y,v){let U;return y?v===null||v===Pn||v===ai?U=i.DEPTH24_STENCIL8:v===Qe?U=i.DEPTH32F_STENCIL8:v===Ai&&(U=i.DEPTH24_STENCIL8,console.warn("DepthTexture: 16 bit depth attachment is not supported with stencil. Using 24-bit attachment.")):v===null||v===Pn||v===ai?U=i.DEPTH_COMPONENT24:v===Qe?U=i.DEPTH_COMPONENT32F:v===Ai&&(U=i.DEPTH_COMPONENT16),U}function A(y,v){return d(y)===!0||y.isFramebufferTexture&&y.minFilter!==Le&&y.minFilter!==Fe?Math.log2(Math.max(v.width,v.height))+1:y.mipmaps!==void 0&&y.mipmaps.length>0?y.mipmaps.length:y.isCompressedTexture&&Array.isArray(y.image)?v.mipmaps.length:1}function F(y){const v=y.target;v.removeEventListener("dispose",F),b(v),v.isVideoTexture&&u.delete(v)}function R(y){const v=y.target;v.removeEventListener("dispose",R),tt(v)}function b(y){const v=n.get(y);if(v.__webglInit===void 0)return;const U=y.source,Y=p.get(U);if(Y){const K=Y[v.__cacheKey];K.usedTimes--,K.usedTimes===0&&O(y),Object.keys(Y).length===0&&p.delete(U)}n.remove(y)}function O(y){const v=n.get(y);i.deleteTexture(v.__webglTexture);const U=y.source,Y=p.get(U);delete Y[v.__cacheKey],a.memory.textures--}function tt(y){const v=n.get(y);if(y.depthTexture&&y.depthTexture.dispose(),y.isWebGLCubeRenderTarget)for(let Y=0;Y<6;Y++){if(Array.isArray(v.__webglFramebuffer[Y]))for(let K=0;K=r.maxTextures&&console.warn("THREE.WebGLTextures: Trying to use "+y+" texture units while this GPU supports only "+r.maxTextures),g+=1,y}function z(y){const v=[];return v.push(y.wrapS),v.push(y.wrapT),v.push(y.wrapR||0),v.push(y.magFilter),v.push(y.minFilter),v.push(y.anisotropy),v.push(y.internalFormat),v.push(y.format),v.push(y.type),v.push(y.generateMipmaps),v.push(y.premultiplyAlpha),v.push(y.flipY),v.push(y.unpackAlignment),v.push(y.colorSpace),v.join()}function k(y,v){const U=n.get(y);if(y.isVideoTexture&&yt(y),y.isRenderTargetTexture===!1&&y.version>0&&U.__version!==y.version){const Y=y.image;if(Y===null)console.warn("THREE.WebGLRenderer: Texture marked for update but no image data found.");else if(Y.complete===!1)console.warn("THREE.WebGLRenderer: Texture marked for update but image is incomplete");else{Xt(U,y,v);return}}e.bindTexture(i.TEXTURE_2D,U.__webglTexture,i.TEXTURE0+v)}function Z(y,v){const U=n.get(y);if(y.version>0&&U.__version!==y.version){Xt(U,y,v);return}e.bindTexture(i.TEXTURE_2D_ARRAY,U.__webglTexture,i.TEXTURE0+v)}function B(y,v){const U=n.get(y);if(y.version>0&&U.__version!==y.version){Xt(U,y,v);return}e.bindTexture(i.TEXTURE_3D,U.__webglTexture,i.TEXTURE0+v)}function J(y,v){const U=n.get(y);if(y.version>0&&U.__version!==y.version){W(U,y,v);return}e.bindTexture(i.TEXTURE_CUBE_MAP,U.__webglTexture,i.TEXTURE0+v)}const G={[Ts]:i.REPEAT,[Rn]:i.CLAMP_TO_EDGE,[As]:i.MIRRORED_REPEAT},ot={[Le]:i.NEAREST,[uc]:i.NEAREST_MIPMAP_NEAREST,[Ii]:i.NEAREST_MIPMAP_LINEAR,[Fe]:i.LINEAR,[Lr]:i.LINEAR_MIPMAP_NEAREST,[Cn]:i.LINEAR_MIPMAP_LINEAR},lt={[mc]:i.NEVER,[Sc]:i.ALWAYS,[_c]:i.LESS,[nl]:i.LEQUAL,[gc]:i.EQUAL,[Mc]:i.GEQUAL,[vc]:i.GREATER,[xc]:i.NOTEQUAL};function _t(y,v){if(v.type===Qe&&t.has("OES_texture_float_linear")===!1&&(v.magFilter===Fe||v.magFilter===Lr||v.magFilter===Ii||v.magFilter===Cn||v.minFilter===Fe||v.minFilter===Lr||v.minFilter===Ii||v.minFilter===Cn)&&console.warn("THREE.WebGLRenderer: Unable to use linear filtering with floating point textures. OES_texture_float_linear not supported on this device."),i.texParameteri(y,i.TEXTURE_WRAP_S,G[v.wrapS]),i.texParameteri(y,i.TEXTURE_WRAP_T,G[v.wrapT]),(y===i.TEXTURE_3D||y===i.TEXTURE_2D_ARRAY)&&i.texParameteri(y,i.TEXTURE_WRAP_R,G[v.wrapR]),i.texParameteri(y,i.TEXTURE_MAG_FILTER,ot[v.magFilter]),i.texParameteri(y,i.TEXTURE_MIN_FILTER,ot[v.minFilter]),v.compareFunction&&(i.texParameteri(y,i.TEXTURE_COMPARE_MODE,i.COMPARE_REF_TO_TEXTURE),i.texParameteri(y,i.TEXTURE_COMPARE_FUNC,lt[v.compareFunction])),t.has("EXT_texture_filter_anisotropic")===!0){if(v.magFilter===Le||v.minFilter!==Ii&&v.minFilter!==Cn||v.type===Qe&&t.has("OES_texture_float_linear")===!1)return;if(v.anisotropy>1||n.get(v).__currentAnisotropy){const U=t.get("EXT_texture_filter_anisotropic");i.texParameterf(y,U.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(v.anisotropy,r.getMaxAnisotropy())),n.get(v).__currentAnisotropy=v.anisotropy}}}function Ht(y,v){let U=!1;y.__webglInit===void 0&&(y.__webglInit=!0,v.addEventListener("dispose",F));const Y=v.source;let K=p.get(Y);K===void 0&&(K={},p.set(Y,K));const X=z(v);if(X!==y.__cacheKey){K[X]===void 0&&(K[X]={texture:i.createTexture(),usedTimes:0},a.memory.textures++,U=!0),K[X].usedTimes++;const gt=K[y.__cacheKey];gt!==void 0&&(K[y.__cacheKey].usedTimes--,gt.usedTimes===0&&O(v)),y.__cacheKey=X,y.__webglTexture=K[X].texture}return U}function Xt(y,v,U){let Y=i.TEXTURE_2D;(v.isDataArrayTexture||v.isCompressedArrayTexture)&&(Y=i.TEXTURE_2D_ARRAY),v.isData3DTexture&&(Y=i.TEXTURE_3D);const K=Ht(y,v),X=v.source;e.bindTexture(Y,y.__webglTexture,i.TEXTURE0+U);const gt=n.get(X);if(X.version!==gt.__version||K===!0){e.activeTexture(i.TEXTURE0+U);const nt=Wt.getPrimaries(Wt.workingColorSpace),ht=v.colorSpace===dn?null:Wt.getPrimaries(v.colorSpace),Bt=v.colorSpace===dn||nt===ht?i.NONE:i.BROWSER_DEFAULT_WEBGL;i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,v.flipY),i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,v.premultiplyAlpha),i.pixelStorei(i.UNPACK_ALIGNMENT,v.unpackAlignment),i.pixelStorei(i.UNPACK_COLORSPACE_CONVERSION_WEBGL,Bt);let $=x(v.image,!1,r.maxTextureSize);$=Jt(v,$);const ut=s.convert(v.format,v.colorSpace),Tt=s.convert(v.type);let At=T(v.internalFormat,ut,Tt,v.colorSpace,v.isVideoTexture);_t(Y,v);let dt;const Ut=v.mipmaps,Ct=v.isVideoTexture!==!0,jt=gt.__version===void 0||K===!0,C=X.dataReady,st=A(v,$);if(v.isDepthTexture)At=E(v.format===oi,v.type),jt&&(Ct?e.texStorage2D(i.TEXTURE_2D,1,At,$.width,$.height):e.texImage2D(i.TEXTURE_2D,0,At,$.width,$.height,0,ut,Tt,null));else if(v.isDataTexture)if(Ut.length>0){Ct&&jt&&e.texStorage2D(i.TEXTURE_2D,st,At,Ut[0].width,Ut[0].height);for(let H=0,q=Ut.length;H0){const it=xo(dt.width,dt.height,v.format,v.type);for(const at of v.layerUpdates){const Ft=dt.data.subarray(at*it/dt.data.BYTES_PER_ELEMENT,(at+1)*it/dt.data.BYTES_PER_ELEMENT);e.compressedTexSubImage3D(i.TEXTURE_2D_ARRAY,H,0,0,at,dt.width,dt.height,1,ut,Ft,0,0)}v.clearLayerUpdates()}else e.compressedTexSubImage3D(i.TEXTURE_2D_ARRAY,H,0,0,0,dt.width,dt.height,$.depth,ut,dt.data,0,0)}else e.compressedTexImage3D(i.TEXTURE_2D_ARRAY,H,At,dt.width,dt.height,$.depth,0,dt.data,0,0);else console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()");else Ct?C&&e.texSubImage3D(i.TEXTURE_2D_ARRAY,H,0,0,0,dt.width,dt.height,$.depth,ut,Tt,dt.data):e.texImage3D(i.TEXTURE_2D_ARRAY,H,At,dt.width,dt.height,$.depth,0,ut,Tt,dt.data)}else{Ct&&jt&&e.texStorage2D(i.TEXTURE_2D,st,At,Ut[0].width,Ut[0].height);for(let H=0,q=Ut.length;H0){const H=xo($.width,$.height,v.format,v.type);for(const q of v.layerUpdates){const it=$.data.subarray(q*H/$.data.BYTES_PER_ELEMENT,(q+1)*H/$.data.BYTES_PER_ELEMENT);e.texSubImage3D(i.TEXTURE_2D_ARRAY,0,0,0,q,$.width,$.height,1,ut,Tt,it)}v.clearLayerUpdates()}else e.texSubImage3D(i.TEXTURE_2D_ARRAY,0,0,0,0,$.width,$.height,$.depth,ut,Tt,$.data)}else e.texImage3D(i.TEXTURE_2D_ARRAY,0,At,$.width,$.height,$.depth,0,ut,Tt,$.data);else if(v.isData3DTexture)Ct?(jt&&e.texStorage3D(i.TEXTURE_3D,st,At,$.width,$.height,$.depth),C&&e.texSubImage3D(i.TEXTURE_3D,0,0,0,0,$.width,$.height,$.depth,ut,Tt,$.data)):e.texImage3D(i.TEXTURE_3D,0,At,$.width,$.height,$.depth,0,ut,Tt,$.data);else if(v.isFramebufferTexture){if(jt)if(Ct)e.texStorage2D(i.TEXTURE_2D,st,At,$.width,$.height);else{let H=$.width,q=$.height;for(let it=0;it>=1,q>>=1}}else if(Ut.length>0){if(Ct&&jt){const H=bt(Ut[0]);e.texStorage2D(i.TEXTURE_2D,st,At,H.width,H.height)}for(let H=0,q=Ut.length;H0&&st++;const q=bt(ut[0]);e.texStorage2D(i.TEXTURE_CUBE_MAP,st,Ut,q.width,q.height)}for(let q=0;q<6;q++)if($){Ct?C&&e.texSubImage2D(i.TEXTURE_CUBE_MAP_POSITIVE_X+q,0,0,0,ut[q].width,ut[q].height,At,dt,ut[q].data):e.texImage2D(i.TEXTURE_CUBE_MAP_POSITIVE_X+q,0,Ut,ut[q].width,ut[q].height,0,At,dt,ut[q].data);for(let it=0;it>X),ut=Math.max(1,v.height>>X);K===i.TEXTURE_3D||K===i.TEXTURE_2D_ARRAY?e.texImage3D(K,X,ht,$,ut,v.depth,0,gt,nt,null):e.texImage2D(K,X,ht,$,ut,0,gt,nt,null)}e.bindFramebuffer(i.FRAMEBUFFER,y),Ot(v)?o.framebufferTexture2DMultisampleEXT(i.FRAMEBUFFER,Y,K,n.get(U).__webglTexture,0,Dt(v)):(K===i.TEXTURE_2D||K>=i.TEXTURE_CUBE_MAP_POSITIVE_X&&K<=i.TEXTURE_CUBE_MAP_NEGATIVE_Z)&&i.framebufferTexture2D(i.FRAMEBUFFER,Y,K,n.get(U).__webglTexture,X),e.bindFramebuffer(i.FRAMEBUFFER,null)}function pt(y,v,U){if(i.bindRenderbuffer(i.RENDERBUFFER,y),v.depthBuffer){const Y=v.depthTexture,K=Y&&Y.isDepthTexture?Y.type:null,X=E(v.stencilBuffer,K),gt=v.stencilBuffer?i.DEPTH_STENCIL_ATTACHMENT:i.DEPTH_ATTACHMENT,nt=Dt(v);Ot(v)?o.renderbufferStorageMultisampleEXT(i.RENDERBUFFER,nt,X,v.width,v.height):U?i.renderbufferStorageMultisample(i.RENDERBUFFER,nt,X,v.width,v.height):i.renderbufferStorage(i.RENDERBUFFER,X,v.width,v.height),i.framebufferRenderbuffer(i.FRAMEBUFFER,gt,i.RENDERBUFFER,y)}else{const Y=v.textures;for(let K=0;K{delete v.__boundDepthTexture,delete v.__depthDisposeCallback,Y.removeEventListener("dispose",K)};Y.addEventListener("dispose",K),v.__depthDisposeCallback=K}v.__boundDepthTexture=Y}if(y.depthTexture&&!v.__autoAllocateDepthBuffer){if(U)throw new Error("target.depthTexture not supported in Cube render targets");ct(v.__webglFramebuffer,y)}else if(U){v.__webglDepthbuffer=[];for(let Y=0;Y<6;Y++)if(e.bindFramebuffer(i.FRAMEBUFFER,v.__webglFramebuffer[Y]),v.__webglDepthbuffer[Y]===void 0)v.__webglDepthbuffer[Y]=i.createRenderbuffer(),pt(v.__webglDepthbuffer[Y],y,!1);else{const K=y.stencilBuffer?i.DEPTH_STENCIL_ATTACHMENT:i.DEPTH_ATTACHMENT,X=v.__webglDepthbuffer[Y];i.bindRenderbuffer(i.RENDERBUFFER,X),i.framebufferRenderbuffer(i.FRAMEBUFFER,K,i.RENDERBUFFER,X)}}else if(e.bindFramebuffer(i.FRAMEBUFFER,v.__webglFramebuffer),v.__webglDepthbuffer===void 0)v.__webglDepthbuffer=i.createRenderbuffer(),pt(v.__webglDepthbuffer,y,!1);else{const Y=y.stencilBuffer?i.DEPTH_STENCIL_ATTACHMENT:i.DEPTH_ATTACHMENT,K=v.__webglDepthbuffer;i.bindRenderbuffer(i.RENDERBUFFER,K),i.framebufferRenderbuffer(i.FRAMEBUFFER,Y,i.RENDERBUFFER,K)}e.bindFramebuffer(i.FRAMEBUFFER,null)}function St(y,v,U){const Y=n.get(y);v!==void 0&&j(Y.__webglFramebuffer,y,y.texture,i.COLOR_ATTACHMENT0,i.TEXTURE_2D,0),U!==void 0&&Rt(y)}function It(y){const v=y.texture,U=n.get(y),Y=n.get(v);y.addEventListener("dispose",R);const K=y.textures,X=y.isWebGLCubeRenderTarget===!0,gt=K.length>1;if(gt||(Y.__webglTexture===void 0&&(Y.__webglTexture=i.createTexture()),Y.__version=v.version,a.memory.textures++),X){U.__webglFramebuffer=[];for(let nt=0;nt<6;nt++)if(v.mipmaps&&v.mipmaps.length>0){U.__webglFramebuffer[nt]=[];for(let ht=0;ht0){U.__webglFramebuffer=[];for(let nt=0;nt0&&Ot(y)===!1){U.__webglMultisampledFramebuffer=i.createFramebuffer(),U.__webglColorRenderbuffer=[],e.bindFramebuffer(i.FRAMEBUFFER,U.__webglMultisampledFramebuffer);for(let nt=0;nt0)for(let ht=0;ht0)for(let ht=0;ht0){if(Ot(y)===!1){const v=y.textures,U=y.width,Y=y.height;let K=i.COLOR_BUFFER_BIT;const X=y.stencilBuffer?i.DEPTH_STENCIL_ATTACHMENT:i.DEPTH_ATTACHMENT,gt=n.get(y),nt=v.length>1;if(nt)for(let ht=0;ht0&&t.has("WEBGL_multisampled_render_to_texture")===!0&&v.__useRenderToTexture!==!1}function yt(y){const v=a.render.frame;u.get(y)!==v&&(u.set(y,v),y.update())}function Jt(y,v){const U=y.colorSpace,Y=y.format,K=y.type;return y.isCompressedTexture===!0||y.isVideoTexture===!0||U!==gn&&U!==dn&&(Wt.getTransfer(U)===te?(Y!==Be||K!==en)&&console.warn("THREE.WebGLTextures: sRGB encoded textures have to use RGBAFormat and UnsignedByteType."):console.error("THREE.WebGLTextures: Unsupported texture color space:",U)),v}function bt(y){return typeof HTMLImageElement<"u"&&y instanceof HTMLImageElement?(c.width=y.naturalWidth||y.width,c.height=y.naturalHeight||y.height):typeof VideoFrame<"u"&&y instanceof VideoFrame?(c.width=y.displayWidth,c.height=y.displayHeight):(c.width=y.width,c.height=y.height),c}this.allocateTextureUnit=V,this.resetTextureUnits=S,this.setTexture2D=k,this.setTexture2DArray=Z,this.setTexture3D=B,this.setTextureCube=J,this.rebindTextures=St,this.setupRenderTarget=It,this.updateRenderTargetMipmap=qt,this.updateMultisampleRenderTarget=Ee,this.setupDepthRenderbuffer=Rt,this.setupFrameBufferTexture=j,this.useMultisampledRTT=Ot}function Wp(i,t){function e(n,r=dn){let s;const a=Wt.getTransfer(r);if(n===en)return i.UNSIGNED_BYTE;if(n===ea)return i.UNSIGNED_SHORT_4_4_4_4;if(n===na)return i.UNSIGNED_SHORT_5_5_5_1;if(n===qo)return i.UNSIGNED_INT_5_9_9_9_REV;if(n===Xo)return i.BYTE;if(n===Yo)return i.SHORT;if(n===Ai)return i.UNSIGNED_SHORT;if(n===ta)return i.INT;if(n===Pn)return i.UNSIGNED_INT;if(n===Qe)return i.FLOAT;if(n===Ri)return i.HALF_FLOAT;if(n===Ko)return i.ALPHA;if(n===Zo)return i.RGB;if(n===Be)return i.RGBA;if(n===jo)return i.LUMINANCE;if(n===$o)return i.LUMINANCE_ALPHA;if(n===ei)return i.DEPTH_COMPONENT;if(n===oi)return i.DEPTH_STENCIL;if(n===Jo)return i.RED;if(n===ia)return i.RED_INTEGER;if(n===Qo)return i.RG;if(n===ra)return i.RG_INTEGER;if(n===sa)return i.RGBA_INTEGER;if(n===or||n===lr||n===cr||n===hr)if(a===te)if(s=t.get("WEBGL_compressed_texture_s3tc_srgb"),s!==null){if(n===or)return s.COMPRESSED_SRGB_S3TC_DXT1_EXT;if(n===lr)return s.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT;if(n===cr)return s.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT;if(n===hr)return s.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT}else return null;else if(s=t.get("WEBGL_compressed_texture_s3tc"),s!==null){if(n===or)return s.COMPRESSED_RGB_S3TC_DXT1_EXT;if(n===lr)return s.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(n===cr)return s.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(n===hr)return s.COMPRESSED_RGBA_S3TC_DXT5_EXT}else return null;if(n===bs||n===ws||n===Rs||n===Cs)if(s=t.get("WEBGL_compressed_texture_pvrtc"),s!==null){if(n===bs)return s.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(n===ws)return s.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(n===Rs)return s.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(n===Cs)return s.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}else return null;if(n===Ps||n===Ls||n===Ds)if(s=t.get("WEBGL_compressed_texture_etc"),s!==null){if(n===Ps||n===Ls)return a===te?s.COMPRESSED_SRGB8_ETC2:s.COMPRESSED_RGB8_ETC2;if(n===Ds)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:s.COMPRESSED_RGBA8_ETC2_EAC}else return null;if(n===Us||n===Is||n===Ns||n===Fs||n===Os||n===Bs||n===zs||n===Hs||n===Gs||n===Vs||n===ks||n===Ws||n===Xs||n===Ys)if(s=t.get("WEBGL_compressed_texture_astc"),s!==null){if(n===Us)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR:s.COMPRESSED_RGBA_ASTC_4x4_KHR;if(n===Is)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR:s.COMPRESSED_RGBA_ASTC_5x4_KHR;if(n===Ns)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR:s.COMPRESSED_RGBA_ASTC_5x5_KHR;if(n===Fs)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR:s.COMPRESSED_RGBA_ASTC_6x5_KHR;if(n===Os)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR:s.COMPRESSED_RGBA_ASTC_6x6_KHR;if(n===Bs)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR:s.COMPRESSED_RGBA_ASTC_8x5_KHR;if(n===zs)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR:s.COMPRESSED_RGBA_ASTC_8x6_KHR;if(n===Hs)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR:s.COMPRESSED_RGBA_ASTC_8x8_KHR;if(n===Gs)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR:s.COMPRESSED_RGBA_ASTC_10x5_KHR;if(n===Vs)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR:s.COMPRESSED_RGBA_ASTC_10x6_KHR;if(n===ks)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR:s.COMPRESSED_RGBA_ASTC_10x8_KHR;if(n===Ws)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR:s.COMPRESSED_RGBA_ASTC_10x10_KHR;if(n===Xs)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR:s.COMPRESSED_RGBA_ASTC_12x10_KHR;if(n===Ys)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR:s.COMPRESSED_RGBA_ASTC_12x12_KHR}else return null;if(n===ur||n===qs||n===Ks)if(s=t.get("EXT_texture_compression_bptc"),s!==null){if(n===ur)return a===te?s.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT:s.COMPRESSED_RGBA_BPTC_UNORM_EXT;if(n===qs)return s.COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT;if(n===Ks)return s.COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT}else return null;if(n===tl||n===Zs||n===js||n===$s)if(s=t.get("EXT_texture_compression_rgtc"),s!==null){if(n===ur)return s.COMPRESSED_RED_RGTC1_EXT;if(n===Zs)return s.COMPRESSED_SIGNED_RED_RGTC1_EXT;if(n===js)return s.COMPRESSED_RED_GREEN_RGTC2_EXT;if(n===$s)return s.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT}else return null;return n===ai?i.UNSIGNED_INT_24_8:i[n]!==void 0?i[n]:null}return{convert:e}}class Xp extends we{constructor(t=[]){super(),this.isArrayCamera=!0,this.cameras=t}}class er extends fe{constructor(){super(),this.isGroup=!0,this.type="Group"}}const Yp={type:"move"};class ss{constructor(){this._targetRay=null,this._grip=null,this._hand=null}getHandSpace(){return this._hand===null&&(this._hand=new er,this._hand.matrixAutoUpdate=!1,this._hand.visible=!1,this._hand.joints={},this._hand.inputState={pinching:!1}),this._hand}getTargetRaySpace(){return this._targetRay===null&&(this._targetRay=new er,this._targetRay.matrixAutoUpdate=!1,this._targetRay.visible=!1,this._targetRay.hasLinearVelocity=!1,this._targetRay.linearVelocity=new L,this._targetRay.hasAngularVelocity=!1,this._targetRay.angularVelocity=new L),this._targetRay}getGripSpace(){return this._grip===null&&(this._grip=new er,this._grip.matrixAutoUpdate=!1,this._grip.visible=!1,this._grip.hasLinearVelocity=!1,this._grip.linearVelocity=new L,this._grip.hasAngularVelocity=!1,this._grip.angularVelocity=new L),this._grip}dispatchEvent(t){return this._targetRay!==null&&this._targetRay.dispatchEvent(t),this._grip!==null&&this._grip.dispatchEvent(t),this._hand!==null&&this._hand.dispatchEvent(t),this}connect(t){if(t&&t.hand){const e=this._hand;if(e)for(const n of t.hand.values())this._getHandJoint(e,n)}return this.dispatchEvent({type:"connected",data:t}),this}disconnect(t){return this.dispatchEvent({type:"disconnected",data:t}),this._targetRay!==null&&(this._targetRay.visible=!1),this._grip!==null&&(this._grip.visible=!1),this._hand!==null&&(this._hand.visible=!1),this}update(t,e,n){let r=null,s=null,a=null;const o=this._targetRay,l=this._grip,c=this._hand;if(t&&e.session.visibilityState!=="visible-blurred"){if(c&&t.hand){a=!0;for(const x of t.hand.values()){const d=e.getJointPose(x,n),h=this._getHandJoint(c,x);d!==null&&(h.matrix.fromArray(d.transform.matrix),h.matrix.decompose(h.position,h.rotation,h.scale),h.matrixWorldNeedsUpdate=!0,h.jointRadius=d.radius),h.visible=d!==null}const u=c.joints["index-finger-tip"],f=c.joints["thumb-tip"],p=u.position.distanceTo(f.position),m=.02,_=.005;c.inputState.pinching&&p>m+_?(c.inputState.pinching=!1,this.dispatchEvent({type:"pinchend",handedness:t.handedness,target:this})):!c.inputState.pinching&&p<=m-_&&(c.inputState.pinching=!0,this.dispatchEvent({type:"pinchstart",handedness:t.handedness,target:this}))}else l!==null&&t.gripSpace&&(s=e.getPose(t.gripSpace,n),s!==null&&(l.matrix.fromArray(s.transform.matrix),l.matrix.decompose(l.position,l.rotation,l.scale),l.matrixWorldNeedsUpdate=!0,s.linearVelocity?(l.hasLinearVelocity=!0,l.linearVelocity.copy(s.linearVelocity)):l.hasLinearVelocity=!1,s.angularVelocity?(l.hasAngularVelocity=!0,l.angularVelocity.copy(s.angularVelocity)):l.hasAngularVelocity=!1));o!==null&&(r=e.getPose(t.targetRaySpace,n),r===null&&s!==null&&(r=s),r!==null&&(o.matrix.fromArray(r.transform.matrix),o.matrix.decompose(o.position,o.rotation,o.scale),o.matrixWorldNeedsUpdate=!0,r.linearVelocity?(o.hasLinearVelocity=!0,o.linearVelocity.copy(r.linearVelocity)):o.hasLinearVelocity=!1,r.angularVelocity?(o.hasAngularVelocity=!0,o.angularVelocity.copy(r.angularVelocity)):o.hasAngularVelocity=!1,this.dispatchEvent(Yp)))}return o!==null&&(o.visible=r!==null),l!==null&&(l.visible=s!==null),c!==null&&(c.visible=a!==null),this}_getHandJoint(t,e){if(t.joints[e.jointName]===void 0){const n=new er;n.matrixAutoUpdate=!1,n.visible=!1,t.joints[e.jointName]=n,t.add(n)}return t.joints[e.jointName]}}const qp=` +}`;function Xp(i,t,e){let n=new fa;const r=new wt,s=new wt,a=new Zt,o=new Gp({depthPacking:xc}),l=new kp,c={},u=e.maxTextureSize,f={[mn]:_e,[_e]:mn,[ke]:ke},p=new _n({defines:{VSM_SAMPLES:8},uniforms:{shadow_pass:{value:null},resolution:{value:new wt},radius:{value:4}},vertexShader:Vp,fragmentShader:Wp}),m=p.clone();m.defines.HORIZONTAL_PASS=1;const _=new ze;_.setAttribute("position",new Ve(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));const x=new Re(_,p),d=this;this.enabled=!1,this.autoUpdate=!0,this.needsUpdate=!1,this.type=Ko;let h=this.type;this.render=function(R,b,O){if(d.enabled===!1||d.autoUpdate===!1&&d.needsUpdate===!1||R.length===0)return;const tt=i.getRenderTarget(),g=i.getActiveCubeFace(),S=i.getActiveMipmapLevel(),k=i.state;k.setBlending(fn),k.buffers.color.setClear(1,1,1,1),k.buffers.depth.setTest(!0),k.setScissorTest(!1);const z=h!==$e&&this.type===$e,V=h===$e&&this.type!==$e;for(let Z=0,B=R.length;Zu||r.y>u)&&(r.x>u&&(s.x=Math.floor(u/ot.x),r.x=s.x*ot.x,G.mapSize.x=s.x),r.y>u&&(s.y=Math.floor(u/ot.y),r.y=s.y*ot.y,G.mapSize.y=s.y)),G.map===null||z===!0||V===!0){const _t=this.type!==$e?{minFilter:Le,magFilter:Le}:{};G.map!==null&&G.map.dispose(),G.map=new Ln(r.x,r.y,_t),G.map.texture.name=J.name+".shadowMap",G.camera.updateProjectionMatrix()}i.setRenderTarget(G.map),i.clear();const lt=G.getViewportCount();for(let _t=0;_t0||b.map&&b.alphaTest>0){const k=g.uuid,z=b.uuid;let V=c[k];V===void 0&&(V={},c[k]=V);let Z=V[z];Z===void 0&&(Z=g.clone(),V[z]=Z,b.addEventListener("dispose",F)),g=Z}if(g.visible=b.visible,g.wireframe=b.wireframe,tt===$e?g.side=b.shadowSide!==null?b.shadowSide:b.side:g.side=b.shadowSide!==null?b.shadowSide:f[b.side],g.alphaMap=b.alphaMap,g.alphaTest=b.alphaTest,g.map=b.map,g.clipShadows=b.clipShadows,g.clippingPlanes=b.clippingPlanes,g.clipIntersection=b.clipIntersection,g.displacementMap=b.displacementMap,g.displacementScale=b.displacementScale,g.displacementBias=b.displacementBias,g.wireframeLinewidth=b.wireframeLinewidth,g.linewidth=b.linewidth,O.isPointLight===!0&&g.isMeshDistanceMaterial===!0){const k=i.properties.get(g);k.light=O}return g}function A(R,b,O,tt,g){if(R.visible===!1)return;if(R.layers.test(b.layers)&&(R.isMesh||R.isLine||R.isPoints)&&(R.castShadow||R.receiveShadow&&g===$e)&&(!R.frustumCulled||n.intersectsObject(R))){R.modelViewMatrix.multiplyMatrices(O.matrixWorldInverse,R.matrixWorld);const z=t.update(R),V=R.material;if(Array.isArray(V)){const Z=z.groups;for(let B=0,J=Z.length;B=1):J.indexOf("OpenGL ES")!==-1&&(B=parseFloat(/^OpenGL ES (\d)/.exec(J)[1]),Z=B>=2);let G=null,ot={};const lt=i.getParameter(i.SCISSOR_BOX),_t=i.getParameter(i.VIEWPORT),Ht=new Zt().fromArray(lt),Xt=new Zt().fromArray(_t);function W(C,st,H,q){const it=new Uint8Array(4),at=i.createTexture();i.bindTexture(C,at),i.texParameteri(C,i.TEXTURE_MIN_FILTER,i.NEAREST),i.texParameteri(C,i.TEXTURE_MAG_FILTER,i.NEAREST);for(let Ft=0;Ft"u"?!1:/OculusBrowser/g.test(navigator.userAgent),c=new wt,u=new WeakMap;let f;const p=new WeakMap;let m=!1;try{m=typeof OffscreenCanvas<"u"&&new OffscreenCanvas(1,1).getContext("2d")!==null}catch{}function _(y,v){return m?new OffscreenCanvas(y,v):Pi("canvas")}function x(y,v,U){let Y=1;const K=bt(y);if((K.width>U||K.height>U)&&(Y=U/Math.max(K.width,K.height)),Y<1)if(typeof HTMLImageElement<"u"&&y instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&y instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&y instanceof ImageBitmap||typeof VideoFrame<"u"&&y instanceof VideoFrame){const X=Math.floor(Y*K.width),gt=Math.floor(Y*K.height);f===void 0&&(f=_(X,gt));const nt=v?_(X,gt):f;return nt.width=X,nt.height=gt,nt.getContext("2d").drawImage(y,0,0,X,gt),console.warn("THREE.WebGLRenderer: Texture has been resized from ("+K.width+"x"+K.height+") to ("+X+"x"+gt+")."),nt}else return"data"in y&&console.warn("THREE.WebGLRenderer: Image in DataTexture is too big ("+K.width+"x"+K.height+")."),y;return y}function d(y){return y.generateMipmaps&&y.minFilter!==Le&&y.minFilter!==Fe}function h(y){i.generateMipmap(y)}function T(y,v,U,Y,K=!1){if(y!==null){if(i[y]!==void 0)return i[y];console.warn("THREE.WebGLRenderer: Attempt to use non-existing WebGL internal format '"+y+"'")}let X=v;if(v===i.RED&&(U===i.FLOAT&&(X=i.R32F),U===i.HALF_FLOAT&&(X=i.R16F),U===i.UNSIGNED_BYTE&&(X=i.R8)),v===i.RED_INTEGER&&(U===i.UNSIGNED_BYTE&&(X=i.R8UI),U===i.UNSIGNED_SHORT&&(X=i.R16UI),U===i.UNSIGNED_INT&&(X=i.R32UI),U===i.BYTE&&(X=i.R8I),U===i.SHORT&&(X=i.R16I),U===i.INT&&(X=i.R32I)),v===i.RG&&(U===i.FLOAT&&(X=i.RG32F),U===i.HALF_FLOAT&&(X=i.RG16F),U===i.UNSIGNED_BYTE&&(X=i.RG8)),v===i.RG_INTEGER&&(U===i.UNSIGNED_BYTE&&(X=i.RG8UI),U===i.UNSIGNED_SHORT&&(X=i.RG16UI),U===i.UNSIGNED_INT&&(X=i.RG32UI),U===i.BYTE&&(X=i.RG8I),U===i.SHORT&&(X=i.RG16I),U===i.INT&&(X=i.RG32I)),v===i.RGB_INTEGER&&(U===i.UNSIGNED_BYTE&&(X=i.RGB8UI),U===i.UNSIGNED_SHORT&&(X=i.RGB16UI),U===i.UNSIGNED_INT&&(X=i.RGB32UI),U===i.BYTE&&(X=i.RGB8I),U===i.SHORT&&(X=i.RGB16I),U===i.INT&&(X=i.RGB32I)),v===i.RGBA_INTEGER&&(U===i.UNSIGNED_BYTE&&(X=i.RGBA8UI),U===i.UNSIGNED_SHORT&&(X=i.RGBA16UI),U===i.UNSIGNED_INT&&(X=i.RGBA32UI),U===i.BYTE&&(X=i.RGBA8I),U===i.SHORT&&(X=i.RGBA16I),U===i.INT&&(X=i.RGBA32I)),v===i.RGB&&U===i.UNSIGNED_INT_5_9_9_9_REV&&(X=i.RGB9_E5),v===i.RGBA){const gt=K?gr:Wt.getTransfer(Y);U===i.FLOAT&&(X=i.RGBA32F),U===i.HALF_FLOAT&&(X=i.RGBA16F),U===i.UNSIGNED_BYTE&&(X=gt===te?i.SRGB8_ALPHA8:i.RGBA8),U===i.UNSIGNED_SHORT_4_4_4_4&&(X=i.RGBA4),U===i.UNSIGNED_SHORT_5_5_5_1&&(X=i.RGB5_A1)}return(X===i.R16F||X===i.R32F||X===i.RG16F||X===i.RG32F||X===i.RGBA16F||X===i.RGBA32F)&&t.get("EXT_color_buffer_float"),X}function E(y,v){let U;return y?v===null||v===Pn||v===oi?U=i.DEPTH24_STENCIL8:v===Qe?U=i.DEPTH32F_STENCIL8:v===Ri&&(U=i.DEPTH24_STENCIL8,console.warn("DepthTexture: 16 bit depth attachment is not supported with stencil. Using 24-bit attachment.")):v===null||v===Pn||v===oi?U=i.DEPTH_COMPONENT24:v===Qe?U=i.DEPTH_COMPONENT32F:v===Ri&&(U=i.DEPTH_COMPONENT16),U}function A(y,v){return d(y)===!0||y.isFramebufferTexture&&y.minFilter!==Le&&y.minFilter!==Fe?Math.log2(Math.max(v.width,v.height))+1:y.mipmaps!==void 0&&y.mipmaps.length>0?y.mipmaps.length:y.isCompressedTexture&&Array.isArray(y.image)?v.mipmaps.length:1}function F(y){const v=y.target;v.removeEventListener("dispose",F),b(v),v.isVideoTexture&&u.delete(v)}function R(y){const v=y.target;v.removeEventListener("dispose",R),tt(v)}function b(y){const v=n.get(y);if(v.__webglInit===void 0)return;const U=y.source,Y=p.get(U);if(Y){const K=Y[v.__cacheKey];K.usedTimes--,K.usedTimes===0&&O(y),Object.keys(Y).length===0&&p.delete(U)}n.remove(y)}function O(y){const v=n.get(y);i.deleteTexture(v.__webglTexture);const U=y.source,Y=p.get(U);delete Y[v.__cacheKey],a.memory.textures--}function tt(y){const v=n.get(y);if(y.depthTexture&&y.depthTexture.dispose(),y.isWebGLCubeRenderTarget)for(let Y=0;Y<6;Y++){if(Array.isArray(v.__webglFramebuffer[Y]))for(let K=0;K=r.maxTextures&&console.warn("THREE.WebGLTextures: Trying to use "+y+" texture units while this GPU supports only "+r.maxTextures),g+=1,y}function z(y){const v=[];return v.push(y.wrapS),v.push(y.wrapT),v.push(y.wrapR||0),v.push(y.magFilter),v.push(y.minFilter),v.push(y.anisotropy),v.push(y.internalFormat),v.push(y.format),v.push(y.type),v.push(y.generateMipmaps),v.push(y.premultiplyAlpha),v.push(y.flipY),v.push(y.unpackAlignment),v.push(y.colorSpace),v.join()}function V(y,v){const U=n.get(y);if(y.isVideoTexture&&yt(y),y.isRenderTargetTexture===!1&&y.version>0&&U.__version!==y.version){const Y=y.image;if(Y===null)console.warn("THREE.WebGLRenderer: Texture marked for update but no image data found.");else if(Y.complete===!1)console.warn("THREE.WebGLRenderer: Texture marked for update but image is incomplete");else{Xt(U,y,v);return}}e.bindTexture(i.TEXTURE_2D,U.__webglTexture,i.TEXTURE0+v)}function Z(y,v){const U=n.get(y);if(y.version>0&&U.__version!==y.version){Xt(U,y,v);return}e.bindTexture(i.TEXTURE_2D_ARRAY,U.__webglTexture,i.TEXTURE0+v)}function B(y,v){const U=n.get(y);if(y.version>0&&U.__version!==y.version){Xt(U,y,v);return}e.bindTexture(i.TEXTURE_3D,U.__webglTexture,i.TEXTURE0+v)}function J(y,v){const U=n.get(y);if(y.version>0&&U.__version!==y.version){W(U,y,v);return}e.bindTexture(i.TEXTURE_CUBE_MAP,U.__webglTexture,i.TEXTURE0+v)}const G={[ws]:i.REPEAT,[Rn]:i.CLAMP_TO_EDGE,[Rs]:i.MIRRORED_REPEAT},ot={[Le]:i.NEAREST,[gc]:i.NEAREST_MIPMAP_NEAREST,[Oi]:i.NEAREST_MIPMAP_LINEAR,[Fe]:i.LINEAR,[Nr]:i.LINEAR_MIPMAP_NEAREST,[Cn]:i.LINEAR_MIPMAP_LINEAR},lt={[Sc]:i.NEVER,[wc]:i.ALWAYS,[Ec]:i.LESS,[cl]:i.LEQUAL,[yc]:i.EQUAL,[bc]:i.GEQUAL,[Tc]:i.GREATER,[Ac]:i.NOTEQUAL};function _t(y,v){if(v.type===Qe&&t.has("OES_texture_float_linear")===!1&&(v.magFilter===Fe||v.magFilter===Nr||v.magFilter===Oi||v.magFilter===Cn||v.minFilter===Fe||v.minFilter===Nr||v.minFilter===Oi||v.minFilter===Cn)&&console.warn("THREE.WebGLRenderer: Unable to use linear filtering with floating point textures. OES_texture_float_linear not supported on this device."),i.texParameteri(y,i.TEXTURE_WRAP_S,G[v.wrapS]),i.texParameteri(y,i.TEXTURE_WRAP_T,G[v.wrapT]),(y===i.TEXTURE_3D||y===i.TEXTURE_2D_ARRAY)&&i.texParameteri(y,i.TEXTURE_WRAP_R,G[v.wrapR]),i.texParameteri(y,i.TEXTURE_MAG_FILTER,ot[v.magFilter]),i.texParameteri(y,i.TEXTURE_MIN_FILTER,ot[v.minFilter]),v.compareFunction&&(i.texParameteri(y,i.TEXTURE_COMPARE_MODE,i.COMPARE_REF_TO_TEXTURE),i.texParameteri(y,i.TEXTURE_COMPARE_FUNC,lt[v.compareFunction])),t.has("EXT_texture_filter_anisotropic")===!0){if(v.magFilter===Le||v.minFilter!==Oi&&v.minFilter!==Cn||v.type===Qe&&t.has("OES_texture_float_linear")===!1)return;if(v.anisotropy>1||n.get(v).__currentAnisotropy){const U=t.get("EXT_texture_filter_anisotropic");i.texParameterf(y,U.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(v.anisotropy,r.getMaxAnisotropy())),n.get(v).__currentAnisotropy=v.anisotropy}}}function Ht(y,v){let U=!1;y.__webglInit===void 0&&(y.__webglInit=!0,v.addEventListener("dispose",F));const Y=v.source;let K=p.get(Y);K===void 0&&(K={},p.set(Y,K));const X=z(v);if(X!==y.__cacheKey){K[X]===void 0&&(K[X]={texture:i.createTexture(),usedTimes:0},a.memory.textures++,U=!0),K[X].usedTimes++;const gt=K[y.__cacheKey];gt!==void 0&&(K[y.__cacheKey].usedTimes--,gt.usedTimes===0&&O(v)),y.__cacheKey=X,y.__webglTexture=K[X].texture}return U}function Xt(y,v,U){let Y=i.TEXTURE_2D;(v.isDataArrayTexture||v.isCompressedArrayTexture)&&(Y=i.TEXTURE_2D_ARRAY),v.isData3DTexture&&(Y=i.TEXTURE_3D);const K=Ht(y,v),X=v.source;e.bindTexture(Y,y.__webglTexture,i.TEXTURE0+U);const gt=n.get(X);if(X.version!==gt.__version||K===!0){e.activeTexture(i.TEXTURE0+U);const nt=Wt.getPrimaries(Wt.workingColorSpace),ht=v.colorSpace===dn?null:Wt.getPrimaries(v.colorSpace),Bt=v.colorSpace===dn||nt===ht?i.NONE:i.BROWSER_DEFAULT_WEBGL;i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,v.flipY),i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,v.premultiplyAlpha),i.pixelStorei(i.UNPACK_ALIGNMENT,v.unpackAlignment),i.pixelStorei(i.UNPACK_COLORSPACE_CONVERSION_WEBGL,Bt);let $=x(v.image,!1,r.maxTextureSize);$=Jt(v,$);const ut=s.convert(v.format,v.colorSpace),Tt=s.convert(v.type);let At=T(v.internalFormat,ut,Tt,v.colorSpace,v.isVideoTexture);_t(Y,v);let dt;const Ut=v.mipmaps,Ct=v.isVideoTexture!==!0,jt=gt.__version===void 0||K===!0,C=X.dataReady,st=A(v,$);if(v.isDepthTexture)At=E(v.format===li,v.type),jt&&(Ct?e.texStorage2D(i.TEXTURE_2D,1,At,$.width,$.height):e.texImage2D(i.TEXTURE_2D,0,At,$.width,$.height,0,ut,Tt,null));else if(v.isDataTexture)if(Ut.length>0){Ct&&jt&&e.texStorage2D(i.TEXTURE_2D,st,At,Ut[0].width,Ut[0].height);for(let H=0,q=Ut.length;H0){const it=Ao(dt.width,dt.height,v.format,v.type);for(const at of v.layerUpdates){const Ft=dt.data.subarray(at*it/dt.data.BYTES_PER_ELEMENT,(at+1)*it/dt.data.BYTES_PER_ELEMENT);e.compressedTexSubImage3D(i.TEXTURE_2D_ARRAY,H,0,0,at,dt.width,dt.height,1,ut,Ft,0,0)}v.clearLayerUpdates()}else e.compressedTexSubImage3D(i.TEXTURE_2D_ARRAY,H,0,0,0,dt.width,dt.height,$.depth,ut,dt.data,0,0)}else e.compressedTexImage3D(i.TEXTURE_2D_ARRAY,H,At,dt.width,dt.height,$.depth,0,dt.data,0,0);else console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()");else Ct?C&&e.texSubImage3D(i.TEXTURE_2D_ARRAY,H,0,0,0,dt.width,dt.height,$.depth,ut,Tt,dt.data):e.texImage3D(i.TEXTURE_2D_ARRAY,H,At,dt.width,dt.height,$.depth,0,ut,Tt,dt.data)}else{Ct&&jt&&e.texStorage2D(i.TEXTURE_2D,st,At,Ut[0].width,Ut[0].height);for(let H=0,q=Ut.length;H0){const H=Ao($.width,$.height,v.format,v.type);for(const q of v.layerUpdates){const it=$.data.subarray(q*H/$.data.BYTES_PER_ELEMENT,(q+1)*H/$.data.BYTES_PER_ELEMENT);e.texSubImage3D(i.TEXTURE_2D_ARRAY,0,0,0,q,$.width,$.height,1,ut,Tt,it)}v.clearLayerUpdates()}else e.texSubImage3D(i.TEXTURE_2D_ARRAY,0,0,0,0,$.width,$.height,$.depth,ut,Tt,$.data)}else e.texImage3D(i.TEXTURE_2D_ARRAY,0,At,$.width,$.height,$.depth,0,ut,Tt,$.data);else if(v.isData3DTexture)Ct?(jt&&e.texStorage3D(i.TEXTURE_3D,st,At,$.width,$.height,$.depth),C&&e.texSubImage3D(i.TEXTURE_3D,0,0,0,0,$.width,$.height,$.depth,ut,Tt,$.data)):e.texImage3D(i.TEXTURE_3D,0,At,$.width,$.height,$.depth,0,ut,Tt,$.data);else if(v.isFramebufferTexture){if(jt)if(Ct)e.texStorage2D(i.TEXTURE_2D,st,At,$.width,$.height);else{let H=$.width,q=$.height;for(let it=0;it>=1,q>>=1}}else if(Ut.length>0){if(Ct&&jt){const H=bt(Ut[0]);e.texStorage2D(i.TEXTURE_2D,st,At,H.width,H.height)}for(let H=0,q=Ut.length;H0&&st++;const q=bt(ut[0]);e.texStorage2D(i.TEXTURE_CUBE_MAP,st,Ut,q.width,q.height)}for(let q=0;q<6;q++)if($){Ct?C&&e.texSubImage2D(i.TEXTURE_CUBE_MAP_POSITIVE_X+q,0,0,0,ut[q].width,ut[q].height,At,dt,ut[q].data):e.texImage2D(i.TEXTURE_CUBE_MAP_POSITIVE_X+q,0,Ut,ut[q].width,ut[q].height,0,At,dt,ut[q].data);for(let it=0;it>X),ut=Math.max(1,v.height>>X);K===i.TEXTURE_3D||K===i.TEXTURE_2D_ARRAY?e.texImage3D(K,X,ht,$,ut,v.depth,0,gt,nt,null):e.texImage2D(K,X,ht,$,ut,0,gt,nt,null)}e.bindFramebuffer(i.FRAMEBUFFER,y),Ot(v)?o.framebufferTexture2DMultisampleEXT(i.FRAMEBUFFER,Y,K,n.get(U).__webglTexture,0,Dt(v)):(K===i.TEXTURE_2D||K>=i.TEXTURE_CUBE_MAP_POSITIVE_X&&K<=i.TEXTURE_CUBE_MAP_NEGATIVE_Z)&&i.framebufferTexture2D(i.FRAMEBUFFER,Y,K,n.get(U).__webglTexture,X),e.bindFramebuffer(i.FRAMEBUFFER,null)}function pt(y,v,U){if(i.bindRenderbuffer(i.RENDERBUFFER,y),v.depthBuffer){const Y=v.depthTexture,K=Y&&Y.isDepthTexture?Y.type:null,X=E(v.stencilBuffer,K),gt=v.stencilBuffer?i.DEPTH_STENCIL_ATTACHMENT:i.DEPTH_ATTACHMENT,nt=Dt(v);Ot(v)?o.renderbufferStorageMultisampleEXT(i.RENDERBUFFER,nt,X,v.width,v.height):U?i.renderbufferStorageMultisample(i.RENDERBUFFER,nt,X,v.width,v.height):i.renderbufferStorage(i.RENDERBUFFER,X,v.width,v.height),i.framebufferRenderbuffer(i.FRAMEBUFFER,gt,i.RENDERBUFFER,y)}else{const Y=v.textures;for(let K=0;K{delete v.__boundDepthTexture,delete v.__depthDisposeCallback,Y.removeEventListener("dispose",K)};Y.addEventListener("dispose",K),v.__depthDisposeCallback=K}v.__boundDepthTexture=Y}if(y.depthTexture&&!v.__autoAllocateDepthBuffer){if(U)throw new Error("target.depthTexture not supported in Cube render targets");ct(v.__webglFramebuffer,y)}else if(U){v.__webglDepthbuffer=[];for(let Y=0;Y<6;Y++)if(e.bindFramebuffer(i.FRAMEBUFFER,v.__webglFramebuffer[Y]),v.__webglDepthbuffer[Y]===void 0)v.__webglDepthbuffer[Y]=i.createRenderbuffer(),pt(v.__webglDepthbuffer[Y],y,!1);else{const K=y.stencilBuffer?i.DEPTH_STENCIL_ATTACHMENT:i.DEPTH_ATTACHMENT,X=v.__webglDepthbuffer[Y];i.bindRenderbuffer(i.RENDERBUFFER,X),i.framebufferRenderbuffer(i.FRAMEBUFFER,K,i.RENDERBUFFER,X)}}else if(e.bindFramebuffer(i.FRAMEBUFFER,v.__webglFramebuffer),v.__webglDepthbuffer===void 0)v.__webglDepthbuffer=i.createRenderbuffer(),pt(v.__webglDepthbuffer,y,!1);else{const Y=y.stencilBuffer?i.DEPTH_STENCIL_ATTACHMENT:i.DEPTH_ATTACHMENT,K=v.__webglDepthbuffer;i.bindRenderbuffer(i.RENDERBUFFER,K),i.framebufferRenderbuffer(i.FRAMEBUFFER,Y,i.RENDERBUFFER,K)}e.bindFramebuffer(i.FRAMEBUFFER,null)}function St(y,v,U){const Y=n.get(y);v!==void 0&&j(Y.__webglFramebuffer,y,y.texture,i.COLOR_ATTACHMENT0,i.TEXTURE_2D,0),U!==void 0&&Rt(y)}function It(y){const v=y.texture,U=n.get(y),Y=n.get(v);y.addEventListener("dispose",R);const K=y.textures,X=y.isWebGLCubeRenderTarget===!0,gt=K.length>1;if(gt||(Y.__webglTexture===void 0&&(Y.__webglTexture=i.createTexture()),Y.__version=v.version,a.memory.textures++),X){U.__webglFramebuffer=[];for(let nt=0;nt<6;nt++)if(v.mipmaps&&v.mipmaps.length>0){U.__webglFramebuffer[nt]=[];for(let ht=0;ht0){U.__webglFramebuffer=[];for(let nt=0;nt0&&Ot(y)===!1){U.__webglMultisampledFramebuffer=i.createFramebuffer(),U.__webglColorRenderbuffer=[],e.bindFramebuffer(i.FRAMEBUFFER,U.__webglMultisampledFramebuffer);for(let nt=0;nt0)for(let ht=0;ht0)for(let ht=0;ht0){if(Ot(y)===!1){const v=y.textures,U=y.width,Y=y.height;let K=i.COLOR_BUFFER_BIT;const X=y.stencilBuffer?i.DEPTH_STENCIL_ATTACHMENT:i.DEPTH_ATTACHMENT,gt=n.get(y),nt=v.length>1;if(nt)for(let ht=0;ht0&&t.has("WEBGL_multisampled_render_to_texture")===!0&&v.__useRenderToTexture!==!1}function yt(y){const v=a.render.frame;u.get(y)!==v&&(u.set(y,v),y.update())}function Jt(y,v){const U=y.colorSpace,Y=y.format,K=y.type;return y.isCompressedTexture===!0||y.isVideoTexture===!0||U!==gn&&U!==dn&&(Wt.getTransfer(U)===te?(Y!==Be||K!==en)&&console.warn("THREE.WebGLTextures: sRGB encoded textures have to use RGBAFormat and UnsignedByteType."):console.error("THREE.WebGLTextures: Unsupported texture color space:",U)),v}function bt(y){return typeof HTMLImageElement<"u"&&y instanceof HTMLImageElement?(c.width=y.naturalWidth||y.width,c.height=y.naturalHeight||y.height):typeof VideoFrame<"u"&&y instanceof VideoFrame?(c.width=y.displayWidth,c.height=y.displayHeight):(c.width=y.width,c.height=y.height),c}this.allocateTextureUnit=k,this.resetTextureUnits=S,this.setTexture2D=V,this.setTexture2DArray=Z,this.setTexture3D=B,this.setTextureCube=J,this.rebindTextures=St,this.setupRenderTarget=It,this.updateRenderTargetMipmap=qt,this.updateMultisampleRenderTarget=Ee,this.setupDepthRenderbuffer=Rt,this.setupFrameBufferTexture=j,this.useMultisampledRTT=Ot}function jp(i,t){function e(n,r=dn){let s;const a=Wt.getTransfer(r);if(n===en)return i.UNSIGNED_BYTE;if(n===ra)return i.UNSIGNED_SHORT_4_4_4_4;if(n===sa)return i.UNSIGNED_SHORT_5_5_5_1;if(n===tl)return i.UNSIGNED_INT_5_9_9_9_REV;if(n===Jo)return i.BYTE;if(n===Qo)return i.SHORT;if(n===Ri)return i.UNSIGNED_SHORT;if(n===ia)return i.INT;if(n===Pn)return i.UNSIGNED_INT;if(n===Qe)return i.FLOAT;if(n===Li)return i.HALF_FLOAT;if(n===el)return i.ALPHA;if(n===nl)return i.RGB;if(n===Be)return i.RGBA;if(n===il)return i.LUMINANCE;if(n===rl)return i.LUMINANCE_ALPHA;if(n===ni)return i.DEPTH_COMPONENT;if(n===li)return i.DEPTH_STENCIL;if(n===sl)return i.RED;if(n===aa)return i.RED_INTEGER;if(n===al)return i.RG;if(n===oa)return i.RG_INTEGER;if(n===la)return i.RGBA_INTEGER;if(n===hr||n===ur||n===dr||n===fr)if(a===te)if(s=t.get("WEBGL_compressed_texture_s3tc_srgb"),s!==null){if(n===hr)return s.COMPRESSED_SRGB_S3TC_DXT1_EXT;if(n===ur)return s.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT;if(n===dr)return s.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT;if(n===fr)return s.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT}else return null;else if(s=t.get("WEBGL_compressed_texture_s3tc"),s!==null){if(n===hr)return s.COMPRESSED_RGB_S3TC_DXT1_EXT;if(n===ur)return s.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(n===dr)return s.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(n===fr)return s.COMPRESSED_RGBA_S3TC_DXT5_EXT}else return null;if(n===Cs||n===Ps||n===Ls||n===Ds)if(s=t.get("WEBGL_compressed_texture_pvrtc"),s!==null){if(n===Cs)return s.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(n===Ps)return s.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(n===Ls)return s.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(n===Ds)return s.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}else return null;if(n===Us||n===Is||n===Ns)if(s=t.get("WEBGL_compressed_texture_etc"),s!==null){if(n===Us||n===Is)return a===te?s.COMPRESSED_SRGB8_ETC2:s.COMPRESSED_RGB8_ETC2;if(n===Ns)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:s.COMPRESSED_RGBA8_ETC2_EAC}else return null;if(n===Fs||n===Os||n===Bs||n===zs||n===Hs||n===Gs||n===ks||n===Vs||n===Ws||n===Xs||n===Ys||n===qs||n===Ks||n===Zs)if(s=t.get("WEBGL_compressed_texture_astc"),s!==null){if(n===Fs)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR:s.COMPRESSED_RGBA_ASTC_4x4_KHR;if(n===Os)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR:s.COMPRESSED_RGBA_ASTC_5x4_KHR;if(n===Bs)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR:s.COMPRESSED_RGBA_ASTC_5x5_KHR;if(n===zs)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR:s.COMPRESSED_RGBA_ASTC_6x5_KHR;if(n===Hs)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR:s.COMPRESSED_RGBA_ASTC_6x6_KHR;if(n===Gs)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR:s.COMPRESSED_RGBA_ASTC_8x5_KHR;if(n===ks)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR:s.COMPRESSED_RGBA_ASTC_8x6_KHR;if(n===Vs)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR:s.COMPRESSED_RGBA_ASTC_8x8_KHR;if(n===Ws)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR:s.COMPRESSED_RGBA_ASTC_10x5_KHR;if(n===Xs)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR:s.COMPRESSED_RGBA_ASTC_10x6_KHR;if(n===Ys)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR:s.COMPRESSED_RGBA_ASTC_10x8_KHR;if(n===qs)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR:s.COMPRESSED_RGBA_ASTC_10x10_KHR;if(n===Ks)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR:s.COMPRESSED_RGBA_ASTC_12x10_KHR;if(n===Zs)return a===te?s.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR:s.COMPRESSED_RGBA_ASTC_12x12_KHR}else return null;if(n===pr||n===js||n===$s)if(s=t.get("EXT_texture_compression_bptc"),s!==null){if(n===pr)return a===te?s.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT:s.COMPRESSED_RGBA_BPTC_UNORM_EXT;if(n===js)return s.COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT;if(n===$s)return s.COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT}else return null;if(n===ol||n===Js||n===Qs||n===ta)if(s=t.get("EXT_texture_compression_rgtc"),s!==null){if(n===pr)return s.COMPRESSED_RED_RGTC1_EXT;if(n===Js)return s.COMPRESSED_SIGNED_RED_RGTC1_EXT;if(n===Qs)return s.COMPRESSED_RED_GREEN_RGTC2_EXT;if(n===ta)return s.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT}else return null;return n===oi?i.UNSIGNED_INT_24_8:i[n]!==void 0?i[n]:null}return{convert:e}}class $p extends we{constructor(t=[]){super(),this.isArrayCamera=!0,this.cameras=t}}class rr extends fe{constructor(){super(),this.isGroup=!0,this.type="Group"}}const Jp={type:"move"};class cs{constructor(){this._targetRay=null,this._grip=null,this._hand=null}getHandSpace(){return this._hand===null&&(this._hand=new rr,this._hand.matrixAutoUpdate=!1,this._hand.visible=!1,this._hand.joints={},this._hand.inputState={pinching:!1}),this._hand}getTargetRaySpace(){return this._targetRay===null&&(this._targetRay=new rr,this._targetRay.matrixAutoUpdate=!1,this._targetRay.visible=!1,this._targetRay.hasLinearVelocity=!1,this._targetRay.linearVelocity=new L,this._targetRay.hasAngularVelocity=!1,this._targetRay.angularVelocity=new L),this._targetRay}getGripSpace(){return this._grip===null&&(this._grip=new rr,this._grip.matrixAutoUpdate=!1,this._grip.visible=!1,this._grip.hasLinearVelocity=!1,this._grip.linearVelocity=new L,this._grip.hasAngularVelocity=!1,this._grip.angularVelocity=new L),this._grip}dispatchEvent(t){return this._targetRay!==null&&this._targetRay.dispatchEvent(t),this._grip!==null&&this._grip.dispatchEvent(t),this._hand!==null&&this._hand.dispatchEvent(t),this}connect(t){if(t&&t.hand){const e=this._hand;if(e)for(const n of t.hand.values())this._getHandJoint(e,n)}return this.dispatchEvent({type:"connected",data:t}),this}disconnect(t){return this.dispatchEvent({type:"disconnected",data:t}),this._targetRay!==null&&(this._targetRay.visible=!1),this._grip!==null&&(this._grip.visible=!1),this._hand!==null&&(this._hand.visible=!1),this}update(t,e,n){let r=null,s=null,a=null;const o=this._targetRay,l=this._grip,c=this._hand;if(t&&e.session.visibilityState!=="visible-blurred"){if(c&&t.hand){a=!0;for(const x of t.hand.values()){const d=e.getJointPose(x,n),h=this._getHandJoint(c,x);d!==null&&(h.matrix.fromArray(d.transform.matrix),h.matrix.decompose(h.position,h.rotation,h.scale),h.matrixWorldNeedsUpdate=!0,h.jointRadius=d.radius),h.visible=d!==null}const u=c.joints["index-finger-tip"],f=c.joints["thumb-tip"],p=u.position.distanceTo(f.position),m=.02,_=.005;c.inputState.pinching&&p>m+_?(c.inputState.pinching=!1,this.dispatchEvent({type:"pinchend",handedness:t.handedness,target:this})):!c.inputState.pinching&&p<=m-_&&(c.inputState.pinching=!0,this.dispatchEvent({type:"pinchstart",handedness:t.handedness,target:this}))}else l!==null&&t.gripSpace&&(s=e.getPose(t.gripSpace,n),s!==null&&(l.matrix.fromArray(s.transform.matrix),l.matrix.decompose(l.position,l.rotation,l.scale),l.matrixWorldNeedsUpdate=!0,s.linearVelocity?(l.hasLinearVelocity=!0,l.linearVelocity.copy(s.linearVelocity)):l.hasLinearVelocity=!1,s.angularVelocity?(l.hasAngularVelocity=!0,l.angularVelocity.copy(s.angularVelocity)):l.hasAngularVelocity=!1));o!==null&&(r=e.getPose(t.targetRaySpace,n),r===null&&s!==null&&(r=s),r!==null&&(o.matrix.fromArray(r.transform.matrix),o.matrix.decompose(o.position,o.rotation,o.scale),o.matrixWorldNeedsUpdate=!0,r.linearVelocity?(o.hasLinearVelocity=!0,o.linearVelocity.copy(r.linearVelocity)):o.hasLinearVelocity=!1,r.angularVelocity?(o.hasAngularVelocity=!0,o.angularVelocity.copy(r.angularVelocity)):o.hasAngularVelocity=!1,this.dispatchEvent(Jp)))}return o!==null&&(o.visible=r!==null),l!==null&&(l.visible=s!==null),c!==null&&(c.visible=a!==null),this}_getHandJoint(t,e){if(t.joints[e.jointName]===void 0){const n=new rr;n.matrixAutoUpdate=!1,n.visible=!1,t.joints[e.jointName]=n,t.add(n)}return t.joints[e.jointName]}}const Qp=` void main() { gl_Position = vec4( position, 1.0 ); -}`,Kp=` +}`,tm=` uniform sampler2DArray depthColor; uniform float depthWidth; uniform float depthHeight; @@ -3836,4 +3836,4 @@ void main() { } -}`;class Zp{constructor(){this.texture=null,this.mesh=null,this.depthNear=0,this.depthFar=0}init(t,e,n){if(this.texture===null){const r=new ge,s=t.properties.get(r);s.__webglTexture=e.texture,(e.depthNear!=n.depthNear||e.depthFar!=n.depthFar)&&(this.depthNear=e.depthNear,this.depthFar=e.depthFar),this.texture=r}}getMesh(t){if(this.texture!==null&&this.mesh===null){const e=t.cameras[0].viewport,n=new _n({vertexShader:qp,fragmentShader:Kp,uniforms:{depthColor:{value:this.texture},depthWidth:{value:e.z},depthHeight:{value:e.w}}});this.mesh=new Re(new Tr(20,20),n)}return this.mesh}reset(){this.texture=null,this.mesh=null}getDepthTexture(){return this.texture}}class jp extends Un{constructor(t,e){super();const n=this;let r=null,s=1,a=null,o="local-floor",l=1,c=null,u=null,f=null,p=null,m=null,_=null;const x=new Zp,d=e.getContextAttributes();let h=null,T=null;const E=[],A=[],F=new wt;let R=null;const b=new we;b.layers.enable(1),b.viewport=new Zt;const O=new we;O.layers.enable(2),O.viewport=new Zt;const tt=[b,O],g=new Xp;g.layers.enable(1),g.layers.enable(2);let S=null,V=null;this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(W){let j=E[W];return j===void 0&&(j=new ss,E[W]=j),j.getTargetRaySpace()},this.getControllerGrip=function(W){let j=E[W];return j===void 0&&(j=new ss,E[W]=j),j.getGripSpace()},this.getHand=function(W){let j=E[W];return j===void 0&&(j=new ss,E[W]=j),j.getHandSpace()};function z(W){const j=A.indexOf(W.inputSource);if(j===-1)return;const pt=E[j];pt!==void 0&&(pt.update(W.inputSource,W.frame,c||a),pt.dispatchEvent({type:W.type,data:W.inputSource}))}function k(){r.removeEventListener("select",z),r.removeEventListener("selectstart",z),r.removeEventListener("selectend",z),r.removeEventListener("squeeze",z),r.removeEventListener("squeezestart",z),r.removeEventListener("squeezeend",z),r.removeEventListener("end",k),r.removeEventListener("inputsourceschange",Z);for(let W=0;W=0&&(A[ct]=null,E[ct].disconnect(pt))}for(let j=0;j=A.length){A.push(pt),ct=St;break}else if(A[St]===null){A[St]=pt,ct=St;break}if(ct===-1)break}const Rt=E[ct];Rt&&Rt.connect(pt)}}const B=new L,J=new L;function G(W,j,pt){B.setFromMatrixPosition(j.matrixWorld),J.setFromMatrixPosition(pt.matrixWorld);const ct=B.distanceTo(J),Rt=j.projectionMatrix.elements,St=pt.projectionMatrix.elements,It=Rt[14]/(Rt[10]-1),qt=Rt[14]/(Rt[10]+1),Nt=(Rt[9]+1)/Rt[5],w=(Rt[9]-1)/Rt[5],Ee=(Rt[8]-1)/Rt[0],Dt=(St[8]+1)/St[0],Ot=It*Ee,yt=It*Dt,Jt=ct/(-Ee+Dt),bt=Jt*-Ee;if(j.matrixWorld.decompose(W.position,W.quaternion,W.scale),W.translateX(bt),W.translateZ(Jt),W.matrixWorld.compose(W.position,W.quaternion,W.scale),W.matrixWorldInverse.copy(W.matrixWorld).invert(),Rt[10]===-1)W.projectionMatrix.copy(j.projectionMatrix),W.projectionMatrixInverse.copy(j.projectionMatrixInverse);else{const y=It+Jt,v=qt+Jt,U=Ot-bt,Y=yt+(ct-bt),K=Nt*qt/v*y,X=w*qt/v*y;W.projectionMatrix.makePerspective(U,Y,K,X,y,v),W.projectionMatrixInverse.copy(W.projectionMatrix).invert()}}function ot(W,j){j===null?W.matrixWorld.copy(W.matrix):W.matrixWorld.multiplyMatrices(j.matrixWorld,W.matrix),W.matrixWorldInverse.copy(W.matrixWorld).invert()}this.updateCamera=function(W){if(r===null)return;let j=W.near,pt=W.far;x.texture!==null&&(x.depthNear>0&&(j=x.depthNear),x.depthFar>0&&(pt=x.depthFar)),g.near=O.near=b.near=j,g.far=O.far=b.far=pt,(S!==g.near||V!==g.far)&&(r.updateRenderState({depthNear:g.near,depthFar:g.far}),S=g.near,V=g.far);const ct=W.parent,Rt=g.cameras;ot(g,ct);for(let St=0;St0&&(d.alphaTest.value=h.alphaTest);const T=t.get(h),E=T.envMap,A=T.envMapRotation;E&&(d.envMap.value=E,Tn.copy(A),Tn.x*=-1,Tn.y*=-1,Tn.z*=-1,E.isCubeTexture&&E.isRenderTargetTexture===!1&&(Tn.y*=-1,Tn.z*=-1),d.envMapRotation.value.setFromMatrix4($p.makeRotationFromEuler(Tn)),d.flipEnvMap.value=E.isCubeTexture&&E.isRenderTargetTexture===!1?-1:1,d.reflectivity.value=h.reflectivity,d.ior.value=h.ior,d.refractionRatio.value=h.refractionRatio),h.lightMap&&(d.lightMap.value=h.lightMap,d.lightMapIntensity.value=h.lightMapIntensity,e(h.lightMap,d.lightMapTransform)),h.aoMap&&(d.aoMap.value=h.aoMap,d.aoMapIntensity.value=h.aoMapIntensity,e(h.aoMap,d.aoMapTransform))}function a(d,h){d.diffuse.value.copy(h.color),d.opacity.value=h.opacity,h.map&&(d.map.value=h.map,e(h.map,d.mapTransform))}function o(d,h){d.dashSize.value=h.dashSize,d.totalSize.value=h.dashSize+h.gapSize,d.scale.value=h.scale}function l(d,h,T,E){d.diffuse.value.copy(h.color),d.opacity.value=h.opacity,d.size.value=h.size*T,d.scale.value=E*.5,h.map&&(d.map.value=h.map,e(h.map,d.uvTransform)),h.alphaMap&&(d.alphaMap.value=h.alphaMap,e(h.alphaMap,d.alphaMapTransform)),h.alphaTest>0&&(d.alphaTest.value=h.alphaTest)}function c(d,h){d.diffuse.value.copy(h.color),d.opacity.value=h.opacity,d.rotation.value=h.rotation,h.map&&(d.map.value=h.map,e(h.map,d.mapTransform)),h.alphaMap&&(d.alphaMap.value=h.alphaMap,e(h.alphaMap,d.alphaMapTransform)),h.alphaTest>0&&(d.alphaTest.value=h.alphaTest)}function u(d,h){d.specular.value.copy(h.specular),d.shininess.value=Math.max(h.shininess,1e-4)}function f(d,h){h.gradientMap&&(d.gradientMap.value=h.gradientMap)}function p(d,h){d.metalness.value=h.metalness,h.metalnessMap&&(d.metalnessMap.value=h.metalnessMap,e(h.metalnessMap,d.metalnessMapTransform)),d.roughness.value=h.roughness,h.roughnessMap&&(d.roughnessMap.value=h.roughnessMap,e(h.roughnessMap,d.roughnessMapTransform)),h.envMap&&(d.envMapIntensity.value=h.envMapIntensity)}function m(d,h,T){d.ior.value=h.ior,h.sheen>0&&(d.sheenColor.value.copy(h.sheenColor).multiplyScalar(h.sheen),d.sheenRoughness.value=h.sheenRoughness,h.sheenColorMap&&(d.sheenColorMap.value=h.sheenColorMap,e(h.sheenColorMap,d.sheenColorMapTransform)),h.sheenRoughnessMap&&(d.sheenRoughnessMap.value=h.sheenRoughnessMap,e(h.sheenRoughnessMap,d.sheenRoughnessMapTransform))),h.clearcoat>0&&(d.clearcoat.value=h.clearcoat,d.clearcoatRoughness.value=h.clearcoatRoughness,h.clearcoatMap&&(d.clearcoatMap.value=h.clearcoatMap,e(h.clearcoatMap,d.clearcoatMapTransform)),h.clearcoatRoughnessMap&&(d.clearcoatRoughnessMap.value=h.clearcoatRoughnessMap,e(h.clearcoatRoughnessMap,d.clearcoatRoughnessMapTransform)),h.clearcoatNormalMap&&(d.clearcoatNormalMap.value=h.clearcoatNormalMap,e(h.clearcoatNormalMap,d.clearcoatNormalMapTransform),d.clearcoatNormalScale.value.copy(h.clearcoatNormalScale),h.side===_e&&d.clearcoatNormalScale.value.negate())),h.dispersion>0&&(d.dispersion.value=h.dispersion),h.iridescence>0&&(d.iridescence.value=h.iridescence,d.iridescenceIOR.value=h.iridescenceIOR,d.iridescenceThicknessMinimum.value=h.iridescenceThicknessRange[0],d.iridescenceThicknessMaximum.value=h.iridescenceThicknessRange[1],h.iridescenceMap&&(d.iridescenceMap.value=h.iridescenceMap,e(h.iridescenceMap,d.iridescenceMapTransform)),h.iridescenceThicknessMap&&(d.iridescenceThicknessMap.value=h.iridescenceThicknessMap,e(h.iridescenceThicknessMap,d.iridescenceThicknessMapTransform))),h.transmission>0&&(d.transmission.value=h.transmission,d.transmissionSamplerMap.value=T.texture,d.transmissionSamplerSize.value.set(T.width,T.height),h.transmissionMap&&(d.transmissionMap.value=h.transmissionMap,e(h.transmissionMap,d.transmissionMapTransform)),d.thickness.value=h.thickness,h.thicknessMap&&(d.thicknessMap.value=h.thicknessMap,e(h.thicknessMap,d.thicknessMapTransform)),d.attenuationDistance.value=h.attenuationDistance,d.attenuationColor.value.copy(h.attenuationColor)),h.anisotropy>0&&(d.anisotropyVector.value.set(h.anisotropy*Math.cos(h.anisotropyRotation),h.anisotropy*Math.sin(h.anisotropyRotation)),h.anisotropyMap&&(d.anisotropyMap.value=h.anisotropyMap,e(h.anisotropyMap,d.anisotropyMapTransform))),d.specularIntensity.value=h.specularIntensity,d.specularColor.value.copy(h.specularColor),h.specularColorMap&&(d.specularColorMap.value=h.specularColorMap,e(h.specularColorMap,d.specularColorMapTransform)),h.specularIntensityMap&&(d.specularIntensityMap.value=h.specularIntensityMap,e(h.specularIntensityMap,d.specularIntensityMapTransform))}function _(d,h){h.matcap&&(d.matcap.value=h.matcap)}function x(d,h){const T=t.get(h).light;d.referencePosition.value.setFromMatrixPosition(T.matrixWorld),d.nearDistance.value=T.shadow.camera.near,d.farDistance.value=T.shadow.camera.far}return{refreshFogUniforms:n,refreshMaterialUniforms:r}}function Qp(i,t,e,n){let r={},s={},a=[];const o=i.getParameter(i.MAX_UNIFORM_BUFFER_BINDINGS);function l(T,E){const A=E.program;n.uniformBlockBinding(T,A)}function c(T,E){let A=r[T.id];A===void 0&&(_(T),A=u(T),r[T.id]=A,T.addEventListener("dispose",d));const F=E.program;n.updateUBOMapping(T,F);const R=t.render.frame;s[T.id]!==R&&(p(T),s[T.id]=R)}function u(T){const E=f();T.__bindingPointIndex=E;const A=i.createBuffer(),F=T.__size,R=T.usage;return i.bindBuffer(i.UNIFORM_BUFFER,A),i.bufferData(i.UNIFORM_BUFFER,F,R),i.bindBuffer(i.UNIFORM_BUFFER,null),i.bindBufferBase(i.UNIFORM_BUFFER,E,A),A}function f(){for(let T=0;T0&&(A+=F-R),T.__size=A,T.__cache={},this}function x(T){const E={boundary:0,storage:0};return typeof T=="number"||typeof T=="boolean"?(E.boundary=4,E.storage=4):T.isVector2?(E.boundary=8,E.storage=8):T.isVector3||T.isColor?(E.boundary=16,E.storage=12):T.isVector4?(E.boundary=16,E.storage=16):T.isMatrix3?(E.boundary=48,E.storage=48):T.isMatrix4?(E.boundary=64,E.storage=64):T.isTexture?console.warn("THREE.WebGLRenderer: Texture samplers can not be part of an uniforms group."):console.warn("THREE.WebGLRenderer: Unsupported uniform value type.",T),E}function d(T){const E=T.target;E.removeEventListener("dispose",d);const A=a.indexOf(E.__bindingPointIndex);a.splice(A,1),i.deleteBuffer(r[E.id]),delete r[E.id],delete s[E.id]}function h(){for(const T in r)i.deleteBuffer(r[T]);a=[],r={},s={}}return{bind:l,update:c,dispose:h}}class tm{constructor(t={}){const{canvas:e=zc(),context:n=null,depth:r=!0,stencil:s=!1,alpha:a=!1,antialias:o=!1,premultipliedAlpha:l=!0,preserveDrawingBuffer:c=!1,powerPreference:u="default",failIfMajorPerformanceCaveat:f=!1}=t;this.isWebGLRenderer=!0;let p;if(n!==null){if(typeof WebGLRenderingContext<"u"&&n instanceof WebGLRenderingContext)throw new Error("THREE.WebGLRenderer: WebGL 1 is not supported since r163.");p=n.getContextAttributes().alpha}else p=a;const m=new Uint32Array(4),_=new Int32Array(4);let x=null,d=null;const h=[],T=[];this.domElement=e,this.debug={checkShaderErrors:!0,onShaderError:null},this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this._outputColorSpace=He,this.toneMapping=pn,this.toneMappingExposure=1;const E=this;let A=!1,F=0,R=0,b=null,O=-1,tt=null;const g=new Zt,S=new Zt;let V=null;const z=new zt(0);let k=0,Z=e.width,B=e.height,J=1,G=null,ot=null;const lt=new Zt(0,0,Z,B),_t=new Zt(0,0,Z,B);let Ht=!1;const Xt=new ha;let W=!1,j=!1;const pt=new $t,ct=new $t,Rt=new L,St=new Zt,It={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0};let qt=!1;function Nt(){return b===null?J:1}let w=n;function Ee(M,P){return e.getContext(M,P)}try{const M={alpha:!0,depth:r,stencil:s,antialias:o,premultipliedAlpha:l,preserveDrawingBuffer:c,powerPreference:u,failIfMajorPerformanceCaveat:f};if("setAttribute"in e&&e.setAttribute("data-engine",`three.js r${Qs}`),e.addEventListener("webglcontextlost",q,!1),e.addEventListener("webglcontextrestored",it,!1),e.addEventListener("webglcontextcreationerror",at,!1),w===null){const P="webgl2";if(w=Ee(P,M),w===null)throw Ee(P)?new Error("Error creating WebGL context with your selected attributes."):new Error("Error creating WebGL context.")}}catch(M){throw console.error("THREE.WebGLRenderer: "+M.message),M}let Dt,Ot,yt,Jt,bt,y,v,U,Y,K,X,gt,nt,ht,Bt,$,ut,Tt,At,dt,Ut,Ct,jt,C;function st(){Dt=new sf(w),Dt.init(),Ct=new Wp(w,Dt),Ot=new $d(w,Dt,t,Ct),yt=new Gp(w),Ot.reverseDepthBuffer&&yt.buffers.depth.setReversed(!0),Jt=new lf(w),bt=new bp,y=new kp(w,Dt,yt,bt,Ot,Ct,Jt),v=new Qd(E),U=new rf(E),Y=new fh(w),jt=new Zd(w,Y),K=new af(w,Y,Jt,jt),X=new hf(w,K,Y,Jt),At=new cf(w,Ot,y),$=new Jd(bt),gt=new Ap(E,v,U,Dt,Ot,jt,$),nt=new Jp(E,bt),ht=new Rp,Bt=new Ip(Dt),Tt=new Kd(E,v,U,yt,X,p,l),ut=new zp(E,X,Ot),C=new Qp(w,Jt,Ot,yt),dt=new jd(w,Dt,Jt),Ut=new of(w,Dt,Jt),Jt.programs=gt.programs,E.capabilities=Ot,E.extensions=Dt,E.properties=bt,E.renderLists=ht,E.shadowMap=ut,E.state=yt,E.info=Jt}st();const H=new jp(E,w);this.xr=H,this.getContext=function(){return w},this.getContextAttributes=function(){return w.getContextAttributes()},this.forceContextLoss=function(){const M=Dt.get("WEBGL_lose_context");M&&M.loseContext()},this.forceContextRestore=function(){const M=Dt.get("WEBGL_lose_context");M&&M.restoreContext()},this.getPixelRatio=function(){return J},this.setPixelRatio=function(M){M!==void 0&&(J=M,this.setSize(Z,B,!1))},this.getSize=function(M){return M.set(Z,B)},this.setSize=function(M,P,I=!0){if(H.isPresenting){console.warn("THREE.WebGLRenderer: Can't change size while VR device is presenting.");return}Z=M,B=P,e.width=Math.floor(M*J),e.height=Math.floor(P*J),I===!0&&(e.style.width=M+"px",e.style.height=P+"px"),this.setViewport(0,0,M,P)},this.getDrawingBufferSize=function(M){return M.set(Z*J,B*J).floor()},this.setDrawingBufferSize=function(M,P,I){Z=M,B=P,J=I,e.width=Math.floor(M*I),e.height=Math.floor(P*I),this.setViewport(0,0,M,P)},this.getCurrentViewport=function(M){return M.copy(g)},this.getViewport=function(M){return M.copy(lt)},this.setViewport=function(M,P,I,N){M.isVector4?lt.set(M.x,M.y,M.z,M.w):lt.set(M,P,I,N),yt.viewport(g.copy(lt).multiplyScalar(J).round())},this.getScissor=function(M){return M.copy(_t)},this.setScissor=function(M,P,I,N){M.isVector4?_t.set(M.x,M.y,M.z,M.w):_t.set(M,P,I,N),yt.scissor(S.copy(_t).multiplyScalar(J).round())},this.getScissorTest=function(){return Ht},this.setScissorTest=function(M){yt.setScissorTest(Ht=M)},this.setOpaqueSort=function(M){G=M},this.setTransparentSort=function(M){ot=M},this.getClearColor=function(M){return M.copy(Tt.getClearColor())},this.setClearColor=function(){Tt.setClearColor.apply(Tt,arguments)},this.getClearAlpha=function(){return Tt.getClearAlpha()},this.setClearAlpha=function(){Tt.setClearAlpha.apply(Tt,arguments)},this.clear=function(M=!0,P=!0,I=!0){let N=0;if(M){let D=!1;if(b!==null){const Q=b.texture.format;D=Q===sa||Q===ra||Q===ia}if(D){const Q=b.texture.type,rt=Q===en||Q===Pn||Q===Ai||Q===ai||Q===ea||Q===na,ft=Tt.getClearColor(),mt=Tt.getClearAlpha(),Mt=ft.r,Et=ft.g,vt=ft.b;rt?(m[0]=Mt,m[1]=Et,m[2]=vt,m[3]=mt,w.clearBufferuiv(w.COLOR,0,m)):(_[0]=Mt,_[1]=Et,_[2]=vt,_[3]=mt,w.clearBufferiv(w.COLOR,0,_))}else N|=w.COLOR_BUFFER_BIT}P&&(N|=w.DEPTH_BUFFER_BIT,w.clearDepth(this.capabilities.reverseDepthBuffer?0:1)),I&&(N|=w.STENCIL_BUFFER_BIT,this.state.buffers.stencil.setMask(4294967295)),w.clear(N)},this.clearColor=function(){this.clear(!0,!1,!1)},this.clearDepth=function(){this.clear(!1,!0,!1)},this.clearStencil=function(){this.clear(!1,!1,!0)},this.dispose=function(){e.removeEventListener("webglcontextlost",q,!1),e.removeEventListener("webglcontextrestored",it,!1),e.removeEventListener("webglcontextcreationerror",at,!1),ht.dispose(),Bt.dispose(),bt.dispose(),v.dispose(),U.dispose(),X.dispose(),jt.dispose(),C.dispose(),gt.dispose(),H.dispose(),H.removeEventListener("sessionstart",_a),H.removeEventListener("sessionend",ga),vn.stop()};function q(M){M.preventDefault(),console.log("THREE.WebGLRenderer: Context Lost."),A=!0}function it(){console.log("THREE.WebGLRenderer: Context Restored."),A=!1;const M=Jt.autoReset,P=ut.enabled,I=ut.autoUpdate,N=ut.needsUpdate,D=ut.type;st(),Jt.autoReset=M,ut.enabled=P,ut.autoUpdate=I,ut.needsUpdate=N,ut.type=D}function at(M){console.error("THREE.WebGLRenderer: A WebGL context could not be created. Reason: ",M.statusMessage)}function Ft(M){const P=M.target;P.removeEventListener("dispose",Ft),ie(P)}function ie(M){ve(M),bt.remove(M)}function ve(M){const P=bt.get(M).programs;P!==void 0&&(P.forEach(function(I){gt.releaseProgram(I)}),M.isShaderMaterial&>.releaseShaderCache(M))}this.renderBufferDirect=function(M,P,I,N,D,Q){P===null&&(P=It);const rt=D.isMesh&&D.matrixWorld.determinant()<0,ft=Rl(M,P,I,N,D);yt.setMaterial(N,rt);let mt=I.index,Mt=1;if(N.wireframe===!0){if(mt=K.getWireframeAttribute(I),mt===void 0)return;Mt=2}const Et=I.drawRange,vt=I.attributes.position;let Yt=Et.start*Mt,Qt=(Et.start+Et.count)*Mt;Q!==null&&(Yt=Math.max(Yt,Q.start*Mt),Qt=Math.min(Qt,(Q.start+Q.count)*Mt)),mt!==null?(Yt=Math.max(Yt,0),Qt=Math.min(Qt,mt.count)):vt!=null&&(Yt=Math.max(Yt,0),Qt=Math.min(Qt,vt.count));const ee=Qt-Yt;if(ee<0||ee===1/0)return;jt.setup(D,N,ft,I,mt);let ye,Vt=dt;if(mt!==null&&(ye=Y.get(mt),Vt=Ut,Vt.setIndex(ye)),D.isMesh)N.wireframe===!0?(yt.setLineWidth(N.wireframeLinewidth*Nt()),Vt.setMode(w.LINES)):Vt.setMode(w.TRIANGLES);else if(D.isLine){let xt=N.linewidth;xt===void 0&&(xt=1),yt.setLineWidth(xt*Nt()),D.isLineSegments?Vt.setMode(w.LINES):D.isLineLoop?Vt.setMode(w.LINE_LOOP):Vt.setMode(w.LINE_STRIP)}else D.isPoints?Vt.setMode(w.POINTS):D.isSprite&&Vt.setMode(w.TRIANGLES);if(D.isBatchedMesh)if(D._multiDrawInstances!==null)Vt.renderMultiDrawInstances(D._multiDrawStarts,D._multiDrawCounts,D._multiDrawCount,D._multiDrawInstances);else if(Dt.get("WEBGL_multi_draw"))Vt.renderMultiDraw(D._multiDrawStarts,D._multiDrawCounts,D._multiDrawCount);else{const xt=D._multiDrawStarts,ce=D._multiDrawCounts,kt=D._multiDrawCount,De=mt?Y.get(mt).bytesPerElement:1,In=bt.get(N).currentProgram.getUniforms();for(let Te=0;Te{function Q(){if(N.forEach(function(rt){bt.get(rt).currentProgram.isReady()&&N.delete(rt)}),N.size===0){D(M);return}setTimeout(Q,10)}Dt.get("KHR_parallel_shader_compile")!==null?Q():setTimeout(Q,10)})};let xe=null;function Xe(M){xe&&xe(M)}function _a(){vn.stop()}function ga(){vn.start()}const vn=new fl;vn.setAnimationLoop(Xe),typeof self<"u"&&vn.setContext(self),this.setAnimationLoop=function(M){xe=M,H.setAnimationLoop(M),M===null?vn.stop():vn.start()},H.addEventListener("sessionstart",_a),H.addEventListener("sessionend",ga),this.render=function(M,P){if(P!==void 0&&P.isCamera!==!0){console.error("THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.");return}if(A===!0)return;if(M.matrixWorldAutoUpdate===!0&&M.updateMatrixWorld(),P.parent===null&&P.matrixWorldAutoUpdate===!0&&P.updateMatrixWorld(),H.enabled===!0&&H.isPresenting===!0&&(H.cameraAutoUpdate===!0&&H.updateCamera(P),P=H.getCamera()),M.isScene===!0&&M.onBeforeRender(E,M,P,b),d=Bt.get(M,T.length),d.init(P),T.push(d),ct.multiplyMatrices(P.projectionMatrix,P.matrixWorldInverse),Xt.setFromProjectionMatrix(ct),j=this.localClippingEnabled,W=$.init(this.clippingPlanes,j),x=ht.get(M,h.length),x.init(),h.push(x),H.enabled===!0&&H.isPresenting===!0){const Q=E.xr.getDepthSensingMesh();Q!==null&&wr(Q,P,-1/0,E.sortObjects)}wr(M,P,0,E.sortObjects),x.finish(),E.sortObjects===!0&&x.sort(G,ot),qt=H.enabled===!1||H.isPresenting===!1||H.hasDepthSensing()===!1,qt&&Tt.addToRenderList(x,M),this.info.render.frame++,W===!0&&$.beginShadows();const I=d.state.shadowsArray;ut.render(I,M,P),W===!0&&$.endShadows(),this.info.autoReset===!0&&this.info.reset();const N=x.opaque,D=x.transmissive;if(d.setupLights(),P.isArrayCamera){const Q=P.cameras;if(D.length>0)for(let rt=0,ft=Q.length;rt0&&xa(N,D,M,P),qt&&Tt.render(M),va(x,M,P);b!==null&&(y.updateMultisampleRenderTarget(b),y.updateRenderTargetMipmap(b)),M.isScene===!0&&M.onAfterRender(E,M,P),jt.resetDefaultState(),O=-1,tt=null,T.pop(),T.length>0?(d=T[T.length-1],W===!0&&$.setGlobalState(E.clippingPlanes,d.state.camera)):d=null,h.pop(),h.length>0?x=h[h.length-1]:x=null};function wr(M,P,I,N){if(M.visible===!1)return;if(M.layers.test(P.layers)){if(M.isGroup)I=M.renderOrder;else if(M.isLOD)M.autoUpdate===!0&&M.update(P);else if(M.isLight)d.pushLight(M),M.castShadow&&d.pushShadow(M);else if(M.isSprite){if(!M.frustumCulled||Xt.intersectsSprite(M)){N&&St.setFromMatrixPosition(M.matrixWorld).applyMatrix4(ct);const rt=X.update(M),ft=M.material;ft.visible&&x.push(M,rt,ft,I,St.z,null)}}else if((M.isMesh||M.isLine||M.isPoints)&&(!M.frustumCulled||Xt.intersectsObject(M))){const rt=X.update(M),ft=M.material;if(N&&(M.boundingSphere!==void 0?(M.boundingSphere===null&&M.computeBoundingSphere(),St.copy(M.boundingSphere.center)):(rt.boundingSphere===null&&rt.computeBoundingSphere(),St.copy(rt.boundingSphere.center)),St.applyMatrix4(M.matrixWorld).applyMatrix4(ct)),Array.isArray(ft)){const mt=rt.groups;for(let Mt=0,Et=mt.length;Mt0&&Di(D,P,I),Q.length>0&&Di(Q,P,I),rt.length>0&&Di(rt,P,I),yt.buffers.depth.setTest(!0),yt.buffers.depth.setMask(!0),yt.buffers.color.setMask(!0),yt.setPolygonOffset(!1)}function xa(M,P,I,N){if((I.isScene===!0?I.overrideMaterial:null)!==null)return;d.state.transmissionRenderTarget[N.id]===void 0&&(d.state.transmissionRenderTarget[N.id]=new Ln(1,1,{generateMipmaps:!0,type:Dt.has("EXT_color_buffer_half_float")||Dt.has("EXT_color_buffer_float")?Ri:en,minFilter:Cn,samples:4,stencilBuffer:s,resolveDepthBuffer:!1,resolveStencilBuffer:!1,colorSpace:Wt.workingColorSpace}));const Q=d.state.transmissionRenderTarget[N.id],rt=N.viewport||g;Q.setSize(rt.z,rt.w);const ft=E.getRenderTarget();E.setRenderTarget(Q),E.getClearColor(z),k=E.getClearAlpha(),k<1&&E.setClearColor(16777215,.5),E.clear(),qt&&Tt.render(I);const mt=E.toneMapping;E.toneMapping=pn;const Mt=N.viewport;if(N.viewport!==void 0&&(N.viewport=void 0),d.setupLightsView(N),W===!0&&$.setGlobalState(E.clippingPlanes,N),Di(M,I,N),y.updateMultisampleRenderTarget(Q),y.updateRenderTargetMipmap(Q),Dt.has("WEBGL_multisampled_render_to_texture")===!1){let Et=!1;for(let vt=0,Yt=P.length;vt0),vt=!!I.morphAttributes.position,Yt=!!I.morphAttributes.normal,Qt=!!I.morphAttributes.color;let ee=pn;N.toneMapped&&(b===null||b.isXRRenderTarget===!0)&&(ee=E.toneMapping);const ye=I.morphAttributes.position||I.morphAttributes.normal||I.morphAttributes.color,Vt=ye!==void 0?ye.length:0,xt=bt.get(N),ce=d.state.lights;if(W===!0&&(j===!0||M!==tt)){const Ce=M===tt&&N.id===O;$.setState(N,M,Ce)}let kt=!1;N.version===xt.__version?(xt.needsLights&&xt.lightsStateVersion!==ce.state.version||xt.outputColorSpace!==ft||D.isBatchedMesh&&xt.batching===!1||!D.isBatchedMesh&&xt.batching===!0||D.isBatchedMesh&&xt.batchingColor===!0&&D.colorTexture===null||D.isBatchedMesh&&xt.batchingColor===!1&&D.colorTexture!==null||D.isInstancedMesh&&xt.instancing===!1||!D.isInstancedMesh&&xt.instancing===!0||D.isSkinnedMesh&&xt.skinning===!1||!D.isSkinnedMesh&&xt.skinning===!0||D.isInstancedMesh&&xt.instancingColor===!0&&D.instanceColor===null||D.isInstancedMesh&&xt.instancingColor===!1&&D.instanceColor!==null||D.isInstancedMesh&&xt.instancingMorph===!0&&D.morphTexture===null||D.isInstancedMesh&&xt.instancingMorph===!1&&D.morphTexture!==null||xt.envMap!==mt||N.fog===!0&&xt.fog!==Q||xt.numClippingPlanes!==void 0&&(xt.numClippingPlanes!==$.numPlanes||xt.numIntersection!==$.numIntersection)||xt.vertexAlphas!==Mt||xt.vertexTangents!==Et||xt.morphTargets!==vt||xt.morphNormals!==Yt||xt.morphColors!==Qt||xt.toneMapping!==ee||xt.morphTargetsCount!==Vt)&&(kt=!0):(kt=!0,xt.__version=N.version);let De=xt.currentProgram;kt===!0&&(De=Ui(N,P,D));let In=!1,Te=!1,Rr=!1;const ne=De.getUniforms(),nn=xt.uniforms;if(yt.useProgram(De.program)&&(In=!0,Te=!0,Rr=!0),N.id!==O&&(O=N.id,Te=!0),In||tt!==M){Ot.reverseDepthBuffer?(pt.copy(M.projectionMatrix),Gc(pt),Vc(pt),ne.setValue(w,"projectionMatrix",pt)):ne.setValue(w,"projectionMatrix",M.projectionMatrix),ne.setValue(w,"viewMatrix",M.matrixWorldInverse);const Ce=ne.map.cameraPosition;Ce!==void 0&&Ce.setValue(w,Rt.setFromMatrixPosition(M.matrixWorld)),Ot.logarithmicDepthBuffer&&ne.setValue(w,"logDepthBufFC",2/(Math.log(M.far+1)/Math.LN2)),(N.isMeshPhongMaterial||N.isMeshToonMaterial||N.isMeshLambertMaterial||N.isMeshBasicMaterial||N.isMeshStandardMaterial||N.isShaderMaterial)&&ne.setValue(w,"isOrthographic",M.isOrthographicCamera===!0),tt!==M&&(tt=M,Te=!0,Rr=!0)}if(D.isSkinnedMesh){ne.setOptional(w,D,"bindMatrix"),ne.setOptional(w,D,"bindMatrixInverse");const Ce=D.skeleton;Ce&&(Ce.boneTexture===null&&Ce.computeBoneTexture(),ne.setValue(w,"boneTexture",Ce.boneTexture,y))}D.isBatchedMesh&&(ne.setOptional(w,D,"batchingTexture"),ne.setValue(w,"batchingTexture",D._matricesTexture,y),ne.setOptional(w,D,"batchingIdTexture"),ne.setValue(w,"batchingIdTexture",D._indirectTexture,y),ne.setOptional(w,D,"batchingColorTexture"),D._colorsTexture!==null&&ne.setValue(w,"batchingColorTexture",D._colorsTexture,y));const Cr=I.morphAttributes;if((Cr.position!==void 0||Cr.normal!==void 0||Cr.color!==void 0)&&At.update(D,I,De),(Te||xt.receiveShadow!==D.receiveShadow)&&(xt.receiveShadow=D.receiveShadow,ne.setValue(w,"receiveShadow",D.receiveShadow)),N.isMeshGouraudMaterial&&N.envMap!==null&&(nn.envMap.value=mt,nn.flipEnvMap.value=mt.isCubeTexture&&mt.isRenderTargetTexture===!1?-1:1),N.isMeshStandardMaterial&&N.envMap===null&&P.environment!==null&&(nn.envMapIntensity.value=P.environmentIntensity),Te&&(ne.setValue(w,"toneMappingExposure",E.toneMappingExposure),xt.needsLights&&Cl(nn,Rr),Q&&N.fog===!0&&nt.refreshFogUniforms(nn,Q),nt.refreshMaterialUniforms(nn,N,J,B,d.state.transmissionRenderTarget[M.id]),fr.upload(w,Sa(xt),nn,y)),N.isShaderMaterial&&N.uniformsNeedUpdate===!0&&(fr.upload(w,Sa(xt),nn,y),N.uniformsNeedUpdate=!1),N.isSpriteMaterial&&ne.setValue(w,"center",D.center),ne.setValue(w,"modelViewMatrix",D.modelViewMatrix),ne.setValue(w,"normalMatrix",D.normalMatrix),ne.setValue(w,"modelMatrix",D.matrixWorld),N.isShaderMaterial||N.isRawShaderMaterial){const Ce=N.uniformsGroups;for(let Pr=0,Ll=Ce.length;Pr0&&y.useMultisampledRTT(M)===!1?D=bt.get(M).__webglMultisampledFramebuffer:Array.isArray(Et)?D=Et[I]:D=Et,g.copy(M.viewport),S.copy(M.scissor),V=M.scissorTest}else g.copy(lt).multiplyScalar(J).floor(),S.copy(_t).multiplyScalar(J).floor(),V=Ht;if(yt.bindFramebuffer(w.FRAMEBUFFER,D)&&N&&yt.drawBuffers(M,D),yt.viewport(g),yt.scissor(S),yt.setScissorTest(V),Q){const mt=bt.get(M.texture);w.framebufferTexture2D(w.FRAMEBUFFER,w.COLOR_ATTACHMENT0,w.TEXTURE_CUBE_MAP_POSITIVE_X+P,mt.__webglTexture,I)}else if(rt){const mt=bt.get(M.texture),Mt=P||0;w.framebufferTextureLayer(w.FRAMEBUFFER,w.COLOR_ATTACHMENT0,mt.__webglTexture,I||0,Mt)}O=-1},this.readRenderTargetPixels=function(M,P,I,N,D,Q,rt){if(!(M&&M.isWebGLRenderTarget)){console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");return}let ft=bt.get(M).__webglFramebuffer;if(M.isWebGLCubeRenderTarget&&rt!==void 0&&(ft=ft[rt]),ft){yt.bindFramebuffer(w.FRAMEBUFFER,ft);try{const mt=M.texture,Mt=mt.format,Et=mt.type;if(!Ot.textureFormatReadable(Mt)){console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.");return}if(!Ot.textureTypeReadable(Et)){console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.");return}P>=0&&P<=M.width-N&&I>=0&&I<=M.height-D&&w.readPixels(P,I,N,D,Ct.convert(Mt),Ct.convert(Et),Q)}finally{const mt=b!==null?bt.get(b).__webglFramebuffer:null;yt.bindFramebuffer(w.FRAMEBUFFER,mt)}}},this.readRenderTargetPixelsAsync=async function(M,P,I,N,D,Q,rt){if(!(M&&M.isWebGLRenderTarget))throw new Error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");let ft=bt.get(M).__webglFramebuffer;if(M.isWebGLCubeRenderTarget&&rt!==void 0&&(ft=ft[rt]),ft){const mt=M.texture,Mt=mt.format,Et=mt.type;if(!Ot.textureFormatReadable(Mt))throw new Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in RGBA or implementation defined format.");if(!Ot.textureTypeReadable(Et))throw new Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in UnsignedByteType or implementation defined type.");if(P>=0&&P<=M.width-N&&I>=0&&I<=M.height-D){yt.bindFramebuffer(w.FRAMEBUFFER,ft);const vt=w.createBuffer();w.bindBuffer(w.PIXEL_PACK_BUFFER,vt),w.bufferData(w.PIXEL_PACK_BUFFER,Q.byteLength,w.STREAM_READ),w.readPixels(P,I,N,D,Ct.convert(Mt),Ct.convert(Et),0);const Yt=b!==null?bt.get(b).__webglFramebuffer:null;yt.bindFramebuffer(w.FRAMEBUFFER,Yt);const Qt=w.fenceSync(w.SYNC_GPU_COMMANDS_COMPLETE,0);return w.flush(),await Hc(w,Qt,4),w.bindBuffer(w.PIXEL_PACK_BUFFER,vt),w.getBufferSubData(w.PIXEL_PACK_BUFFER,0,Q),w.deleteBuffer(vt),w.deleteSync(Qt),Q}else throw new Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: requested read bounds are out of range.")}},this.copyFramebufferToTexture=function(M,P=null,I=0){M.isTexture!==!0&&(dr("WebGLRenderer: copyFramebufferToTexture function signature has changed."),P=arguments[0]||null,M=arguments[1]);const N=Math.pow(2,-I),D=Math.floor(M.image.width*N),Q=Math.floor(M.image.height*N),rt=P!==null?P.x:0,ft=P!==null?P.y:0;y.setTexture2D(M,0),w.copyTexSubImage2D(w.TEXTURE_2D,I,0,0,rt,ft,D,Q),yt.unbindTexture()},this.copyTextureToTexture=function(M,P,I=null,N=null,D=0){M.isTexture!==!0&&(dr("WebGLRenderer: copyTextureToTexture function signature has changed."),N=arguments[0]||null,M=arguments[1],P=arguments[2],D=arguments[3]||0,I=null);let Q,rt,ft,mt,Mt,Et;I!==null?(Q=I.max.x-I.min.x,rt=I.max.y-I.min.y,ft=I.min.x,mt=I.min.y):(Q=M.image.width,rt=M.image.height,ft=0,mt=0),N!==null?(Mt=N.x,Et=N.y):(Mt=0,Et=0);const vt=Ct.convert(P.format),Yt=Ct.convert(P.type);y.setTexture2D(P,0),w.pixelStorei(w.UNPACK_FLIP_Y_WEBGL,P.flipY),w.pixelStorei(w.UNPACK_PREMULTIPLY_ALPHA_WEBGL,P.premultiplyAlpha),w.pixelStorei(w.UNPACK_ALIGNMENT,P.unpackAlignment);const Qt=w.getParameter(w.UNPACK_ROW_LENGTH),ee=w.getParameter(w.UNPACK_IMAGE_HEIGHT),ye=w.getParameter(w.UNPACK_SKIP_PIXELS),Vt=w.getParameter(w.UNPACK_SKIP_ROWS),xt=w.getParameter(w.UNPACK_SKIP_IMAGES),ce=M.isCompressedTexture?M.mipmaps[D]:M.image;w.pixelStorei(w.UNPACK_ROW_LENGTH,ce.width),w.pixelStorei(w.UNPACK_IMAGE_HEIGHT,ce.height),w.pixelStorei(w.UNPACK_SKIP_PIXELS,ft),w.pixelStorei(w.UNPACK_SKIP_ROWS,mt),M.isDataTexture?w.texSubImage2D(w.TEXTURE_2D,D,Mt,Et,Q,rt,vt,Yt,ce.data):M.isCompressedTexture?w.compressedTexSubImage2D(w.TEXTURE_2D,D,Mt,Et,ce.width,ce.height,vt,ce.data):w.texSubImage2D(w.TEXTURE_2D,D,Mt,Et,Q,rt,vt,Yt,ce),w.pixelStorei(w.UNPACK_ROW_LENGTH,Qt),w.pixelStorei(w.UNPACK_IMAGE_HEIGHT,ee),w.pixelStorei(w.UNPACK_SKIP_PIXELS,ye),w.pixelStorei(w.UNPACK_SKIP_ROWS,Vt),w.pixelStorei(w.UNPACK_SKIP_IMAGES,xt),D===0&&P.generateMipmaps&&w.generateMipmap(w.TEXTURE_2D),yt.unbindTexture()},this.copyTextureToTexture3D=function(M,P,I=null,N=null,D=0){M.isTexture!==!0&&(dr("WebGLRenderer: copyTextureToTexture3D function signature has changed."),I=arguments[0]||null,N=arguments[1]||null,M=arguments[2],P=arguments[3],D=arguments[4]||0);let Q,rt,ft,mt,Mt,Et,vt,Yt,Qt;const ee=M.isCompressedTexture?M.mipmaps[D]:M.image;I!==null?(Q=I.max.x-I.min.x,rt=I.max.y-I.min.y,ft=I.max.z-I.min.z,mt=I.min.x,Mt=I.min.y,Et=I.min.z):(Q=ee.width,rt=ee.height,ft=ee.depth,mt=0,Mt=0,Et=0),N!==null?(vt=N.x,Yt=N.y,Qt=N.z):(vt=0,Yt=0,Qt=0);const ye=Ct.convert(P.format),Vt=Ct.convert(P.type);let xt;if(P.isData3DTexture)y.setTexture3D(P,0),xt=w.TEXTURE_3D;else if(P.isDataArrayTexture||P.isCompressedArrayTexture)y.setTexture2DArray(P,0),xt=w.TEXTURE_2D_ARRAY;else{console.warn("THREE.WebGLRenderer.copyTextureToTexture3D: only supports THREE.DataTexture3D and THREE.DataTexture2DArray.");return}w.pixelStorei(w.UNPACK_FLIP_Y_WEBGL,P.flipY),w.pixelStorei(w.UNPACK_PREMULTIPLY_ALPHA_WEBGL,P.premultiplyAlpha),w.pixelStorei(w.UNPACK_ALIGNMENT,P.unpackAlignment);const ce=w.getParameter(w.UNPACK_ROW_LENGTH),kt=w.getParameter(w.UNPACK_IMAGE_HEIGHT),De=w.getParameter(w.UNPACK_SKIP_PIXELS),In=w.getParameter(w.UNPACK_SKIP_ROWS),Te=w.getParameter(w.UNPACK_SKIP_IMAGES);w.pixelStorei(w.UNPACK_ROW_LENGTH,ee.width),w.pixelStorei(w.UNPACK_IMAGE_HEIGHT,ee.height),w.pixelStorei(w.UNPACK_SKIP_PIXELS,mt),w.pixelStorei(w.UNPACK_SKIP_ROWS,Mt),w.pixelStorei(w.UNPACK_SKIP_IMAGES,Et),M.isDataTexture||M.isData3DTexture?w.texSubImage3D(xt,D,vt,Yt,Qt,Q,rt,ft,ye,Vt,ee.data):P.isCompressedArrayTexture?w.compressedTexSubImage3D(xt,D,vt,Yt,Qt,Q,rt,ft,ye,ee.data):w.texSubImage3D(xt,D,vt,Yt,Qt,Q,rt,ft,ye,Vt,ee),w.pixelStorei(w.UNPACK_ROW_LENGTH,ce),w.pixelStorei(w.UNPACK_IMAGE_HEIGHT,kt),w.pixelStorei(w.UNPACK_SKIP_PIXELS,De),w.pixelStorei(w.UNPACK_SKIP_ROWS,In),w.pixelStorei(w.UNPACK_SKIP_IMAGES,Te),D===0&&P.generateMipmaps&&w.generateMipmap(xt),yt.unbindTexture()},this.initRenderTarget=function(M){bt.get(M).__webglFramebuffer===void 0&&y.setupRenderTarget(M)},this.initTexture=function(M){M.isCubeTexture?y.setTextureCube(M,0):M.isData3DTexture?y.setTexture3D(M,0):M.isDataArrayTexture||M.isCompressedArrayTexture?y.setTexture2DArray(M,0):y.setTexture2D(M,0),yt.unbindTexture()},this.resetState=function(){F=0,R=0,b=null,yt.reset(),jt.reset()},typeof __THREE_DEVTOOLS__<"u"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}get coordinateSystem(){return tn}get outputColorSpace(){return this._outputColorSpace}set outputColorSpace(t){this._outputColorSpace=t;const e=this.getContext();e.drawingBufferColorSpace=t===aa?"display-p3":"srgb",e.unpackColorSpace=Wt.workingColorSpace===Er?"display-p3":"srgb"}}class em extends fe{constructor(){super(),this.isScene=!0,this.type="Scene",this.background=null,this.environment=null,this.fog=null,this.backgroundBlurriness=0,this.backgroundIntensity=1,this.backgroundRotation=new We,this.environmentIntensity=1,this.environmentRotation=new We,this.overrideMaterial=null,typeof __THREE_DEVTOOLS__<"u"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}copy(t,e){return super.copy(t,e),t.background!==null&&(this.background=t.background.clone()),t.environment!==null&&(this.environment=t.environment.clone()),t.fog!==null&&(this.fog=t.fog.clone()),this.backgroundBlurriness=t.backgroundBlurriness,this.backgroundIntensity=t.backgroundIntensity,this.backgroundRotation.copy(t.backgroundRotation),this.environmentIntensity=t.environmentIntensity,this.environmentRotation.copy(t.environmentRotation),t.overrideMaterial!==null&&(this.overrideMaterial=t.overrideMaterial.clone()),this.matrixAutoUpdate=t.matrixAutoUpdate,this}toJSON(t){const e=super.toJSON(t);return this.fog!==null&&(e.object.fog=this.fog.toJSON()),this.backgroundBlurriness>0&&(e.object.backgroundBlurriness=this.backgroundBlurriness),this.backgroundIntensity!==1&&(e.object.backgroundIntensity=this.backgroundIntensity),e.object.backgroundRotation=this.backgroundRotation.toArray(),this.environmentIntensity!==1&&(e.object.environmentIntensity=this.environmentIntensity),e.object.environmentRotation=this.environmentRotation.toArray(),e}}class xl extends hi{constructor(t){super(),this.isLineBasicMaterial=!0,this.type="LineBasicMaterial",this.color=new zt(16777215),this.map=null,this.linewidth=1,this.linecap="round",this.linejoin="round",this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.linewidth=t.linewidth,this.linecap=t.linecap,this.linejoin=t.linejoin,this.fog=t.fog,this}}const vr=new L,xr=new L,Mo=new $t,gi=new la,nr=new yr,as=new L,So=new L;class nm extends fe{constructor(t=new ze,e=new xl){super(),this.isLine=!0,this.type="Line",this.geometry=t,this.material=e,this.updateMorphTargets()}copy(t,e){return super.copy(t,e),this.material=Array.isArray(t.material)?t.material.slice():t.material,this.geometry=t.geometry,this}computeLineDistances(){const t=this.geometry;if(t.index===null){const e=t.attributes.position,n=[0];for(let r=1,s=e.count;r0){const r=e[n[0]];if(r!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let s=0,a=r.length;sn)return;as.applyMatrix4(i.matrixWorld);const l=t.ray.origin.distanceTo(as);if(!(lt.far))return{distance:l,point:So.clone().applyMatrix4(i.matrixWorld),index:r,face:null,faceIndex:null,barycoord:null,object:i}}class da extends ze{constructor(t=.5,e=1,n=32,r=1,s=0,a=Math.PI*2){super(),this.type="RingGeometry",this.parameters={innerRadius:t,outerRadius:e,thetaSegments:n,phiSegments:r,thetaStart:s,thetaLength:a},n=Math.max(3,n),r=Math.max(1,r);const o=[],l=[],c=[],u=[];let f=t;const p=(e-t)/r,m=new L,_=new wt;for(let x=0;x<=r;x++){for(let d=0;d<=n;d++){const h=s+d/n*a;m.x=f*Math.cos(h),m.y=f*Math.sin(h),l.push(m.x,m.y,m.z),c.push(0,0,1),_.x=(m.x/e+1)/2,_.y=(m.y/e+1)/2,u.push(_.x,_.y)}f+=p}for(let x=0;x0)&&m.push(E,A,R),(h!==n-1||l=-1&&Zn.z<=1&&_.layers.test(d.layers)===!0,T=_.element;T.style.display=h===!0?"":"none",h===!0&&(_.onBeforeRender(e,x,d),T.style.transform="translate("+-100*_.center.x+"%,"+-100*_.center.y+"%)translate("+(Zn.x*s+s)+"px,"+(-Zn.y*a+a)+"px)",T.parentNode!==l&&l.appendChild(T),_.onAfterRender(e,x,d));const E={distanceToCameraSquared:f(d,_)};o.objects.set(_,E)}for(let h=0,T=_.children.length;h{const n=2*Math.PI/i;return(t+n*e)%(2*Math.PI)},yl=(i,t)=>{let e=t;const n=1e-6;let r=1;for(;Math.abs(r)>n;)r=(e-i*Math.sin(e)-t)/(1-i*Math.cos(e)),e=e-r;return e},Tl=(i,t)=>2*Math.atan2(Math.sqrt(1+i)*Math.sin(t/2),Math.sqrt(1-i)*Math.cos(t/2)),Al=(i,t,e,n)=>i*t*(1-e**2)/(1+e*Math.cos(n)),bl=(i,t)=>{const e=i*Math.cos(t),n=0,r=-i*Math.sin(t);return[e,n,r]},Do=i=>Math.sqrt(i**3),Lm=(i,t,e,n,r,s)=>{const a=El(i,t,s),o=yl(e,a),l=Tl(e,o),c=Al(r,n,e,l);return bl(c,l)},Dm=i=>(i.getTime()/864e5+24405875e-1-Je)/365.25,Uo=new Date(1900,0,1),Io=new Date(2100,11,31);class Um{constructor(t,e,n,r,s,a){this.camera=t,this.scene=e,this.renderer=n,this.updatables=[],this.timeScale=r,this.currentDate=s,this.timeDirection=a}start(){this.renderer.setAnimationLoop(()=>{this.tick(),this.renderer.render(this.scene,this.camera)})}stop(){this.renderer.setAnimationLoop(null)}tick(){const t=this.timeScale*24*60*60*1e3;this.timeDirection>0?this.currentDate.setTime(this.currentDate.getTime()+t):this.currentDate.setTime(this.currentDate.getTime()-t),this.currentDateIo&&(this.currentDate=Io);const e=Dm(this.currentDate);for(const n of this.updatables)n.tick(e,this.scene)}}function Im(){const i=new cm(4210752,.5),t=new lm("white",500,500);return t.position.set(0,0,0),t.castShadow=!0,{ambientLight:i,sunLight:t}}const No={type:"change"},pa={type:"start"},wl={type:"end"},rr=new la,Fo=new un,Nm=Math.cos(70*Bc.DEG2RAD),se=new L,Me=2*Math.PI,Kt={NONE:-1,ROTATE:0,DOLLY:1,PAN:2,TOUCH_ROTATE:3,TOUCH_PAN:4,TOUCH_DOLLY_PAN:5,TOUCH_DOLLY_ROTATE:6},hs=1e-6;class Fm extends hm{constructor(t,e=null){super(t,e),this.state=Kt.NONE,this.enabled=!0,this.target=new L,this.cursor=new L,this.minDistance=0,this.maxDistance=1/0,this.minZoom=0,this.maxZoom=1/0,this.minTargetRadius=0,this.maxTargetRadius=1/0,this.minPolarAngle=0,this.maxPolarAngle=Math.PI,this.minAzimuthAngle=-1/0,this.maxAzimuthAngle=1/0,this.enableDamping=!1,this.dampingFactor=.05,this.enableZoom=!0,this.zoomSpeed=1,this.enableRotate=!0,this.rotateSpeed=1,this.enablePan=!0,this.panSpeed=1,this.screenSpacePanning=!0,this.keyPanSpeed=7,this.zoomToCursor=!1,this.autoRotate=!1,this.autoRotateSpeed=2,this.keys={LEFT:"ArrowLeft",UP:"ArrowUp",RIGHT:"ArrowRight",BOTTOM:"ArrowDown"},this.mouseButtons={LEFT:Qn.ROTATE,MIDDLE:Qn.DOLLY,RIGHT:Qn.PAN},this.touches={ONE:$n.ROTATE,TWO:$n.DOLLY_PAN},this.target0=this.target.clone(),this.position0=this.object.position.clone(),this.zoom0=this.object.zoom,this._domElementKeyEvents=null,this._lastPosition=new L,this._lastQuaternion=new Dn,this._lastTargetPosition=new L,this._quat=new Dn().setFromUnitVectors(t.up,new L(0,1,0)),this._quatInverse=this._quat.clone().invert(),this._spherical=new bo,this._sphericalDelta=new bo,this._scale=1,this._panOffset=new L,this._rotateStart=new wt,this._rotateEnd=new wt,this._rotateDelta=new wt,this._panStart=new wt,this._panEnd=new wt,this._panDelta=new wt,this._dollyStart=new wt,this._dollyEnd=new wt,this._dollyDelta=new wt,this._dollyDirection=new L,this._mouse=new wt,this._performCursorZoom=!1,this._pointers=[],this._pointerPositions={},this._controlActive=!1,this._onPointerMove=Bm.bind(this),this._onPointerDown=Om.bind(this),this._onPointerUp=zm.bind(this),this._onContextMenu=Ym.bind(this),this._onMouseWheel=Vm.bind(this),this._onKeyDown=km.bind(this),this._onTouchStart=Wm.bind(this),this._onTouchMove=Xm.bind(this),this._onMouseDown=Hm.bind(this),this._onMouseMove=Gm.bind(this),this._interceptControlDown=qm.bind(this),this._interceptControlUp=Km.bind(this),this.domElement!==null&&this.connect(),this.update()}connect(){this.domElement.addEventListener("pointerdown",this._onPointerDown),this.domElement.addEventListener("pointercancel",this._onPointerUp),this.domElement.addEventListener("contextmenu",this._onContextMenu),this.domElement.addEventListener("wheel",this._onMouseWheel,{passive:!1}),this.domElement.getRootNode().addEventListener("keydown",this._interceptControlDown,{passive:!0,capture:!0}),this.domElement.style.touchAction="none"}disconnect(){this.domElement.removeEventListener("pointerdown",this._onPointerDown),this.domElement.removeEventListener("pointermove",this._onPointerMove),this.domElement.removeEventListener("pointerup",this._onPointerUp),this.domElement.removeEventListener("pointercancel",this._onPointerUp),this.domElement.removeEventListener("wheel",this._onMouseWheel),this.domElement.removeEventListener("contextmenu",this._onContextMenu),this.stopListenToKeyEvents(),this.domElement.getRootNode().removeEventListener("keydown",this._interceptControlDown,{capture:!0}),this.domElement.style.touchAction="auto"}dispose(){this.disconnect()}getPolarAngle(){return this._spherical.phi}getAzimuthalAngle(){return this._spherical.theta}getDistance(){return this.object.position.distanceTo(this.target)}listenToKeyEvents(t){t.addEventListener("keydown",this._onKeyDown),this._domElementKeyEvents=t}stopListenToKeyEvents(){this._domElementKeyEvents!==null&&(this._domElementKeyEvents.removeEventListener("keydown",this._onKeyDown),this._domElementKeyEvents=null)}saveState(){this.target0.copy(this.target),this.position0.copy(this.object.position),this.zoom0=this.object.zoom}reset(){this.target.copy(this.target0),this.object.position.copy(this.position0),this.object.zoom=this.zoom0,this.object.updateProjectionMatrix(),this.dispatchEvent(No),this.update(),this.state=Kt.NONE}update(t=null){const e=this.object.position;se.copy(e).sub(this.target),se.applyQuaternion(this._quat),this._spherical.setFromVector3(se),this.autoRotate&&this.state===Kt.NONE&&this._rotateLeft(this._getAutoRotationAngle(t)),this.enableDamping?(this._spherical.theta+=this._sphericalDelta.theta*this.dampingFactor,this._spherical.phi+=this._sphericalDelta.phi*this.dampingFactor):(this._spherical.theta+=this._sphericalDelta.theta,this._spherical.phi+=this._sphericalDelta.phi);let n=this.minAzimuthAngle,r=this.maxAzimuthAngle;isFinite(n)&&isFinite(r)&&(n<-Math.PI?n+=Me:n>Math.PI&&(n-=Me),r<-Math.PI?r+=Me:r>Math.PI&&(r-=Me),n<=r?this._spherical.theta=Math.max(n,Math.min(r,this._spherical.theta)):this._spherical.theta=this._spherical.theta>(n+r)/2?Math.max(n,this._spherical.theta):Math.min(r,this._spherical.theta)),this._spherical.phi=Math.max(this.minPolarAngle,Math.min(this.maxPolarAngle,this._spherical.phi)),this._spherical.makeSafe(),this.enableDamping===!0?this.target.addScaledVector(this._panOffset,this.dampingFactor):this.target.add(this._panOffset),this.target.sub(this.cursor),this.target.clampLength(this.minTargetRadius,this.maxTargetRadius),this.target.add(this.cursor);let s=!1;if(this.zoomToCursor&&this._performCursorZoom||this.object.isOrthographicCamera)this._spherical.radius=this._clampDistance(this._spherical.radius);else{const a=this._spherical.radius;this._spherical.radius=this._clampDistance(this._spherical.radius*this._scale),s=a!=this._spherical.radius}if(se.setFromSpherical(this._spherical),se.applyQuaternion(this._quatInverse),e.copy(this.target).add(se),this.object.lookAt(this.target),this.enableDamping===!0?(this._sphericalDelta.theta*=1-this.dampingFactor,this._sphericalDelta.phi*=1-this.dampingFactor,this._panOffset.multiplyScalar(1-this.dampingFactor)):(this._sphericalDelta.set(0,0,0),this._panOffset.set(0,0,0)),this.zoomToCursor&&this._performCursorZoom){let a=null;if(this.object.isPerspectiveCamera){const o=se.length();a=this._clampDistance(o*this._scale);const l=o-a;this.object.position.addScaledVector(this._dollyDirection,l),this.object.updateMatrixWorld(),s=!!l}else if(this.object.isOrthographicCamera){const o=new L(this._mouse.x,this._mouse.y,0);o.unproject(this.object);const l=this.object.zoom;this.object.zoom=Math.max(this.minZoom,Math.min(this.maxZoom,this.object.zoom/this._scale)),this.object.updateProjectionMatrix(),s=l!==this.object.zoom;const c=new L(this._mouse.x,this._mouse.y,0);c.unproject(this.object),this.object.position.sub(c).add(o),this.object.updateMatrixWorld(),a=se.length()}else console.warn("WARNING: OrbitControls.js encountered an unknown camera type - zoom to cursor disabled."),this.zoomToCursor=!1;a!==null&&(this.screenSpacePanning?this.target.set(0,0,-1).transformDirection(this.object.matrix).multiplyScalar(a).add(this.object.position):(rr.origin.copy(this.object.position),rr.direction.set(0,0,-1).transformDirection(this.object.matrix),Math.abs(this.object.up.dot(rr.direction))hs||8*(1-this._lastQuaternion.dot(this.object.quaternion))>hs||this._lastTargetPosition.distanceToSquared(this.target)>hs?(this.dispatchEvent(No),this._lastPosition.copy(this.object.position),this._lastQuaternion.copy(this.object.quaternion),this._lastTargetPosition.copy(this.target),!0):!1}_getAutoRotationAngle(t){return t!==null?Me/60*this.autoRotateSpeed*t:Me/60/60*this.autoRotateSpeed}_getZoomScale(t){const e=Math.abs(t*.01);return Math.pow(.95,this.zoomSpeed*e)}_rotateLeft(t){this._sphericalDelta.theta-=t}_rotateUp(t){this._sphericalDelta.phi-=t}_panLeft(t,e){se.setFromMatrixColumn(e,0),se.multiplyScalar(-t),this._panOffset.add(se)}_panUp(t,e){this.screenSpacePanning===!0?se.setFromMatrixColumn(e,1):(se.setFromMatrixColumn(e,0),se.crossVectors(this.object.up,se)),se.multiplyScalar(t),this._panOffset.add(se)}_pan(t,e){const n=this.domElement;if(this.object.isPerspectiveCamera){const r=this.object.position;se.copy(r).sub(this.target);let s=se.length();s*=Math.tan(this.object.fov/2*Math.PI/180),this._panLeft(2*t*s/n.clientHeight,this.object.matrix),this._panUp(2*e*s/n.clientHeight,this.object.matrix)}else this.object.isOrthographicCamera?(this._panLeft(t*(this.object.right-this.object.left)/this.object.zoom/n.clientWidth,this.object.matrix),this._panUp(e*(this.object.top-this.object.bottom)/this.object.zoom/n.clientHeight,this.object.matrix)):(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - pan disabled."),this.enablePan=!1)}_dollyOut(t){this.object.isPerspectiveCamera||this.object.isOrthographicCamera?this._scale/=t:(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled."),this.enableZoom=!1)}_dollyIn(t){this.object.isPerspectiveCamera||this.object.isOrthographicCamera?this._scale*=t:(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled."),this.enableZoom=!1)}_updateZoomParameters(t,e){if(!this.zoomToCursor)return;this._performCursorZoom=!0;const n=this.domElement.getBoundingClientRect(),r=t-n.left,s=e-n.top,a=n.width,o=n.height;this._mouse.x=r/a*2-1,this._mouse.y=-(s/o)*2+1,this._dollyDirection.set(this._mouse.x,this._mouse.y,1).unproject(this.object).sub(this.object.position).normalize()}_clampDistance(t){return Math.max(this.minDistance,Math.min(this.maxDistance,t))}_handleMouseDownRotate(t){this._rotateStart.set(t.clientX,t.clientY)}_handleMouseDownDolly(t){this._updateZoomParameters(t.clientX,t.clientX),this._dollyStart.set(t.clientX,t.clientY)}_handleMouseDownPan(t){this._panStart.set(t.clientX,t.clientY)}_handleMouseMoveRotate(t){this._rotateEnd.set(t.clientX,t.clientY),this._rotateDelta.subVectors(this._rotateEnd,this._rotateStart).multiplyScalar(this.rotateSpeed);const e=this.domElement;this._rotateLeft(Me*this._rotateDelta.x/e.clientHeight),this._rotateUp(Me*this._rotateDelta.y/e.clientHeight),this._rotateStart.copy(this._rotateEnd),this.update()}_handleMouseMoveDolly(t){this._dollyEnd.set(t.clientX,t.clientY),this._dollyDelta.subVectors(this._dollyEnd,this._dollyStart),this._dollyDelta.y>0?this._dollyOut(this._getZoomScale(this._dollyDelta.y)):this._dollyDelta.y<0&&this._dollyIn(this._getZoomScale(this._dollyDelta.y)),this._dollyStart.copy(this._dollyEnd),this.update()}_handleMouseMovePan(t){this._panEnd.set(t.clientX,t.clientY),this._panDelta.subVectors(this._panEnd,this._panStart).multiplyScalar(this.panSpeed),this._pan(this._panDelta.x,this._panDelta.y),this._panStart.copy(this._panEnd),this.update()}_handleMouseWheel(t){this._updateZoomParameters(t.clientX,t.clientY),t.deltaY<0?this._dollyIn(this._getZoomScale(t.deltaY)):t.deltaY>0&&this._dollyOut(this._getZoomScale(t.deltaY)),this.update()}_handleKeyDown(t){let e=!1;switch(t.code){case this.keys.UP:t.ctrlKey||t.metaKey||t.shiftKey?this._rotateUp(Me*this.rotateSpeed/this.domElement.clientHeight):this._pan(0,this.keyPanSpeed),e=!0;break;case this.keys.BOTTOM:t.ctrlKey||t.metaKey||t.shiftKey?this._rotateUp(-Me*this.rotateSpeed/this.domElement.clientHeight):this._pan(0,-this.keyPanSpeed),e=!0;break;case this.keys.LEFT:t.ctrlKey||t.metaKey||t.shiftKey?this._rotateLeft(Me*this.rotateSpeed/this.domElement.clientHeight):this._pan(this.keyPanSpeed,0),e=!0;break;case this.keys.RIGHT:t.ctrlKey||t.metaKey||t.shiftKey?this._rotateLeft(-Me*this.rotateSpeed/this.domElement.clientHeight):this._pan(-this.keyPanSpeed,0),e=!0;break}e&&(t.preventDefault(),this.update())}_handleTouchStartRotate(t){if(this._pointers.length===1)this._rotateStart.set(t.pageX,t.pageY);else{const e=this._getSecondPointerPosition(t),n=.5*(t.pageX+e.x),r=.5*(t.pageY+e.y);this._rotateStart.set(n,r)}}_handleTouchStartPan(t){if(this._pointers.length===1)this._panStart.set(t.pageX,t.pageY);else{const e=this._getSecondPointerPosition(t),n=.5*(t.pageX+e.x),r=.5*(t.pageY+e.y);this._panStart.set(n,r)}}_handleTouchStartDolly(t){const e=this._getSecondPointerPosition(t),n=t.pageX-e.x,r=t.pageY-e.y,s=Math.sqrt(n*n+r*r);this._dollyStart.set(0,s)}_handleTouchStartDollyPan(t){this.enableZoom&&this._handleTouchStartDolly(t),this.enablePan&&this._handleTouchStartPan(t)}_handleTouchStartDollyRotate(t){this.enableZoom&&this._handleTouchStartDolly(t),this.enableRotate&&this._handleTouchStartRotate(t)}_handleTouchMoveRotate(t){if(this._pointers.length==1)this._rotateEnd.set(t.pageX,t.pageY);else{const n=this._getSecondPointerPosition(t),r=.5*(t.pageX+n.x),s=.5*(t.pageY+n.y);this._rotateEnd.set(r,s)}this._rotateDelta.subVectors(this._rotateEnd,this._rotateStart).multiplyScalar(this.rotateSpeed);const e=this.domElement;this._rotateLeft(Me*this._rotateDelta.x/e.clientHeight),this._rotateUp(Me*this._rotateDelta.y/e.clientHeight),this._rotateStart.copy(this._rotateEnd)}_handleTouchMovePan(t){if(this._pointers.length===1)this._panEnd.set(t.pageX,t.pageY);else{const e=this._getSecondPointerPosition(t),n=.5*(t.pageX+e.x),r=.5*(t.pageY+e.y);this._panEnd.set(n,r)}this._panDelta.subVectors(this._panEnd,this._panStart).multiplyScalar(this.panSpeed),this._pan(this._panDelta.x,this._panDelta.y),this._panStart.copy(this._panEnd)}_handleTouchMoveDolly(t){const e=this._getSecondPointerPosition(t),n=t.pageX-e.x,r=t.pageY-e.y,s=Math.sqrt(n*n+r*r);this._dollyEnd.set(0,s),this._dollyDelta.set(0,Math.pow(this._dollyEnd.y/this._dollyStart.y,this.zoomSpeed)),this._dollyOut(this._dollyDelta.y),this._dollyStart.copy(this._dollyEnd);const a=(t.pageX+e.x)*.5,o=(t.pageY+e.y)*.5;this._updateZoomParameters(a,o)}_handleTouchMoveDollyPan(t){this.enableZoom&&this._handleTouchMoveDolly(t),this.enablePan&&this._handleTouchMovePan(t)}_handleTouchMoveDollyRotate(t){this.enableZoom&&this._handleTouchMoveDolly(t),this.enableRotate&&this._handleTouchMoveRotate(t)}_addPointer(t){this._pointers.push(t.pointerId)}_removePointer(t){delete this._pointerPositions[t.pointerId];for(let e=0;ee.update(),e}const Bo=(i,t,e)=>{t.aspect=i.clientWidth/i.clientHeight,t.updateProjectionMatrix(),e.setSize(i.clientWidth,i.clientHeight),e.setPixelRatio(window.devicePixelRatio)};class jm{constructor(t,e,n){Bo(t,e,n),window.addEventListener("resize",()=>{Bo(t,e,n),this.onResize()})}onResize(){}}function ma(i,t="planets"){const n=new Ml().load(i);let r;return t=="background"?r=new os({map:n,side:_e,metalness:0,emissive:4210752,emissiveIntensity:1,emissiveMap:n}):t=="orbit"?r=new os({map:n,roughness:.6,metalness:0}):r=new os({map:n,roughness:0,metalness:0,emissive:16776960,emissiveIntensity:1,emissiveMap:n}),r}function $m(){const i=new Li(1200,60,40),t=ma(br.MILKY_WAY,"background");return new Re(i,t)}function Jm(){const i=new Li(Cm.radius*Mr,32,32),t=ma(br.SUN),e=new Re(i,t);return e.castShadow=!1,e.receiveShadow=!0,e}function zo(i){const t=new ze().setFromPoints(i.trace),e=new xl({color:i.color,transparent:!0,opacity:i.category==="small body"?.3:1});return new nm(t,e)}function Qm(i){const t=new Li(i.radius*Mr,32,32),e=ma(br[i.name.toUpperCase()],"orbit"),n=new fe,r=new Re(t,e);r.castShadow=!1,r.receiveShadow=!0,n.add(r),i.name.toUpperCase()==="SATURN"&&t_(i.radius,1.24,2.27,n),i.T=Do(i.a),i.trace=[],i.traceLine=zo(i);const s=El(i.T,i.ma,0),a=yl(i.e,s),o=Tl(i.e,a),l=Al(Lo,i.a,i.e,o),[c,u,f]=bl(l,o),p=new L(c,u,f);return n.position.copy(p),n.tick=(m,_)=>{const[x,d,h]=Lm(Do(i.a),i.ma,i.e,i.a,Lo,m),T=new L(x,d,h);n.position.copy(T),i.trace.push(T),i.trace.length>=Rm&&i.trace.shift(),_.remove(i.traceLine),i.traceLine=zo(i),_.add(i.traceLine)},n}const t_=(i,t,e,n)=>{const r=i*t*Mr,s=i*e*Mr,a=new da(r,s,64),o=a.attributes.position,l=new L;for(let m=0;m{o.container=Qm(o),Si.updatables.push(o.container),hn.add(o.container)}),console.log(ds),hn.add(a),hn.add(n),hn.add(r),new jm(t,xi,Mi)}render(){Mi.render(hn,xi)}start(){Si.start()}stop(){Si.stop()}}const a_={__name:"SmorreryScence",setup(i){const t=Dl();return Ul(()=>{const e=document.querySelector("#target");new s_(e).start()}),(e,n)=>(Ho(),Il("div",{id:"target",ref_key:"target",ref:t},null,512))}},l_={__name:"index",setup(i){return(t,e)=>{const n=a_;return Ho(),Nl(n)}}};export{l_ as default}; +}`;class em{constructor(){this.texture=null,this.mesh=null,this.depthNear=0,this.depthFar=0}init(t,e,n){if(this.texture===null){const r=new ge,s=t.properties.get(r);s.__webglTexture=e.texture,(e.depthNear!=n.depthNear||e.depthFar!=n.depthFar)&&(this.depthNear=e.depthNear,this.depthFar=e.depthFar),this.texture=r}}getMesh(t){if(this.texture!==null&&this.mesh===null){const e=t.cameras[0].viewport,n=new _n({vertexShader:Qp,fragmentShader:tm,uniforms:{depthColor:{value:this.texture},depthWidth:{value:e.z},depthHeight:{value:e.w}}});this.mesh=new Re(new wr(20,20),n)}return this.mesh}reset(){this.texture=null,this.mesh=null}getDepthTexture(){return this.texture}}class nm extends Un{constructor(t,e){super();const n=this;let r=null,s=1,a=null,o="local-floor",l=1,c=null,u=null,f=null,p=null,m=null,_=null;const x=new em,d=e.getContextAttributes();let h=null,T=null;const E=[],A=[],F=new wt;let R=null;const b=new we;b.layers.enable(1),b.viewport=new Zt;const O=new we;O.layers.enable(2),O.viewport=new Zt;const tt=[b,O],g=new $p;g.layers.enable(1),g.layers.enable(2);let S=null,k=null;this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(W){let j=E[W];return j===void 0&&(j=new cs,E[W]=j),j.getTargetRaySpace()},this.getControllerGrip=function(W){let j=E[W];return j===void 0&&(j=new cs,E[W]=j),j.getGripSpace()},this.getHand=function(W){let j=E[W];return j===void 0&&(j=new cs,E[W]=j),j.getHandSpace()};function z(W){const j=A.indexOf(W.inputSource);if(j===-1)return;const pt=E[j];pt!==void 0&&(pt.update(W.inputSource,W.frame,c||a),pt.dispatchEvent({type:W.type,data:W.inputSource}))}function V(){r.removeEventListener("select",z),r.removeEventListener("selectstart",z),r.removeEventListener("selectend",z),r.removeEventListener("squeeze",z),r.removeEventListener("squeezestart",z),r.removeEventListener("squeezeend",z),r.removeEventListener("end",V),r.removeEventListener("inputsourceschange",Z);for(let W=0;W=0&&(A[ct]=null,E[ct].disconnect(pt))}for(let j=0;j=A.length){A.push(pt),ct=St;break}else if(A[St]===null){A[St]=pt,ct=St;break}if(ct===-1)break}const Rt=E[ct];Rt&&Rt.connect(pt)}}const B=new L,J=new L;function G(W,j,pt){B.setFromMatrixPosition(j.matrixWorld),J.setFromMatrixPosition(pt.matrixWorld);const ct=B.distanceTo(J),Rt=j.projectionMatrix.elements,St=pt.projectionMatrix.elements,It=Rt[14]/(Rt[10]-1),qt=Rt[14]/(Rt[10]+1),Nt=(Rt[9]+1)/Rt[5],w=(Rt[9]-1)/Rt[5],Ee=(Rt[8]-1)/Rt[0],Dt=(St[8]+1)/St[0],Ot=It*Ee,yt=It*Dt,Jt=ct/(-Ee+Dt),bt=Jt*-Ee;if(j.matrixWorld.decompose(W.position,W.quaternion,W.scale),W.translateX(bt),W.translateZ(Jt),W.matrixWorld.compose(W.position,W.quaternion,W.scale),W.matrixWorldInverse.copy(W.matrixWorld).invert(),Rt[10]===-1)W.projectionMatrix.copy(j.projectionMatrix),W.projectionMatrixInverse.copy(j.projectionMatrixInverse);else{const y=It+Jt,v=qt+Jt,U=Ot-bt,Y=yt+(ct-bt),K=Nt*qt/v*y,X=w*qt/v*y;W.projectionMatrix.makePerspective(U,Y,K,X,y,v),W.projectionMatrixInverse.copy(W.projectionMatrix).invert()}}function ot(W,j){j===null?W.matrixWorld.copy(W.matrix):W.matrixWorld.multiplyMatrices(j.matrixWorld,W.matrix),W.matrixWorldInverse.copy(W.matrixWorld).invert()}this.updateCamera=function(W){if(r===null)return;let j=W.near,pt=W.far;x.texture!==null&&(x.depthNear>0&&(j=x.depthNear),x.depthFar>0&&(pt=x.depthFar)),g.near=O.near=b.near=j,g.far=O.far=b.far=pt,(S!==g.near||k!==g.far)&&(r.updateRenderState({depthNear:g.near,depthFar:g.far}),S=g.near,k=g.far);const ct=W.parent,Rt=g.cameras;ot(g,ct);for(let St=0;St0&&(d.alphaTest.value=h.alphaTest);const T=t.get(h),E=T.envMap,A=T.envMapRotation;E&&(d.envMap.value=E,Tn.copy(A),Tn.x*=-1,Tn.y*=-1,Tn.z*=-1,E.isCubeTexture&&E.isRenderTargetTexture===!1&&(Tn.y*=-1,Tn.z*=-1),d.envMapRotation.value.setFromMatrix4(im.makeRotationFromEuler(Tn)),d.flipEnvMap.value=E.isCubeTexture&&E.isRenderTargetTexture===!1?-1:1,d.reflectivity.value=h.reflectivity,d.ior.value=h.ior,d.refractionRatio.value=h.refractionRatio),h.lightMap&&(d.lightMap.value=h.lightMap,d.lightMapIntensity.value=h.lightMapIntensity,e(h.lightMap,d.lightMapTransform)),h.aoMap&&(d.aoMap.value=h.aoMap,d.aoMapIntensity.value=h.aoMapIntensity,e(h.aoMap,d.aoMapTransform))}function a(d,h){d.diffuse.value.copy(h.color),d.opacity.value=h.opacity,h.map&&(d.map.value=h.map,e(h.map,d.mapTransform))}function o(d,h){d.dashSize.value=h.dashSize,d.totalSize.value=h.dashSize+h.gapSize,d.scale.value=h.scale}function l(d,h,T,E){d.diffuse.value.copy(h.color),d.opacity.value=h.opacity,d.size.value=h.size*T,d.scale.value=E*.5,h.map&&(d.map.value=h.map,e(h.map,d.uvTransform)),h.alphaMap&&(d.alphaMap.value=h.alphaMap,e(h.alphaMap,d.alphaMapTransform)),h.alphaTest>0&&(d.alphaTest.value=h.alphaTest)}function c(d,h){d.diffuse.value.copy(h.color),d.opacity.value=h.opacity,d.rotation.value=h.rotation,h.map&&(d.map.value=h.map,e(h.map,d.mapTransform)),h.alphaMap&&(d.alphaMap.value=h.alphaMap,e(h.alphaMap,d.alphaMapTransform)),h.alphaTest>0&&(d.alphaTest.value=h.alphaTest)}function u(d,h){d.specular.value.copy(h.specular),d.shininess.value=Math.max(h.shininess,1e-4)}function f(d,h){h.gradientMap&&(d.gradientMap.value=h.gradientMap)}function p(d,h){d.metalness.value=h.metalness,h.metalnessMap&&(d.metalnessMap.value=h.metalnessMap,e(h.metalnessMap,d.metalnessMapTransform)),d.roughness.value=h.roughness,h.roughnessMap&&(d.roughnessMap.value=h.roughnessMap,e(h.roughnessMap,d.roughnessMapTransform)),h.envMap&&(d.envMapIntensity.value=h.envMapIntensity)}function m(d,h,T){d.ior.value=h.ior,h.sheen>0&&(d.sheenColor.value.copy(h.sheenColor).multiplyScalar(h.sheen),d.sheenRoughness.value=h.sheenRoughness,h.sheenColorMap&&(d.sheenColorMap.value=h.sheenColorMap,e(h.sheenColorMap,d.sheenColorMapTransform)),h.sheenRoughnessMap&&(d.sheenRoughnessMap.value=h.sheenRoughnessMap,e(h.sheenRoughnessMap,d.sheenRoughnessMapTransform))),h.clearcoat>0&&(d.clearcoat.value=h.clearcoat,d.clearcoatRoughness.value=h.clearcoatRoughness,h.clearcoatMap&&(d.clearcoatMap.value=h.clearcoatMap,e(h.clearcoatMap,d.clearcoatMapTransform)),h.clearcoatRoughnessMap&&(d.clearcoatRoughnessMap.value=h.clearcoatRoughnessMap,e(h.clearcoatRoughnessMap,d.clearcoatRoughnessMapTransform)),h.clearcoatNormalMap&&(d.clearcoatNormalMap.value=h.clearcoatNormalMap,e(h.clearcoatNormalMap,d.clearcoatNormalMapTransform),d.clearcoatNormalScale.value.copy(h.clearcoatNormalScale),h.side===_e&&d.clearcoatNormalScale.value.negate())),h.dispersion>0&&(d.dispersion.value=h.dispersion),h.iridescence>0&&(d.iridescence.value=h.iridescence,d.iridescenceIOR.value=h.iridescenceIOR,d.iridescenceThicknessMinimum.value=h.iridescenceThicknessRange[0],d.iridescenceThicknessMaximum.value=h.iridescenceThicknessRange[1],h.iridescenceMap&&(d.iridescenceMap.value=h.iridescenceMap,e(h.iridescenceMap,d.iridescenceMapTransform)),h.iridescenceThicknessMap&&(d.iridescenceThicknessMap.value=h.iridescenceThicknessMap,e(h.iridescenceThicknessMap,d.iridescenceThicknessMapTransform))),h.transmission>0&&(d.transmission.value=h.transmission,d.transmissionSamplerMap.value=T.texture,d.transmissionSamplerSize.value.set(T.width,T.height),h.transmissionMap&&(d.transmissionMap.value=h.transmissionMap,e(h.transmissionMap,d.transmissionMapTransform)),d.thickness.value=h.thickness,h.thicknessMap&&(d.thicknessMap.value=h.thicknessMap,e(h.thicknessMap,d.thicknessMapTransform)),d.attenuationDistance.value=h.attenuationDistance,d.attenuationColor.value.copy(h.attenuationColor)),h.anisotropy>0&&(d.anisotropyVector.value.set(h.anisotropy*Math.cos(h.anisotropyRotation),h.anisotropy*Math.sin(h.anisotropyRotation)),h.anisotropyMap&&(d.anisotropyMap.value=h.anisotropyMap,e(h.anisotropyMap,d.anisotropyMapTransform))),d.specularIntensity.value=h.specularIntensity,d.specularColor.value.copy(h.specularColor),h.specularColorMap&&(d.specularColorMap.value=h.specularColorMap,e(h.specularColorMap,d.specularColorMapTransform)),h.specularIntensityMap&&(d.specularIntensityMap.value=h.specularIntensityMap,e(h.specularIntensityMap,d.specularIntensityMapTransform))}function _(d,h){h.matcap&&(d.matcap.value=h.matcap)}function x(d,h){const T=t.get(h).light;d.referencePosition.value.setFromMatrixPosition(T.matrixWorld),d.nearDistance.value=T.shadow.camera.near,d.farDistance.value=T.shadow.camera.far}return{refreshFogUniforms:n,refreshMaterialUniforms:r}}function sm(i,t,e,n){let r={},s={},a=[];const o=i.getParameter(i.MAX_UNIFORM_BUFFER_BINDINGS);function l(T,E){const A=E.program;n.uniformBlockBinding(T,A)}function c(T,E){let A=r[T.id];A===void 0&&(_(T),A=u(T),r[T.id]=A,T.addEventListener("dispose",d));const F=E.program;n.updateUBOMapping(T,F);const R=t.render.frame;s[T.id]!==R&&(p(T),s[T.id]=R)}function u(T){const E=f();T.__bindingPointIndex=E;const A=i.createBuffer(),F=T.__size,R=T.usage;return i.bindBuffer(i.UNIFORM_BUFFER,A),i.bufferData(i.UNIFORM_BUFFER,F,R),i.bindBuffer(i.UNIFORM_BUFFER,null),i.bindBufferBase(i.UNIFORM_BUFFER,E,A),A}function f(){for(let T=0;T0&&(A+=F-R),T.__size=A,T.__cache={},this}function x(T){const E={boundary:0,storage:0};return typeof T=="number"||typeof T=="boolean"?(E.boundary=4,E.storage=4):T.isVector2?(E.boundary=8,E.storage=8):T.isVector3||T.isColor?(E.boundary=16,E.storage=12):T.isVector4?(E.boundary=16,E.storage=16):T.isMatrix3?(E.boundary=48,E.storage=48):T.isMatrix4?(E.boundary=64,E.storage=64):T.isTexture?console.warn("THREE.WebGLRenderer: Texture samplers can not be part of an uniforms group."):console.warn("THREE.WebGLRenderer: Unsupported uniform value type.",T),E}function d(T){const E=T.target;E.removeEventListener("dispose",d);const A=a.indexOf(E.__bindingPointIndex);a.splice(A,1),i.deleteBuffer(r[E.id]),delete r[E.id],delete s[E.id]}function h(){for(const T in r)i.deleteBuffer(r[T]);a=[],r={},s={}}return{bind:l,update:c,dispose:h}}class am{constructor(t={}){const{canvas:e=Xc(),context:n=null,depth:r=!0,stencil:s=!1,alpha:a=!1,antialias:o=!1,premultipliedAlpha:l=!0,preserveDrawingBuffer:c=!1,powerPreference:u="default",failIfMajorPerformanceCaveat:f=!1}=t;this.isWebGLRenderer=!0;let p;if(n!==null){if(typeof WebGLRenderingContext<"u"&&n instanceof WebGLRenderingContext)throw new Error("THREE.WebGLRenderer: WebGL 1 is not supported since r163.");p=n.getContextAttributes().alpha}else p=a;const m=new Uint32Array(4),_=new Int32Array(4);let x=null,d=null;const h=[],T=[];this.domElement=e,this.debug={checkShaderErrors:!0,onShaderError:null},this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this._outputColorSpace=He,this.toneMapping=pn,this.toneMappingExposure=1;const E=this;let A=!1,F=0,R=0,b=null,O=-1,tt=null;const g=new Zt,S=new Zt;let k=null;const z=new zt(0);let V=0,Z=e.width,B=e.height,J=1,G=null,ot=null;const lt=new Zt(0,0,Z,B),_t=new Zt(0,0,Z,B);let Ht=!1;const Xt=new fa;let W=!1,j=!1;const pt=new $t,ct=new $t,Rt=new L,St=new Zt,It={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0};let qt=!1;function Nt(){return b===null?J:1}let w=n;function Ee(M,P){return e.getContext(M,P)}try{const M={alpha:!0,depth:r,stencil:s,antialias:o,premultipliedAlpha:l,preserveDrawingBuffer:c,powerPreference:u,failIfMajorPerformanceCaveat:f};if("setAttribute"in e&&e.setAttribute("data-engine",`three.js r${na}`),e.addEventListener("webglcontextlost",q,!1),e.addEventListener("webglcontextrestored",it,!1),e.addEventListener("webglcontextcreationerror",at,!1),w===null){const P="webgl2";if(w=Ee(P,M),w===null)throw Ee(P)?new Error("Error creating WebGL context with your selected attributes."):new Error("Error creating WebGL context.")}}catch(M){throw console.error("THREE.WebGLRenderer: "+M.message),M}let Dt,Ot,yt,Jt,bt,y,v,U,Y,K,X,gt,nt,ht,Bt,$,ut,Tt,At,dt,Ut,Ct,jt,C;function st(){Dt=new uf(w),Dt.init(),Ct=new jp(w,Dt),Ot=new rf(w,Dt,t,Ct),yt=new qp(w),Ot.reverseDepthBuffer&&yt.buffers.depth.setReversed(!0),Jt=new pf(w),bt=new Dp,y=new Zp(w,Dt,yt,bt,Ot,Ct,Jt),v=new af(E),U=new hf(E),Y=new xh(w),jt=new ef(w,Y),K=new df(w,Y,Jt,jt),X=new _f(w,K,Y,Jt),At=new mf(w,Ot,y),$=new sf(bt),gt=new Lp(E,v,U,Dt,Ot,jt,$),nt=new rm(E,bt),ht=new Ip,Bt=new Hp(Dt),Tt=new tf(E,v,U,yt,X,p,l),ut=new Xp(E,X,Ot),C=new sm(w,Jt,Ot,yt),dt=new nf(w,Dt,Jt),Ut=new ff(w,Dt,Jt),Jt.programs=gt.programs,E.capabilities=Ot,E.extensions=Dt,E.properties=bt,E.renderLists=ht,E.shadowMap=ut,E.state=yt,E.info=Jt}st();const H=new nm(E,w);this.xr=H,this.getContext=function(){return w},this.getContextAttributes=function(){return w.getContextAttributes()},this.forceContextLoss=function(){const M=Dt.get("WEBGL_lose_context");M&&M.loseContext()},this.forceContextRestore=function(){const M=Dt.get("WEBGL_lose_context");M&&M.restoreContext()},this.getPixelRatio=function(){return J},this.setPixelRatio=function(M){M!==void 0&&(J=M,this.setSize(Z,B,!1))},this.getSize=function(M){return M.set(Z,B)},this.setSize=function(M,P,I=!0){if(H.isPresenting){console.warn("THREE.WebGLRenderer: Can't change size while VR device is presenting.");return}Z=M,B=P,e.width=Math.floor(M*J),e.height=Math.floor(P*J),I===!0&&(e.style.width=M+"px",e.style.height=P+"px"),this.setViewport(0,0,M,P)},this.getDrawingBufferSize=function(M){return M.set(Z*J,B*J).floor()},this.setDrawingBufferSize=function(M,P,I){Z=M,B=P,J=I,e.width=Math.floor(M*I),e.height=Math.floor(P*I),this.setViewport(0,0,M,P)},this.getCurrentViewport=function(M){return M.copy(g)},this.getViewport=function(M){return M.copy(lt)},this.setViewport=function(M,P,I,N){M.isVector4?lt.set(M.x,M.y,M.z,M.w):lt.set(M,P,I,N),yt.viewport(g.copy(lt).multiplyScalar(J).round())},this.getScissor=function(M){return M.copy(_t)},this.setScissor=function(M,P,I,N){M.isVector4?_t.set(M.x,M.y,M.z,M.w):_t.set(M,P,I,N),yt.scissor(S.copy(_t).multiplyScalar(J).round())},this.getScissorTest=function(){return Ht},this.setScissorTest=function(M){yt.setScissorTest(Ht=M)},this.setOpaqueSort=function(M){G=M},this.setTransparentSort=function(M){ot=M},this.getClearColor=function(M){return M.copy(Tt.getClearColor())},this.setClearColor=function(){Tt.setClearColor.apply(Tt,arguments)},this.getClearAlpha=function(){return Tt.getClearAlpha()},this.setClearAlpha=function(){Tt.setClearAlpha.apply(Tt,arguments)},this.clear=function(M=!0,P=!0,I=!0){let N=0;if(M){let D=!1;if(b!==null){const Q=b.texture.format;D=Q===la||Q===oa||Q===aa}if(D){const Q=b.texture.type,rt=Q===en||Q===Pn||Q===Ri||Q===oi||Q===ra||Q===sa,ft=Tt.getClearColor(),mt=Tt.getClearAlpha(),Mt=ft.r,Et=ft.g,vt=ft.b;rt?(m[0]=Mt,m[1]=Et,m[2]=vt,m[3]=mt,w.clearBufferuiv(w.COLOR,0,m)):(_[0]=Mt,_[1]=Et,_[2]=vt,_[3]=mt,w.clearBufferiv(w.COLOR,0,_))}else N|=w.COLOR_BUFFER_BIT}P&&(N|=w.DEPTH_BUFFER_BIT,w.clearDepth(this.capabilities.reverseDepthBuffer?0:1)),I&&(N|=w.STENCIL_BUFFER_BIT,this.state.buffers.stencil.setMask(4294967295)),w.clear(N)},this.clearColor=function(){this.clear(!0,!1,!1)},this.clearDepth=function(){this.clear(!1,!0,!1)},this.clearStencil=function(){this.clear(!1,!1,!0)},this.dispose=function(){e.removeEventListener("webglcontextlost",q,!1),e.removeEventListener("webglcontextrestored",it,!1),e.removeEventListener("webglcontextcreationerror",at,!1),ht.dispose(),Bt.dispose(),bt.dispose(),v.dispose(),U.dispose(),X.dispose(),jt.dispose(),C.dispose(),gt.dispose(),H.dispose(),H.removeEventListener("sessionstart",xa),H.removeEventListener("sessionend",Ma),vn.stop()};function q(M){M.preventDefault(),console.log("THREE.WebGLRenderer: Context Lost."),A=!0}function it(){console.log("THREE.WebGLRenderer: Context Restored."),A=!1;const M=Jt.autoReset,P=ut.enabled,I=ut.autoUpdate,N=ut.needsUpdate,D=ut.type;st(),Jt.autoReset=M,ut.enabled=P,ut.autoUpdate=I,ut.needsUpdate=N,ut.type=D}function at(M){console.error("THREE.WebGLRenderer: A WebGL context could not be created. Reason: ",M.statusMessage)}function Ft(M){const P=M.target;P.removeEventListener("dispose",Ft),ie(P)}function ie(M){ve(M),bt.remove(M)}function ve(M){const P=bt.get(M).programs;P!==void 0&&(P.forEach(function(I){gt.releaseProgram(I)}),M.isShaderMaterial&>.releaseShaderCache(M))}this.renderBufferDirect=function(M,P,I,N,D,Q){P===null&&(P=It);const rt=D.isMesh&&D.matrixWorld.determinant()<0,ft=Nl(M,P,I,N,D);yt.setMaterial(N,rt);let mt=I.index,Mt=1;if(N.wireframe===!0){if(mt=K.getWireframeAttribute(I),mt===void 0)return;Mt=2}const Et=I.drawRange,vt=I.attributes.position;let Yt=Et.start*Mt,Qt=(Et.start+Et.count)*Mt;Q!==null&&(Yt=Math.max(Yt,Q.start*Mt),Qt=Math.min(Qt,(Q.start+Q.count)*Mt)),mt!==null?(Yt=Math.max(Yt,0),Qt=Math.min(Qt,mt.count)):vt!=null&&(Yt=Math.max(Yt,0),Qt=Math.min(Qt,vt.count));const ee=Qt-Yt;if(ee<0||ee===1/0)return;jt.setup(D,N,ft,I,mt);let ye,kt=dt;if(mt!==null&&(ye=Y.get(mt),kt=Ut,kt.setIndex(ye)),D.isMesh)N.wireframe===!0?(yt.setLineWidth(N.wireframeLinewidth*Nt()),kt.setMode(w.LINES)):kt.setMode(w.TRIANGLES);else if(D.isLine){let xt=N.linewidth;xt===void 0&&(xt=1),yt.setLineWidth(xt*Nt()),D.isLineSegments?kt.setMode(w.LINES):D.isLineLoop?kt.setMode(w.LINE_LOOP):kt.setMode(w.LINE_STRIP)}else D.isPoints?kt.setMode(w.POINTS):D.isSprite&&kt.setMode(w.TRIANGLES);if(D.isBatchedMesh)if(D._multiDrawInstances!==null)kt.renderMultiDrawInstances(D._multiDrawStarts,D._multiDrawCounts,D._multiDrawCount,D._multiDrawInstances);else if(Dt.get("WEBGL_multi_draw"))kt.renderMultiDraw(D._multiDrawStarts,D._multiDrawCounts,D._multiDrawCount);else{const xt=D._multiDrawStarts,ce=D._multiDrawCounts,Vt=D._multiDrawCount,De=mt?Y.get(mt).bytesPerElement:1,In=bt.get(N).currentProgram.getUniforms();for(let Te=0;Te{function Q(){if(N.forEach(function(rt){bt.get(rt).currentProgram.isReady()&&N.delete(rt)}),N.size===0){D(M);return}setTimeout(Q,10)}Dt.get("KHR_parallel_shader_compile")!==null?Q():setTimeout(Q,10)})};let xe=null;function Xe(M){xe&&xe(M)}function xa(){vn.stop()}function Ma(){vn.start()}const vn=new Ml;vn.setAnimationLoop(Xe),typeof self<"u"&&vn.setContext(self),this.setAnimationLoop=function(M){xe=M,H.setAnimationLoop(M),M===null?vn.stop():vn.start()},H.addEventListener("sessionstart",xa),H.addEventListener("sessionend",Ma),this.render=function(M,P){if(P!==void 0&&P.isCamera!==!0){console.error("THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.");return}if(A===!0)return;if(M.matrixWorldAutoUpdate===!0&&M.updateMatrixWorld(),P.parent===null&&P.matrixWorldAutoUpdate===!0&&P.updateMatrixWorld(),H.enabled===!0&&H.isPresenting===!0&&(H.cameraAutoUpdate===!0&&H.updateCamera(P),P=H.getCamera()),M.isScene===!0&&M.onBeforeRender(E,M,P,b),d=Bt.get(M,T.length),d.init(P),T.push(d),ct.multiplyMatrices(P.projectionMatrix,P.matrixWorldInverse),Xt.setFromProjectionMatrix(ct),j=this.localClippingEnabled,W=$.init(this.clippingPlanes,j),x=ht.get(M,h.length),x.init(),h.push(x),H.enabled===!0&&H.isPresenting===!0){const Q=E.xr.getDepthSensingMesh();Q!==null&&Pr(Q,P,-1/0,E.sortObjects)}Pr(M,P,0,E.sortObjects),x.finish(),E.sortObjects===!0&&x.sort(G,ot),qt=H.enabled===!1||H.isPresenting===!1||H.hasDepthSensing()===!1,qt&&Tt.addToRenderList(x,M),this.info.render.frame++,W===!0&&$.beginShadows();const I=d.state.shadowsArray;ut.render(I,M,P),W===!0&&$.endShadows(),this.info.autoReset===!0&&this.info.reset();const N=x.opaque,D=x.transmissive;if(d.setupLights(),P.isArrayCamera){const Q=P.cameras;if(D.length>0)for(let rt=0,ft=Q.length;rt0&&Ea(N,D,M,P),qt&&Tt.render(M),Sa(x,M,P);b!==null&&(y.updateMultisampleRenderTarget(b),y.updateRenderTargetMipmap(b)),M.isScene===!0&&M.onAfterRender(E,M,P),jt.resetDefaultState(),O=-1,tt=null,T.pop(),T.length>0?(d=T[T.length-1],W===!0&&$.setGlobalState(E.clippingPlanes,d.state.camera)):d=null,h.pop(),h.length>0?x=h[h.length-1]:x=null};function Pr(M,P,I,N){if(M.visible===!1)return;if(M.layers.test(P.layers)){if(M.isGroup)I=M.renderOrder;else if(M.isLOD)M.autoUpdate===!0&&M.update(P);else if(M.isLight)d.pushLight(M),M.castShadow&&d.pushShadow(M);else if(M.isSprite){if(!M.frustumCulled||Xt.intersectsSprite(M)){N&&St.setFromMatrixPosition(M.matrixWorld).applyMatrix4(ct);const rt=X.update(M),ft=M.material;ft.visible&&x.push(M,rt,ft,I,St.z,null)}}else if((M.isMesh||M.isLine||M.isPoints)&&(!M.frustumCulled||Xt.intersectsObject(M))){const rt=X.update(M),ft=M.material;if(N&&(M.boundingSphere!==void 0?(M.boundingSphere===null&&M.computeBoundingSphere(),St.copy(M.boundingSphere.center)):(rt.boundingSphere===null&&rt.computeBoundingSphere(),St.copy(rt.boundingSphere.center)),St.applyMatrix4(M.matrixWorld).applyMatrix4(ct)),Array.isArray(ft)){const mt=rt.groups;for(let Mt=0,Et=mt.length;Mt0&&Ni(D,P,I),Q.length>0&&Ni(Q,P,I),rt.length>0&&Ni(rt,P,I),yt.buffers.depth.setTest(!0),yt.buffers.depth.setMask(!0),yt.buffers.color.setMask(!0),yt.setPolygonOffset(!1)}function Ea(M,P,I,N){if((I.isScene===!0?I.overrideMaterial:null)!==null)return;d.state.transmissionRenderTarget[N.id]===void 0&&(d.state.transmissionRenderTarget[N.id]=new Ln(1,1,{generateMipmaps:!0,type:Dt.has("EXT_color_buffer_half_float")||Dt.has("EXT_color_buffer_float")?Li:en,minFilter:Cn,samples:4,stencilBuffer:s,resolveDepthBuffer:!1,resolveStencilBuffer:!1,colorSpace:Wt.workingColorSpace}));const Q=d.state.transmissionRenderTarget[N.id],rt=N.viewport||g;Q.setSize(rt.z,rt.w);const ft=E.getRenderTarget();E.setRenderTarget(Q),E.getClearColor(z),V=E.getClearAlpha(),V<1&&E.setClearColor(16777215,.5),E.clear(),qt&&Tt.render(I);const mt=E.toneMapping;E.toneMapping=pn;const Mt=N.viewport;if(N.viewport!==void 0&&(N.viewport=void 0),d.setupLightsView(N),W===!0&&$.setGlobalState(E.clippingPlanes,N),Ni(M,I,N),y.updateMultisampleRenderTarget(Q),y.updateRenderTargetMipmap(Q),Dt.has("WEBGL_multisampled_render_to_texture")===!1){let Et=!1;for(let vt=0,Yt=P.length;vt0),vt=!!I.morphAttributes.position,Yt=!!I.morphAttributes.normal,Qt=!!I.morphAttributes.color;let ee=pn;N.toneMapped&&(b===null||b.isXRRenderTarget===!0)&&(ee=E.toneMapping);const ye=I.morphAttributes.position||I.morphAttributes.normal||I.morphAttributes.color,kt=ye!==void 0?ye.length:0,xt=bt.get(N),ce=d.state.lights;if(W===!0&&(j===!0||M!==tt)){const Ce=M===tt&&N.id===O;$.setState(N,M,Ce)}let Vt=!1;N.version===xt.__version?(xt.needsLights&&xt.lightsStateVersion!==ce.state.version||xt.outputColorSpace!==ft||D.isBatchedMesh&&xt.batching===!1||!D.isBatchedMesh&&xt.batching===!0||D.isBatchedMesh&&xt.batchingColor===!0&&D.colorTexture===null||D.isBatchedMesh&&xt.batchingColor===!1&&D.colorTexture!==null||D.isInstancedMesh&&xt.instancing===!1||!D.isInstancedMesh&&xt.instancing===!0||D.isSkinnedMesh&&xt.skinning===!1||!D.isSkinnedMesh&&xt.skinning===!0||D.isInstancedMesh&&xt.instancingColor===!0&&D.instanceColor===null||D.isInstancedMesh&&xt.instancingColor===!1&&D.instanceColor!==null||D.isInstancedMesh&&xt.instancingMorph===!0&&D.morphTexture===null||D.isInstancedMesh&&xt.instancingMorph===!1&&D.morphTexture!==null||xt.envMap!==mt||N.fog===!0&&xt.fog!==Q||xt.numClippingPlanes!==void 0&&(xt.numClippingPlanes!==$.numPlanes||xt.numIntersection!==$.numIntersection)||xt.vertexAlphas!==Mt||xt.vertexTangents!==Et||xt.morphTargets!==vt||xt.morphNormals!==Yt||xt.morphColors!==Qt||xt.toneMapping!==ee||xt.morphTargetsCount!==kt)&&(Vt=!0):(Vt=!0,xt.__version=N.version);let De=xt.currentProgram;Vt===!0&&(De=Fi(N,P,D));let In=!1,Te=!1,Lr=!1;const ne=De.getUniforms(),nn=xt.uniforms;if(yt.useProgram(De.program)&&(In=!0,Te=!0,Lr=!0),N.id!==O&&(O=N.id,Te=!0),In||tt!==M){Ot.reverseDepthBuffer?(pt.copy(M.projectionMatrix),qc(pt),Kc(pt),ne.setValue(w,"projectionMatrix",pt)):ne.setValue(w,"projectionMatrix",M.projectionMatrix),ne.setValue(w,"viewMatrix",M.matrixWorldInverse);const Ce=ne.map.cameraPosition;Ce!==void 0&&Ce.setValue(w,Rt.setFromMatrixPosition(M.matrixWorld)),Ot.logarithmicDepthBuffer&&ne.setValue(w,"logDepthBufFC",2/(Math.log(M.far+1)/Math.LN2)),(N.isMeshPhongMaterial||N.isMeshToonMaterial||N.isMeshLambertMaterial||N.isMeshBasicMaterial||N.isMeshStandardMaterial||N.isShaderMaterial)&&ne.setValue(w,"isOrthographic",M.isOrthographicCamera===!0),tt!==M&&(tt=M,Te=!0,Lr=!0)}if(D.isSkinnedMesh){ne.setOptional(w,D,"bindMatrix"),ne.setOptional(w,D,"bindMatrixInverse");const Ce=D.skeleton;Ce&&(Ce.boneTexture===null&&Ce.computeBoneTexture(),ne.setValue(w,"boneTexture",Ce.boneTexture,y))}D.isBatchedMesh&&(ne.setOptional(w,D,"batchingTexture"),ne.setValue(w,"batchingTexture",D._matricesTexture,y),ne.setOptional(w,D,"batchingIdTexture"),ne.setValue(w,"batchingIdTexture",D._indirectTexture,y),ne.setOptional(w,D,"batchingColorTexture"),D._colorsTexture!==null&&ne.setValue(w,"batchingColorTexture",D._colorsTexture,y));const Dr=I.morphAttributes;if((Dr.position!==void 0||Dr.normal!==void 0||Dr.color!==void 0)&&At.update(D,I,De),(Te||xt.receiveShadow!==D.receiveShadow)&&(xt.receiveShadow=D.receiveShadow,ne.setValue(w,"receiveShadow",D.receiveShadow)),N.isMeshGouraudMaterial&&N.envMap!==null&&(nn.envMap.value=mt,nn.flipEnvMap.value=mt.isCubeTexture&&mt.isRenderTargetTexture===!1?-1:1),N.isMeshStandardMaterial&&N.envMap===null&&P.environment!==null&&(nn.envMapIntensity.value=P.environmentIntensity),Te&&(ne.setValue(w,"toneMappingExposure",E.toneMappingExposure),xt.needsLights&&Fl(nn,Lr),Q&&N.fog===!0&&nt.refreshFogUniforms(nn,Q),nt.refreshMaterialUniforms(nn,N,J,B,d.state.transmissionRenderTarget[M.id]),_r.upload(w,Ta(xt),nn,y)),N.isShaderMaterial&&N.uniformsNeedUpdate===!0&&(_r.upload(w,Ta(xt),nn,y),N.uniformsNeedUpdate=!1),N.isSpriteMaterial&&ne.setValue(w,"center",D.center),ne.setValue(w,"modelViewMatrix",D.modelViewMatrix),ne.setValue(w,"normalMatrix",D.normalMatrix),ne.setValue(w,"modelMatrix",D.matrixWorld),N.isShaderMaterial||N.isRawShaderMaterial){const Ce=N.uniformsGroups;for(let Ur=0,Bl=Ce.length;Ur0&&y.useMultisampledRTT(M)===!1?D=bt.get(M).__webglMultisampledFramebuffer:Array.isArray(Et)?D=Et[I]:D=Et,g.copy(M.viewport),S.copy(M.scissor),k=M.scissorTest}else g.copy(lt).multiplyScalar(J).floor(),S.copy(_t).multiplyScalar(J).floor(),k=Ht;if(yt.bindFramebuffer(w.FRAMEBUFFER,D)&&N&&yt.drawBuffers(M,D),yt.viewport(g),yt.scissor(S),yt.setScissorTest(k),Q){const mt=bt.get(M.texture);w.framebufferTexture2D(w.FRAMEBUFFER,w.COLOR_ATTACHMENT0,w.TEXTURE_CUBE_MAP_POSITIVE_X+P,mt.__webglTexture,I)}else if(rt){const mt=bt.get(M.texture),Mt=P||0;w.framebufferTextureLayer(w.FRAMEBUFFER,w.COLOR_ATTACHMENT0,mt.__webglTexture,I||0,Mt)}O=-1},this.readRenderTargetPixels=function(M,P,I,N,D,Q,rt){if(!(M&&M.isWebGLRenderTarget)){console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");return}let ft=bt.get(M).__webglFramebuffer;if(M.isWebGLCubeRenderTarget&&rt!==void 0&&(ft=ft[rt]),ft){yt.bindFramebuffer(w.FRAMEBUFFER,ft);try{const mt=M.texture,Mt=mt.format,Et=mt.type;if(!Ot.textureFormatReadable(Mt)){console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.");return}if(!Ot.textureTypeReadable(Et)){console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.");return}P>=0&&P<=M.width-N&&I>=0&&I<=M.height-D&&w.readPixels(P,I,N,D,Ct.convert(Mt),Ct.convert(Et),Q)}finally{const mt=b!==null?bt.get(b).__webglFramebuffer:null;yt.bindFramebuffer(w.FRAMEBUFFER,mt)}}},this.readRenderTargetPixelsAsync=async function(M,P,I,N,D,Q,rt){if(!(M&&M.isWebGLRenderTarget))throw new Error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");let ft=bt.get(M).__webglFramebuffer;if(M.isWebGLCubeRenderTarget&&rt!==void 0&&(ft=ft[rt]),ft){const mt=M.texture,Mt=mt.format,Et=mt.type;if(!Ot.textureFormatReadable(Mt))throw new Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in RGBA or implementation defined format.");if(!Ot.textureTypeReadable(Et))throw new Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in UnsignedByteType or implementation defined type.");if(P>=0&&P<=M.width-N&&I>=0&&I<=M.height-D){yt.bindFramebuffer(w.FRAMEBUFFER,ft);const vt=w.createBuffer();w.bindBuffer(w.PIXEL_PACK_BUFFER,vt),w.bufferData(w.PIXEL_PACK_BUFFER,Q.byteLength,w.STREAM_READ),w.readPixels(P,I,N,D,Ct.convert(Mt),Ct.convert(Et),0);const Yt=b!==null?bt.get(b).__webglFramebuffer:null;yt.bindFramebuffer(w.FRAMEBUFFER,Yt);const Qt=w.fenceSync(w.SYNC_GPU_COMMANDS_COMPLETE,0);return w.flush(),await Yc(w,Qt,4),w.bindBuffer(w.PIXEL_PACK_BUFFER,vt),w.getBufferSubData(w.PIXEL_PACK_BUFFER,0,Q),w.deleteBuffer(vt),w.deleteSync(Qt),Q}else throw new Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: requested read bounds are out of range.")}},this.copyFramebufferToTexture=function(M,P=null,I=0){M.isTexture!==!0&&(mr("WebGLRenderer: copyFramebufferToTexture function signature has changed."),P=arguments[0]||null,M=arguments[1]);const N=Math.pow(2,-I),D=Math.floor(M.image.width*N),Q=Math.floor(M.image.height*N),rt=P!==null?P.x:0,ft=P!==null?P.y:0;y.setTexture2D(M,0),w.copyTexSubImage2D(w.TEXTURE_2D,I,0,0,rt,ft,D,Q),yt.unbindTexture()},this.copyTextureToTexture=function(M,P,I=null,N=null,D=0){M.isTexture!==!0&&(mr("WebGLRenderer: copyTextureToTexture function signature has changed."),N=arguments[0]||null,M=arguments[1],P=arguments[2],D=arguments[3]||0,I=null);let Q,rt,ft,mt,Mt,Et;I!==null?(Q=I.max.x-I.min.x,rt=I.max.y-I.min.y,ft=I.min.x,mt=I.min.y):(Q=M.image.width,rt=M.image.height,ft=0,mt=0),N!==null?(Mt=N.x,Et=N.y):(Mt=0,Et=0);const vt=Ct.convert(P.format),Yt=Ct.convert(P.type);y.setTexture2D(P,0),w.pixelStorei(w.UNPACK_FLIP_Y_WEBGL,P.flipY),w.pixelStorei(w.UNPACK_PREMULTIPLY_ALPHA_WEBGL,P.premultiplyAlpha),w.pixelStorei(w.UNPACK_ALIGNMENT,P.unpackAlignment);const Qt=w.getParameter(w.UNPACK_ROW_LENGTH),ee=w.getParameter(w.UNPACK_IMAGE_HEIGHT),ye=w.getParameter(w.UNPACK_SKIP_PIXELS),kt=w.getParameter(w.UNPACK_SKIP_ROWS),xt=w.getParameter(w.UNPACK_SKIP_IMAGES),ce=M.isCompressedTexture?M.mipmaps[D]:M.image;w.pixelStorei(w.UNPACK_ROW_LENGTH,ce.width),w.pixelStorei(w.UNPACK_IMAGE_HEIGHT,ce.height),w.pixelStorei(w.UNPACK_SKIP_PIXELS,ft),w.pixelStorei(w.UNPACK_SKIP_ROWS,mt),M.isDataTexture?w.texSubImage2D(w.TEXTURE_2D,D,Mt,Et,Q,rt,vt,Yt,ce.data):M.isCompressedTexture?w.compressedTexSubImage2D(w.TEXTURE_2D,D,Mt,Et,ce.width,ce.height,vt,ce.data):w.texSubImage2D(w.TEXTURE_2D,D,Mt,Et,Q,rt,vt,Yt,ce),w.pixelStorei(w.UNPACK_ROW_LENGTH,Qt),w.pixelStorei(w.UNPACK_IMAGE_HEIGHT,ee),w.pixelStorei(w.UNPACK_SKIP_PIXELS,ye),w.pixelStorei(w.UNPACK_SKIP_ROWS,kt),w.pixelStorei(w.UNPACK_SKIP_IMAGES,xt),D===0&&P.generateMipmaps&&w.generateMipmap(w.TEXTURE_2D),yt.unbindTexture()},this.copyTextureToTexture3D=function(M,P,I=null,N=null,D=0){M.isTexture!==!0&&(mr("WebGLRenderer: copyTextureToTexture3D function signature has changed."),I=arguments[0]||null,N=arguments[1]||null,M=arguments[2],P=arguments[3],D=arguments[4]||0);let Q,rt,ft,mt,Mt,Et,vt,Yt,Qt;const ee=M.isCompressedTexture?M.mipmaps[D]:M.image;I!==null?(Q=I.max.x-I.min.x,rt=I.max.y-I.min.y,ft=I.max.z-I.min.z,mt=I.min.x,Mt=I.min.y,Et=I.min.z):(Q=ee.width,rt=ee.height,ft=ee.depth,mt=0,Mt=0,Et=0),N!==null?(vt=N.x,Yt=N.y,Qt=N.z):(vt=0,Yt=0,Qt=0);const ye=Ct.convert(P.format),kt=Ct.convert(P.type);let xt;if(P.isData3DTexture)y.setTexture3D(P,0),xt=w.TEXTURE_3D;else if(P.isDataArrayTexture||P.isCompressedArrayTexture)y.setTexture2DArray(P,0),xt=w.TEXTURE_2D_ARRAY;else{console.warn("THREE.WebGLRenderer.copyTextureToTexture3D: only supports THREE.DataTexture3D and THREE.DataTexture2DArray.");return}w.pixelStorei(w.UNPACK_FLIP_Y_WEBGL,P.flipY),w.pixelStorei(w.UNPACK_PREMULTIPLY_ALPHA_WEBGL,P.premultiplyAlpha),w.pixelStorei(w.UNPACK_ALIGNMENT,P.unpackAlignment);const ce=w.getParameter(w.UNPACK_ROW_LENGTH),Vt=w.getParameter(w.UNPACK_IMAGE_HEIGHT),De=w.getParameter(w.UNPACK_SKIP_PIXELS),In=w.getParameter(w.UNPACK_SKIP_ROWS),Te=w.getParameter(w.UNPACK_SKIP_IMAGES);w.pixelStorei(w.UNPACK_ROW_LENGTH,ee.width),w.pixelStorei(w.UNPACK_IMAGE_HEIGHT,ee.height),w.pixelStorei(w.UNPACK_SKIP_PIXELS,mt),w.pixelStorei(w.UNPACK_SKIP_ROWS,Mt),w.pixelStorei(w.UNPACK_SKIP_IMAGES,Et),M.isDataTexture||M.isData3DTexture?w.texSubImage3D(xt,D,vt,Yt,Qt,Q,rt,ft,ye,kt,ee.data):P.isCompressedArrayTexture?w.compressedTexSubImage3D(xt,D,vt,Yt,Qt,Q,rt,ft,ye,ee.data):w.texSubImage3D(xt,D,vt,Yt,Qt,Q,rt,ft,ye,kt,ee),w.pixelStorei(w.UNPACK_ROW_LENGTH,ce),w.pixelStorei(w.UNPACK_IMAGE_HEIGHT,Vt),w.pixelStorei(w.UNPACK_SKIP_PIXELS,De),w.pixelStorei(w.UNPACK_SKIP_ROWS,In),w.pixelStorei(w.UNPACK_SKIP_IMAGES,Te),D===0&&P.generateMipmaps&&w.generateMipmap(xt),yt.unbindTexture()},this.initRenderTarget=function(M){bt.get(M).__webglFramebuffer===void 0&&y.setupRenderTarget(M)},this.initTexture=function(M){M.isCubeTexture?y.setTextureCube(M,0):M.isData3DTexture?y.setTexture3D(M,0):M.isDataArrayTexture||M.isCompressedArrayTexture?y.setTexture2DArray(M,0):y.setTexture2D(M,0),yt.unbindTexture()},this.resetState=function(){F=0,R=0,b=null,yt.reset(),jt.reset()},typeof __THREE_DEVTOOLS__<"u"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}get coordinateSystem(){return tn}get outputColorSpace(){return this._outputColorSpace}set outputColorSpace(t){this._outputColorSpace=t;const e=this.getContext();e.drawingBufferColorSpace=t===ca?"display-p3":"srgb",e.unpackColorSpace=Wt.workingColorSpace===Ar?"display-p3":"srgb"}}class om extends fe{constructor(){super(),this.isScene=!0,this.type="Scene",this.background=null,this.environment=null,this.fog=null,this.backgroundBlurriness=0,this.backgroundIntensity=1,this.backgroundRotation=new We,this.environmentIntensity=1,this.environmentRotation=new We,this.overrideMaterial=null,typeof __THREE_DEVTOOLS__<"u"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}copy(t,e){return super.copy(t,e),t.background!==null&&(this.background=t.background.clone()),t.environment!==null&&(this.environment=t.environment.clone()),t.fog!==null&&(this.fog=t.fog.clone()),this.backgroundBlurriness=t.backgroundBlurriness,this.backgroundIntensity=t.backgroundIntensity,this.backgroundRotation.copy(t.backgroundRotation),this.environmentIntensity=t.environmentIntensity,this.environmentRotation.copy(t.environmentRotation),t.overrideMaterial!==null&&(this.overrideMaterial=t.overrideMaterial.clone()),this.matrixAutoUpdate=t.matrixAutoUpdate,this}toJSON(t){const e=super.toJSON(t);return this.fog!==null&&(e.object.fog=this.fog.toJSON()),this.backgroundBlurriness>0&&(e.object.backgroundBlurriness=this.backgroundBlurriness),this.backgroundIntensity!==1&&(e.object.backgroundIntensity=this.backgroundIntensity),e.object.backgroundRotation=this.backgroundRotation.toArray(),this.environmentIntensity!==1&&(e.object.environmentIntensity=this.environmentIntensity),e.object.environmentRotation=this.environmentRotation.toArray(),e}}class bl extends ui{constructor(t){super(),this.isLineBasicMaterial=!0,this.type="LineBasicMaterial",this.color=new zt(16777215),this.map=null,this.linewidth=1,this.linecap="round",this.linejoin="round",this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.linewidth=t.linewidth,this.linecap=t.linecap,this.linejoin=t.linejoin,this.fog=t.fog,this}}const Sr=new L,Er=new L,bo=new $t,xi=new ua,sr=new br,hs=new L,wo=new L;class lm extends fe{constructor(t=new ze,e=new bl){super(),this.isLine=!0,this.type="Line",this.geometry=t,this.material=e,this.updateMorphTargets()}copy(t,e){return super.copy(t,e),this.material=Array.isArray(t.material)?t.material.slice():t.material,this.geometry=t.geometry,this}computeLineDistances(){const t=this.geometry;if(t.index===null){const e=t.attributes.position,n=[0];for(let r=1,s=e.count;r0){const r=e[n[0]];if(r!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let s=0,a=r.length;sn)return;hs.applyMatrix4(i.matrixWorld);const l=t.ray.origin.distanceTo(hs);if(!(lt.far))return{distance:l,point:wo.clone().applyMatrix4(i.matrixWorld),index:r,face:null,faceIndex:null,barycoord:null,object:i}}class ma extends ze{constructor(t=.5,e=1,n=32,r=1,s=0,a=Math.PI*2){super(),this.type="RingGeometry",this.parameters={innerRadius:t,outerRadius:e,thetaSegments:n,phiSegments:r,thetaStart:s,thetaLength:a},n=Math.max(3,n),r=Math.max(1,r);const o=[],l=[],c=[],u=[];let f=t;const p=(e-t)/r,m=new L,_=new wt;for(let x=0;x<=r;x++){for(let d=0;d<=n;d++){const h=s+d/n*a;m.x=f*Math.cos(h),m.y=f*Math.sin(h),l.push(m.x,m.y,m.z),c.push(0,0,1),_.x=(m.x/e+1)/2,_.y=(m.y/e+1)/2,u.push(_.x,_.y)}f+=p}for(let x=0;x0)&&m.push(E,A,R),(h!==n-1||l=-1&&Zn.z<=1&&_.layers.test(d.layers)===!0,T=_.element;T.style.display=h===!0?"":"none",h===!0&&(_.onBeforeRender(e,x,d),T.style.transform="translate("+-100*_.center.x+"%,"+-100*_.center.y+"%)translate("+(Zn.x*s+s)+"px,"+(-Zn.y*a+a)+"px)",T.parentNode!==l&&l.appendChild(T),_.onAfterRender(e,x,d));const E={distanceToCameraSquared:f(d,_)};o.objects.set(_,E)}for(let h=0,T=_.children.length;h{const n=2*Math.PI/i;return(t+n*e)%(2*Math.PI)},Pl=(i,t)=>{let e=t;const n=1e-6;let r=1;for(;Math.abs(r)>n;)r=(e-i*Math.sin(e)-t)/(1-i*Math.cos(e)),e=e-r;return e},Ll=(i,t)=>2*Math.atan2(Math.sqrt(1+i)*Math.sin(t/2),Math.sqrt(1-i)*Math.cos(t/2)),Dl=(i,t,e,n)=>i*t*(1-e**2)/(1+e*Math.cos(n)),Ul=(i,t)=>{const e=i*Math.cos(t),n=0,r=-i*Math.sin(t);return[e,n,r]},zo=i=>Math.sqrt(i**3),Hm=(i,t,e,n,r,s)=>{const a=Cl(i,t,s),o=Pl(e,a),l=Ll(e,o),c=Dl(r,n,e,l);return Ul(c,l)},Gm=i=>(i.getTime()/864e5+24405875e-1-Je)/365.25,Ho=new Date(1900,0,1),Go=new Date(2100,11,31);let Si=0;const km=new _m;class Vm{constructor(t,e,n,r,s,a){this.camera=t,this.scene=e,this.renderer=n,this.updatables=[],this.timeScale=r,this.currentDate=s,this.timeDirection=a}start(){this.renderer.setAnimationLoop(()=>{this.tick();let t=km.getDelta();Si=Si+t,Si>Om&&(this.renderer.render(this.scene,this.camera),Si=0)})}setTimeDirect(t){t===1?this.timeDirection=1:this.timeDirection=0}stop(){Si=0,this.renderer.setAnimationLoop(null)}tick(){const t=this.timeScale*24*60*60*1e3;this.timeDirection>=1?this.currentDate.setTime(this.currentDate.getTime()+t):this.currentDate.setTime(this.currentDate.getTime()-t),this.currentDateGo&&(this.currentDate=Go);const e=Gm(this.currentDate);for(const n of this.updatables)n.tick(e,this.scene)}}function Wm(){const i=new mm(4210752,.5),t=new pm("white",500,500);return t.position.set(0,0,0),t.castShadow=!0,{ambientLight:i,sunLight:t}}const ko={type:"change"},ga={type:"start"},Il={type:"end"},or=new ua,Vo=new un,Xm=Math.cos(70*Wc.DEG2RAD),se=new L,Me=2*Math.PI,Kt={NONE:-1,ROTATE:0,DOLLY:1,PAN:2,TOUCH_ROTATE:3,TOUCH_PAN:4,TOUCH_DOLLY_PAN:5,TOUCH_DOLLY_ROTATE:6},ps=1e-6;class Ym extends gm{constructor(t,e=null){super(t,e),this.state=Kt.NONE,this.enabled=!0,this.target=new L,this.cursor=new L,this.minDistance=0,this.maxDistance=1/0,this.minZoom=0,this.maxZoom=1/0,this.minTargetRadius=0,this.maxTargetRadius=1/0,this.minPolarAngle=0,this.maxPolarAngle=Math.PI,this.minAzimuthAngle=-1/0,this.maxAzimuthAngle=1/0,this.enableDamping=!1,this.dampingFactor=.05,this.enableZoom=!0,this.zoomSpeed=1,this.enableRotate=!0,this.rotateSpeed=1,this.enablePan=!0,this.panSpeed=1,this.screenSpacePanning=!0,this.keyPanSpeed=7,this.zoomToCursor=!1,this.autoRotate=!1,this.autoRotateSpeed=2,this.keys={LEFT:"ArrowLeft",UP:"ArrowUp",RIGHT:"ArrowRight",BOTTOM:"ArrowDown"},this.mouseButtons={LEFT:ti.ROTATE,MIDDLE:ti.DOLLY,RIGHT:ti.PAN},this.touches={ONE:Jn.ROTATE,TWO:Jn.DOLLY_PAN},this.target0=this.target.clone(),this.position0=this.object.position.clone(),this.zoom0=this.object.zoom,this._domElementKeyEvents=null,this._lastPosition=new L,this._lastQuaternion=new Dn,this._lastTargetPosition=new L,this._quat=new Dn().setFromUnitVectors(t.up,new L(0,1,0)),this._quatInverse=this._quat.clone().invert(),this._spherical=new Uo,this._sphericalDelta=new Uo,this._scale=1,this._panOffset=new L,this._rotateStart=new wt,this._rotateEnd=new wt,this._rotateDelta=new wt,this._panStart=new wt,this._panEnd=new wt,this._panDelta=new wt,this._dollyStart=new wt,this._dollyEnd=new wt,this._dollyDelta=new wt,this._dollyDirection=new L,this._mouse=new wt,this._performCursorZoom=!1,this._pointers=[],this._pointerPositions={},this._controlActive=!1,this._onPointerMove=Km.bind(this),this._onPointerDown=qm.bind(this),this._onPointerUp=Zm.bind(this),this._onContextMenu=n_.bind(this),this._onMouseWheel=Jm.bind(this),this._onKeyDown=Qm.bind(this),this._onTouchStart=t_.bind(this),this._onTouchMove=e_.bind(this),this._onMouseDown=jm.bind(this),this._onMouseMove=$m.bind(this),this._interceptControlDown=i_.bind(this),this._interceptControlUp=r_.bind(this),this.domElement!==null&&this.connect(),this.update()}connect(){this.domElement.addEventListener("pointerdown",this._onPointerDown),this.domElement.addEventListener("pointercancel",this._onPointerUp),this.domElement.addEventListener("contextmenu",this._onContextMenu),this.domElement.addEventListener("wheel",this._onMouseWheel,{passive:!1}),this.domElement.getRootNode().addEventListener("keydown",this._interceptControlDown,{passive:!0,capture:!0}),this.domElement.style.touchAction="none"}disconnect(){this.domElement.removeEventListener("pointerdown",this._onPointerDown),this.domElement.removeEventListener("pointermove",this._onPointerMove),this.domElement.removeEventListener("pointerup",this._onPointerUp),this.domElement.removeEventListener("pointercancel",this._onPointerUp),this.domElement.removeEventListener("wheel",this._onMouseWheel),this.domElement.removeEventListener("contextmenu",this._onContextMenu),this.stopListenToKeyEvents(),this.domElement.getRootNode().removeEventListener("keydown",this._interceptControlDown,{capture:!0}),this.domElement.style.touchAction="auto"}dispose(){this.disconnect()}getPolarAngle(){return this._spherical.phi}getAzimuthalAngle(){return this._spherical.theta}getDistance(){return this.object.position.distanceTo(this.target)}listenToKeyEvents(t){t.addEventListener("keydown",this._onKeyDown),this._domElementKeyEvents=t}stopListenToKeyEvents(){this._domElementKeyEvents!==null&&(this._domElementKeyEvents.removeEventListener("keydown",this._onKeyDown),this._domElementKeyEvents=null)}saveState(){this.target0.copy(this.target),this.position0.copy(this.object.position),this.zoom0=this.object.zoom}reset(){this.target.copy(this.target0),this.object.position.copy(this.position0),this.object.zoom=this.zoom0,this.object.updateProjectionMatrix(),this.dispatchEvent(ko),this.update(),this.state=Kt.NONE}update(t=null){const e=this.object.position;se.copy(e).sub(this.target),se.applyQuaternion(this._quat),this._spherical.setFromVector3(se),this.autoRotate&&this.state===Kt.NONE&&this._rotateLeft(this._getAutoRotationAngle(t)),this.enableDamping?(this._spherical.theta+=this._sphericalDelta.theta*this.dampingFactor,this._spherical.phi+=this._sphericalDelta.phi*this.dampingFactor):(this._spherical.theta+=this._sphericalDelta.theta,this._spherical.phi+=this._sphericalDelta.phi);let n=this.minAzimuthAngle,r=this.maxAzimuthAngle;isFinite(n)&&isFinite(r)&&(n<-Math.PI?n+=Me:n>Math.PI&&(n-=Me),r<-Math.PI?r+=Me:r>Math.PI&&(r-=Me),n<=r?this._spherical.theta=Math.max(n,Math.min(r,this._spherical.theta)):this._spherical.theta=this._spherical.theta>(n+r)/2?Math.max(n,this._spherical.theta):Math.min(r,this._spherical.theta)),this._spherical.phi=Math.max(this.minPolarAngle,Math.min(this.maxPolarAngle,this._spherical.phi)),this._spherical.makeSafe(),this.enableDamping===!0?this.target.addScaledVector(this._panOffset,this.dampingFactor):this.target.add(this._panOffset),this.target.sub(this.cursor),this.target.clampLength(this.minTargetRadius,this.maxTargetRadius),this.target.add(this.cursor);let s=!1;if(this.zoomToCursor&&this._performCursorZoom||this.object.isOrthographicCamera)this._spherical.radius=this._clampDistance(this._spherical.radius);else{const a=this._spherical.radius;this._spherical.radius=this._clampDistance(this._spherical.radius*this._scale),s=a!=this._spherical.radius}if(se.setFromSpherical(this._spherical),se.applyQuaternion(this._quatInverse),e.copy(this.target).add(se),this.object.lookAt(this.target),this.enableDamping===!0?(this._sphericalDelta.theta*=1-this.dampingFactor,this._sphericalDelta.phi*=1-this.dampingFactor,this._panOffset.multiplyScalar(1-this.dampingFactor)):(this._sphericalDelta.set(0,0,0),this._panOffset.set(0,0,0)),this.zoomToCursor&&this._performCursorZoom){let a=null;if(this.object.isPerspectiveCamera){const o=se.length();a=this._clampDistance(o*this._scale);const l=o-a;this.object.position.addScaledVector(this._dollyDirection,l),this.object.updateMatrixWorld(),s=!!l}else if(this.object.isOrthographicCamera){const o=new L(this._mouse.x,this._mouse.y,0);o.unproject(this.object);const l=this.object.zoom;this.object.zoom=Math.max(this.minZoom,Math.min(this.maxZoom,this.object.zoom/this._scale)),this.object.updateProjectionMatrix(),s=l!==this.object.zoom;const c=new L(this._mouse.x,this._mouse.y,0);c.unproject(this.object),this.object.position.sub(c).add(o),this.object.updateMatrixWorld(),a=se.length()}else console.warn("WARNING: OrbitControls.js encountered an unknown camera type - zoom to cursor disabled."),this.zoomToCursor=!1;a!==null&&(this.screenSpacePanning?this.target.set(0,0,-1).transformDirection(this.object.matrix).multiplyScalar(a).add(this.object.position):(or.origin.copy(this.object.position),or.direction.set(0,0,-1).transformDirection(this.object.matrix),Math.abs(this.object.up.dot(or.direction))ps||8*(1-this._lastQuaternion.dot(this.object.quaternion))>ps||this._lastTargetPosition.distanceToSquared(this.target)>ps?(this.dispatchEvent(ko),this._lastPosition.copy(this.object.position),this._lastQuaternion.copy(this.object.quaternion),this._lastTargetPosition.copy(this.target),!0):!1}_getAutoRotationAngle(t){return t!==null?Me/60*this.autoRotateSpeed*t:Me/60/60*this.autoRotateSpeed}_getZoomScale(t){const e=Math.abs(t*.01);return Math.pow(.95,this.zoomSpeed*e)}_rotateLeft(t){this._sphericalDelta.theta-=t}_rotateUp(t){this._sphericalDelta.phi-=t}_panLeft(t,e){se.setFromMatrixColumn(e,0),se.multiplyScalar(-t),this._panOffset.add(se)}_panUp(t,e){this.screenSpacePanning===!0?se.setFromMatrixColumn(e,1):(se.setFromMatrixColumn(e,0),se.crossVectors(this.object.up,se)),se.multiplyScalar(t),this._panOffset.add(se)}_pan(t,e){const n=this.domElement;if(this.object.isPerspectiveCamera){const r=this.object.position;se.copy(r).sub(this.target);let s=se.length();s*=Math.tan(this.object.fov/2*Math.PI/180),this._panLeft(2*t*s/n.clientHeight,this.object.matrix),this._panUp(2*e*s/n.clientHeight,this.object.matrix)}else this.object.isOrthographicCamera?(this._panLeft(t*(this.object.right-this.object.left)/this.object.zoom/n.clientWidth,this.object.matrix),this._panUp(e*(this.object.top-this.object.bottom)/this.object.zoom/n.clientHeight,this.object.matrix)):(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - pan disabled."),this.enablePan=!1)}_dollyOut(t){this.object.isPerspectiveCamera||this.object.isOrthographicCamera?this._scale/=t:(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled."),this.enableZoom=!1)}_dollyIn(t){this.object.isPerspectiveCamera||this.object.isOrthographicCamera?this._scale*=t:(console.warn("WARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled."),this.enableZoom=!1)}_updateZoomParameters(t,e){if(!this.zoomToCursor)return;this._performCursorZoom=!0;const n=this.domElement.getBoundingClientRect(),r=t-n.left,s=e-n.top,a=n.width,o=n.height;this._mouse.x=r/a*2-1,this._mouse.y=-(s/o)*2+1,this._dollyDirection.set(this._mouse.x,this._mouse.y,1).unproject(this.object).sub(this.object.position).normalize()}_clampDistance(t){return Math.max(this.minDistance,Math.min(this.maxDistance,t))}_handleMouseDownRotate(t){this._rotateStart.set(t.clientX,t.clientY)}_handleMouseDownDolly(t){this._updateZoomParameters(t.clientX,t.clientX),this._dollyStart.set(t.clientX,t.clientY)}_handleMouseDownPan(t){this._panStart.set(t.clientX,t.clientY)}_handleMouseMoveRotate(t){this._rotateEnd.set(t.clientX,t.clientY),this._rotateDelta.subVectors(this._rotateEnd,this._rotateStart).multiplyScalar(this.rotateSpeed);const e=this.domElement;this._rotateLeft(Me*this._rotateDelta.x/e.clientHeight),this._rotateUp(Me*this._rotateDelta.y/e.clientHeight),this._rotateStart.copy(this._rotateEnd),this.update()}_handleMouseMoveDolly(t){this._dollyEnd.set(t.clientX,t.clientY),this._dollyDelta.subVectors(this._dollyEnd,this._dollyStart),this._dollyDelta.y>0?this._dollyOut(this._getZoomScale(this._dollyDelta.y)):this._dollyDelta.y<0&&this._dollyIn(this._getZoomScale(this._dollyDelta.y)),this._dollyStart.copy(this._dollyEnd),this.update()}_handleMouseMovePan(t){this._panEnd.set(t.clientX,t.clientY),this._panDelta.subVectors(this._panEnd,this._panStart).multiplyScalar(this.panSpeed),this._pan(this._panDelta.x,this._panDelta.y),this._panStart.copy(this._panEnd),this.update()}_handleMouseWheel(t){this._updateZoomParameters(t.clientX,t.clientY),t.deltaY<0?this._dollyIn(this._getZoomScale(t.deltaY)):t.deltaY>0&&this._dollyOut(this._getZoomScale(t.deltaY)),this.update()}_handleKeyDown(t){let e=!1;switch(t.code){case this.keys.UP:t.ctrlKey||t.metaKey||t.shiftKey?this._rotateUp(Me*this.rotateSpeed/this.domElement.clientHeight):this._pan(0,this.keyPanSpeed),e=!0;break;case this.keys.BOTTOM:t.ctrlKey||t.metaKey||t.shiftKey?this._rotateUp(-Me*this.rotateSpeed/this.domElement.clientHeight):this._pan(0,-this.keyPanSpeed),e=!0;break;case this.keys.LEFT:t.ctrlKey||t.metaKey||t.shiftKey?this._rotateLeft(Me*this.rotateSpeed/this.domElement.clientHeight):this._pan(this.keyPanSpeed,0),e=!0;break;case this.keys.RIGHT:t.ctrlKey||t.metaKey||t.shiftKey?this._rotateLeft(-Me*this.rotateSpeed/this.domElement.clientHeight):this._pan(-this.keyPanSpeed,0),e=!0;break}e&&(t.preventDefault(),this.update())}_handleTouchStartRotate(t){if(this._pointers.length===1)this._rotateStart.set(t.pageX,t.pageY);else{const e=this._getSecondPointerPosition(t),n=.5*(t.pageX+e.x),r=.5*(t.pageY+e.y);this._rotateStart.set(n,r)}}_handleTouchStartPan(t){if(this._pointers.length===1)this._panStart.set(t.pageX,t.pageY);else{const e=this._getSecondPointerPosition(t),n=.5*(t.pageX+e.x),r=.5*(t.pageY+e.y);this._panStart.set(n,r)}}_handleTouchStartDolly(t){const e=this._getSecondPointerPosition(t),n=t.pageX-e.x,r=t.pageY-e.y,s=Math.sqrt(n*n+r*r);this._dollyStart.set(0,s)}_handleTouchStartDollyPan(t){this.enableZoom&&this._handleTouchStartDolly(t),this.enablePan&&this._handleTouchStartPan(t)}_handleTouchStartDollyRotate(t){this.enableZoom&&this._handleTouchStartDolly(t),this.enableRotate&&this._handleTouchStartRotate(t)}_handleTouchMoveRotate(t){if(this._pointers.length==1)this._rotateEnd.set(t.pageX,t.pageY);else{const n=this._getSecondPointerPosition(t),r=.5*(t.pageX+n.x),s=.5*(t.pageY+n.y);this._rotateEnd.set(r,s)}this._rotateDelta.subVectors(this._rotateEnd,this._rotateStart).multiplyScalar(this.rotateSpeed);const e=this.domElement;this._rotateLeft(Me*this._rotateDelta.x/e.clientHeight),this._rotateUp(Me*this._rotateDelta.y/e.clientHeight),this._rotateStart.copy(this._rotateEnd)}_handleTouchMovePan(t){if(this._pointers.length===1)this._panEnd.set(t.pageX,t.pageY);else{const e=this._getSecondPointerPosition(t),n=.5*(t.pageX+e.x),r=.5*(t.pageY+e.y);this._panEnd.set(n,r)}this._panDelta.subVectors(this._panEnd,this._panStart).multiplyScalar(this.panSpeed),this._pan(this._panDelta.x,this._panDelta.y),this._panStart.copy(this._panEnd)}_handleTouchMoveDolly(t){const e=this._getSecondPointerPosition(t),n=t.pageX-e.x,r=t.pageY-e.y,s=Math.sqrt(n*n+r*r);this._dollyEnd.set(0,s),this._dollyDelta.set(0,Math.pow(this._dollyEnd.y/this._dollyStart.y,this.zoomSpeed)),this._dollyOut(this._dollyDelta.y),this._dollyStart.copy(this._dollyEnd);const a=(t.pageX+e.x)*.5,o=(t.pageY+e.y)*.5;this._updateZoomParameters(a,o)}_handleTouchMoveDollyPan(t){this.enableZoom&&this._handleTouchMoveDolly(t),this.enablePan&&this._handleTouchMovePan(t)}_handleTouchMoveDollyRotate(t){this.enableZoom&&this._handleTouchMoveDolly(t),this.enableRotate&&this._handleTouchMoveRotate(t)}_addPointer(t){this._pointers.push(t.pointerId)}_removePointer(t){delete this._pointerPositions[t.pointerId];for(let e=0;ee.update(),e}const Xo=(i,t,e)=>{t.aspect=i.clientWidth/i.clientHeight,t.updateProjectionMatrix(),e.setSize(i.clientWidth,i.clientHeight),e.setPixelRatio(window.devicePixelRatio)};class a_{constructor(t,e,n){Xo(t,e,n),window.addEventListener("resize",()=>{Xo(t,e,n),this.onResize()})}onResize(){}}function va(i,t="planets"){const n=new wl().load(i);let r;return t=="background"?r=new us({map:n,side:_e,metalness:0,emissive:4210752,emissiveIntensity:1,emissiveMap:n}):t=="orbit"?r=new us({map:n,roughness:.6,metalness:0}):r=new us({map:n,roughness:0,metalness:0,emissive:16776960,emissiveIntensity:1,emissiveMap:n}),r}function o_(){const i=new Ii(1200,60,40),t=va(Cr.MILKY_WAY,"background");return new Re(i,t)}function l_(){const i=new Ii(Bm.radius*yr,32,32),t=va(Cr.SUN),e=new Re(i,t);return e.castShadow=!1,e.receiveShadow=!0,e}function Yo(i){const t=new ze().setFromPoints(i.trace),e=new bl({color:i.color,transparent:!0,opacity:i.category==="small body"?.3:1});return new lm(t,e)}function c_(i){const t=new Ii(i.radius*yr,32,32),e=va(Cr[i.name.toUpperCase()],"orbit"),n=new fe,r=new Re(t,e);r.castShadow=!1,r.receiveShadow=!0,n.add(r),i.name.toUpperCase()==="SATURN"&&h_(i.radius,1.24,2.27,n),i.T=zo(i.a),i.trace=[],i.traceLine=Yo(i);const s=Cl(i.T,i.ma,0),a=Pl(i.e,s),o=Ll(i.e,a),l=Dl(Bo,i.a,i.e,o),[c,u,f]=Ul(l,o),p=new L(c,u,f);return n.position.copy(p),n.tick=(m,_)=>{const[x,d,h]=Hm(zo(i.a),i.ma,i.e,i.a,Bo,m),T=new L(x,d,h);n.position.copy(T),i.trace.push(T),i.trace.length>=Nm&&i.trace.shift(),_.remove(i.traceLine),i.traceLine=Yo(i),_.add(i.traceLine)},n}const h_=(i,t,e,n)=>{const r=i*t*yr,s=i*e*yr,a=new ma(r,s,64),o=a.attributes.position,l=new L;for(let m=0;m{o.container=c_(o),jn.updatables.push(o.container),hn.add(o.container)}),console.log(Ti),hn.add(a),hn.add(n),hn.add(r),new a_(t,Ei,yi)}setTimeDirect(t=1){jn.setTimeDirect(t),Ti.forEach(e=>{e.trace=[]})}clearOrbitingTrace(){Ti.forEach(t=>{t.trace=[]})}render(){yi.render(hn,Ei)}start(){jn.start()}stop(){jn.stop()}}const __={id:"timeControl"},g_={__name:"SmorreryScence",setup(i){const t=fi(),e=fi("mdi-pause"),n=fi(!0),r=fi("mdi-skip-backward"),s=fi(!0);let a;const o=()=>{n.value=!n.value,e.value=n.value?"mdi-pause":"mdi-play",n.value?a.start():a.stop()},l=()=>{s.value=!s.value,r.value=s.value?"mdi-skip-backward":"mdi-skip-forward",s.value?a.setTimeDirect(1):a.setTimeDirect(0),a.stop(),a.start()};return zl(()=>{const c=document.querySelector("#target");a=new m_(c),n.value&&a.start()}),(c,u)=>(qo(),Hl("div",{id:"target",ref_key:"target",ref:t},[u[0]||(u[0]=Ir("div",{id:"info"},[Ra(" Interactive 3D Orrery"),Ir("br"),Ra("Drag to rotate, scroll to zoom ")],-1)),Ir("div",__,[Ca(wa,{class:"video-btn",icon:e.value,onClick:o},null,8,["icon"]),Ca(wa,{class:"video-btn",icon:r.value,onClick:l},null,8,["icon"])])],512))}},M_={__name:"index",setup(i){return(t,e)=>{const n=g_;return qo(),Gl(n)}}};export{M_ as default}; diff --git a/assets/index-CKSWw2Ya.css b/assets/index-CKSWw2Ya.css new file mode 100644 index 0000000..a0bac69 --- /dev/null +++ b/assets/index-CKSWw2Ya.css @@ -0,0 +1 @@ +#target #info{position:absolute;top:5%;width:100%;text-align:center;color:#fff;background-color:transparent;z-index:1;font-family:monospace}#target #timeControl{position:absolute;left:50%;bottom:10%;transform:translate(-50%);background:#cd8c8cb3;padding:10px;border-radius:5px;display:flex;align-items:center;color:#fff;font-family:monospace;z-index:1}#target #timeControl .video-btn{margin-left:10px} diff --git a/assets/index-DVsZ779A.js b/assets/index-DA-NTYk_.js similarity index 98% rename from assets/index-DVsZ779A.js rename to assets/index-DA-NTYk_.js index 23c3695..a5db1d7 100644 --- a/assets/index-DVsZ779A.js +++ b/assets/index-DA-NTYk_.js @@ -1,4 +1,4 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/default-UyMn9SWA.js","assets/default-y6g5o1_w.css"])))=>i.map(i=>d[i]); +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/default-B2aGEmKt.js","assets/VBtn-nTHrG9ot.js","assets/VBtn-Yx2iuiGX.css","assets/default-AzRlkVpy.css","assets/index-CFgTnFr_.js","assets/index-CKSWw2Ya.css"])))=>i.map(i=>d[i]); (function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))r(s);new MutationObserver(s=>{for(const o of s)if(o.type==="childList")for(const i of o.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&r(i)}).observe(document,{childList:!0,subtree:!0});function n(s){const o={};return s.integrity&&(o.integrity=s.integrity),s.referrerPolicy&&(o.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?o.credentials="include":s.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function r(s){if(s.ep)return;s.ep=!0;const o=n(s);fetch(s.href,o)}})();/** * @vue/shared v3.5.10 * (c) 2018-present Yuxi (Evan) You and Vue contributors @@ -27,4 +27,4 @@ Expected #hex, #hexa, rgb(), rgba(), hsl(), hsla(), object or number`)}function * vue-router v4.4.5 * (c) 2024 Eduardo San Martin Morote * @license MIT - */const Wt=typeof document<"u";function na(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function Zd(e){return e.__esModule||e[Symbol.toStringTag]==="Module"||e.default&&na(e.default)}const X=Object.assign;function kr(e,t){const n={};for(const r in t){const s=t[r];n[r]=We(s)?s.map(e):e(s)}return n}const hn=()=>{},We=Array.isArray,ra=/#/g,Qd=/&/g,Jd=/\//g,Xd=/=/g,eh=/\?/g,sa=/\+/g,th=/%5B/g,nh=/%5D/g,oa=/%5E/g,rh=/%60/g,ia=/%7B/g,sh=/%7C/g,la=/%7D/g,oh=/%20/g;function Ds(e){return encodeURI(""+e).replace(sh,"|").replace(th,"[").replace(nh,"]")}function ih(e){return Ds(e).replace(ia,"{").replace(la,"}").replace(oa,"^")}function Xr(e){return Ds(e).replace(sa,"%2B").replace(oh,"+").replace(ra,"%23").replace(Qd,"%26").replace(rh,"`").replace(ia,"{").replace(la,"}").replace(oa,"^")}function lh(e){return Xr(e).replace(Xd,"%3D")}function ah(e){return Ds(e).replace(ra,"%23").replace(eh,"%3F")}function ch(e){return e==null?"":ah(e).replace(Jd,"%2F")}function Sn(e){try{return decodeURIComponent(""+e)}catch{}return""+e}const uh=/\/$/,fh=e=>e.replace(uh,"");function $r(e,t,n="/"){let r,s={},o="",i="";const l=t.indexOf("#");let a=t.indexOf("?");return l=0&&(a=-1),a>-1&&(r=t.slice(0,a),o=t.slice(a+1,l>-1?l:t.length),s=e(o)),l>-1&&(r=r||t.slice(0,l),i=t.slice(l,t.length)),r=mh(r??t,n),{fullPath:r+(o&&"?")+o+i,path:r,query:s,hash:Sn(i)}}function dh(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function zo(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function hh(e,t,n){const r=t.matched.length-1,s=n.matched.length-1;return r>-1&&r===s&&Xt(t.matched[r],n.matched[s])&&aa(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function Xt(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function aa(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!ph(e[n],t[n]))return!1;return!0}function ph(e,t){return We(e)?qo(e,t):We(t)?qo(t,e):e===t}function qo(e,t){return We(t)?e.length===t.length&&e.every((n,r)=>n===t[r]):e.length===1&&e[0]===t}function mh(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),r=e.split("/"),s=r[r.length-1];(s===".."||s===".")&&r.push("");let o=n.length-1,i,l;for(i=0;i1&&o--;else break;return n.slice(0,o).join("/")+"/"+r.slice(i).join("/")}const ft={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var En;(function(e){e.pop="pop",e.push="push"})(En||(En={}));var pn;(function(e){e.back="back",e.forward="forward",e.unknown=""})(pn||(pn={}));function gh(e){if(!e)if(Wt){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),fh(e)}const yh=/^[^#]+#/;function vh(e,t){return e.replace(yh,"#")+t}function bh(e,t){const n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}const vr=()=>({left:window.scrollX,top:window.scrollY});function _h(e){let t;if("el"in e){const n=e.el,r=typeof n=="string"&&n.startsWith("#"),s=typeof n=="string"?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!s)return;t=bh(s,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.scrollX,t.top!=null?t.top:window.scrollY)}function Zo(e,t){return(history.state?history.state.position-t:-1)+e}const es=new Map;function wh(e,t){es.set(e,t)}function Sh(e){const t=es.get(e);return es.delete(e),t}let Eh=()=>location.protocol+"//"+location.host;function ca(e,t){const{pathname:n,search:r,hash:s}=t,o=e.indexOf("#");if(o>-1){let l=s.includes(e.slice(o))?e.slice(o).length:1,a=s.slice(l);return a[0]!=="/"&&(a="/"+a),zo(a,"")}return zo(n,e)+r+s}function Ch(e,t,n,r){let s=[],o=[],i=null;const l=({state:h})=>{const m=ca(e,location),_=n.value,y=t.value;let T=0;if(h){if(n.value=m,t.value=h,i&&i===_){i=null;return}T=y?h.position-y.position:0}else r(m);s.forEach(M=>{M(n.value,_,{delta:T,type:En.pop,direction:T?T>0?pn.forward:pn.back:pn.unknown})})};function a(){i=n.value}function f(h){s.push(h);const m=()=>{const _=s.indexOf(h);_>-1&&s.splice(_,1)};return o.push(m),m}function c(){const{history:h}=window;h.state&&h.replaceState(X({},h.state,{scroll:vr()}),"")}function u(){for(const h of o)h();o=[],window.removeEventListener("popstate",l),window.removeEventListener("beforeunload",c)}return window.addEventListener("popstate",l),window.addEventListener("beforeunload",c,{passive:!0}),{pauseListeners:a,listen:f,destroy:u}}function Qo(e,t,n,r=!1,s=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:s?vr():null}}function xh(e){const{history:t,location:n}=window,r={value:ca(e,n)},s={value:t.state};s.value||o(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function o(a,f,c){const u=e.indexOf("#"),h=u>-1?(n.host&&document.querySelector("base")?e:e.slice(u))+a:Eh()+e+a;try{t[c?"replaceState":"pushState"](f,"",h),s.value=f}catch(m){console.error(m),n[c?"replace":"assign"](h)}}function i(a,f){const c=X({},t.state,Qo(s.value.back,a,s.value.forward,!0),f,{position:s.value.position});o(a,c,!0),r.value=a}function l(a,f){const c=X({},s.value,t.state,{forward:a,scroll:vr()});o(c.current,c,!0);const u=X({},Qo(r.value,a,null),{position:c.position+1},f);o(a,u,!1),r.value=a}return{location:r,state:s,push:l,replace:i}}function Th(e){e=gh(e);const t=xh(e),n=Ch(e,t.state,t.location,t.replace);function r(o,i=!0){i||n.pauseListeners(),history.go(o)}const s=X({location:"",base:e,go:r,createHref:vh.bind(null,e)},t,n);return Object.defineProperty(s,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(s,"state",{enumerable:!0,get:()=>t.state.value}),s}function Ah(e){return typeof e=="string"||e&&typeof e=="object"}function ua(e){return typeof e=="string"||typeof e=="symbol"}const fa=Symbol("");var Jo;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(Jo||(Jo={}));function en(e,t){return X(new Error,{type:e,[fa]:!0},t)}function tt(e,t){return e instanceof Error&&fa in e&&(t==null||!!(e.type&t))}const Xo="[^/]+?",Ph={sensitive:!1,strict:!1,start:!0,end:!0},Oh=/[.+*?^${}()[\]/\\]/g;function Rh(e,t){const n=X({},Ph,t),r=[];let s=n.start?"^":"";const o=[];for(const f of e){const c=f.length?[]:[90];n.strict&&!f.length&&(s+="/");for(let u=0;ut.length?t.length===1&&t[0]===80?1:-1:0}function da(e,t){let n=0;const r=e.score,s=t.score;for(;n0&&t[t.length-1]<0}const Mh={type:0,value:""},Fh=/[a-zA-Z0-9_]/;function Ih(e){if(!e)return[[]];if(e==="/")return[[Mh]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(m){throw new Error(`ERR (${n})/"${f}": ${m}`)}let n=0,r=n;const s=[];let o;function i(){o&&s.push(o),o=[]}let l=0,a,f="",c="";function u(){f&&(n===0?o.push({type:0,value:f}):n===1||n===2||n===3?(o.length>1&&(a==="*"||a==="+")&&t(`A repeatable param (${f}) must be alone in its segment. eg: '/:ids+.`),o.push({type:1,value:f,regexp:c,repeatable:a==="*"||a==="+",optional:a==="*"||a==="?"})):t("Invalid state to consume buffer"),f="")}function h(){f+=a}for(;l{i($)}:hn}function i(u){if(ua(u)){const h=r.get(u);h&&(r.delete(u),n.splice(n.indexOf(h),1),h.children.forEach(i),h.alias.forEach(i))}else{const h=n.indexOf(u);h>-1&&(n.splice(h,1),u.record.name&&r.delete(u.record.name),u.children.forEach(i),u.alias.forEach(i))}}function l(){return n}function a(u){const h=Hh(u,n);n.splice(h,0,u),u.record.name&&!ri(u)&&r.set(u.record.name,u)}function f(u,h){let m,_={},y,T;if("name"in u&&u.name){if(m=r.get(u.name),!m)throw en(1,{location:u});T=m.record.name,_=X(ti(h.params,m.keys.filter($=>!$.optional).concat(m.parent?m.parent.keys.filter($=>$.optional):[]).map($=>$.name)),u.params&&ti(u.params,m.keys.map($=>$.name))),y=m.stringify(_)}else if(u.path!=null)y=u.path,m=n.find($=>$.re.test(y)),m&&(_=m.parse(y),T=m.record.name);else{if(m=h.name?r.get(h.name):n.find($=>$.re.test(h.path)),!m)throw en(1,{location:u,currentLocation:h});T=m.record.name,_=X({},h.params,u.params),y=m.stringify(_)}const M=[];let R=m;for(;R;)M.unshift(R.record),R=R.parent;return{name:T,path:y,params:_,matched:M,meta:Nh(M)}}e.forEach(u=>o(u));function c(){n.length=0,r.clear()}return{addRoute:o,resolve:f,removeRoute:i,clearRoutes:c,getRoutes:l,getRecordMatcher:s}}function ti(e,t){const n={};for(const r of t)r in e&&(n[r]=e[r]);return n}function ni(e){const t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:Lh(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function Lh(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const r in e.components)t[r]=typeof n=="object"?n[r]:n;return t}function ri(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Nh(e){return e.reduce((t,n)=>X(t,n.meta),{})}function si(e,t){const n={};for(const r in e)n[r]=r in t?t[r]:e[r];return n}function Hh(e,t){let n=0,r=t.length;for(;n!==r;){const o=n+r>>1;da(e,t[o])<0?r=o:n=o+1}const s=Bh(e);return s&&(r=t.lastIndexOf(s,r-1)),r}function Bh(e){let t=e;for(;t=t.parent;)if(ha(t)&&da(e,t)===0)return t}function ha({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function jh(e){const t={};if(e===""||e==="?")return t;const r=(e[0]==="?"?e.slice(1):e).split("&");for(let s=0;so&&Xr(o)):[r&&Xr(r)]).forEach(o=>{o!==void 0&&(t+=(t.length?"&":"")+n,o!=null&&(t+="="+o))})}return t}function Vh(e){const t={};for(const n in e){const r=e[n];r!==void 0&&(t[n]=We(r)?r.map(s=>s==null?null:""+s):r==null?r:""+r)}return t}const Uh=Symbol(""),ii=Symbol(""),Ms=Symbol(""),pa=Symbol(""),ts=Symbol("");function ln(){let e=[];function t(r){return e.push(r),()=>{const s=e.indexOf(r);s>-1&&e.splice(s,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function gt(e,t,n,r,s,o=i=>i()){const i=r&&(r.enterCallbacks[s]=r.enterCallbacks[s]||[]);return()=>new Promise((l,a)=>{const f=h=>{h===!1?a(en(4,{from:n,to:t})):h instanceof Error?a(h):Ah(h)?a(en(2,{from:t,to:h})):(i&&r.enterCallbacks[s]===i&&typeof h=="function"&&i.push(h),l())},c=o(()=>e.call(r&&r.instances[s],t,n,f));let u=Promise.resolve(c);e.length<3&&(u=u.then(f)),u.catch(h=>a(h))})}function Lr(e,t,n,r,s=o=>o()){const o=[];for(const i of e)for(const l in i.components){let a=i.components[l];if(!(t!=="beforeRouteEnter"&&!i.instances[l]))if(na(a)){const c=(a.__vccOpts||a)[t];c&&o.push(gt(c,n,r,i,l,s))}else{let f=a();o.push(()=>f.then(c=>{if(!c)throw new Error(`Couldn't resolve component "${l}" at "${i.path}"`);const u=Zd(c)?c.default:c;i.mods[l]=c,i.components[l]=u;const m=(u.__vccOpts||u)[t];return m&>(m,n,r,i,l,s)()}))}}return o}function li(e){const t=xe(Ms),n=xe(pa),r=G(()=>{const a=je(e.to);return t.resolve(a)}),s=G(()=>{const{matched:a}=r.value,{length:f}=a,c=a[f-1],u=n.matched;if(!c||!u.length)return-1;const h=u.findIndex(Xt.bind(null,c));if(h>-1)return h;const m=ai(a[f-2]);return f>1&&ai(c)===m&&u[u.length-1].path!==m?u.findIndex(Xt.bind(null,a[f-2])):h}),o=G(()=>s.value>-1&&Gh(n.params,r.value.params)),i=G(()=>s.value>-1&&s.value===n.matched.length-1&&aa(n.params,r.value.params));function l(a={}){return Yh(a)?t[je(e.replace)?"replace":"push"](je(e.to)).catch(hn):Promise.resolve()}return{route:r,href:G(()=>r.value.href),isActive:o,isExactActive:i,navigate:l}}const Wh=ws({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:li,setup(e,{slots:t}){const n=Et(li(e)),{options:r}=xe(Ms),s=G(()=>({[ci(e.activeClass,r.linkActiveClass,"router-link-active")]:n.isActive,[ci(e.exactActiveClass,r.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const o=t.default&&t.default(n);return e.custom?o:pr("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:s.value},o)}}}),Kh=Wh;function Yh(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 Gh(e,t){for(const n in t){const r=t[n],s=e[n];if(typeof r=="string"){if(r!==s)return!1}else if(!We(s)||s.length!==r.length||r.some((o,i)=>o!==s[i]))return!1}return!0}function ai(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const ci=(e,t,n)=>e??t??n,zh=ws({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const r=xe(ts),s=G(()=>e.route||r.value),o=xe(ii,0),i=G(()=>{let f=je(o);const{matched:c}=s.value;let u;for(;(u=c[f])&&!u.components;)f++;return f}),l=G(()=>s.value.matched[i.value]);Mt(ii,G(()=>i.value+1)),Mt(Uh,l),Mt(ts,s);const a=Je();return Qe(()=>[a.value,l.value,e.name],([f,c,u],[h,m,_])=>{c&&(c.instances[u]=f,m&&m!==c&&f&&f===h&&(c.leaveGuards.size||(c.leaveGuards=m.leaveGuards),c.updateGuards.size||(c.updateGuards=m.updateGuards))),f&&c&&(!m||!Xt(c,m)||!h)&&(c.enterCallbacks[u]||[]).forEach(y=>y(f))},{flush:"post"}),()=>{const f=s.value,c=e.name,u=l.value,h=u&&u.components[c];if(!h)return ui(n.default,{Component:h,route:f});const m=u.props[c],_=m?m===!0?f.params:typeof m=="function"?m(f):m:null,T=pr(h,X({},_,t,{onVnodeUnmounted:M=>{M.component.isUnmounted&&(u.instances[c]=null)},ref:a}));return ui(n.default,{Component:T,route:f})||T}}});function ui(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const qh=zh;function Zh(e){const t=$h(e.routes,e),n=e.parseQuery||jh,r=e.stringifyQuery||oi,s=e.history,o=ln(),i=ln(),l=ln(),a=yt(ft);let f=ft;Wt&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const c=kr.bind(null,b=>""+b),u=kr.bind(null,ch),h=kr.bind(null,Sn);function m(b,D){let P,k;return ua(b)?(P=t.getRecordMatcher(b),k=D):k=b,t.addRoute(k,P)}function _(b){const D=t.getRecordMatcher(b);D&&t.removeRoute(D)}function y(){return t.getRoutes().map(b=>b.record)}function T(b){return!!t.getRecordMatcher(b)}function M(b,D){if(D=X({},D||a.value),typeof b=="string"){const p=$r(n,b,D.path),g=t.resolve({path:p.path},D),w=s.createHref(p.fullPath);return X(p,g,{params:h(g.params),hash:Sn(p.hash),redirectedFrom:void 0,href:w})}let P;if(b.path!=null)P=X({},b,{path:$r(n,b.path,D.path).path});else{const p=X({},b.params);for(const g in p)p[g]==null&&delete p[g];P=X({},b,{params:u(p)}),D.params=u(D.params)}const k=t.resolve(P,D),Q=b.hash||"";k.params=c(h(k.params));const ae=dh(r,X({},b,{hash:ih(Q),path:k.path})),d=s.createHref(ae);return X({fullPath:ae,hash:Q,query:r===oi?Vh(b.query):b.query||{}},k,{redirectedFrom:void 0,href:d})}function R(b){return typeof b=="string"?$r(n,b,a.value.path):X({},b)}function $(b,D){if(f!==b)return en(8,{from:D,to:b})}function F(b){return ee(b)}function U(b){return F(X(R(b),{replace:!0}))}function ne(b){const D=b.matched[b.matched.length-1];if(D&&D.redirect){const{redirect:P}=D;let k=typeof P=="function"?P(b):P;return typeof k=="string"&&(k=k.includes("?")||k.includes("#")?k=R(k):{path:k},k.params={}),X({query:b.query,hash:b.hash,params:k.path!=null?{}:b.params},k)}}function ee(b,D){const P=f=M(b),k=a.value,Q=b.state,ae=b.force,d=b.replace===!0,p=ne(P);if(p)return ee(X(R(p),{state:typeof p=="object"?X({},Q,p.state):Q,force:ae,replace:d}),D||P);const g=P;g.redirectedFrom=D;let w;return!ae&&hh(r,k,P)&&(w=en(16,{to:g,from:k}),Ke(k,k,!0,!1)),(w?Promise.resolve(w):Y(g,k)).catch(v=>tt(v)?tt(v,2)?v:at(v):q(v,g,k)).then(v=>{if(v){if(tt(v,2))return ee(X({replace:d},R(v.to),{state:typeof v.to=="object"?X({},Q,v.to.state):Q,force:ae}),D||g)}else v=I(g,k,!0,d,Q);return se(g,k,v),v})}function ge(b,D){const P=$(b,D);return P?Promise.reject(P):Promise.resolve()}function V(b){const D=Nt.values().next().value;return D&&typeof D.runWithContext=="function"?D.runWithContext(b):b()}function Y(b,D){let P;const[k,Q,ae]=Qh(b,D);P=Lr(k.reverse(),"beforeRouteLeave",b,D);for(const p of k)p.leaveGuards.forEach(g=>{P.push(gt(g,b,D))});const d=ge.bind(null,b,D);return P.push(d),Me(P).then(()=>{P=[];for(const p of o.list())P.push(gt(p,b,D));return P.push(d),Me(P)}).then(()=>{P=Lr(Q,"beforeRouteUpdate",b,D);for(const p of Q)p.updateGuards.forEach(g=>{P.push(gt(g,b,D))});return P.push(d),Me(P)}).then(()=>{P=[];for(const p of ae)if(p.beforeEnter)if(We(p.beforeEnter))for(const g of p.beforeEnter)P.push(gt(g,b,D));else P.push(gt(p.beforeEnter,b,D));return P.push(d),Me(P)}).then(()=>(b.matched.forEach(p=>p.enterCallbacks={}),P=Lr(ae,"beforeRouteEnter",b,D,V),P.push(d),Me(P))).then(()=>{P=[];for(const p of i.list())P.push(gt(p,b,D));return P.push(d),Me(P)}).catch(p=>tt(p,8)?p:Promise.reject(p))}function se(b,D,P){l.list().forEach(k=>V(()=>k(b,D,P)))}function I(b,D,P,k,Q){const ae=$(b,D);if(ae)return ae;const d=D===ft,p=Wt?history.state:{};P&&(k||d?s.replace(b.fullPath,X({scroll:d&&p&&p.scroll},Q)):s.push(b.fullPath,Q)),a.value=b,Ke(b,D,P,d),at()}let z;function he(){z||(z=s.listen((b,D,P)=>{if(!Pn.listening)return;const k=M(b),Q=ne(k);if(Q){ee(X(Q,{replace:!0}),k).catch(hn);return}f=k;const ae=a.value;Wt&&wh(Zo(ae.fullPath,P.delta),vr()),Y(k,ae).catch(d=>tt(d,12)?d:tt(d,2)?(ee(d.to,k).then(p=>{tt(p,20)&&!P.delta&&P.type===En.pop&&s.go(-1,!1)}).catch(hn),Promise.reject()):(P.delta&&s.go(-P.delta,!1),q(d,k,ae))).then(d=>{d=d||I(k,ae,!1),d&&(P.delta&&!tt(d,8)?s.go(-P.delta,!1):P.type===En.pop&&tt(d,20)&&s.go(-1,!1)),se(k,ae,d)}).catch(hn)}))}let He=ln(),fe=ln(),te;function q(b,D,P){at(b);const k=fe.list();return k.length?k.forEach(Q=>Q(b,D,P)):console.error(b),Promise.reject(b)}function Xe(){return te&&a.value!==ft?Promise.resolve():new Promise((b,D)=>{He.add([b,D])})}function at(b){return te||(te=!b,he(),He.list().forEach(([D,P])=>b?P(b):D()),He.reset()),b}function Ke(b,D,P,k){const{scrollBehavior:Q}=e;if(!Wt||!Q)return Promise.resolve();const ae=!P&&Sh(Zo(b.fullPath,0))||(k||!P)&&history.state&&history.state.scroll||null;return vs().then(()=>Q(b,D,ae)).then(d=>d&&_h(d)).catch(d=>q(d,b,D))}const Ee=b=>s.go(b);let Lt;const Nt=new Set,Pn={currentRoute:a,listening:!0,addRoute:m,removeRoute:_,clearRoutes:t.clearRoutes,hasRoute:T,getRoutes:y,resolve:M,options:e,push:F,replace:U,go:Ee,back:()=>Ee(-1),forward:()=>Ee(1),beforeEach:o.add,beforeResolve:i.add,afterEach:l.add,onError:fe.add,isReady:Xe,install(b){const D=this;b.component("RouterLink",Kh),b.component("RouterView",qh),b.config.globalProperties.$router=D,Object.defineProperty(b.config.globalProperties,"$route",{enumerable:!0,get:()=>je(a)}),Wt&&!Lt&&a.value===ft&&(Lt=!0,F(s.location).catch(Q=>{}));const P={};for(const Q in ft)Object.defineProperty(P,Q,{get:()=>a.value[Q],enumerable:!0});b.provide(Ms,D),b.provide(pa,Li(P)),b.provide(ts,a);const k=b.unmount;Nt.add(b),b.unmount=function(){Nt.delete(b),Nt.size<1&&(f=ft,z&&z(),z=null,a.value=ft,Lt=!1,te=!1),k()}}};function Me(b){return b.reduce((D,P)=>D.then(()=>V(P)),Promise.resolve())}return Pn}function Qh(e,t){const n=[],r=[],s=[],o=Math.max(t.matched.length,e.matched.length);for(let i=0;iXt(f,l))?r.push(l):n.push(l));const a=e.matched[i];a&&(t.matched.find(f=>Xt(f,a))||s.push(a))}return[n,r,s]}function Jh(e){const{extendRoutes:t,routes:n}=e;return t&&console.warn('"extendRoutes()" is deprecated, please modify the routes directly. See https://uvr.esm.is/guide/extending-routes.html#extending-routes-at-runtime for an alternative.'),Zh(Object.assign(e,{routes:typeof t=="function"&&t(n)||n}))}const Xh="modulepreload",ep=function(e){return"/smorrery-webapp/"+e},fi={},ma=function(t,n,r){let s=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const i=document.querySelector("meta[property=csp-nonce]"),l=(i==null?void 0:i.nonce)||(i==null?void 0:i.getAttribute("nonce"));s=Promise.allSettled(n.map(a=>{if(a=ep(a),a in fi)return;fi[a]=!0;const f=a.endsWith(".css"),c=f?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${a}"]${c}`))return;const u=document.createElement("link");if(u.rel=f?"stylesheet":Xh,f||(u.as="script"),u.crossOrigin="",u.href=a,l&&u.setAttribute("nonce",l),document.head.appendChild(u),f)return new Promise((h,m)=>{u.addEventListener("load",h),u.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${a}`)))})}))}function o(i){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=i,window.dispatchEvent(l),!l.defaultPrevented)throw i}return s.then(i=>{for(const l of i||[])l.status==="rejected"&&o(l.reason);return t().catch(o)})},tp=e=>{const t={};Object.entries(Object.assign({"/src/layouts/default.vue":()=>ma(()=>import("./default-UyMn9SWA.js"),__vite__mapDeps([0,1]))})).forEach(([s,o])=>{let i=s.replace("/src/layouts/","").replace(".vue","");t[i]=o});function r(s,o=!0){return s.map(i=>{var l,a,f,c,u,h;if(((l=i.children)==null?void 0:l.length)>0&&(i.children=r(i.children,!1)),o){if(!i.component&&((a=i.children)==null?void 0:a.find(_=>{var y;return(_.path===""||_.path==="/")&&((y=_.meta)==null?void 0:y.isLayout)})))return i;if(((f=i.meta)==null?void 0:f.layout)!==!1)return{path:i.path,component:t[((c=i.meta)==null?void 0:c.layout)||"default"],children:i.path==="/"?[i]:[{...i,path:""}],meta:{isLayout:!0}}}return(u=i.meta)!=null&&u.layout?{path:i.path,component:t[(h=i.meta)==null?void 0:h.layout],children:[{...i,path:""}],meta:{isLayout:!0}}:i})}return r(e)},np=[{path:"/",name:"/",component:()=>ma(()=>import("./index-CdApKlwa.js"),[])}],Fs=Jh({history:Th("/smorrery-webapp"),routes:tp(np)});Fs.onError((e,t)=>{var n,r;(r=(n=e==null?void 0:e.message)==null?void 0:n.includes)!=null&&r.call(n,"Failed to fetch dynamically imported module")?localStorage.getItem("vuetify:dynamic-reload")?console.error("Dynamic import error, reloading page did not fix it",e):(console.log("Reloading page to fix dynamic import error"),localStorage.setItem("vuetify:dynamic-reload","true"),location.assign(t.fullPath)):console.error(e)});Fs.isReady().then(()=>{localStorage.removeItem("vuetify:dynamic-reload")});function rp(e){e.use(Kd).use(Fs).use(qd)}const sp={__name:"App",setup(e){return(t,n)=>{const r=Tc("router-view");return nu(),su(r)}}},ga=Gu(sp);rp(ga);ga.mount("#app");export{Rp as $,Ef as A,Op as B,ot as C,Df as D,kp as E,$p as F,op as G,Zu as H,$e as I,ce as J,cr as K,Hd as L,Ip as M,of as N,nu as O,su as P,dc as Q,up as R,Ie as S,fr as T,cp as U,xl as V,lu as W,Ra as X,hp as Y,fp as Z,Vi as _,Ne as a,K as a0,_p as a1,Nf as a2,Tl as a3,An as a4,ip as a5,dp as a6,pp as a7,bc as a8,vs as a9,ap as aa,je as ab,lp as ac,xp as ad,ef as ae,yp as af,vp as ag,Cp as ah,Pp as ai,cf as aj,mp as ak,bp as al,wp as am,Ma as an,Tp as ao,Mp as ap,Dp as aq,Fp as ar,rf as as,sl as at,Tc as au,tn as b,Cn as c,Ni as d,xe as e,G as f,Lf as g,pr as h,Ep as i,Et as j,gp as k,rl as l,Mt as m,$n as n,ol as o,mr as p,Yl as q,Je as r,yt as s,Ap as t,yc as u,gc as v,Qe as w,Mf as x,pe as y,Sp as z}; + */const Wt=typeof document<"u";function na(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function Zd(e){return e.__esModule||e[Symbol.toStringTag]==="Module"||e.default&&na(e.default)}const X=Object.assign;function kr(e,t){const n={};for(const r in t){const s=t[r];n[r]=We(s)?s.map(e):e(s)}return n}const hn=()=>{},We=Array.isArray,ra=/#/g,Qd=/&/g,Jd=/\//g,Xd=/=/g,eh=/\?/g,sa=/\+/g,th=/%5B/g,nh=/%5D/g,oa=/%5E/g,rh=/%60/g,ia=/%7B/g,sh=/%7C/g,la=/%7D/g,oh=/%20/g;function Ds(e){return encodeURI(""+e).replace(sh,"|").replace(th,"[").replace(nh,"]")}function ih(e){return Ds(e).replace(ia,"{").replace(la,"}").replace(oa,"^")}function Xr(e){return Ds(e).replace(sa,"%2B").replace(oh,"+").replace(ra,"%23").replace(Qd,"%26").replace(rh,"`").replace(ia,"{").replace(la,"}").replace(oa,"^")}function lh(e){return Xr(e).replace(Xd,"%3D")}function ah(e){return Ds(e).replace(ra,"%23").replace(eh,"%3F")}function ch(e){return e==null?"":ah(e).replace(Jd,"%2F")}function Sn(e){try{return decodeURIComponent(""+e)}catch{}return""+e}const uh=/\/$/,fh=e=>e.replace(uh,"");function $r(e,t,n="/"){let r,s={},o="",i="";const l=t.indexOf("#");let a=t.indexOf("?");return l=0&&(a=-1),a>-1&&(r=t.slice(0,a),o=t.slice(a+1,l>-1?l:t.length),s=e(o)),l>-1&&(r=r||t.slice(0,l),i=t.slice(l,t.length)),r=mh(r??t,n),{fullPath:r+(o&&"?")+o+i,path:r,query:s,hash:Sn(i)}}function dh(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function zo(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function hh(e,t,n){const r=t.matched.length-1,s=n.matched.length-1;return r>-1&&r===s&&Xt(t.matched[r],n.matched[s])&&aa(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function Xt(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function aa(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!ph(e[n],t[n]))return!1;return!0}function ph(e,t){return We(e)?qo(e,t):We(t)?qo(t,e):e===t}function qo(e,t){return We(t)?e.length===t.length&&e.every((n,r)=>n===t[r]):e.length===1&&e[0]===t}function mh(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),r=e.split("/"),s=r[r.length-1];(s===".."||s===".")&&r.push("");let o=n.length-1,i,l;for(i=0;i1&&o--;else break;return n.slice(0,o).join("/")+"/"+r.slice(i).join("/")}const ft={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var En;(function(e){e.pop="pop",e.push="push"})(En||(En={}));var pn;(function(e){e.back="back",e.forward="forward",e.unknown=""})(pn||(pn={}));function gh(e){if(!e)if(Wt){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),fh(e)}const yh=/^[^#]+#/;function vh(e,t){return e.replace(yh,"#")+t}function bh(e,t){const n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}const vr=()=>({left:window.scrollX,top:window.scrollY});function _h(e){let t;if("el"in e){const n=e.el,r=typeof n=="string"&&n.startsWith("#"),s=typeof n=="string"?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!s)return;t=bh(s,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.scrollX,t.top!=null?t.top:window.scrollY)}function Zo(e,t){return(history.state?history.state.position-t:-1)+e}const es=new Map;function wh(e,t){es.set(e,t)}function Sh(e){const t=es.get(e);return es.delete(e),t}let Eh=()=>location.protocol+"//"+location.host;function ca(e,t){const{pathname:n,search:r,hash:s}=t,o=e.indexOf("#");if(o>-1){let l=s.includes(e.slice(o))?e.slice(o).length:1,a=s.slice(l);return a[0]!=="/"&&(a="/"+a),zo(a,"")}return zo(n,e)+r+s}function Ch(e,t,n,r){let s=[],o=[],i=null;const l=({state:h})=>{const m=ca(e,location),_=n.value,y=t.value;let T=0;if(h){if(n.value=m,t.value=h,i&&i===_){i=null;return}T=y?h.position-y.position:0}else r(m);s.forEach(M=>{M(n.value,_,{delta:T,type:En.pop,direction:T?T>0?pn.forward:pn.back:pn.unknown})})};function a(){i=n.value}function f(h){s.push(h);const m=()=>{const _=s.indexOf(h);_>-1&&s.splice(_,1)};return o.push(m),m}function c(){const{history:h}=window;h.state&&h.replaceState(X({},h.state,{scroll:vr()}),"")}function u(){for(const h of o)h();o=[],window.removeEventListener("popstate",l),window.removeEventListener("beforeunload",c)}return window.addEventListener("popstate",l),window.addEventListener("beforeunload",c,{passive:!0}),{pauseListeners:a,listen:f,destroy:u}}function Qo(e,t,n,r=!1,s=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:s?vr():null}}function xh(e){const{history:t,location:n}=window,r={value:ca(e,n)},s={value:t.state};s.value||o(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function o(a,f,c){const u=e.indexOf("#"),h=u>-1?(n.host&&document.querySelector("base")?e:e.slice(u))+a:Eh()+e+a;try{t[c?"replaceState":"pushState"](f,"",h),s.value=f}catch(m){console.error(m),n[c?"replace":"assign"](h)}}function i(a,f){const c=X({},t.state,Qo(s.value.back,a,s.value.forward,!0),f,{position:s.value.position});o(a,c,!0),r.value=a}function l(a,f){const c=X({},s.value,t.state,{forward:a,scroll:vr()});o(c.current,c,!0);const u=X({},Qo(r.value,a,null),{position:c.position+1},f);o(a,u,!1),r.value=a}return{location:r,state:s,push:l,replace:i}}function Th(e){e=gh(e);const t=xh(e),n=Ch(e,t.state,t.location,t.replace);function r(o,i=!0){i||n.pauseListeners(),history.go(o)}const s=X({location:"",base:e,go:r,createHref:vh.bind(null,e)},t,n);return Object.defineProperty(s,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(s,"state",{enumerable:!0,get:()=>t.state.value}),s}function Ah(e){return typeof e=="string"||e&&typeof e=="object"}function ua(e){return typeof e=="string"||typeof e=="symbol"}const fa=Symbol("");var Jo;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(Jo||(Jo={}));function en(e,t){return X(new Error,{type:e,[fa]:!0},t)}function tt(e,t){return e instanceof Error&&fa in e&&(t==null||!!(e.type&t))}const Xo="[^/]+?",Ph={sensitive:!1,strict:!1,start:!0,end:!0},Oh=/[.+*?^${}()[\]/\\]/g;function Rh(e,t){const n=X({},Ph,t),r=[];let s=n.start?"^":"";const o=[];for(const f of e){const c=f.length?[]:[90];n.strict&&!f.length&&(s+="/");for(let u=0;ut.length?t.length===1&&t[0]===80?1:-1:0}function da(e,t){let n=0;const r=e.score,s=t.score;for(;n0&&t[t.length-1]<0}const Mh={type:0,value:""},Fh=/[a-zA-Z0-9_]/;function Ih(e){if(!e)return[[]];if(e==="/")return[[Mh]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(m){throw new Error(`ERR (${n})/"${f}": ${m}`)}let n=0,r=n;const s=[];let o;function i(){o&&s.push(o),o=[]}let l=0,a,f="",c="";function u(){f&&(n===0?o.push({type:0,value:f}):n===1||n===2||n===3?(o.length>1&&(a==="*"||a==="+")&&t(`A repeatable param (${f}) must be alone in its segment. eg: '/:ids+.`),o.push({type:1,value:f,regexp:c,repeatable:a==="*"||a==="+",optional:a==="*"||a==="?"})):t("Invalid state to consume buffer"),f="")}function h(){f+=a}for(;l{i($)}:hn}function i(u){if(ua(u)){const h=r.get(u);h&&(r.delete(u),n.splice(n.indexOf(h),1),h.children.forEach(i),h.alias.forEach(i))}else{const h=n.indexOf(u);h>-1&&(n.splice(h,1),u.record.name&&r.delete(u.record.name),u.children.forEach(i),u.alias.forEach(i))}}function l(){return n}function a(u){const h=Hh(u,n);n.splice(h,0,u),u.record.name&&!ri(u)&&r.set(u.record.name,u)}function f(u,h){let m,_={},y,T;if("name"in u&&u.name){if(m=r.get(u.name),!m)throw en(1,{location:u});T=m.record.name,_=X(ti(h.params,m.keys.filter($=>!$.optional).concat(m.parent?m.parent.keys.filter($=>$.optional):[]).map($=>$.name)),u.params&&ti(u.params,m.keys.map($=>$.name))),y=m.stringify(_)}else if(u.path!=null)y=u.path,m=n.find($=>$.re.test(y)),m&&(_=m.parse(y),T=m.record.name);else{if(m=h.name?r.get(h.name):n.find($=>$.re.test(h.path)),!m)throw en(1,{location:u,currentLocation:h});T=m.record.name,_=X({},h.params,u.params),y=m.stringify(_)}const M=[];let R=m;for(;R;)M.unshift(R.record),R=R.parent;return{name:T,path:y,params:_,matched:M,meta:Nh(M)}}e.forEach(u=>o(u));function c(){n.length=0,r.clear()}return{addRoute:o,resolve:f,removeRoute:i,clearRoutes:c,getRoutes:l,getRecordMatcher:s}}function ti(e,t){const n={};for(const r of t)r in e&&(n[r]=e[r]);return n}function ni(e){const t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:Lh(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function Lh(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const r in e.components)t[r]=typeof n=="object"?n[r]:n;return t}function ri(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Nh(e){return e.reduce((t,n)=>X(t,n.meta),{})}function si(e,t){const n={};for(const r in e)n[r]=r in t?t[r]:e[r];return n}function Hh(e,t){let n=0,r=t.length;for(;n!==r;){const o=n+r>>1;da(e,t[o])<0?r=o:n=o+1}const s=Bh(e);return s&&(r=t.lastIndexOf(s,r-1)),r}function Bh(e){let t=e;for(;t=t.parent;)if(ha(t)&&da(e,t)===0)return t}function ha({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function jh(e){const t={};if(e===""||e==="?")return t;const r=(e[0]==="?"?e.slice(1):e).split("&");for(let s=0;so&&Xr(o)):[r&&Xr(r)]).forEach(o=>{o!==void 0&&(t+=(t.length?"&":"")+n,o!=null&&(t+="="+o))})}return t}function Vh(e){const t={};for(const n in e){const r=e[n];r!==void 0&&(t[n]=We(r)?r.map(s=>s==null?null:""+s):r==null?r:""+r)}return t}const Uh=Symbol(""),ii=Symbol(""),Ms=Symbol(""),pa=Symbol(""),ts=Symbol("");function ln(){let e=[];function t(r){return e.push(r),()=>{const s=e.indexOf(r);s>-1&&e.splice(s,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function gt(e,t,n,r,s,o=i=>i()){const i=r&&(r.enterCallbacks[s]=r.enterCallbacks[s]||[]);return()=>new Promise((l,a)=>{const f=h=>{h===!1?a(en(4,{from:n,to:t})):h instanceof Error?a(h):Ah(h)?a(en(2,{from:t,to:h})):(i&&r.enterCallbacks[s]===i&&typeof h=="function"&&i.push(h),l())},c=o(()=>e.call(r&&r.instances[s],t,n,f));let u=Promise.resolve(c);e.length<3&&(u=u.then(f)),u.catch(h=>a(h))})}function Lr(e,t,n,r,s=o=>o()){const o=[];for(const i of e)for(const l in i.components){let a=i.components[l];if(!(t!=="beforeRouteEnter"&&!i.instances[l]))if(na(a)){const c=(a.__vccOpts||a)[t];c&&o.push(gt(c,n,r,i,l,s))}else{let f=a();o.push(()=>f.then(c=>{if(!c)throw new Error(`Couldn't resolve component "${l}" at "${i.path}"`);const u=Zd(c)?c.default:c;i.mods[l]=c,i.components[l]=u;const m=(u.__vccOpts||u)[t];return m&>(m,n,r,i,l,s)()}))}}return o}function li(e){const t=xe(Ms),n=xe(pa),r=G(()=>{const a=je(e.to);return t.resolve(a)}),s=G(()=>{const{matched:a}=r.value,{length:f}=a,c=a[f-1],u=n.matched;if(!c||!u.length)return-1;const h=u.findIndex(Xt.bind(null,c));if(h>-1)return h;const m=ai(a[f-2]);return f>1&&ai(c)===m&&u[u.length-1].path!==m?u.findIndex(Xt.bind(null,a[f-2])):h}),o=G(()=>s.value>-1&&Gh(n.params,r.value.params)),i=G(()=>s.value>-1&&s.value===n.matched.length-1&&aa(n.params,r.value.params));function l(a={}){return Yh(a)?t[je(e.replace)?"replace":"push"](je(e.to)).catch(hn):Promise.resolve()}return{route:r,href:G(()=>r.value.href),isActive:o,isExactActive:i,navigate:l}}const Wh=ws({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:li,setup(e,{slots:t}){const n=Et(li(e)),{options:r}=xe(Ms),s=G(()=>({[ci(e.activeClass,r.linkActiveClass,"router-link-active")]:n.isActive,[ci(e.exactActiveClass,r.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const o=t.default&&t.default(n);return e.custom?o:pr("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:s.value},o)}}}),Kh=Wh;function Yh(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 Gh(e,t){for(const n in t){const r=t[n],s=e[n];if(typeof r=="string"){if(r!==s)return!1}else if(!We(s)||s.length!==r.length||r.some((o,i)=>o!==s[i]))return!1}return!0}function ai(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const ci=(e,t,n)=>e??t??n,zh=ws({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const r=xe(ts),s=G(()=>e.route||r.value),o=xe(ii,0),i=G(()=>{let f=je(o);const{matched:c}=s.value;let u;for(;(u=c[f])&&!u.components;)f++;return f}),l=G(()=>s.value.matched[i.value]);Mt(ii,G(()=>i.value+1)),Mt(Uh,l),Mt(ts,s);const a=Je();return Qe(()=>[a.value,l.value,e.name],([f,c,u],[h,m,_])=>{c&&(c.instances[u]=f,m&&m!==c&&f&&f===h&&(c.leaveGuards.size||(c.leaveGuards=m.leaveGuards),c.updateGuards.size||(c.updateGuards=m.updateGuards))),f&&c&&(!m||!Xt(c,m)||!h)&&(c.enterCallbacks[u]||[]).forEach(y=>y(f))},{flush:"post"}),()=>{const f=s.value,c=e.name,u=l.value,h=u&&u.components[c];if(!h)return ui(n.default,{Component:h,route:f});const m=u.props[c],_=m?m===!0?f.params:typeof m=="function"?m(f):m:null,T=pr(h,X({},_,t,{onVnodeUnmounted:M=>{M.component.isUnmounted&&(u.instances[c]=null)},ref:a}));return ui(n.default,{Component:T,route:f})||T}}});function ui(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const qh=zh;function Zh(e){const t=$h(e.routes,e),n=e.parseQuery||jh,r=e.stringifyQuery||oi,s=e.history,o=ln(),i=ln(),l=ln(),a=yt(ft);let f=ft;Wt&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const c=kr.bind(null,b=>""+b),u=kr.bind(null,ch),h=kr.bind(null,Sn);function m(b,D){let P,k;return ua(b)?(P=t.getRecordMatcher(b),k=D):k=b,t.addRoute(k,P)}function _(b){const D=t.getRecordMatcher(b);D&&t.removeRoute(D)}function y(){return t.getRoutes().map(b=>b.record)}function T(b){return!!t.getRecordMatcher(b)}function M(b,D){if(D=X({},D||a.value),typeof b=="string"){const p=$r(n,b,D.path),g=t.resolve({path:p.path},D),w=s.createHref(p.fullPath);return X(p,g,{params:h(g.params),hash:Sn(p.hash),redirectedFrom:void 0,href:w})}let P;if(b.path!=null)P=X({},b,{path:$r(n,b.path,D.path).path});else{const p=X({},b.params);for(const g in p)p[g]==null&&delete p[g];P=X({},b,{params:u(p)}),D.params=u(D.params)}const k=t.resolve(P,D),Q=b.hash||"";k.params=c(h(k.params));const ae=dh(r,X({},b,{hash:ih(Q),path:k.path})),d=s.createHref(ae);return X({fullPath:ae,hash:Q,query:r===oi?Vh(b.query):b.query||{}},k,{redirectedFrom:void 0,href:d})}function R(b){return typeof b=="string"?$r(n,b,a.value.path):X({},b)}function $(b,D){if(f!==b)return en(8,{from:D,to:b})}function F(b){return ee(b)}function U(b){return F(X(R(b),{replace:!0}))}function ne(b){const D=b.matched[b.matched.length-1];if(D&&D.redirect){const{redirect:P}=D;let k=typeof P=="function"?P(b):P;return typeof k=="string"&&(k=k.includes("?")||k.includes("#")?k=R(k):{path:k},k.params={}),X({query:b.query,hash:b.hash,params:k.path!=null?{}:b.params},k)}}function ee(b,D){const P=f=M(b),k=a.value,Q=b.state,ae=b.force,d=b.replace===!0,p=ne(P);if(p)return ee(X(R(p),{state:typeof p=="object"?X({},Q,p.state):Q,force:ae,replace:d}),D||P);const g=P;g.redirectedFrom=D;let w;return!ae&&hh(r,k,P)&&(w=en(16,{to:g,from:k}),Ke(k,k,!0,!1)),(w?Promise.resolve(w):Y(g,k)).catch(v=>tt(v)?tt(v,2)?v:at(v):q(v,g,k)).then(v=>{if(v){if(tt(v,2))return ee(X({replace:d},R(v.to),{state:typeof v.to=="object"?X({},Q,v.to.state):Q,force:ae}),D||g)}else v=I(g,k,!0,d,Q);return se(g,k,v),v})}function ge(b,D){const P=$(b,D);return P?Promise.reject(P):Promise.resolve()}function V(b){const D=Nt.values().next().value;return D&&typeof D.runWithContext=="function"?D.runWithContext(b):b()}function Y(b,D){let P;const[k,Q,ae]=Qh(b,D);P=Lr(k.reverse(),"beforeRouteLeave",b,D);for(const p of k)p.leaveGuards.forEach(g=>{P.push(gt(g,b,D))});const d=ge.bind(null,b,D);return P.push(d),Me(P).then(()=>{P=[];for(const p of o.list())P.push(gt(p,b,D));return P.push(d),Me(P)}).then(()=>{P=Lr(Q,"beforeRouteUpdate",b,D);for(const p of Q)p.updateGuards.forEach(g=>{P.push(gt(g,b,D))});return P.push(d),Me(P)}).then(()=>{P=[];for(const p of ae)if(p.beforeEnter)if(We(p.beforeEnter))for(const g of p.beforeEnter)P.push(gt(g,b,D));else P.push(gt(p.beforeEnter,b,D));return P.push(d),Me(P)}).then(()=>(b.matched.forEach(p=>p.enterCallbacks={}),P=Lr(ae,"beforeRouteEnter",b,D,V),P.push(d),Me(P))).then(()=>{P=[];for(const p of i.list())P.push(gt(p,b,D));return P.push(d),Me(P)}).catch(p=>tt(p,8)?p:Promise.reject(p))}function se(b,D,P){l.list().forEach(k=>V(()=>k(b,D,P)))}function I(b,D,P,k,Q){const ae=$(b,D);if(ae)return ae;const d=D===ft,p=Wt?history.state:{};P&&(k||d?s.replace(b.fullPath,X({scroll:d&&p&&p.scroll},Q)):s.push(b.fullPath,Q)),a.value=b,Ke(b,D,P,d),at()}let z;function he(){z||(z=s.listen((b,D,P)=>{if(!Pn.listening)return;const k=M(b),Q=ne(k);if(Q){ee(X(Q,{replace:!0}),k).catch(hn);return}f=k;const ae=a.value;Wt&&wh(Zo(ae.fullPath,P.delta),vr()),Y(k,ae).catch(d=>tt(d,12)?d:tt(d,2)?(ee(d.to,k).then(p=>{tt(p,20)&&!P.delta&&P.type===En.pop&&s.go(-1,!1)}).catch(hn),Promise.reject()):(P.delta&&s.go(-P.delta,!1),q(d,k,ae))).then(d=>{d=d||I(k,ae,!1),d&&(P.delta&&!tt(d,8)?s.go(-P.delta,!1):P.type===En.pop&&tt(d,20)&&s.go(-1,!1)),se(k,ae,d)}).catch(hn)}))}let He=ln(),fe=ln(),te;function q(b,D,P){at(b);const k=fe.list();return k.length?k.forEach(Q=>Q(b,D,P)):console.error(b),Promise.reject(b)}function Xe(){return te&&a.value!==ft?Promise.resolve():new Promise((b,D)=>{He.add([b,D])})}function at(b){return te||(te=!b,he(),He.list().forEach(([D,P])=>b?P(b):D()),He.reset()),b}function Ke(b,D,P,k){const{scrollBehavior:Q}=e;if(!Wt||!Q)return Promise.resolve();const ae=!P&&Sh(Zo(b.fullPath,0))||(k||!P)&&history.state&&history.state.scroll||null;return vs().then(()=>Q(b,D,ae)).then(d=>d&&_h(d)).catch(d=>q(d,b,D))}const Ee=b=>s.go(b);let Lt;const Nt=new Set,Pn={currentRoute:a,listening:!0,addRoute:m,removeRoute:_,clearRoutes:t.clearRoutes,hasRoute:T,getRoutes:y,resolve:M,options:e,push:F,replace:U,go:Ee,back:()=>Ee(-1),forward:()=>Ee(1),beforeEach:o.add,beforeResolve:i.add,afterEach:l.add,onError:fe.add,isReady:Xe,install(b){const D=this;b.component("RouterLink",Kh),b.component("RouterView",qh),b.config.globalProperties.$router=D,Object.defineProperty(b.config.globalProperties,"$route",{enumerable:!0,get:()=>je(a)}),Wt&&!Lt&&a.value===ft&&(Lt=!0,F(s.location).catch(Q=>{}));const P={};for(const Q in ft)Object.defineProperty(P,Q,{get:()=>a.value[Q],enumerable:!0});b.provide(Ms,D),b.provide(pa,Li(P)),b.provide(ts,a);const k=b.unmount;Nt.add(b),b.unmount=function(){Nt.delete(b),Nt.size<1&&(f=ft,z&&z(),z=null,a.value=ft,Lt=!1,te=!1),k()}}};function Me(b){return b.reduce((D,P)=>D.then(()=>V(P)),Promise.resolve())}return Pn}function Qh(e,t){const n=[],r=[],s=[],o=Math.max(t.matched.length,e.matched.length);for(let i=0;iXt(f,l))?r.push(l):n.push(l));const a=e.matched[i];a&&(t.matched.find(f=>Xt(f,a))||s.push(a))}return[n,r,s]}function Jh(e){const{extendRoutes:t,routes:n}=e;return t&&console.warn('"extendRoutes()" is deprecated, please modify the routes directly. See https://uvr.esm.is/guide/extending-routes.html#extending-routes-at-runtime for an alternative.'),Zh(Object.assign(e,{routes:typeof t=="function"&&t(n)||n}))}const Xh="modulepreload",ep=function(e){return"/smorrery-webapp/"+e},fi={},ma=function(t,n,r){let s=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const i=document.querySelector("meta[property=csp-nonce]"),l=(i==null?void 0:i.nonce)||(i==null?void 0:i.getAttribute("nonce"));s=Promise.allSettled(n.map(a=>{if(a=ep(a),a in fi)return;fi[a]=!0;const f=a.endsWith(".css"),c=f?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${a}"]${c}`))return;const u=document.createElement("link");if(u.rel=f?"stylesheet":Xh,f||(u.as="script"),u.crossOrigin="",u.href=a,l&&u.setAttribute("nonce",l),document.head.appendChild(u),f)return new Promise((h,m)=>{u.addEventListener("load",h),u.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${a}`)))})}))}function o(i){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=i,window.dispatchEvent(l),!l.defaultPrevented)throw i}return s.then(i=>{for(const l of i||[])l.status==="rejected"&&o(l.reason);return t().catch(o)})},tp=e=>{const t={};Object.entries(Object.assign({"/src/layouts/default.vue":()=>ma(()=>import("./default-B2aGEmKt.js"),__vite__mapDeps([0,1,2,3]))})).forEach(([s,o])=>{let i=s.replace("/src/layouts/","").replace(".vue","");t[i]=o});function r(s,o=!0){return s.map(i=>{var l,a,f,c,u,h;if(((l=i.children)==null?void 0:l.length)>0&&(i.children=r(i.children,!1)),o){if(!i.component&&((a=i.children)==null?void 0:a.find(_=>{var y;return(_.path===""||_.path==="/")&&((y=_.meta)==null?void 0:y.isLayout)})))return i;if(((f=i.meta)==null?void 0:f.layout)!==!1)return{path:i.path,component:t[((c=i.meta)==null?void 0:c.layout)||"default"],children:i.path==="/"?[i]:[{...i,path:""}],meta:{isLayout:!0}}}return(u=i.meta)!=null&&u.layout?{path:i.path,component:t[(h=i.meta)==null?void 0:h.layout],children:[{...i,path:""}],meta:{isLayout:!0}}:i})}return r(e)},np=[{path:"/",name:"/",component:()=>ma(()=>import("./index-CFgTnFr_.js"),__vite__mapDeps([4,1,2,5]))}],Fs=Jh({history:Th("/smorrery-webapp"),routes:tp(np)});Fs.onError((e,t)=>{var n,r;(r=(n=e==null?void 0:e.message)==null?void 0:n.includes)!=null&&r.call(n,"Failed to fetch dynamically imported module")?localStorage.getItem("vuetify:dynamic-reload")?console.error("Dynamic import error, reloading page did not fix it",e):(console.log("Reloading page to fix dynamic import error"),localStorage.setItem("vuetify:dynamic-reload","true"),location.assign(t.fullPath)):console.error(e)});Fs.isReady().then(()=>{localStorage.removeItem("vuetify:dynamic-reload")});function rp(e){e.use(Kd).use(Fs).use(qd)}const sp={__name:"App",setup(e){return(t,n)=>{const r=Tc("router-view");return nu(),su(r)}}},ga=Gu(sp);rp(ga);ga.mount("#app");export{Rp as $,su as A,dc as B,up as C,cp as D,xl as E,Ie as F,lu as G,Ra as H,fp as I,K as J,_p as K,Nf as L,Ni as M,Tl as N,An as O,Hd as P,ip as Q,dp as R,pp as S,hp as T,Qe as U,bc as V,vs as W,ap as X,Cp as Y,Pp as Z,ef as _,Ne as a,cf as a0,mp as a1,bp as a2,wp as a3,Ma as a4,Tp as a5,Mp as a6,Dp as a7,Fp as a8,rf as a9,Tc as aa,Ep as ab,Ap as ac,$e as ad,Mf as ae,pe as af,Sp as ag,Ef as ah,Op as ai,ot as aj,Df as ak,Ip as al,of as am,fr as an,Vi as ao,je as ap,lp as aq,xp as ar,yp as as,vp as at,sl as au,G as b,Cn as c,Et as d,gp as e,tn as f,Lf as g,pr as h,xe as i,Mt as j,$n as k,Yl as l,yc as m,gc as n,rl as o,mr as p,ol as q,Je as r,yt as s,kp as t,$p as u,op as v,Zu as w,ce as x,cr as y,nu as z}; diff --git a/index.html b/index.html index 5bf80a0..866d081 100644 --- a/index.html +++ b/index.html @@ -13,7 +13,7 @@ Welcome to Vuetify 3 - +