@volter/editor 0.5.57
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/BUNDLED_NOTICES +6196 -0
- package/LICENSE +686 -0
- package/LICENSE-BLENDER +1409 -0
- package/LICENSE-MCP +21 -0
- package/NOTICE +20 -0
- package/dist/.vite/manifest.json +1744 -0
- package/dist/assets/AudioViewer-DILwc7Pt.js +1 -0
- package/dist/assets/BVHLoader--2mLoe3e.js +1 -0
- package/dist/assets/BufferGeometryUtils-oP8-Ve4I.js +1 -0
- package/dist/assets/ColladaLoader-CyOCKXko.js +3 -0
- package/dist/assets/EntityModelDocument-DVlDQ_IJ.js +1 -0
- package/dist/assets/EnvironmentAssetDocument-BVGDJjW4.js +5 -0
- package/dist/assets/FBXLoader-DzWtiWYm.js +1 -0
- package/dist/assets/GameplaySessionTimeline-X_nMT8Sa.js +142 -0
- package/dist/assets/ImageViewer-D-aZoyr1.js +1 -0
- package/dist/assets/InspectorCanvasPreview-CLDhscy0.js +1 -0
- package/dist/assets/InspectorObjectPreview-CpHEw6QH.js +1 -0
- package/dist/assets/JsonAssetDocument-CLVN1V9Z.js +3 -0
- package/dist/assets/LineSegments2-vfeDUBfs.js +370 -0
- package/dist/assets/MTLLoader-D8SKGOsv.js +2 -0
- package/dist/assets/ModelAssetDocument-C60lQ11c.js +1 -0
- package/dist/assets/NonThreeAuthoringBootstrap-D8oHDftw.js +2 -0
- package/dist/assets/OBJLoader-8SrBLZ7J.js +5 -0
- package/dist/assets/Object3DPreview-CSmLPKkk.js +2 -0
- package/dist/assets/OnlineAssetDetail-D8wVVoay.js +2 -0
- package/dist/assets/OrbitControls-BHxt84w6.js +1 -0
- package/dist/assets/PLYLoader-BXUWXVtV.js +2 -0
- package/dist/assets/RectAreaLightUniformsLib-BGT7Bu4n.js +1 -0
- package/dist/assets/STLLoader-U-3fQm8v.js +1 -0
- package/dist/assets/SourceAssetViewer-BcOCJ2ye.js +13 -0
- package/dist/assets/StageHost-B_YrFNiC.js +1126 -0
- package/dist/assets/TDSLoader-BtiaQ4S3.js +1 -0
- package/dist/assets/ToolObject3DPreview-Crowr7IN.js +1 -0
- package/dist/assets/TransientHint-GNwuzA4c.js +1 -0
- package/dist/assets/VideoViewer-CjQ4P9AJ.js +1 -0
- package/dist/assets/_commonjsHelpers-D6-XlEtG.js +1 -0
- package/dist/assets/agx-base-srgb-BjWZJgrZ.lut +0 -0
- package/dist/assets/agx-look-medium-high-contrast-D5F_ob1L.lut +0 -0
- package/dist/assets/agx-look-punchy-dxsnycNs.lut +0 -0
- package/dist/assets/asset-editor-persistence-D3Yy77wZ.js +1 -0
- package/dist/assets/blender-emscripten-engine-C_uFxIuO.js +2 -0
- package/dist/assets/blender-node-editor.document-BfvoBocD.js +1 -0
- package/dist/assets/blender-outliner-model-B8b00oxr.js +1 -0
- package/dist/assets/blender-properties-tab-0M780SHF.js +3 -0
- package/dist/assets/blender-runtime-host-D8NHsAfD.js +4 -0
- package/dist/assets/blender-runtime-skin-DcwXD-m8.js +61 -0
- package/dist/assets/blender-runtime.document-BixTvrw8.js +7 -0
- package/dist/assets/blender-timeline.document-RtHIpbT1.js +1 -0
- package/dist/assets/blender-uv-editor.document-ChwaS3BG.js +1 -0
- package/dist/assets/blender-version.status-Bnhf8h1I.js +1 -0
- package/dist/assets/blender-wali-engine-C7bet0ss.js +2 -0
- package/dist/assets/blender.command-BCCEp0kb.js +1 -0
- package/dist/assets/blender.keymap-GAQgeklK.js +1 -0
- package/dist/assets/blender.status-ujwGU6dU.js +1 -0
- package/dist/assets/blender.style-Dcem5f_T.js +1 -0
- package/dist/assets/browserAll-Do0ehj3Q.js +14 -0
- package/dist/assets/client-DNXj_opT.js +25 -0
- package/dist/assets/clip-planes-CnAI6DZn.js +1 -0
- package/dist/assets/edit-mode-authoring-BX4IRQq9.js +1 -0
- package/dist/assets/editor-presentation-activity-C7SNSmTd.js +1 -0
- package/dist/assets/events-156d8d12.esm-Dy_KXdhT.js +36 -0
- package/dist/assets/fflate.module-DPuTF8aG.js +6 -0
- package/dist/assets/filmic-srgb-Ct35FIH6.lut +0 -0
- package/dist/assets/hosted-asset-materialization-BK7DHisS.js +2 -0
- package/dist/assets/index-5av5LJja.js +1691 -0
- package/dist/assets/index-BP6wv2A0.js +5 -0
- package/dist/assets/index-Bge9JUr6.js +1 -0
- package/dist/assets/index-BncK9THk.js +1 -0
- package/dist/assets/index-C5UECeSr.js +952 -0
- package/dist/assets/index-CJbYy-CF.js +3 -0
- package/dist/assets/index-CanA16PU.js +2 -0
- package/dist/assets/index-CinJrH5C.js +9 -0
- package/dist/assets/index-Cl83EGRl.js +2 -0
- package/dist/assets/index-CtzuWnCS.js +1 -0
- package/dist/assets/index-D2LwEE0L.js +562 -0
- package/dist/assets/index-D2fNXpHa.css +1 -0
- package/dist/assets/index-DUqP1RMl.js +1 -0
- package/dist/assets/index-D_NuPfjr.js +9 -0
- package/dist/assets/index-DaQZGF7d.js +1 -0
- package/dist/assets/index-DgapqSPi.js +7 -0
- package/dist/assets/index-IEjydI9d.js +1 -0
- package/dist/assets/index-gHZae-lw.js +13 -0
- package/dist/assets/jsx-runtime-DPjLkJKQ.js +9 -0
- package/dist/assets/model.layout-BJUEQYUI.js +1 -0
- package/dist/assets/models.finder-Bm1YfG95.js +1 -0
- package/dist/assets/product-Ywxte8eQ.js +1 -0
- package/dist/assets/properties-bone-constraints.inspector-Ck0Hzlvr.js +1 -0
- package/dist/assets/properties-bone.inspector-B8M42o0V.js +1 -0
- package/dist/assets/properties-collection.inspector-D-RSO5zy.js +1 -0
- package/dist/assets/properties-constraints.inspector-DbJa57oa.js +1 -0
- package/dist/assets/properties-data.inspector-DLgjbRW6.js +1 -0
- package/dist/assets/properties-material.inspector-B11LZYDW.js +1 -0
- package/dist/assets/properties-modifiers.inspector-BCWwuA26.js +1 -0
- package/dist/assets/properties-object.inspector-UZVJG49S.js +1 -0
- package/dist/assets/properties-output.inspector-XOwcBits.js +1 -0
- package/dist/assets/properties-particles.inspector-By04vT7R.js +1 -0
- package/dist/assets/properties-physics.inspector-D3T7FLdg.js +1 -0
- package/dist/assets/properties-render.inspector-Y0Rjr9gZ.js +1 -0
- package/dist/assets/properties-scene.inspector-CfyDWB4W.js +1 -0
- package/dist/assets/properties-texture.inspector-AFRsJx6-.js +1 -0
- package/dist/assets/properties-view-layer.inspector-Co07LAmQ.js +1 -0
- package/dist/assets/properties-world.inspector-C7T4JocI.js +1 -0
- package/dist/assets/react-18-DyywM-Z2.js +1 -0
- package/dist/assets/react-story-board-vrmj74Ng.js +1 -0
- package/dist/assets/react-three-rapier.esm-D874pLFD.js +1 -0
- package/dist/assets/sculpt.layout-zJF55yCR.js +1 -0
- package/dist/assets/session-1bPxsLdy.js +4167 -0
- package/dist/assets/shading.layout-DULYZV6M.js +1 -0
- package/dist/assets/sky-precompute-worker-ChN7J87v.js +1 -0
- package/dist/assets/spark.module-D1CUMLYS.js +12120 -0
- package/dist/assets/stage-keyboard-Cx90EYIT.js +1 -0
- package/dist/assets/stage-overlay-set-duu3P0mZ.js +1 -0
- package/dist/assets/stage-presence-markers-DKH3p_ao.js +1 -0
- package/dist/assets/story-capture-Dqurwlhr.js +1 -0
- package/dist/assets/story-mount-turn-2IYGgHob.js +1 -0
- package/dist/assets/story-pixi-preview-c78Aygdi.js +1 -0
- package/dist/assets/story-three-preview-CbZo5B3D.js +2 -0
- package/dist/assets/texture.layout-DASpHVht.js +1 -0
- package/dist/assets/three.module-BynznMJN.js +3840 -0
- package/dist/assets/uv-editing.layout-BEKHxmHw.js +1 -0
- package/dist/assets/vgai-shared-fontawesome-CFSkqz69.js +1 -0
- package/dist/assets/vgai-shared-jsx-dev-runtime-VfxIYu0y.js +9 -0
- package/dist/assets/vgai-shared-jsx-runtime-DIqBpTut.js +1 -0
- package/dist/assets/vgai-shared-react-DL5U9FnC.js +1 -0
- package/dist/assets/vgai-shared-react-dom-DFajMqMT.js +1 -0
- package/dist/assets/vgai-shared-react-dom-client-S0ozfl6_.js +1 -0
- package/dist/assets/vgai-shared-three-BWkbSQ3V.js +1 -0
- package/dist/assets/viewport-pick-context-DkawXbEi.js +1 -0
- package/dist/assets/webworkerAll-iMzrvNir.js +101 -0
- package/dist/assets/worker-DTgfRRas.js +1 -0
- package/dist/assets/world-documents-CGbrcsYk.js +3 -0
- package/dist/vgai-shared-react.json +10 -0
- package/dist/vgai-shared-three.json +3 -0
- package/dist-node/cli.js +17823 -0
- package/dist-node/create.js +14084 -0
- package/package.json +56 -0
- package/presets.mjs +2 -0
- package/src/contributions.d.ts +4 -0
- package/src/index.ts +9 -0
- package/starter/cube.blend +0 -0
- package/starter/cube.py +81 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{countColumn as An,EditorState as yt,Facet as Q,StateEffect as jt,RangeSetBuilder as ne,RangeSet as Fe,StateField as je,Prec as We,combineConfig as He}from"./index-BP6wv2A0.js";import{V as Pt,d as Pn,D as R,E as U,S as Se,b as _t,G as Tn,W as Ue,l as Nn}from"./index-DgapqSPi.js";const In=1024;let Bn=0;class Ut{constructor(t,e){this.from=t,this.to=e}}class y{constructor(t={}){this.id=Bn++,this.perNode=!!t.perNode,this.deserialize=t.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")}),this.combine=t.combine||null}add(t){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return typeof t!="function"&&(t=L.match(t)),e=>{let n=t(e);return n===void 0?null:[this,n]}}}y.closedBy=new y({deserialize:r=>r.split(" ")});y.openedBy=new y({deserialize:r=>r.split(" ")});y.group=new y({deserialize:r=>r.split(" ")});y.isolate=new y({deserialize:r=>{if(r&&r!="rtl"&&r!="ltr"&&r!="auto")throw new RangeError("Invalid value for isolate: "+r);return r||"auto"}});y.contextHash=new y({perNode:!0});y.lookAhead=new y({perNode:!0});y.mounted=new y({perNode:!0});class xt{constructor(t,e,n,i=!1){this.tree=t,this.overlay=e,this.parser=n,this.bracketed=i}static get(t){return t&&t.props&&t.props[y.mounted.id]}}const On=Object.create(null);class L{constructor(t,e,n,i=0){this.name=t,this.props=e,this.id=n,this.flags=i}static define(t){let e=t.props&&t.props.length?Object.create(null):On,n=(t.top?1:0)|(t.skipped?2:0)|(t.error?4:0)|(t.name==null?8:0),i=new L(t.name||"",e,t.id,n);if(t.props){for(let s of t.props)if(Array.isArray(s)||(s=s(i)),s){if(s[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");e[s[0].id]=s[1]}}return i}prop(t){return this.props[t.id]}get isTop(){return(this.flags&1)>0}get isSkipped(){return(this.flags&2)>0}get isError(){return(this.flags&4)>0}get isAnonymous(){return(this.flags&8)>0}is(t){if(typeof t=="string"){if(this.name==t)return!0;let e=this.prop(y.group);return e?e.indexOf(t)>-1:!1}return this.id==t}static match(t){let e=Object.create(null);for(let n in t)for(let i of n.split(" "))e[i]=t[n];return n=>{for(let i=n.prop(y.group),s=-1;s<(i?i.length:0);s++){let l=e[s<0?n.name:i[s]];if(l)return l}}}}L.none=new L("",Object.create(null),0,8);class re{constructor(t){this.types=t;for(let e=0;e<t.length;e++)if(t[e].id!=e)throw new RangeError("Node type ids should correspond to array positions when creating a node set")}extend(...t){let e=[];for(let n of this.types){let i=null;for(let s of t){let l=s(n);if(l){i||(i=Object.assign({},n.props));let o=l[1],a=l[0];a.combine&&a.id in i&&(o=a.combine(i[a.id],o)),i[a.id]=o}}e.push(i?new L(n.name,i,n.id,n.flags):n)}return new re(e)}}const Bt=new WeakMap,Ce=new WeakMap;var I;(function(r){r[r.ExcludeBuffers=1]="ExcludeBuffers",r[r.IncludeAnonymous=2]="IncludeAnonymous",r[r.IgnoreMounts=4]="IgnoreMounts",r[r.IgnoreOverlays=8]="IgnoreOverlays",r[r.EnterBracketed=16]="EnterBracketed"})(I||(I={}));class C{constructor(t,e,n,i,s){if(this.type=t,this.children=e,this.positions=n,this.length=i,this.props=null,s&&s.length){this.props=Object.create(null);for(let[l,o]of s)this.props[typeof l=="number"?l:l.id]=o}}toString(){let t=xt.get(this);if(t&&!t.overlay)return t.tree.toString();let e="";for(let n of this.children){let i=n.toString();i&&(e&&(e+=","),e+=i)}return this.type.name?(/\W/.test(this.type.name)&&!this.type.isError?JSON.stringify(this.type.name):this.type.name)+(e.length?"("+e+")":""):e}cursor(t=0){return new Qt(this.topNode,t)}cursorAt(t,e=0,n=0){let i=Bt.get(this)||this.topNode,s=new Qt(i);return s.moveTo(t,e),Bt.set(this,s._tree),s}get topNode(){return new _(this,0,0,null)}resolve(t,e=0){let n=wt(Bt.get(this)||this.topNode,t,e,!1);return Bt.set(this,n),n}resolveInner(t,e=0){let n=wt(Ce.get(this)||this.topNode,t,e,!0);return Ce.set(this,n),n}resolveStack(t,e=0){return En(this,t,e)}iterate(t){let{enter:e,leave:n,from:i=0,to:s=this.length}=t,l=t.mode||0,o=(l&I.IncludeAnonymous)>0;for(let a=this.cursor(l|I.IncludeAnonymous);;){let h=!1;if(a.from<=s&&a.to>=i&&(!o&&a.type.isAnonymous||e(a)!==!1)){if(a.firstChild())continue;h=!0}for(;h&&n&&(o||!a.type.isAnonymous)&&n(a),!a.nextSibling();){if(!a.parent())return;h=!0}}}prop(t){return t.perNode?this.props?this.props[t.id]:void 0:this.type.prop(t)}get propValues(){let t=[];if(this.props)for(let e in this.props)t.push([+e,this.props[e]]);return t}balance(t={}){return this.children.length<=8?this:le(L.none,this.children,this.positions,0,this.children.length,0,this.length,(e,n,i)=>new C(this.type,e,n,i,this.propValues),t.makeTree||((e,n,i)=>new C(L.none,e,n,i)))}static build(t){return Rn(t)}}C.empty=new C(L.none,[],[],0);class ie{constructor(t,e){this.buffer=t,this.index=e}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}get pos(){return this.index}next(){this.index-=4}fork(){return new ie(this.buffer,this.index)}}class it{constructor(t,e,n){this.buffer=t,this.length=e,this.set=n}get type(){return L.none}toString(){let t=[];for(let e=0;e<this.buffer.length;)t.push(this.childString(e)),e=this.buffer[e+3];return t.join(",")}childString(t){let e=this.buffer[t],n=this.buffer[t+3],i=this.set.types[e],s=i.name;if(/\W/.test(s)&&!i.isError&&(s=JSON.stringify(s)),t+=4,n==t)return s;let l=[];for(;t<n;)l.push(this.childString(t)),t=this.buffer[t+3];return s+"("+l.join(",")+")"}findChild(t,e,n,i,s){let{buffer:l}=this,o=-1;for(let a=t;a!=e&&!(Ve(s,i,l[a+1],l[a+2])&&(o=a,n>0));a=l[a+3]);return o}slice(t,e,n){let i=this.buffer,s=new Uint16Array(e-t),l=0;for(let o=t,a=0;o<e;){s[a++]=i[o++],s[a++]=i[o++]-n;let h=s[a++]=i[o++]-n;s[a++]=i[o++]-t,l=Math.max(l,h)}return new it(s,l,this.set)}}function Ve(r,t,e,n){switch(r){case-2:return e<t;case-1:return n>=t&&e<t;case 0:return e<t&&n>t;case 1:return e<=t&&n>t;case 2:return n>t;case 4:return!0}}function wt(r,t,e,n){for(var i;r.from==r.to||(e<1?r.from>=t:r.from>t)||(e>-1?r.to<=t:r.to<t);){let l=!n&&r instanceof _&&r.index<0?null:r.parent;if(!l)return r;r=l}let s=n?0:I.IgnoreOverlays;if(n)for(let l=r,o=l.parent;o;l=o,o=l.parent)l instanceof _&&l.index<0&&((i=o.enter(t,e,s))===null||i===void 0?void 0:i.from)!=l.from&&(r=o);for(;;){let l=r.enter(t,e,s);if(!l)return r;r=l}}class $e{cursor(t=0){return new Qt(this,t)}getChild(t,e=null,n=null){let i=Ae(this,t,e,n);return i.length?i[0]:null}getChildren(t,e=null,n=null){return Ae(this,t,e,n)}resolve(t,e=0){return wt(this,t,e,!1)}resolveInner(t,e=0){return wt(this,t,e,!0)}matchContext(t){return Kt(this.parent,t)}enterUnfinishedNodesBefore(t){let e=this.childBefore(t),n=this;for(;e;){let i=e.lastChild;if(!i||i.to!=e.to)break;i.type.isError&&i.from==i.to?(n=e,e=i.prevSibling):e=i}return n}get node(){return this}get next(){return this.parent}}class _ extends $e{constructor(t,e,n,i){super(),this._tree=t,this.from=e,this.index=n,this._parent=i}get type(){return this._tree.type}get name(){return this._tree.type.name}get to(){return this.from+this._tree.length}nextChild(t,e,n,i,s=0){for(let l=this;;){for(let{children:o,positions:a}=l._tree,h=e>0?o.length:-1;t!=h;t+=e){let f=o[t],d=a[t]+l.from,g;if(!(!(s&I.EnterBracketed&&f instanceof C&&(g=xt.get(f))&&!g.overlay&&g.bracketed&&n>=d&&n<=d+f.length)&&!Ve(i,n,d,d+f.length))){if(f instanceof it){if(s&I.ExcludeBuffers)continue;let k=f.findChild(0,f.buffer.length,e,n-d,i);if(k>-1)return new K(new Dn(l,f,t,d),null,k)}else if(s&I.IncludeAnonymous||!f.type.isAnonymous||se(f)){let k;if(!(s&I.IgnoreMounts)&&(k=xt.get(f))&&!k.overlay)return new _(k.tree,d,t,l);let w=new _(f,d,t,l);return s&I.IncludeAnonymous||!w.type.isAnonymous?w:w.nextChild(e<0?f.children.length-1:0,e,n,i,s)}}}if(s&I.IncludeAnonymous||!l.type.isAnonymous||(l.index>=0?t=l.index+e:t=e<0?-1:l._parent._tree.children.length,l=l._parent,!l))return null}}get firstChild(){return this.nextChild(0,1,0,4)}get lastChild(){return this.nextChild(this._tree.children.length-1,-1,0,4)}childAfter(t){return this.nextChild(0,1,t,2)}childBefore(t){return this.nextChild(this._tree.children.length-1,-1,t,-2)}prop(t){return this._tree.prop(t)}enter(t,e,n=0){let i;if(!(n&I.IgnoreOverlays)&&(i=xt.get(this._tree))&&i.overlay){let s=t-this.from,l=n&I.EnterBracketed&&i.bracketed;for(let{from:o,to:a}of i.overlay)if((e>0||l?o<=s:o<s)&&(e<0||l?a>=s:a>s))return new _(i.tree,i.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,t,e,n)}nextSignificantParent(){let t=this;for(;t.type.isAnonymous&&t._parent;)t=t._parent;return t}get parent(){return this._parent?this._parent.nextSignificantParent():null}get nextSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index+1,1,0,4):null}get prevSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index-1,-1,0,4):null}get tree(){return this._tree}toTree(){return this._tree}toString(){return this._tree.toString()}}function Ae(r,t,e,n){let i=r.cursor(),s=[];if(!i.firstChild())return s;if(e!=null){for(let l=!1;!l;)if(l=i.type.is(e),!i.nextSibling())return s}for(;;){if(n!=null&&i.type.is(n))return s;if(i.type.is(t)&&s.push(i.node),!i.nextSibling())return n==null?s:[]}}function Kt(r,t,e=t.length-1){for(let n=r;e>=0;n=n.parent){if(!n)return!1;if(!n.type.isAnonymous){if(t[e]&&t[e]!=n.name)return!1;e--}}return!0}class Dn{constructor(t,e,n,i){this.parent=t,this.buffer=e,this.index=n,this.start=i}}class K extends $e{get name(){return this.type.name}get from(){return this.context.start+this.context.buffer.buffer[this.index+1]}get to(){return this.context.start+this.context.buffer.buffer[this.index+2]}constructor(t,e,n){super(),this.context=t,this._parent=e,this.index=n,this.type=t.buffer.set.types[t.buffer.buffer[n]]}child(t,e,n){let{buffer:i}=this.context,s=i.findChild(this.index+4,i.buffer[this.index+3],t,e-this.context.start,n);return s<0?null:new K(this.context,this,s)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(t){return this.child(1,t,2)}childBefore(t){return this.child(-1,t,-2)}prop(t){return this.type.prop(t)}enter(t,e,n=0){if(n&I.ExcludeBuffers)return null;let{buffer:i}=this.context,s=i.findChild(this.index+4,i.buffer[this.index+3],e>0?1:-1,t-this.context.start,e);return s<0?null:new K(this.context,this,s)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(t){return this._parent?null:this.context.parent.nextChild(this.context.index+t,t,0,4)}get nextSibling(){let{buffer:t}=this.context,e=t.buffer[this.index+3];return e<(this._parent?t.buffer[this._parent.index+3]:t.buffer.length)?new K(this.context,this._parent,e):this.externalSibling(1)}get prevSibling(){let{buffer:t}=this.context,e=this._parent?this._parent.index+4:0;return this.index==e?this.externalSibling(-1):new K(this.context,this._parent,t.findChild(e,this.index,-1,0,4))}get tree(){return null}toTree(){let t=[],e=[],{buffer:n}=this.context,i=this.index+4,s=n.buffer[this.index+3];if(s>i){let l=n.buffer[this.index+1];t.push(n.slice(i,s,l)),e.push(0)}return new C(this.type,t,e,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}}function qe(r){if(!r.length)return null;let t=0,e=r[0];for(let s=1;s<r.length;s++){let l=r[s];(l.from>e.from||l.to<e.to)&&(e=l,t=s)}let n=e instanceof _&&e.index<0?null:e.parent,i=r.slice();return n?i[t]=n:i.splice(t,1),new Mn(i,e)}class Mn{constructor(t,e){this.heads=t,this.node=e}get next(){return qe(this.heads)}}function En(r,t,e){let n=r.resolveInner(t,e),i=null;for(let s=n instanceof _?n:n.context.parent;s;s=s.parent)if(s.index<0){let l=s.parent;(i||(i=[n])).push(l.resolve(t,e)),s=l}else{let l=xt.get(s.tree);if(l&&l.overlay&&l.overlay[0].from<=t&&l.overlay[l.overlay.length-1].to>=t){let o=new _(l.tree,l.overlay[0].from+s.from,-1,s);(i||(i=[n])).push(wt(o,t,e,!1))}}return i?qe(i):n}class Qt{get name(){return this.type.name}constructor(t,e=0){if(this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,this.mode=e&~I.EnterBracketed,t instanceof _)this.yieldNode(t);else{this._tree=t.context.parent,this.buffer=t.context;for(let n=t._parent;n;n=n._parent)this.stack.unshift(n.index);this.bufferNode=t,this.yieldBuf(t.index)}}yieldNode(t){return t?(this._tree=t,this.type=t.type,this.from=t.from,this.to=t.to,!0):!1}yieldBuf(t,e){this.index=t;let{start:n,buffer:i}=this.buffer;return this.type=e||i.set.types[i.buffer[t]],this.from=n+i.buffer[t+1],this.to=n+i.buffer[t+2],!0}yield(t){return t?t instanceof _?(this.buffer=null,this.yieldNode(t)):(this.buffer=t.context,this.yieldBuf(t.index,t.type)):!1}toString(){return this.buffer?this.buffer.buffer.childString(this.index):this._tree.toString()}enterChild(t,e,n){if(!this.buffer)return this.yield(this._tree.nextChild(t<0?this._tree._tree.children.length-1:0,t,e,n,this.mode));let{buffer:i}=this.buffer,s=i.findChild(this.index+4,i.buffer[this.index+3],t,e-this.buffer.start,n);return s<0?!1:(this.stack.push(this.index),this.yieldBuf(s))}firstChild(){return this.enterChild(1,0,4)}lastChild(){return this.enterChild(-1,0,4)}childAfter(t){return this.enterChild(1,t,2)}childBefore(t){return this.enterChild(-1,t,-2)}enter(t,e,n=this.mode){return this.buffer?n&I.ExcludeBuffers?!1:this.enterChild(1,t,e):this.yield(this._tree.enter(t,e,n))}parent(){if(!this.buffer)return this.yieldNode(this.mode&I.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let t=this.mode&I.IncludeAnonymous?this.buffer.parent:this.buffer.parent.nextSignificantParent();return this.buffer=null,this.yieldNode(t)}sibling(t){if(!this.buffer)return this._tree._parent?this.yield(this._tree.index<0?null:this._tree._parent.nextChild(this._tree.index+t,t,0,4,this.mode)):!1;let{buffer:e}=this.buffer,n=this.stack.length-1;if(t<0){let i=n<0?0:this.stack[n]+4;if(this.index!=i)return this.yieldBuf(e.findChild(i,this.index,-1,0,4))}else{let i=e.buffer[this.index+3];if(i<(n<0?e.buffer.length:e.buffer[this.stack[n]+3]))return this.yieldBuf(i)}return n<0?this.yield(this.buffer.parent.nextChild(this.buffer.index+t,t,0,4,this.mode)):!1}nextSibling(){return this.sibling(1)}prevSibling(){return this.sibling(-1)}atLastNode(t){let e,n,{buffer:i}=this;if(i){if(t>0){if(this.index<i.buffer.buffer.length)return!1}else for(let s=0;s<this.index;s++)if(i.buffer.buffer[s+3]<this.index)return!1;({index:e,parent:n}=i)}else({index:e,_parent:n}=this._tree);for(;n;{index:e,_parent:n}=n)if(e>-1)for(let s=e+t,l=t<0?-1:n._tree.children.length;s!=l;s+=t){let o=n._tree.children[s];if(this.mode&I.IncludeAnonymous||o instanceof it||!o.type.isAnonymous||se(o))return!1}return!0}move(t,e){if(e&&this.enterChild(t,0,4))return!0;for(;;){if(this.sibling(t))return!0;if(this.atLastNode(t)||!this.parent())return!1}}next(t=!0){return this.move(1,t)}prev(t=!0){return this.move(-1,t)}moveTo(t,e=0){for(;(this.from==this.to||(e<1?this.from>=t:this.from>t)||(e>-1?this.to<=t:this.to<t))&&this.parent(););for(;this.enterChild(1,t,e););return this}get node(){if(!this.buffer)return this._tree;let t=this.bufferNode,e=null,n=0;if(t&&t.context==this.buffer)t:for(let i=this.index,s=this.stack.length;s>=0;){for(let l=t;l;l=l._parent)if(l.index==i){if(i==this.index)return l;e=l,n=s+1;break t}i=this.stack[--s]}for(let i=n;i<this.stack.length;i++)e=new K(this.buffer,e,this.stack[i]);return this.bufferNode=new K(this.buffer,e,this.index)}get tree(){return this.buffer?null:this._tree._tree}iterate(t,e){for(let n=0;;){let i=!1;if(this.type.isAnonymous||t(this)!==!1){if(this.firstChild()){n++;continue}this.type.isAnonymous||(i=!0)}for(;;){if(i&&e&&e(this),i=this.type.isAnonymous,!n)return;if(this.nextSibling())break;this.parent(),n--,i=!0}}}matchContext(t){if(!this.buffer)return Kt(this.node.parent,t);let{buffer:e}=this.buffer,{types:n}=e.set;for(let i=t.length-1,s=this.stack.length-1;i>=0;s--){if(s<0)return Kt(this._tree,t,i);let l=n[e.buffer[this.stack[s]]];if(!l.isAnonymous){if(t[i]&&t[i]!=l.name)return!1;i--}}return!0}}function se(r){return r.children.some(t=>t instanceof it||!t.type.isAnonymous||se(t))}function Rn(r){var t;let{buffer:e,nodeSet:n,maxBufferLength:i=In,reused:s=[],minRepeatType:l=n.types.length}=r,o=Array.isArray(e)?new ie(e,e.length):e,a=n.types,h=0,f=0;function d(x,A,p,T,v,N){let{id:b,start:m,end:S,size:P}=o,D=f,tt=h;if(P<0)if(o.next(),P==-1){let X=s[b];p.push(X),T.push(m-x);return}else if(P==-3){h=b;return}else if(P==-4){f=b;return}else throw new RangeError(`Unrecognized record size: ${P}`);let gt=a[b],Nt,st,we=m-x;if(S-m<=i&&(st=j(o.pos-A,v))){let X=new Uint16Array(st.size-st.skip),W=o.pos-st.size,$=X.length;for(;o.pos>W;)$=M(st.start,X,$);Nt=new it(X,S-st.start,n),we=st.start-x}else{let X=o.pos-P;o.next();let W=[],$=[],lt=b>=l?b:-1,ut=0,It=S;for(;o.pos>X;)lt>=0&&o.id==lt&&o.size>=0?(o.end<=It-i&&(w(W,$,m,ut,o.end,It,lt,D,tt),ut=W.length,It=o.end),o.next()):N>2500?g(m,X,W,$):d(m,X,W,$,lt,N+1);if(lt>=0&&ut>0&&ut<W.length&&w(W,$,m,ut,m,It,lt,D,tt),W.reverse(),$.reverse(),lt>-1&&ut>0){let ve=k(gt,tt);Nt=le(gt,W,$,0,W.length,0,S-m,ve,ve)}else Nt=O(gt,W,$,S-m,D-S,tt)}p.push(Nt),T.push(we)}function g(x,A,p,T){let v=[],N=0,b=-1;for(;o.pos>A;){let{id:m,start:S,end:P,size:D}=o;if(D>4)o.next();else{if(b>-1&&S<b)break;b<0&&(b=P-i),v.push(m,S,P),N++,o.next()}}if(N){let m=new Uint16Array(N*4),S=v[v.length-2];for(let P=v.length-3,D=0;P>=0;P-=3)m[D++]=v[P],m[D++]=v[P+1]-S,m[D++]=v[P+2]-S,m[D++]=D;p.push(new it(m,v[2]-S,n)),T.push(S-x)}}function k(x,A){return(p,T,v)=>{let N=0,b=p.length-1,m,S;if(b>=0&&(m=p[b])instanceof C){if(!b&&m.type==x&&m.length==v)return m;(S=m.prop(y.lookAhead))&&(N=T[b]+m.length+S)}return O(x,p,T,v,N,A)}}function w(x,A,p,T,v,N,b,m,S){let P=[],D=[];for(;x.length>T;)P.push(x.pop()),D.push(A.pop()+p-v);x.push(O(n.types[b],P,D,N-v,m-N,S)),A.push(v-p)}function O(x,A,p,T,v,N,b){if(N){let m=[y.contextHash,N];b=b?[m].concat(b):[m]}if(v>25){let m=[y.lookAhead,v];b=b?[m].concat(b):[m]}return new C(x,A,p,T,b)}function j(x,A){let p=o.fork(),T=0,v=0,N=0,b=p.end-i,m={size:0,start:0,skip:0};t:for(let S=p.pos-x;p.pos>S;){let P=p.size;if(p.id==A&&P>=0){m.size=T,m.start=v,m.skip=N,N+=4,T+=4,p.next();continue}let D=p.pos-P;if(P<0||D<S||p.start<b)break;let tt=p.id>=l?4:0,gt=p.start;for(p.next();p.pos>D;){if(p.size<0)if(p.size==-3||p.size==-4)tt+=4;else break t;else p.id>=l&&(tt+=4);p.next()}v=gt,T+=P,N+=tt}return(A<0||T==x)&&(m.size=T,m.start=v,m.skip=N),m.size>4?m:void 0}function M(x,A,p){let{id:T,start:v,end:N,size:b}=o;if(o.next(),b>=0&&T<l){let m=p;if(b>4){let S=o.pos-(b-4);for(;o.pos>S;)p=M(x,A,p)}A[--p]=m,A[--p]=N-x,A[--p]=v-x,A[--p]=T}else b==-3?h=T:b==-4&&(f=T);return p}let F=[],B=[];for(;o.pos>0;)d(r.start||0,r.bufferStart||0,F,B,-1,0);let V=(t=r.length)!==null&&t!==void 0?t:F.length?B[0]+F[0].length:0;return new C(a[r.topID],F.reverse(),B.reverse(),V)}const Pe=new WeakMap;function Et(r,t){if(!r.isAnonymous||t instanceof it||t.type!=r)return 1;let e=Pe.get(t);if(e==null){e=1;for(let n of t.children){if(n.type!=r||!(n instanceof C)){e=1;break}e+=Et(r,n)}Pe.set(t,e)}return e}function le(r,t,e,n,i,s,l,o,a){let h=0;for(let w=n;w<i;w++)h+=Et(r,t[w]);let f=Math.ceil(h*1.5/8),d=[],g=[];function k(w,O,j,M,F){for(let B=j;B<M;){let V=B,x=O[B],A=Et(r,w[B]);for(B++;B<M;B++){let p=Et(r,w[B]);if(A+p>=f)break;A+=p}if(B==V+1){if(A>f){let p=w[V];k(p.children,p.positions,0,p.children.length,O[V]+F);continue}d.push(w[V])}else{let p=O[B-1]+w[B-1].length-x;d.push(le(r,w,O,V,B,x,p,null,a))}g.push(x+F-s)}}return k(t,e,n,i,0),(o||a)(d,g,l)}class Kr{constructor(){this.map=new WeakMap}setBuffer(t,e,n){let i=this.map.get(t);i||this.map.set(t,i=new Map),i.set(e,n)}getBuffer(t,e){let n=this.map.get(t);return n&&n.get(e)}set(t,e){t instanceof K?this.setBuffer(t.context.buffer,t.index,e):t instanceof _&&this.map.set(t.tree,e)}get(t){return t instanceof K?this.getBuffer(t.context.buffer,t.index):t instanceof _?this.map.get(t.tree):void 0}cursorSet(t,e){t.buffer?this.setBuffer(t.buffer.buffer,t.index,e):this.map.set(t.tree,e)}cursorGet(t){return t.buffer?this.getBuffer(t.buffer.buffer,t.index):this.map.get(t.tree)}}class at{constructor(t,e,n,i,s=!1,l=!1){this.from=t,this.to=e,this.tree=n,this.offset=i,this.open=(s?1:0)|(l?2:0)}get openStart(){return(this.open&1)>0}get openEnd(){return(this.open&2)>0}static addTree(t,e=[],n=!1){let i=[new at(0,t.length,t,0,!1,n)];for(let s of e)s.to>t.length&&i.push(s);return i}static applyChanges(t,e,n=128){if(!e.length)return t;let i=[],s=1,l=t.length?t[0]:null;for(let o=0,a=0,h=0;;o++){let f=o<e.length?e[o]:null,d=f?f.fromA:1e9;if(d-a>=n)for(;l&&l.from<d;){let g=l;if(a>=g.from||d<=g.to||h){let k=Math.max(g.from,a)-h,w=Math.min(g.to,d)-h;g=k>=w?null:new at(k,w,g.tree,g.offset+h,o>0,!!f)}if(g&&i.push(g),l.to>d)break;l=s<t.length?t[s++]:null}if(!f)break;a=f.toA,h=f.toA-f.toB}return i}}class Ge{startParse(t,e,n){return typeof t=="string"&&(t=new _n(t)),n=n?n.length?n.map(i=>new Ut(i.from,i.to)):[new Ut(0,0)]:[new Ut(0,t.length)],this.createParse(t,e||[],n)}parse(t,e,n){let i=this.startParse(t,e,n);for(;;){let s=i.advance();if(s)return s}}}class _n{constructor(t){this.string=t}get length(){return this.string.length}chunk(t){return this.string.slice(t)}get lineChunks(){return!1}read(t,e){return this.string.slice(t,e)}}new y({perNode:!0});let Ln=0;class H{constructor(t,e,n,i){this.name=t,this.set=e,this.base=n,this.modified=i,this.id=Ln++}toString(){let{name:t}=this;for(let e of this.modified)e.name&&(t=`${e.name}(${t})`);return t}static define(t,e){let n=typeof t=="string"?t:"?";if(t instanceof H&&(e=t),e?.base)throw new Error("Can not derive from a modified tag");let i=new H(n,[],null,[]);if(i.set.push(i),e)for(let s of e.set)i.set.push(s);return i}static defineModifier(t){let e=new Lt(t);return n=>n.modified.indexOf(e)>-1?n:Lt.get(n.base||n,n.modified.concat(e).sort((i,s)=>i.id-s.id))}}let zn=0;class Lt{constructor(t){this.name=t,this.instances=[],this.id=zn++}static get(t,e){if(!e.length)return t;let n=e[0].instances.find(o=>o.base==t&&Fn(e,o.modified));if(n)return n;let i=[],s=new H(t.name,i,t,e);for(let o of e)o.instances.push(s);let l=jn(e);for(let o of t.set)if(!o.modified.length)for(let a of l)i.push(Lt.get(o,a));return s}}function Fn(r,t){return r.length==t.length&&r.every((e,n)=>e==t[n])}function jn(r){let t=[[]];for(let e=0;e<r.length;e++)for(let n=0,i=t.length;n<i;n++)t.push(t[n].concat(r[e]));return t.sort((e,n)=>n.length-e.length)}function Wn(r){let t=Object.create(null);for(let e in r){let n=r[e];Array.isArray(n)||(n=[n]);for(let i of e.split(" "))if(i){let s=[],l=2,o=i;for(let d=0;;){if(o=="..."&&d>0&&d+3==i.length){l=1;break}let g=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(o);if(!g)throw new RangeError("Invalid path: "+i);if(s.push(g[0]=="*"?"":g[0][0]=='"'?JSON.parse(g[0]):g[0]),d+=g[0].length,d==i.length)break;let k=i[d++];if(d==i.length&&k=="!"){l=0;break}if(k!="/")throw new RangeError("Invalid path: "+i);o=i.slice(d)}let a=s.length-1,h=s[a];if(!h)throw new RangeError("Invalid path: "+i);let f=new vt(n,l,a>0?s.slice(0,a):null);t[h]=f.sort(t[h])}}return Je.add(t)}const Je=new y({combine(r,t){let e,n,i;for(;r||t;){if(!r||t&&r.depth>=t.depth?(i=t,t=t.next):(i=r,r=r.next),e&&e.mode==i.mode&&!i.context&&!e.context)continue;let s=new vt(i.tags,i.mode,i.context);e?e.next=s:n=s,e=s}return n}});class vt{constructor(t,e,n,i){this.tags=t,this.mode=e,this.context=n,this.next=i}get opaque(){return this.mode==0}get inherit(){return this.mode==1}sort(t){return!t||t.depth<this.depth?(this.next=t,this):(t.next=this.sort(t.next),t)}get depth(){return this.context?this.context.length:0}}vt.empty=new vt([],2,null);function Ke(r,t){let e=Object.create(null);for(let s of r)if(!Array.isArray(s.tag))e[s.tag.id]=s.class;else for(let l of s.tag)e[l.id]=s.class;let{scope:n,all:i=null}=t||{};return{style:s=>{let l=i;for(let o of s)for(let a of o.set){let h=e[a.id];if(h){l=l?l+" "+h:h;break}}return l},scope:n}}function Hn(r,t){let e=null;for(let n of r){let i=n.style(t);i&&(e=e?e+" "+i:i)}return e}function Un(r,t,e,n=0,i=r.length){let s=new Vn(n,Array.isArray(t)?t:[t],e);s.highlightRange(r.cursor(),n,i,"",s.highlighters),s.flush(i)}class Vn{constructor(t,e,n){this.at=t,this.highlighters=e,this.span=n,this.class=""}startSpan(t,e){e!=this.class&&(this.flush(t),t>this.at&&(this.at=t),this.class=e)}flush(t){t>this.at&&this.class&&this.span(this.at,t,this.class)}highlightRange(t,e,n,i,s){let{type:l,from:o,to:a}=t;if(o>=n||a<=e)return;l.isTop&&(s=this.highlighters.filter(k=>!k.scope||k.scope(l)));let h=i,f=$n(t)||vt.empty,d=Hn(s,f.tags);if(d&&(h&&(h+=" "),h+=d,f.mode==1&&(i+=(i?" ":"")+d)),this.startSpan(Math.max(e,o),h),f.opaque)return;let g=t.tree&&t.tree.prop(y.mounted);if(g&&g.overlay){let k=t.node.enter(g.overlay[0].from+o,1),w=this.highlighters.filter(j=>!j.scope||j.scope(g.tree.type)),O=t.firstChild();for(let j=0,M=o;;j++){let F=j<g.overlay.length?g.overlay[j]:null,B=F?F.from+o:a,V=Math.max(e,M),x=Math.min(n,B);if(V<x&&O)for(;t.from<x&&(this.highlightRange(t,V,x,i,s),this.startSpan(Math.min(x,t.to),h),!(t.to>=B||!t.nextSibling())););if(!F||B>n)break;M=F.to+o,M>e&&(this.highlightRange(k.cursor(),Math.max(e,F.from+o),Math.min(n,M),"",w),this.startSpan(Math.min(n,M),h))}O&&t.parent()}else if(t.firstChild()){g&&(i="");do if(!(t.to<=e)){if(t.from>=n)break;this.highlightRange(t,e,n,i,s),this.startSpan(Math.min(n,t.to),h)}while(t.nextSibling());t.parent()}}}function $n(r){let t=r.type.prop(Je);for(;t&&t.context&&!r.matchContext(t.context);)t=t.next;return t||null}const u=H.define,Ot=u(),et=u(),Te=u(et),Ne=u(et),nt=u(),Dt=u(nt),Vt=u(nt),J=u(),ot=u(J),q=u(),G=u(),Xt=u(),mt=u(Xt),Mt=u(),c={comment:Ot,lineComment:u(Ot),blockComment:u(Ot),docComment:u(Ot),name:et,variableName:u(et),typeName:Te,tagName:u(Te),propertyName:Ne,attributeName:u(Ne),className:u(et),labelName:u(et),namespace:u(et),macroName:u(et),literal:nt,string:Dt,docString:u(Dt),character:u(Dt),attributeValue:u(Dt),number:Vt,integer:u(Vt),float:u(Vt),bool:u(nt),regexp:u(nt),escape:u(nt),color:u(nt),url:u(nt),keyword:q,self:u(q),null:u(q),atom:u(q),unit:u(q),modifier:u(q),operatorKeyword:u(q),controlKeyword:u(q),definitionKeyword:u(q),moduleKeyword:u(q),operator:G,derefOperator:u(G),arithmeticOperator:u(G),logicOperator:u(G),bitwiseOperator:u(G),compareOperator:u(G),updateOperator:u(G),definitionOperator:u(G),typeOperator:u(G),controlOperator:u(G),punctuation:Xt,separator:u(Xt),bracket:mt,angleBracket:u(mt),squareBracket:u(mt),paren:u(mt),brace:u(mt),content:J,heading:ot,heading1:u(ot),heading2:u(ot),heading3:u(ot),heading4:u(ot),heading5:u(ot),heading6:u(ot),contentSeparator:u(J),list:u(J),quote:u(J),emphasis:u(J),strong:u(J),link:u(J),monospace:u(J),strikethrough:u(J),inserted:u(),deleted:u(),changed:u(),invalid:u(),meta:Mt,documentMeta:u(Mt),annotation:u(Mt),processingInstruction:u(Mt),definition:H.defineModifier("definition"),constant:H.defineModifier("constant"),function:H.defineModifier("function"),standard:H.defineModifier("standard"),local:H.defineModifier("local"),special:H.defineModifier("special")};for(let r in c){let t=c[r];t instanceof H&&(t.name=r)}Ke([{tag:c.link,class:"tok-link"},{tag:c.heading,class:"tok-heading"},{tag:c.emphasis,class:"tok-emphasis"},{tag:c.strong,class:"tok-strong"},{tag:c.keyword,class:"tok-keyword"},{tag:c.atom,class:"tok-atom"},{tag:c.bool,class:"tok-bool"},{tag:c.url,class:"tok-url"},{tag:c.labelName,class:"tok-labelName"},{tag:c.inserted,class:"tok-inserted"},{tag:c.deleted,class:"tok-deleted"},{tag:c.literal,class:"tok-literal"},{tag:c.string,class:"tok-string"},{tag:c.number,class:"tok-number"},{tag:[c.regexp,c.escape,c.special(c.string)],class:"tok-string2"},{tag:c.variableName,class:"tok-variableName"},{tag:c.local(c.variableName),class:"tok-variableName tok-local"},{tag:c.definition(c.variableName),class:"tok-variableName tok-definition"},{tag:c.special(c.variableName),class:"tok-variableName2"},{tag:c.definition(c.propertyName),class:"tok-propertyName tok-definition"},{tag:c.typeName,class:"tok-typeName"},{tag:c.namespace,class:"tok-namespace"},{tag:c.className,class:"tok-className"},{tag:c.macroName,class:"tok-macroName"},{tag:c.propertyName,class:"tok-propertyName"},{tag:c.operator,class:"tok-operator"},{tag:c.comment,class:"tok-comment"},{tag:c.meta,class:"tok-meta"},{tag:c.invalid,class:"tok-invalid"},{tag:c.punctuation,class:"tok-punctuation"}]);var $t;const rt=new y;function oe(r){return Q.define({combine:r?t=>t.concat(r):void 0})}const Qe=new y;class E{constructor(t,e,n=[],i=""){this.data=t,this.name=i,yt.prototype.hasOwnProperty("tree")||Object.defineProperty(yt.prototype,"tree",{get(){return z(this)}}),this.parser=e,this.extension=[Y.of(this),yt.languageData.of((s,l,o)=>{let a=Ie(s,l,o),h=a.type.prop(rt);if(!h)return[];let f=s.facet(h),d=a.type.prop(Qe);if(d){let g=a.resolve(l-a.from,o);for(let k of d)if(k.test(g,s)){let w=s.facet(k.facet);return k.type=="replace"?w:w.concat(f)}}return f})].concat(n)}isActiveAt(t,e,n=-1){return Ie(t,e,n).type.prop(rt)==this.data}findRegions(t){let e=t.facet(Y);if(e?.data==this.data)return[{from:0,to:t.doc.length}];if(!e||!e.allowsNesting)return[];let n=[],i=(s,l)=>{if(s.prop(rt)==this.data){n.push({from:l,to:l+s.length});return}let o=s.prop(y.mounted);if(o){if(o.tree.prop(rt)==this.data){if(o.overlay)for(let a of o.overlay)n.push({from:a.from+l,to:a.to+l});else n.push({from:l,to:l+s.length});return}else if(o.overlay){let a=n.length;if(i(o.tree,o.overlay[0].from+l),n.length>a)return}}for(let a=0;a<s.children.length;a++){let h=s.children[a];h instanceof C&&i(h,s.positions[a]+l)}};return i(z(t),0),n}get allowsNesting(){return!0}}E.setState=jt.define();function Ie(r,t,e){let n=r.facet(Y),i=z(r).topNode;if(!n||n.allowsNesting)for(let s=i;s;s=s.enter(t,e,I.ExcludeBuffers|I.EnterBracketed))s.type.isTop&&(i=s);return i}class zt extends E{constructor(t,e,n){super(t,e,[],n),this.parser=e}static define(t){let e=oe(t.languageData);return new zt(e,t.parser.configure({props:[rt.add(n=>n.isTop?e:void 0)]}),t.name)}configure(t,e){return new zt(this.data,this.parser.configure(t),e||this.name)}get allowsNesting(){return this.parser.hasWrappers()}}function z(r){let t=r.field(E.state,!1);return t?t.tree:C.empty}function Xe(r,t,e=50){var n;let i=(n=r.field(E.state,!1))===null||n===void 0?void 0:n.context;if(!i)return null;let s=i.viewport;i.updateViewport({from:0,to:t});let l=i.isDone(t)||i.work(e,t)?i.tree:null;return i.updateViewport(s),l}function qn(r,t=r.doc.length){var e;return((e=r.field(E.state,!1))===null||e===void 0?void 0:e.context.isDone(t))||!1}function Gn(r,t=r.viewport.to,e=100){let n=Xe(r.state,t,e);return n!=z(r.state)&&r.dispatch({}),!!n}function Jn(r){var t;return((t=r.plugin(tn))===null||t===void 0?void 0:t.isWorking())||!1}class Ye{constructor(t){this.doc=t,this.cursorPos=0,this.string="",this.cursor=t.iter()}get length(){return this.doc.length}syncTo(t){return this.string=this.cursor.next(t-this.cursorPos).value,this.cursorPos=t+this.string.length,this.cursorPos-this.string.length}chunk(t){return this.syncTo(t),this.string}get lineChunks(){return!0}read(t,e){let n=this.cursorPos-this.string.length;return t<n||e>=this.cursorPos?this.doc.sliceString(t,e):this.string.slice(t-n,e-n)}}let kt=null;class ht{constructor(t,e,n=[],i,s,l,o,a){this.parser=t,this.state=e,this.fragments=n,this.tree=i,this.treeLen=s,this.viewport=l,this.skipped=o,this.scheduleOn=a,this.parse=null,this.tempSkipped=[]}static create(t,e,n){return new ht(t,e,[],C.empty,0,n,[],null)}startParse(){return this.parser.startParse(new Ye(this.state.doc),this.fragments)}work(t,e){return e!=null&&e>=this.state.doc.length&&(e=void 0),this.tree!=C.empty&&this.isDone(e??this.state.doc.length)?(this.takeTree(),!0):this.withContext(()=>{var n;if(typeof t=="number"){let i=Date.now()+t;t=()=>Date.now()>i}for(this.parse||(this.parse=this.startParse()),e!=null&&(this.parse.stoppedAt==null||this.parse.stoppedAt>e)&&e<this.state.doc.length&&this.parse.stopAt(e);;){let i=this.parse.advance();if(i)if(this.fragments=this.withoutTempSkipped(at.addTree(i,this.fragments,this.parse.stoppedAt!=null)),this.treeLen=(n=this.parse.stoppedAt)!==null&&n!==void 0?n:this.state.doc.length,this.tree=i,this.parse=null,this.treeLen<(e??this.state.doc.length))this.parse=this.startParse();else return!0;if(t())return!1}})}takeTree(){let t,e;this.parse&&(t=this.parse.parsedPos)>=this.treeLen&&((this.parse.stoppedAt==null||this.parse.stoppedAt>t)&&this.parse.stopAt(t),this.withContext(()=>{for(;!(e=this.parse.advance()););}),this.treeLen=t,this.tree=e,this.fragments=this.withoutTempSkipped(at.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(t){let e=kt;kt=this;try{return t()}finally{kt=e}}withoutTempSkipped(t){for(let e;e=this.tempSkipped.pop();)t=Be(t,e.from,e.to);return t}changes(t,e){let{fragments:n,tree:i,treeLen:s,viewport:l,skipped:o}=this;if(this.takeTree(),!t.empty){let a=[];if(t.iterChangedRanges((h,f,d,g)=>a.push({fromA:h,toA:f,fromB:d,toB:g})),n=at.applyChanges(n,a),i=C.empty,s=0,l={from:t.mapPos(l.from,-1),to:t.mapPos(l.to,1)},this.skipped.length){o=[];for(let h of this.skipped){let f=t.mapPos(h.from,1),d=t.mapPos(h.to,-1);f<d&&o.push({from:f,to:d})}}}return new ht(this.parser,e,n,i,s,l,o,this.scheduleOn)}updateViewport(t){if(this.viewport.from==t.from&&this.viewport.to==t.to)return!1;this.viewport=t;let e=this.skipped.length;for(let n=0;n<this.skipped.length;n++){let{from:i,to:s}=this.skipped[n];i<t.to&&s>t.from&&(this.fragments=Be(this.fragments,i,s),this.skipped.splice(n--,1))}return this.skipped.length>=e?!1:(this.reset(),!0)}reset(){this.parse&&(this.takeTree(),this.parse=null)}skipUntilInView(t,e){this.skipped.push({from:t,to:e})}static getSkippingParser(t){return new class extends Ge{createParse(e,n,i){let s=i[0].from,l=i[i.length-1].to;return{parsedPos:s,advance(){let a=kt;if(a){for(let h of i)a.tempSkipped.push(h);t&&(a.scheduleOn=a.scheduleOn?Promise.all([a.scheduleOn,t]):t)}return this.parsedPos=l,new C(L.none,[],[],l-s)},stoppedAt:null,stopAt(){}}}}}isDone(t){t=Math.min(t,this.state.doc.length);let e=this.fragments;return this.treeLen>=t&&e.length&&e[0].from==0&&e[0].to>=t}static get(){return kt}}function Be(r,t,e){return at.applyChanges(r,[{fromA:t,toA:e,fromB:t,toB:e}])}class ct{constructor(t){this.context=t,this.tree=t.tree}apply(t){if(!t.docChanged&&this.tree==this.context.tree)return this;let e=this.context.changes(t.changes,t.state),n=this.context.treeLen==t.startState.doc.length?void 0:Math.max(t.changes.mapPos(this.context.treeLen),e.viewport.to);return e.work(20,n)||e.takeTree(),new ct(e)}static init(t){let e=Math.min(3e3,t.doc.length),n=ht.create(t.facet(Y).parser,t,{from:0,to:e});return n.work(20,e)||n.takeTree(),new ct(n)}}E.state=je.define({create:ct.init,update(r,t){for(let e of t.effects)if(e.is(E.setState))return e.value;return t.startState.facet(Y)!=t.state.facet(Y)?ct.init(t.state):r.apply(t)}});let Ze=r=>{let t=setTimeout(()=>r(),500);return()=>clearTimeout(t)};typeof requestIdleCallback<"u"&&(Ze=r=>{let t=-1,e=setTimeout(()=>{t=requestIdleCallback(r,{timeout:400})},100);return()=>t<0?clearTimeout(e):cancelIdleCallback(t)});const qt=typeof navigator<"u"&&(!(($t=navigator.scheduling)===null||$t===void 0)&&$t.isInputPending)?()=>navigator.scheduling.isInputPending():null,tn=Pt.fromClass(class{constructor(t){this.view=t,this.working=null,this.workScheduled=0,this.chunkEnd=-1,this.chunkBudget=-1,this.work=this.work.bind(this),this.scheduleWork()}update(t){let e=this.view.state.field(E.state).context;(e.updateViewport(t.view.viewport)||this.view.viewport.to>e.treeLen)&&this.scheduleWork(),(t.docChanged||t.selectionSet)&&(this.view.hasFocus&&(this.chunkBudget+=50),this.scheduleWork()),this.checkAsyncSchedule(e)}scheduleWork(){if(this.working)return;let{state:t}=this.view,e=t.field(E.state);(e.tree!=e.context.tree||!e.context.isDone(t.doc.length))&&(this.working=Ze(this.work))}work(t){this.working=null;let e=Date.now();if(this.chunkEnd<e&&(this.chunkEnd<0||this.view.hasFocus)&&(this.chunkEnd=e+3e4,this.chunkBudget=3e3),this.chunkBudget<=0)return;let{state:n,viewport:{to:i}}=this.view,s=n.field(E.state);if(s.tree==s.context.tree&&s.context.isDone(i+1e5))return;let l=Date.now()+Math.min(this.chunkBudget,100,t&&!qt?Math.max(25,t.timeRemaining()-5):1e9),o=s.context.treeLen<i&&n.doc.length>i+1e3,a=s.context.work(()=>qt&&qt()||Date.now()>l,i+(o?0:1e5));this.chunkBudget-=Date.now()-e,(a||this.chunkBudget<=0)&&(s.context.takeTree(),this.view.dispatch({effects:E.setState.of(new ct(s.context))})),this.chunkBudget>0&&!(a&&!o)&&this.scheduleWork(),this.checkAsyncSchedule(s.context)}checkAsyncSchedule(t){t.scheduleOn&&(this.workScheduled++,t.scheduleOn.then(()=>this.scheduleWork()).catch(e=>Nn(this.view.state,e)).then(()=>this.workScheduled--),t.scheduleOn=null)}destroy(){this.working&&this.working()}isWorking(){return!!(this.working||this.workScheduled>0)}},{eventHandlers:{focus(){this.scheduleWork()}}}),Y=Q.define({combine(r){return r.length?r[0]:null},enables:r=>[E.state,tn,U.contentAttributes.compute([r],t=>{let e=t.facet(r);return e&&e.name?{"data-language":e.name}:{}})]});class Kn{constructor(t,e=[]){this.language=t,this.support=e,this.extension=[t,e]}}class ae{constructor(t,e,n,i,s,l=void 0){this.name=t,this.alias=e,this.extensions=n,this.filename=i,this.loadFunc=s,this.support=l,this.loading=null}load(){return this.loading||(this.loading=this.loadFunc().then(t=>this.support=t,t=>{throw this.loading=null,t}))}static of(t){let{load:e,support:n}=t;if(!e){if(!n)throw new RangeError("Must pass either 'load' or 'support' to LanguageDescription.of");e=()=>Promise.resolve(n)}return new ae(t.name,(t.alias||[]).concat(t.name).map(i=>i.toLowerCase()),t.extensions||[],t.filename,e,n)}static matchFilename(t,e){for(let i of t)if(i.filename&&i.filename.test(e))return i;let n=/\.([^.]+)$/.exec(e);if(n){for(let i of t)if(i.extensions.indexOf(n[1])>-1)return i}return null}static matchLanguageName(t,e,n=!0){e=e.toLowerCase();for(let i of t)if(i.alias.some(s=>s==e))return i;if(n)for(let i of t)for(let s of i.alias){let l=e.indexOf(s);if(l>-1&&(s.length>2||!/\w/.test(e[l-1])&&!/\w/.test(e[l+s.length])))return i}return null}}const en=Q.define(),he=Q.define({combine:r=>{if(!r.length)return" ";let t=r[0];if(!t||/\S/.test(t)||Array.from(t).some(e=>e!=t[0]))throw new Error("Invalid indent unit: "+JSON.stringify(r[0]));return t}});function St(r){let t=r.facet(he);return t.charCodeAt(0)==9?r.tabSize*t.length:t.length}function fe(r,t){let e="",n=r.tabSize,i=r.facet(he)[0];if(i==" "){for(;t>=n;)e+=" ",t-=n;i=" "}for(let s=0;s<t;s++)e+=i;return e}function ue(r,t){r instanceof yt&&(r=new Wt(r));for(let n of r.state.facet(en)){let i=n(r,t);if(i!==void 0)return i}let e=z(r.state);return e.length>=t?Xn(r,e,t):null}function Qn(r,t,e){let n=Object.create(null),i=new Wt(r,{overrideIndentation:l=>{var o;return(o=n[l])!==null&&o!==void 0?o:-1}}),s=[];for(let l=t;l<=e;){let o=r.doc.lineAt(l);l=o.to+1;let a=ue(i,o.from);if(a==null)continue;/\S/.test(o.text)||(a=0);let h=/^\s*/.exec(o.text)[0],f=fe(r,a);h!=f&&(n[o.from]=a,s.push({from:o.from,to:o.from+h.length,insert:f}))}return r.changes(s)}class Wt{constructor(t,e={}){this.state=t,this.options=e,this.unit=St(t)}lineAt(t,e=1){let n=this.state.doc.lineAt(t),{simulateBreak:i,simulateDoubleBreak:s}=this.options;return i!=null&&i>=n.from&&i<=n.to?s&&i==t?{text:"",from:t}:(e<0?i<t:i<=t)?{text:n.text.slice(i-n.from),from:i}:{text:n.text.slice(0,i-n.from),from:n.from}:n}textAfterPos(t,e=1){if(this.options.simulateDoubleBreak&&t==this.options.simulateBreak)return"";let{text:n,from:i}=this.lineAt(t,e);return n.slice(t-i,Math.min(n.length,t+100-i))}column(t,e=1){let{text:n,from:i}=this.lineAt(t,e),s=this.countColumn(n,t-i),l=this.options.overrideIndentation?this.options.overrideIndentation(i):-1;return l>-1&&(s+=l-this.countColumn(n,n.search(/\S|$/))),s}countColumn(t,e=t.length){return An(t,this.state.tabSize,e)}lineIndent(t,e=1){let{text:n,from:i}=this.lineAt(t,e),s=this.options.overrideIndentation;if(s){let l=s(i);if(l>-1)return l}return this.countColumn(n,n.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}}const ce=new y;function Xn(r,t,e){let n=t.resolveStack(e),i=t.resolveInner(e,-1).resolve(e,0).enterUnfinishedNodesBefore(e);if(i!=n.node){let s=[];for(let l=i;l&&!(l.from<n.node.from||l.to>n.node.to||l.from==n.node.from&&l.type==n.node.type);l=l.parent)s.push(l);for(let l=s.length-1;l>=0;l--)n={node:s[l],next:n}}return nn(n,r,e)}function nn(r,t,e){for(let n=r;n;n=n.next){let i=Zn(n.node);if(i)return i(Ht.create(t,e,n))}return 0}function Yn(r){return r.pos==r.options.simulateBreak&&r.options.simulateDoubleBreak}function Zn(r){let t=r.type.prop(ce);if(t)return t;let e=r.firstChild,n;if(e&&(n=e.type.prop(y.closedBy))){let i=r.lastChild,s=i&&n.indexOf(i.name)>-1;return l=>rn(l,!0,1,void 0,s&&!Yn(l)?i.from:void 0)}return r.parent==null?tr:null}function tr(){return 0}class Ht extends Wt{constructor(t,e,n){super(t.state,t.options),this.base=t,this.pos=e,this.context=n}get node(){return this.context.node}static create(t,e,n){return new Ht(t,e,n)}get textAfter(){return this.textAfterPos(this.pos)}get baseIndent(){return this.baseIndentFor(this.node)}baseIndentFor(t){let e=this.state.doc.lineAt(t.from);for(;;){let n=t.resolve(e.from);for(;n.parent&&n.parent.from==n.from;)n=n.parent;if(er(n,t))break;e=this.state.doc.lineAt(n.from)}return this.lineIndent(e.from)}continue(){return nn(this.context.next,this.base,this.pos)}}function er(r,t){for(let e=t;e;e=e.parent)if(r==e)return!0;return!1}function nr(r){let t=r.node,e=t.childAfter(t.from),n=t.lastChild;if(!e)return null;let i=r.options.simulateBreak,s=r.state.doc.lineAt(e.from),l=i==null||i<=s.from?s.to:Math.min(s.to,i);for(let o=e.to;;){let a=t.childAfter(o);if(!a||a==n)return null;if(!a.type.isSkipped){if(a.from>=l)return null;let h=/^ */.exec(s.text.slice(e.to-s.from))[0].length;return{from:e.from,to:e.to+h}}o=a.to}}function rr({closing:r,align:t=!0,units:e=1}){return n=>rn(n,t,e,r)}function rn(r,t,e,n,i){let s=r.textAfter,l=s.match(/^\s*/)[0].length,o=n&&s.slice(l,l+n.length)==n||i==r.pos+l,a=t?nr(r):null;return a?o?r.column(a.from):r.column(a.to):r.baseIndent+(o?0:r.unit*e)}const ir=r=>r.baseIndent;function sr({except:r,units:t=1}={}){return e=>{let n=r&&r.test(e.textAfter);return e.baseIndent+(n?0:t*e.unit)}}const lr=200;function or(){return yt.transactionFilter.of(r=>{if(!r.docChanged||!r.isUserEvent("input.type")&&!r.isUserEvent("input.complete"))return r;let t=r.startState.languageDataAt("indentOnInput",r.startState.selection.main.head);if(!t.length)return r;let e=r.newDoc,{head:n}=r.newSelection.main,i=e.lineAt(n);if(n>i.from+lr)return r;let s=e.sliceString(i.from,n);if(!t.some(h=>h.test(s)))return r;let{state:l}=r,o=-1,a=[];for(let{head:h}of l.selection.ranges){let f=l.doc.lineAt(h);if(f.from==o)continue;o=f.from;let d=ue(l,f.from);if(d==null)continue;let g=/^\s*/.exec(f.text)[0],k=fe(l,d);g!=k&&a.push({from:f.from,to:f.from+g.length,insert:k})}return a.length?[r,{changes:a,sequential:!0}]:r})}const sn=Q.define(),ln=new y;function ar(r){let t=r.firstChild,e=r.lastChild;return t&&t.to<e.from?{from:t.to,to:e.type.isError?r.to:e.from}:null}function hr(r,t,e){let n=z(r);if(n.length<e)return null;let i=n.resolveStack(e,1),s=null;for(let l=i;l;l=l.next){let o=l.node;if(o.to<=e||o.from>e)continue;if(s&&o.from<t)break;let a=o.type.prop(ln);if(a&&(o.to<n.length-50||n.length==r.doc.length||!fr(o))){let h=a(o,r);h&&h.from<=e&&h.from>=t&&h.to>e&&(s=h)}}return s}function fr(r){let t=r.lastChild;return t&&t.to==r.to&&t.type.isError}function dt(r,t,e){for(let n of r.facet(sn)){let i=n(r,t,e);if(i)return i}return hr(r,t,e)}function on(r,t){let e=t.mapPos(r.from,1),n=t.mapPos(r.to,-1);return e>=n?void 0:{from:e,to:n}}const pt=jt.define({map:on}),ft=jt.define({map:on});function de(r){let t=[];for(let{head:e}of r.state.selection.ranges)t.some(n=>n.from<=e&&n.to>=e)||t.push(r.lineBlockAt(e));return t}const Z=je.define({create(){return R.none},update(r,t){t.isUserEvent("delete")&&t.changes.iterChangedRanges((n,i)=>r=Oe(r,n,i)),r=r.map(t.changes);let e=[];for(let n of t.effects)n.is(pt)&&!cr(r,n.value.from,n.value.to)?e.push(n.value):n.is(ft)&&(r=r.update({filter:(i,s)=>n.value.from!=i||n.value.to!=s,filterFrom:n.value.from,filterTo:n.value.to}));if(e.length){let{preparePlaceholder:n}=t.state.facet(ge),i=e.map(s=>(n?R.replace({widget:new kr(n(t.state,s))}):De).range(s.from,s.to));r=r.update({add:i})}return t.selection&&(r=Oe(r,t.selection.main.head)),r},provide:r=>U.decorations.from(r),toJSON(r,t){let e=[];return r.between(0,t.doc.length,(n,i)=>{e.push(n,i)}),e},fromJSON(r){if(!Array.isArray(r)||r.length%2)throw new RangeError("Invalid JSON for fold state");let t=[];for(let e=0;e<r.length;){let n=r[e++],i=r[e++];if(typeof n!="number"||typeof i!="number")throw new RangeError("Invalid JSON for fold state");t.push(De.range(n,i))}return R.set(t,!0)}});function Oe(r,t,e=t){let n=!1;return r.between(t,e,(i,s)=>{i<e&&s>t&&(n=!0)}),n?r.update({filterFrom:t,filterTo:e,filter:(i,s)=>i>=e||s<=t}):r}function ur(r){return r.field(Z,!1)||Fe.empty}function Ct(r,t,e){var n;let i=null;return(n=r.field(Z,!1))===null||n===void 0||n.between(t,e,(s,l)=>{(!i||i.from>s)&&(i={from:s,to:l})}),i}function cr(r,t,e){let n=!1;return r.between(t,t,(i,s)=>{i==t&&s==e&&(n=!0)}),n}function pe(r,t){return r.field(Z,!1)?t:t.concat(jt.appendConfig.of(me()))}const an=r=>{for(let t of de(r)){let e=dt(r.state,t.from,t.to);if(e)return r.dispatch({effects:pe(r.state,[pt.of(e),Ft(r,e)])}),!0}return!1},hn=r=>{if(!r.state.field(Z,!1))return!1;let t=[];for(let e of de(r)){let n=Ct(r.state,e.from,e.to);n&&t.push(ft.of(n),Ft(r,n,!1))}return t.length&&r.dispatch({effects:t}),t.length>0};function Ft(r,t,e=!0){let n=r.state.doc.lineAt(t.from).number,i=r.state.doc.lineAt(t.to).number;return U.announce.of(`${r.state.phrase(e?"Folded lines":"Unfolded lines")} ${n} ${r.state.phrase("to")} ${i}.`)}const fn=r=>{let{state:t}=r,e=[];for(let n=0;n<t.doc.length;){let i=r.lineBlockAt(n),s=dt(t,i.from,i.to);s&&e.push(pt.of(s)),n=(s?r.lineBlockAt(s.to):i).to+1}return e.length&&r.dispatch({effects:pe(r.state,e)}),!!e.length},un=r=>{let t=r.state.field(Z,!1);if(!t||!t.size)return!1;let e=[];return t.between(0,r.state.doc.length,(n,i)=>{e.push(ft.of({from:n,to:i}))}),r.dispatch({effects:e}),!0};function dr(r,t){for(let e=t;;){let n=dt(r.state,e.from,e.to);if(n&&n.to>t.from)return n;if(!e.from)return null;e=r.lineBlockAt(e.from-1)}}const pr=r=>{let t=[];for(let e of de(r)){let n=Ct(r.state,e.from,e.to);if(n)t.push(ft.of(n),Ft(r,n,!1));else{let i=dr(r,e);i&&t.push(pt.of(i),Ft(r,i))}}return t.length>0&&r.dispatch({effects:pe(r.state,t)}),!!t.length},gr=[{key:"Ctrl-Shift-[",mac:"Cmd-Alt-[",run:an},{key:"Ctrl-Shift-]",mac:"Cmd-Alt-]",run:hn},{key:"Ctrl-Alt-[",run:fn},{key:"Ctrl-Alt-]",run:un}],mr={placeholderDOM:null,preparePlaceholder:null,placeholderText:"…"},ge=Q.define({combine(r){return He(r,mr)}});function me(r){let t=[Z,xr];return r&&t.push(ge.of(r)),t}function cn(r,t){let{state:e}=r,n=e.facet(ge),i=l=>{let o=r.lineBlockAt(r.posAtDOM(l.target)),a=Ct(r.state,o.from,o.to);a&&r.dispatch({effects:ft.of(a)}),l.preventDefault()};if(n.placeholderDOM)return n.placeholderDOM(r,i,t);let s=document.createElement("span");return s.textContent=n.placeholderText,s.setAttribute("aria-label",e.phrase("folded code")),s.title=e.phrase("unfold"),s.className="cm-foldPlaceholder",s.onclick=i,s}const De=R.replace({widget:new class extends Ue{toDOM(r){return cn(r,null)}}});class kr extends Ue{constructor(t){super(),this.value=t}eq(t){return this.value==t.value}toDOM(t){return cn(t,this.value)}}const br={openText:"⌄",closedText:"›",markerDOM:null,domEventHandlers:{},foldingChanged:()=>!1};class Gt extends Tn{constructor(t,e){super(),this.config=t,this.open=e}eq(t){return this.config==t.config&&this.open==t.open}toDOM(t){if(this.config.markerDOM)return this.config.markerDOM(this.open);let e=document.createElement("span");return e.textContent=this.open?this.config.openText:this.config.closedText,e.title=t.state.phrase(this.open?"Fold line":"Unfold line"),e}}function yr(r={}){let t={...br,...r},e=new Gt(t,!0),n=new Gt(t,!1),i=Pt.fromClass(class{constructor(l){this.from=l.viewport.from,this.markers=this.buildMarkers(l)}update(l){(l.docChanged||l.viewportChanged||l.startState.facet(Y)!=l.state.facet(Y)||l.startState.field(Z,!1)!=l.state.field(Z,!1)||z(l.startState)!=z(l.state)||t.foldingChanged(l))&&(this.markers=this.buildMarkers(l.view))}buildMarkers(l){let o=new ne;for(let a of l.viewportLineBlocks){let h=Ct(l.state,a.from,a.to)?n:dt(l.state,a.from,a.to)?e:null;h&&o.add(a.from,a.from,h)}return o.finish()}}),{domEventHandlers:s}=t;return[i,Pn({class:"cm-foldGutter",markers(l){var o;return((o=l.plugin(i))===null||o===void 0?void 0:o.markers)||Fe.empty},initialSpacer(){return new Gt(t,!1)},domEventHandlers:{...s,click:(l,o,a)=>{if(s.click&&s.click(l,o,a))return!0;let h=Ct(l.state,o.from,o.to);if(h)return l.dispatch({effects:ft.of(h)}),!0;let f=dt(l.state,o.from,o.to);return f?(l.dispatch({effects:pt.of(f)}),!0):!1}}}),me()]}const xr=U.baseTheme({".cm-foldPlaceholder":{backgroundColor:"#eee",border:"1px solid #ddd",color:"#888",borderRadius:".2em",margin:"0 1px",padding:"0 1px",cursor:"pointer"},".cm-foldGutter span":{padding:"0 1px",cursor:"pointer"}});class Tt{constructor(t,e){this.specs=t;let n;function i(o){let a=Se.newName();return(n||(n=Object.create(null)))["."+a]=o,a}const s=typeof e.all=="string"?e.all:e.all?i(e.all):void 0,l=e.scope;this.scope=l instanceof E?o=>o.prop(rt)==l.data:l?o=>o==l:void 0,this.style=Ke(t.map(o=>({tag:o.tag,class:o.class||i(Object.assign({},o,{tag:null}))})),{all:s}).style,this.module=n?new Se(n):null,this.themeType=e.themeType}static define(t,e){return new Tt(t,e||{})}}const Yt=Q.define(),dn=Q.define({combine(r){return r.length?[r[0]]:null}});function Rt(r){let t=r.facet(Yt);return t.length?t:r.facet(dn)}function wr(r,t){let e=[Cr],n;return r instanceof Tt&&(r.module&&e.push(U.styleModule.of(r.module)),n=r.themeType),t?.fallback?e.push(dn.of(r)):n?e.push(Yt.computeN([U.darkTheme],i=>i.facet(U.darkTheme)==(n=="dark")?[r]:[])):e.push(Yt.of(r)),e}function vr(r,t,e){let n=Rt(r),i=null;if(n){for(let s of n)if(!s.scope||e&&s.scope(e)){let l=s.style(t);l&&(i=i?i+" "+l:l)}}return i}class Sr{constructor(t){this.markCache=Object.create(null),this.tree=z(t.state),this.decorations=this.buildDeco(t,Rt(t.state)),this.decoratedTo=t.viewport.to}update(t){let e=z(t.state),n=Rt(t.state),i=n!=Rt(t.startState),{viewport:s}=t.view,l=t.changes.mapPos(this.decoratedTo,1);e.length<s.to&&!i&&e.type==this.tree.type&&l>=s.to?(this.decorations=this.decorations.map(t.changes),this.decoratedTo=l):(e!=this.tree||t.viewportChanged||i)&&(this.tree=e,this.decorations=this.buildDeco(t.view,n),this.decoratedTo=s.to)}buildDeco(t,e){if(!e||!this.tree.length)return R.none;let n=new ne;for(let{from:i,to:s}of t.visibleRanges)Un(this.tree,e,(l,o,a)=>{n.add(l,o,this.markCache[a]||(this.markCache[a]=R.mark({class:a})))},i,s);return n.finish()}}const Cr=We.high(Pt.fromClass(Sr,{decorations:r=>r.decorations})),Ar=Tt.define([{tag:c.meta,color:"#404740"},{tag:c.link,textDecoration:"underline"},{tag:c.heading,textDecoration:"underline",fontWeight:"bold"},{tag:c.emphasis,fontStyle:"italic"},{tag:c.strong,fontWeight:"bold"},{tag:c.strikethrough,textDecoration:"line-through"},{tag:c.keyword,color:"#708"},{tag:[c.atom,c.bool,c.url,c.contentSeparator,c.labelName],color:"#219"},{tag:[c.literal,c.inserted],color:"#164"},{tag:[c.string,c.deleted],color:"#a11"},{tag:[c.regexp,c.escape,c.special(c.string)],color:"#e40"},{tag:c.definition(c.variableName),color:"#00f"},{tag:c.local(c.variableName),color:"#30a"},{tag:[c.typeName,c.namespace],color:"#085"},{tag:c.className,color:"#167"},{tag:[c.special(c.variableName),c.macroName],color:"#256"},{tag:c.definition(c.propertyName),color:"#00c"},{tag:c.comment,color:"#940"},{tag:c.invalid,color:"#f00"}]),Pr=U.baseTheme({"&.cm-focused .cm-matchingBracket":{backgroundColor:"#328c8252"},"&.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bb555544"}}),pn=1e4,gn="()[]{}",mn=Q.define({combine(r){return He(r,{afterCursor:!0,brackets:gn,maxScanDistance:pn,renderMatch:Ir})}}),Tr=R.mark({class:"cm-matchingBracket"}),Nr=R.mark({class:"cm-nonmatchingBracket"});function Ir(r){let t=[],e=r.matched?Tr:Nr;return t.push(e.range(r.start.from,r.start.to)),r.end&&t.push(e.range(r.end.from,r.end.to)),t}function Me(r){let t=[],e=r.facet(mn);for(let n of r.selection.ranges){if(!n.empty)continue;let i=bt(r,n.head,-1,e)||n.head>0&&bt(r,n.head-1,1,e)||e.afterCursor&&(bt(r,n.head,1,e)||n.head<r.doc.length&&bt(r,n.head+1,-1,e));i&&(t=t.concat(e.renderMatch(i,r)))}return R.set(t,!0)}const Br=Pt.fromClass(class{constructor(r){this.paused=!1,this.decorations=Me(r.state)}update(r){(r.docChanged||r.selectionSet||this.paused)&&(r.view.composing?(this.decorations=this.decorations.map(r.changes),this.paused=!0):(this.decorations=Me(r.state),this.paused=!1))}},{decorations:r=>r.decorations}),Or=[Br,Pr];function Dr(r={}){return[mn.of(r),Or]}const kn=new y;function Zt(r,t,e){let n=r.prop(t<0?y.openedBy:y.closedBy);if(n)return n;if(r.name.length==1){let i=e.indexOf(r.name);if(i>-1&&i%2==(t<0?1:0))return[e[i+t]]}return null}function te(r){let t=r.type.prop(kn);return t?t(r.node):r}function bt(r,t,e,n={}){let i=n.maxScanDistance||pn,s=n.brackets||gn,l=z(r),o=l.resolveInner(t,e);for(let a=o;a;a=a.parent){let h=Zt(a.type,e,s);if(h&&a.from<a.to){let f=te(a);if(f&&(e>0?t>=f.from&&t<f.to:t>f.from&&t<=f.to))return Mr(r,t,e,a,f,h,s)}}return Er(r,t,e,l,o.type,i,s)}function Mr(r,t,e,n,i,s,l){let o=n.parent,a={from:i.from,to:i.to},h=0,f=o?.cursor();if(f&&(e<0?f.childBefore(n.from):f.childAfter(n.to)))do if(e<0?f.to<=n.from:f.from>=n.to){if(h==0&&s.indexOf(f.type.name)>-1&&f.from<f.to){let d=te(f);return{start:a,end:d?{from:d.from,to:d.to}:void 0,matched:!0}}else if(Zt(f.type,e,l))h++;else if(Zt(f.type,-e,l)){if(h==0){let d=te(f);return{start:a,end:d&&d.from<d.to?{from:d.from,to:d.to}:void 0,matched:!1}}h--}}while(e<0?f.prevSibling():f.nextSibling());return{start:a,matched:!1}}function Er(r,t,e,n,i,s,l){if(e<0?!t:t==r.doc.length)return null;let o=e<0?r.sliceDoc(t-1,t):r.sliceDoc(t,t+1),a=l.indexOf(o);if(a<0||a%2==0!=e>0)return null;let h={from:e<0?t-1:t,to:e>0?t+1:t},f=r.doc.iterRange(t,e>0?r.doc.length:0),d=0;for(let g=0;!f.next().done&&g<=s;){let k=f.value;e<0&&(g+=k.length);let w=t+g*e;for(let O=e>0?0:k.length-1,j=e>0?k.length:-1;O!=j;O+=e){let M=l.indexOf(k[O]);if(!(M<0||n.resolveInner(w+O,1).type!=i))if(M%2==0==e>0)d++;else{if(d==1)return{start:h,end:{from:w+O,to:w+O+1},matched:M>>1==a>>1};d--}}e>0&&(g+=k.length)}return f.done?{start:h,matched:!1}:null}function Ee(r,t,e,n=0,i=0){t==null&&(t=r.search(/[^\s\u00a0]/),t==-1&&(t=r.length));let s=i;for(let l=n;l<t;l++)r.charCodeAt(l)==9?s+=e-s%e:s++;return s}class ke{constructor(t,e,n,i){this.string=t,this.tabSize=e,this.indentUnit=n,this.overrideIndent=i,this.pos=0,this.start=0,this.lastColumnPos=0,this.lastColumnValue=0}eol(){return this.pos>=this.string.length}sol(){return this.pos==0}peek(){return this.string.charAt(this.pos)||void 0}next(){if(this.pos<this.string.length)return this.string.charAt(this.pos++)}eat(t){let e=this.string.charAt(this.pos),n;if(typeof t=="string"?n=e==t:n=e&&(t instanceof RegExp?t.test(e):t(e)),n)return++this.pos,e}eatWhile(t){let e=this.pos;for(;this.eat(t););return this.pos>e}eatSpace(){let t=this.pos;for(;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>t}skipToEnd(){this.pos=this.string.length}skipTo(t){let e=this.string.indexOf(t,this.pos);if(e>-1)return this.pos=e,!0}backUp(t){this.pos-=t}column(){return this.lastColumnPos<this.start&&(this.lastColumnValue=Ee(this.string,this.start,this.tabSize,this.lastColumnPos,this.lastColumnValue),this.lastColumnPos=this.start),this.lastColumnValue}indentation(){var t;return(t=this.overrideIndent)!==null&&t!==void 0?t:Ee(this.string,null,this.tabSize)}match(t,e,n){if(typeof t=="string"){let i=l=>n?l.toLowerCase():l,s=this.string.substr(this.pos,t.length);return i(s)==i(t)?(e!==!1&&(this.pos+=t.length),!0):null}else{let i=this.string.slice(this.pos).match(t);return i&&i.index>0?null:(i&&e!==!1&&(this.pos+=i[0].length),i)}}current(){return this.string.slice(this.start,this.pos)}}function Rr(r){return{name:r.name||"",token:r.token,blankLine:r.blankLine||(()=>{}),startState:r.startState||(()=>!0),copyState:r.copyState||_r,indent:r.indent||(()=>null),languageData:r.languageData||{},tokenTable:r.tokenTable||xe,mergeTokens:r.mergeTokens!==!1}}function _r(r){if(typeof r!="object")return r;let t={};for(let e in r){let n=r[e];t[e]=n instanceof Array?n.slice():n}return t}const Re=new WeakMap;class be extends E{constructor(t){let e=oe(t.languageData),n=Rr(t),i,s=new class extends Ge{createParse(l,o,a){return new zr(i,l,o,a)}};super(e,s,[],t.name),this.topNode=Wr(e,this),i=this,this.streamParser=n,this.stateAfter=new y({perNode:!0}),this.tokenTable=t.tokenTable?new wn(n.tokenTable):jr}static define(t){return new be(t)}getIndent(t){let e,{overrideIndentation:n}=t.options;n&&(e=Re.get(t.state),e!=null&&e<t.pos-1e4&&(e=void 0));let i=ye(this,t.node.tree,t.node.from,t.node.from,e??t.pos),s,l;if(i?(l=i.state,s=i.pos+1):(l=this.streamParser.startState(t.unit),s=t.node.from),t.pos-s>1e4)return null;for(;s<t.pos;){let a=t.state.doc.lineAt(s),h=Math.min(t.pos,a.to);if(a.length){let f=n?n(a.from):-1,d=new ke(a.text,t.state.tabSize,t.unit,f<0?void 0:f);for(;d.pos<h-a.from;)yn(this.streamParser.token,d,l)}else this.streamParser.blankLine(l,t.unit);if(h==t.pos)break;s=a.to+1}let o=t.lineAt(t.pos);return n&&e==null&&Re.set(t.state,o.from),this.streamParser.indent(l,/^\s*(.*)/.exec(o.text)[1],t)}get allowsNesting(){return!1}}function ye(r,t,e,n,i){let s=e>=n&&e+t.length<=i&&t.prop(r.stateAfter);if(s)return{state:r.streamParser.copyState(s),pos:e+t.length};for(let l=t.children.length-1;l>=0;l--){let o=t.children[l],a=e+t.positions[l],h=o instanceof C&&a<i&&ye(r,o,a,n,i);if(h)return h}return null}function bn(r,t,e,n,i){if(i&&e<=0&&n>=t.length)return t;!i&&e==0&&t.type==r.topNode&&(i=!0);for(let s=t.children.length-1;s>=0;s--){let l=t.positions[s],o=t.children[s],a;if(l<n&&o instanceof C){if(!(a=bn(r,o,e-l,n-l,i)))break;return i?new C(t.type,t.children.slice(0,s).concat(a),t.positions.slice(0,s+1),l+a.length):a}}return null}function Lr(r,t,e,n,i){for(let s of t){let l=s.from+(s.openStart?25:0),o=s.to-(s.openEnd?25:0),a=l<=e&&o>e&&ye(r,s.tree,0-s.offset,e,o),h;if(a&&a.pos<=n&&(h=bn(r,s.tree,e+s.offset,a.pos+s.offset,!1)))return{state:a.state,tree:h}}return{state:r.streamParser.startState(i?St(i):4),tree:C.empty}}class zr{constructor(t,e,n,i){this.lang=t,this.input=e,this.fragments=n,this.ranges=i,this.stoppedAt=null,this.chunks=[],this.chunkPos=[],this.chunk=[],this.chunkReused=void 0,this.rangeIndex=0,this.to=i[i.length-1].to;let s=ht.get(),l=i[0].from,{state:o,tree:a}=Lr(t,n,l,this.to,s?.state);this.state=o,this.parsedPos=this.chunkStart=l+a.length;for(let h=0;h<a.children.length;h++)this.chunks.push(a.children[h]),this.chunkPos.push(a.positions[h]);s&&this.parsedPos<s.viewport.from-1e5&&i.some(h=>h.from<=s.viewport.from&&h.to>=s.viewport.from)&&(this.state=this.lang.streamParser.startState(St(s.state)),s.skipUntilInView(this.parsedPos,s.viewport.from),this.parsedPos=s.viewport.from),this.moveRangeIndex()}advance(){let t=ht.get(),e=this.stoppedAt==null?this.to:Math.min(this.to,this.stoppedAt),n=Math.min(e,this.chunkStart+512);for(t&&(n=Math.min(n,t.viewport.to));this.parsedPos<n;)this.parseLine(t);return this.chunkStart<this.parsedPos&&this.finishChunk(),this.parsedPos>=e?this.finish():t&&this.parsedPos>=t.viewport.to?(t.skipUntilInView(this.parsedPos,e),this.finish()):null}stopAt(t){this.stoppedAt=t}lineAfter(t){let e=this.input.chunk(t);if(this.input.lineChunks)e==`
|
|
2
|
+
`&&(e="");else{let n=e.indexOf(`
|
|
3
|
+
`);n>-1&&(e=e.slice(0,n))}return t+e.length<=this.to?e:e.slice(0,this.to-t)}nextLine(){let t=this.parsedPos,e=this.lineAfter(t),n=t+e.length;for(let i=this.rangeIndex;;){let s=this.ranges[i].to;if(s>=n||(e=e.slice(0,s-(n-e.length)),i++,i==this.ranges.length))break;let l=this.ranges[i].from,o=this.lineAfter(l);e+=o,n=l+o.length}return{line:e,end:n}}skipGapsTo(t,e,n){for(;;){let i=this.ranges[this.rangeIndex].to,s=t+e;if(n>0?i>s:i>=s)break;let l=this.ranges[++this.rangeIndex].from;e+=l-i}return e}moveRangeIndex(){for(;this.ranges[this.rangeIndex].to<this.parsedPos;)this.rangeIndex++}emitToken(t,e,n,i){let s=4;if(this.ranges.length>1){i=this.skipGapsTo(e,i,1),e+=i;let o=this.chunk.length;i=this.skipGapsTo(n,i,-1),n+=i,s+=this.chunk.length-o}let l=this.chunk.length-4;return this.lang.streamParser.mergeTokens&&s==4&&l>=0&&this.chunk[l]==t&&this.chunk[l+2]==e?this.chunk[l+2]=n:this.chunk.push(t,e,n,s),i}parseLine(t){let{line:e,end:n}=this.nextLine(),i=0,{streamParser:s}=this.lang,l=new ke(e,t?t.state.tabSize:4,t?St(t.state):2);if(l.eol())s.blankLine(this.state,l.indentUnit);else for(;!l.eol();){let o=yn(s.token,l,this.state);if(o&&(i=this.emitToken(this.lang.tokenTable.resolve(o),this.parsedPos+l.start,this.parsedPos+l.pos,i)),l.start>1e4)break}this.parsedPos=n,this.moveRangeIndex(),this.parsedPos<this.to&&this.parsedPos++}finishChunk(){let t=C.build({buffer:this.chunk,start:this.chunkStart,length:this.parsedPos-this.chunkStart,nodeSet:Fr,topID:0,maxBufferLength:512,reused:this.chunkReused});t=new C(t.type,t.children,t.positions,t.length,[[this.lang.stateAfter,this.lang.streamParser.copyState(this.state)]]),this.chunks.push(t),this.chunkPos.push(this.chunkStart-this.ranges[0].from),this.chunk=[],this.chunkReused=void 0,this.chunkStart=this.parsedPos}finish(){return new C(this.lang.topNode,this.chunks,this.chunkPos,this.parsedPos-this.ranges[0].from).balance()}}function yn(r,t,e){t.start=t.pos;for(let n=0;n<10;n++){let i=r(t,e);if(t.pos>t.start)return i}throw new Error("Stream parser failed to advance stream.")}const xe=Object.create(null),At=[L.none],Fr=new re(At),_e=[],Le=Object.create(null),xn=Object.create(null);for(let[r,t]of[["variable","variableName"],["variable-2","variableName.special"],["string-2","string.special"],["def","variableName.definition"],["tag","tagName"],["attribute","attributeName"],["type","typeName"],["builtin","variableName.standard"],["qualifier","modifier"],["error","invalid"],["header","heading"],["property","propertyName"]])xn[r]=vn(xe,t);class wn{constructor(t){this.extra=t,this.table=Object.assign(Object.create(null),xn)}resolve(t){return t?this.table[t]||(this.table[t]=vn(this.extra,t)):0}}const jr=new wn(xe);function Jt(r,t){_e.indexOf(r)>-1||(_e.push(r),console.warn(t))}function vn(r,t){let e=[];for(let o of t.split(" ")){let a=[];for(let h of o.split(".")){let f=r[h]||c[h];f?typeof f=="function"?a.length?a=a.map(f):Jt(h,`Modifier ${h} used at start of tag`):a.length?Jt(h,`Tag ${h} used as modifier`):a=Array.isArray(f)?f:[f]:Jt(h,`Unknown highlighting tag ${h}`)}for(let h of a)e.push(h)}if(!e.length)return 0;let n=t.replace(/ /g,"_"),i=n+" "+e.map(o=>o.id),s=Le[i];if(s)return s.id;let l=Le[i]=L.define({id:At.length,name:n,props:[Wn({[n]:e})]});return At.push(l),l.id}function Wr(r,t){let e=L.define({id:At.length,name:"Document",props:[rt.add(()=>r),ce.add(()=>n=>t.getIndent(n))],top:!0});return At.push(e),e}function Sn(r){return r.length<=4096&&/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\ufb50-\ufdff]/.test(r)}function Cn(r){for(let t=r.iter();!t.next().done;)if(Sn(t.value))return!0;return!1}function Hr(r){let t=!1;return r.iterChanges((e,n,i,s,l)=>{!t&&Cn(l)&&(t=!0)}),t}const ee=Q.define({combine:r=>r.some(t=>t)});function Ur(r={}){let t=[Vr];return r.alwaysIsolate&&t.push(ee.of(!0)),t}const Vr=Pt.fromClass(class{constructor(r){this.always=r.state.facet(ee)||r.textDirection!=_t.LTR||r.state.facet(U.perLineTextDirection),this.hasRTL=!this.always&&Cn(r.state.doc),this.tree=z(r.state),this.decorations=this.always||this.hasRTL?ze(r,this.tree,this.always):R.none}update(r){let t=r.state.facet(ee)||r.view.textDirection!=_t.LTR||r.state.facet(U.perLineTextDirection);if(!t&&!this.hasRTL&&Hr(r.changes)&&(this.hasRTL=!0),!t&&!this.hasRTL)return;let e=z(r.state);(t!=this.always||e!=this.tree||r.docChanged||r.viewportChanged)&&(this.tree=e,this.always=t,this.decorations=ze(r.view,e,t))}},{provide:r=>{function t(e){var n,i;return(i=(n=e.plugin(r))===null||n===void 0?void 0:n.decorations)!==null&&i!==void 0?i:R.none}return[U.outerDecorations.of(t),We.lowest(U.bidiIsolatedRanges.of(t))]}});function ze(r,t,e){let n=new ne,i=r.visibleRanges;e||(i=$r(i,r.state.doc));for(let{from:s,to:l}of i)t.iterate({enter:o=>{let a=o.type.prop(y.isolate);a&&n.add(o.from,o.to,qr[a])},from:s,to:l});return n.finish()}function $r(r,t){let e=t.iter(),n=0,i=[],s=null;for(let{from:l,to:o}of r)if(!(s&&s.to>l&&(l=s.to,l>=o)))for(n+e.value.length<l&&(e.next(l-(n+e.value.length)),n=l);;){let a=n,h=n+e.value.length;if(!e.lineBreak&&Sn(e.value)&&(s&&s.to>a-10?s.to=Math.min(o,h):i.push(s={from:a,to:Math.min(o,h)})),h>=o)break;n=h,e.next()}return i}const qr={rtl:R.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"rtl"},bidiIsolate:_t.RTL}),ltr:R.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"ltr"},bidiIsolate:_t.LTR}),auto:R.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"auto"},bidiIsolate:null})},Xr=Object.freeze(Object.defineProperty({__proto__:null,DocInput:Ye,HighlightStyle:Tt,IndentContext:Wt,LRLanguage:zt,Language:E,LanguageDescription:ae,LanguageSupport:Kn,ParseContext:ht,StreamLanguage:be,StringStream:ke,TreeIndentContext:Ht,bidiIsolates:Ur,bracketMatching:Dr,bracketMatchingHandle:kn,codeFolding:me,continuedIndent:sr,defaultHighlightStyle:Ar,defineLanguageFacet:oe,delimitedIndent:rr,ensureSyntaxTree:Xe,flatIndent:ir,foldAll:fn,foldCode:an,foldEffect:pt,foldGutter:yr,foldInside:ar,foldKeymap:gr,foldNodeProp:ln,foldService:sn,foldState:Z,foldable:dt,foldedRanges:ur,forceParsing:Gn,getIndentUnit:St,getIndentation:ue,highlightingFor:vr,indentNodeProp:ce,indentOnInput:or,indentRange:Qn,indentService:en,indentString:fe,indentUnit:he,language:Y,languageDataProp:rt,matchBrackets:bt,sublanguageProp:Qe,syntaxHighlighting:wr,syntaxParserRunning:Jn,syntaxTree:z,syntaxTreeAvailable:qn,toggleFold:pr,unfoldAll:un,unfoldCode:hn,unfoldEffect:ft},Symbol.toStringTag,{value:"Module"}));export{In as D,Tt as H,Wt as I,Kn as L,y as N,Ge as P,C as T,St as a,he as b,re as c,L as d,I as e,wr as f,ue as g,Wn as h,fe as i,zt as j,ce as k,sr as l,bt as m,ln as n,ar as o,ir as p,rr as q,Qe as r,z as s,c as t,oe as u,Kr as v,Xr as w};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{g as U,s as ue,E as S,a as fe,V as X,D as f,c as m,r as de}from"./index-DgapqSPi.js";import{codePointAt as me,fromCodePoint as ge,codePointSize as pe,EditorState as xe,EditorSelection as p,StateEffect as _,StateField as Se,Facet as Y,combineConfig as Z,Prec as Me,CharCategory as g,RangeSetBuilder as ve,findClusterBreak as ee}from"./index-BP6wv2A0.js";const G=typeof String.prototype.normalize=="function"?t=>t.normalize("NFKD"):t=>t;class b{constructor(e,r,n=0,i=e.length,s,l){this.test=l,this.value={from:0,to:0,precise:!1},this.done=!1,this.matches=[],this.buffer="",this.bufferPos=0,this.iter=e.iterRange(n,i),this.bufferStart=n,this.normalize=s?c=>s(G(c)):G,this.query=this.normalize(r)}peek(){if(this.bufferPos==this.buffer.length){if(this.bufferStart+=this.buffer.length,this.iter.next(),this.iter.done)return-1;this.bufferPos=0,this.buffer=this.iter.value}return me(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let e=this.peek();if(e<0)return this.done=!0,this;let r=ge(e),n=this.bufferStart+this.bufferPos;this.bufferPos+=pe(e);let i=this.normalize(r);if(i.length)for(let s=0,l=n,c=!0;;s++){let o=i.charCodeAt(s),a=this.match(o,l,c,this.bufferPos+this.bufferStart,s==i.length-1);if(a)return this.value=a,this;if(s==i.length-1)break;c&&s<r.length&&r.charCodeAt(s)==o?l++:c=!1}}}match(e,r,n,i,s){let l=null;for(let c=0;c<this.matches.length;){let o=this.matches[c],a=!1;this.query.charCodeAt(o.index)==e&&(o.index==this.query.length-1?l={from:o.from,to:i,precise:s&&o.precise}:(o.index++,a=!0)),a?c++:this.matches.splice(c,1)}return this.query.charCodeAt(0)==e&&(this.query.length==1?l={from:r,to:i,precise:n&&s}:this.matches.push({from:r,index:1,precise:n})),l&&this.test&&!this.test(l.from,l.to,this.buffer,this.bufferStart)&&(l=null),l}}typeof Symbol<"u"&&(b.prototype[Symbol.iterator]=function(){return this});const te={from:-1,to:-1,match:/.*/.exec(""),precise:!0},z="gm"+(/x/.unicode==null?"":"u");class re{constructor(e,r,n,i=0,s=e.length){if(this.text=e,this.to=s,this.curLine="",this.done=!1,this.value=te,/\\[sWDnr]|\n|\r|\[\^/.test(r))return new ne(e,r,n,i,s);this.re=new RegExp(r,z+(n?.ignoreCase?"i":"")),this.test=n?.test,this.iter=e.iter();let l=e.lineAt(i);this.curLineStart=l.from,this.matchPos=D(e,i),this.getLine(this.curLineStart)}getLine(e){this.iter.next(e),this.iter.lineBreak?this.curLine="":(this.curLine=this.iter.value,this.curLineStart+this.curLine.length>this.to&&(this.curLine=this.curLine.slice(0,this.to-this.curLineStart)),this.iter.next())}nextLine(){this.curLineStart=this.curLineStart+this.curLine.length+1,this.curLineStart>this.to?this.curLine="":this.getLine(0)}next(){for(let e=this.matchPos-this.curLineStart;;){this.re.lastIndex=e;let r=this.matchPos<=this.to&&this.re.exec(this.curLine);if(r){let n=this.curLineStart+r.index,i=n+r[0].length;if(this.matchPos=D(this.text,i+(n==i?1:0)),n==this.curLineStart+this.curLine.length&&this.nextLine(),(n<i||n>this.value.to)&&(!this.test||this.test(n,i,r)))return this.value={from:n,to:i,precise:!0,match:r},this;e=this.matchPos-this.curLineStart}else if(this.curLineStart+this.curLine.length<this.to)this.nextLine(),e=0;else return this.done=!0,this}}}const O=new WeakMap;class C{constructor(e,r){this.from=e,this.text=r}get to(){return this.from+this.text.length}static get(e,r,n){let i=O.get(e);if(!i||i.from>=n||i.to<=r){let c=new C(r,e.sliceString(r,n));return O.set(e,c),c}if(i.from==r&&i.to==n)return i;let{text:s,from:l}=i;return l>r&&(s=e.sliceString(r,l)+s,l=r),i.to<n&&(s+=e.sliceString(i.to,n)),O.set(e,new C(l,s)),new C(r,s.slice(r-l,n-l))}}class ne{constructor(e,r,n,i,s){this.text=e,this.to=s,this.done=!1,this.value=te,this.matchPos=D(e,i),this.re=new RegExp(r,z+(n?.ignoreCase?"i":"")),this.test=n?.test,this.flat=C.get(e,i,this.chunkEnd(i+5e3))}chunkEnd(e){return e>=this.to?this.to:this.text.lineAt(e).to}next(){for(;;){let e=this.re.lastIndex=this.matchPos-this.flat.from,r=this.re.exec(this.flat.text);if(r&&!r[0]&&r.index==e&&(this.re.lastIndex=e+1,r=this.re.exec(this.flat.text)),r){let n=this.flat.from+r.index,i=n+r[0].length;if((this.flat.to>=this.to||r.index+r[0].length<=this.flat.text.length-10)&&(!this.test||this.test(n,i,r)))return this.value={from:n,to:i,precise:!0,match:r},this.matchPos=D(this.text,i+(n==i?1:0)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=C.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}}typeof Symbol<"u"&&(re.prototype[Symbol.iterator]=ne.prototype[Symbol.iterator]=function(){return this});function ye(t){try{return new RegExp(t,z),!0}catch{return!1}}function D(t,e){if(e>=t.length)return e;let r=t.lineAt(e),n;for(;e<r.to&&(n=r.text.charCodeAt(e-r.from))>=56320&&n<57344;)e++;return e}const Ce=t=>{let{state:e}=t,r=String(e.doc.lineAt(t.state.selection.main.head).number),{close:n,result:i}=ue(t,{label:e.phrase("Go to line"),input:{type:"text",name:"line",value:r},focus:!0,submitLabel:e.phrase("go")});return i.then(s=>{let l=s&&/^([+-])?(\d+)?(:\d+)?(%)?$/.exec(s.elements.line.value);if(!l){t.dispatch({effects:n});return}let c=e.doc.lineAt(e.selection.main.head),[,o,a,h,d]=l,A=h?+h.slice(1):0,k=a?+a:c.number;if(a&&d){let T=k/100;o&&(T=T*(o=="-"?-1:1)+c.number/e.doc.lines),k=Math.round(e.doc.lines*T)}else a&&o&&(k=k*(o=="-"?-1:1)+c.number);let H=e.doc.line(Math.max(1,Math.min(e.doc.lines,k))),K=p.cursor(H.from+Math.max(0,Math.min(A,H.length)));t.dispatch({effects:[n,S.scrollIntoView(K.from,{y:"center"})],selection:K})}),!0},be={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},ie=Y.define({combine(t){return Z(t,be,{highlightWordAroundCursor:(e,r)=>e||r,minSelectionLength:Math.min,maxMatches:Math.min})}});function je(t){let e=[Ee,Ae];return t&&e.push(ie.of(t)),e}const ke=f.mark({class:"cm-selectionMatch"}),Le=f.mark({class:"cm-selectionMatch cm-selectionMatch-main"});function j(t,e,r,n){return(r==0||t(e.sliceDoc(r-1,r))!=g.Word)&&(n==e.doc.length||t(e.sliceDoc(n,n+1))!=g.Word)}function We(t,e,r,n){return t(e.sliceDoc(r,r+1))==g.Word&&t(e.sliceDoc(n-1,n))==g.Word}const Ae=X.fromClass(class{constructor(t){this.decorations=this.getDeco(t)}update(t){(t.selectionSet||t.docChanged||t.viewportChanged)&&(this.decorations=this.getDeco(t.view))}getDeco(t){let e=t.state.facet(ie),{state:r}=t,n=r.selection;if(n.ranges.length>1)return f.none;let i=n.main,s,l=null;if(i.empty){if(!e.highlightWordAroundCursor)return f.none;let o=r.wordAt(i.head);if(!o)return f.none;l=r.charCategorizer(i.head),s=r.sliceDoc(o.from,o.to)}else{let o=i.to-i.from;if(o<e.minSelectionLength||o>200)return f.none;if(e.wholeWords){if(s=r.sliceDoc(i.from,i.to),l=r.charCategorizer(i.head),!(j(l,r,i.from,i.to)&&We(l,r,i.from,i.to)))return f.none}else if(s=r.sliceDoc(i.from,i.to),!s)return f.none}let c=[];for(let o of t.visibleRanges){let a=new b(r.doc,s,o.from,o.to);for(;!a.next().done;){let{from:h,to:d}=a.value;if((!l||j(l,r,h,d))&&(i.empty&&h<=i.from&&d>=i.to?c.push(Le.range(h,d)):(h>=i.to||d<=i.from)&&c.push(ke.range(h,d)),c.length>e.maxMatches))return f.none}}return f.set(c)}},{decorations:t=>t.decorations}),Ee=S.baseTheme({".cm-selectionMatch":{backgroundColor:"#99ff7780"},".cm-searchMatch .cm-selectionMatch":{backgroundColor:"transparent"}}),Fe=({state:t,dispatch:e})=>{let{selection:r}=t,n=p.create(r.ranges.map(i=>t.wordAt(i.head)||p.cursor(i.head)),r.mainIndex);return n.eq(r)?!1:(e(t.update({selection:n})),!0)};function De(t,e){let{main:r,ranges:n}=t.selection,i=t.wordAt(r.head),s=i&&i.from==r.from&&i.to==r.to;for(let l=!1,c=new b(t.doc,e,n[n.length-1].to);;)if(c.next(),c.done){if(l)return null;c=new b(t.doc,e,0,Math.max(0,n[n.length-1].from-1)),l=!0}else{if(l&&n.some(o=>o.from==c.value.from))continue;if(s){let o=t.wordAt(c.value.from);if(!o||o.from!=c.value.from||o.to!=c.value.to)continue}return c.value}}const Re=({state:t,dispatch:e})=>{let{ranges:r}=t.selection;if(r.some(s=>s.from===s.to))return Fe({state:t,dispatch:e});let n=t.sliceDoc(r[0].from,r[0].to);if(t.selection.ranges.some(s=>t.sliceDoc(s.from,s.to)!=n))return!1;let i=De(t,n);return i?(e(t.update({selection:t.selection.addRange(p.range(i.from,i.to),!1),effects:S.scrollIntoView(i.to)})),!0):!1},M=Y.define({combine(t){return Z(t,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:e=>new Ve(e),scrollToMatch:e=>S.scrollIntoView(e)})}});function Je(t){return t?[M.of(t),Q]:Q}class se{constructor(e){this.search=e.search,this.caseSensitive=!!e.caseSensitive,this.literal=!!e.literal,this.regexp=!!e.regexp,this.replace=e.replace||"",this.valid=!!this.search&&(!this.regexp||ye(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!e.wholeWord,this.test=e.test}unquote(e){return this.literal?e:e.replace(/\\([nrt\\])/g,(r,n)=>n=="n"?`
|
|
2
|
+
`:n=="r"?"\r":n=="t"?" ":"\\")}eq(e){return this.search==e.search&&this.replace==e.replace&&this.caseSensitive==e.caseSensitive&&this.regexp==e.regexp&&this.wholeWord==e.wholeWord&&this.test==e.test}create(){return this.regexp?new Oe(this):new Pe(this)}getCursor(e,r=0,n){let i=e.doc?e:xe.create({doc:e});return n==null&&(n=i.doc.length),this.regexp?y(this,i,r,n):v(this,i,r,n)}}class le{constructor(e){this.spec=e}}function qe(t,e,r){return(n,i,s,l)=>{if(r&&!r(n,i,s,l))return!1;let c=n>=l&&i<=l+s.length?s.slice(n-l,i-l):e.doc.sliceString(n,i);return t(c,e,n,i)}}function v(t,e,r,n){let i;return t.wholeWord&&(i=we(e.doc,e.charCategorizer(e.selection.main.head))),t.test&&(i=qe(t.test,e,i)),new b(e.doc,t.unquoted,r,n,t.caseSensitive?void 0:s=>s.toLowerCase(),i)}function we(t,e){return(r,n,i,s)=>((s>r||s+i.length<n)&&(s=Math.max(0,r-2),i=t.sliceString(s,Math.min(t.length,n+2))),(e(R(i,r-s))!=g.Word||e(q(i,r-s))!=g.Word)&&(e(q(i,n-s))!=g.Word||e(R(i,n-s))!=g.Word))}class Pe extends le{constructor(e){super(e)}nextMatch(e,r,n){let i=v(this.spec,e,n,e.doc.length).nextOverlapping();if(i.done){let s=Math.min(e.doc.length,r+this.spec.unquoted.length);i=v(this.spec,e,0,s).nextOverlapping()}return i.done||i.value.from==r&&i.value.to==n?null:i.value}prevMatchInRange(e,r,n){for(let i=n;;){let s=Math.max(r,i-1e4-this.spec.unquoted.length),l=v(this.spec,e,s,i),c=null;for(;!l.nextOverlapping().done;)c=l.value;if(c)return c;if(s==r)return null;i-=1e4}}prevMatch(e,r,n){let i=this.prevMatchInRange(e,0,r);return i||(i=this.prevMatchInRange(e,Math.max(0,n-this.spec.unquoted.length),e.doc.length)),i&&(i.from!=r||i.to!=n)?i:null}getReplacement(e){return this.spec.unquote(this.spec.replace)}matchAll(e,r){let n=v(this.spec,e,0,e.doc.length),i=[];for(;!n.next().done;){if(i.length>=r)return null;i.push(n.value)}return i}highlight(e,r,n,i){let s=v(this.spec,e,Math.max(0,r-this.spec.unquoted.length),Math.min(n+this.spec.unquoted.length,e.doc.length));for(;!s.next().done;)i(s.value.from,s.value.to)}}function Ie(t,e,r){return(n,i,s)=>(!r||r(n,i,s))&&t(s[0],e,n,i)}function y(t,e,r,n){let i;return t.wholeWord&&(i=Te(e.charCategorizer(e.selection.main.head))),t.test&&(i=Ie(t.test,e,i)),new re(e.doc,t.search,{ignoreCase:!t.caseSensitive,test:i},r,n)}function R(t,e){return t.slice(ee(t,e,!1),e)}function q(t,e){return t.slice(e,ee(t,e))}function Te(t){return(e,r,n)=>!n[0].length||(t(R(n.input,n.index))!=g.Word||t(q(n.input,n.index))!=g.Word)&&(t(q(n.input,n.index+n[0].length))!=g.Word||t(R(n.input,n.index+n[0].length))!=g.Word)}class Oe extends le{nextMatch(e,r,n){let i=y(this.spec,e,n,e.doc.length).next();return i.done&&(i=y(this.spec,e,0,r).next()),i.done?null:i.value}prevMatchInRange(e,r,n){for(let i=1;;i++){let s=Math.max(r,n-i*1e4),l=y(this.spec,e,s,n),c=null;for(;!l.next().done;)c=l.value;if(c&&(s==r||c.from>s+10))return c;if(s==r)return null}}prevMatch(e,r,n){return this.prevMatchInRange(e,0,r)||this.prevMatchInRange(e,n,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace).replace(/\$([$&]|\d+)/g,(r,n)=>{if(n=="&")return e.match[0];if(n=="$")return"$";for(let i=n.length;i>0;i--){let s=+n.slice(0,i);if(s>0&&s<e.match.length)return e.match[s]+n.slice(i)}return r})}matchAll(e,r){let n=y(this.spec,e,0,e.doc.length),i=[];for(;!n.next().done;){if(i.length>=r)return null;i.push(n.value)}return i}highlight(e,r,n,i){let s=y(this.spec,e,Math.max(0,r-250),Math.min(n+250,e.doc.length));for(;!s.next().done;)i(s.value.from,s.value.to)}}const L=_.define(),B=_.define(),x=Se.define({create(t){return new $(I(t).create(),null)},update(t,e){for(let r of e.effects)r.is(L)?t=new $(r.value.create(),t.panel):r.is(B)&&(t=new $(t.query,r.value?N:null));return t},provide:t=>fe.from(t,e=>e.panel)});function Ue(t){let e=t.field(x,!1);return e?e.query.spec:I(t)}function Xe(t){var e;return((e=t.field(x,!1))===null||e===void 0?void 0:e.panel)!=null}class ${constructor(e,r){this.query=e,this.panel=r}}const $e=f.mark({class:"cm-searchMatch"}),Qe=f.mark({class:"cm-searchMatch cm-searchMatch-selected"}),_e=X.fromClass(class{constructor(t){this.view=t,this.decorations=this.highlight(t.state.field(x))}update(t){let e=t.state.field(x);(e!=t.startState.field(x)||t.docChanged||t.selectionSet||t.viewportChanged)&&(this.decorations=this.highlight(e))}highlight({query:t,panel:e}){if(!e||!t.spec.valid)return f.none;let{view:r}=this,n=new ve;for(let i=0,s=r.visibleRanges,l=s.length;i<l;i++){let{from:c,to:o}=s[i];for(;i<l-1&&o>s[i+1].from-500;)o=s[++i].to;t.highlight(r.state,c,o,(a,h)=>{let d=r.state.selection.ranges.some(A=>A.from==a&&A.to==h);n.add(a,h,d?Qe:$e)})}return n.finish()}},{decorations:t=>t.decorations});function W(t){return e=>{let r=e.state.field(x,!1);return r&&r.query.spec.valid?t(e,r):ae(e)}}const w=W((t,{query:e})=>{let{to:r}=t.state.selection.main,n=e.nextMatch(t.state,r,r);if(!n)return!1;let i=p.single(n.from,n.to),s=t.state.facet(M);return t.dispatch({selection:i,effects:[V(t,n),s.scrollToMatch(i.main,t)],userEvent:"select.search"}),oe(t),!0}),P=W((t,{query:e})=>{let{state:r}=t,{from:n}=r.selection.main,i=e.prevMatch(r,n,n);if(!i)return!1;let s=p.single(i.from,i.to),l=t.state.facet(M);return t.dispatch({selection:s,effects:[V(t,i),l.scrollToMatch(s.main,t)],userEvent:"select.search"}),oe(t),!0}),ze=W((t,{query:e})=>{let r=e.matchAll(t.state,1e3);return!r||!r.length?!1:(t.dispatch({selection:p.create(r.map(n=>p.range(n.from,n.to))),userEvent:"select.search.matches"}),!0)}),Be=({state:t,dispatch:e})=>{let r=t.selection;if(r.ranges.length>1||r.main.empty)return!1;let{from:n,to:i}=r.main,s=[],l=0;for(let c=new b(t.doc,t.sliceDoc(n,i));!c.next().done;){if(s.length>1e3)return!1;c.value.from==n&&(l=s.length),s.push(p.range(c.value.from,c.value.to))}return e(t.update({selection:p.create(s,l),userEvent:"select.search.matches"})),!0},J=W((t,{query:e})=>{let{state:r}=t,{from:n,to:i}=r.selection.main;if(r.readOnly)return!1;let s=e.nextMatch(r,n,n);if(!s)return!1;let l=s,c=[],o,a,h=[];l.precise?l.from==n&&l.to==i&&(a=r.toText(e.getReplacement(l)),c.push({from:l.from,to:l.to,insert:a}),l=e.nextMatch(r,l.from,l.to),h.push(S.announce.of(r.phrase("replaced match on line $",r.doc.lineAt(n).number)+"."))):l=e.nextMatch(r,l.from,l.to);let d=t.state.changes(c);return l&&(o=p.single(l.from,l.to).map(d),h.push(V(t,l)),h.push(r.facet(M).scrollToMatch(o.main,t))),t.dispatch({changes:d,selection:o,effects:h,userEvent:"input.replace"}),!0}),Ne=W((t,{query:e})=>{if(t.state.readOnly)return!1;let r=[];for(let i of e.matchAll(t.state,1e9)){let{from:s,to:l,precise:c}=i;c&&r.push({from:s,to:l,insert:e.getReplacement(i)})}if(!r.length)return!1;let n=t.state.phrase("replaced $ matches",r.length)+".";return t.dispatch({changes:r,effects:S.announce.of(n),userEvent:"input.replace.all"}),!0});function N(t){return t.state.facet(M).createPanel(t)}function I(t,e){var r,n,i,s,l;let c=t.selection.main,o=c.empty||c.to>c.from+100?"":t.sliceDoc(c.from,c.to);if(e&&!o)return e;let a=t.facet(M);return new se({search:((r=e?.literal)!==null&&r!==void 0?r:a.literal)?o:o.replace(/\n/g,"\\n"),caseSensitive:(n=e?.caseSensitive)!==null&&n!==void 0?n:a.caseSensitive,literal:(i=e?.literal)!==null&&i!==void 0?i:a.literal,regexp:(s=e?.regexp)!==null&&s!==void 0?s:a.regexp,wholeWord:(l=e?.wholeWord)!==null&&l!==void 0?l:a.wholeWord})}function ce(t){let e=U(t,N);return e&&e.dom.querySelector("[main-field]")}function oe(t){let e=ce(t);e&&e==t.root.activeElement&&e.select()}const ae=t=>{let e=t.state.field(x,!1);if(e&&e.panel){let r=ce(t);if(r&&r!=t.root.activeElement){let n=I(t.state,e.query.spec);n.valid&&t.dispatch({effects:L.of(n)}),r.focus(),r.select()}}else t.dispatch({effects:[B.of(!0),e?L.of(I(t.state,e.query.spec)):_.appendConfig.of(Q)]});return!0},he=t=>{let e=t.state.field(x,!1);if(!e||!e.panel)return!1;let r=U(t,N);return r&&r.dom.contains(t.root.activeElement)&&t.focus(),t.dispatch({effects:B.of(!1)}),!0},Ye=[{key:"Mod-f",run:ae,scope:"editor search-panel"},{key:"F3",run:w,shift:P,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:w,shift:P,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:he,scope:"editor search-panel"},{key:"Mod-Shift-l",run:Be},{key:"Mod-Alt-g",run:Ce},{key:"Mod-d",run:Re,preventDefault:!0}];class Ve{constructor(e){this.view=e;let r=this.query=e.state.field(x).query.spec;this.commit=this.commit.bind(this),this.searchField=m("input",{value:r.search,placeholder:u(e,"Find"),"aria-label":u(e,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=m("input",{value:r.replace,placeholder:u(e,"Replace"),"aria-label":u(e,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=m("input",{type:"checkbox",name:"case",form:"",checked:r.caseSensitive,onchange:this.commit}),this.reField=m("input",{type:"checkbox",name:"re",form:"",checked:r.regexp,onchange:this.commit}),this.wordField=m("input",{type:"checkbox",name:"word",form:"",checked:r.wholeWord,onchange:this.commit});function n(i,s,l){return m("button",{class:"cm-button",name:i,onclick:s,type:"button"},l)}this.dom=m("div",{onkeydown:i=>this.keydown(i),class:"cm-search"},[this.searchField,n("next",()=>w(e),[u(e,"next")]),n("prev",()=>P(e),[u(e,"previous")]),n("select",()=>ze(e),[u(e,"all")]),m("label",null,[this.caseField,u(e,"match case")]),m("label",null,[this.reField,u(e,"regexp")]),m("label",null,[this.wordField,u(e,"by word")]),...e.state.readOnly?[]:[m("br"),this.replaceField,n("replace",()=>J(e),[u(e,"replace")]),n("replaceAll",()=>Ne(e),[u(e,"replace all")])],m("button",{name:"close",onclick:()=>he(e),"aria-label":u(e,"close"),type:"button"},["×"])])}commit(){let e=new se({search:this.searchField.value,caseSensitive:this.caseField.checked,regexp:this.reField.checked,wholeWord:this.wordField.checked,replace:this.replaceField.value});e.eq(this.query)||(this.query=e,this.view.dispatch({effects:L.of(e)}))}keydown(e){de(this.view,e,"search-panel")?e.preventDefault():e.keyCode==13&&e.target==this.searchField?(e.preventDefault(),(e.shiftKey?P:w)(this.view)):e.keyCode==13&&e.target==this.replaceField&&(e.preventDefault(),J(this.view))}update(e){for(let r of e.transactions)for(let n of r.effects)n.is(L)&&!n.value.eq(this.query)&&this.setQuery(n.value)}setQuery(e){this.query=e,this.searchField.value=e.search,this.replaceField.value=e.replace,this.caseField.checked=e.caseSensitive,this.reField.checked=e.regexp,this.wordField.checked=e.wholeWord}mount(){this.searchField.select()}get pos(){return 80}get top(){return this.view.state.facet(M).top}}function u(t,e){return t.state.phrase(e)}const E=30,F=/[\s\.,:;?!]/;function V(t,{from:e,to:r}){let n=t.state.doc.lineAt(e),i=t.state.doc.lineAt(r).to,s=Math.max(n.from,e-E),l=Math.min(i,r+E),c=t.state.sliceDoc(s,l);if(s!=n.from){for(let o=0;o<E;o++)if(!F.test(c[o+1])&&F.test(c[o])){c=c.slice(o);break}}if(l!=i){for(let o=c.length-1;o>c.length-E;o--)if(!F.test(c[o-1])&&F.test(c[o])){c=c.slice(0,o);break}}return S.announce.of(`${t.state.phrase("current match")}. ${c} ${t.state.phrase("on line")} ${n.number}.`)}const He=S.baseTheme({".cm-panel.cm-search":{padding:"2px 6px 4px",position:"relative","& [name=close]":{position:"absolute",top:"0",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",padding:0,margin:0},"& input, & button, & label":{margin:".2em .6em .2em 0"},"& input[type=checkbox]":{marginRight:".2em"},"& label":{fontSize:"80%",whiteSpace:"pre"}},"&light .cm-searchMatch":{backgroundColor:"#ffff0054"},"&dark .cm-searchMatch":{backgroundColor:"#00ffff8a"},"&light .cm-searchMatch-selected":{backgroundColor:"#ff6a0054"},"&dark .cm-searchMatch-selected":{backgroundColor:"#ff00ff8a"}}),Q=[x,Me.low(_e),He];export{re as RegExpCursor,b as SearchCursor,se as SearchQuery,he as closeSearchPanel,w as findNext,P as findPrevious,Ue as getSearchQuery,Ce as gotoLine,je as highlightSelectionMatches,ae as openSearchPanel,Ne as replaceAll,J as replaceNext,Je as search,Ye as searchKeymap,Xe as searchPanelOpen,ze as selectMatches,Re as selectNextOccurrence,Be as selectSelectionMatches,L as setSearchQuery};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import{r as O}from"./index-D_NuPfjr.js";var y={exports:{}},n={};/**
|
|
2
|
+
* @license React
|
|
3
|
+
* react-dom.production.js
|
|
4
|
+
*
|
|
5
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
6
|
+
*
|
|
7
|
+
* This source code is licensed under the MIT license found in the
|
|
8
|
+
* LICENSE file in the root directory of this source tree.
|
|
9
|
+
*/var o;function S(){if(o)return n;o=1;var u=O();function g(r){var e="https://react.dev/errors/"+r;if(1<arguments.length){e+="?args[]="+encodeURIComponent(arguments[1]);for(var t=2;t<arguments.length;t++)e+="&args[]="+encodeURIComponent(arguments[t])}return"Minified React error #"+r+"; visit "+e+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function c(){}var i={d:{f:c,r:function(){throw Error(g(522))},D:c,C:c,L:c,m:c,X:c,S:c,M:c},p:0,findDOMNode:null},m=Symbol.for("react.portal");function v(r,e,t){var a=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:m,key:a==null?null:""+a,children:r,containerInfo:e,implementation:t}}var f=u.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function d(r,e){if(r==="font")return"";if(typeof e=="string")return e==="use-credentials"?e:""}return n.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=i,n.createPortal=function(r,e){var t=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)throw Error(g(299));return v(r,e,null,t)},n.flushSync=function(r){var e=f.T,t=i.p;try{if(f.T=null,i.p=2,r)return r()}finally{f.T=e,i.p=t,i.d.f()}},n.preconnect=function(r,e){typeof r=="string"&&(e?(e=e.crossOrigin,e=typeof e=="string"?e==="use-credentials"?e:"":void 0):e=null,i.d.C(r,e))},n.prefetchDNS=function(r){typeof r=="string"&&i.d.D(r)},n.preinit=function(r,e){if(typeof r=="string"&&e&&typeof e.as=="string"){var t=e.as,a=d(t,e.crossOrigin),s=typeof e.integrity=="string"?e.integrity:void 0,l=typeof e.fetchPriority=="string"?e.fetchPriority:void 0;t==="style"?i.d.S(r,typeof e.precedence=="string"?e.precedence:void 0,{crossOrigin:a,integrity:s,fetchPriority:l}):t==="script"&&i.d.X(r,{crossOrigin:a,integrity:s,fetchPriority:l,nonce:typeof e.nonce=="string"?e.nonce:void 0})}},n.preinitModule=function(r,e){if(typeof r=="string")if(typeof e=="object"&&e!==null){if(e.as==null||e.as==="script"){var t=d(e.as,e.crossOrigin);i.d.M(r,{crossOrigin:t,integrity:typeof e.integrity=="string"?e.integrity:void 0,nonce:typeof e.nonce=="string"?e.nonce:void 0})}}else e==null&&i.d.M(r)},n.preload=function(r,e){if(typeof r=="string"&&typeof e=="object"&&e!==null&&typeof e.as=="string"){var t=e.as,a=d(t,e.crossOrigin);i.d.L(r,t,{crossOrigin:a,integrity:typeof e.integrity=="string"?e.integrity:void 0,nonce:typeof e.nonce=="string"?e.nonce:void 0,type:typeof e.type=="string"?e.type:void 0,fetchPriority:typeof e.fetchPriority=="string"?e.fetchPriority:void 0,referrerPolicy:typeof e.referrerPolicy=="string"?e.referrerPolicy:void 0,imageSrcSet:typeof e.imageSrcSet=="string"?e.imageSrcSet:void 0,imageSizes:typeof e.imageSizes=="string"?e.imageSizes:void 0,media:typeof e.media=="string"?e.media:void 0})}},n.preloadModule=function(r,e){if(typeof r=="string")if(e){var t=d(e.as,e.crossOrigin);i.d.m(r,{as:typeof e.as=="string"&&e.as!=="script"?e.as:void 0,crossOrigin:t,integrity:typeof e.integrity=="string"?e.integrity:void 0})}else i.d.m(r)},n.requestFormReset=function(r){i.d.r(r)},n.unstable_batchedUpdates=function(r,e){return r(e)},n.useFormState=function(r,e,t){return f.H.useFormState(r,e,t)},n.useFormStatus=function(){return f.H.useHostTransitionStatus()},n.version="19.2.7",n}var _;function T(){if(_)return y.exports;_=1;function u(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(u)}catch(g){console.error(g)}}return u(),y.exports=S(),y.exports}export{T as r};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as V}from"./index-DaQZGF7d.js";import{l as Se,z as pe,aI as Q,I as k,bx as T,a as me,d as S,b4 as ye,b5 as Ke,aY as Ue,x as X,V as y,by as Pe,Q as Ee,ay as xe,av as Me,aL as Z,bz as Ne,ab as w,bA as Qe,a4 as Ie,bB as we,bC as _e,bD as ve,L as De,h as ke,f as oe,bE as Xe,J as Ye,aE as je,a9 as q,aD as Ze,am as Re,Z as We,b1 as N,bt as Ve,aa as Te,b6 as qe,a0 as ze,aG as $e,b7 as et,bF as tt,aH as st,aB as z,k as nt,b as rt,$ as ot,aM as it,aQ as at,aN as At,bG as Bt,bH as He,bj as ct,a1 as Y,aO as ce,bw as Ce,aP as le,_ as Ct,bI as lt,ap as ut,bl as ht,aU as dt,aT as ft}from"./three.module-BynznMJN.js";import{t as ue}from"./BufferGeometryUtils-oP8-Ve4I.js";import{u as Gt,b as U}from"./events-156d8d12.esm-Dy_KXdhT.js";import"./_commonjsHelpers-D6-XlEtG.js";import"./index-D_NuPfjr.js";import"./client-DNXj_opT.js";import"./index-CinJrH5C.js";import"./jsx-runtime-DPjLkJKQ.js";const Ft=parseInt(Se.replace(/\D+/g,""));function j(l){if(typeof TextDecoder<"u")return new TextDecoder().decode(l);let e="";for(let t=0,r=l.length;t<r;t++)e+=String.fromCharCode(l[t]);try{return decodeURIComponent(escape(e))}catch{return e}}const O="srgb",g="srgb-linear",he=3001,pt=3e3;class Ae extends pe{constructor(e){super(e),this.dracoLoader=null,this.ktx2Loader=null,this.meshoptDecoder=null,this.pluginCallbacks=[],this.register(function(t){return new Dt(t)}),this.register(function(t){return new Rt(t)}),this.register(function(t){return new yt(t)}),this.register(function(t){return new Kt(t)}),this.register(function(t){return new Ut(t)}),this.register(function(t){return new Ht(t)}),this.register(function(t){return new gt(t)}),this.register(function(t){return new Jt(t)}),this.register(function(t){return new bt(t)}),this.register(function(t){return new It(t)}),this.register(function(t){return new Lt(t)}),this.register(function(t){return new Tt(t)}),this.register(function(t){return new St(t)}),this.register(function(t){return new Ot(t)}),this.register(function(t){return new Et(t)}),this.register(function(t){return new Pt(t)}),this.register(function(t){return new xt(t)})}load(e,t,r,s){const n=this;let o;if(this.resourcePath!=="")o=this.resourcePath;else if(this.path!==""){const A=Q.extractUrlBase(e);o=Q.resolveURL(A,this.path)}else o=Q.extractUrlBase(e);this.manager.itemStart(e);const a=function(A){s?s(A):console.error(A),n.manager.itemError(e),n.manager.itemEnd(e)},i=new k(this.manager);i.setPath(this.path),i.setResponseType("arraybuffer"),i.setRequestHeader(this.requestHeader),i.setWithCredentials(this.withCredentials),i.load(e,function(A){try{n.parse(A,o,function(c){t(c),n.manager.itemEnd(e)},a)}catch(c){a(c)}},r,a)}setDRACOLoader(e){return this.dracoLoader=e,this}setDDSLoader(){throw new Error('THREE.GLTFLoader: "MSFT_texture_dds" no longer supported. Please update to "KHR_texture_basisu".')}setKTX2Loader(e){return this.ktx2Loader=e,this}setMeshoptDecoder(e){return this.meshoptDecoder=e,this}register(e){return this.pluginCallbacks.indexOf(e)===-1&&this.pluginCallbacks.push(e),this}unregister(e){return this.pluginCallbacks.indexOf(e)!==-1&&this.pluginCallbacks.splice(this.pluginCallbacks.indexOf(e),1),this}parse(e,t,r,s){let n;const o={},a={};if(typeof e=="string")n=JSON.parse(e);else if(e instanceof ArrayBuffer)if(j(new Uint8Array(e.slice(0,4)))===ge){try{o[F.KHR_BINARY_GLTF]=new Nt(e)}catch(c){s&&s(c);return}n=JSON.parse(o[F.KHR_BINARY_GLTF].content)}else n=JSON.parse(j(new Uint8Array(e)));else n=e;if(n.asset===void 0||n.asset.version[0]<2){s&&s(new Error("THREE.GLTFLoader: Unsupported asset. glTF versions >=2.0 are supported."));return}const i=new zt(n,{path:t||this.resourcePath||"",crossOrigin:this.crossOrigin,requestHeader:this.requestHeader,manager:this.manager,ktx2Loader:this.ktx2Loader,meshoptDecoder:this.meshoptDecoder});i.fileLoader.setRequestHeader(this.requestHeader);for(let A=0;A<this.pluginCallbacks.length;A++){const c=this.pluginCallbacks[A](i);c.name||console.error("THREE.GLTFLoader: Invalid plugin found: missing name"),a[c.name]=c,o[c.name]=!0}if(n.extensionsUsed)for(let A=0;A<n.extensionsUsed.length;++A){const c=n.extensionsUsed[A],B=n.extensionsRequired||[];switch(c){case F.KHR_MATERIALS_UNLIT:o[c]=new Mt;break;case F.KHR_DRACO_MESH_COMPRESSION:o[c]=new Qt(n,this.dracoLoader);break;case F.KHR_TEXTURE_TRANSFORM:o[c]=new wt;break;case F.KHR_MESH_QUANTIZATION:o[c]=new _t;break;default:B.indexOf(c)>=0&&a[c]===void 0&&console.warn('THREE.GLTFLoader: Unknown extension "'+c+'".')}}i.setExtensions(o),i.setPlugins(a),i.parse(r,s)}parseAsync(e,t){const r=this;return new Promise(function(s,n){r.parse(e,t,s,n)})}}function mt(){let l={};return{get:function(e){return l[e]},add:function(e,t){l[e]=t},remove:function(e){delete l[e]},removeAll:function(){l={}}}}const F={KHR_BINARY_GLTF:"KHR_binary_glTF",KHR_DRACO_MESH_COMPRESSION:"KHR_draco_mesh_compression",KHR_LIGHTS_PUNCTUAL:"KHR_lights_punctual",KHR_MATERIALS_CLEARCOAT:"KHR_materials_clearcoat",KHR_MATERIALS_DISPERSION:"KHR_materials_dispersion",KHR_MATERIALS_IOR:"KHR_materials_ior",KHR_MATERIALS_SHEEN:"KHR_materials_sheen",KHR_MATERIALS_SPECULAR:"KHR_materials_specular",KHR_MATERIALS_TRANSMISSION:"KHR_materials_transmission",KHR_MATERIALS_IRIDESCENCE:"KHR_materials_iridescence",KHR_MATERIALS_ANISOTROPY:"KHR_materials_anisotropy",KHR_MATERIALS_UNLIT:"KHR_materials_unlit",KHR_MATERIALS_VOLUME:"KHR_materials_volume",KHR_TEXTURE_BASISU:"KHR_texture_basisu",KHR_TEXTURE_TRANSFORM:"KHR_texture_transform",KHR_MESH_QUANTIZATION:"KHR_mesh_quantization",KHR_MATERIALS_EMISSIVE_STRENGTH:"KHR_materials_emissive_strength",EXT_MATERIALS_BUMP:"EXT_materials_bump",EXT_TEXTURE_WEBP:"EXT_texture_webp",EXT_TEXTURE_AVIF:"EXT_texture_avif",EXT_MESHOPT_COMPRESSION:"EXT_meshopt_compression",EXT_MESH_GPU_INSTANCING:"EXT_mesh_gpu_instancing"};class Et{constructor(e){this.parser=e,this.name=F.KHR_LIGHTS_PUNCTUAL,this.cache={refs:{},uses:{}}}_markDefs(){const e=this.parser,t=this.parser.json.nodes||[];for(let r=0,s=t.length;r<s;r++){const n=t[r];n.extensions&&n.extensions[this.name]&&n.extensions[this.name].light!==void 0&&e._addNodeRef(this.cache,n.extensions[this.name].light)}}_loadLight(e){const t=this.parser,r="light:"+e;let s=t.cache.get(r);if(s)return s;const n=t.json,i=((n.extensions&&n.extensions[this.name]||{}).lights||[])[e];let A;const c=new S(16777215);i.color!==void 0&&c.setRGB(i.color[0],i.color[1],i.color[2],g);const B=i.range!==void 0?i.range:0;switch(i.type){case"directional":A=new Ue(c),A.target.position.set(0,0,-1),A.add(A.target);break;case"point":A=new Ke(c),A.distance=B;break;case"spot":A=new ye(c),A.distance=B,i.spot=i.spot||{},i.spot.innerConeAngle=i.spot.innerConeAngle!==void 0?i.spot.innerConeAngle:0,i.spot.outerConeAngle=i.spot.outerConeAngle!==void 0?i.spot.outerConeAngle:Math.PI/4,A.angle=i.spot.outerConeAngle,A.penumbra=1-i.spot.innerConeAngle/i.spot.outerConeAngle,A.target.position.set(0,0,-1),A.add(A.target);break;default:throw new Error("THREE.GLTFLoader: Unexpected light type: "+i.type)}return A.position.set(0,0,0),A.decay=2,H(A,i),i.intensity!==void 0&&(A.intensity=i.intensity),A.name=t.createUniqueName(i.name||"light_"+e),s=Promise.resolve(A),t.cache.add(r,s),s}getDependency(e,t){if(e==="light")return this._loadLight(t)}createNodeAttachment(e){const t=this,r=this.parser,n=r.json.nodes[e],a=(n.extensions&&n.extensions[this.name]||{}).light;return a===void 0?null:this._loadLight(a).then(function(i){return r._getNodeRef(t.cache,a,i)})}}class Mt{constructor(){this.name=F.KHR_MATERIALS_UNLIT}getMaterialType(){return N}extendParams(e,t,r){const s=[];e.color=new S(1,1,1),e.opacity=1;const n=t.pbrMetallicRoughness;if(n){if(Array.isArray(n.baseColorFactor)){const o=n.baseColorFactor;e.color.setRGB(o[0],o[1],o[2],g),e.opacity=o[3]}n.baseColorTexture!==void 0&&s.push(r.assignTexture(e,"map",n.baseColorTexture,O))}return Promise.all(s)}}class It{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_EMISSIVE_STRENGTH}extendMaterialParams(e,t){const s=this.parser.json.materials[e];if(!s.extensions||!s.extensions[this.name])return Promise.resolve();const n=s.extensions[this.name].emissiveStrength;return n!==void 0&&(t.emissiveIntensity=n),Promise.resolve()}}class Dt{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_CLEARCOAT}getMaterialType(e){const r=this.parser.json.materials[e];return!r.extensions||!r.extensions[this.name]?null:T}extendMaterialParams(e,t){const r=this.parser,s=r.json.materials[e];if(!s.extensions||!s.extensions[this.name])return Promise.resolve();const n=[],o=s.extensions[this.name];if(o.clearcoatFactor!==void 0&&(t.clearcoat=o.clearcoatFactor),o.clearcoatTexture!==void 0&&n.push(r.assignTexture(t,"clearcoatMap",o.clearcoatTexture)),o.clearcoatRoughnessFactor!==void 0&&(t.clearcoatRoughness=o.clearcoatRoughnessFactor),o.clearcoatRoughnessTexture!==void 0&&n.push(r.assignTexture(t,"clearcoatRoughnessMap",o.clearcoatRoughnessTexture)),o.clearcoatNormalTexture!==void 0&&(n.push(r.assignTexture(t,"clearcoatNormalMap",o.clearcoatNormalTexture)),o.clearcoatNormalTexture.scale!==void 0)){const a=o.clearcoatNormalTexture.scale;t.clearcoatNormalScale=new me(a,a)}return Promise.all(n)}}class Rt{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_DISPERSION}getMaterialType(e){const r=this.parser.json.materials[e];return!r.extensions||!r.extensions[this.name]?null:T}extendMaterialParams(e,t){const s=this.parser.json.materials[e];if(!s.extensions||!s.extensions[this.name])return Promise.resolve();const n=s.extensions[this.name];return t.dispersion=n.dispersion!==void 0?n.dispersion:0,Promise.resolve()}}class Tt{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_IRIDESCENCE}getMaterialType(e){const r=this.parser.json.materials[e];return!r.extensions||!r.extensions[this.name]?null:T}extendMaterialParams(e,t){const r=this.parser,s=r.json.materials[e];if(!s.extensions||!s.extensions[this.name])return Promise.resolve();const n=[],o=s.extensions[this.name];return o.iridescenceFactor!==void 0&&(t.iridescence=o.iridescenceFactor),o.iridescenceTexture!==void 0&&n.push(r.assignTexture(t,"iridescenceMap",o.iridescenceTexture)),o.iridescenceIor!==void 0&&(t.iridescenceIOR=o.iridescenceIor),t.iridescenceThicknessRange===void 0&&(t.iridescenceThicknessRange=[100,400]),o.iridescenceThicknessMinimum!==void 0&&(t.iridescenceThicknessRange[0]=o.iridescenceThicknessMinimum),o.iridescenceThicknessMaximum!==void 0&&(t.iridescenceThicknessRange[1]=o.iridescenceThicknessMaximum),o.iridescenceThicknessTexture!==void 0&&n.push(r.assignTexture(t,"iridescenceThicknessMap",o.iridescenceThicknessTexture)),Promise.all(n)}}class Ht{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_SHEEN}getMaterialType(e){const r=this.parser.json.materials[e];return!r.extensions||!r.extensions[this.name]?null:T}extendMaterialParams(e,t){const r=this.parser,s=r.json.materials[e];if(!s.extensions||!s.extensions[this.name])return Promise.resolve();const n=[];t.sheenColor=new S(0,0,0),t.sheenRoughness=0,t.sheen=1;const o=s.extensions[this.name];if(o.sheenColorFactor!==void 0){const a=o.sheenColorFactor;t.sheenColor.setRGB(a[0],a[1],a[2],g)}return o.sheenRoughnessFactor!==void 0&&(t.sheenRoughness=o.sheenRoughnessFactor),o.sheenColorTexture!==void 0&&n.push(r.assignTexture(t,"sheenColorMap",o.sheenColorTexture,O)),o.sheenRoughnessTexture!==void 0&&n.push(r.assignTexture(t,"sheenRoughnessMap",o.sheenRoughnessTexture)),Promise.all(n)}}class gt{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_TRANSMISSION}getMaterialType(e){const r=this.parser.json.materials[e];return!r.extensions||!r.extensions[this.name]?null:T}extendMaterialParams(e,t){const r=this.parser,s=r.json.materials[e];if(!s.extensions||!s.extensions[this.name])return Promise.resolve();const n=[],o=s.extensions[this.name];return o.transmissionFactor!==void 0&&(t.transmission=o.transmissionFactor),o.transmissionTexture!==void 0&&n.push(r.assignTexture(t,"transmissionMap",o.transmissionTexture)),Promise.all(n)}}class Jt{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_VOLUME}getMaterialType(e){const r=this.parser.json.materials[e];return!r.extensions||!r.extensions[this.name]?null:T}extendMaterialParams(e,t){const r=this.parser,s=r.json.materials[e];if(!s.extensions||!s.extensions[this.name])return Promise.resolve();const n=[],o=s.extensions[this.name];t.thickness=o.thicknessFactor!==void 0?o.thicknessFactor:0,o.thicknessTexture!==void 0&&n.push(r.assignTexture(t,"thicknessMap",o.thicknessTexture)),t.attenuationDistance=o.attenuationDistance||1/0;const a=o.attenuationColor||[1,1,1];return t.attenuationColor=new S().setRGB(a[0],a[1],a[2],g),Promise.all(n)}}class bt{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_IOR}getMaterialType(e){const r=this.parser.json.materials[e];return!r.extensions||!r.extensions[this.name]?null:T}extendMaterialParams(e,t){const s=this.parser.json.materials[e];if(!s.extensions||!s.extensions[this.name])return Promise.resolve();const n=s.extensions[this.name];return t.ior=n.ior!==void 0?n.ior:1.5,Promise.resolve()}}class Lt{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_SPECULAR}getMaterialType(e){const r=this.parser.json.materials[e];return!r.extensions||!r.extensions[this.name]?null:T}extendMaterialParams(e,t){const r=this.parser,s=r.json.materials[e];if(!s.extensions||!s.extensions[this.name])return Promise.resolve();const n=[],o=s.extensions[this.name];t.specularIntensity=o.specularFactor!==void 0?o.specularFactor:1,o.specularTexture!==void 0&&n.push(r.assignTexture(t,"specularIntensityMap",o.specularTexture));const a=o.specularColorFactor||[1,1,1];return t.specularColor=new S().setRGB(a[0],a[1],a[2],g),o.specularColorTexture!==void 0&&n.push(r.assignTexture(t,"specularColorMap",o.specularColorTexture,O)),Promise.all(n)}}class Ot{constructor(e){this.parser=e,this.name=F.EXT_MATERIALS_BUMP}getMaterialType(e){const r=this.parser.json.materials[e];return!r.extensions||!r.extensions[this.name]?null:T}extendMaterialParams(e,t){const r=this.parser,s=r.json.materials[e];if(!s.extensions||!s.extensions[this.name])return Promise.resolve();const n=[],o=s.extensions[this.name];return t.bumpScale=o.bumpFactor!==void 0?o.bumpFactor:1,o.bumpTexture!==void 0&&n.push(r.assignTexture(t,"bumpMap",o.bumpTexture)),Promise.all(n)}}class St{constructor(e){this.parser=e,this.name=F.KHR_MATERIALS_ANISOTROPY}getMaterialType(e){const r=this.parser.json.materials[e];return!r.extensions||!r.extensions[this.name]?null:T}extendMaterialParams(e,t){const r=this.parser,s=r.json.materials[e];if(!s.extensions||!s.extensions[this.name])return Promise.resolve();const n=[],o=s.extensions[this.name];return o.anisotropyStrength!==void 0&&(t.anisotropy=o.anisotropyStrength),o.anisotropyRotation!==void 0&&(t.anisotropyRotation=o.anisotropyRotation),o.anisotropyTexture!==void 0&&n.push(r.assignTexture(t,"anisotropyMap",o.anisotropyTexture)),Promise.all(n)}}class yt{constructor(e){this.parser=e,this.name=F.KHR_TEXTURE_BASISU}loadTexture(e){const t=this.parser,r=t.json,s=r.textures[e];if(!s.extensions||!s.extensions[this.name])return null;const n=s.extensions[this.name],o=t.options.ktx2Loader;if(!o){if(r.extensionsRequired&&r.extensionsRequired.indexOf(this.name)>=0)throw new Error("THREE.GLTFLoader: setKTX2Loader must be called before loading KTX2 textures");return null}return t.loadTextureImage(e,n.source,o)}}class Kt{constructor(e){this.parser=e,this.name=F.EXT_TEXTURE_WEBP,this.isSupported=null}loadTexture(e){const t=this.name,r=this.parser,s=r.json,n=s.textures[e];if(!n.extensions||!n.extensions[t])return null;const o=n.extensions[t],a=s.images[o.source];let i=r.textureLoader;if(a.uri){const A=r.options.manager.getHandler(a.uri);A!==null&&(i=A)}return this.detectSupport().then(function(A){if(A)return r.loadTextureImage(e,o.source,i);if(s.extensionsRequired&&s.extensionsRequired.indexOf(t)>=0)throw new Error("THREE.GLTFLoader: WebP required by asset but unsupported.");return r.loadTexture(e)})}detectSupport(){return this.isSupported||(this.isSupported=new Promise(function(e){const t=new Image;t.src="data:image/webp;base64,UklGRiIAAABXRUJQVlA4IBYAAAAwAQCdASoBAAEADsD+JaQAA3AAAAAA",t.onload=t.onerror=function(){e(t.height===1)}})),this.isSupported}}class Ut{constructor(e){this.parser=e,this.name=F.EXT_TEXTURE_AVIF,this.isSupported=null}loadTexture(e){const t=this.name,r=this.parser,s=r.json,n=s.textures[e];if(!n.extensions||!n.extensions[t])return null;const o=n.extensions[t],a=s.images[o.source];let i=r.textureLoader;if(a.uri){const A=r.options.manager.getHandler(a.uri);A!==null&&(i=A)}return this.detectSupport().then(function(A){if(A)return r.loadTextureImage(e,o.source,i);if(s.extensionsRequired&&s.extensionsRequired.indexOf(t)>=0)throw new Error("THREE.GLTFLoader: AVIF required by asset but unsupported.");return r.loadTexture(e)})}detectSupport(){return this.isSupported||(this.isSupported=new Promise(function(e){const t=new Image;t.src="data:image/avif;base64,AAAAIGZ0eXBhdmlmAAAAAGF2aWZtaWYxbWlhZk1BMUIAAADybWV0YQAAAAAAAAAoaGRscgAAAAAAAAAAcGljdAAAAAAAAAAAAAAAAGxpYmF2aWYAAAAADnBpdG0AAAAAAAEAAAAeaWxvYwAAAABEAAABAAEAAAABAAABGgAAABcAAAAoaWluZgAAAAAAAQAAABppbmZlAgAAAAABAABhdjAxQ29sb3IAAAAAamlwcnAAAABLaXBjbwAAABRpc3BlAAAAAAAAAAEAAAABAAAAEHBpeGkAAAAAAwgICAAAAAxhdjFDgQAMAAAAABNjb2xybmNseAACAAIABoAAAAAXaXBtYQAAAAAAAAABAAEEAQKDBAAAAB9tZGF0EgAKCBgABogQEDQgMgkQAAAAB8dSLfI=",t.onload=t.onerror=function(){e(t.height===1)}})),this.isSupported}}class Pt{constructor(e){this.name=F.EXT_MESHOPT_COMPRESSION,this.parser=e}loadBufferView(e){const t=this.parser.json,r=t.bufferViews[e];if(r.extensions&&r.extensions[this.name]){const s=r.extensions[this.name],n=this.parser.getDependency("buffer",s.buffer),o=this.parser.options.meshoptDecoder;if(!o||!o.supported){if(t.extensionsRequired&&t.extensionsRequired.indexOf(this.name)>=0)throw new Error("THREE.GLTFLoader: setMeshoptDecoder must be called before loading compressed files");return null}return n.then(function(a){const i=s.byteOffset||0,A=s.byteLength||0,c=s.count,B=s.byteStride,C=new Uint8Array(a,i,A);return o.decodeGltfBufferAsync?o.decodeGltfBufferAsync(c,B,C,s.mode,s.filter).then(function(u){return u.buffer}):o.ready.then(function(){const u=new ArrayBuffer(c*B);return o.decodeGltfBuffer(new Uint8Array(u),c,B,C,s.mode,s.filter),u})})}else return null}}class xt{constructor(e){this.name=F.EXT_MESH_GPU_INSTANCING,this.parser=e}createNodeMesh(e){const t=this.parser.json,r=t.nodes[e];if(!r.extensions||!r.extensions[this.name]||r.mesh===void 0)return null;const s=t.meshes[r.mesh];for(const A of s.primitives)if(A.mode!==D.TRIANGLES&&A.mode!==D.TRIANGLE_STRIP&&A.mode!==D.TRIANGLE_FAN&&A.mode!==void 0)return null;const o=r.extensions[this.name].attributes,a=[],i={};for(const A in o)a.push(this.parser.getDependency("accessor",o[A]).then(c=>(i[A]=c,i[A])));return a.length<1?null:(a.push(this.parser.createNodeMesh(e)),Promise.all(a).then(A=>{const c=A.pop(),B=c.isGroup?c.children:[c],C=A[0].count,u=[];for(const h of B){const d=new X,f=new y,G=new Ee,p=new y(1,1,1),E=new Pe(h.geometry,h.material,C);for(let m=0;m<C;m++)i.TRANSLATION&&f.fromBufferAttribute(i.TRANSLATION,m),i.ROTATION&&G.fromBufferAttribute(i.ROTATION,m),i.SCALE&&p.fromBufferAttribute(i.SCALE,m),E.setMatrixAt(m,d.compose(f,G,p));for(const m in i)if(m==="_COLOR_0"){const M=i[m];E.instanceColor=new xe(M.array,M.itemSize,M.normalized)}else m!=="TRANSLATION"&&m!=="ROTATION"&&m!=="SCALE"&&h.geometry.setAttribute(m,i[m]);Me.prototype.copy.call(E,h),this.parser.assignFinalMaterial(E),u.push(E)}return c.isGroup?(c.clear(),c.add(...u),c):u[0]}))}}const ge="glTF",x=12,de={JSON:1313821514,BIN:5130562};class Nt{constructor(e){this.name=F.KHR_BINARY_GLTF,this.content=null,this.body=null;const t=new DataView(e,0,x);if(this.header={magic:j(new Uint8Array(e.slice(0,4))),version:t.getUint32(4,!0),length:t.getUint32(8,!0)},this.header.magic!==ge)throw new Error("THREE.GLTFLoader: Unsupported glTF-Binary header.");if(this.header.version<2)throw new Error("THREE.GLTFLoader: Legacy binary file detected.");const r=this.header.length-x,s=new DataView(e,x);let n=0;for(;n<r;){const o=s.getUint32(n,!0);n+=4;const a=s.getUint32(n,!0);if(n+=4,a===de.JSON){const i=new Uint8Array(e,x+n,o);this.content=j(i)}else if(a===de.BIN){const i=x+n;this.body=e.slice(i,i+o)}n+=o}if(this.content===null)throw new Error("THREE.GLTFLoader: JSON content not found.")}}class Qt{constructor(e,t){if(!t)throw new Error("THREE.GLTFLoader: No DRACOLoader instance provided.");this.name=F.KHR_DRACO_MESH_COMPRESSION,this.json=e,this.dracoLoader=t,this.dracoLoader.preload()}decodePrimitive(e,t){const r=this.json,s=this.dracoLoader,n=e.extensions[this.name].bufferView,o=e.extensions[this.name].attributes,a={},i={},A={};for(const c in o){const B=ie[c]||c.toLowerCase();a[B]=o[c]}for(const c in e.attributes){const B=ie[c]||c.toLowerCase();if(o[c]!==void 0){const C=r.accessors[e.attributes[c]],u=K[C.componentType];A[B]=u.name,i[B]=C.normalized===!0}}return t.getDependency("bufferView",n).then(function(c){return new Promise(function(B,C){s.decodeDracoFile(c,function(u){for(const h in u.attributes){const d=u.attributes[h],f=i[h];f!==void 0&&(d.normalized=f)}B(u)},a,A,g,C)})})}}class wt{constructor(){this.name=F.KHR_TEXTURE_TRANSFORM}extendTexture(e,t){return(t.texCoord===void 0||t.texCoord===e.channel)&&t.offset===void 0&&t.rotation===void 0&&t.scale===void 0||(e=e.clone(),t.texCoord!==void 0&&(e.channel=t.texCoord),t.offset!==void 0&&e.offset.fromArray(t.offset),t.rotation!==void 0&&(e.rotation=t.rotation),t.scale!==void 0&&e.repeat.fromArray(t.scale),e.needsUpdate=!0),e}}class _t{constructor(){this.name=F.KHR_MESH_QUANTIZATION}}class Je extends lt{constructor(e,t,r,s){super(e,t,r,s)}copySampleValue_(e){const t=this.resultBuffer,r=this.sampleValues,s=this.valueSize,n=e*s*3+s;for(let o=0;o!==s;o++)t[o]=r[n+o];return t}interpolate_(e,t,r,s){const n=this.resultBuffer,o=this.sampleValues,a=this.valueSize,i=a*2,A=a*3,c=s-t,B=(r-t)/c,C=B*B,u=C*B,h=e*A,d=h-A,f=-2*u+3*C,G=u-C,p=1-f,E=G-C+B;for(let m=0;m!==a;m++){const M=o[d+m+a],I=o[d+m+i]*c,R=o[h+m+a],P=o[h+m]*c;n[m]=p*M+E*I+f*R+G*P}return n}}const vt=new Ee;class kt extends Je{interpolate_(e,t,r,s){const n=super.interpolate_(e,t,r,s);return vt.fromArray(n).normalize().toArray(n),n}}const D={POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6},K={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array},fe={9728:ke,9729:De,9984:ve,9985:_e,9986:we,9987:Ie},Ge={33071:Ye,33648:Xe,10497:oe},$={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},ie={POSITION:"position",NORMAL:"normal",TANGENT:"tangent",...Ft>=152?{TEXCOORD_0:"uv",TEXCOORD_1:"uv1",TEXCOORD_2:"uv2",TEXCOORD_3:"uv3"}:{TEXCOORD_0:"uv",TEXCOORD_1:"uv2"},COLOR_0:"color",WEIGHTS_0:"skinWeight",JOINTS_0:"skinIndex"},b={scale:"scale",translation:"position",rotation:"quaternion",weights:"morphTargetInfluences"},Xt={CUBICSPLINE:void 0,LINEAR:He,STEP:Bt},ee={OPAQUE:"OPAQUE",MASK:"MASK",BLEND:"BLEND"};function Yt(l){return l.DefaultMaterial===void 0&&(l.DefaultMaterial=new Re({color:16777215,emissive:0,metalness:1,roughness:1,transparent:!1,depthTest:!0,side:Ct})),l.DefaultMaterial}function L(l,e,t){for(const r in t.extensions)l[r]===void 0&&(e.userData.gltfExtensions=e.userData.gltfExtensions||{},e.userData.gltfExtensions[r]=t.extensions[r])}function H(l,e){e.extras!==void 0&&(typeof e.extras=="object"?Object.assign(l.userData,e.extras):console.warn("THREE.GLTFLoader: Ignoring primitive type .extras, "+e.extras))}function jt(l,e,t){let r=!1,s=!1,n=!1;for(let A=0,c=e.length;A<c;A++){const B=e[A];if(B.POSITION!==void 0&&(r=!0),B.NORMAL!==void 0&&(s=!0),B.COLOR_0!==void 0&&(n=!0),r&&s&&n)break}if(!r&&!s&&!n)return Promise.resolve(l);const o=[],a=[],i=[];for(let A=0,c=e.length;A<c;A++){const B=e[A];if(r){const C=B.POSITION!==void 0?t.getDependency("accessor",B.POSITION):l.attributes.position;o.push(C)}if(s){const C=B.NORMAL!==void 0?t.getDependency("accessor",B.NORMAL):l.attributes.normal;a.push(C)}if(n){const C=B.COLOR_0!==void 0?t.getDependency("accessor",B.COLOR_0):l.attributes.color;i.push(C)}}return Promise.all([Promise.all(o),Promise.all(a),Promise.all(i)]).then(function(A){const c=A[0],B=A[1],C=A[2];return r&&(l.morphAttributes.position=c),s&&(l.morphAttributes.normal=B),n&&(l.morphAttributes.color=C),l.morphTargetsRelative=!0,l})}function Zt(l,e){if(l.updateMorphTargets(),e.weights!==void 0)for(let t=0,r=e.weights.length;t<r;t++)l.morphTargetInfluences[t]=e.weights[t];if(e.extras&&Array.isArray(e.extras.targetNames)){const t=e.extras.targetNames;if(l.morphTargetInfluences.length===t.length){l.morphTargetDictionary={};for(let r=0,s=t.length;r<s;r++)l.morphTargetDictionary[t[r]]=r}else console.warn("THREE.GLTFLoader: Invalid extras.targetNames length. Ignoring names.")}}function Wt(l){let e;const t=l.extensions&&l.extensions[F.KHR_DRACO_MESH_COMPRESSION];if(t?e="draco:"+t.bufferView+":"+t.indices+":"+te(t.attributes):e=l.indices+":"+te(l.attributes)+":"+l.mode,l.targets!==void 0)for(let r=0,s=l.targets.length;r<s;r++)e+=":"+te(l.targets[r]);return e}function te(l){let e="";const t=Object.keys(l).sort();for(let r=0,s=t.length;r<s;r++)e+=t[r]+":"+l[t[r]]+";";return e}function ae(l){switch(l){case Int8Array:return 1/127;case Uint8Array:return 1/255;case Int16Array:return 1/32767;case Uint16Array:return 1/65535;default:throw new Error("THREE.GLTFLoader: Unsupported normalized accessor component type.")}}function Vt(l){return l.search(/\.jpe?g($|\?)/i)>0||l.search(/^data\:image\/jpeg/)===0?"image/jpeg":l.search(/\.webp($|\?)/i)>0||l.search(/^data\:image\/webp/)===0?"image/webp":"image/png"}const qt=new X;class zt{constructor(e={},t={}){this.json=e,this.extensions={},this.plugins={},this.options=t,this.cache=new mt,this.associations=new Map,this.primitiveCache={},this.nodeCache={},this.meshCache={refs:{},uses:{}},this.cameraCache={refs:{},uses:{}},this.lightCache={refs:{},uses:{}},this.sourceCache={},this.textureCache={},this.nodeNamesUsed={};let r=!1,s=!1,n=-1;typeof navigator<"u"&&typeof navigator.userAgent<"u"&&(r=/^((?!chrome|android).)*safari/i.test(navigator.userAgent)===!0,s=navigator.userAgent.indexOf("Firefox")>-1,n=s?navigator.userAgent.match(/Firefox\/([0-9]+)\./)[1]:-1),typeof createImageBitmap>"u"||r||s&&n<98?this.textureLoader=new Z(this.options.manager):this.textureLoader=new Ne(this.options.manager),this.textureLoader.setCrossOrigin(this.options.crossOrigin),this.textureLoader.setRequestHeader(this.options.requestHeader),this.fileLoader=new k(this.options.manager),this.fileLoader.setResponseType("arraybuffer"),this.options.crossOrigin==="use-credentials"&&this.fileLoader.setWithCredentials(!0)}setExtensions(e){this.extensions=e}setPlugins(e){this.plugins=e}parse(e,t){const r=this,s=this.json,n=this.extensions;this.cache.removeAll(),this.nodeCache={},this._invokeAll(function(o){return o._markDefs&&o._markDefs()}),Promise.all(this._invokeAll(function(o){return o.beforeRoot&&o.beforeRoot()})).then(function(){return Promise.all([r.getDependencies("scene"),r.getDependencies("animation"),r.getDependencies("camera")])}).then(function(o){const a={scene:o[0][s.scene||0],scenes:o[0],animations:o[1],cameras:o[2],asset:s.asset,parser:r,userData:{}};return L(n,a,s),H(a,s),Promise.all(r._invokeAll(function(i){return i.afterRoot&&i.afterRoot(a)})).then(function(){for(const i of a.scenes)i.updateMatrixWorld();e(a)})}).catch(t)}_markDefs(){const e=this.json.nodes||[],t=this.json.skins||[],r=this.json.meshes||[];for(let s=0,n=t.length;s<n;s++){const o=t[s].joints;for(let a=0,i=o.length;a<i;a++)e[o[a]].isBone=!0}for(let s=0,n=e.length;s<n;s++){const o=e[s];o.mesh!==void 0&&(this._addNodeRef(this.meshCache,o.mesh),o.skin!==void 0&&(r[o.mesh].isSkinnedMesh=!0)),o.camera!==void 0&&this._addNodeRef(this.cameraCache,o.camera)}}_addNodeRef(e,t){t!==void 0&&(e.refs[t]===void 0&&(e.refs[t]=e.uses[t]=0),e.refs[t]++)}_getNodeRef(e,t,r){if(e.refs[t]<=1)return r;const s=r.clone(),n=(o,a)=>{const i=this.associations.get(o);i!=null&&this.associations.set(a,i);for(const[A,c]of o.children.entries())n(c,a.children[A])};return n(r,s),s.name+="_instance_"+e.uses[t]++,s}_invokeOne(e){const t=Object.values(this.plugins);t.push(this);for(let r=0;r<t.length;r++){const s=e(t[r]);if(s)return s}return null}_invokeAll(e){const t=Object.values(this.plugins);t.unshift(this);const r=[];for(let s=0;s<t.length;s++){const n=e(t[s]);n&&r.push(n)}return r}getDependency(e,t){const r=e+":"+t;let s=this.cache.get(r);if(!s){switch(e){case"scene":s=this.loadScene(t);break;case"node":s=this._invokeOne(function(n){return n.loadNode&&n.loadNode(t)});break;case"mesh":s=this._invokeOne(function(n){return n.loadMesh&&n.loadMesh(t)});break;case"accessor":s=this.loadAccessor(t);break;case"bufferView":s=this._invokeOne(function(n){return n.loadBufferView&&n.loadBufferView(t)});break;case"buffer":s=this.loadBuffer(t);break;case"material":s=this._invokeOne(function(n){return n.loadMaterial&&n.loadMaterial(t)});break;case"texture":s=this._invokeOne(function(n){return n.loadTexture&&n.loadTexture(t)});break;case"skin":s=this.loadSkin(t);break;case"animation":s=this._invokeOne(function(n){return n.loadAnimation&&n.loadAnimation(t)});break;case"camera":s=this.loadCamera(t);break;default:if(s=this._invokeOne(function(n){return n!=this&&n.getDependency&&n.getDependency(e,t)}),!s)throw new Error("Unknown type: "+e);break}this.cache.add(r,s)}return s}getDependencies(e){let t=this.cache.get(e);if(!t){const r=this,s=this.json[e+(e==="mesh"?"es":"s")]||[];t=Promise.all(s.map(function(n,o){return r.getDependency(e,o)})),this.cache.add(e,t)}return t}loadBuffer(e){const t=this.json.buffers[e],r=this.fileLoader;if(t.type&&t.type!=="arraybuffer")throw new Error("THREE.GLTFLoader: "+t.type+" buffer type is not supported.");if(t.uri===void 0&&e===0)return Promise.resolve(this.extensions[F.KHR_BINARY_GLTF].body);const s=this.options;return new Promise(function(n,o){r.load(Q.resolveURL(t.uri,s.path),n,void 0,function(){o(new Error('THREE.GLTFLoader: Failed to load buffer "'+t.uri+'".'))})})}loadBufferView(e){const t=this.json.bufferViews[e];return this.getDependency("buffer",t.buffer).then(function(r){const s=t.byteLength||0,n=t.byteOffset||0;return r.slice(n,n+s)})}loadAccessor(e){const t=this,r=this.json,s=this.json.accessors[e];if(s.bufferView===void 0&&s.sparse===void 0){const o=$[s.type],a=K[s.componentType],i=s.normalized===!0,A=new a(s.count*o);return Promise.resolve(new w(A,o,i))}const n=[];return s.bufferView!==void 0?n.push(this.getDependency("bufferView",s.bufferView)):n.push(null),s.sparse!==void 0&&(n.push(this.getDependency("bufferView",s.sparse.indices.bufferView)),n.push(this.getDependency("bufferView",s.sparse.values.bufferView))),Promise.all(n).then(function(o){const a=o[0],i=$[s.type],A=K[s.componentType],c=A.BYTES_PER_ELEMENT,B=c*i,C=s.byteOffset||0,u=s.bufferView!==void 0?r.bufferViews[s.bufferView].byteStride:void 0,h=s.normalized===!0;let d,f;if(u&&u!==B){const G=Math.floor(C/u),p="InterleavedBuffer:"+s.bufferView+":"+s.componentType+":"+G+":"+s.count;let E=t.cache.get(p);E||(d=new A(a,G*u,s.count*u/c),E=new Qe(d,u/c),t.cache.add(p,E)),f=new ct(E,i,C%u/c,h)}else a===null?d=new A(s.count*i):d=new A(a,C,s.count*i),f=new w(d,i,h);if(s.sparse!==void 0){const G=$.SCALAR,p=K[s.sparse.indices.componentType],E=s.sparse.indices.byteOffset||0,m=s.sparse.values.byteOffset||0,M=new p(o[1],E,s.sparse.count*G),I=new A(o[2],m,s.sparse.count*i);a!==null&&(f=new w(f.array.slice(),f.itemSize,f.normalized));for(let R=0,P=M.length;R<P;R++){const J=M[R];if(f.setX(J,I[R*i]),i>=2&&f.setY(J,I[R*i+1]),i>=3&&f.setZ(J,I[R*i+2]),i>=4&&f.setW(J,I[R*i+3]),i>=5)throw new Error("THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.")}}return f})}loadTexture(e){const t=this.json,r=this.options,n=t.textures[e].source,o=t.images[n];let a=this.textureLoader;if(o.uri){const i=r.manager.getHandler(o.uri);i!==null&&(a=i)}return this.loadTextureImage(e,n,a)}loadTextureImage(e,t,r){const s=this,n=this.json,o=n.textures[e],a=n.images[t],i=(a.uri||a.bufferView)+":"+o.sampler;if(this.textureCache[i])return this.textureCache[i];const A=this.loadImageSource(t,r).then(function(c){c.flipY=!1,c.name=o.name||a.name||"",c.name===""&&typeof a.uri=="string"&&a.uri.startsWith("data:image/")===!1&&(c.name=a.uri);const C=(n.samplers||{})[o.sampler]||{};return c.magFilter=fe[C.magFilter]||De,c.minFilter=fe[C.minFilter]||Ie,c.wrapS=Ge[C.wrapS]||oe,c.wrapT=Ge[C.wrapT]||oe,s.associations.set(c,{textures:e}),c}).catch(function(){return null});return this.textureCache[i]=A,A}loadImageSource(e,t){const r=this,s=this.json,n=this.options;if(this.sourceCache[e]!==void 0)return this.sourceCache[e].then(B=>B.clone());const o=s.images[e],a=self.URL||self.webkitURL;let i=o.uri||"",A=!1;if(o.bufferView!==void 0)i=r.getDependency("bufferView",o.bufferView).then(function(B){A=!0;const C=new Blob([B],{type:o.mimeType});return i=a.createObjectURL(C),i});else if(o.uri===void 0)throw new Error("THREE.GLTFLoader: Image "+e+" is missing URI and bufferView");const c=Promise.resolve(i).then(function(B){return new Promise(function(C,u){let h=C;t.isImageBitmapLoader===!0&&(h=function(d){const f=new Y(d);f.needsUpdate=!0,C(f)}),t.load(Q.resolveURL(B,n.path),h,void 0,u)})}).then(function(B){return A===!0&&a.revokeObjectURL(i),H(B,o),B.userData.mimeType=o.mimeType||Vt(o.uri),B}).catch(function(B){throw console.error("THREE.GLTFLoader: Couldn't load texture",i),B});return this.sourceCache[e]=c,c}assignTexture(e,t,r,s){const n=this;return this.getDependency("texture",r.index).then(function(o){if(!o)return null;if(r.texCoord!==void 0&&r.texCoord>0&&(o=o.clone(),o.channel=r.texCoord),n.extensions[F.KHR_TEXTURE_TRANSFORM]){const a=r.extensions!==void 0?r.extensions[F.KHR_TEXTURE_TRANSFORM]:void 0;if(a){const i=n.associations.get(o);o=n.extensions[F.KHR_TEXTURE_TRANSFORM].extendTexture(o,a),n.associations.set(o,i)}}return s!==void 0&&(typeof s=="number"&&(s=s===he?O:g),"colorSpace"in o?o.colorSpace=s:o.encoding=s===O?he:pt),e[t]=o,o})}assignFinalMaterial(e){const t=e.geometry;let r=e.material;const s=t.attributes.tangent===void 0,n=t.attributes.color!==void 0,o=t.attributes.normal===void 0;if(e.isPoints){const a="PointsMaterial:"+r.uuid;let i=this.cache.get(a);i||(i=new je,q.prototype.copy.call(i,r),i.color.copy(r.color),i.map=r.map,i.sizeAttenuation=!1,this.cache.add(a,i)),r=i}else if(e.isLine){const a="LineBasicMaterial:"+r.uuid;let i=this.cache.get(a);i||(i=new Ze,q.prototype.copy.call(i,r),i.color.copy(r.color),i.map=r.map,this.cache.add(a,i)),r=i}if(s||n||o){let a="ClonedMaterial:"+r.uuid+":";s&&(a+="derivative-tangents:"),n&&(a+="vertex-colors:"),o&&(a+="flat-shading:");let i=this.cache.get(a);i||(i=r.clone(),n&&(i.vertexColors=!0),o&&(i.flatShading=!0),s&&(i.normalScale&&(i.normalScale.y*=-1),i.clearcoatNormalScale&&(i.clearcoatNormalScale.y*=-1)),this.cache.add(a,i),this.associations.set(i,this.associations.get(r))),r=i}e.material=r}getMaterialType(){return Re}loadMaterial(e){const t=this,r=this.json,s=this.extensions,n=r.materials[e];let o;const a={},i=n.extensions||{},A=[];if(i[F.KHR_MATERIALS_UNLIT]){const B=s[F.KHR_MATERIALS_UNLIT];o=B.getMaterialType(),A.push(B.extendParams(a,n,t))}else{const B=n.pbrMetallicRoughness||{};if(a.color=new S(1,1,1),a.opacity=1,Array.isArray(B.baseColorFactor)){const C=B.baseColorFactor;a.color.setRGB(C[0],C[1],C[2],g),a.opacity=C[3]}B.baseColorTexture!==void 0&&A.push(t.assignTexture(a,"map",B.baseColorTexture,O)),a.metalness=B.metallicFactor!==void 0?B.metallicFactor:1,a.roughness=B.roughnessFactor!==void 0?B.roughnessFactor:1,B.metallicRoughnessTexture!==void 0&&(A.push(t.assignTexture(a,"metalnessMap",B.metallicRoughnessTexture)),A.push(t.assignTexture(a,"roughnessMap",B.metallicRoughnessTexture))),o=this._invokeOne(function(C){return C.getMaterialType&&C.getMaterialType(e)}),A.push(Promise.all(this._invokeAll(function(C){return C.extendMaterialParams&&C.extendMaterialParams(e,a)})))}n.doubleSided===!0&&(a.side=We);const c=n.alphaMode||ee.OPAQUE;if(c===ee.BLEND?(a.transparent=!0,a.depthWrite=!1):(a.transparent=!1,c===ee.MASK&&(a.alphaTest=n.alphaCutoff!==void 0?n.alphaCutoff:.5)),n.normalTexture!==void 0&&o!==N&&(A.push(t.assignTexture(a,"normalMap",n.normalTexture)),a.normalScale=new me(1,1),n.normalTexture.scale!==void 0)){const B=n.normalTexture.scale;a.normalScale.set(B,B)}if(n.occlusionTexture!==void 0&&o!==N&&(A.push(t.assignTexture(a,"aoMap",n.occlusionTexture)),n.occlusionTexture.strength!==void 0&&(a.aoMapIntensity=n.occlusionTexture.strength)),n.emissiveFactor!==void 0&&o!==N){const B=n.emissiveFactor;a.emissive=new S().setRGB(B[0],B[1],B[2],g)}return n.emissiveTexture!==void 0&&o!==N&&A.push(t.assignTexture(a,"emissiveMap",n.emissiveTexture,O)),Promise.all(A).then(function(){const B=new o(a);return n.name&&(B.name=n.name),H(B,n),t.associations.set(B,{materials:e}),n.extensions&&L(s,B,n),B})}createUniqueName(e){const t=Ve.sanitizeNodeName(e||"");return t in this.nodeNamesUsed?t+"_"+ ++this.nodeNamesUsed[t]:(this.nodeNamesUsed[t]=0,t)}loadGeometries(e){const t=this,r=this.extensions,s=this.primitiveCache;function n(a){return r[F.KHR_DRACO_MESH_COMPRESSION].decodePrimitive(a,t).then(function(i){return Fe(i,a,t)})}const o=[];for(let a=0,i=e.length;a<i;a++){const A=e[a],c=Wt(A),B=s[c];if(B)o.push(B.promise);else{let C;A.extensions&&A.extensions[F.KHR_DRACO_MESH_COMPRESSION]?C=n(A):C=Fe(new Te,A,t),s[c]={primitive:A,promise:C},o.push(C)}}return Promise.all(o)}loadMesh(e){const t=this,r=this.json,s=this.extensions,n=r.meshes[e],o=n.primitives,a=[];for(let i=0,A=o.length;i<A;i++){const c=o[i].material===void 0?Yt(this.cache):this.getDependency("material",o[i].material);a.push(c)}return a.push(t.loadGeometries(o)),Promise.all(a).then(function(i){const A=i.slice(0,i.length-1),c=i[i.length-1],B=[];for(let u=0,h=c.length;u<h;u++){const d=c[u],f=o[u];let G;const p=A[u];if(f.mode===D.TRIANGLES||f.mode===D.TRIANGLE_STRIP||f.mode===D.TRIANGLE_FAN||f.mode===void 0)G=n.isSkinnedMesh===!0?new qe(d,p):new ze(d,p),G.isSkinnedMesh===!0&&G.normalizeSkinWeights(),f.mode===D.TRIANGLE_STRIP?G.geometry=ue(G.geometry,dt):f.mode===D.TRIANGLE_FAN&&(G.geometry=ue(G.geometry,ft));else if(f.mode===D.LINES)G=new $e(d,p);else if(f.mode===D.LINE_STRIP)G=new et(d,p);else if(f.mode===D.LINE_LOOP)G=new tt(d,p);else if(f.mode===D.POINTS)G=new st(d,p);else throw new Error("THREE.GLTFLoader: Primitive mode unsupported: "+f.mode);Object.keys(G.geometry.morphAttributes).length>0&&Zt(G,n),G.name=t.createUniqueName(n.name||"mesh_"+e),H(G,n),f.extensions&&L(s,G,f),t.assignFinalMaterial(G),B.push(G)}for(let u=0,h=B.length;u<h;u++)t.associations.set(B[u],{meshes:e,primitives:u});if(B.length===1)return n.extensions&&L(s,B[0],n),B[0];const C=new z;n.extensions&&L(s,C,n),t.associations.set(C,{meshes:e});for(let u=0,h=B.length;u<h;u++)C.add(B[u]);return C})}loadCamera(e){let t;const r=this.json.cameras[e],s=r[r.type];if(!s){console.warn("THREE.GLTFLoader: Missing camera parameters.");return}return r.type==="perspective"?t=new nt(rt.radToDeg(s.yfov),s.aspectRatio||1,s.znear||1,s.zfar||2e6):r.type==="orthographic"&&(t=new ot(-s.xmag,s.xmag,s.ymag,-s.ymag,s.znear,s.zfar)),r.name&&(t.name=this.createUniqueName(r.name)),H(t,r),Promise.resolve(t)}loadSkin(e){const t=this.json.skins[e],r=[];for(let s=0,n=t.joints.length;s<n;s++)r.push(this._loadNodeShallow(t.joints[s]));return t.inverseBindMatrices!==void 0?r.push(this.getDependency("accessor",t.inverseBindMatrices)):r.push(null),Promise.all(r).then(function(s){const n=s.pop(),o=s,a=[],i=[];for(let A=0,c=o.length;A<c;A++){const B=o[A];if(B){a.push(B);const C=new X;n!==null&&C.fromArray(n.array,A*16),i.push(C)}else console.warn('THREE.GLTFLoader: Joint "%s" could not be found.',t.joints[A])}return new it(a,i)})}loadAnimation(e){const t=this.json,r=this,s=t.animations[e],n=s.name?s.name:"animation_"+e,o=[],a=[],i=[],A=[],c=[];for(let B=0,C=s.channels.length;B<C;B++){const u=s.channels[B],h=s.samplers[u.sampler],d=u.target,f=d.node,G=s.parameters!==void 0?s.parameters[h.input]:h.input,p=s.parameters!==void 0?s.parameters[h.output]:h.output;d.node!==void 0&&(o.push(this.getDependency("node",f)),a.push(this.getDependency("accessor",G)),i.push(this.getDependency("accessor",p)),A.push(h),c.push(d))}return Promise.all([Promise.all(o),Promise.all(a),Promise.all(i),Promise.all(A),Promise.all(c)]).then(function(B){const C=B[0],u=B[1],h=B[2],d=B[3],f=B[4],G=[];for(let p=0,E=C.length;p<E;p++){const m=C[p],M=u[p],I=h[p],R=d[p],P=f[p];if(m===void 0)continue;m.updateMatrix&&m.updateMatrix();const J=r._createAnimationTracks(m,M,I,R,P);if(J)for(let W=0;W<J.length;W++)G.push(J[W])}return new at(n,void 0,G)})}createNodeMesh(e){const t=this.json,r=this,s=t.nodes[e];return s.mesh===void 0?null:r.getDependency("mesh",s.mesh).then(function(n){const o=r._getNodeRef(r.meshCache,s.mesh,n);return s.weights!==void 0&&o.traverse(function(a){if(a.isMesh)for(let i=0,A=s.weights.length;i<A;i++)a.morphTargetInfluences[i]=s.weights[i]}),o})}loadNode(e){const t=this.json,r=this,s=t.nodes[e],n=r._loadNodeShallow(e),o=[],a=s.children||[];for(let A=0,c=a.length;A<c;A++)o.push(r.getDependency("node",a[A]));const i=s.skin===void 0?Promise.resolve(null):r.getDependency("skin",s.skin);return Promise.all([n,Promise.all(o),i]).then(function(A){const c=A[0],B=A[1],C=A[2];C!==null&&c.traverse(function(u){u.isSkinnedMesh&&u.bind(C,qt)});for(let u=0,h=B.length;u<h;u++)c.add(B[u]);return c})}_loadNodeShallow(e){const t=this.json,r=this.extensions,s=this;if(this.nodeCache[e]!==void 0)return this.nodeCache[e];const n=t.nodes[e],o=n.name?s.createUniqueName(n.name):"",a=[],i=s._invokeOne(function(A){return A.createNodeMesh&&A.createNodeMesh(e)});return i&&a.push(i),n.camera!==void 0&&a.push(s.getDependency("camera",n.camera).then(function(A){return s._getNodeRef(s.cameraCache,n.camera,A)})),s._invokeAll(function(A){return A.createNodeAttachment&&A.createNodeAttachment(e)}).forEach(function(A){a.push(A)}),this.nodeCache[e]=Promise.all(a).then(function(A){let c;if(n.isBone===!0?c=new At:A.length>1?c=new z:A.length===1?c=A[0]:c=new Me,c!==A[0])for(let B=0,C=A.length;B<C;B++)c.add(A[B]);if(n.name&&(c.userData.name=n.name,c.name=o),H(c,n),n.extensions&&L(r,c,n),n.matrix!==void 0){const B=new X;B.fromArray(n.matrix),c.applyMatrix4(B)}else n.translation!==void 0&&c.position.fromArray(n.translation),n.rotation!==void 0&&c.quaternion.fromArray(n.rotation),n.scale!==void 0&&c.scale.fromArray(n.scale);return s.associations.has(c)||s.associations.set(c,{}),s.associations.get(c).nodes=e,c}),this.nodeCache[e]}loadScene(e){const t=this.extensions,r=this.json.scenes[e],s=this,n=new z;r.name&&(n.name=s.createUniqueName(r.name)),H(n,r),r.extensions&&L(t,n,r);const o=r.nodes||[],a=[];for(let i=0,A=o.length;i<A;i++)a.push(s.getDependency("node",o[i]));return Promise.all(a).then(function(i){for(let c=0,B=i.length;c<B;c++)n.add(i[c]);const A=c=>{const B=new Map;for(const[C,u]of s.associations)(C instanceof q||C instanceof Y)&&B.set(C,u);return c.traverse(C=>{const u=s.associations.get(C);u!=null&&B.set(C,u)}),B};return s.associations=A(n),n})}_createAnimationTracks(e,t,r,s,n){const o=[],a=e.name?e.name:e.uuid,i=[];b[n.path]===b.weights?e.traverse(function(C){C.morphTargetInfluences&&i.push(C.name?C.name:C.uuid)}):i.push(a);let A;switch(b[n.path]){case b.weights:A=Ce;break;case b.rotation:A=le;break;case b.position:case b.scale:A=ce;break;default:switch(r.itemSize){case 1:A=Ce;break;case 2:case 3:default:A=ce;break}break}const c=s.interpolation!==void 0?Xt[s.interpolation]:He,B=this._getArrayFromAccessor(r);for(let C=0,u=i.length;C<u;C++){const h=new A(i[C]+"."+b[n.path],t.array,B,c);s.interpolation==="CUBICSPLINE"&&this._createCubicSplineTrackInterpolant(h),o.push(h)}return o}_getArrayFromAccessor(e){let t=e.array;if(e.normalized){const r=ae(t.constructor),s=new Float32Array(t.length);for(let n=0,o=t.length;n<o;n++)s[n]=t[n]*r;t=s}return t}_createCubicSplineTrackInterpolant(e){e.createInterpolant=function(r){const s=this instanceof le?kt:Je;return new s(this.times,this.values,this.getValueSize()/3,r)},e.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline=!0}}function $t(l,e,t){const r=e.attributes,s=new ut;if(r.POSITION!==void 0){const a=t.json.accessors[r.POSITION],i=a.min,A=a.max;if(i!==void 0&&A!==void 0){if(s.set(new y(i[0],i[1],i[2]),new y(A[0],A[1],A[2])),a.normalized){const c=ae(K[a.componentType]);s.min.multiplyScalar(c),s.max.multiplyScalar(c)}}else{console.warn("THREE.GLTFLoader: Missing min/max properties for accessor POSITION.");return}}else return;const n=e.targets;if(n!==void 0){const a=new y,i=new y;for(let A=0,c=n.length;A<c;A++){const B=n[A];if(B.POSITION!==void 0){const C=t.json.accessors[B.POSITION],u=C.min,h=C.max;if(u!==void 0&&h!==void 0){if(i.setX(Math.max(Math.abs(u[0]),Math.abs(h[0]))),i.setY(Math.max(Math.abs(u[1]),Math.abs(h[1]))),i.setZ(Math.max(Math.abs(u[2]),Math.abs(h[2]))),C.normalized){const d=ae(K[C.componentType]);i.multiplyScalar(d)}a.max(i)}else console.warn("THREE.GLTFLoader: Missing min/max properties for accessor POSITION.")}}s.expandByVector(a)}l.boundingBox=s;const o=new ht;s.getCenter(o.center),o.radius=s.min.distanceTo(s.max)/2,l.boundingSphere=o}function Fe(l,e,t){const r=e.attributes,s=[];function n(o,a){return t.getDependency("accessor",o).then(function(i){l.setAttribute(a,i)})}for(const o in r){const a=ie[o]||o.toLowerCase();a in l.attributes||s.push(n(r[o],a))}if(e.indices!==void 0&&!l.index){const o=t.getDependency("accessor",e.indices).then(function(a){l.setIndex(a)});s.push(o)}return H(l,e),$t(l,e,t),Promise.all(s).then(function(){return e.targets!==void 0?jt(l,e.targets,t):l})}const se=new WeakMap;class es extends pe{constructor(e){super(e),this.decoderPath="",this.decoderConfig={},this.decoderBinary=null,this.decoderPending=null,this.workerLimit=4,this.workerPool=[],this.workerNextTaskID=1,this.workerSourceURL="",this.defaultAttributeIDs={position:"POSITION",normal:"NORMAL",color:"COLOR",uv:"TEX_COORD"},this.defaultAttributeTypes={position:"Float32Array",normal:"Float32Array",color:"Float32Array",uv:"Float32Array"}}setDecoderPath(e){return this.decoderPath=e,this}setDecoderConfig(e){return this.decoderConfig=e,this}setWorkerLimit(e){return this.workerLimit=e,this}load(e,t,r,s){const n=new k(this.manager);n.setPath(this.path),n.setResponseType("arraybuffer"),n.setRequestHeader(this.requestHeader),n.setWithCredentials(this.withCredentials),n.load(e,o=>{const a={attributeIDs:this.defaultAttributeIDs,attributeTypes:this.defaultAttributeTypes,useUniqueIDs:!1};this.decodeGeometry(o,a).then(t).catch(s)},r,s)}decodeDracoFile(e,t,r,s){const n={attributeIDs:r||this.defaultAttributeIDs,attributeTypes:s||this.defaultAttributeTypes,useUniqueIDs:!!r};this.decodeGeometry(e,n).then(t)}decodeGeometry(e,t){for(const i in t.attributeTypes){const A=t.attributeTypes[i];A.BYTES_PER_ELEMENT!==void 0&&(t.attributeTypes[i]=A.name)}const r=JSON.stringify(t);if(se.has(e)){const i=se.get(e);if(i.key===r)return i.promise;if(e.byteLength===0)throw new Error("THREE.DRACOLoader: Unable to re-decode a buffer with different settings. Buffer has already been transferred.")}let s;const n=this.workerNextTaskID++,o=e.byteLength,a=this._getWorker(n,o).then(i=>(s=i,new Promise((A,c)=>{s._callbacks[n]={resolve:A,reject:c},s.postMessage({type:"decode",id:n,taskConfig:t,buffer:e},[e])}))).then(i=>this._createGeometry(i.geometry));return a.catch(()=>!0).then(()=>{s&&n&&this._releaseTask(s,n)}),se.set(e,{key:r,promise:a}),a}_createGeometry(e){const t=new Te;e.index&&t.setIndex(new w(e.index.array,1));for(let r=0;r<e.attributes.length;r++){const s=e.attributes[r],n=s.name,o=s.array,a=s.itemSize;t.setAttribute(n,new w(o,a))}return t}_loadLibrary(e,t){const r=new k(this.manager);return r.setPath(this.decoderPath),r.setResponseType(t),r.setWithCredentials(this.withCredentials),new Promise((s,n)=>{r.load(e,s,void 0,n)})}preload(){return this._initDecoder(),this}_initDecoder(){if(this.decoderPending)return this.decoderPending;const e=typeof WebAssembly!="object"||this.decoderConfig.type==="js",t=[];return e?t.push(this._loadLibrary("draco_decoder.js","text")):(t.push(this._loadLibrary("draco_wasm_wrapper.js","text")),t.push(this._loadLibrary("draco_decoder.wasm","arraybuffer"))),this.decoderPending=Promise.all(t).then(r=>{const s=r[0];e||(this.decoderConfig.wasmBinary=r[1]);const n=ts.toString(),o=["/* draco decoder */",s,"","/* worker */",n.substring(n.indexOf("{")+1,n.lastIndexOf("}"))].join(`
|
|
2
|
+
`);this.workerSourceURL=URL.createObjectURL(new Blob([o]))}),this.decoderPending}_getWorker(e,t){return this._initDecoder().then(()=>{if(this.workerPool.length<this.workerLimit){const s=new Worker(this.workerSourceURL);s._callbacks={},s._taskCosts={},s._taskLoad=0,s.postMessage({type:"init",decoderConfig:this.decoderConfig}),s.onmessage=function(n){const o=n.data;switch(o.type){case"decode":s._callbacks[o.id].resolve(o);break;case"error":s._callbacks[o.id].reject(o);break;default:console.error('THREE.DRACOLoader: Unexpected message, "'+o.type+'"')}},this.workerPool.push(s)}else this.workerPool.sort(function(s,n){return s._taskLoad>n._taskLoad?-1:1});const r=this.workerPool[this.workerPool.length-1];return r._taskCosts[e]=t,r._taskLoad+=t,r})}_releaseTask(e,t){e._taskLoad-=e._taskCosts[t],delete e._callbacks[t],delete e._taskCosts[t]}debug(){console.log("Task load: ",this.workerPool.map(e=>e._taskLoad))}dispose(){for(let e=0;e<this.workerPool.length;++e)this.workerPool[e].terminate();return this.workerPool.length=0,this}}function ts(){let l,e;onmessage=function(o){const a=o.data;switch(a.type){case"init":l=a.decoderConfig,e=new Promise(function(c){l.onModuleLoaded=function(B){c({draco:B})},DracoDecoderModule(l)});break;case"decode":const i=a.buffer,A=a.taskConfig;e.then(c=>{const B=c.draco,C=new B.Decoder,u=new B.DecoderBuffer;u.Init(new Int8Array(i),i.byteLength);try{const h=t(B,C,u,A),d=h.attributes.map(f=>f.array.buffer);h.index&&d.push(h.index.array.buffer),self.postMessage({type:"decode",id:a.id,geometry:h},d)}catch(h){console.error(h),self.postMessage({type:"error",id:a.id,error:h.message})}finally{B.destroy(u),B.destroy(C)}});break}};function t(o,a,i,A){const c=A.attributeIDs,B=A.attributeTypes;let C,u;const h=a.GetEncodedGeometryType(i);if(h===o.TRIANGULAR_MESH)C=new o.Mesh,u=a.DecodeBufferToMesh(i,C);else if(h===o.POINT_CLOUD)C=new o.PointCloud,u=a.DecodeBufferToPointCloud(i,C);else throw new Error("THREE.DRACOLoader: Unexpected geometry type.");if(!u.ok()||C.ptr===0)throw new Error("THREE.DRACOLoader: Decoding failed: "+u.error_msg());const d={index:null,attributes:[]};for(const f in c){const G=self[B[f]];let p,E;if(A.useUniqueIDs)E=c[f],p=a.GetAttributeByUniqueId(C,E);else{if(E=a.GetAttributeId(C,o[c[f]]),E===-1)continue;p=a.GetAttribute(C,E)}d.attributes.push(s(o,a,C,f,G,p))}return h===o.TRIANGULAR_MESH&&(d.index=r(o,a,C)),o.destroy(C),d}function r(o,a,i){const c=i.num_faces()*3,B=c*4,C=o._malloc(B);a.GetTrianglesUInt32Array(i,B,C);const u=new Uint32Array(o.HEAPF32.buffer,C,c).slice();return o._free(C),{array:u,itemSize:1}}function s(o,a,i,A,c,B){const C=B.num_components(),h=i.num_points()*C,d=h*c.BYTES_PER_ELEMENT,f=n(o,c),G=o._malloc(d);a.GetAttributeDataArrayForAllPoints(i,B,f,d,G);const p=new c(o.HEAPF32.buffer,G,h).slice();return o._free(G),{name:A,array:p,itemSize:C}}function n(o,a){switch(a){case Float32Array:return o.DT_FLOAT32;case Int8Array:return o.DT_INT8;case Int16Array:return o.DT_INT16;case Int32Array:return o.DT_INT32;case Uint8Array:return o.DT_UINT8;case Uint16Array:return o.DT_UINT16;case Uint32Array:return o.DT_UINT32}}}let _;const ne=()=>{if(_)return _;const l="B9h9z9tFBBBF8fL9gBB9gLaaaaaFa9gEaaaB9gFaFa9gEaaaFaEMcBFFFGGGEIIILF9wFFFLEFBFKNFaFCx/IFMO/LFVK9tv9t9vq95GBt9f9f939h9z9t9f9j9h9s9s9f9jW9vq9zBBp9tv9z9o9v9wW9f9kv9j9v9kv9WvqWv94h919m9mvqBF8Z9tv9z9o9v9wW9f9kv9j9v9kv9J9u9kv94h919m9mvqBGy9tv9z9o9v9wW9f9kv9j9v9kv9J9u9kv949TvZ91v9u9jvBEn9tv9z9o9v9wW9f9kv9j9v9kv69p9sWvq9P9jWBIi9tv9z9o9v9wW9f9kv9j9v9kv69p9sWvq9R919hWBLn9tv9z9o9v9wW9f9kv9j9v9kv69p9sWvq9F949wBKI9z9iqlBOc+x8ycGBM/qQFTa8jUUUUBCU/EBlHL8kUUUUBC9+RKGXAGCFJAI9LQBCaRKAE2BBC+gF9HQBALAEAIJHOAGlAGTkUUUBRNCUoBAG9uC/wgBZHKCUGAKCUG9JyRVAECFJRICBRcGXEXAcAF9PQFAVAFAclAcAVJAF9JyRMGXGXAG9FQBAMCbJHKC9wZRSAKCIrCEJCGrRQANCUGJRfCBRbAIRTEXGXAOATlAQ9PQBCBRISEMATAQJRIGXAS9FQBCBRtCBREEXGXAOAIlCi9PQBCBRISLMANCU/CBJAEJRKGXGXGXGXGXATAECKrJ2BBAtCKZrCEZfIBFGEBMAKhB83EBAKCNJhB83EBSEMAKAI2BIAI2BBHmCKrHYAYCE6HYy86BBAKCFJAICIJAYJHY2BBAmCIrCEZHPAPCE6HPy86BBAKCGJAYAPJHY2BBAmCGrCEZHPAPCE6HPy86BBAKCEJAYAPJHY2BBAmCEZHmAmCE6Hmy86BBAKCIJAYAmJHY2BBAI2BFHmCKrHPAPCE6HPy86BBAKCLJAYAPJHY2BBAmCIrCEZHPAPCE6HPy86BBAKCKJAYAPJHY2BBAmCGrCEZHPAPCE6HPy86BBAKCOJAYAPJHY2BBAmCEZHmAmCE6Hmy86BBAKCNJAYAmJHY2BBAI2BGHmCKrHPAPCE6HPy86BBAKCVJAYAPJHY2BBAmCIrCEZHPAPCE6HPy86BBAKCcJAYAPJHY2BBAmCGrCEZHPAPCE6HPy86BBAKCMJAYAPJHY2BBAmCEZHmAmCE6Hmy86BBAKCSJAYAmJHm2BBAI2BEHICKrHYAYCE6HYy86BBAKCQJAmAYJHm2BBAICIrCEZHYAYCE6HYy86BBAKCfJAmAYJHm2BBAICGrCEZHYAYCE6HYy86BBAKCbJAmAYJHK2BBAICEZHIAICE6HIy86BBAKAIJRISGMAKAI2BNAI2BBHmCIrHYAYCb6HYy86BBAKCFJAICNJAYJHY2BBAmCbZHmAmCb6Hmy86BBAKCGJAYAmJHm2BBAI2BFHYCIrHPAPCb6HPy86BBAKCEJAmAPJHm2BBAYCbZHYAYCb6HYy86BBAKCIJAmAYJHm2BBAI2BGHYCIrHPAPCb6HPy86BBAKCLJAmAPJHm2BBAYCbZHYAYCb6HYy86BBAKCKJAmAYJHm2BBAI2BEHYCIrHPAPCb6HPy86BBAKCOJAmAPJHm2BBAYCbZHYAYCb6HYy86BBAKCNJAmAYJHm2BBAI2BIHYCIrHPAPCb6HPy86BBAKCVJAmAPJHm2BBAYCbZHYAYCb6HYy86BBAKCcJAmAYJHm2BBAI2BLHYCIrHPAPCb6HPy86BBAKCMJAmAPJHm2BBAYCbZHYAYCb6HYy86BBAKCSJAmAYJHm2BBAI2BKHYCIrHPAPCb6HPy86BBAKCQJAmAPJHm2BBAYCbZHYAYCb6HYy86BBAKCfJAmAYJHm2BBAI2BOHICIrHYAYCb6HYy86BBAKCbJAmAYJHK2BBAICbZHIAICb6HIy86BBAKAIJRISFMAKAI8pBB83BBAKCNJAICNJ8pBB83BBAICTJRIMAtCGJRtAECTJHEAS9JQBMMGXAIQBCBRISEMGXAM9FQBANAbJ2BBRtCBRKAfREEXAEANCU/CBJAKJ2BBHTCFrCBATCFZl9zAtJHt86BBAEAGJREAKCFJHKAM9HQBMMAfCFJRfAIRTAbCFJHbAG9HQBMMABAcAG9sJANCUGJAMAG9sTkUUUBpANANCUGJAMCaJAG9sJAGTkUUUBpMAMCBAIyAcJRcAIQBMC9+RKSFMCBC99AOAIlAGCAAGCA9Ly6yRKMALCU/EBJ8kUUUUBAKM+OmFTa8jUUUUBCoFlHL8kUUUUBC9+RKGXAFCE9uHOCtJAI9LQBCaRKAE2BBHNC/wFZC/gF9HQBANCbZHVCF9LQBALCoBJCgFCUFT+JUUUBpALC84Jha83EBALC8wJha83EBALC8oJha83EBALCAJha83EBALCiJha83EBALCTJha83EBALha83ENALha83EBAEAIJC9wJRcAECFJHNAOJRMGXAF9FQBCQCbAVCF6yRSABRECBRVCBRQCBRfCBRICBRKEXGXAMAcuQBC9+RKSEMGXGXAN2BBHOC/vF9LQBALCoBJAOCIrCa9zAKJCbZCEWJHb8oGIRTAb8oGBRtGXAOCbZHbAS9PQBALAOCa9zAIJCbZCGWJ8oGBAVAbyROAb9FRbGXGXAGCG9HQBABAt87FBABCIJAO87FBABCGJAT87FBSFMAEAtjGBAECNJAOjGBAECIJATjGBMAVAbJRVALCoBJAKCEWJHmAOjGBAmATjGIALAICGWJAOjGBALCoBJAKCFJCbZHKCEWJHTAtjGBATAOjGIAIAbJRIAKCFJRKSGMGXGXAbCb6QBAQAbJAbC989zJCFJRQSFMAM1BBHbCgFZROGXGXAbCa9MQBAMCFJRMSFMAM1BFHbCgBZCOWAOCgBZqROGXAbCa9MQBAMCGJRMSFMAM1BGHbCgBZCfWAOqROGXAbCa9MQBAMCEJRMSFMAM1BEHbCgBZCdWAOqROGXAbCa9MQBAMCIJRMSFMAM2BIC8cWAOqROAMCLJRMMAOCFrCBAOCFZl9zAQJRQMGXGXAGCG9HQBABAt87FBABCIJAQ87FBABCGJAT87FBSFMAEAtjGBAECNJAQjGBAECIJATjGBMALCoBJAKCEWJHOAQjGBAOATjGIALAICGWJAQjGBALCoBJAKCFJCbZHKCEWJHOAtjGBAOAQjGIAICFJRIAKCFJRKSFMGXAOCDF9LQBALAIAcAOCbZJ2BBHbCIrHTlCbZCGWJ8oGBAVCFJHtATyROALAIAblCbZCGWJ8oGBAtAT9FHmJHtAbCbZHTyRbAT9FRTGXGXAGCG9HQBABAV87FBABCIJAb87FBABCGJAO87FBSFMAEAVjGBAECNJAbjGBAECIJAOjGBMALAICGWJAVjGBALCoBJAKCEWJHYAOjGBAYAVjGIALAICFJHICbZCGWJAOjGBALCoBJAKCFJCbZCEWJHYAbjGBAYAOjGIALAIAmJCbZHICGWJAbjGBALCoBJAKCGJCbZHKCEWJHOAVjGBAOAbjGIAKCFJRKAIATJRIAtATJRVSFMAVCBAM2BBHYyHTAOC/+F6HPJROAYCbZRtGXGXAYCIrHmQBAOCFJRbSFMAORbALAIAmlCbZCGWJ8oGBROMGXGXAtQBAbCFJRVSFMAbRVALAIAYlCbZCGWJ8oGBRbMGXGXAP9FQBAMCFJRYSFMAM1BFHYCgFZRTGXGXAYCa9MQBAMCGJRYSFMAM1BGHYCgBZCOWATCgBZqRTGXAYCa9MQBAMCEJRYSFMAM1BEHYCgBZCfWATqRTGXAYCa9MQBAMCIJRYSFMAM1BIHYCgBZCdWATqRTGXAYCa9MQBAMCLJRYSFMAMCKJRYAM2BLC8cWATqRTMATCFrCBATCFZl9zAQJHQRTMGXGXAmCb6QBAYRPSFMAY1BBHMCgFZROGXGXAMCa9MQBAYCFJRPSFMAY1BFHMCgBZCOWAOCgBZqROGXAMCa9MQBAYCGJRPSFMAY1BGHMCgBZCfWAOqROGXAMCa9MQBAYCEJRPSFMAY1BEHMCgBZCdWAOqROGXAMCa9MQBAYCIJRPSFMAYCLJRPAY2BIC8cWAOqROMAOCFrCBAOCFZl9zAQJHQROMGXGXAtCb6QBAPRMSFMAP1BBHMCgFZRbGXGXAMCa9MQBAPCFJRMSFMAP1BFHMCgBZCOWAbCgBZqRbGXAMCa9MQBAPCGJRMSFMAP1BGHMCgBZCfWAbqRbGXAMCa9MQBAPCEJRMSFMAP1BEHMCgBZCdWAbqRbGXAMCa9MQBAPCIJRMSFMAPCLJRMAP2BIC8cWAbqRbMAbCFrCBAbCFZl9zAQJHQRbMGXGXAGCG9HQBABAT87FBABCIJAb87FBABCGJAO87FBSFMAEATjGBAECNJAbjGBAECIJAOjGBMALCoBJAKCEWJHYAOjGBAYATjGIALAICGWJATjGBALCoBJAKCFJCbZCEWJHYAbjGBAYAOjGIALAICFJHICbZCGWJAOjGBALCoBJAKCGJCbZCEWJHOATjGBAOAbjGIALAIAm9FAmCb6qJHICbZCGWJAbjGBAIAt9FAtCb6qJRIAKCEJRKMANCFJRNABCKJRBAECSJREAKCbZRKAICbZRIAfCEJHfAF9JQBMMCBC99AMAc6yRKMALCoFJ8kUUUUBAKM/tIFGa8jUUUUBCTlRLC9+RKGXAFCLJAI9LQBCaRKAE2BBC/+FZC/QF9HQBALhB83ENAECFJRKAEAIJC98JREGXAF9FQBGXAGCG6QBEXGXAKAE9JQBC9+bMAK1BBHGCgFZRIGXGXAGCa9MQBAKCFJRKSFMAK1BFHGCgBZCOWAICgBZqRIGXAGCa9MQBAKCGJRKSFMAK1BGHGCgBZCfWAIqRIGXAGCa9MQBAKCEJRKSFMAK1BEHGCgBZCdWAIqRIGXAGCa9MQBAKCIJRKSFMAK2BIC8cWAIqRIAKCLJRKMALCNJAICFZCGWqHGAICGrCBAICFrCFZl9zAG8oGBJHIjGBABAIjGBABCIJRBAFCaJHFQBSGMMEXGXAKAE9JQBC9+bMAK1BBHGCgFZRIGXGXAGCa9MQBAKCFJRKSFMAK1BFHGCgBZCOWAICgBZqRIGXAGCa9MQBAKCGJRKSFMAK1BGHGCgBZCfWAIqRIGXAGCa9MQBAKCEJRKSFMAK1BEHGCgBZCdWAIqRIGXAGCa9MQBAKCIJRKSFMAK2BIC8cWAIqRIAKCLJRKMABAICGrCBAICFrCFZl9zALCNJAICFZCGWqHI8oGBJHG87FBAIAGjGBABCGJRBAFCaJHFQBMMCBC99AKAE6yRKMAKM+lLKFaF99GaG99FaG99GXGXAGCI9HQBAF9FQFEXGXGX9DBBB8/9DBBB+/ABCGJHG1BB+yAB1BBHE+yHI+L+TABCFJHL1BBHK+yHO+L+THN9DBBBB9gHVyAN9DBB/+hANAN+U9DBBBBANAVyHcAc+MHMAECa3yAI+SHIAI+UAcAMAKCa3yAO+SHcAc+U+S+S+R+VHO+U+SHN+L9DBBB9P9d9FQBAN+oRESFMCUUUU94REMAGAE86BBGXGX9DBBB8/9DBBB+/Ac9DBBBB9gyAcAO+U+SHN+L9DBBB9P9d9FQBAN+oRGSFMCUUUU94RGMALAG86BBGXGX9DBBB8/9DBBB+/AI9DBBBB9gyAIAO+U+SHN+L9DBBB9P9d9FQBAN+oRGSFMCUUUU94RGMABAG86BBABCIJRBAFCaJHFQBSGMMAF9FQBEXGXGX9DBBB8/9DBBB+/ABCIJHG8uFB+yAB8uFBHE+yHI+L+TABCGJHL8uFBHK+yHO+L+THN9DBBBB9gHVyAN9DB/+g6ANAN+U9DBBBBANAVyHcAc+MHMAECa3yAI+SHIAI+UAcAMAKCa3yAO+SHcAc+U+S+S+R+VHO+U+SHN+L9DBBB9P9d9FQBAN+oRESFMCUUUU94REMAGAE87FBGXGX9DBBB8/9DBBB+/Ac9DBBBB9gyAcAO+U+SHN+L9DBBB9P9d9FQBAN+oRGSFMCUUUU94RGMALAG87FBGXGX9DBBB8/9DBBB+/AI9DBBBB9gyAIAO+U+SHN+L9DBBB9P9d9FQBAN+oRGSFMCUUUU94RGMABAG87FBABCNJRBAFCaJHFQBMMM/SEIEaE99EaF99GXAF9FQBCBREABRIEXGXGX9D/zI818/AICKJ8uFBHLCEq+y+VHKAI8uFB+y+UHO9DB/+g6+U9DBBB8/9DBBB+/AO9DBBBB9gy+SHN+L9DBBB9P9d9FQBAN+oRVSFMCUUUU94RVMAICIJ8uFBRcAICGJ8uFBRMABALCFJCEZAEqCFWJAV87FBGXGXAKAM+y+UHN9DB/+g6+U9DBBB8/9DBBB+/AN9DBBBB9gy+SHS+L9DBBB9P9d9FQBAS+oRMSFMCUUUU94RMMABALCGJCEZAEqCFWJAM87FBGXGXAKAc+y+UHK9DB/+g6+U9DBBB8/9DBBB+/AK9DBBBB9gy+SHS+L9DBBB9P9d9FQBAS+oRcSFMCUUUU94RcMABALCaJCEZAEqCFWJAc87FBGXGX9DBBU8/AOAO+U+TANAN+U+TAKAK+U+THO9DBBBBAO9DBBBB9gy+R9DB/+g6+U9DBBB8/+SHO+L9DBBB9P9d9FQBAO+oRcSFMCUUUU94RcMABALCEZAEqCFWJAc87FBAICNJRIAECIJREAFCaJHFQBMMM9JBGXAGCGrAF9sHF9FQBEXABAB8oGBHGCNWCN91+yAGCi91CnWCUUU/8EJ+++U84GBABCIJRBAFCaJHFQBMMM9TFEaCBCB8oGUkUUBHFABCEJC98ZJHBjGUkUUBGXGXAB8/BCTWHGuQBCaREABAGlCggEJCTrXBCa6QFMAFREMAEM/lFFFaGXGXAFABqCEZ9FQBABRESFMGXGXAGCT9PQBABRESFMABREEXAEAF8oGBjGBAECIJAFCIJ8oGBjGBAECNJAFCNJ8oGBjGBAECSJAFCSJ8oGBjGBAECTJREAFCTJRFAGC9wJHGCb9LQBMMAGCI9JQBEXAEAF8oGBjGBAFCIJRFAECIJREAGC98JHGCE9LQBMMGXAG9FQBEXAEAF2BB86BBAECFJREAFCFJRFAGCaJHGQBMMABMoFFGaGXGXABCEZ9FQBABRESFMAFCgFZC+BwsN9sRIGXGXAGCT9PQBABRESFMABREEXAEAIjGBAECSJAIjGBAECNJAIjGBAECIJAIjGBAECTJREAGC9wJHGCb9LQBMMAGCI9JQBEXAEAIjGBAECIJREAGC98JHGCE9LQBMMGXAG9FQBEXAEAF86BBAECFJREAGCaJHGQBMMABMMMFBCUNMIT9kBB",e="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",t=new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,3,2,0,0,5,3,1,0,1,12,1,0,10,22,2,12,0,65,0,65,0,65,0,252,10,0,0,11,7,0,65,0,253,15,26,11]),r=new Uint8Array([32,0,65,253,3,1,2,34,4,106,6,5,11,8,7,20,13,33,12,16,128,9,116,64,19,113,127,15,10,21,22,14,255,66,24,54,136,107,18,23,192,26,114,118,132,17,77,101,130,144,27,87,131,44,45,74,156,154,70,167]);if(typeof WebAssembly!="object")return{supported:!1};let s=l;WebAssembly.validate(t)&&(s=e);let n;const o=WebAssembly.instantiate(a(s),{}).then(B=>{n=B.instance,n.exports.__wasm_call_ctors()});function a(B){const C=new Uint8Array(B.length);for(let h=0;h<B.length;++h){const d=B.charCodeAt(h);C[h]=d>96?d-71:d>64?d-65:d>47?d+4:d>46?63:62}let u=0;for(let h=0;h<B.length;++h)C[u++]=C[h]<60?r[C[h]]:(C[h]-60)*64+C[++h];return C.buffer.slice(0,u)}function i(B,C,u,h,d,f){const G=n.exports.sbrk,p=u+3&-4,E=G(p*h),m=G(d.length),M=new Uint8Array(n.exports.memory.buffer);M.set(d,m);const I=B(E,u,h,m,d.length);if(I===0&&f&&f(E,p,h),C.set(M.subarray(E,E+u*h)),G(E-G(0)),I!==0)throw new Error(`Malformed buffer data: ${I}`)}const A={0:"",1:"meshopt_decodeFilterOct",2:"meshopt_decodeFilterQuat",3:"meshopt_decodeFilterExp",NONE:"",OCTAHEDRAL:"meshopt_decodeFilterOct",QUATERNION:"meshopt_decodeFilterQuat",EXPONENTIAL:"meshopt_decodeFilterExp"},c={0:"meshopt_decodeVertexBuffer",1:"meshopt_decodeIndexBuffer",2:"meshopt_decodeIndexSequence",ATTRIBUTES:"meshopt_decodeVertexBuffer",TRIANGLES:"meshopt_decodeIndexBuffer",INDICES:"meshopt_decodeIndexSequence"};return _={ready:o,supported:!0,decodeVertexBuffer(B,C,u,h,d){i(n.exports.meshopt_decodeVertexBuffer,B,C,u,h,n.exports[A[d]])},decodeIndexBuffer(B,C,u,h){i(n.exports.meshopt_decodeIndexBuffer,B,C,u,h)},decodeIndexSequence(B,C,u,h){i(n.exports.meshopt_decodeIndexSequence,B,C,u,h)},decodeGltfBuffer(B,C,u,h,d,f){i(n.exports[c[d]],B,C,u,h,n.exports[A[f]])}},_},re=l=>l===Object(l)&&!Array.isArray(l)&&typeof l!="function";function be(l,e){const t=Gt(n=>n.gl),r=U(Z,re(l)?Object.values(l):l);return V.useLayoutEffect(()=>{e?.(r)},[e]),V.useEffect(()=>{if("initTexture"in t){let n=[];Array.isArray(r)?n=r:r instanceof Y?n=[r]:re(r)&&(n=Object.values(r)),n.forEach(o=>{o instanceof Y&&t.initTexture(o)})}},[t,r]),V.useMemo(()=>{if(re(l)){const n={};let o=0;for(const a in l)n[a]=r[o++];return n}else return r},[l,r])}be.preload=l=>U.preload(Z,l);be.clear=l=>U.clear(Z,l);let v=null,Le="https://www.gstatic.com/draco/versioned/decoders/1.5.5/";function Oe(l=!0,e=!0,t){return r=>{t&&t(r),l&&(v||(v=new es),v.setDecoderPath(typeof l=="string"?l:Le),r.setDRACOLoader(v)),e&&r.setMeshoptDecoder(typeof ne=="function"?ne():ne)}}const Be=(l,e,t,r)=>U(Ae,l,Oe(e,t,r));Be.preload=(l,e,t,r)=>U.preload(Ae,l,Oe(e,t,r));Be.clear=l=>U.clear(Ae,l);Be.setDecoderPath=l=>{Le=l};export{re as IsObject,Be as useGLTF,be as useTexture};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{g as f}from"./_commonjsHelpers-D6-XlEtG.js";import{r as i}from"./index-CinJrH5C.js";function c(t,n){for(var o=0;o<n.length;o++){const e=n[o];if(typeof e!="string"&&!Array.isArray(e)){for(const r in e)if(r!=="default"&&!(r in t)){const a=Object.getOwnPropertyDescriptor(e,r);a&&Object.defineProperty(t,r,a.get?a:{enumerable:!0,get:()=>e[r]})}}}return Object.freeze(Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}))}var s=i();const p=f(s),l=c({__proto__:null,default:p},[s]);export{l as _,p as i,s as r};
|