@playcanvas/web-components 0.1.10 → 0.1.11

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/dist/pwc.min.js CHANGED
@@ -1,2 +1,2 @@
1
- !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("playcanvas")):"function"==typeof define&&define.amd?define(["exports","playcanvas"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).pd={},t.pc)}(this,(function(t,e){"use strict";class s extends HTMLElement{constructor(){super(),this._readyPromise=new Promise((t=>{this._readyResolve=t}))}get closestApp(){var t;return null===(t=this.parentElement)||void 0===t?void 0:t.closest("pc-app")}get closestEntity(){var t;return null===(t=this.parentElement)||void 0===t?void 0:t.closest("pc-entity")}_onReady(){this._readyResolve(),this.dispatchEvent(new CustomEvent("ready"))}ready(){return this._readyPromise.then((()=>this))}}class i extends HTMLElement{constructor(){super(),this.loadPromise=this.loadModule()}async loadModule(){const t=this.getAttribute("name"),s=this.getAttribute("glue"),i=this.getAttribute("wasm"),n=this.getAttribute("fallback");"Basis"===t?e.basisInitialize({glueUrl:s,wasmUrl:i,fallbackUrl:n}):(e.WasmModule.setConfig(t,{glueUrl:s,wasmUrl:i,fallbackUrl:n}),await new Promise((s=>{e.WasmModule.getInstance(t,(()=>s()))})))}getLoadPromise(){return this.loadPromise}}customElements.define("pc-module",i);class n extends s{constructor(){super(),this._canvas=null,this._alpha=!0,this._antialias=!0,this._depth=!0,this._stencil=!0,this._highResolution=!1,this._hierarchyReady=!1,this._picker=null,this._hasPointerListeners={pointerenter:!1,pointerleave:!1,pointerdown:!1,pointerup:!1,pointermove:!1},this._hoveredEntity=null,this._pointerHandlers={pointermove:null,pointerdown:null,pointerup:null},this.app=null,this._onWindowResize=this._onWindowResize.bind(this)}async connectedCallback(){const t=this.querySelectorAll(":scope > pc-module");await Promise.all(Array.from(t).map((t=>t.getLoadPromise()))),this._canvas=document.createElement("canvas"),this.appendChild(this._canvas),this.app=new e.Application(this._canvas,{graphicsDeviceOptions:{alpha:this._alpha,antialias:this._antialias,depth:this._depth,stencil:this._stencil},keyboard:new e.Keyboard(window),mouse:new e.Mouse(this._canvas)}),this.app.graphicsDevice.maxPixelRatio=this._highResolution?window.devicePixelRatio:1,this.app.setCanvasFillMode(e.FILLMODE_FILL_WINDOW),this.app.setCanvasResolution(e.RESOLUTION_AUTO),this._pickerCreate();const s=this.querySelectorAll(":scope > pc-asset");Array.from(s).forEach((t=>{t.createAsset();const e=t.asset;e&&this.app.assets.add(e)}));const i=this.querySelectorAll(":scope > pc-material");Array.from(i).forEach((t=>{t.createMaterial()}));const n=this.querySelectorAll("pc-entity");Array.from(n).forEach((t=>{t.createEntity(this.app)})),n.forEach((t=>{t.buildHierarchy(this.app)})),this._hierarchyReady=!0,this.app.preload((()=>{this.app.start(),window.addEventListener("resize",this._onWindowResize),this._onReady()}))}disconnectedCallback(){this._pickerDestroy(),this.app&&(this.app.destroy(),this.app=null),window.removeEventListener("resize",this._onWindowResize),this._canvas&&this.contains(this._canvas)&&(this.removeChild(this._canvas),this._canvas=null)}_onWindowResize(){this.app&&this.app.resizeCanvas()}_pickerCreate(){const{width:t,height:s}=this.app.graphicsDevice;this._picker=new e.Picker(this.app,t,s),this._pointerHandlers.pointermove=this._onPointerMove.bind(this),this._pointerHandlers.pointerdown=this._onPointerDown.bind(this),this._pointerHandlers.pointerup=this._onPointerUp.bind(this),["pointermove","pointerdown","pointerup","pointerenter","pointerleave"].forEach((t=>{this.addEventListener(`${t}:connect`,(()=>this._onPointerListenerAdded(t))),this.addEventListener(`${t}:disconnect`,(()=>this._onPointerListenerRemoved(t)))}))}_pickerDestroy(){this._canvas&&Object.entries(this._pointerHandlers).forEach((([t,e])=>{e&&this._canvas.removeEventListener(t,e)})),this._picker=null,this._pointerHandlers={pointermove:null,pointerdown:null,pointerup:null}}_onPointerMove(t){if(!this._picker||!this.app)return;const e=this.app.root.findComponent("camera");if(!e)return;const s=this._canvas.getBoundingClientRect(),i=t.clientX-s.left,n=t.clientY-s.top;this._picker.prepare(e,this.app.scene);const a=this._picker.getSelection(i,n);let o=null;if(a.length>0){let t=a[0].node;for(;t&&!o;){const e=this.querySelector(`pc-entity[name="${t.name}"]`);e&&(o=e),t=t.parent}}this._hoveredEntity!==o&&(this._hoveredEntity&&this._hoveredEntity.hasListeners("pointerleave")&&this._hoveredEntity.dispatchEvent(new PointerEvent("pointerleave",t)),o&&o.hasListeners("pointerenter")&&o.dispatchEvent(new PointerEvent("pointerenter",t))),this._hoveredEntity=o,o&&o.hasListeners("pointermove")&&o.dispatchEvent(new PointerEvent("pointermove",t))}_onPointerDown(t){if(!this._picker||!this.app)return;const e=this.app.root.findComponent("camera");if(!e)return;const s=this._canvas.getBoundingClientRect(),i=t.clientX-s.left,n=t.clientY-s.top;this._picker.prepare(e,this.app.scene);const a=this._picker.getSelection(i,n);if(a.length>0){let e=a[0].node;for(;e;){const s=this.querySelector(`pc-entity[name="${e.name}"]`);if(s&&s.hasListeners("pointerdown")){s.dispatchEvent(new PointerEvent("pointerdown",t));break}e=e.parent}}}_onPointerUp(t){if(!this._picker||!this.app)return;const e=this.app.root.findComponent("camera");if(!e)return;const s=this._canvas.getBoundingClientRect(),i=t.clientX-s.left,n=t.clientY-s.top;this._picker.prepare(e,this.app.scene);const a=this._picker.getSelection(i,n);if(a.length>0){const e=this.querySelector(`pc-entity[name="${a[0].node.name}"]`);e&&e.hasListeners("pointerup")&&e.dispatchEvent(new PointerEvent("pointerup",t))}}_onPointerListenerAdded(t){if(!this._hasPointerListeners[t]&&this._canvas){this._hasPointerListeners[t]=!0;const e="pointerenter"===t||"pointerleave"===t?this._pointerHandlers.pointermove:this._pointerHandlers[t];e&&this._canvas.addEventListener("pointerenter"===t||"pointerleave"===t?"pointermove":t,e)}}_onPointerListenerRemoved(t){if(!Array.from(this.querySelectorAll("pc-entity")).some((e=>e.hasListeners(t)))&&this._canvas){this._hasPointerListeners[t]=!1;const e="pointerenter"===t||"pointerleave"===t?this._pointerHandlers.pointermove:this._pointerHandlers[t];e&&this._canvas.removeEventListener("pointerenter"===t||"pointerleave"===t?"pointermove":t,e)}}set alpha(t){this._alpha=t}get alpha(){return this._alpha}set antialias(t){this._antialias=t}get antialias(){return this._antialias}set depth(t){this._depth=t}get depth(){return this._depth}get hierarchyReady(){return this._hierarchyReady}set highResolution(t){this._highResolution=t,this.app&&(this.app.graphicsDevice.maxPixelRatio=t?window.devicePixelRatio:1)}get highResolution(){return this._highResolution}set stencil(t){this._stencil=t}get stencil(){return this._stencil}static get observedAttributes(){return["alpha","antialias","depth","stencil","high-resolution"]}attributeChangedCallback(t,e,s){switch(t){case"alpha":this.alpha="false"!==s;break;case"antialias":this.antialias="false"!==s;break;case"depth":this.depth="false"!==s;break;case"high-resolution":this.highResolution="false"!==s;break;case"stencil":this.stencil="false"!==s}}}customElements.define("pc-app",n);const a={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},o=t=>{const s=a[t.toLowerCase()];if(s)return(new e.Color).fromString(s);if(t.startsWith("#"))return(new e.Color).fromString(t);const i=t.split(" ").map(Number);return new e.Color(i)},r=t=>{const s=t.split(" ").map(Number);return new e.Vec2(s)},h=t=>{const s=t.split(" ").map(Number);return new e.Vec3(s)},c=t=>{const s=t.split(" ").map(Number);return new e.Vec4(s)};class l extends s{constructor(){super(...arguments),this._enabled=!0,this._name="Untitled",this._position=new e.Vec3,this._rotation=new e.Vec3,this._scale=new e.Vec3(1,1,1),this._tags=[],this._listeners={},this.entity=null}createEntity(t){this.entity=new e.Entity(this.getAttribute("name")||this._name,t);const s=this.getAttribute("enabled");s&&(this.entity.enabled="false"!==s);const i=this.getAttribute("position");i&&this.entity.setLocalPosition(h(i));const n=this.getAttribute("rotation");n&&this.entity.setLocalEulerAngles(h(n));const a=this.getAttribute("scale");a&&this.entity.setLocalScale(h(a));const o=this.getAttribute("tags");o&&this.entity.tags.add(o.split(",").map((t=>t.trim())));["onpointerenter","onpointerleave","onpointerdown","onpointerup","onpointermove"].forEach((t=>{const e=this.getAttribute(t);if(e){const s=t.substring(2),i=t=>{try{new Function("event",e).call(this,t)}catch(t){console.error("Error in event handler:",t)}};this.addEventListener(s,i)}}))}buildHierarchy(t){if(!this.entity)return;const e=this.closestEntity;(null==e?void 0:e.entity)?e.entity.addChild(this.entity):t.root.addChild(this.entity),this._onReady()}connectedCallback(){const t=this.closestApp;if(t&&t.hierarchyReady){const e=t.app;this.createEntity(e),this.buildHierarchy(e);const s=this.querySelectorAll("pc-entity");s.forEach((t=>{t.createEntity(e)})),s.forEach((t=>{t.buildHierarchy(e)}))}}disconnectedCallback(){if(this.entity){this.querySelectorAll("pc-entity").forEach((t=>{t.entity=null})),this.entity.destroy(),this.entity=null}}set enabled(t){this._enabled=t,this.entity&&(this.entity.enabled=t)}get enabled(){return this._enabled}set name(t){this._name=t,this.entity&&(this.entity.name=t)}get name(){return this._name}set position(t){this._position=t,this.entity&&this.entity.setLocalPosition(this._position)}get position(){return this._position}set rotation(t){this._rotation=t,this.entity&&this.entity.setLocalEulerAngles(this._rotation)}get rotation(){return this._rotation}set scale(t){this._scale=t,this.entity&&this.entity.setLocalScale(this._scale)}get scale(){return this._scale}set tags(t){this._tags=t,this.entity&&(this.entity.tags.clear(),this.entity.tags.add(this._tags))}get tags(){return this._tags}static get observedAttributes(){return["enabled","name","position","rotation","scale","tags","onpointerenter","onpointerleave","onpointerdown","onpointerup","onpointermove"]}attributeChangedCallback(t,e,s){switch(t){case"enabled":this.enabled="false"!==s;break;case"name":this.name=s;break;case"position":this.position=h(s);break;case"rotation":this.rotation=h(s);break;case"scale":this.scale=h(s);break;case"tags":this.tags=s.split(",").map((t=>t.trim()));break;case"onpointerenter":case"onpointerleave":case"onpointerdown":case"onpointerup":case"onpointermove":if(s){const e=t.substring(2),s=t=>{try{const s=this.getAttribute(e)||"";new Function("event",s).call(this,t)}catch(t){console.error("Error in event handler:",t)}};this.addEventListener(e,s)}}}addEventListener(t,e,s){this._listeners[t]||(this._listeners[t]=[]),this._listeners[t].push(e),super.addEventListener(t,e,s),t.startsWith("pointer")&&this.dispatchEvent(new CustomEvent(`${t}:connect`,{bubbles:!0}))}removeEventListener(t,e,s){this._listeners[t]&&(this._listeners[t]=this._listeners[t].filter((t=>t!==e))),super.removeEventListener(t,e,s),t.startsWith("pointer")&&this.dispatchEvent(new CustomEvent(`${t}:disconnect`,{bubbles:!0}))}hasListeners(t){var e;return Boolean(null===(e=this._listeners[t])||void 0===e?void 0:e.length)}}customElements.define("pc-entity",l);const p=new Map([["bin","binary"],["css","css"],["frag","shader"],["glb","container"],["glsl","shader"],["hdr","texture"],["html","html"],["jpg","texture"],["js","script"],["json","json"],["mp3","audio"],["mjs","script"],["ply","gsplat"],["png","texture"],["txt","text"],["vert","shader"],["webp","texture"]]);class u extends HTMLElement{constructor(){super(...arguments),this._preload=!1,this.asset=null}disconnectedCallback(){this.destroyAsset()}createAsset(){var t;const s=this.getAttribute("id")||"",i=this.getAttribute("src")||"";let n=this.getAttribute("type");if(!n){const e=i.split(".").pop();n=null!==(t=p.get(e||""))&&void 0!==t?t:null}n?(this.asset=new e.Asset(s,n,{url:i}),this.asset.preload=this.preload):console.warn(`Unsupported asset type: ${i}`)}destroyAsset(){this.asset&&(this.asset.unload(),this.asset=null)}set preload(t){this._preload=t,this.asset&&(this.asset.preload=t)}get preload(){return this._preload}static get(t){const e=document.querySelector(`pc-asset[id="${t}"]`);return null==e?void 0:e.asset}static get observedAttributes(){return["preload"]}attributeChangedCallback(t,e,s){"preload"===t&&(this.preload=this.hasAttribute("preload"))}}customElements.define("pc-asset",u);class d extends s{constructor(t){super(),this._enabled=!0,this._component=null,this._componentName=t}getInitialComponentData(){return{}}async addComponent(){const t=this.closestEntity;if(t){await t.ready();const e=this.getInitialComponentData();this._component=t.entity.addComponent(this._componentName,e)}}initComponent(){}async connectedCallback(){var t;await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),await this.addComponent(),this.initComponent(),this._onReady()}disconnectedCallback(){this.component&&this.component.entity&&(this._component.entity.removeComponent(this._componentName),this._component=null)}get component(){return this._component}set enabled(t){this._enabled=t,this.component&&(this.component.enabled=t)}get enabled(){return this._enabled}static get observedAttributes(){return["enabled"]}attributeChangedCallback(t,e,s){if("enabled"===t)this.enabled="false"!==s}}class m extends d{constructor(){super("audiolistener")}get component(){return super.component}}customElements.define("pc-listener",m);const f=new Map([["none",e.TONEMAP_NONE],["linear",e.TONEMAP_LINEAR],["filmic",e.TONEMAP_FILMIC],["hejl",e.TONEMAP_HEJL],["aces",e.TONEMAP_ACES],["aces2",e.TONEMAP_ACES2],["neutral",e.TONEMAP_NEUTRAL]]);class _ extends d{constructor(){super("camera"),this._clearColor=new e.Color(.75,.75,.75,1),this._clearColorBuffer=!0,this._clearDepthBuffer=!0,this._clearStencilBuffer=!1,this._cullFaces=!0,this._farClip=1e3,this._flipFaces=!1,this._fov=45,this._frustumCulling=!0,this._gamma="srgb",this._nearClip=.1,this._orthographic=!1,this._orthoHeight=10,this._priority=0,this._rect=new e.Vec4(0,0,1,1),this._scissorRect=new e.Vec4(0,0,1,1),this._tonemap="none"}getInitialComponentData(){return{clearColor:this._clearColor,clearColorBuffer:this._clearColorBuffer,clearDepthBuffer:this._clearDepthBuffer,clearStencilBuffer:this._clearStencilBuffer,cullFaces:this._cullFaces,farClip:this._farClip,flipFaces:this._flipFaces,fov:this._fov,frustumCulling:this._frustumCulling,gammaCorrection:"srgb"===this._gamma?e.GAMMA_SRGB:e.GAMMA_NONE,nearClip:this._nearClip,orthographic:this._orthographic,orthoHeight:this._orthoHeight,priority:this._priority,rect:this._rect,scissorRect:this._scissorRect,toneMapping:f.get(this._tonemap)}}get xrAvailable(){var t;const s=null===(t=this.component)||void 0===t?void 0:t.system.app.xr;return s&&s.supported&&s.isAvailable(e.XRTYPE_VR)}startXr(t,e){this.component&&this.xrAvailable&&this.component.startXr(t,e,{callback:t=>{t&&console.error(`WebXR Immersive VR failed to start: ${t.message}`)}})}endXr(){this.component&&this.component.endXr()}get component(){return super.component}set clearColor(t){this._clearColor=t,this.component&&(this.component.clearColor=t)}get clearColor(){return this._clearColor}set clearColorBuffer(t){this._clearColorBuffer=t,this.component&&(this.component.clearColorBuffer=t)}get clearColorBuffer(){return this._clearColorBuffer}set clearDepthBuffer(t){this._clearDepthBuffer=t,this.component&&(this.component.clearDepthBuffer=t)}get clearDepthBuffer(){return this._clearDepthBuffer}set clearStencilBuffer(t){this._clearStencilBuffer=t,this.component&&(this.component.clearStencilBuffer=t)}get clearStencilBuffer(){return this._clearStencilBuffer}set cullFaces(t){this._cullFaces=t,this.component&&(this.component.cullFaces=t)}get cullFaces(){return this._cullFaces}set farClip(t){this._farClip=t,this.component&&(this.component.farClip=t)}get farClip(){return this._farClip}set flipFaces(t){this._flipFaces=t,this.component&&(this.component.flipFaces=t)}get flipFaces(){return this._flipFaces}set fov(t){this._fov=t,this.component&&(this.component.fov=t)}get fov(){return this._fov}set frustumCulling(t){this._frustumCulling=t,this.component&&(this.component.frustumCulling=t)}get frustumCulling(){return this._frustumCulling}set gamma(t){this._gamma=t,this.component&&(this.component.gammaCorrection="srgb"===t?e.GAMMA_SRGB:e.GAMMA_NONE)}get gamma(){return this._gamma}set nearClip(t){this._nearClip=t,this.component&&(this.component.nearClip=t)}get nearClip(){return this._nearClip}set orthographic(t){this._orthographic=t,this.component&&(this.component.projection=t?e.PROJECTION_ORTHOGRAPHIC:e.PROJECTION_PERSPECTIVE)}get orthographic(){return this._orthographic}set orthoHeight(t){this._orthoHeight=t,this.component&&(this.component.orthoHeight=t)}get orthoHeight(){return this._orthoHeight}set priority(t){this._priority=t,this.component&&(this.component.priority=t)}get priority(){return this._priority}set rect(t){this._rect=t,this.component&&(this.component.rect=t)}get rect(){return this._rect}set scissorRect(t){this._scissorRect=t,this.component&&(this.component.scissorRect=t)}get scissorRect(){return this._scissorRect}set tonemap(t){var s;this._tonemap=t,this.component&&(this.component.toneMapping=null!==(s=f.get(t))&&void 0!==s?s:e.TONEMAP_NONE)}get tonemap(){return this._tonemap}static get observedAttributes(){return[...super.observedAttributes,"clear-color","clear-color-buffer","clear-depth-buffer","clear-stencil-buffer","cull-faces","far-clip","flip-faces","fov","frustum-culling","gamma","near-clip","orthographic","ortho-height","priority","rect","scissor-rect","tonemap"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"clear-color":this.clearColor=o(s);break;case"clear-color-buffer":this.clearColorBuffer="false"!==s;break;case"clear-depth-buffer":this.clearDepthBuffer="false"!==s;break;case"clear-stencil-buffer":this.clearStencilBuffer="false"!==s;break;case"cull-faces":this.cullFaces="false"!==s;break;case"far-clip":this.farClip=parseFloat(s);break;case"flip-faces":this.flipFaces="true"!==s;break;case"fov":this.fov=parseFloat(s);break;case"frustum-culling":this.frustumCulling="false"!==s;break;case"gamma":this.gamma=s;break;case"near-clip":this.nearClip=parseFloat(s);break;case"orthographic":this.orthographic=this.hasAttribute("orthographic");break;case"ortho-height":this.orthoHeight=parseFloat(s);break;case"priority":this.priority=parseFloat(s);break;case"rect":this.rect=c(s);break;case"scissor-rect":this.scissorRect=c(s);break;case"tonemap":this.tonemap=s}}}customElements.define("pc-camera",_);class g extends d{constructor(){super("collision"),this._angularOffset=new e.Quat,this._axis=1,this._convexHull=!1,this._halfExtents=new e.Vec3(.5,.5,.5),this._height=2,this._linearOffset=new e.Vec3,this._radius=.5,this._type="box"}getInitialComponentData(){return{axis:this._axis,angularOffset:this._angularOffset,convexHull:this._convexHull,halfExtents:this._halfExtents,height:this._height,linearOffset:this._linearOffset,radius:this._radius,type:this._type}}get component(){return super.component}set angularOffset(t){this._angularOffset=t,this.component&&(this.component.angularOffset=t)}get angularOffset(){return this._angularOffset}set axis(t){this._axis=t,this.component&&(this.component.axis=t)}get axis(){return this._axis}set convexHull(t){this._convexHull=t,this.component&&(this.component.convexHull=t)}get convexHull(){return this._convexHull}set halfExtents(t){this._halfExtents=t,this.component&&(this.component.halfExtents=t)}get halfExtents(){return this._halfExtents}set height(t){this._height=t,this.component&&(this.component.height=t)}get height(){return this._height}set linearOffset(t){this._linearOffset=t,this.component&&(this.component.linearOffset=t)}get linearOffset(){return this._linearOffset}set radius(t){this._radius=t,this.component&&(this.component.radius=t)}get radius(){return this._radius}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}static get observedAttributes(){return[...super.observedAttributes,"angular-offset","axis","convex-hull","half-extents","height","linear-offset","radius","type"]}attributeChangedCallback(t,s,i){switch(super.attributeChangedCallback(t,s,i),t){case"angular-offset":this.angularOffset=(t=>{const[s,i,n]=t.split(" ").map(Number),a=new e.Quat;return a.setFromEulerAngles(s,i,n),a})(i);break;case"axis":this.axis=parseInt(i,10);break;case"convex-hull":this.convexHull=this.hasAttribute("convex-hull");break;case"half-extents":this.halfExtents=h(i);break;case"height":this.height=parseFloat(i);break;case"linear-offset":this.linearOffset=h(i);break;case"radius":this.radius=parseFloat(i);break;case"type":this.type=i}}}customElements.define("pc-collision",g);class b extends d{constructor(){super("element"),this._anchor=new e.Vec4(.5,.5,.5,.5),this._asset="",this._autoWidth=!0,this._color=new e.Color(1,1,1,1),this._fontSize=32,this._lineHeight=32,this._pivot=new e.Vec2(.5,.5),this._text="",this._type="group",this._width=0,this._wrapLines=!1}initComponent(){this.component._text._material.useFog=!0}getInitialComponentData(){return{anchor:this._anchor,autoWidth:this._autoWidth,color:this._color,fontAsset:u.get(this._asset).id,fontSize:this._fontSize,lineHeight:this._lineHeight,pivot:this._pivot,type:this._type,text:this._text,width:this._width,wrapLines:this._wrapLines}}get component(){return super.component}set anchor(t){this._anchor=t,this.component&&(this.component.anchor=t)}get anchor(){return this._anchor}set asset(t){this._asset=t;const e=u.get(t);this.component&&e&&(this.component.fontAsset=e.id)}get asset(){return this._asset}set autoWidth(t){this._autoWidth=t,this.component&&(this.component.autoWidth=t)}get autoWidth(){return this._autoWidth}set color(t){this._color=t,this.component&&(this.component.color=t)}get color(){return this._color}set fontSize(t){this._fontSize=t,this.component&&(this.component.fontSize=t)}get fontSize(){return this._fontSize}set lineHeight(t){this._lineHeight=t,this.component&&(this.component.lineHeight=t)}get lineHeight(){return this._lineHeight}set pivot(t){this._pivot=t,this.component&&(this.component.pivot=t)}get pivot(){return this._pivot}set text(t){this._text=t,this.component&&(this.component.text=t)}get text(){return this._text}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}set width(t){this._width=t,this.component&&(this.component.width=t)}get width(){return this._width}set wrapLines(t){this._wrapLines=t,this.component&&(this.component.wrapLines=t)}get wrapLines(){return this._wrapLines}static get observedAttributes(){return[...super.observedAttributes,"anchor","asset","auto-width","color","font-size","line-height","pivot","text","type","width","wrap-lines"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"anchor":this.anchor=c(s);break;case"asset":this.asset=s;break;case"auto-width":this.autoWidth="false"!==s;break;case"color":this.color=o(s);break;case"font-size":this.fontSize=Number(s);break;case"line-height":this.lineHeight=Number(s);break;case"pivot":this.pivot=r(s);break;case"text":this.text=s;break;case"type":this.type=s;break;case"width":this.width=Number(s);break;case"wrap-lines":this.wrapLines=this.hasAttribute(t)}}}customElements.define("pc-element",b);class y extends d{constructor(){super("gsplat"),this._asset=""}getInitialComponentData(){return{asset:u.get(this._asset)}}get component(){return super.component}set asset(t){this._asset=t;const e=u.get(t);this.component&&e&&(this.component.asset=e)}get asset(){return this._asset}static get observedAttributes(){return[...super.observedAttributes,"asset"]}attributeChangedCallback(t,e,s){if(super.attributeChangedCallback(t,e,s),"asset"===t)this.asset=s}}customElements.define("pc-splat",y);const v=new Map([["pcf1-16f",e.SHADOW_PCF1_16F],["pcf1-32f",e.SHADOW_PCF1_32F],["pcf3-16f",e.SHADOW_PCF3_16F],["pcf3-32f",e.SHADOW_PCF3_32F],["pcf5-16f",e.SHADOW_PCF5_16F],["pcf5-32f",e.SHADOW_PCF5_32F],["vsm-16f",e.SHADOW_VSM_16F],["vsm-32f",e.SHADOW_VSM_32F],["pcss-32f",e.SHADOW_PCSS_32F]]);class w extends d{constructor(){super("light"),this._castShadows=!1,this._color=new e.Color(1,1,1),this._innerConeAngle=40,this._intensity=1,this._normalOffsetBias=.05,this._outerConeAngle=45,this._range=10,this._shadowBias=.2,this._shadowDistance=16,this._shadowIntensity=1,this._shadowResolution=1024,this._shadowType="pcf3-32f",this._type="directional",this._vsmBias=.01}getInitialComponentData(){return{castShadows:this._castShadows,color:this._color,innerConeAngle:this._innerConeAngle,intensity:this._intensity,normalOffsetBias:this._normalOffsetBias,outerConeAngle:this._outerConeAngle,range:this._range,shadowBias:this._shadowBias,shadowDistance:this._shadowDistance,shadowIntensity:this._shadowIntensity,shadowResolution:this._shadowResolution,shadowType:v.get(this._shadowType),type:this._type,vsmBias:this._vsmBias}}get component(){return super.component}set castShadows(t){this._castShadows=t,this.component&&(this.component.castShadows=t)}get castShadows(){return this._castShadows}set color(t){this._color=t,this.component&&(this.component.color=t)}get color(){return this._color}set innerConeAngle(t){this._innerConeAngle=t,this.component&&(this.component.innerConeAngle=t)}get innerConeAngle(){return this._innerConeAngle}set intensity(t){this._intensity=t,this.component&&(this.component.intensity=t)}get intensity(){return this._intensity}set normalOffsetBias(t){this._normalOffsetBias=t,this.component&&(this.component.normalOffsetBias=t)}get normalOffsetBias(){return this._normalOffsetBias}set outerConeAngle(t){this._outerConeAngle=t,this.component&&(this.component.outerConeAngle=t)}get outerConeAngle(){return this._outerConeAngle}set range(t){this._range=t,this.component&&(this.component.range=t)}get range(){return this._range}set shadowBias(t){this._shadowBias=t,this.component&&(this.component.shadowBias=t)}get shadowBias(){return this._shadowBias}set shadowDistance(t){this._shadowDistance=t,this.component&&(this.component.shadowDistance=t)}get shadowDistance(){return this._shadowDistance}set shadowIntensity(t){this._shadowIntensity=t,this.component&&(this.component.shadowIntensity=t)}get shadowIntensity(){return this._shadowIntensity}set shadowResolution(t){this._shadowResolution=t,this.component&&(this.component.shadowResolution=t)}get shadowResolution(){return this._shadowResolution}set shadowType(t){var s;this._shadowType=t,this.component&&(this.component.shadowType=null!==(s=v.get(t))&&void 0!==s?s:e.SHADOW_PCF3_32F)}get shadowType(){return this._shadowType}set type(t){["directional","omni","spot"].includes(t)?(this._type=t,this.component&&(this.component.type=t)):console.warn(`Invalid light type '${t}', using default type '${this._type}'.`)}get type(){return this._type}set vsmBias(t){this._vsmBias=t,this.component&&(this.component.vsmBias=t)}get vsmBias(){return this._vsmBias}static get observedAttributes(){return[...super.observedAttributes,"color","cast-shadows","intensity","inner-cone-angle","normal-offset-bias","outer-cone-angle","range","shadow-bias","shadow-distance","shadow-intensity","shadow-resolution","shadow-type","type","vsm-bias"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"color":this.color=o(s);break;case"cast-shadows":this.castShadows=this.hasAttribute("cast-shadows");break;case"inner-cone-angle":this.innerConeAngle=Number(s);break;case"intensity":this.intensity=Number(s);break;case"normal-offset-bias":this.normalOffsetBias=Number(s);break;case"outer-cone-angle":this.outerConeAngle=Number(s);break;case"range":this.range=Number(s);break;case"shadow-bias":this.shadowBias=Number(s);break;case"shadow-distance":this.shadowDistance=Number(s);break;case"shadow-resolution":this.shadowResolution=Number(s);break;case"shadow-intensity":this.shadowIntensity=Number(s);break;case"shadow-type":this.shadowType=s;break;case"type":this.type=s;break;case"vsm-bias":this.vsmBias=Number(s)}}}customElements.define("pc-light",w);class C extends HTMLElement{constructor(){super(...arguments),this._diffuse=new e.Color(1,1,1),this._diffuseMap="",this._metalnessMap="",this._normalMap="",this._roughnessMap="",this.material=null}createMaterial(){this.material=new e.StandardMaterial,this.material.glossInvert=!1,this.material.useMetalness=!1,this.material.diffuse=this._diffuse,this.diffuseMap=this._diffuseMap,this.metalnessMap=this._metalnessMap,this.normalMap=this._normalMap,this.roughnessMap=this._roughnessMap,this.material.update()}disconnectedCallback(){this.material&&(this.material.destroy(),this.material=null)}setMap(t,e){if(this.material){const s=u.get(t);s&&(s.loaded?(this.material[e]=s.resource,this.material[e].anisotropy=4):s.once("load",(()=>{this.material[e]=s.resource,this.material[e].anisotropy=4,this.material.update()})))}}set diffuse(t){this._diffuse=t,this.material&&(this.material.diffuse=t)}get diffuse(){return this._diffuse}set diffuseMap(t){this._diffuseMap=t,this.setMap(t,"diffuseMap")}get diffuseMap(){return this._diffuseMap}set metalnessMap(t){this._metalnessMap=t,this.setMap(t,"metalnessMap")}get metalnessMap(){return this._metalnessMap}set normalMap(t){this._normalMap=t,this.setMap(t,"normalMap")}get normalMap(){return this._normalMap}set roughnessMap(t){this._roughnessMap=t,this.setMap(t,"glossMap")}get roughnessMap(){return this._roughnessMap}static get(t){const e=document.querySelector(`pc-material[id="${t}"]`);return null==e?void 0:e.material}static get observedAttributes(){return["diffuse","diffuse-map","metalness-map","normal-map","roughness-map"]}attributeChangedCallback(t,e,s){switch(t){case"diffuse":this.diffuse=o(s);break;case"diffuse-map":this.diffuseMap=s;break;case"metalness-map":this.metalnessMap=s;break;case"normal-map":this.normalMap=s;break;case"roughness-map":this.roughnessMap=s}}}customElements.define("pc-material",C);class k extends d{constructor(){super("render"),this._castShadows=!0,this._material="",this._receiveShadows=!0,this._type="asset"}getInitialComponentData(){return{type:this._type,castShadows:this._castShadows,material:C.get(this._material),receiveShadows:this._receiveShadows}}get component(){return super.component}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}set castShadows(t){this._castShadows=t,this.component&&(this.component.castShadows=t)}get castShadows(){return this._castShadows}set material(t){this._material=t,this.component&&(this.component.material=C.get(t))}get material(){return this._material}set receiveShadows(t){this._receiveShadows=t,this.component&&(this.component.receiveShadows=t)}get receiveShadows(){return this._receiveShadows}static get observedAttributes(){return[...super.observedAttributes,"cast-shadows","material","receive-shadows","type"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"cast-shadows":this.castShadows="false"!==s;break;case"material":this.material=s;break;case"receive-shadows":this.receiveShadows="false"!==s;break;case"type":this.type=s}}}customElements.define("pc-render",k);class E extends d{constructor(){super("rigidbody"),this._angularDamping=0,this._angularFactor=new e.Vec3(1,1,1),this._friction=.5,this._linearDamping=0,this._linearFactor=new e.Vec3(1,1,1),this._mass=1,this._restitution=0,this._rollingFriction=0,this._type="static"}getInitialComponentData(){return{angularDamping:this._angularDamping,angularFactor:this._angularFactor,friction:this._friction,linearDamping:this._linearDamping,linearFactor:this._linearFactor,mass:this._mass,restitution:this._restitution,rollingFriction:this._rollingFriction,type:this._type}}get component(){return super.component}set angularDamping(t){this._angularDamping=t,this.component&&(this.component.angularDamping=t)}get angularDamping(){return this._angularDamping}set angularFactor(t){this._angularFactor=t,this.component&&(this.component.angularFactor=t)}get angularFactor(){return this._angularFactor}set friction(t){this._friction=t,this.component&&(this.component.friction=t)}get friction(){return this._friction}set linearDamping(t){this._linearDamping=t,this.component&&(this.component.linearDamping=t)}get linearDamping(){return this._linearDamping}set linearFactor(t){this._linearFactor=t,this.component&&(this.component.linearFactor=t)}get linearFactor(){return this._linearFactor}set mass(t){this._mass=t,this.component&&(this.component.mass=t)}get mass(){return this._mass}set restitution(t){this._restitution=t,this.component&&(this.component.restitution=t)}get restitution(){return this._restitution}set rollingFriction(t){this._rollingFriction=t,this.component&&(this.component.rollingFriction=t)}get rollingFriction(){return this._rollingFriction}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}static get observedAttributes(){return[...super.observedAttributes,"angular-damping","angular-factor","friction","linear-damping","linear-factor","mass","restitution","rolling-friction","type"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"angular-damping":this.angularDamping=parseFloat(s);break;case"angular-factor":this.angularFactor=h(s);break;case"friction":this.friction=parseFloat(s);break;case"linear-damping":this.linearDamping=parseFloat(s);break;case"linear-factor":this.linearFactor=h(s);break;case"mass":this.mass=parseFloat(s);break;case"restitution":this.restitution=parseFloat(s);break;case"rolling-friction":this.rollingFriction=parseFloat(s);break;case"type":this.type=s}}}customElements.define("pc-rigidbody",E);class A extends d{constructor(){super("screen"),this._screenSpace=!1,this._resolution=new e.Vec2(640,320),this._referenceResolution=new e.Vec2(640,320),this._priority=0,this._blend=!1,this._scaleBlend=.5}getInitialComponentData(){return{priority:this._priority,referenceResolution:this._referenceResolution,resolution:this._resolution,scaleBlend:this._scaleBlend,scaleMode:this._blend?e.SCALEMODE_BLEND:e.SCALEMODE_NONE,screenSpace:this._screenSpace}}get component(){return super.component}set priority(t){this._priority=t,this.component&&(this.component.priority=this._priority)}get priority(){return this._priority}set referenceResolution(t){this._referenceResolution=t,this.component&&(this.component.referenceResolution=this._referenceResolution)}get referenceResolution(){return this._referenceResolution}set resolution(t){this._resolution=t,this.component&&(this.component.resolution=this._resolution)}get resolution(){return this._resolution}set scaleBlend(t){this._scaleBlend=t,this.component&&(this.component.scaleBlend=this._scaleBlend)}get scaleBlend(){return this._scaleBlend}set blend(t){this._blend=t,this.component&&(this.component.scaleMode=this._blend?e.SCALEMODE_BLEND:e.SCALEMODE_NONE)}get blend(){return this._blend}set screenSpace(t){this._screenSpace=t,this.component&&(this.component.screenSpace=this._screenSpace)}get screenSpace(){return this._screenSpace}static get observedAttributes(){return[...super.observedAttributes,"blend","screen-space","resolution","reference-resolution","priority","scale-blend"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"priority":this.priority=parseInt(s,10);break;case"reference-resolution":this.referenceResolution=r(s);break;case"resolution":this.resolution=r(s);break;case"scale-blend":this.scaleBlend=parseFloat(s);break;case"blend":this.blend=this.hasAttribute("blend");break;case"screen-space":this.screenSpace=this.hasAttribute("screen-space")}}}customElements.define("pc-screen",A);class S extends d{constructor(){super("script"),this.observer=new MutationObserver(this.handleMutations.bind(this)),this.observer.observe(this,{childList:!0}),this.addEventListener("scriptattributeschange",this.handleScriptAttributesChange.bind(this)),this.addEventListener("scriptenablechange",this.handleScriptEnableChange.bind(this))}initComponent(){this.querySelectorAll(":scope > pc-script").forEach((t=>{const e=t.getAttribute("name"),s=t.getAttribute("attributes");e&&this.createScript(e,s)}))}applyAttributes(t,s){try{const i=s?JSON.parse(s):{},n=(t,s,i)=>{if("string"==typeof i&&i.startsWith("asset:")){const e=i.slice(6),n=document.querySelector(`pc-asset#${e}`);if(n)return void(t[s]=n.asset)}if(i&&"object"==typeof i&&Array.isArray(i)){if(i.length>0&&"object"==typeof i[0])return void(t[s]=i.map((t=>{const e={};for(const s in t)n(e,s,t[s]);return e})));if(2===i.length&&"number"==typeof i[0])return void(t[s]=new e.Vec2(i[0],i[1]));if(3===i.length&&"number"==typeof i[0])return void(t[s]=new e.Vec3(i[0],i[1],i[2]));if(4===i.length&&"number"==typeof i[0])return void(t[s]=new e.Vec4(i[0],i[1],i[2],i[3]))}if(i&&"object"==typeof i&&!Array.isArray(i)){t[s]&&"object"==typeof t[s]||(t[s]={});for(const e in i)n(t[s],e,i[e])}else t[s]=i};for(const e in i)n(t,e,i[e])}catch(t){console.error(`Error parsing attributes JSON string ${s}:`,t)}}handleScriptAttributesChange(t){const e=t.target.getAttribute("name");if(!e||!this.component)return;const s=this.component.get(e);s&&this.applyAttributes(s,t.detail.attributes)}handleScriptEnableChange(t){const e=t.target.getAttribute("name");if(!e||!this.component)return;const s=this.component.get(e);s&&(s.enabled=t.detail.enabled)}createScript(t,e){return this.component?(this.component.on(`create:${t}`,(t=>{this.applyAttributes(t,e)})),this.component.create(t)):null}destroyScript(t){this.component&&this.component.destroy(t)}handleMutations(t){for(const e of t)e.addedNodes.forEach((t=>{if(t instanceof HTMLElement&&"pc-script"===t.tagName.toLowerCase()){const e=t.getAttribute("name"),s=t.getAttribute("attributes");e&&this.createScript(e,s)}})),e.removedNodes.forEach((t=>{if(t instanceof HTMLElement&&"pc-script"===t.tagName.toLowerCase()){const e=t.getAttribute("name");e&&this.destroyScript(e)}}))}disconnectedCallback(){var t;this.observer.disconnect(),null===(t=super.disconnectedCallback)||void 0===t||t.call(this)}get component(){return super.component}}customElements.define("pc-scripts",S);class x extends HTMLElement{constructor(){super(...arguments),this._attributes="{}",this._enabled=!0,this._name=""}set scriptAttributes(t){this._attributes=t,this.dispatchEvent(new CustomEvent("scriptattributeschange",{detail:{attributes:t},bubbles:!0}))}get scriptAttributes(){return this._attributes}set enabled(t){this._enabled=t,this.dispatchEvent(new CustomEvent("scriptenablechange",{detail:{enabled:t},bubbles:!0}))}get enabled(){return this._enabled}set name(t){this._name=t}get name(){return this._name}static get observedAttributes(){return["attributes","enabled","name"]}attributeChangedCallback(t,e,s){switch(t){case"attributes":this.scriptAttributes=s;break;case"enabled":this.enabled="false"!==s;break;case"name":this.name=s}}}customElements.define("pc-script",x);class M extends d{constructor(){super("sound"),this._distanceModel="linear",this._maxDistance=1e4,this._pitch=1,this._positional=!1,this._refDistance=1,this._rollOffFactor=1,this._volume=1}getInitialComponentData(){return{distanceModel:this._distanceModel,maxDistance:this._maxDistance,pitch:this._pitch,positional:this._positional,refDistance:this._refDistance,rollOffFactor:this._rollOffFactor,volume:this._volume}}get component(){return super.component}set distanceModel(t){this._distanceModel=t,this.component&&(this.component.distanceModel=t)}get distanceModel(){return this._distanceModel}set maxDistance(t){this._maxDistance=t,this.component&&(this.component.maxDistance=t)}get maxDistance(){return this._maxDistance}set pitch(t){this._pitch=t,this.component&&(this.component.pitch=t)}get pitch(){return this._pitch}set positional(t){this._positional=t,this.component&&(this.component.positional=t)}get positional(){return this._positional}set refDistance(t){this._refDistance=t,this.component&&(this.component.refDistance=t)}get refDistance(){return this._refDistance}set rollOffFactor(t){this._rollOffFactor=t,this.component&&(this.component.rollOffFactor=t)}get rollOffFactor(){return this._rollOffFactor}set volume(t){this._volume=t,this.component&&(this.component.volume=t)}get volume(){return this._volume}static get observedAttributes(){return[...super.observedAttributes,"distance-model","max-distance","pitch","positional","ref-distance","roll-off-factor","volume"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"distance-model":this.distanceModel=s;break;case"max-distance":this.maxDistance=parseFloat(s);break;case"pitch":this.pitch=parseFloat(s);break;case"positional":this.positional=this.hasAttribute("positional");break;case"ref-distance":this.refDistance=parseFloat(s);break;case"roll-off-factor":this.rollOffFactor=parseFloat(s);break;case"volume":this.volume=parseFloat(s)}}}customElements.define("pc-sounds",M);class F extends s{constructor(){super(...arguments),this._asset="",this._autoPlay=!1,this._duration=null,this._loop=!1,this._name="",this._overlap=!1,this._pitch=1,this._startTime=0,this._volume=1,this.soundSlot=null}async connectedCallback(){var t;await(null===(t=this.soundElement)||void 0===t?void 0:t.ready());const e={autoPlay:this._autoPlay,loop:this._loop,overlap:this._overlap,pitch:this._pitch,startTime:this._startTime,volume:this._volume};this._duration&&(e.duration=this._duration),this.soundSlot=this.soundElement.component.addSlot(this._name,e),this.asset=this._asset,this.soundSlot.play(),this._onReady()}disconnectedCallback(){this.soundElement.component.removeSlot(this._name)}get soundElement(){const t=this.parentElement;return t instanceof M?t:(console.warn("pc-sound-slot must be a direct child of a pc-sound element"),null)}set asset(t){var e;if(this._asset=t,this.soundSlot){const s=null===(e=u.get(t))||void 0===e?void 0:e.id;s&&(this.soundSlot.asset=s)}}get asset(){return this._asset}set autoPlay(t){this._autoPlay=t,this.soundSlot&&(this.soundSlot.autoPlay=t)}get autoPlay(){return this._autoPlay}set duration(t){this._duration=t,this.soundSlot&&(this.soundSlot.duration=t)}get duration(){return this._duration}set loop(t){this._loop=t,this.soundSlot&&(this.soundSlot.loop=t)}get loop(){return this._loop}set name(t){this._name=t,this.soundSlot&&(this.soundSlot.name=t)}get name(){return this._name}set overlap(t){this._overlap=t,this.soundSlot&&(this.soundSlot.overlap=t)}get overlap(){return this._overlap}set pitch(t){this._pitch=t,this.soundSlot&&(this.soundSlot.pitch=t)}get pitch(){return this._pitch}set startTime(t){this._startTime=t,this.soundSlot&&(this.soundSlot.startTime=t)}get startTime(){return this._startTime}set volume(t){this._volume=t,this.soundSlot&&(this.soundSlot.volume=t)}get volume(){return this._volume}static get observedAttributes(){return["asset","autoPlay","duration","loop","name","overlap","pitch","startTime","volume"]}attributeChangedCallback(t,e,s){switch(t){case"asset":this.asset=s;break;case"duration":this.duration=parseFloat(s);break;case"loop":this.loop=this.hasAttribute("loop");break;case"name":this.name=s;break;case"overlap":this.overlap=this.hasAttribute("overlap");break;case"pitch":this.pitch=parseFloat(s);break;case"startTime":this.startTime=parseFloat(s);break;case"volume":this.volume=parseFloat(s)}}}customElements.define("pc-sound",F);class D extends s{constructor(){super(...arguments),this._asset="",this._entity=null}connectedCallback(){this._loadModel(),this._onReady()}disconnectedCallback(){this._unloadModel()}_instantiate(t){this._entity=t.instantiateRenderEntity(),t.animations.length>0&&(this._entity.addComponent("anim"),this._entity.anim.assignAnimation("animation",t.animations[0].resource));const e=this.closestEntity;if(e)e.ready().then((()=>{e.entity.addChild(this._entity)}));else{const t=this.closestApp;t&&t.ready().then((()=>{t.app.root.addChild(this._entity)}))}}async _loadModel(){var t;this._unloadModel();const e=await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),s=null==e?void 0:e.app,i=u.get(this._asset);i&&(i.loaded?this._instantiate(i.resource):(i.once("load",(()=>{this._instantiate(i.resource)})),s.assets.load(i)))}_unloadModel(){var t;null===(t=this._entity)||void 0===t||t.destroy(),this._entity=null}set asset(t){this._asset=t,this.isConnected&&this._loadModel()}get asset(){return this._asset}static get observedAttributes(){return["asset"]}attributeChangedCallback(t,e,s){if("asset"===t)this.asset=s}}customElements.define("pc-model",D);class L extends s{constructor(){super(...arguments),this._fog="none",this._fogColor=new e.Color(1,1,1),this._fogDensity=0,this._fogStart=0,this._fogEnd=1e3,this.scene=null}async connectedCallback(){var t;await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),this.scene=this.closestApp.app.scene,this.updateSceneSettings(),this._onReady()}updateSceneSettings(){this.scene&&(this.scene.fog.type=this._fog,this.scene.fog.color=this._fogColor,this.scene.fog.density=this._fogDensity,this.scene.fog.start=this._fogStart,this.scene.fog.end=this._fogEnd)}set fog(t){this._fog=t,this.scene&&(this.scene.fog.type=t)}get fog(){return this._fog}set fogColor(t){this._fogColor=t,this.scene&&(this.scene.fog.color=t)}get fogColor(){return this._fogColor}set fogDensity(t){this._fogDensity=t,this.scene&&(this.scene.fog.density=t)}get fogDensity(){return this._fogDensity}set fogStart(t){this._fogStart=t,this.scene&&(this.scene.fog.start=t)}get fogStart(){return this._fogStart}set fogEnd(t){this._fogEnd=t,this.scene&&(this.scene.fog.end=t)}get fogEnd(){return this._fogEnd}static get observedAttributes(){return["fog","fog-color","fog-density","fog-start","fog-end"]}attributeChangedCallback(t,e,s){switch(t){case"fog":this.fog=s;break;case"fog-color":this.fogColor=o(s);break;case"fog-density":this.fogDensity=parseFloat(s);break;case"fog-start":this.fogStart=parseFloat(s);break;case"fog-end":this.fogEnd=parseFloat(s)}}}customElements.define("pc-scene",L);class R extends s{constructor(){super(...arguments),this._asset="",this._center=new e.Vec3(0,.01,0),this._intensity=1,this._rotation=new e.Vec3,this._level=0,this._lighting=!1,this._scale=new e.Vec3(100,100,100),this._type="infinite",this._scene=null}connectedCallback(){this._loadSkybox(),this._onReady()}disconnectedCallback(){this._unloadSkybox()}_generateSkybox(t){if(!this._scene)return;const s=t.resource,i=e.EnvLighting.generateSkyboxCubemap(s);if(i.anisotropy=4,this._scene.skybox=i,this._lighting){const t=e.EnvLighting.generateLightingSource(s),i=e.EnvLighting.generateAtlas(t);this._scene.envAtlas=i}const n=this._scene.layers.getLayerById(e.LAYERID_SKYBOX);n&&(n.enabled="none"!==this._type),this._scene.sky.type=this._type,this._scene.sky.node.setLocalScale(this._scale),this._scene.sky.center=this._center,this._scene.skyboxIntensity=this._intensity}async _loadSkybox(){var t;const e=await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),s=null==e?void 0:e.app;if(!s)return;const i=u.get(this._asset);i&&(this._scene=s.scene,i.loaded?this._generateSkybox(i):(i.once("load",(()=>{this._generateSkybox(i)})),s.assets.load(i)))}_unloadSkybox(){var t,e;this._scene&&(null===(t=this._scene.skybox)||void 0===t||t.destroy(),this._scene.skybox=null,null===(e=this._scene.envAtlas)||void 0===e||e.destroy(),this._scene.envAtlas=null,this._scene=null)}set asset(t){this._asset=t,this.isConnected&&this._loadSkybox()}get asset(){return this._asset}set center(t){this._center=t,this._scene&&(this._scene.sky.center=this._center)}get center(){return this._center}set intensity(t){this._intensity=t,this._scene&&(this._scene.skyboxIntensity=this._intensity)}get intensity(){return this._intensity}set level(t){this._level=t,this._scene&&(this._scene.skyboxMip=this._level)}get level(){return this._level}set lighting(t){this._lighting=t}get lighting(){return this._lighting}set rotation(t){this._rotation=t,this._scene&&(this._scene.skyboxRotation=(new e.Quat).setFromEulerAngles(t))}get rotation(){return this._rotation}set scale(t){this._scale=t,this._scene&&this._scene.sky.node.setLocalScale(this._scale)}get scale(){return this._scale}set type(t){if(this._type=t,this._scene){this._scene.sky.type=this._type;const t=this._scene.layers.getLayerById(e.LAYERID_SKYBOX);t&&(t.enabled="none"!==this._type)}}get type(){return this._type}static get observedAttributes(){return["asset","center","intensity","level","lighting","rotation","scale","type"]}attributeChangedCallback(t,e,s){switch(t){case"asset":this.asset=s;break;case"center":this.center=h(s);break;case"intensity":this.intensity=parseFloat(s);break;case"level":this.level=parseInt(s,10);break;case"lighting":this.lighting=this.hasAttribute(t);break;case"rotation":this.rotation=h(s);break;case"scale":this.scale=h(s);break;case"type":this.type=s}}}customElements.define("pc-sky",R),t.AppElement=n,t.AssetElement=u,t.AsyncElement=s,t.CameraComponentElement=_,t.CollisionComponentElement=g,t.ComponentElement=d,t.ElementComponentElement=b,t.EntityElement=l,t.GSplatComponentElement=y,t.LightComponentElement=w,t.ListenerComponentElement=m,t.MaterialElement=C,t.ModelElement=D,t.ModuleElement=i,t.RenderComponentElement=k,t.RigidBodyComponentElement=E,t.SceneElement=L,t.ScreenComponentElement=A,t.ScriptComponentElement=S,t.ScriptElement=x,t.SkyElement=R,t.SoundComponentElement=M,t.SoundSlotElement=F}));
1
+ !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("playcanvas")):"function"==typeof define&&define.amd?define(["exports","playcanvas"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).pd={},t.pc)}(this,(function(t,e){"use strict";class s extends HTMLElement{constructor(){super(),this._readyPromise=new Promise((t=>{this._readyResolve=t}))}get closestApp(){var t;return null===(t=this.parentElement)||void 0===t?void 0:t.closest("pc-app")}get closestEntity(){var t;return null===(t=this.parentElement)||void 0===t?void 0:t.closest("pc-entity")}_onReady(){this._readyResolve(),this.dispatchEvent(new CustomEvent("ready"))}ready(){return this._readyPromise.then((()=>this))}}class i extends HTMLElement{constructor(){super(),this.loadPromise=this.loadModule()}async loadModule(){const t=this.getAttribute("name"),s=this.getAttribute("glue"),i=this.getAttribute("wasm"),n=this.getAttribute("fallback");"Basis"===t?e.basisInitialize({glueUrl:s,wasmUrl:i,fallbackUrl:n}):(e.WasmModule.setConfig(t,{glueUrl:s,wasmUrl:i,fallbackUrl:n}),await new Promise((s=>{e.WasmModule.getInstance(t,(()=>s()))})))}getLoadPromise(){return this.loadPromise}}customElements.define("pc-module",i);class n extends s{constructor(){super(),this._canvas=null,this._alpha=!0,this._antialias=!0,this._depth=!0,this._stencil=!0,this._highResolution=!1,this._hierarchyReady=!1,this._picker=null,this._hasPointerListeners={pointerenter:!1,pointerleave:!1,pointerdown:!1,pointerup:!1,pointermove:!1},this._hoveredEntity=null,this._pointerHandlers={pointermove:null,pointerdown:null,pointerup:null},this.app=null,this._onWindowResize=this._onWindowResize.bind(this)}async connectedCallback(){const t=this.querySelectorAll(":scope > pc-module");await Promise.all(Array.from(t).map((t=>t.getLoadPromise()))),this._canvas=document.createElement("canvas"),this.appendChild(this._canvas),this.app=new e.Application(this._canvas,{graphicsDeviceOptions:{alpha:this._alpha,antialias:this._antialias,depth:this._depth,stencil:this._stencil},keyboard:new e.Keyboard(window),mouse:new e.Mouse(this._canvas)}),this.app.graphicsDevice.maxPixelRatio=this._highResolution?window.devicePixelRatio:1,this.app.setCanvasFillMode(e.FILLMODE_FILL_WINDOW),this.app.setCanvasResolution(e.RESOLUTION_AUTO),this._pickerCreate();const s=this.querySelectorAll(":scope > pc-asset");Array.from(s).forEach((t=>{t.createAsset();const e=t.asset;e&&this.app.assets.add(e)}));const i=this.querySelectorAll(":scope > pc-material");Array.from(i).forEach((t=>{t.createMaterial()}));const n=this.querySelectorAll("pc-entity");Array.from(n).forEach((t=>{t.createEntity(this.app)})),n.forEach((t=>{t.buildHierarchy(this.app)})),this._hierarchyReady=!0,this.app.preload((()=>{this.app.start(),window.addEventListener("resize",this._onWindowResize),this._onReady()}))}disconnectedCallback(){this._pickerDestroy(),this.app&&(this.app.destroy(),this.app=null),window.removeEventListener("resize",this._onWindowResize),this._canvas&&this.contains(this._canvas)&&(this.removeChild(this._canvas),this._canvas=null)}_onWindowResize(){this.app&&this.app.resizeCanvas()}_pickerCreate(){const{width:t,height:s}=this.app.graphicsDevice;this._picker=new e.Picker(this.app,t,s),this._pointerHandlers.pointermove=this._onPointerMove.bind(this),this._pointerHandlers.pointerdown=this._onPointerDown.bind(this),this._pointerHandlers.pointerup=this._onPointerUp.bind(this),["pointermove","pointerdown","pointerup","pointerenter","pointerleave"].forEach((t=>{this.addEventListener(`${t}:connect`,(()=>this._onPointerListenerAdded(t))),this.addEventListener(`${t}:disconnect`,(()=>this._onPointerListenerRemoved(t)))}))}_pickerDestroy(){this._canvas&&Object.entries(this._pointerHandlers).forEach((([t,e])=>{e&&this._canvas.removeEventListener(t,e)})),this._picker=null,this._pointerHandlers={pointermove:null,pointerdown:null,pointerup:null}}_onPointerMove(t){if(!this._picker||!this.app)return;const e=this.app.root.findComponent("camera");if(!e)return;const s=this._canvas.getBoundingClientRect(),i=t.clientX-s.left,n=t.clientY-s.top;this._picker.prepare(e,this.app.scene);const a=this._picker.getSelection(i,n);let o=null;if(a.length>0){let t=a[0].node;for(;t&&!o;){const e=this.querySelector(`pc-entity[name="${t.name}"]`);e&&(o=e),t=t.parent}}this._hoveredEntity!==o&&(this._hoveredEntity&&this._hoveredEntity.hasListeners("pointerleave")&&this._hoveredEntity.dispatchEvent(new PointerEvent("pointerleave",t)),o&&o.hasListeners("pointerenter")&&o.dispatchEvent(new PointerEvent("pointerenter",t))),this._hoveredEntity=o,o&&o.hasListeners("pointermove")&&o.dispatchEvent(new PointerEvent("pointermove",t))}_onPointerDown(t){if(!this._picker||!this.app)return;const e=this.app.root.findComponent("camera");if(!e)return;const s=this._canvas.getBoundingClientRect(),i=t.clientX-s.left,n=t.clientY-s.top;this._picker.prepare(e,this.app.scene);const a=this._picker.getSelection(i,n);if(a.length>0){let e=a[0].node;for(;e;){const s=this.querySelector(`pc-entity[name="${e.name}"]`);if(s&&s.hasListeners("pointerdown")){s.dispatchEvent(new PointerEvent("pointerdown",t));break}e=e.parent}}}_onPointerUp(t){if(!this._picker||!this.app)return;const e=this.app.root.findComponent("camera");if(!e)return;const s=this._canvas.getBoundingClientRect(),i=t.clientX-s.left,n=t.clientY-s.top;this._picker.prepare(e,this.app.scene);const a=this._picker.getSelection(i,n);if(a.length>0){const e=this.querySelector(`pc-entity[name="${a[0].node.name}"]`);e&&e.hasListeners("pointerup")&&e.dispatchEvent(new PointerEvent("pointerup",t))}}_onPointerListenerAdded(t){if(!this._hasPointerListeners[t]&&this._canvas){this._hasPointerListeners[t]=!0;const e="pointerenter"===t||"pointerleave"===t?this._pointerHandlers.pointermove:this._pointerHandlers[t];e&&this._canvas.addEventListener("pointerenter"===t||"pointerleave"===t?"pointermove":t,e)}}_onPointerListenerRemoved(t){if(!Array.from(this.querySelectorAll("pc-entity")).some((e=>e.hasListeners(t)))&&this._canvas){this._hasPointerListeners[t]=!1;const e="pointerenter"===t||"pointerleave"===t?this._pointerHandlers.pointermove:this._pointerHandlers[t];e&&this._canvas.removeEventListener("pointerenter"===t||"pointerleave"===t?"pointermove":t,e)}}set alpha(t){this._alpha=t}get alpha(){return this._alpha}set antialias(t){this._antialias=t}get antialias(){return this._antialias}set depth(t){this._depth=t}get depth(){return this._depth}get hierarchyReady(){return this._hierarchyReady}set highResolution(t){this._highResolution=t,this.app&&(this.app.graphicsDevice.maxPixelRatio=t?window.devicePixelRatio:1)}get highResolution(){return this._highResolution}set stencil(t){this._stencil=t}get stencil(){return this._stencil}static get observedAttributes(){return["alpha","antialias","depth","stencil","high-resolution"]}attributeChangedCallback(t,e,s){switch(t){case"alpha":this.alpha="false"!==s;break;case"antialias":this.antialias="false"!==s;break;case"depth":this.depth="false"!==s;break;case"high-resolution":this.highResolution="false"!==s;break;case"stencil":this.stencil="false"!==s}}}customElements.define("pc-app",n);const a={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},o=t=>{const s=a[t.toLowerCase()];if(s)return(new e.Color).fromString(s);if(t.startsWith("#"))return(new e.Color).fromString(t);const i=t.split(" ").map(Number);return new e.Color(i)},r=t=>{const s=t.split(" ").map(Number);return new e.Vec2(s)},h=t=>{const s=t.split(" ").map(Number);return new e.Vec3(s)},c=t=>{const s=t.split(" ").map(Number);return new e.Vec4(s)};class l extends s{constructor(){super(...arguments),this._enabled=!0,this._name="Untitled",this._position=new e.Vec3,this._rotation=new e.Vec3,this._scale=new e.Vec3(1,1,1),this._tags=[],this._listeners={},this.entity=null}createEntity(t){this.entity=new e.Entity(this.getAttribute("name")||this._name,t);const s=this.getAttribute("enabled");s&&(this.entity.enabled="false"!==s);const i=this.getAttribute("position");i&&this.entity.setLocalPosition(h(i));const n=this.getAttribute("rotation");n&&this.entity.setLocalEulerAngles(h(n));const a=this.getAttribute("scale");a&&this.entity.setLocalScale(h(a));const o=this.getAttribute("tags");o&&this.entity.tags.add(o.split(",").map((t=>t.trim())));["onpointerenter","onpointerleave","onpointerdown","onpointerup","onpointermove"].forEach((t=>{const e=this.getAttribute(t);if(e){const s=t.substring(2),i=t=>{try{new Function("event",e).call(this,t)}catch(t){console.error("Error in event handler:",t)}};this.addEventListener(s,i)}}))}buildHierarchy(t){if(!this.entity)return;const e=this.closestEntity;(null==e?void 0:e.entity)?e.entity.addChild(this.entity):t.root.addChild(this.entity),this._onReady()}connectedCallback(){const t=this.closestApp;if(t&&t.hierarchyReady){const e=t.app;this.createEntity(e),this.buildHierarchy(e);const s=this.querySelectorAll("pc-entity");s.forEach((t=>{t.createEntity(e)})),s.forEach((t=>{t.buildHierarchy(e)}))}}disconnectedCallback(){if(this.entity){this.querySelectorAll("pc-entity").forEach((t=>{t.entity=null})),this.entity.destroy(),this.entity=null}}set enabled(t){this._enabled=t,this.entity&&(this.entity.enabled=t)}get enabled(){return this._enabled}set name(t){this._name=t,this.entity&&(this.entity.name=t)}get name(){return this._name}set position(t){this._position=t,this.entity&&this.entity.setLocalPosition(this._position)}get position(){return this._position}set rotation(t){this._rotation=t,this.entity&&this.entity.setLocalEulerAngles(this._rotation)}get rotation(){return this._rotation}set scale(t){this._scale=t,this.entity&&this.entity.setLocalScale(this._scale)}get scale(){return this._scale}set tags(t){this._tags=t,this.entity&&(this.entity.tags.clear(),this.entity.tags.add(this._tags))}get tags(){return this._tags}static get observedAttributes(){return["enabled","name","position","rotation","scale","tags","onpointerenter","onpointerleave","onpointerdown","onpointerup","onpointermove"]}attributeChangedCallback(t,e,s){switch(t){case"enabled":this.enabled="false"!==s;break;case"name":this.name=s;break;case"position":this.position=h(s);break;case"rotation":this.rotation=h(s);break;case"scale":this.scale=h(s);break;case"tags":this.tags=s.split(",").map((t=>t.trim()));break;case"onpointerenter":case"onpointerleave":case"onpointerdown":case"onpointerup":case"onpointermove":if(s){const e=t.substring(2),s=t=>{try{const s=this.getAttribute(e)||"";new Function("event",s).call(this,t)}catch(t){console.error("Error in event handler:",t)}};this.addEventListener(e,s)}}}addEventListener(t,e,s){this._listeners[t]||(this._listeners[t]=[]),this._listeners[t].push(e),super.addEventListener(t,e,s),t.startsWith("pointer")&&this.dispatchEvent(new CustomEvent(`${t}:connect`,{bubbles:!0}))}removeEventListener(t,e,s){this._listeners[t]&&(this._listeners[t]=this._listeners[t].filter((t=>t!==e))),super.removeEventListener(t,e,s),t.startsWith("pointer")&&this.dispatchEvent(new CustomEvent(`${t}:disconnect`,{bubbles:!0}))}hasListeners(t){var e;return Boolean(null===(e=this._listeners[t])||void 0===e?void 0:e.length)}}customElements.define("pc-entity",l);const p=new Map([["bin","binary"],["css","css"],["frag","shader"],["glb","container"],["glsl","shader"],["hdr","texture"],["html","html"],["jpg","texture"],["js","script"],["json","json"],["mp3","audio"],["mjs","script"],["ply","gsplat"],["png","texture"],["txt","text"],["vert","shader"],["webp","texture"]]);class u extends HTMLElement{constructor(){super(...arguments),this._preload=!1,this.asset=null}disconnectedCallback(){this.destroyAsset()}createAsset(){var t;const s=this.getAttribute("id")||"",i=this.getAttribute("src")||"";let n=this.getAttribute("type");if(!n){const e=i.split(".").pop();n=null!==(t=p.get(e||""))&&void 0!==t?t:null}n?(this.asset=new e.Asset(s,n,{url:i}),this.asset.preload=this.preload):console.warn(`Unsupported asset type: ${i}`)}destroyAsset(){this.asset&&(this.asset.unload(),this.asset=null)}set preload(t){this._preload=t,this.asset&&(this.asset.preload=t)}get preload(){return this._preload}static get(t){const e=document.querySelector(`pc-asset[id="${t}"]`);return null==e?void 0:e.asset}static get observedAttributes(){return["preload"]}attributeChangedCallback(t,e,s){"preload"===t&&(this.preload=this.hasAttribute("preload"))}}customElements.define("pc-asset",u);class d extends s{constructor(t){super(),this._enabled=!0,this._component=null,this._componentName=t}getInitialComponentData(){return{}}async addComponent(){const t=this.closestEntity;if(t){await t.ready();const e=this.getInitialComponentData();this._component=t.entity.addComponent(this._componentName,e)}}initComponent(){}async connectedCallback(){var t;await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),await this.addComponent(),this.initComponent(),this._onReady()}disconnectedCallback(){this.component&&this.component.entity&&(this._component.entity.removeComponent(this._componentName),this._component=null)}get component(){return this._component}set enabled(t){this._enabled=t,this.component&&(this.component.enabled=t)}get enabled(){return this._enabled}static get observedAttributes(){return["enabled"]}attributeChangedCallback(t,e,s){if("enabled"===t)this.enabled="false"!==s}}class m extends d{constructor(){super("audiolistener")}get component(){return super.component}}customElements.define("pc-listener",m);const f=new Map([["none",e.TONEMAP_NONE],["linear",e.TONEMAP_LINEAR],["filmic",e.TONEMAP_FILMIC],["hejl",e.TONEMAP_HEJL],["aces",e.TONEMAP_ACES],["aces2",e.TONEMAP_ACES2],["neutral",e.TONEMAP_NEUTRAL]]);class _ extends d{constructor(){super("camera"),this._clearColor=new e.Color(.75,.75,.75,1),this._clearColorBuffer=!0,this._clearDepthBuffer=!0,this._clearStencilBuffer=!1,this._cullFaces=!0,this._farClip=1e3,this._flipFaces=!1,this._fov=45,this._frustumCulling=!0,this._gamma="srgb",this._horizontalFov=!1,this._nearClip=.1,this._orthographic=!1,this._orthoHeight=10,this._priority=0,this._rect=new e.Vec4(0,0,1,1),this._scissorRect=new e.Vec4(0,0,1,1),this._tonemap="none"}getInitialComponentData(){return{clearColor:this._clearColor,clearColorBuffer:this._clearColorBuffer,clearDepthBuffer:this._clearDepthBuffer,clearStencilBuffer:this._clearStencilBuffer,cullFaces:this._cullFaces,farClip:this._farClip,flipFaces:this._flipFaces,fov:this._fov,frustumCulling:this._frustumCulling,gammaCorrection:"srgb"===this._gamma?e.GAMMA_SRGB:e.GAMMA_NONE,horizontalFov:this._horizontalFov,nearClip:this._nearClip,orthographic:this._orthographic,orthoHeight:this._orthoHeight,priority:this._priority,rect:this._rect,scissorRect:this._scissorRect,toneMapping:f.get(this._tonemap)}}get xrAvailable(){var t;const s=null===(t=this.component)||void 0===t?void 0:t.system.app.xr;return s&&s.supported&&s.isAvailable(e.XRTYPE_VR)}startXr(t,e){this.component&&this.xrAvailable&&this.component.startXr(t,e,{callback:t=>{t&&console.error(`WebXR Immersive VR failed to start: ${t.message}`)}})}endXr(){this.component&&this.component.endXr()}get component(){return super.component}set clearColor(t){this._clearColor=t,this.component&&(this.component.clearColor=t)}get clearColor(){return this._clearColor}set clearColorBuffer(t){this._clearColorBuffer=t,this.component&&(this.component.clearColorBuffer=t)}get clearColorBuffer(){return this._clearColorBuffer}set clearDepthBuffer(t){this._clearDepthBuffer=t,this.component&&(this.component.clearDepthBuffer=t)}get clearDepthBuffer(){return this._clearDepthBuffer}set clearStencilBuffer(t){this._clearStencilBuffer=t,this.component&&(this.component.clearStencilBuffer=t)}get clearStencilBuffer(){return this._clearStencilBuffer}set cullFaces(t){this._cullFaces=t,this.component&&(this.component.cullFaces=t)}get cullFaces(){return this._cullFaces}set farClip(t){this._farClip=t,this.component&&(this.component.farClip=t)}get farClip(){return this._farClip}set flipFaces(t){this._flipFaces=t,this.component&&(this.component.flipFaces=t)}get flipFaces(){return this._flipFaces}set fov(t){this._fov=t,this.component&&(this.component.fov=t)}get fov(){return this._fov}set frustumCulling(t){this._frustumCulling=t,this.component&&(this.component.frustumCulling=t)}get frustumCulling(){return this._frustumCulling}set gamma(t){this._gamma=t,this.component&&(this.component.gammaCorrection="srgb"===t?e.GAMMA_SRGB:e.GAMMA_NONE)}get gamma(){return this._gamma}set horizontalFov(t){this._horizontalFov=t,this.component&&(this.component.horizontalFov=t)}get horizontalFov(){return this._horizontalFov}set nearClip(t){this._nearClip=t,this.component&&(this.component.nearClip=t)}get nearClip(){return this._nearClip}set orthographic(t){this._orthographic=t,this.component&&(this.component.projection=t?e.PROJECTION_ORTHOGRAPHIC:e.PROJECTION_PERSPECTIVE)}get orthographic(){return this._orthographic}set orthoHeight(t){this._orthoHeight=t,this.component&&(this.component.orthoHeight=t)}get orthoHeight(){return this._orthoHeight}set priority(t){this._priority=t,this.component&&(this.component.priority=t)}get priority(){return this._priority}set rect(t){this._rect=t,this.component&&(this.component.rect=t)}get rect(){return this._rect}set scissorRect(t){this._scissorRect=t,this.component&&(this.component.scissorRect=t)}get scissorRect(){return this._scissorRect}set tonemap(t){var s;this._tonemap=t,this.component&&(this.component.toneMapping=null!==(s=f.get(t))&&void 0!==s?s:e.TONEMAP_NONE)}get tonemap(){return this._tonemap}static get observedAttributes(){return[...super.observedAttributes,"clear-color","clear-color-buffer","clear-depth-buffer","clear-stencil-buffer","cull-faces","far-clip","flip-faces","fov","frustum-culling","gamma","horizontal-fov","near-clip","orthographic","ortho-height","priority","rect","scissor-rect","tonemap"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"clear-color":this.clearColor=o(s);break;case"clear-color-buffer":this.clearColorBuffer="false"!==s;break;case"clear-depth-buffer":this.clearDepthBuffer="false"!==s;break;case"clear-stencil-buffer":this.clearStencilBuffer="false"!==s;break;case"cull-faces":this.cullFaces="false"!==s;break;case"far-clip":this.farClip=parseFloat(s);break;case"flip-faces":this.flipFaces="true"!==s;break;case"fov":this.fov=parseFloat(s);break;case"frustum-culling":this.frustumCulling="false"!==s;break;case"gamma":this.gamma=s;break;case"horizontal-fov":this.horizontalFov=this.hasAttribute("horizontal-fov");break;case"near-clip":this.nearClip=parseFloat(s);break;case"orthographic":this.orthographic=this.hasAttribute("orthographic");break;case"ortho-height":this.orthoHeight=parseFloat(s);break;case"priority":this.priority=parseFloat(s);break;case"rect":this.rect=c(s);break;case"scissor-rect":this.scissorRect=c(s);break;case"tonemap":this.tonemap=s}}}customElements.define("pc-camera",_);class g extends d{constructor(){super("collision"),this._angularOffset=new e.Quat,this._axis=1,this._convexHull=!1,this._halfExtents=new e.Vec3(.5,.5,.5),this._height=2,this._linearOffset=new e.Vec3,this._radius=.5,this._type="box"}getInitialComponentData(){return{axis:this._axis,angularOffset:this._angularOffset,convexHull:this._convexHull,halfExtents:this._halfExtents,height:this._height,linearOffset:this._linearOffset,radius:this._radius,type:this._type}}get component(){return super.component}set angularOffset(t){this._angularOffset=t,this.component&&(this.component.angularOffset=t)}get angularOffset(){return this._angularOffset}set axis(t){this._axis=t,this.component&&(this.component.axis=t)}get axis(){return this._axis}set convexHull(t){this._convexHull=t,this.component&&(this.component.convexHull=t)}get convexHull(){return this._convexHull}set halfExtents(t){this._halfExtents=t,this.component&&(this.component.halfExtents=t)}get halfExtents(){return this._halfExtents}set height(t){this._height=t,this.component&&(this.component.height=t)}get height(){return this._height}set linearOffset(t){this._linearOffset=t,this.component&&(this.component.linearOffset=t)}get linearOffset(){return this._linearOffset}set radius(t){this._radius=t,this.component&&(this.component.radius=t)}get radius(){return this._radius}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}static get observedAttributes(){return[...super.observedAttributes,"angular-offset","axis","convex-hull","half-extents","height","linear-offset","radius","type"]}attributeChangedCallback(t,s,i){switch(super.attributeChangedCallback(t,s,i),t){case"angular-offset":this.angularOffset=(t=>{const[s,i,n]=t.split(" ").map(Number),a=new e.Quat;return a.setFromEulerAngles(s,i,n),a})(i);break;case"axis":this.axis=parseInt(i,10);break;case"convex-hull":this.convexHull=this.hasAttribute("convex-hull");break;case"half-extents":this.halfExtents=h(i);break;case"height":this.height=parseFloat(i);break;case"linear-offset":this.linearOffset=h(i);break;case"radius":this.radius=parseFloat(i);break;case"type":this.type=i}}}customElements.define("pc-collision",g);class b extends d{constructor(){super("element"),this._anchor=new e.Vec4(.5,.5,.5,.5),this._asset="",this._autoWidth=!0,this._color=new e.Color(1,1,1,1),this._fontSize=32,this._lineHeight=32,this._pivot=new e.Vec2(.5,.5),this._text="",this._type="group",this._width=0,this._wrapLines=!1}initComponent(){this.component._text._material.useFog=!0}getInitialComponentData(){return{anchor:this._anchor,autoWidth:this._autoWidth,color:this._color,fontAsset:u.get(this._asset).id,fontSize:this._fontSize,lineHeight:this._lineHeight,pivot:this._pivot,type:this._type,text:this._text,width:this._width,wrapLines:this._wrapLines}}get component(){return super.component}set anchor(t){this._anchor=t,this.component&&(this.component.anchor=t)}get anchor(){return this._anchor}set asset(t){this._asset=t;const e=u.get(t);this.component&&e&&(this.component.fontAsset=e.id)}get asset(){return this._asset}set autoWidth(t){this._autoWidth=t,this.component&&(this.component.autoWidth=t)}get autoWidth(){return this._autoWidth}set color(t){this._color=t,this.component&&(this.component.color=t)}get color(){return this._color}set fontSize(t){this._fontSize=t,this.component&&(this.component.fontSize=t)}get fontSize(){return this._fontSize}set lineHeight(t){this._lineHeight=t,this.component&&(this.component.lineHeight=t)}get lineHeight(){return this._lineHeight}set pivot(t){this._pivot=t,this.component&&(this.component.pivot=t)}get pivot(){return this._pivot}set text(t){this._text=t,this.component&&(this.component.text=t)}get text(){return this._text}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}set width(t){this._width=t,this.component&&(this.component.width=t)}get width(){return this._width}set wrapLines(t){this._wrapLines=t,this.component&&(this.component.wrapLines=t)}get wrapLines(){return this._wrapLines}static get observedAttributes(){return[...super.observedAttributes,"anchor","asset","auto-width","color","font-size","line-height","pivot","text","type","width","wrap-lines"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"anchor":this.anchor=c(s);break;case"asset":this.asset=s;break;case"auto-width":this.autoWidth="false"!==s;break;case"color":this.color=o(s);break;case"font-size":this.fontSize=Number(s);break;case"line-height":this.lineHeight=Number(s);break;case"pivot":this.pivot=r(s);break;case"text":this.text=s;break;case"type":this.type=s;break;case"width":this.width=Number(s);break;case"wrap-lines":this.wrapLines=this.hasAttribute(t)}}}customElements.define("pc-element",b);class y extends d{constructor(){super("gsplat"),this._asset=""}getInitialComponentData(){return{asset:u.get(this._asset)}}get component(){return super.component}set asset(t){this._asset=t;const e=u.get(t);this.component&&e&&(this.component.asset=e)}get asset(){return this._asset}static get observedAttributes(){return[...super.observedAttributes,"asset"]}attributeChangedCallback(t,e,s){if(super.attributeChangedCallback(t,e,s),"asset"===t)this.asset=s}}customElements.define("pc-splat",y);const v=new Map([["pcf1-16f",e.SHADOW_PCF1_16F],["pcf1-32f",e.SHADOW_PCF1_32F],["pcf3-16f",e.SHADOW_PCF3_16F],["pcf3-32f",e.SHADOW_PCF3_32F],["pcf5-16f",e.SHADOW_PCF5_16F],["pcf5-32f",e.SHADOW_PCF5_32F],["vsm-16f",e.SHADOW_VSM_16F],["vsm-32f",e.SHADOW_VSM_32F],["pcss-32f",e.SHADOW_PCSS_32F]]);class w extends d{constructor(){super("light"),this._castShadows=!1,this._color=new e.Color(1,1,1),this._innerConeAngle=40,this._intensity=1,this._normalOffsetBias=.05,this._outerConeAngle=45,this._range=10,this._shadowBias=.2,this._shadowDistance=16,this._shadowIntensity=1,this._shadowResolution=1024,this._shadowType="pcf3-32f",this._type="directional",this._vsmBias=.01}getInitialComponentData(){return{castShadows:this._castShadows,color:this._color,innerConeAngle:this._innerConeAngle,intensity:this._intensity,normalOffsetBias:this._normalOffsetBias,outerConeAngle:this._outerConeAngle,range:this._range,shadowBias:this._shadowBias,shadowDistance:this._shadowDistance,shadowIntensity:this._shadowIntensity,shadowResolution:this._shadowResolution,shadowType:v.get(this._shadowType),type:this._type,vsmBias:this._vsmBias}}get component(){return super.component}set castShadows(t){this._castShadows=t,this.component&&(this.component.castShadows=t)}get castShadows(){return this._castShadows}set color(t){this._color=t,this.component&&(this.component.color=t)}get color(){return this._color}set innerConeAngle(t){this._innerConeAngle=t,this.component&&(this.component.innerConeAngle=t)}get innerConeAngle(){return this._innerConeAngle}set intensity(t){this._intensity=t,this.component&&(this.component.intensity=t)}get intensity(){return this._intensity}set normalOffsetBias(t){this._normalOffsetBias=t,this.component&&(this.component.normalOffsetBias=t)}get normalOffsetBias(){return this._normalOffsetBias}set outerConeAngle(t){this._outerConeAngle=t,this.component&&(this.component.outerConeAngle=t)}get outerConeAngle(){return this._outerConeAngle}set range(t){this._range=t,this.component&&(this.component.range=t)}get range(){return this._range}set shadowBias(t){this._shadowBias=t,this.component&&(this.component.shadowBias=t)}get shadowBias(){return this._shadowBias}set shadowDistance(t){this._shadowDistance=t,this.component&&(this.component.shadowDistance=t)}get shadowDistance(){return this._shadowDistance}set shadowIntensity(t){this._shadowIntensity=t,this.component&&(this.component.shadowIntensity=t)}get shadowIntensity(){return this._shadowIntensity}set shadowResolution(t){this._shadowResolution=t,this.component&&(this.component.shadowResolution=t)}get shadowResolution(){return this._shadowResolution}set shadowType(t){var s;this._shadowType=t,this.component&&(this.component.shadowType=null!==(s=v.get(t))&&void 0!==s?s:e.SHADOW_PCF3_32F)}get shadowType(){return this._shadowType}set type(t){["directional","omni","spot"].includes(t)?(this._type=t,this.component&&(this.component.type=t)):console.warn(`Invalid light type '${t}', using default type '${this._type}'.`)}get type(){return this._type}set vsmBias(t){this._vsmBias=t,this.component&&(this.component.vsmBias=t)}get vsmBias(){return this._vsmBias}static get observedAttributes(){return[...super.observedAttributes,"color","cast-shadows","intensity","inner-cone-angle","normal-offset-bias","outer-cone-angle","range","shadow-bias","shadow-distance","shadow-intensity","shadow-resolution","shadow-type","type","vsm-bias"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"color":this.color=o(s);break;case"cast-shadows":this.castShadows=this.hasAttribute("cast-shadows");break;case"inner-cone-angle":this.innerConeAngle=Number(s);break;case"intensity":this.intensity=Number(s);break;case"normal-offset-bias":this.normalOffsetBias=Number(s);break;case"outer-cone-angle":this.outerConeAngle=Number(s);break;case"range":this.range=Number(s);break;case"shadow-bias":this.shadowBias=Number(s);break;case"shadow-distance":this.shadowDistance=Number(s);break;case"shadow-resolution":this.shadowResolution=Number(s);break;case"shadow-intensity":this.shadowIntensity=Number(s);break;case"shadow-type":this.shadowType=s;break;case"type":this.type=s;break;case"vsm-bias":this.vsmBias=Number(s)}}}customElements.define("pc-light",w);class C extends HTMLElement{constructor(){super(...arguments),this._diffuse=new e.Color(1,1,1),this._diffuseMap="",this._metalnessMap="",this._normalMap="",this._roughnessMap="",this.material=null}createMaterial(){this.material=new e.StandardMaterial,this.material.glossInvert=!1,this.material.useMetalness=!1,this.material.diffuse=this._diffuse,this.diffuseMap=this._diffuseMap,this.metalnessMap=this._metalnessMap,this.normalMap=this._normalMap,this.roughnessMap=this._roughnessMap,this.material.update()}disconnectedCallback(){this.material&&(this.material.destroy(),this.material=null)}setMap(t,e){if(this.material){const s=u.get(t);s&&(s.loaded?(this.material[e]=s.resource,this.material[e].anisotropy=4):s.once("load",(()=>{this.material[e]=s.resource,this.material[e].anisotropy=4,this.material.update()})))}}set diffuse(t){this._diffuse=t,this.material&&(this.material.diffuse=t)}get diffuse(){return this._diffuse}set diffuseMap(t){this._diffuseMap=t,this.setMap(t,"diffuseMap")}get diffuseMap(){return this._diffuseMap}set metalnessMap(t){this._metalnessMap=t,this.setMap(t,"metalnessMap")}get metalnessMap(){return this._metalnessMap}set normalMap(t){this._normalMap=t,this.setMap(t,"normalMap")}get normalMap(){return this._normalMap}set roughnessMap(t){this._roughnessMap=t,this.setMap(t,"glossMap")}get roughnessMap(){return this._roughnessMap}static get(t){const e=document.querySelector(`pc-material[id="${t}"]`);return null==e?void 0:e.material}static get observedAttributes(){return["diffuse","diffuse-map","metalness-map","normal-map","roughness-map"]}attributeChangedCallback(t,e,s){switch(t){case"diffuse":this.diffuse=o(s);break;case"diffuse-map":this.diffuseMap=s;break;case"metalness-map":this.metalnessMap=s;break;case"normal-map":this.normalMap=s;break;case"roughness-map":this.roughnessMap=s}}}customElements.define("pc-material",C);class k extends d{constructor(){super("render"),this._castShadows=!0,this._material="",this._receiveShadows=!0,this._type="asset"}getInitialComponentData(){return{type:this._type,castShadows:this._castShadows,material:C.get(this._material),receiveShadows:this._receiveShadows}}get component(){return super.component}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}set castShadows(t){this._castShadows=t,this.component&&(this.component.castShadows=t)}get castShadows(){return this._castShadows}set material(t){this._material=t,this.component&&(this.component.material=C.get(t))}get material(){return this._material}set receiveShadows(t){this._receiveShadows=t,this.component&&(this.component.receiveShadows=t)}get receiveShadows(){return this._receiveShadows}static get observedAttributes(){return[...super.observedAttributes,"cast-shadows","material","receive-shadows","type"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"cast-shadows":this.castShadows="false"!==s;break;case"material":this.material=s;break;case"receive-shadows":this.receiveShadows="false"!==s;break;case"type":this.type=s}}}customElements.define("pc-render",k);class E extends d{constructor(){super("rigidbody"),this._angularDamping=0,this._angularFactor=new e.Vec3(1,1,1),this._friction=.5,this._linearDamping=0,this._linearFactor=new e.Vec3(1,1,1),this._mass=1,this._restitution=0,this._rollingFriction=0,this._type="static"}getInitialComponentData(){return{angularDamping:this._angularDamping,angularFactor:this._angularFactor,friction:this._friction,linearDamping:this._linearDamping,linearFactor:this._linearFactor,mass:this._mass,restitution:this._restitution,rollingFriction:this._rollingFriction,type:this._type}}get component(){return super.component}set angularDamping(t){this._angularDamping=t,this.component&&(this.component.angularDamping=t)}get angularDamping(){return this._angularDamping}set angularFactor(t){this._angularFactor=t,this.component&&(this.component.angularFactor=t)}get angularFactor(){return this._angularFactor}set friction(t){this._friction=t,this.component&&(this.component.friction=t)}get friction(){return this._friction}set linearDamping(t){this._linearDamping=t,this.component&&(this.component.linearDamping=t)}get linearDamping(){return this._linearDamping}set linearFactor(t){this._linearFactor=t,this.component&&(this.component.linearFactor=t)}get linearFactor(){return this._linearFactor}set mass(t){this._mass=t,this.component&&(this.component.mass=t)}get mass(){return this._mass}set restitution(t){this._restitution=t,this.component&&(this.component.restitution=t)}get restitution(){return this._restitution}set rollingFriction(t){this._rollingFriction=t,this.component&&(this.component.rollingFriction=t)}get rollingFriction(){return this._rollingFriction}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}static get observedAttributes(){return[...super.observedAttributes,"angular-damping","angular-factor","friction","linear-damping","linear-factor","mass","restitution","rolling-friction","type"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"angular-damping":this.angularDamping=parseFloat(s);break;case"angular-factor":this.angularFactor=h(s);break;case"friction":this.friction=parseFloat(s);break;case"linear-damping":this.linearDamping=parseFloat(s);break;case"linear-factor":this.linearFactor=h(s);break;case"mass":this.mass=parseFloat(s);break;case"restitution":this.restitution=parseFloat(s);break;case"rolling-friction":this.rollingFriction=parseFloat(s);break;case"type":this.type=s}}}customElements.define("pc-rigidbody",E);class A extends d{constructor(){super("screen"),this._screenSpace=!1,this._resolution=new e.Vec2(640,320),this._referenceResolution=new e.Vec2(640,320),this._priority=0,this._blend=!1,this._scaleBlend=.5}getInitialComponentData(){return{priority:this._priority,referenceResolution:this._referenceResolution,resolution:this._resolution,scaleBlend:this._scaleBlend,scaleMode:this._blend?e.SCALEMODE_BLEND:e.SCALEMODE_NONE,screenSpace:this._screenSpace}}get component(){return super.component}set priority(t){this._priority=t,this.component&&(this.component.priority=this._priority)}get priority(){return this._priority}set referenceResolution(t){this._referenceResolution=t,this.component&&(this.component.referenceResolution=this._referenceResolution)}get referenceResolution(){return this._referenceResolution}set resolution(t){this._resolution=t,this.component&&(this.component.resolution=this._resolution)}get resolution(){return this._resolution}set scaleBlend(t){this._scaleBlend=t,this.component&&(this.component.scaleBlend=this._scaleBlend)}get scaleBlend(){return this._scaleBlend}set blend(t){this._blend=t,this.component&&(this.component.scaleMode=this._blend?e.SCALEMODE_BLEND:e.SCALEMODE_NONE)}get blend(){return this._blend}set screenSpace(t){this._screenSpace=t,this.component&&(this.component.screenSpace=this._screenSpace)}get screenSpace(){return this._screenSpace}static get observedAttributes(){return[...super.observedAttributes,"blend","screen-space","resolution","reference-resolution","priority","scale-blend"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"priority":this.priority=parseInt(s,10);break;case"reference-resolution":this.referenceResolution=r(s);break;case"resolution":this.resolution=r(s);break;case"scale-blend":this.scaleBlend=parseFloat(s);break;case"blend":this.blend=this.hasAttribute("blend");break;case"screen-space":this.screenSpace=this.hasAttribute("screen-space")}}}customElements.define("pc-screen",A);class S extends d{constructor(){super("script"),this.observer=new MutationObserver(this.handleMutations.bind(this)),this.observer.observe(this,{childList:!0}),this.addEventListener("scriptattributeschange",this.handleScriptAttributesChange.bind(this)),this.addEventListener("scriptenablechange",this.handleScriptEnableChange.bind(this))}initComponent(){this.querySelectorAll(":scope > pc-script").forEach((t=>{const e=t.getAttribute("name"),s=t.getAttribute("attributes");e&&this.createScript(e,s)}))}applyAttributes(t,s){try{const i=s?JSON.parse(s):{},n=(t,s,i)=>{if("string"==typeof i&&i.startsWith("asset:")){const e=i.slice(6),n=document.querySelector(`pc-asset#${e}`);if(n)return void(t[s]=n.asset)}if(i&&"object"==typeof i&&Array.isArray(i)){if(i.length>0&&"object"==typeof i[0])return void(t[s]=i.map((t=>{const e={};for(const s in t)n(e,s,t[s]);return e})));if(2===i.length&&"number"==typeof i[0])return void(t[s]=new e.Vec2(i[0],i[1]));if(3===i.length&&"number"==typeof i[0])return void(t[s]=new e.Vec3(i[0],i[1],i[2]));if(4===i.length&&"number"==typeof i[0])return void(t[s]=new e.Vec4(i[0],i[1],i[2],i[3]))}if(i&&"object"==typeof i&&!Array.isArray(i)){t[s]&&"object"==typeof t[s]||(t[s]={});for(const e in i)n(t[s],e,i[e])}else t[s]=i};for(const e in i)n(t,e,i[e])}catch(t){console.error(`Error parsing attributes JSON string ${s}:`,t)}}handleScriptAttributesChange(t){const e=t.target.getAttribute("name");if(!e||!this.component)return;const s=this.component.get(e);s&&this.applyAttributes(s,t.detail.attributes)}handleScriptEnableChange(t){const e=t.target.getAttribute("name");if(!e||!this.component)return;const s=this.component.get(e);s&&(s.enabled=t.detail.enabled)}createScript(t,e){return this.component?(this.component.on(`create:${t}`,(t=>{this.applyAttributes(t,e)})),this.component.create(t)):null}destroyScript(t){this.component&&this.component.destroy(t)}handleMutations(t){for(const e of t)e.addedNodes.forEach((t=>{if(t instanceof HTMLElement&&"pc-script"===t.tagName.toLowerCase()){const e=t.getAttribute("name"),s=t.getAttribute("attributes");e&&this.createScript(e,s)}})),e.removedNodes.forEach((t=>{if(t instanceof HTMLElement&&"pc-script"===t.tagName.toLowerCase()){const e=t.getAttribute("name");e&&this.destroyScript(e)}}))}disconnectedCallback(){var t;this.observer.disconnect(),null===(t=super.disconnectedCallback)||void 0===t||t.call(this)}get component(){return super.component}}customElements.define("pc-scripts",S);class F extends HTMLElement{constructor(){super(...arguments),this._attributes="{}",this._enabled=!0,this._name=""}set scriptAttributes(t){this._attributes=t,this.dispatchEvent(new CustomEvent("scriptattributeschange",{detail:{attributes:t},bubbles:!0}))}get scriptAttributes(){return this._attributes}set enabled(t){this._enabled=t,this.dispatchEvent(new CustomEvent("scriptenablechange",{detail:{enabled:t},bubbles:!0}))}get enabled(){return this._enabled}set name(t){this._name=t}get name(){return this._name}static get observedAttributes(){return["attributes","enabled","name"]}attributeChangedCallback(t,e,s){switch(t){case"attributes":this.scriptAttributes=s;break;case"enabled":this.enabled="false"!==s;break;case"name":this.name=s}}}customElements.define("pc-script",F);class x extends d{constructor(){super("sound"),this._distanceModel="linear",this._maxDistance=1e4,this._pitch=1,this._positional=!1,this._refDistance=1,this._rollOffFactor=1,this._volume=1}getInitialComponentData(){return{distanceModel:this._distanceModel,maxDistance:this._maxDistance,pitch:this._pitch,positional:this._positional,refDistance:this._refDistance,rollOffFactor:this._rollOffFactor,volume:this._volume}}get component(){return super.component}set distanceModel(t){this._distanceModel=t,this.component&&(this.component.distanceModel=t)}get distanceModel(){return this._distanceModel}set maxDistance(t){this._maxDistance=t,this.component&&(this.component.maxDistance=t)}get maxDistance(){return this._maxDistance}set pitch(t){this._pitch=t,this.component&&(this.component.pitch=t)}get pitch(){return this._pitch}set positional(t){this._positional=t,this.component&&(this.component.positional=t)}get positional(){return this._positional}set refDistance(t){this._refDistance=t,this.component&&(this.component.refDistance=t)}get refDistance(){return this._refDistance}set rollOffFactor(t){this._rollOffFactor=t,this.component&&(this.component.rollOffFactor=t)}get rollOffFactor(){return this._rollOffFactor}set volume(t){this._volume=t,this.component&&(this.component.volume=t)}get volume(){return this._volume}static get observedAttributes(){return[...super.observedAttributes,"distance-model","max-distance","pitch","positional","ref-distance","roll-off-factor","volume"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"distance-model":this.distanceModel=s;break;case"max-distance":this.maxDistance=parseFloat(s);break;case"pitch":this.pitch=parseFloat(s);break;case"positional":this.positional=this.hasAttribute("positional");break;case"ref-distance":this.refDistance=parseFloat(s);break;case"roll-off-factor":this.rollOffFactor=parseFloat(s);break;case"volume":this.volume=parseFloat(s)}}}customElements.define("pc-sounds",x);class M extends s{constructor(){super(...arguments),this._asset="",this._autoPlay=!1,this._duration=null,this._loop=!1,this._name="",this._overlap=!1,this._pitch=1,this._startTime=0,this._volume=1,this.soundSlot=null}async connectedCallback(){var t;await(null===(t=this.soundElement)||void 0===t?void 0:t.ready());const e={autoPlay:this._autoPlay,loop:this._loop,overlap:this._overlap,pitch:this._pitch,startTime:this._startTime,volume:this._volume};this._duration&&(e.duration=this._duration),this.soundSlot=this.soundElement.component.addSlot(this._name,e),this.asset=this._asset,this.soundSlot.play(),this._onReady()}disconnectedCallback(){this.soundElement.component.removeSlot(this._name)}get soundElement(){const t=this.parentElement;return t instanceof x?t:(console.warn("pc-sound-slot must be a direct child of a pc-sound element"),null)}set asset(t){var e;if(this._asset=t,this.soundSlot){const s=null===(e=u.get(t))||void 0===e?void 0:e.id;s&&(this.soundSlot.asset=s)}}get asset(){return this._asset}set autoPlay(t){this._autoPlay=t,this.soundSlot&&(this.soundSlot.autoPlay=t)}get autoPlay(){return this._autoPlay}set duration(t){this._duration=t,this.soundSlot&&(this.soundSlot.duration=t)}get duration(){return this._duration}set loop(t){this._loop=t,this.soundSlot&&(this.soundSlot.loop=t)}get loop(){return this._loop}set name(t){this._name=t,this.soundSlot&&(this.soundSlot.name=t)}get name(){return this._name}set overlap(t){this._overlap=t,this.soundSlot&&(this.soundSlot.overlap=t)}get overlap(){return this._overlap}set pitch(t){this._pitch=t,this.soundSlot&&(this.soundSlot.pitch=t)}get pitch(){return this._pitch}set startTime(t){this._startTime=t,this.soundSlot&&(this.soundSlot.startTime=t)}get startTime(){return this._startTime}set volume(t){this._volume=t,this.soundSlot&&(this.soundSlot.volume=t)}get volume(){return this._volume}static get observedAttributes(){return["asset","autoPlay","duration","loop","name","overlap","pitch","startTime","volume"]}attributeChangedCallback(t,e,s){switch(t){case"asset":this.asset=s;break;case"duration":this.duration=parseFloat(s);break;case"loop":this.loop=this.hasAttribute("loop");break;case"name":this.name=s;break;case"overlap":this.overlap=this.hasAttribute("overlap");break;case"pitch":this.pitch=parseFloat(s);break;case"startTime":this.startTime=parseFloat(s);break;case"volume":this.volume=parseFloat(s)}}}customElements.define("pc-sound",M);class D extends s{constructor(){super(...arguments),this._asset="",this._entity=null}connectedCallback(){this._loadModel(),this._onReady()}disconnectedCallback(){this._unloadModel()}_instantiate(t){this._entity=t.instantiateRenderEntity(),t.animations.length>0&&(this._entity.addComponent("anim"),this._entity.anim.assignAnimation("animation",t.animations[0].resource));const e=this.closestEntity;if(e)e.ready().then((()=>{e.entity.addChild(this._entity)}));else{const t=this.closestApp;t&&t.ready().then((()=>{t.app.root.addChild(this._entity)}))}}async _loadModel(){var t;this._unloadModel();const e=await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),s=null==e?void 0:e.app,i=u.get(this._asset);i&&(i.loaded?this._instantiate(i.resource):(i.once("load",(()=>{this._instantiate(i.resource)})),s.assets.load(i)))}_unloadModel(){var t;null===(t=this._entity)||void 0===t||t.destroy(),this._entity=null}set asset(t){this._asset=t,this.isConnected&&this._loadModel()}get asset(){return this._asset}static get observedAttributes(){return["asset"]}attributeChangedCallback(t,e,s){if("asset"===t)this.asset=s}}customElements.define("pc-model",D);class L extends s{constructor(){super(...arguments),this._fog="none",this._fogColor=new e.Color(1,1,1),this._fogDensity=0,this._fogStart=0,this._fogEnd=1e3,this.scene=null}async connectedCallback(){var t;await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),this.scene=this.closestApp.app.scene,this.updateSceneSettings(),this._onReady()}updateSceneSettings(){this.scene&&(this.scene.fog.type=this._fog,this.scene.fog.color=this._fogColor,this.scene.fog.density=this._fogDensity,this.scene.fog.start=this._fogStart,this.scene.fog.end=this._fogEnd)}set fog(t){this._fog=t,this.scene&&(this.scene.fog.type=t)}get fog(){return this._fog}set fogColor(t){this._fogColor=t,this.scene&&(this.scene.fog.color=t)}get fogColor(){return this._fogColor}set fogDensity(t){this._fogDensity=t,this.scene&&(this.scene.fog.density=t)}get fogDensity(){return this._fogDensity}set fogStart(t){this._fogStart=t,this.scene&&(this.scene.fog.start=t)}get fogStart(){return this._fogStart}set fogEnd(t){this._fogEnd=t,this.scene&&(this.scene.fog.end=t)}get fogEnd(){return this._fogEnd}static get observedAttributes(){return["fog","fog-color","fog-density","fog-start","fog-end"]}attributeChangedCallback(t,e,s){switch(t){case"fog":this.fog=s;break;case"fog-color":this.fogColor=o(s);break;case"fog-density":this.fogDensity=parseFloat(s);break;case"fog-start":this.fogStart=parseFloat(s);break;case"fog-end":this.fogEnd=parseFloat(s)}}}customElements.define("pc-scene",L);class R extends s{constructor(){super(...arguments),this._asset="",this._center=new e.Vec3(0,.01,0),this._intensity=1,this._rotation=new e.Vec3,this._level=0,this._lighting=!1,this._scale=new e.Vec3(100,100,100),this._type="infinite",this._scene=null}connectedCallback(){this._loadSkybox(),this._onReady()}disconnectedCallback(){this._unloadSkybox()}_generateSkybox(t){if(!this._scene)return;const s=t.resource,i=e.EnvLighting.generateSkyboxCubemap(s);if(i.anisotropy=4,this._scene.skybox=i,this._lighting){const t=e.EnvLighting.generateLightingSource(s),i=e.EnvLighting.generateAtlas(t);this._scene.envAtlas=i}const n=this._scene.layers.getLayerById(e.LAYERID_SKYBOX);n&&(n.enabled="none"!==this._type),this._scene.sky.type=this._type,this._scene.sky.node.setLocalScale(this._scale),this._scene.sky.center=this._center,this._scene.skyboxIntensity=this._intensity}async _loadSkybox(){var t;const e=await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),s=null==e?void 0:e.app;if(!s)return;const i=u.get(this._asset);i&&(this._scene=s.scene,i.loaded?this._generateSkybox(i):(i.once("load",(()=>{this._generateSkybox(i)})),s.assets.load(i)))}_unloadSkybox(){var t,e;this._scene&&(null===(t=this._scene.skybox)||void 0===t||t.destroy(),this._scene.skybox=null,null===(e=this._scene.envAtlas)||void 0===e||e.destroy(),this._scene.envAtlas=null,this._scene=null)}set asset(t){this._asset=t,this.isConnected&&this._loadSkybox()}get asset(){return this._asset}set center(t){this._center=t,this._scene&&(this._scene.sky.center=this._center)}get center(){return this._center}set intensity(t){this._intensity=t,this._scene&&(this._scene.skyboxIntensity=this._intensity)}get intensity(){return this._intensity}set level(t){this._level=t,this._scene&&(this._scene.skyboxMip=this._level)}get level(){return this._level}set lighting(t){this._lighting=t}get lighting(){return this._lighting}set rotation(t){this._rotation=t,this._scene&&(this._scene.skyboxRotation=(new e.Quat).setFromEulerAngles(t))}get rotation(){return this._rotation}set scale(t){this._scale=t,this._scene&&this._scene.sky.node.setLocalScale(this._scale)}get scale(){return this._scale}set type(t){if(this._type=t,this._scene){this._scene.sky.type=this._type;const t=this._scene.layers.getLayerById(e.LAYERID_SKYBOX);t&&(t.enabled="none"!==this._type)}}get type(){return this._type}static get observedAttributes(){return["asset","center","intensity","level","lighting","rotation","scale","type"]}attributeChangedCallback(t,e,s){switch(t){case"asset":this.asset=s;break;case"center":this.center=h(s);break;case"intensity":this.intensity=parseFloat(s);break;case"level":this.level=parseInt(s,10);break;case"lighting":this.lighting=this.hasAttribute(t);break;case"rotation":this.rotation=h(s);break;case"scale":this.scale=h(s);break;case"type":this.type=s}}}customElements.define("pc-sky",R),t.AppElement=n,t.AssetElement=u,t.AsyncElement=s,t.CameraComponentElement=_,t.CollisionComponentElement=g,t.ComponentElement=d,t.ElementComponentElement=b,t.EntityElement=l,t.GSplatComponentElement=y,t.LightComponentElement=w,t.ListenerComponentElement=m,t.MaterialElement=C,t.ModelElement=D,t.ModuleElement=i,t.RenderComponentElement=k,t.RigidBodyComponentElement=E,t.SceneElement=L,t.ScreenComponentElement=A,t.ScriptComponentElement=S,t.ScriptElement=F,t.SkyElement=R,t.SoundComponentElement=x,t.SoundSlotElement=M}));
2
2
  //# sourceMappingURL=pwc.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pwc.min.js","sources":["../src/async-element.ts","../src/module.ts","../src/app.ts","../src/colors.ts","../src/utils.ts","../src/entity.ts","../src/asset.ts","../src/components/component.ts","../src/components/listener-component.ts","../src/components/camera-component.ts","../src/components/collision-component.ts","../src/components/element-component.ts","../src/components/gsplat-component.ts","../src/components/light-component.ts","../src/material.ts","../src/components/render-component.ts","../src/components/rigidbody-component.ts","../src/components/screen-component.ts","../src/components/script-component.ts","../src/components/script.ts","../src/components/sound-component.ts","../src/components/sound-slot.ts","../src/model.ts","../src/scene.ts","../src/sky.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["AsyncElement","HTMLElement","constructor","super","this","_readyPromise","Promise","resolve","_readyResolve","closestApp","_a","parentElement","closest","closestEntity","_onReady","dispatchEvent","CustomEvent","ready","then","ModuleElement","loadPromise","loadModule","name","getAttribute","glue","wasm","fallback","basisInitialize","glueUrl","wasmUrl","fallbackUrl","WasmModule","setConfig","getInstance","getLoadPromise","customElements","define","AppElement","_canvas","_alpha","_antialias","_depth","_stencil","_highResolution","_hierarchyReady","_picker","_hasPointerListeners","pointerenter","pointerleave","pointerdown","pointerup","pointermove","_hoveredEntity","_pointerHandlers","app","_onWindowResize","bind","connectedCallback","moduleElements","querySelectorAll","all","Array","from","map","module","document","createElement","appendChild","Application","graphicsDeviceOptions","alpha","antialias","depth","stencil","keyboard","Keyboard","window","mouse","Mouse","graphicsDevice","maxPixelRatio","devicePixelRatio","setCanvasFillMode","FILLMODE_FILL_WINDOW","setCanvasResolution","RESOLUTION_AUTO","_pickerCreate","assetElements","forEach","assetElement","createAsset","asset","assets","add","materialElements","materialElement","createMaterial","entityElements","entityElement","createEntity","buildHierarchy","preload","start","addEventListener","disconnectedCallback","_pickerDestroy","destroy","removeEventListener","contains","removeChild","resizeCanvas","width","height","Picker","_onPointerMove","_onPointerDown","_onPointerUp","type","_onPointerListenerAdded","_onPointerListenerRemoved","Object","entries","handler","event","camera","root","findComponent","canvasRect","getBoundingClientRect","x","clientX","left","y","clientY","top","prepare","scene","selection","getSelection","newHoverEntity","length","node","querySelector","parent","hasListeners","PointerEvent","some","entity","value","hierarchyReady","highResolution","observedAttributes","attributeChangedCallback","_oldValue","newValue","CSS_COLORS","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","parseColor","hexColor","toLowerCase","Color","fromString","startsWith","components","split","Number","parseVec2","Vec2","parseVec3","Vec3","parseVec4","Vec4","EntityElement","_enabled","_name","_position","_rotation","_scale","_tags","_listeners","Entity","enabled","position","setLocalPosition","rotation","setLocalEulerAngles","scale","setLocalScale","tags","tag","trim","eventName","eventType","substring","eventHandler","Function","call","e","console","error","addChild","childEntities","child","clear","handlerStr","listener","options","push","bubbles","filter","l","Boolean","extToType","Map","AssetElement","_preload","destroyAsset","id","src","ext","pop","get","Asset","url","warn","unload","_newValue","hasAttribute","ComponentElement","componentName","_component","_componentName","getInitialComponentData","addComponent","data","initComponent","component","removeComponent","ListenerComponentElement","tonemaps","TONEMAP_NONE","TONEMAP_LINEAR","TONEMAP_FILMIC","TONEMAP_HEJL","TONEMAP_ACES","TONEMAP_ACES2","TONEMAP_NEUTRAL","CameraComponentElement","_clearColor","_clearColorBuffer","_clearDepthBuffer","_clearStencilBuffer","_cullFaces","_farClip","_flipFaces","_fov","_frustumCulling","_gamma","_nearClip","_orthographic","_orthoHeight","_priority","_rect","_scissorRect","_tonemap","clearColor","clearColorBuffer","clearDepthBuffer","clearStencilBuffer","cullFaces","farClip","flipFaces","fov","frustumCulling","gammaCorrection","GAMMA_SRGB","GAMMA_NONE","nearClip","orthographic","orthoHeight","priority","rect","scissorRect","toneMapping","xrAvailable","xrManager","system","xr","supported","isAvailable","XRTYPE_VR","startXr","space","callback","err","message","endXr","gamma","projection","PROJECTION_ORTHOGRAPHIC","PROJECTION_PERSPECTIVE","tonemap","parseFloat","CollisionComponentElement","_angularOffset","Quat","_axis","_convexHull","_halfExtents","_height","_linearOffset","_radius","_type","axis","angularOffset","convexHull","halfExtents","linearOffset","radius","z","q","setFromEulerAngles","parseQuat","parseInt","ElementComponentElement","_anchor","_asset","_autoWidth","_color","_fontSize","_lineHeight","_pivot","_text","_width","_wrapLines","_material","useFog","anchor","autoWidth","color","fontAsset","fontSize","lineHeight","pivot","text","wrapLines","GSplatComponentElement","shadowTypes","SHADOW_PCF1_16F","SHADOW_PCF1_32F","SHADOW_PCF3_16F","SHADOW_PCF3_32F","SHADOW_PCF5_16F","SHADOW_PCF5_32F","SHADOW_VSM_16F","SHADOW_VSM_32F","SHADOW_PCSS_32F","LightComponentElement","_castShadows","_innerConeAngle","_intensity","_normalOffsetBias","_outerConeAngle","_range","_shadowBias","_shadowDistance","_shadowIntensity","_shadowResolution","_shadowType","_vsmBias","castShadows","innerConeAngle","intensity","normalOffsetBias","outerConeAngle","range","shadowBias","shadowDistance","shadowIntensity","shadowResolution","shadowType","vsmBias","includes","MaterialElement","_diffuse","_diffuseMap","_metalnessMap","_normalMap","_roughnessMap","material","StandardMaterial","glossInvert","useMetalness","diffuse","diffuseMap","metalnessMap","normalMap","roughnessMap","update","setMap","property","loaded","resource","anisotropy","once","RenderComponentElement","_receiveShadows","receiveShadows","RigidBodyComponentElement","_angularDamping","_angularFactor","_friction","_linearDamping","_linearFactor","_mass","_restitution","_rollingFriction","angularDamping","angularFactor","friction","linearDamping","linearFactor","mass","restitution","rollingFriction","ScreenComponentElement","_screenSpace","_resolution","_referenceResolution","_blend","_scaleBlend","referenceResolution","resolution","scaleBlend","scaleMode","SCALEMODE_BLEND","SCALEMODE_NONE","screenSpace","blend","ScriptComponentElement","observer","MutationObserver","handleMutations","observe","childList","handleScriptAttributesChange","handleScriptEnableChange","scriptElement","scriptName","attributes","createScript","applyAttributes","script","attributesObject","JSON","parse","applyValue","target","key","assetId","slice","isArray","item","obj","itemKey","nestedKey","detail","on","create","destroyScript","mutations","mutation","addedNodes","tagName","removedNodes","disconnect","ScriptElement","_attributes","scriptAttributes","SoundComponentElement","_distanceModel","_maxDistance","_pitch","_positional","_refDistance","_rollOffFactor","_volume","distanceModel","maxDistance","pitch","positional","refDistance","rollOffFactor","volume","SoundSlotElement","_autoPlay","_duration","_loop","_overlap","_startTime","soundSlot","soundElement","autoPlay","loop","overlap","startTime","duration","addSlot","play","removeSlot","ModelElement","_entity","_loadModel","_unloadModel","_instantiate","container","instantiateRenderEntity","animations","anim","assignAnimation","parentEntityElement","appElement","load","isConnected","SceneElement","_fog","_fogColor","_fogDensity","_fogStart","_fogEnd","updateSceneSettings","fog","density","end","fogColor","fogDensity","fogStart","fogEnd","SkyElement","_center","_level","_lighting","_scene","_loadSkybox","_unloadSkybox","_generateSkybox","source","skybox","EnvLighting","generateSkyboxCubemap","lighting","generateLightingSource","envAtlas","generateAtlas","layer","layers","getLayerById","LAYERID_SKYBOX","sky","center","skyboxIntensity","_b","level","skyboxMip","skyboxRotation"],"mappings":"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"}
1
+ {"version":3,"file":"pwc.min.js","sources":["../src/async-element.ts","../src/module.ts","../src/app.ts","../src/colors.ts","../src/utils.ts","../src/entity.ts","../src/asset.ts","../src/components/component.ts","../src/components/listener-component.ts","../src/components/camera-component.ts","../src/components/collision-component.ts","../src/components/element-component.ts","../src/components/gsplat-component.ts","../src/components/light-component.ts","../src/material.ts","../src/components/render-component.ts","../src/components/rigidbody-component.ts","../src/components/screen-component.ts","../src/components/script-component.ts","../src/components/script.ts","../src/components/sound-component.ts","../src/components/sound-slot.ts","../src/model.ts","../src/scene.ts","../src/sky.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["AsyncElement","HTMLElement","constructor","super","this","_readyPromise","Promise","resolve","_readyResolve","closestApp","_a","parentElement","closest","closestEntity","_onReady","dispatchEvent","CustomEvent","ready","then","ModuleElement","loadPromise","loadModule","name","getAttribute","glue","wasm","fallback","basisInitialize","glueUrl","wasmUrl","fallbackUrl","WasmModule","setConfig","getInstance","getLoadPromise","customElements","define","AppElement","_canvas","_alpha","_antialias","_depth","_stencil","_highResolution","_hierarchyReady","_picker","_hasPointerListeners","pointerenter","pointerleave","pointerdown","pointerup","pointermove","_hoveredEntity","_pointerHandlers","app","_onWindowResize","bind","connectedCallback","moduleElements","querySelectorAll","all","Array","from","map","module","document","createElement","appendChild","Application","graphicsDeviceOptions","alpha","antialias","depth","stencil","keyboard","Keyboard","window","mouse","Mouse","graphicsDevice","maxPixelRatio","devicePixelRatio","setCanvasFillMode","FILLMODE_FILL_WINDOW","setCanvasResolution","RESOLUTION_AUTO","_pickerCreate","assetElements","forEach","assetElement","createAsset","asset","assets","add","materialElements","materialElement","createMaterial","entityElements","entityElement","createEntity","buildHierarchy","preload","start","addEventListener","disconnectedCallback","_pickerDestroy","destroy","removeEventListener","contains","removeChild","resizeCanvas","width","height","Picker","_onPointerMove","_onPointerDown","_onPointerUp","type","_onPointerListenerAdded","_onPointerListenerRemoved","Object","entries","handler","event","camera","root","findComponent","canvasRect","getBoundingClientRect","x","clientX","left","y","clientY","top","prepare","scene","selection","getSelection","newHoverEntity","length","node","querySelector","parent","hasListeners","PointerEvent","some","entity","value","hierarchyReady","highResolution","observedAttributes","attributeChangedCallback","_oldValue","newValue","CSS_COLORS","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","parseColor","hexColor","toLowerCase","Color","fromString","startsWith","components","split","Number","parseVec2","Vec2","parseVec3","Vec3","parseVec4","Vec4","EntityElement","_enabled","_name","_position","_rotation","_scale","_tags","_listeners","Entity","enabled","position","setLocalPosition","rotation","setLocalEulerAngles","scale","setLocalScale","tags","tag","trim","eventName","eventType","substring","eventHandler","Function","call","e","console","error","undefined","addChild","childEntities","child","clear","handlerStr","listener","options","push","bubbles","filter","l","Boolean","extToType","Map","AssetElement","_preload","destroyAsset","id","src","ext","pop","get","Asset","url","warn","unload","_newValue","hasAttribute","ComponentElement","componentName","_component","_componentName","getInitialComponentData","addComponent","data","initComponent","component","removeComponent","ListenerComponentElement","tonemaps","TONEMAP_NONE","TONEMAP_LINEAR","TONEMAP_FILMIC","TONEMAP_HEJL","TONEMAP_ACES","TONEMAP_ACES2","TONEMAP_NEUTRAL","CameraComponentElement","_clearColor","_clearColorBuffer","_clearDepthBuffer","_clearStencilBuffer","_cullFaces","_farClip","_flipFaces","_fov","_frustumCulling","_gamma","_horizontalFov","_nearClip","_orthographic","_orthoHeight","_priority","_rect","_scissorRect","_tonemap","clearColor","clearColorBuffer","clearDepthBuffer","clearStencilBuffer","cullFaces","farClip","flipFaces","fov","frustumCulling","gammaCorrection","GAMMA_SRGB","GAMMA_NONE","horizontalFov","nearClip","orthographic","orthoHeight","priority","rect","scissorRect","toneMapping","xrAvailable","xrManager","system","xr","supported","isAvailable","XRTYPE_VR","startXr","space","callback","err","message","endXr","gamma","projection","PROJECTION_ORTHOGRAPHIC","PROJECTION_PERSPECTIVE","tonemap","parseFloat","CollisionComponentElement","_angularOffset","Quat","_axis","_convexHull","_halfExtents","_height","_linearOffset","_radius","_type","axis","angularOffset","convexHull","halfExtents","linearOffset","radius","z","q","setFromEulerAngles","parseQuat","parseInt","ElementComponentElement","_anchor","_asset","_autoWidth","_color","_fontSize","_lineHeight","_pivot","_text","_width","_wrapLines","_material","useFog","anchor","autoWidth","color","fontAsset","fontSize","lineHeight","pivot","text","wrapLines","GSplatComponentElement","shadowTypes","SHADOW_PCF1_16F","SHADOW_PCF1_32F","SHADOW_PCF3_16F","SHADOW_PCF3_32F","SHADOW_PCF5_16F","SHADOW_PCF5_32F","SHADOW_VSM_16F","SHADOW_VSM_32F","SHADOW_PCSS_32F","LightComponentElement","_castShadows","_innerConeAngle","_intensity","_normalOffsetBias","_outerConeAngle","_range","_shadowBias","_shadowDistance","_shadowIntensity","_shadowResolution","_shadowType","_vsmBias","castShadows","innerConeAngle","intensity","normalOffsetBias","outerConeAngle","range","shadowBias","shadowDistance","shadowIntensity","shadowResolution","shadowType","vsmBias","includes","MaterialElement","_diffuse","_diffuseMap","_metalnessMap","_normalMap","_roughnessMap","material","StandardMaterial","glossInvert","useMetalness","diffuse","diffuseMap","metalnessMap","normalMap","roughnessMap","update","setMap","property","loaded","resource","anisotropy","once","RenderComponentElement","_receiveShadows","receiveShadows","RigidBodyComponentElement","_angularDamping","_angularFactor","_friction","_linearDamping","_linearFactor","_mass","_restitution","_rollingFriction","angularDamping","angularFactor","friction","linearDamping","linearFactor","mass","restitution","rollingFriction","ScreenComponentElement","_screenSpace","_resolution","_referenceResolution","_blend","_scaleBlend","referenceResolution","resolution","scaleBlend","scaleMode","SCALEMODE_BLEND","SCALEMODE_NONE","screenSpace","blend","ScriptComponentElement","observer","MutationObserver","handleMutations","observe","childList","handleScriptAttributesChange","handleScriptEnableChange","scriptElement","scriptName","attributes","createScript","applyAttributes","script","attributesObject","JSON","parse","applyValue","target","key","assetId","slice","isArray","item","obj","itemKey","nestedKey","detail","on","create","destroyScript","mutations","mutation","addedNodes","tagName","removedNodes","disconnect","ScriptElement","_attributes","scriptAttributes","SoundComponentElement","_distanceModel","_maxDistance","_pitch","_positional","_refDistance","_rollOffFactor","_volume","distanceModel","maxDistance","pitch","positional","refDistance","rollOffFactor","volume","SoundSlotElement","_autoPlay","_duration","_loop","_overlap","_startTime","soundSlot","soundElement","autoPlay","loop","overlap","startTime","duration","addSlot","play","removeSlot","ModelElement","_entity","_loadModel","_unloadModel","_instantiate","container","instantiateRenderEntity","animations","anim","assignAnimation","parentEntityElement","appElement","load","isConnected","SceneElement","_fog","_fogColor","_fogDensity","_fogStart","_fogEnd","updateSceneSettings","fog","density","end","fogColor","fogDensity","fogStart","fogEnd","SkyElement","_center","_level","_lighting","_scene","_loadSkybox","_unloadSkybox","_generateSkybox","source","skybox","EnvLighting","generateSkyboxCubemap","lighting","generateLightingSource","envAtlas","generateAtlas","layer","layers","getLayerById","LAYERID_SKYBOX","sky","center","skyboxIntensity","_b","level","skyboxMip","skyboxRotation"],"mappings":"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"}