bimplus-webcomponents 0.0.167 → 0.0.168

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.
@@ -5600,7 +5600,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
5600
5600
  boundingBox size: `.concat(m?new Float32Array(Object.values(m)).byteLength:void 0),Et+=`
5601
5601
  visualObjects data: `.concat(v?.length," (").concat(v?.length/1e6," MB)"),console.debug(Et)}},{key:"readData",value:(t=ee(ge().mark(function i(s){var c,u;return ge().wrap(function(m){for(;;)switch(m.prev=m.next){case 0:return window&&window.BIMPLUS_SDK_PENDING_REQUESTS!==void 0&&window.BIMPLUS_SDK_PENDING_REQUESTS++,c=this.getNodeStoreId(s),m.next=4,this._db.nodes.get(c);case 4:return u=m.sent,window&&window.BIMPLUS_SDK_PENDING_REQUESTS!==void 0&&window.BIMPLUS_SDK_PENDING_REQUESTS--,u||console.error("readData can't read data from db for node ".concat(s.nodeId,", discipline ").concat(s.id," and revision ").concat(s.revision,". StoreId : ").concat(c)),m.abrupt("return",u?u.data:null);case 8:case"end":return m.stop()}},i,this)})),function(i){return t.apply(this,arguments)})},{key:"writeData",value:(e=ee(ge().mark(function i(s,c,u,m,v,M){var w,P;return ge().wrap(function(q){for(;;)switch(q.prev=q.next){case 0:return window&&window.BIMPLUS_SDK_PENDING_REQUESTS!==void 0&&window.BIMPLUS_SDK_PENDING_REQUESTS++,w=this.getNodeStoreId(s),P=_T.objectsAsString(M),q.next=5,this._db.nodes.put({id:w,model:s.divisionId,data:{opIndices:c.indices,opPositions:c.positions,opNormals:c.normals,trIndices:u.indices,trPositions:u.positions,trNormals:u.normals,edgesIndices:m.indices,edgesPositions:m.positions,edgesNormals:m.normals,minX:v?.minX,minY:v?.minY,minZ:v?.minZ,maxX:v?.maxX,maxY:v?.maxY,maxZ:v?.maxZ,visualObjectsData:P},timestamp:$.now()});case 5:q.sent||console.error("Failed to insert Node Geometry to store: node ".concat(s.nodeId,", discipline ").concat(s.id," and revision ").concat(s.revision,". StoreId : ").concat(w)),window&&window.BIMPLUS_SDK_PENDING_REQUESTS!==void 0&&window.BIMPLUS_SDK_PENDING_REQUESTS--;case 8:case"end":return q.stop()}},i,this)})),function(i,s,c,u,m,v){return e.apply(this,arguments)})}]);var e,t,n}();let ise=nse;var u0=function(e){wL.call(this,e),this.id=null,this.name=null,this.userOffsets=null,this._models={},this._disciplineNodeStore=null,u0.prototype.initializeDisciplineNodeStore=ee(ge().mark(function t(){return ge().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return this._disciplineNodeStore=new ise,n.next=3,this._disciplineNodeStore.initDB();case 3:case"end":return n.stop()}},t,this)})),u0.prototype.closeDisciplineNodeStore=ee(ge().mark(function t(){return ge().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.abrupt("return",this._disciplineNodeStore.close());case 1:case"end":return n.stop()}},t,this)})),u0.prototype.setProjectUserOffsets=function(t){console.debug("ProjectContent - user XYZ-offsets (".concat(t.x,", ").concat(t.y,", ").concat(t.z,")")),t&&(this.userOffsets=t,wq.setUserOffsets(t))},u0.prototype.addModel=function(t){this._models[t.id]=t},u0.prototype.getModel=function(t){return this._models[t]},u0.prototype.getModels=function(){var t=[];return this.forEachModel(function(n){t.push(n)}),t},u0.prototype.removeModel=function(t){delete this._models[t]},u0.prototype.findModel=function(t){for(var n in this._models)if(Object.hasOwn(this._models,n)){var i=this._models[n];if(t(i))return i}return null},u0.prototype.forEachModel=function(t){for(var n in this._models)Object.hasOwn(this._models,n)&&t(this._models[n])},u0.prototype.filterModels=function(t){var n=[];for(var i in this._models)if(Object.hasOwn(this._models,i)){var s=this._models[i];t(s)===!0&&n.push(s)}return n},u0.prototype.getTopologyLeafNode=function(t){var n;return this.forEachModel(function(i){var s=i.getTopologyLeafNode(t);s&&!n&&(n={model:i,node:s})}),n},u0.prototype.forEachTopologyLeafNode=function(t){this.forEachModel(function(n){n.forEachTopologyLeafNode(function(i){t(n,i)})})},u0.prototype.parseProjectDetailsResponse=function(t){var n=this;this.id=t.id,this.name=t.name;var i=this._models;t.disciplines&&t.disciplines.forEach(function(s){var c=i[s.divisionId];c||(c=new Y7(n,s.divisionId,s.divisionTopologyId,s.divisionName),i[s.divisionId]=c);var u=c.getLayer(s.id);u?u._revisions=s.revisions:((u=new X7(s.id,s.name))._revisions=s.revisions,c.addLayer(u))})},u0.prototype.parseProjectRevisionsResponse=function(t){t&&t.length!=0&&this.forEachModel(function(n){var i=t.filter(function(c){return c.divisionId===n.id}).map(function(c){return c.revisionNr}).sort();n.setRevisions(i);var s=t.filter(function(c){return c.divisionId===n.id&&c.release}).map(function(c){return c.revisionNr}).sort();n.setReleasedRevisions(s)})},u0.prototype.disposeClashObjectsByFilter=function(t){var n=this.getClashes();n.getClashObjects().filter(function(i){return i.clashFilter===t}).forEach(function(i){i.unregisterClash(n)})},u0.prototype.disposeObjects=function(t){var n=this.objectsContainer.getObjectsArray().filter(function(i){return i.discipline===t});this.removeObjects(n,!1)},u0.prototype.disposeLayerGeometry=function(t){this.forEachViewport(function(n){return n.disableDraw(!0)}),this.forEachModel(function(n){var i=n.getLayer(t);i&&i.geometryLoaded!==!1&&n.forEachTopologyLeafNode(function(s){s.isLayerGeometryLoaded(i)&&s.disposeLayerGeometry(i)})}),this.forEachViewport(function(n){return n.disableDraw(!1)})},u0.prototype.disposeClashObjects=function(){this.getClashes().reset()},u0.prototype.disposeRevisionCompareObjects=function(){this.objectsContainer.clearRevisionCompareObjects(),this.disposeObjects(o1.RevisionCompareLayer),this.disposeLayerGeometry(o1.RevisionCompareLayer)},u0.prototype.parseClashFilterResponse=function(t,n){var i=this,s=new rO;this.disposeClashObjectsByFilter(t),["open","unresolved","resolved"].forEach(function(c){for(var u=n[c],m=0;;){var v=u[m];if(!v)return;var M=s.createClashObject({id:v.id,volume:v.volume,clashFilter:t,status:c});M.clashingObjects=[v.element1?v.element1.id:null,v.element2?v.element2.id:null],M.clashingObjects=M.clashingObjects.filter(function(w){return w}),M.createClashElements(v.clashElements,i),M.setVisible(!1),M.registerClash(i.getClashes()),m++}})},u0.prototype.parseRevisionCompareResultResponse=function(t){var n=this;this.disposeRevisionCompareObjects();var i=new rO;["inserted","deleted","changedGeometry","changed"].forEach(function(s){var c=t[s].resultObjects;c&&c.forEach(function(u){var m=[];u.second&&u.first?m=[u.first.id,u.second.id]:u.first&&(m=[u.first.id]);var v=u.lastTopologyId;if(n.getTopologyLeafNode(v)){var M=i.createRevisionCompareObject({id:u.comparisonObjectId,layerId:u.disciplineId,modelId:t.divisionId,topologyNodeId:u.lastTopologyId,comparedObjects:m,comparedRevisions:[t.firstRevision,t.secondRevision],type:s});n.objectsContainer.addRevisionCompareObject(M);var w=n.objectsContainer.getObject(M.id);w||(w=i.createVisualObject({id:M.id,discipline:o1.RevisionCompareLayer,node:v,model:t.divisionId}),n.objectsContainer.addObject(w)),w&&(w.hasRelation(JW,w.id)===!1&&w.addRelation(JW,w.id),w.compareTo=M.comparedRevisions[1])}else console.log("Revision Compare object topology node "+v+" not found!")})})},u0.prototype.parseProjectTopologyResponse=function(t,n){var i=this;if(t.elementTypeId!==_L.TopologyDivisionType)t.children&&t.children.length>0&&t.children.forEach(function(c){i.parseProjectTopologyResponse(c,n)}),t.children&&t.children.length;else{var s=this.findModel(function(c){return c.divisionTopologyId===t.id});s?s.parseProjectTopologySubTree(t,n):console.warn("Can't find model for divisionTopologyId "+t.divisionTopologyId)}},u0.prototype.clearProjectTopology=function(t){var n=this.findModel(function(i){return i.id===t});n&&n.clear()},u0.prototype.parseObjectTopologyResponse=function(t,n,i){var s=this,c=new rO,u=t.id,m=function(v,M){var w=null;if(_L.isTopologyType(v.elementTypeId))u=v.id;else{if(v.layerid===o1.ClashLayer||i&&i(v)===!1)return;w=c.createVisualObject({id:v.id,node:u,type:v.type,name:v.name,revision:n,discipline:v.layerid,groupBoundary:!v.isChild}),v.isChild===void 0&&console.error("Missing isChild property for object : "+v.id),v.layerid||console.error("Missing LayerId for object : "+v.id),M&&M.addChild(w),s.objectsContainer.addObject(w)}v.children&&v.children.length>0&&v.children.forEach(function(P){m(P,w)})};m(t,null)},u0.prototype.unloadNode=function(t,n,i){var s=this.getTopologyLeafNode(t);if(!s)return!1;var c=s.model.getLayer(n);s.node.setLayerGeometryLoaded(c,!1),this.geometryNodes.disposeNode(t,n,i);var u=this.objectsContainer.getObjectsArray().filter(function(m){return m.node===t&&m.discipline===n});return this.objectsContainer.removeObjects(u,!0),!0},u0.prototype.unloadModel=function(t,n,i){var s=this,c=[];if(t.forEachTopologyLeafNode(function(m){c=c.concat(s.objectsContainer.getObjectsArray().filter(function(v){return v.node===m.id}))}),t.forEachTopologyLeafNode(function(m){m.objectsTreeLoaded=!1,t.forEachLayer(function(v){v.geometryLoaded=!1,m.setLayerGeometryLoaded(v,!1),s.geometryNodes.disposeNode(m.id,v.id,n)})}),this.objectsContainer.removeObjects(c,!0),!i){t.clear(!1);var u=this.getDivisions();this.forEachViewport(function(m){u.resetDivisionBoundingBox(m,t.divisionTopologyId)})}t.objectsLoaded=!1},u0.prototype.getDisciplineNode=function(t,n){var i=this.geometryNodes.nodelist[t.id];return i&&n&&n.id?i[n.id]:null},u0.prototype.getDisciplineNodeStore=function(){return this._disciplineNodeStore},u0.prototype.setDisciplineNodeStore=function(t){this._disciplineNodeStore=t}};u0.prototype=new wL,u0.prototype.constructor=u0;let Z7=u0;var aO=function(e){wL.call(this,e),this.id=null,aO.prototype.parseObjectTopologyResponse=function(t,n,i){var s=this;this.id=t.id;var c=new rO,u=function(m,v){var M;if(m.layerid||(i!=null&&(M=i.getClashes())!==null&&M!==void 0&&M.getClashElement(m.id)?m.layerid=o1.ClashLayer:console.error("Missing LayerId for object : "+m.id)),m.layerid===o1.ClashLayer&&i){var w=i.getClashes().getClashElement(m.id).getClashObject().clone();w.setHovered(!1),w.registerClash(s.getClashes()),w.setVisible(!0),w.clashElements.forEach(function(q){q.setVisible(!0)}),s.getClashes().setCurrentClashFilter(w.clashFilter)}var P=c.createVisualObject({id:m.id,type:m.type,name:m.name,revision:n,discipline:m.layerid});v&&v.addChild(P),s.getObjectsContainer().addObject(P),m.children&&m.children.length>0&&m.children.forEach(function(q){u(q,P)})};u(t,null)},aO.prototype.getFakeDivisionId=function(){return"c465cee2-8e87-4234-b01f-16ed2b59f5e7"},aO.prototype.getFakeDivisionTopologyId=function(){return"6297cf40-5d28-41ed-acb5-555411d22821"},aO.prototype.getFakeLegacyDiscipline=function(t,n){return{divisionId:this.getFakeDivisionId(),divisionName:"",divisionTopologyId:this.getFakeDivisionTopologyId(),hide:!1,id:t,name:this.name,notModified:!1,opacity:this.opacity,opaque:this.opacity===1,revision:n,revisions:[n],visible:!0,isCollisionLayer:this.id===o1.ClashLayer||void 0,isRevisionComparisonLayer:this.id===o1.RevisionCompareLayer||void 0}}};aO.prototype=new wL,aO.prototype.constructor=aO;let eU=aO,K7=function(){this.positions=null,this.normals=null,this.objectIndices=null,this.indices=null,this.bufferLength=0,this.bCnt=0,this.iCnt=0,this.getBufferCount=function(){return this.bCnt},this.getIndexBufferCount=function(){return this.iCnt},this.createBuffer=function(e,t){this.bufferLength=e,this.positions=new Float32Array(3*e),this.normals=new Float32Array(e),this.objectIndices=new Float32Array(2*e),t&&(this.indices=new Uint32Array(3*t),this.iCnt=t),this.bCnt=e},this.createLineBuffer=function(e,t){this.bufferLength=e,this.positions=new Float32Array(3*e),this.normals=new Float32Array(e),this.objectIndices=new Float32Array(2*e),t&&(this.indices=new Uint32Array(2*t))},this.clearBuffer=function(){this.positions=null,this.normals=null,this.objectIndices=null,this.indices=null,this.bufferLength=0,this.bCnt=0,this.iCnt=0}};var fD=function(e,t){this.isReinforcement=!1,this.trNumVertices=0,this.trNumTriangles=0,this.opNumVertices=0,this.opNumTriangles=0,this.edgesNumVertices=0,this.edgesNumLines=0,this.opBuffer=new K7,this.trBuffer=new K7,this.edgesBuffer=new K7,this.boundingBox=new iO,this.nodeId=e,this.divisionTopologyId=t,this.parsedVisualObjects={},fD.prototype.createBuffers=function(){this.opNumVertices>0&&this.opBuffer.createBuffer(this.opNumVertices,this.opNumTriangles),this.trNumVertices>0&&this.trBuffer.createBuffer(this.trNumVertices,this.trNumTriangles),this.edgesNumVertices>0&&(this.edgesBuffer.createLineBuffer(this.edgesNumVertices,this.edgesNumLines),this.edgesBuffer.bCnt=this.edgesNumVertices,this.edgesBuffer.iCnt=this.edgesNumLines)},fD.prototype.createDisciplineNode=function(){var n=ee(ge().mark(function i(s,c,u){var m,v,M,w,P;return ge().wrap(function(q){for(;;)switch(q.prev=q.next){case 0:if(v={id:this.nodeId,revision:u,divisionTopologyId:this.divisionTopologyId,visible:!0},M=c.asLegacyDiscipline(),s.getGeometryNodes().initNode(s,v,M),(w=s.getDisciplineNode(v,c)).bufferLength=12*(this.opBuffer.bufferLength+this.trBuffer.bufferLength),w.revision=u,!(P=s.getDisciplineNodeStore())){q.next=16;break}return q.prev=8,q.next=11,P.writeData(w,this.opBuffer,this.trBuffer,this.edgesBuffer,this.boundingBox,this.parsedVisualObjects);case 11:q.next=16;break;case 13:q.prev=13,q.t0=q.catch(8),console.error("Failed to write geometry to discipline node store due to: "+q.t0);case 16:return((m=s.getTopologyLeafNode(this.nodeId))===null||m===void 0?void 0:m.node).isVisible()===!0&&c.isVisible()===!0||!P?s.createDisciplineNodeMeshes(w,this.opBuffer,this.trBuffer,this.edgesBuffer):w.setGeometryLoaded(!1),w.boundingBox=new si(new Ee(this.boundingBox.minX,this.boundingBox.minY,this.boundingBox.minZ),new Ee(this.boundingBox.maxX,this.boundingBox.maxY,this.boundingBox.maxZ)),q.abrupt("return",w);case 20:case"end":return q.stop()}},i,this,[[8,13]])}));return function(i,s,c){return n.apply(this,arguments)}}(),fD.prototype.dumpInfo=function(){console.log("Building disciplineNode nodeId=".concat(this.nodeId,":")),console.log("Object Count: ".concat(this.parsedVisualObjects.length)),console.log("trNumVertices: ".concat(this.trNumVertices)),console.log("trNumTriangles: ".concat(this.trNumTriangles)),console.log("opNumVertices: ".concat(this.opNumVertices)),console.log("opNumTriangles: ".concat(this.opNumTriangles)),console.log("Boundingbox min (".concat(this.boundingBox.minX," | ").concat(this.boundingBox.minY," | ").concat(this.boundingBox.minZ,")")),console.log("Boundingbox max (".concat(this.boundingBox.maxX," | ").concat(this.boundingBox.maxY," | ").concat(this.boundingBox.maxZ,")"))},fD.prototype.dispose=function(){this.opBuffer.clearBuffer(),this.opBuffer=null,this.trBuffer.clearBuffer(),this.trBuffer=null,this.edgesBuffer.clearBuffer(),this.edgesBuffer=null}};let tU=fD;var J7,sse=(J7=typeof document<"u"&&document.currentScript?document.currentScript.src:void 0,function(e={}){var t,n,i=e;i.ready=new Promise((Cn,$n)=>{t=Cn,n=$n});var s,c=Object.assign({},i),u="";u=self.location.href,J7&&(u=J7),u=u.indexOf("blob:")!==0?u.substr(0,u.replace(/[?#].*/,"").lastIndexOf("/")+1):"",s=Cn=>{var $n=new XMLHttpRequest;return $n.open("GET",Cn,!1),$n.responseType="arraybuffer",$n.send(null),new Uint8Array($n.response)},i.print||console.log.bind(console);var m,v,M=i.printErr||console.error.bind(console);Object.assign(i,c),c=null,i.arguments&&i.arguments,i.thisProgram&&i.thisProgram,i.quit&&i.quit,i.wasmBinary&&(m=i.wasmBinary),typeof WebAssembly!="object"&&Ne("no native wasm support detected");var w,P,q=!1;function Z(){var Cn=v.buffer;i.HEAP8=w=new Int8Array(Cn),i.HEAP16=new Int16Array(Cn),i.HEAPU8=P=new Uint8Array(Cn),i.HEAPU16=new Uint16Array(Cn),i.HEAP32=new Int32Array(Cn),i.HEAPU32=new Uint32Array(Cn),i.HEAPF32=new Float32Array(Cn),i.HEAPF64=new Float64Array(Cn)}var K=[],he=[],le=[],pe=0,Ie=null,Ce=null;function Ne(Cn){i.onAbort&&i.onAbort(Cn),M(Cn="Aborted("+Cn+")"),q=!0,Cn+=". Build with -sASSERTIONS for more info.";var $n=new WebAssembly.RuntimeError(Cn);throw n($n),$n}var Ge,Fe,Pe="data:application/octet-stream;base64,",Ve=Cn=>Cn.startsWith(Pe);function ot(Cn){if(Cn==Ge&&m)return new Uint8Array(m);var $n=function(en){if(Ve(en))return function(gt){for(var Rt=atob(gt),Xt=new Uint8Array(Rt.length),qt=0;qt<Rt.length;++qt)Xt[qt]=Rt.charCodeAt(qt);return Xt}(en.slice(37))}(Cn);if($n)return $n;if(s)return s(Cn);throw"both async and sync fetching of the wasm failed"}function Ct(Cn,$n,en){return function(gt){return Promise.resolve().then(()=>ot(gt))}(Cn).then(gt=>WebAssembly.instantiate(gt,$n)).then(gt=>gt).then(en,gt=>{M(`failed to asynchronously prepare wasm: ${gt}`),Ne(gt)})}Ve(Ge="data:application/octet-stream;base64,AGFzbQEAAAABJgdgAX8Bf2ABfAF8YAF/AGAAAGAAAX9gBn9/f39/fwBgBH9/f38AAgcBAWEBYQAAAw0MAAEDAQEAAgQFAgAGBAUBcAEBAQUHAQGACICAAgYIAX8BQYCNBAsHKQoBYgIAAWMAAwFkAAwBZQAJAWYACwFnAAoBaAAIAWkABwFqAAYBawEACphPDE8BAn9BgAkoAgAiASAAQQdqQXhxIgJqIQACQCACQQAgACABTRsNACAAPwBBEHRLBEAgABAARQ0BC0GACSAANgIAIAEPC0GECUEwNgIAQX8LjQEAIAAgACAAIAAgAEQJ9/0N4T0CP6JEiLIBdeDvST+gokQ7j2i1KIKkv6CiRFVEiA5Vwck/oKJEfW/rAxLW1L+gokRVVVVVVVXFP6AgAKIgACAAIAAgAESCki6xxbizP6JEWQGNG2wG5r+gokTIilmc5SoAQKCiREstihwnOgPAoKJEAAAAAAAA8D+gowsCAAusAQMBfAF+AX8gAL0iAkI0iKdB/w9xIgNBsghNBHwgA0H9B00EQCAARAAAAAAAAAAAog8LAnwgACAAmiACQgBZGyIARAAAAAAAADBDoEQAAAAAAAAww6AgAKEiAUQAAAAAAADgP2QEQCAAIAGgRAAAAAAAAPC/oAwBCyAAIAGgIgAgAUQAAAAAAADgv2VFDQAaIABEAAAAAAAA8D+gCyIAIACaIAJCAFkbBSAACwv7AwMDfAN/AX4gAL0iB0IgiKdB/////wdxIgRBgIDAoARPBEAgAEQYLURU+yH5PyAApiAHQv///////////wCDQoCAgICAgID4/wBWGw8LAkACfyAEQf//7/4DTQRAQX8gBEGAgIDyA08NARoMAgsgAJkhACAEQf//y/8DTQRAIARB//+X/wNNBEAgACAAoEQAAAAAAADwv6AgAEQAAAAAAAAAQKCjIQBBAAwCCyAARAAAAAAAAPC/oCAARAAAAAAAAPA/oKMhAEEBDAELIARB//+NgARNBEAgAEQAAAAAAAD4v6AgAEQAAAAAAAD4P6JEAAAAAAAA8D+goyEAQQIMAQtEAAAAAAAA8L8gAKMhAEEDCyEGIAAgAKIiAiACoiIBIAEgASABIAFEL2xqLES0or+iRJr93lIt3q2/oKJEbZp0r/Kws7+gokRxFiP+xnG8v6CiRMTrmJmZmcm/oKIhAyACIAEgASABIAEgAUQR2iLjOq2QP6JE6w12JEt7qT+gokRRPdCgZg2xP6CiRG4gTMXNRbc/oKJE/4MAkiRJwj+gokQNVVVVVVXVP6CiIQEgBEH//+/+A00EQCAAIAAgAyABoKKhDwsgBkEDdCIEQYAIaisDACAAIAMgAaCiIARBoAhqKwMAoSAAoaEiAJogACAHQgBTGyEACyAACxAAIwAgAGtBcHEiACQAIAALBgAgACQACwQAIwAL6BAECn8dfAl9AX4gAEEASgRAA0AgAiAIQQJ0aigCACEKIAEgCEEGdGoiBioCILsiEyAGKgIYuyIXIAYqAgS7IhiiIAYqAgi7IhkgBioCFLsiGqKhIhGiIAYqAgC7IhQgBioCKLsiGyAaoiAXIAYqAiS7IhyioSISoiAcIBmiIBggG6KhIhUgBioCELsiFqKgoCIQmUQAAAAAAACwPGNFBEAgGiAUoiAYIBaioUQAAAAAAADwPyAQoyIQoiEiIBwgFqIgGiAToqEgEKIhIyATIBeiIBYgG5qioCAQoiEkIBEgEKIhJSAVIBCiISYgEiAQoiEnIBYgGaIgFCAXoqEgEKIhKCATIBiiIBQgHJqioCAQoiEpIBsgFKIgGSAToqEgEKIhHwtBACELQ///f38hMkP//3//ITMCQCAKQQBMBEBD//9//yEuQ///f/8hL0P//39/ITBD//9/fyExDAELIAYqAji7ISogBioCNLshKyAGKgIwuyEsQ///f/8hLkP//3//IS9D//9/fyEwQ///f38hMQNAICggAyALIAxqIg1BGGxqIgYqAhS7IhGiICQgBioCDLsiIKIgHyAGKgIQuyIhoqCgIRAgIiARoiAjICCiICkgIaKgoCESIAYqAgC7IRUgBioCCLshHSAGKgIEuyEeAnwCQCAlIBGiICcgIKIgJiAhoqCgIhGZRAAAAAAAALA8Y0UNACASmUQAAAAAAACwPGNFDQBEGC1EVPshCcBEAAAAAAAAAIAgEr0iNkIAUxsgEb1CAFMNARpEGC1EVPshCUBEAAAAAAAAAAAgNkIAUxsMAQsCfAJAIBK9Qv///////////wCDQoCAgICAgID4/wBYBEAgEb1C////////////AINCgYCAgICAgPj/AFQNAQsgESASoAwBCyASvSI2QiCIpyIHQYCAwP8DayA2pyIOckUEQCAREAUMAQsgB0EedkECcSIPIBG9IjZCP4inciEGAkAgNkIgiKdB/////wdxIgkgNqdyRQRAAkACQCAGQQJrDgIAAQMLRBgtRFT7IQlADAMLRBgtRFT7IQnADAILRBgtRFT7Ifk/IBGmIAdB/////wdxIgcgDnJFDQEaAkAgB0GAgMD/B0YEQCAJQYCAwP8HRw0BIAZBA3RBwAhqKwMADAMLRBgtRFT7Ifk/IBGmIAlBgIDA/wdHIAdBgICAIGogCU9xRQ0CGgJ8IA8EQEQAAAAAAAAAACAJQYCAgCBqIAdJDQEaCyARIBKjmRAFCyERAkACQAJAIAYOAwQAAQILIBGaDAQLRBgtRFT7IQlAIBFEB1wUMyamobygoQwDCyARRAdcFDMmpqG8oEQYLURU+yEJwKAMAgsgBkEDdEHgCGorAwAhEQsgEQsLIRICfCAQvUL///////////8Ag0KAgICAgICA+P8AWAR8IBBEAAAAAAAA8L+lBUQAAAAAAADwvwtEAAAAAAAA8D+kIhC9IjZCIIinQf////8HcSIGQYCAwP8DTwRARAAAAAAAAAAARBgtRFT7IQlAIDZCAFkbIDanIAZBgIDA/wNrckUNARpEAAAAAAAAAAAgECAQoaMMAQsCfCAGQf////4DTQRARBgtRFT7Ifk/IAZBgYCA4wNJDQEaRAdcFDMmppE8IBAgECAQohACoqEgEKFEGC1EVPsh+T+gDAILIDZCAFMEQEQYLURU+yH5PyAQRAAAAAAAAPA/oEQAAAAAAADgP6IiEJ8iESARIBAQAqJEB1wUMyamkbygoKEiECAQoAwCC0QAAAAAAADwPyAQoUQAAAAAAADgP6IiEJ8iESAQEAKiIBAgEb1CgICAgHCDvyIQIBCioSARIBCgo6AgEKAiECAQoAsLIRAgBCANQQR0aiIGIBwgHaIgGCAVoiAaIB6ioKAgK6C2IjQ4AgQgBiATIB2iIBQgFaIgFiAeoqCgICygtiI1OAIAIAYgGyAdoiAZIBWiIBcgHqKgoCAqoLYiLTgCCCAGIBJEGC1EVPshGUCjRAAAAAAAAOA/oEQAAAAAAP6vQKIQBEQAAAAAAACwQKIgEL1C////////////AINCgICAgICAgPj/AFgEfCAQRBJwDM76IQlApAVEEnAMzvohCUALRI3ttaD3xrA+pUQYLURU+yEJQKNEAAAAAAD+r0CiEASgtjgCDCAzvEH/////B3FBgICA/AdNBH0gMyAtIDOXIC28Qf////8HcUGAgID8B0sbBSAtCyEzIDG8Qf////8HcUGAgID8B00EfSAxIC0gMZYgLbxB/////wdxQYCAgPwHSxsFIC0LITEgNCEtIC68Qf////8HcUGAgID8B00EfSAuIC0gLpcgLbxB/////wdxQYCAgPwHSxsFIC0LIS4gMLxB/////wdxQYCAgPwHTQR9IDAgLSAwliAtvEH/////B3FBgICA/AdLGwUgLQshMCA1IS0gL7xB/////wdxQYCAgPwHTQR9IC8gLSAvlyAtvEH/////B3FBgICA/AdLGwUgLQshLyAyvEH/////B3FBgICA/AdNBH0gMiAtIDKWIC28Qf////8HcUGAgID8B0sbBSAtCyEyIAtBAWoiCyAKRw0ACwsgBSAIQeAAbGoiBiAyOAIAIAYgMDgCBCAGIDE4AgggBiAvOAIMIAYgMDgCECAGIDE4AhQgBiAyOAIYIAYgLjgCHCAGIDE4AlwgBiAuOAJYIAYgLzgCVCAGIDM4AlAgBiAwOAJMIAYgLzgCSCAGIDM4AkQgBkFAayAuOAIAIAYgMjgCPCAGIDM4AjggBiAuOAI0IAYgLzgCMCAGIDM4AiwgBiAwOAIoIAYgMjgCJCAGIDE4AiAgCiAMaiEMIAhBAWoiCCAARw0ACwsL0gsBB38CQCAARQ0AIABBCGsiAiAAQQRrKAIAIgFBeHEiAGohBQJAIAFBAXENACABQQNxRQ0BIAIgAigCACIBayICQZgJKAIASQ0BIAAgAWohAAJAAkBBnAkoAgAgAkcEQCABQf8BTQRAIAFBA3YhBCACKAIMIgEgAigCCCIDRgRAQYgJQYgJKAIAQX4gBHdxNgIADAULIAMgATYCDCABIAM2AggMBAsgAigCGCEGIAIgAigCDCIBRwRAIAIoAggiAyABNgIMIAEgAzYCCAwDCyACQRRqIgQoAgAiA0UEQCACKAIQIgNFDQIgAkEQaiEECwNAIAQhByADIgFBFGoiBCgCACIDDQAgAUEQaiEEIAEoAhAiAw0ACyAHQQA2AgAMAgsgBSgCBCIBQQNxQQNHDQJBkAkgADYCACAFIAFBfnE2AgQgAiAAQQFyNgIEIAUgADYCAA8LQQAhAQsgBkUNAAJAIAIoAhwiA0ECdEG4C2oiBCgCACACRgRAIAQgATYCACABDQFBjAlBjAkoAgBBfiADd3E2AgAMAgsgBkEQQRQgBigCECACRhtqIAE2AgAgAUUNAQsgASAGNgIYIAIoAhAiAwRAIAEgAzYCECADIAE2AhgLIAIoAhQiA0UNACABIAM2AhQgAyABNgIYCyACIAVPDQAgBSgCBCIBQQFxRQ0AAkACQAJAAkAgAUECcUUEQEGgCSgCACAFRgRAQaAJIAI2AgBBlAlBlAkoAgAgAGoiADYCACACIABBAXI2AgQgAkGcCSgCAEcNBkGQCUEANgIAQZwJQQA2AgAPC0GcCSgCACAFRgRAQZwJIAI2AgBBkAlBkAkoAgAgAGoiADYCACACIABBAXI2AgQgACACaiAANgIADwsgAUF4cSAAaiEAIAFB/wFNBEAgAUEDdiEEIAUoAgwiASAFKAIIIgNGBEBBiAlBiAkoAgBBfiAEd3E2AgAMBQsgAyABNgIMIAEgAzYCCAwECyAFKAIYIQYgBSAFKAIMIgFHBEBBmAkoAgAaIAUoAggiAyABNgIMIAEgAzYCCAwDCyAFQRRqIgQoAgAiA0UEQCAFKAIQIgNFDQIgBUEQaiEECwNAIAQhByADIgFBFGoiBCgCACIDDQAgAUEQaiEEIAEoAhAiAw0ACyAHQQA2AgAMAgsgBSABQX5xNgIEIAIgAEEBcjYCBCAAIAJqIAA2AgAMAwtBACEBCyAGRQ0AAkAgBSgCHCIDQQJ0QbgLaiIEKAIAIAVGBEAgBCABNgIAIAENAUGMCUGMCSgCAEF+IAN3cTYCAAwCCyAGQRBBFCAGKAIQIAVGG2ogATYCACABRQ0BCyABIAY2AhggBSgCECIDBEAgASADNgIQIAMgATYCGAsgBSgCFCIDRQ0AIAEgAzYCFCADIAE2AhgLIAIgAEEBcjYCBCAAIAJqIAA2AgAgAkGcCSgCAEcNAEGQCSAANgIADwsgAEH/AU0EQCAAQXhxQbAJaiEBAn9BiAkoAgAiA0EBIABBA3Z0IgBxRQRAQYgJIAAgA3I2AgAgAQwBCyABKAIICyEAIAEgAjYCCCAAIAI2AgwgAiABNgIMIAIgADYCCA8LQR8hAyAAQf///wdNBEAgAEEmIABBCHZnIgFrdkEBcSABQQF0a0E+aiEDCyACIAM2AhwgAkIANwIQIANBAnRBuAtqIQECQAJAAkBBjAkoAgAiBEEBIAN0IgdxRQRAQYwJIAQgB3I2AgAgASACNgIAIAIgATYCGAwBCyAAQRkgA0EBdmtBACADQR9HG3QhAyABKAIAIQEDQCABIgQoAgRBeHEgAEYNAiADQR12IQEgA0EBdCEDIAQgAUEEcWoiB0EQaigCACIBDQALIAcgAjYCECACIAQ2AhgLIAIgAjYCDCACIAI2AggMAQsgBCgCCCIAIAI2AgwgBCACNgIIIAJBADYCGCACIAQ2AgwgAiAANgIIC0GoCUGoCSgCAEEBayIAQX8gABs2AgALC8YnAQx/IwBBEGsiCiQAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAQfQBTQRAQYgJKAIAIgZBECAAQQtqQXhxIABBC0kbIgVBA3YiAHYiAUEDcQRAAkAgAUF/c0EBcSAAaiICQQN0IgFBsAlqIgAgAUG4CWooAgAiASgCCCIERgRAQYgJIAZBfiACd3E2AgAMAQsgBCAANgIMIAAgBDYCCAsgAUEIaiEAIAEgAkEDdCICQQNyNgIEIAEgAmoiASABKAIEQQFyNgIEDA8LIAVBkAkoAgAiB00NASABBEACQEECIAB0IgJBACACa3IgASAAdHFoIgFBA3QiAEGwCWoiAiAAQbgJaigCACIAKAIIIgRGBEBBiAkgBkF+IAF3cSIGNgIADAELIAQgAjYCDCACIAQ2AggLIAAgBUEDcjYCBCAAIAVqIgggAUEDdCIBIAVrIgRBAXI2AgQgACABaiAENgIAIAcEQCAHQXhxQbAJaiEBQZwJKAIAIQICfyAGQQEgB0EDdnQiA3FFBEBBiAkgAyAGcjYCACABDAELIAEoAggLIQMgASACNgIIIAMgAjYCDCACIAE2AgwgAiADNgIICyAAQQhqIQBBnAkgCDYCAEGQCSAENgIADA8LQYwJKAIAIgtFDQEgC2hBAnRBuAtqKAIAIgIoAgRBeHEgBWshAyACIQEDQAJAIAEoAhAiAEUEQCABKAIUIgBFDQELIAAoAgRBeHEgBWsiASADIAEgA0kiARshAyAAIAIgARshAiAAIQEMAQsLIAIoAhghCSACIAIoAgwiBEcEQEGYCSgCABogAigCCCIAIAQ2AgwgBCAANgIIDA4LIAJBFGoiASgCACIARQRAIAIoAhAiAEUNAyACQRBqIQELA0AgASEIIAAiBEEUaiIBKAIAIgANACAEQRBqIQEgBCgCECIADQALIAhBADYCAAwNC0F/IQUgAEG/f0sNACAAQQtqIgBBeHEhBUGMCSgCACIIRQ0AQQAgBWshAwJAAkACQAJ/QQAgBUGAAkkNABpBHyAFQf///wdLDQAaIAVBJiAAQQh2ZyIAa3ZBAXEgAEEBdGtBPmoLIgdBAnRBuAtqKAIAIgFFBEBBACEADAELQQAhACAFQRkgB0EBdmtBACAHQR9HG3QhAgNAAkAgASgCBEF4cSAFayIGIANPDQAgASEEIAYiAw0AQQAhAyABIQAMAwsgACABKAIUIgYgBiABIAJBHXZBBHFqKAIQIgFGGyAAIAYbIQAgAkEBdCECIAENAAsLIAAgBHJFBEBBACEEQQIgB3QiAEEAIABrciAIcSIARQ0DIABoQQJ0QbgLaigCACEACyAARQ0BCwNAIAAoAgRBeHEgBWsiAiADSSEBIAIgAyABGyEDIAAgBCABGyEEIAAoAhAiAQR/IAEFIAAoAhQLIgANAAsLIARFDQAgA0GQCSgCACAFa08NACAEKAIYIQcgBCAEKAIMIgJHBEBBmAkoAgAaIAQoAggiACACNgIMIAIgADYCCAwMCyAEQRRqIgEoAgAiAEUEQCAEKAIQIgBFDQMgBEEQaiEBCwNAIAEhBiAAIgJBFGoiASgCACIADQAgAkEQaiEBIAIoAhAiAA0ACyAGQQA2AgAMCwsgBUGQCSgCACIETQRAQZwJKAIAIQACQCAEIAVrIgFBEE8EQCAAIAVqIgIgAUEBcjYCBCAAIARqIAE2AgAgACAFQQNyNgIEDAELIAAgBEEDcjYCBCAAIARqIgEgASgCBEEBcjYCBEEAIQJBACEBC0GQCSABNgIAQZwJIAI2AgAgAEEIaiEADA0LIAVBlAkoAgAiAkkEQEGUCSACIAVrIgE2AgBBoAlBoAkoAgAiACAFaiICNgIAIAIgAUEBcjYCBCAAIAVBA3I2AgQgAEEIaiEADA0LQQAhACAFQS9qIgMCf0HgDCgCAARAQegMKAIADAELQewMQn83AgBB5AxCgKCAgICABDcCAEHgDCAKQQxqQXBxQdiq1aoFczYCAEH0DEEANgIAQcQMQQA2AgBBgCALIgFqIgZBACABayIIcSIBIAVNDQxBwAwoAgAiBARAQbgMKAIAIgcgAWoiCSAHTQ0NIAQgCUkNDQsCQEHEDC0AAEEEcUUEQAJAAkACQAJAQaAJKAIAIgQEQEHIDCEAA0AgBCAAKAIAIgdPBEAgByAAKAIEaiAESw0DCyAAKAIIIgANAAsLQQAQASICQX9GDQMgASEGQeQMKAIAIgBBAWsiBCACcQRAIAEgAmsgAiAEakEAIABrcWohBgsgBSAGTw0DQcAMKAIAIgAEQEG4DCgCACIEIAZqIgggBE0NBCAAIAhJDQQLIAYQASIAIAJHDQEMBQsgBiACayAIcSIGEAEiAiAAKAIAIAAoAgRqRg0BIAIhAAsgAEF/Rg0BIAVBMGogBk0EQCAAIQIMBAtB6AwoAgAiAiADIAZrakEAIAJrcSICEAFBf0YNASACIAZqIQYgACECDAMLIAJBf0cNAgtBxAxBxAwoAgBBBHI2AgALIAEQASECQQAQASEAIAJBf0YNBSAAQX9GDQUgACACTQ0FIAAgAmsiBiAFQShqTQ0FC0G4DEG4DCgCACAGaiIANgIAQbwMKAIAIABJBEBBvAwgADYCAAsCQEGgCSgCACIDBEBByAwhAANAIAIgACgCACIBIAAoAgQiBGpGDQIgACgCCCIADQALDAQLQZgJKAIAIgBBACAAIAJNG0UEQEGYCSACNgIAC0EAIQBBzAwgBjYCAEHIDCACNgIAQagJQX82AgBBrAlB4AwoAgA2AgBB1AxBADYCAANAIABBA3QiAUG4CWogAUGwCWoiBDYCACABQbwJaiAENgIAIABBAWoiAEEgRw0AC0GUCSAGQShrIgBBeCACa0EHcSIBayIENgIAQaAJIAEgAmoiATYCACABIARBAXI2AgQgACACakEoNgIEQaQJQfAMKAIANgIADAQLIAIgA00NAiABIANLDQIgACgCDEEIcQ0CIAAgBCAGajYCBEGgCSADQXggA2tBB3EiAGoiATYCAEGUCUGUCSgCACAGaiICIABrIgA2AgAgASAAQQFyNgIEIAIgA2pBKDYCBEGkCUHwDCgCADYCAAwDC0EAIQQMCgtBACECDAgLQZgJKAIAIAJLBEBBmAkgAjYCAAsgAiAGaiEBQcgMIQACQAJAAkADQCABIAAoAgBHBEAgACgCCCIADQEMAgsLIAAtAAxBCHFFDQELQcgMIQADQCADIAAoAgAiAU8EQCABIAAoAgRqIgQgA0sNAwsgACgCCCEADAALAAsgACACNgIAIAAgACgCBCAGajYCBCACQXggAmtBB3FqIgcgBUEDcjYCBCABQXggAWtBB3FqIgYgBSAHaiIFayEAIAMgBkYEQEGgCSAFNgIAQZQJQZQJKAIAIABqIgA2AgAgBSAAQQFyNgIEDAgLQZwJKAIAIAZGBEBBnAkgBTYCAEGQCUGQCSgCACAAaiIANgIAIAUgAEEBcjYCBCAAIAVqIAA2AgAMCAsgBigCBCIDQQNxQQFHDQYgA0F4cSEJIANB/wFNBEAgBigCDCIBIAYoAggiAkYEQEGICUGICSgCAEF+IANBA3Z3cTYCAAwHCyACIAE2AgwgASACNgIIDAYLIAYoAhghCCAGIAYoAgwiAkcEQCAGKAIIIgEgAjYCDCACIAE2AggMBQsgBkEUaiIBKAIAIgNFBEAgBigCECIDRQ0EIAZBEGohAQsDQCABIQQgAyICQRRqIgEoAgAiAw0AIAJBEGohASACKAIQIgMNAAsgBEEANgIADAQLQZQJIAZBKGsiAEF4IAJrQQdxIgFrIgg2AgBBoAkgASACaiIBNgIAIAEgCEEBcjYCBCAAIAJqQSg2AgRBpAlB8AwoAgA2AgAgAyAEQScgBGtBB3FqQS9rIgAgACADQRBqSRsiAUEbNgIEIAFB0AwpAgA3AhAgAUHIDCkCADcCCEHQDCABQQhqNgIAQcwMIAY2AgBByAwgAjYCAEHUDEEANgIAIAFBGGohAANAIABBBzYCBCAAQQhqIQwgAEEEaiEAIAwgBEkNAAsgASADRg0AIAEgASgCBEF+cTYCBCADIAEgA2siAkEBcjYCBCABIAI2AgAgAkH/AU0EQCACQXhxQbAJaiEAAn9BiAkoAgAiAUEBIAJBA3Z0IgJxRQRAQYgJIAEgAnI2AgAgAAwBCyAAKAIICyEBIAAgAzYCCCABIAM2AgwgAyAANgIMIAMgATYCCAwBC0EfIQAgAkH///8HTQRAIAJBJiACQQh2ZyIAa3ZBAXEgAEEBdGtBPmohAAsgAyAANgIcIANCADcCECAAQQJ0QbgLaiEBAkACQEGMCSgCACIEQQEgAHQiBnFFBEBBjAkgBCAGcjYCACABIAM2AgAMAQsgAkEZIABBAXZrQQAgAEEfRxt0IQAgASgCACEEA0AgBCIBKAIEQXhxIAJGDQIgAEEddiEEIABBAXQhACABIARBBHFqIgYoAhAiBA0ACyAGIAM2AhALIAMgATYCGCADIAM2AgwgAyADNgIIDAELIAEoAggiACADNgIMIAEgAzYCCCADQQA2AhggAyABNgIMIAMgADYCCAtBlAkoAgAiACAFTQ0AQZQJIAAgBWsiATYCAEGgCUGgCSgCACIAIAVqIgI2AgAgAiABQQFyNgIEIAAgBUEDcjYCBCAAQQhqIQAMCAtBhAlBMDYCAEEAIQAMBwtBACECCyAIRQ0AAkAgBigCHCIBQQJ0QbgLaiIEKAIAIAZGBEAgBCACNgIAIAINAUGMCUGMCSgCAEF+IAF3cTYCAAwCCyAIQRBBFCAIKAIQIAZGG2ogAjYCACACRQ0BCyACIAg2AhggBigCECIBBEAgAiABNgIQIAEgAjYCGAsgBigCFCIBRQ0AIAIgATYCFCABIAI2AhgLIAAgCWohACAGIAlqIgYoAgQhAwsgBiADQX5xNgIEIAUgAEEBcjYCBCAAIAVqIAA2AgAgAEH/AU0EQCAAQXhxQbAJaiEBAn9BiAkoAgAiAkEBIABBA3Z0IgBxRQRAQYgJIAAgAnI2AgAgAQwBCyABKAIICyEAIAEgBTYCCCAAIAU2AgwgBSABNgIMIAUgADYCCAwBC0EfIQMgAEH///8HTQRAIABBJiAAQQh2ZyIBa3ZBAXEgAUEBdGtBPmohAwsgBSADNgIcIAVCADcCECADQQJ0QbgLaiEBAkACQEGMCSgCACICQQEgA3QiBHFFBEBBjAkgAiAEcjYCACABIAU2AgAMAQsgAEEZIANBAXZrQQAgA0EfRxt0IQMgASgCACECA0AgAiIBKAIEQXhxIABGDQIgA0EddiECIANBAXQhAyABIAJBBHFqIgQoAhAiAg0ACyAEIAU2AhALIAUgATYCGCAFIAU2AgwgBSAFNgIIDAELIAEoAggiACAFNgIMIAEgBTYCCCAFQQA2AhggBSABNgIMIAUgADYCCAsgB0EIaiEADAILAkAgB0UNAAJAIAQoAhwiAEECdEG4C2oiASgCACAERgRAIAEgAjYCACACDQFBjAkgCEF+IAB3cSIINgIADAILIAdBEEEUIAcoAhAgBEYbaiACNgIAIAJFDQELIAIgBzYCGCAEKAIQIgAEQCACIAA2AhAgACACNgIYCyAEKAIUIgBFDQAgAiAANgIUIAAgAjYCGAsCQCADQQ9NBEAgBCADIAVqIgBBA3I2AgQgACAEaiIAIAAoAgRBAXI2AgQMAQsgBCAFQQNyNgIEIAQgBWoiAiADQQFyNgIEIAIgA2ogAzYCACADQf8BTQRAIANBeHFBsAlqIQACf0GICSgCACIBQQEgA0EDdnQiA3FFBEBBiAkgASADcjYCACAADAELIAAoAggLIQEgACACNgIIIAEgAjYCDCACIAA2AgwgAiABNgIIDAELQR8hACADQf///wdNBEAgA0EmIANBCHZnIgBrdkEBcSAAQQF0a0E+aiEACyACIAA2AhwgAkIANwIQIABBAnRBuAtqIQECQAJAIAhBASAAdCIGcUUEQEGMCSAGIAhyNgIAIAEgAjYCAAwBCyADQRkgAEEBdmtBACAAQR9HG3QhACABKAIAIQUDQCAFIgEoAgRBeHEgA0YNAiAAQR12IQYgAEEBdCEAIAEgBkEEcWoiBigCECIFDQALIAYgAjYCEAsgAiABNgIYIAIgAjYCDCACIAI2AggMAQsgASgCCCIAIAI2AgwgASACNgIIIAJBADYCGCACIAE2AgwgAiAANgIICyAEQQhqIQAMAQsCQCAJRQ0AAkAgAigCHCIAQQJ0QbgLaiIBKAIAIAJGBEAgASAENgIAIAQNAUGMCSALQX4gAHdxNgIADAILIAlBEEEUIAkoAhAgAkYbaiAENgIAIARFDQELIAQgCTYCGCACKAIQIgAEQCAEIAA2AhAgACAENgIYCyACKAIUIgBFDQAgBCAANgIUIAAgBDYCGAsCQCADQQ9NBEAgAiADIAVqIgBBA3I2AgQgACACaiIAIAAoAgRBAXI2AgQMAQsgAiAFQQNyNgIEIAIgBWoiBCADQQFyNgIEIAMgBGogAzYCACAHBEAgB0F4cUGwCWohAEGcCSgCACEBAn9BASAHQQN2dCIFIAZxRQRAQYgJIAUgBnI2AgAgAAwBCyAAKAIICyEGIAAgATYCCCAGIAE2AgwgASAANgIMIAEgBjYCCAtBnAkgBDYCAEGQCSADNgIACyACQQhqIQALIApBEGokACAAC+UDAgV/FXwgAEEASgRAA0AgAiAFQQJ0aigCACEHIAEgBUEGdGoiBCoCILsiDyAEKgIYuyIMIAQqAgS7IhOiIAQqAgi7Ig0gBCoCFLsiFKKhIgqiIAQqAgC7IhAgBCoCKLsiDiAUoiAMIAQqAiS7IhWioSILoiAVIA2iIBMgDqKhIhEgBCoCELsiEqKgoCIJmUQAAAAAAACwPGNFBEAgEiANoiAQIAyioUQAAAAAAADwPyAJoyIJoiEXIA8gDKIgEiAOmqKgIAmiIRggCiAJoiEZIBEgCaIhGiALIAmiIRsgDiAQoiANIA+ioSAJoiEWC0EAIQggB0EASgRAIAQqAji7IREgBCoCNLshHCAEKgIwuyEdA0AgAyAGIAhqQRhsaiIEQRBqIBcgBCoCFLsiCaIgGCAEKgIMuyIKoiAWIAQqAhC7IguioKC2OAIAIAQgGSAJoiAbIAqiIBogC6KgoLY4AgwgBCAPIAQqAgi7IgmiIBAgBCoCALsiCqIgEiAEKgIEuyILoqCgIB2gtjgCACAEIBUgCaIgEyAKoiAUIAuioKAgHKC2OAIEIAQgDiAJoiANIAqiIAwgC6KgoCARoLY4AgggCEEBaiIIIAdHDQALCyAGIAdqIQYgBUEBaiIFIABHDQALCwsLhwEDAEGACAtgT7thBWes3T8YLURU+yHpP5v2gdILc+8/GC1EVPsh+T/iZS8ifyt6PAdcFDMmpoE8vcvweogHcDwHXBQzJqaRPBgtRFT7Iek/GC1EVPsh6b/SITN/fNkCQNIhM3982QLAAEHvCAsRgBgtRFT7IQlAGC1EVPshCcAAQYAJCwOABgE=")||(Fe=Ge,Ge=i.locateFile?i.locateFile(Fe,u):u+Fe);var Et,_t=Cn=>{for(;Cn.length>0;)Cn.shift()(i)},Zt=(i.noExitRuntime,Cn=>{var $n=(Cn-v.buffer.byteLength+65535)/65536;try{return v.grow($n),Z(),1}catch{}}),Pt=Cn=>{var $n=(gt=>{for(var Rt=0,Xt=0;Xt<gt.length;++Xt){var qt=gt.charCodeAt(Xt);qt<=127?Rt++:qt<=2047?Rt+=2:qt>=55296&&qt<=57343?(Rt+=4,++Xt):Rt+=3}return Rt})(Cn)+1,en=Bt($n);return((gt,Rt,Xt)=>{((qt,St,Nt,bt)=>{if(!(bt>0))return 0;for(var Vt=Nt+bt-1,pn=0;pn<qt.length;++pn){var Dn=qt.charCodeAt(pn);if(Dn>=55296&&Dn<=57343&&(Dn=65536+((1023&Dn)<<10)|1023&qt.charCodeAt(++pn)),Dn<=127){if(Nt>=Vt)break;St[Nt++]=Dn}else if(Dn<=2047){if(Nt+1>=Vt)break;St[Nt++]=192|Dn>>6,St[Nt++]=128|63&Dn}else if(Dn<=65535){if(Nt+2>=Vt)break;St[Nt++]=224|Dn>>12,St[Nt++]=128|Dn>>6&63,St[Nt++]=128|63&Dn}else{if(Nt+3>=Vt)break;St[Nt++]=240|Dn>>18,St[Nt++]=128|Dn>>12&63,St[Nt++]=128|Dn>>6&63,St[Nt++]=128|63&Dn}}St[Nt]=0})(gt,P,Rt,Xt)})(Cn,en,$n),en},sn=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0,On=(Cn,$n)=>Cn?((en,gt,Rt)=>{for(var Xt=gt+Rt,qt=gt;en[qt]&&!(qt>=Xt);)++qt;if(qt-gt>16&&en.buffer&&sn)return sn.decode(en.subarray(gt,qt));for(var St="";gt<qt;){var Nt=en[gt++];if(128&Nt){var bt=63&en[gt++];if((224&Nt)!=192){var Vt=63&en[gt++];if((Nt=(240&Nt)==224?(15&Nt)<<12|bt<<6|Vt:(7&Nt)<<18|bt<<12|Vt<<6|63&en[gt++])<65536)St+=String.fromCharCode(Nt);else{var pn=Nt-65536;St+=String.fromCharCode(55296|pn>>10,56320|1023&pn)}}else St+=String.fromCharCode((31&Nt)<<6|bt)}else St+=String.fromCharCode(Nt)}return St})(P,Cn,$n):"",kn={a:Cn=>{var $n=P.length,en=2147483648;if((Cn>>>=0)>en)return!1;for(var gt,Rt,Xt=1;Xt<=4;Xt*=2){var qt=$n*(1+.2/Xt);qt=Math.min(qt,Cn+100663296);var St=Math.min(en,(gt=Math.max(Cn,qt))+((Rt=65536)-gt%Rt)%Rt);if(Zt(St))return!0}return!1}},_n=function(){var Cn,$n,en,gt={a:kn};function Rt(Xt,qt){var St;return _n=Xt.exports,v=_n.b,Z(),St=_n.c,he.unshift(St),function(){if(pe--,i.monitorRunDependencies&&i.monitorRunDependencies(pe),pe==0&&(Ie!==null&&(clearInterval(Ie),Ie=null),Ce)){var Nt=Ce;Ce=null,Nt()}}(),_n}if(pe++,i.monitorRunDependencies&&i.monitorRunDependencies(pe),i.instantiateWasm)try{return i.instantiateWasm(gt,Rt)}catch(Xt){M(`Module.instantiateWasm callback failed with error: ${Xt}`),n(Xt)}return(Cn=Ge,$n=gt,en=function(Xt){Rt(Xt.instance)},Ct(Cn,$n,en)).catch(n),{}}(),Jn=(i._inplace_transform_vertices=(Cn,$n,en,gt)=>(i._inplace_transform_vertices=_n.d)(Cn,$n,en,gt),i._process_vertices=(Cn,$n,en,gt,Rt,Xt)=>(i._process_vertices=_n.e)(Cn,$n,en,gt,Rt,Xt),i._malloc=Cn=>(i._malloc=_n.f)(Cn),i._free=Cn=>(i._free=_n.g)(Cn),()=>(Jn=_n.h)()),Di=Cn=>(Di=_n.i)(Cn),Bt=Cn=>(Bt=_n.j)(Cn);function Sn(){function Cn(){Et||(Et=!0,i.calledRun=!0,q||(_t(he),t(i),i.onRuntimeInitialized&&i.onRuntimeInitialized(),function(){if(i.postRun)for(typeof i.postRun=="function"&&(i.postRun=[i.postRun]);i.postRun.length;)$n=i.postRun.shift(),le.unshift($n);var $n;_t(le)}()))}pe>0||(function(){if(i.preRun)for(typeof i.preRun=="function"&&(i.preRun=[i.preRun]);i.preRun.length;)$n=i.preRun.shift(),K.unshift($n);var $n;_t(K)}(),pe>0||(i.setStatus?(i.setStatus("Running..."),setTimeout(function(){setTimeout(function(){i.setStatus("")},1),Cn()},1)):Cn()))}if(i.ccall=(Cn,$n,en,gt,Rt)=>{var Xt={string:Dn=>{var bn=0;return Dn!=null&&Dn!==0&&(bn=Pt(Dn)),bn},array:Dn=>{var bn,Un,Wn=Bt(Dn.length);return bn=Dn,Un=Wn,w.set(bn,Un),Wn}},qt=(Dn=>i["_"+Dn])(Cn),St=[],Nt=0;if(gt)for(var bt=0;bt<gt.length;bt++){var Vt=Xt[en[bt]];Vt?(Nt===0&&(Nt=Jn()),St[bt]=Vt(gt[bt])):St[bt]=gt[bt]}var pn=qt.apply(null,St);return pn=function(Dn){return Nt!==0&&Di(Nt),function(bn){return $n==="string"?On(bn):$n==="boolean"?!!bn:bn}(Dn)}(pn)},Ce=function Cn(){Et||Sn(),Et||(Ce=Cn)},i.preInit)for(typeof i.preInit=="function"&&(i.preInit=[i.preInit]);i.preInit.length>0;)i.preInit.pop()();return Sn(),e.ready});let nU=sse;function zT(e,t){var n=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(v,M){if(v){if(typeof v=="string")return iU(v,M);var w={}.toString.call(v).slice(8,-1);return w==="Object"&&v.constructor&&(w=v.constructor.name),w==="Map"||w==="Set"?Array.from(v):w==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(w)?iU(v,M):void 0}}(e))||t&&e&&typeof e.length=="number"){n&&(e=n);var i=0,s=function(){};return{s,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(v){throw v},f:s}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
5602
5602
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var c,u=!0,m=!1;return{s:function(){n=n.call(e)},n:function(){var v=n.next();return u=v.done,v},e:function(v){m=!0,c=v},f:function(){try{u||n.return==null||n.return()}finally{if(m)throw c}}}}function iU(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=Array(t);n<t;n++)i[n]=e[n];return i}var rse=function(){return Si(function c(u){zi(this,c),this._viewport=u,this._project=null,this._webAssemblyModule=null,this._isInitialized=null},[{key:"initalize",value:(s=ee(ge().mark(function c(){return ge().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:if(this._isInitialized!==!0){u.next=2;break}return u.abrupt("return",!1);case 2:return u.next=4,new nU;case 4:return this._webAssemblyModule=u.sent,this._isInitialized=!0,u.abrupt("return",!0);case 7:case"end":return u.stop()}},c,this)})),function(){return s.apply(this,arguments)})},{key:"_createModelLayers",value:(i=ee(function(c,u){var m=!(arguments.length>2&&arguments[2]!==void 0)||arguments[2];return ge().mark(function v(){var M,w,P,q;return ge().wrap(function(Z){for(;;)switch(Z.prev=Z.next){case 0:M=0,w=Object.values(u);case 1:if(!(M<w.length)){Z.next=11;break}return P=w[M],(q=new X7(P.id,P.name))._revisions=[1],c.addLayer(q),Z.next=8,q.setVisible(m);case 8:M++,Z.next=1;break;case 11:case"end":return Z.stop()}},v)})()}),function(c,u){return i.apply(this,arguments)})},{key:"_loadModelGeometry",value:(n=ee(ge().mark(function c(u,m){var v,M=this;return ge().wrap(function(w){for(;;)switch(w.prev=w.next){case 0:return v=[],u.forEachTopologyLeafNode(function(P){u.forEachLayer(function(q){var Z=m.filter(function(K){return K.object.node===P.id&&K.object.discipline===q.id});Z.length!==0&&(console.log(Z),v.push(M.loadNodeGeometry(u,q,P,Z)),P.setLayerGeometryLoaded(q))}),P.objectsTreeLoaded=!0}),w.next=4,Promise.allSettled(v);case 4:case"end":return w.stop()}},c)})),function(c,u){return n.apply(this,arguments)})},{key:"runWorkerProcessVerticesWasmModule",value:(t=ee(ge().mark(function c(u,m,v){var M,w,P,q=this;return ge().wrap(function(Z){for(;;)switch(Z.prev=Z.next){case 0:return M={matrixArray:u,meshVertexCountArray:m,verticesComponentsArray:v,workerFunction:"applyAssemblyProcessVertices"},w=new Promise(function(K){var he;(he=q._project.viewports[0].glbProcessorWorkerQueue)===null||he===void 0||he.concurrentGlbProcessorWorkerQueue.push(M,function(le){K(le)})}),Z.next=4,w;case 4:return P=Z.sent,P={vertices:new Float32Array(P.vertices),boundingBoxes:new Float32Array(P.boundingBoxes)},Z.abrupt("return",P);case 7:case"end":return Z.stop()}},c)})),function(c,u,m){return t.apply(this,arguments)})},{key:"runProcessVerticesWasmModule",value:function(c,u,m,v){var M,w,P,q,Z,K=u.length/6,he=new Float32Array(4*K),le=new Float32Array(24*c),pe=0;M=pe,w=pe+=m.length*m.BYTES_PER_ELEMENT,P=pe+=v.length*v.BYTES_PER_ELEMENT,q=pe+=u.length*u.BYTES_PER_ELEMENT,Z=pe+=he.length*he.BYTES_PER_ELEMENT,pe+=le.length*le.BYTES_PER_ELEMENT;var Ie=this._webAssemblyModule._malloc(pe),Ce=new Uint8Array(this._webAssemblyModule.HEAPU8.buffer,Ie,pe);Ce.set(new Uint8Array(m.buffer),M),Ce.set(new Uint8Array(v.buffer),w),Ce.set(new Uint8Array(u.buffer),P);var Ne=Ce.byteOffset;this._webAssemblyModule.ccall("process_vertices","null",["number","number","number","number","number","number","number"],[c,Ne+M,Ne+w,Ne+P,Ne+q,Ne+Z]);for(var Ge=new Float32Array(Ce.buffer,Ne+q,he.length),Fe=0;Fe<he.length;Fe++)he[Fe]=Ge[Fe];for(var Pe=new Float32Array(Ce.buffer,Ne+Z,le.length),Ve=0;Ve<le.length;Ve++)le[Ve]=Pe[Ve];return this._webAssemblyModule._free(Ce.byteOffset),{vertices:he,boundingBoxes:le}}},{key:"_processObjectsVertices",value:function(c,u){var m,v=0,M=0,w=0,P=0,q=0,Z=zT(c);try{for(Z.s();!(m=Z.n()).done;){var K,he=zT(m.value.geometries);try{for(he.s();!(K=he.n()).done;){var le=K.value;q++;var pe=le.opaque,Ie=void 0,Ce=void 0,Ne=void 0,Ge=void 0;pe?(Ie=M,Ne=P,M+=le.vertices.length/6,P+=le.indices.length,Ce=M,Ge=P):(Ie=v,Ne=w,v+=le.vertices.length/6,w+=le.indices.length,Ce=v,Ge=w),le.startVertex=Ie,le.endVertex=Ce,le.startIndex=Ne,le.endIndex=Ge}}catch(Jn){he.e(Jn)}finally{he.f()}}}catch(Jn){Z.e(Jn)}finally{Z.f()}var Fe=new Float32Array(6*(v+M)),Pe=new Uint32Array(w+P),Ve=new Float32Array(16*q),ot=new Uint32Array(q);u.trNumVertices=v,u.trNumTriangles=w/3,u.opNumVertices=M,u.opNumTriangles=P/3,u.createBuffers();var Ct,Et=0,_t=0,Zt=0,Pt=0,sn=zT(c);try{for(sn.s();!(Ct=sn.n()).done;){var On,kn=zT(Ct.value.geometries);try{for(kn.s();!(On=kn.n()).done;){var _n=On.value;Fe.set(_n.vertices,Et),Et+=_n.vertices.length,Pe.set(_n.indices,_t),_t+=_n.indices.length,Ve.set(_n.matrix,Zt),Zt+=_n.matrix.length,ot.set([_n.vertices.length/6],Pt),Pt++}}catch(Jn){kn.e(Jn)}finally{kn.f()}}}catch(Jn){sn.e(Jn)}finally{sn.f()}return this.runProcessVerticesWasmModule(q,Fe,Ve,ot)}},{key:"_transferObjectGeometryBufferData",value:function(c,u,m,v){for(var M=c.opaque?u.opBuffer:u.trBuffer,w=c.startVertex,P=(c.endIndex-c.startIndex)/3,q=c.endVertex-c.startVertex,Z=0;Z<q;Z++){var K=Z+v,he=Z+w;M.positions[3*he]=m.vertices[4*K],M.positions[3*he+1]=m.vertices[4*K+1],M.positions[3*he+2]=m.vertices[4*K+2],M.normals[he]=m.vertices[4*K+3]}v+=q;for(var le=c.startIndex,pe=0;pe<3*P;pe++)M.indices[le+pe]=c.indices[pe]+w;return v}},{key:"_transferObjectGeometryBoundingBox",value:function(c,u,m,v){u.reset(),u.expandByBox(m.boundingBoxes.slice(24*v,24*(v+1))),u.isValid()&&(c.expandByPoint(u.minX,u.minY,u.minZ),c.expandByPoint(u.maxX,u.maxY,u.maxZ))}},{key:"_postprocessObjectsVertices",value:function(c,u,m){var v,M=0,w=0,P=new iO,q=new iO,Z=zT(c);try{for(Z.s();!(v=Z.n()).done;){var K=v.value;q.reset();var he,le=zT(K.geometries);try{for(le.s();!(he=le.n()).done;){var pe=he.value,Ie=[pe.color.x,pe.color.y,pe.color.z],Ce=pe.color.w;M=this._transferObjectGeometryBufferData(pe,m,u,M),this._transferObjectGeometryBoundingBox(q,P,u,w),w++,K.object.addMeshData(Ie,Ce,pe.startIndex,pe.endIndex,pe.startVertex,pe.endVertex,Ce<1?AT:IT)}}catch(Ge){le.e(Ge)}finally{le.f()}if(K.geometries.length>0&&q.isValid()){var Ne=K.object.setBoundingBox(q.createFloat32Array());Ne&&Ne.isEmpty()===!1&&m.boundingBox.expandByBox3(Ne)}m.parsedVisualObjects[K.object.id]=K.object}}catch(Ge){Z.e(Ge)}finally{Z.f()}}},{key:"loadNodeGeometry",value:(e=ee(ge().mark(function c(u,m,v,M){var w,P,q,Z,K;return ge().wrap(function(he){for(;;)switch(he.prev=he.next){case 0:return w=new tU(v.id,u.divisionTopologyId),P=this._processObjectsVertices(M,w),he.next=4,this._postprocessObjectsVertices(M,P,w);case 4:return he.next=6,w.createDisciplineNode(this._project,m,1);case 6:q=new si,Z=new Ee,K=new Ee,Z.set(w.boundingBox.minX,w.boundingBox.minY,w.boundingBox.minZ),K.set(w.boundingBox.maxX,w.boundingBox.maxY,w.boundingBox.maxZ),q.set(Z,K),this._project.getDivisions().expandDivisionBoundingBox(u.divisionTopologyId,q),w.dumpInfo(),w.dispose();case 15:case"end":return he.stop()}},c,this)})),function(c,u,m,v){return e.apply(this,arguments)})}]);var e,t,n,i,s}();let $7=rse;var k5=function(e,t,n){this.topoNodes={},this.topoNodesPointers={},this.project=e,this.layer=t,this.model=n,k5.prototype.createTopologyNodes=function(){var i=this;this.model.forEachTopologyLeafNode(function(s){i.topoNodes[s.id]=new tU(s.id,i.model.divisionTopologyId),i.topoNodesPointers[s.id]={opBufferPtrs:{positionsPtr:0,indicesPtr:0},trBufferPtrs:{positionsPtr:0,indicesPtr:0}}})},k5.prototype.forEachTopoNode=function(i){for(var s in this.topoNodes)Object.hasOwn(this.topoNodes,s)&&i(this.topoNodes[s])},k5.prototype.createDisciplineNodes=ee(ge().mark(function i(){var s,c,u,m,v=this;return ge().wrap(function(M){for(;;)switch(M.prev=M.next){case 0:return s=new si,c=new Ee,u=new Ee,m=[],this.forEachTopoNode(function(w){m.push(w.createDisciplineNode(v.project,v.layer,v.model.getCurrentRevision()).then(function(){n.divisionTopologyId&&(c.set(w.boundingBox.minX,w.boundingBox.minY,w.boundingBox.minZ),u.set(w.boundingBox.maxX,w.boundingBox.maxY,w.boundingBox.maxZ),s.set(c,u),v.project.getDivisions().expandDivisionBoundingBox(v.model.divisionTopologyId,s)),w.dispose()}))}),M.abrupt("return",Promise.allSettled(m));case 6:case"end":return M.stop()}},i,this)})),k5.prototype.setTopoNodesBuffersAttributes=function(i){for(var s in i)this.topoNodes[s].trNumVertices+=i[s].trNumVertices,this.topoNodes[s].trNumTriangles+=i[s].trNumTriangles,this.topoNodes[s].opNumVertices+=i[s].opNumVertices,this.topoNodes[s].opNumTriangles+=i[s].opNumTriangles},k5.prototype.createTopoNodesBuffers=function(){this.forEachTopoNode(function(i){i.createBuffers()})},k5.prototype.transferMessageToTopologyNodes=function(){var i=ee(ge().mark(function s(c,u,m){var v,M,w,P,q,Z,K,he,le,pe,Ie,Ce,Ne,Ge,Fe,Pe,Ve,ot,Ct,Et,_t,Zt,Pt,sn;return ge().wrap(function(On){for(;;)switch(On.prev=On.next){case 0:for(v=Object.keys(c).length,M=0,w=null,P=null,q=0;q<v;q++){for(Z=c[q],K=null,he=null,le=this.project.getObjectsContainer().getObject(Z.visualObjectId),pe=le.setBoundingBox(m.slice(24*q,24*(q+1))),w=this.topoNodes[Z.topologyNodeId],P=this.topoNodesPointers[Z.topologyNodeId],w.parsedVisualObjects[Z.visualObjectId]=le,Ie=Z.opacity,Ce=Z.color,le.discipline=this.layer.id,le.node=Z.topologyNodeId,K=Ie<1?w.trBuffer:w.opBuffer,he=Ie<1?P.trBufferPtrs:P.opBufferPtrs,w.boundingBox.expandByBox3(pe),Ne=he.positionsPtr,Ge=Z.indexArray.length/3,Fe=Z.vertexCount,Pe=he.indicesPtr,Ve=he.indicesPtr+3*Ge,ot=Ne,Ct=Ne+Fe,le.addMeshData(Ce,Ie,Pe,Ve,ot,Ct,Ie<1?AT:IT),Et=0;Et<Fe;Et++)_t=Et+M,Zt=Et+Ne,K.positions[3*Zt]=u[4*_t],K.positions[3*Zt+1]=u[4*_t+1],K.positions[3*Zt+2]=u[4*_t+2],K.normals[Zt]=u[4*_t+3];for(M+=Fe,Pt=he.indicesPtr,sn=0;sn<3*Ge;sn++)K.indices[Pt+sn]=Z.indexArray[sn]+Ne;he.positionsPtr+=Fe,he.indicesPtr+=3*Ge}case 5:case"end":return On.stop()}},s,this)}));return function(s,c,u){return i.apply(this,arguments)}}()};let sU=k5;function rU(e,t){var n=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(v,M){if(v){if(typeof v=="string")return aU(v,M);var w={}.toString.call(v).slice(8,-1);return w==="Object"&&v.constructor&&(w=v.constructor.name),w==="Map"||w==="Set"?Array.from(v):w==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(w)?aU(v,M):void 0}}(e))||t&&e&&typeof e.length=="number"){n&&(e=n);var i=0,s=function(){};return{s,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(v){throw v},f:s}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
5603
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var c,u=!0,m=!1;return{s:function(){n=n.call(e)},n:function(){var v=n.next();return u=v.done,v},e:function(v){m=!0,c=v},f:function(){try{u||n.return==null||n.return()}finally{if(m)throw c}}}}function aU(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=Array(t);n<t;n++)i[n]=e[n];return i}function oU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(oU=function(){return!!e})()}var ase=function(e){function t(Fe,Pe){var Ve;return zi(this,t),Ve=function(ot,Ct,Et){return Ct=xi(Ct),ba(ot,oU()?Reflect.construct(Ct,Et||[],xi(ot).constructor):Ct.apply(ot,Et))}(this,t,[Pe]),Ve.api=Fe,Ve.nodePromises={},Ve.errorHandler=null,Ve.canceled=!1,Ve.modelObjectsPromises={},Ve.modelTooDistantHandler=null,Ve.initialVisiblityProvider=null,Ve}return va(t,e),Si(t,[{key:"resetState",value:function(){this.nodePromises={},this.modelObjectsPromises={},this.canceled=!1}},{key:"loadProject",value:(Ge=ee(ge().mark(function Fe(Pe){var Ve,ot,Ct,Et;return ge().wrap(function(_t){for(;;)switch(_t.prev=_t.next){case 0:return Ve=this,ot=new Z7(this._viewport),_t.next=4,ot.initializeDisciplineNodeStore();case 4:return this.nodePromises={},this.modelObjectsPromises={},this._viewport.setContent(ot),_t.prev=7,_t.next=10,Ve.api.projects.get(Pe);case 10:Ct=_t.sent,ot.parseProjectDetailsResponse(Ct),_t.next=17;break;case 14:throw _t.prev=14,_t.t0=_t.catch(7),new Error(_t.t0);case 17:return _t.next=19,Ve.checkModelsModified(ot.getModels());case 19:return _t.prev=19,_t.next=22,Ve.api.projects.getTopology(Pe);case 22:Et=_t.sent,ot.parseProjectTopologyResponse(Et),_t.next=29;break;case 26:throw _t.prev=26,_t.t1=_t.catch(19),new Error(_t.t1);case 29:return _t.abrupt("return",ot);case 30:case"end":return _t.stop()}},Fe,this,[[7,14],[19,26]])})),function(Fe){return Ge.apply(this,arguments)})},{key:"loadModel",value:(Ne=ee(function(Fe,Pe,Ve){var ot=this,Ct=!(arguments.length>3&&arguments[3]!==void 0)||arguments[3],Et=arguments.length>4&&arguments[4]!==void 0?arguments[4]:void 0;return ge().mark(function _t(){var Zt,Pt,sn,On,kn;return ge().wrap(function(_n){for(;;)switch(_n.prev=_n.next){case 0:if(Pe.topologyLoaded!==!1){_n.next=12;break}return _n.prev=1,Zt=Pe.getCurrentRevision(),_n.next=5,ot.api.objects.getTopology(Pe.divisionTopologyId,Zt,!0,!1);case 5:Pt=_n.sent,Fe.parseProjectTopologyResponse(Pt,Zt),_n.next=12;break;case 9:throw _n.prev=9,_n.t0=_n.catch(1),new Error(_n.t0);case 12:if(ot.modelObjectsPromises[Pe.divisionTopologyId]||Ct!==!0||(ot.modelObjectsPromises[Pe.divisionTopologyId]=ot._loadModelObjectsTree(Pe,Et)),(sn=Ve||Pe.getLayerArray().filter(function(Jn){return!Jn.isInternal()}))&&sn.length!==0){_n.next=16;break}return _n.abrupt("return");case 16:if(!ot.initialVisiblityProvider){_n.next=25;break}return On=[],Pe.forEachLayer(function(Jn){On.push(Jn.setVisible(ot.initialVisiblityProvider.getModelLayerVisibility(Jn)))}),_n.next=21,Promise.all(On);case 21:return On=[],Pe.forEachTopologyLeafNode(function(Jn){On.push(Jn.setVisible(ot.initialVisiblityProvider.getNodeVisibility(Jn)))}),_n.next=25,Promise.all(On);case 25:return kn=[],sn.forEach(function(Jn){Jn.geometryLoaded===!1&&(Jn.geometryLoaded=!0,kn.push(ot._loadModelLayerGeometryCumulated(Fe,Jn,void 0)))}),_n.next=29,Promise.all(kn).catch(function(){throw new Error});case 29:Fe.getObjectsContainer().updateObjectsIndex(),Fe.resetWebGLBufferTimestamps(),ot._viewport.renderGPUPickTextureNeeded();case 32:case"end":return _n.stop()}},_t,null,[[1,9]])})()}),function(Fe,Pe,Ve){return Ne.apply(this,arguments)})},{key:"loadModelLayers",value:(Ce=ee(ge().mark(function Fe(Pe,Ve){var ot;return ge().wrap(function(Ct){for(;;)switch(Ct.prev=Ct.next){case 0:if(Ve&&Ve.length!==0){Ct.next=2;break}return Ct.abrupt("return");case 2:return ot=Ve[0].getModel(),Ct.abrupt("return",this.loadModel(Pe,ot,Ve));case 4:case"end":return Ct.stop()}},Fe,this)})),function(Fe,Pe){return Ce.apply(this,arguments)})},{key:"_loadClashFilters",value:(Ie=ee(ge().mark(function Fe(Pe,Ve){var ot,Ct,Et,_t,Zt=this;return ge().wrap(function(Pt){for(;;)switch(Pt.prev=Pt.next){case 0:if(ot=[],!Ve||Pe==null||!Pe.id){Pt.next=13;break}return Pt.prev=2,Pt.next=5,this.api.clashDetection.getAllClashRules(Pe.id);case 5:ot=Pt.sent,Pt.next=11;break;case 8:throw Pt.prev=8,Pt.t0=Pt.catch(2),new Error(Pt.t0);case 11:Pt.next=22;break;case 13:return Pt.prev=13,Pt.next=16,this.api.clashDetection.getFilters();case 16:ot=Pt.sent,Pt.next=22;break;case 19:throw Pt.prev=19,Pt.t1=Pt.catch(13),new Error(Pt.t1);case 22:Ct=[],Et=ge().mark(function sn(){var On;return ge().wrap(function(kn){for(;;)switch(kn.prev=kn.next){case 0:Object.hasOwn(ot,_t)&&(On=ot[_t],Ct.push(Zt.api.clashDetection.getFilterResults(Pe.id,On.id,!0,!0).then(function(_n){Pe.parseClashFilterResponse(On.id,_n)})));case 1:case"end":return kn.stop()}},sn)}),Pt.t2=ge().keys(ot);case 25:if((Pt.t3=Pt.t2()).done){Pt.next=30;break}return _t=Pt.t3.value,Pt.delegateYield(Et(),"t4",28);case 28:Pt.next=25;break;case 30:return Pt.next=32,Promise.all(Ct).catch(function(){throw new Error});case 32:case"end":return Pt.stop()}},Fe,this,[[2,8],[13,19]])})),function(Fe,Pe){return Ie.apply(this,arguments)})},{key:"loadClashes",value:(pe=ee(ge().mark(function Fe(Pe){return ge().wrap(function(Ve){for(;;)switch(Ve.prev=Ve.next){case 0:return this.resetState(),Ve.next=3,this._loadClashFilters(Pe,!0);case 3:return Ve.abrupt("return",Pe);case 4:case"end":return Ve.stop()}},Fe,this)})),function(Fe){return pe.apply(this,arguments)})},{key:"loadTopologyNode",value:(le=ee(function(Fe,Pe,Ve){var ot=this,Ct=!(arguments.length>3&&arguments[3]!==void 0)||arguments[3],Et=arguments.length>4&&arguments[4]!==void 0?arguments[4]:void 0;return ge().mark(function _t(){var Zt;return ge().wrap(function(Pt){for(;;)switch(Pt.prev=Pt.next){case 0:if(!(Ve&&Ve.length>0)){Pt.next=4;break}return Zt=Ve[0].getModel(),Pt.next=4,ot.loadModel(Fe,Zt,Ve,Ct,Et);case 4:case"end":return Pt.stop()}},_t)})()}),function(Fe,Pe,Ve){return le.apply(this,arguments)})},{key:"_updateGLBGeometryNodeBoundingBox",value:function(Fe,Pe){Fe.getBoundingBox().expandByMinMax(Pe.min.x,Pe.min.y,Pe.min.z,Pe.max.x,Pe.max.y,Pe.max.z)}},{key:"_fullProcessGLBResponse",value:(he=ee(function(Fe,Pe,Ve,ot){var Ct=this,Et=arguments.length>4&&arguments[4]!==void 0?arguments[4]:void 0;return ge().mark(function _t(){var Zt,Pt,sn,On,kn,_n,Jn,Di,Bt,Sn,Cn,$n,en,gt,Rt,Xt,qt,St;return ge().wrap(function(Nt){for(;;)switch(Nt.prev=Nt.next){case 0:for(On in Zt={},Pt=!1,sn=Fe.getObjectsContainer()._objectRef)sn[On]?Zt[On]="exists":Zt[On]=sn[On];if(Pe.id!==o1.ClashLayer&&Pe.id!==o1.RevisionCompareLayer||(Pt=!0),(kn=new sU(Fe,Pe,Ve)).createTopologyNodes(),Ct._viewport.isReady()){Nt.next=9;break}throw new Error("viewport not ready");case 9:return _n=ot.map(function(){var bt=ee(ge().mark(function Vt(pn){var Dn,bn;return ge().wrap(function(Un){for(;;)switch(Un.prev=Un.next){case 0:return Un.next=2,pn;case 2:return Dn=Un.sent,bn={chunkData:Dn,visualObjectExistanceOfId:Zt,isClashOrRevisionCompare:Pt,properitesPanelTopologyId:Et},Un.abrupt("return",new Promise(function(Wn){var Ln;(Ln=Ct._viewport.glbProcessorWorkerQueue)===null||Ln===void 0||Ln.concurrentGlbProcessorWorkerQueue.push(bn,function(ts){Wn(ts)})}));case 5:case"end":return Un.stop()}},Vt)}));return function(Vt){return bt.apply(this,arguments)}}()),Nt.prev=10,Nt.next=13,Promise.all(_n);case 13:Jn=Nt.sent,Di=!0,Bt=rU(Jn),Nt.prev=16,Bt.s();case 18:if((Sn=Bt.n()).done){Nt.next=27;break}if(Cn=Sn.value,$n=Cn.topoNodeMessage,Object.keys($n).length){Nt.next=23;break}return Nt.abrupt("continue",25);case 23:kn.setTopoNodesBuffersAttributes($n),Di=!1;case 25:Nt.next=18;break;case 27:Nt.next=32;break;case 29:Nt.prev=29,Nt.t0=Nt.catch(16),Bt.e(Nt.t0);case 32:return Nt.prev=32,Bt.f(),Nt.finish(32);case 35:if(!Di){Nt.next=37;break}return Nt.abrupt("return");case 37:kn.createTopoNodesBuffers(),en=rU(Jn),Nt.prev=39,en.s();case 41:if((gt=en.n()).done){Nt.next=50;break}return Rt=gt.value,Xt=new Float32Array(Rt.vertices),qt=new Float32Array(Rt.boundingBoxes),St=Rt.message,Nt.next=48,kn.transferMessageToTopologyNodes(St,Xt,qt);case 48:Nt.next=41;break;case 50:Nt.next=55;break;case 52:Nt.prev=52,Nt.t1=Nt.catch(39),en.e(Nt.t1);case 55:return Nt.prev=55,en.f(),Nt.finish(55);case 58:Nt.next=63;break;case 60:Nt.prev=60,Nt.t2=Nt.catch(10),console.log("Promise all error: ",Nt.t2);case 63:return Nt.abrupt("return",kn);case 64:case"end":return Nt.stop()}},_t,null,[[10,60],[16,29,32,35],[39,52,55,58]])})()}),function(Fe,Pe,Ve,ot){return he.apply(this,arguments)})},{key:"_loadObjectGeometryGLB",value:(K=ee(ge().mark(function Fe(Pe,Ve,ot){var Ct,Et,_t,Zt,Pt,sn,On,kn,_n,Jn;return ge().wrap(function(Di){for(;;)switch(Di.prev=Di.next){case 0:return Ct=Pe.getObjectsContainer().getObject(Ve).discipline,Et={chunked:null,revision:ot,lod:0,batch:null,vertexNormals:!0,smoothingAngle:null,topology:null,edges:!1,version:null},Di.next=4,this.api.objects.getGeometryGLB(Ve,null,Et);case 4:return _t=Di.sent,Zt={id:Ve,revision:ot,divisionTopologyId:Pe.getFakeDivisionTopologyId(),visible:!0},Pt=Pe.getFakeLegacyDiscipline(Ct,ot),Pe.getGeometryNodes().initNode(Pe,Zt,Pt),sn=Pe.getGeometryNodes().getDisciplineNode(Ve,Ct),On={id:Ct},kn={node:{id:Ve},divisionTopologyId:Pe.getFakeDivisionTopologyId(),forEachTopologyLeafNode:function(Bt){Bt(this.node)}},Di.next=13,this._fullProcessGLBResponse(Pe,On,kn,[_t],Ve);case 13:_n=Di.sent;try{Jn=_n.topoNodes[Ve],Pe.createDisciplineNodeMeshes(sn,Jn.opBuffer,Jn.trBuffer,Jn.edgesBuffer),sn.bufferLength=12*(Jn.opBuffer.bufferLength+Jn.trBuffer.bufferLength),sn.revision=ot,sn.boundingBox=new si(new Ee(Jn.boundingBox.minX,Jn.boundingBox.minY,Jn.boundingBox.minZ),new Ee(Jn.boundingBox.maxX,Jn.boundingBox.maxY,Jn.boundingBox.maxZ)),Jn.dispose(),_n.topoNodes={},_n.topoNodesPointers={}}catch(Bt){console.error("Error during createDisciplineNodes then disposal in properties panel: ",Bt)}return this._viewport.setContent(Pe),this._updateGLBGeometryNodeBoundingBox(Pe,sn.boundingBox),this._viewport.noRender||this._viewport.setCameraResetAxis("xyz",!1),Di.abrupt("return",sn);case 19:case"end":return Di.stop()}},Fe,this)})),function(Fe,Pe,Ve){return K.apply(this,arguments)})},{key:"loadObject",value:(Z=ee(function(Fe,Pe){var Ve=this,ot=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;return ge().mark(function Ct(){var Et,_t,Zt;return ge().wrap(function(Pt){for(;;)switch(Pt.prev=Pt.next){case 0:return Ve._viewport.clearLookupTextures(),Et=new eU(Ve._viewport),Ve.nodePromises={},Pt.prev=3,Pt.next=6,Ve.api.objects.getTopology(Fe,Pe,void 0,!0);case 6:_t=Pt.sent,Et.parseObjectTopologyResponse(_t,Pe,ot),Pt.next=13;break;case 10:throw Pt.prev=10,Pt.t0=Pt.catch(3),new Error(Pt.t0);case 13:return Pt.next=15,Ve._loadObjectGeometryGLB(Et,Fe,Pe);case 15:if(Zt=Pt.sent){Pt.next=18;break}throw new Error;case 18:if(Ve._viewport.isReady()){Pt.next=20;break}return Pt.abrupt("return",null);case 20:return Et.getObjectsContainer().updateObjectsIndex(),Et.getObjectsContainer().initObjects(Ve._viewport),Et.getObjectsContainer().forEachObject(function(sn){sn.visible?sn.show(Ve._viewport):sn.hide(Ve._viewport)},!1),Ve._viewport.updateWebGLBuffer(Zt),Ve._viewport.renderGPUPickTextureNeeded(),Pt.abrupt("return",Et);case 26:case"end":return Pt.stop()}},Ct,null,[[3,10]])})()}),function(Fe,Pe){return Z.apply(this,arguments)})},{key:"_reloadLayerGeometry",value:(q=ee(function(Fe,Pe,Ve){var ot=this,Ct=!(arguments.length>3&&arguments[3]!==void 0)||arguments[3],Et=arguments.length>4&&arguments[4]!==void 0?arguments[4]:void 0;return ge().mark(function _t(){var Zt;return ge().wrap(function(Pt){for(;;)switch(Pt.prev=Pt.next){case 0:return Zt=[],Pe.forEach(function(sn){var On=sn.getLayer(Ve);On&&(On.geometryLoaded=!1,sn.forEachTopologyLeafNode(function(kn){delete ot.nodePromises[kn.id],kn.isLayerGeometryLoaded(On)&&Fe.unloadNode(kn.id,On.id)}),Zt.push(ot.loadModel(Fe,sn,[On],Ct,Et)))}),Pt.next=4,Promise.all(Zt);case 4:return Pt.abrupt("return",Fe);case 5:case"end":return Pt.stop()}},_t)})()}),function(Fe,Pe,Ve){return q.apply(this,arguments)})},{key:"getModelResponsesBatch",value:function(Fe){return Fe.id+"("+Fe.getCurrentRevision()+")"}},{key:"checkModelModified",value:(P=ee(function(Fe){var Pe=this,Ve=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1],ot=!(arguments.length>2&&arguments[2]!==void 0)||arguments[2];return ge().mark(function Ct(){var Et;return ge().wrap(function(_t){for(;;)switch(_t.prev=_t.next){case 0:if(Et=!1,Fe==null||!Fe.isExternal){_t.next=3;break}return _t.abrupt("return",Et);case 3:if(!Fe.hasRevisions()){_t.next=9;break}return _t.next=6,Pe.api.objects.head(Fe.divisionTopologyId,Fe.getCurrentRevision());case 6:Et=_t.sent,_t.next=12;break;case 9:return _t.next=11,Pe.api.models.head(Fe.divisionTopologyId);case 11:Et=_t.sent;case 12:return console.debug("[renderer] Model has revisions: ".concat(Fe.hasRevisions()," / current revision: ").concat(Fe.getCurrentRevision()," is unchanged: ").concat(Et)),!Et&&Pe.api.getCache()&&Ve&&Pe.api.getCache().deleteBatchResponses(Pe.getModelResponsesBatch(Fe)),!Et&&Fe.getProject().getDisciplineNodeStore()&&ot&&Fe.getProject().getDisciplineNodeStore().clearModelNodes(Fe.id),_t.abrupt("return",Et);case 16:case"end":return _t.stop()}},Ct)})()}),function(Fe){return P.apply(this,arguments)})},{key:"checkModelsModified",value:(w=ee(function(Fe){var Pe=this,Ve=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1],ot=!(arguments.length>2&&arguments[2]!==void 0)||arguments[2];return ge().mark(function Ct(){var Et,_t;return ge().wrap(function(Zt){for(;;)switch(Zt.prev=Zt.next){case 0:return Et=!1,_t=[],Fe.forEach(function(Pt){var sn=null;(sn=Pt.hasRevisions()?Pe.api.objects.head(Pt.divisionTopologyId,Pt.getCurrentRevision()):Pe.api.models.head(Pt.divisionTopologyId)).then(function(On){Et=!On||Et,!On&&Pe.api.getCache()&&Ve&&Pe.api.getCache().deleteBatchResponses(Pe.getModelResponsesBatch(Pt)),!On&&Pt.getProject().getDisciplineNodeStore()&&ot&&Pt.getProject().getDisciplineNodeStore().clearModelNodes(Pt.id)}),_t.push(sn)}),Zt.next=5,Promise.all(_t);case 5:return Zt.abrupt("return",Et);case 6:case"end":return Zt.stop()}},Ct)})()}),function(Fe){return w.apply(this,arguments)})},{key:"checkAndRefreshProject",value:(M=ee(ge().mark(function Fe(Pe,Ve){var ot,Ct;return ge().wrap(function(Et){for(;;)switch(Et.prev=Et.next){case 0:return Et.next=2,this.checkModelsModified(Ve);case 2:if(!(ot=Et.sent)){Et.next=8;break}return Et.next=6,this.api.projects.get(Pe.id);case 6:Ct=Et.sent,Pe.parseProjectDetailsResponse(Ct);case 8:return Et.abrupt("return",ot);case 9:case"end":return Et.stop()}},Fe,this)})),function(Fe,Pe){return M.apply(this,arguments)})},{key:"reloadClashesFromFilter",value:(v=ee(ge().mark(function Fe(Pe,Ve,ot){return ge().wrap(function(Ct){for(;;)switch(Ct.prev=Ct.next){case 0:return Pe.disposeClashObjectsByFilter(Ve),Pe.parseClashFilterResponse(Ve,ot),Ct.abrupt("return",Pe);case 3:case"end":return Ct.stop()}},Fe)})),function(Fe,Pe,Ve){return v.apply(this,arguments)})},{key:"reloadClashes",value:(m=ee(ge().mark(function Fe(Pe,Ve){return ge().wrap(function(ot){for(;;)switch(ot.prev=ot.next){case 0:return Pe.disposeClashObjects(),ot.next=3,this._loadClashFilters(Pe,Ve);case 3:return ot.abrupt("return",Pe);case 4:case"end":return ot.stop()}},Fe,this)})),function(Fe,Pe){return m.apply(this,arguments)})},{key:"reloadRevisionCompareObjects",value:(u=ee(ge().mark(function Fe(Pe,Ve){return ge().wrap(function(ot){for(;;)switch(ot.prev=ot.next){case 0:return this._viewport.disableDraw(!0),ot.next=3,this.checkAndRefreshProject(Pe,[Ve]);case 3:return ot.next=5,this._reloadLayerGeometry(Pe,[Ve],o1.RevisionCompareLayer,!1,function(Ct){return Pe.getObjectsContainer().getRevisionCompareObject(Ct.id)});case 5:Pe.getObjectsContainer().forEachRevisionCompareObject(function(Ct){var Et=Pe.getObjectsContainer().getObject(Ct.id);Et&&Pe.getObjectsContainer().traverseDown(Et,function(_t){_t.visible=!1})}),this._viewport.disableDraw(!1),Ve.forEachTopologyLeafNode(function(Ct){var Et=Pe.getDisciplineNode(Ct,Ve.getRevisionCompareLayer());Et&&(Et.visible=!0)});case 8:case"end":return ot.stop()}},Fe,this)})),function(Fe,Pe){return u.apply(this,arguments)})},{key:"cancel",value:function(){this.canceled=!0}},{key:"_loadModelObjectsTree",value:(c=ee(ge().mark(function Fe(Pe,Ve){var ot,Ct,Et;return ge().wrap(function(_t){for(;;)switch(_t.prev=_t.next){case 0:return ot=Pe.getCurrentRevision(),Ct=this.getModelResponsesBatch(Pe),_t.next=4,this.api.objects.getTopology(Pe.divisionTopologyId,ot,void 0,!0,Ct);case 4:Et=_t.sent,Pe.parseModelObjectsTopology(Et,Ve),Pe.objectsLoaded=!0;case 7:case"end":return _t.stop()}},Fe,this)})),function(Fe,Pe){return c.apply(this,arguments)})},{key:"_loadModelLayerGeometryFromIndexDb",value:(s=ee(ge().mark(function Fe(Pe,Ve){var ot,Ct,Et,_t,Zt,Pt,sn,On,kn=this;return ge().wrap(function(_n){for(;;)switch(_n.prev=_n.next){case 0:if(ot=Pe.getDisciplineNodeStore()){_n.next=4;break}return console.error("Failed to get DisciplineNodeStore"),_n.abrupt("return");case 4:return Ct=Ve.getModel(),Et=Ct.getCurrentRevision(),_t=Ct.divisionTopologyId,Zt=Ve.getUserColor(),Pt=Ve.getUserOpacity(),sn=Ve.isBackground(),On=[],Ct.forEachTopologyLeafNode(function(Jn){var Di={id:Jn.id,revision:Et,divisionTopologyId:_t,visible:!0},Bt=Ve.asLegacyDiscipline();Pe.getGeometryNodes().initNode(Pe,Di,Bt);var Sn=Pe.getDisciplineNode(Di,Ve);Sn?On.push(Pe.readDisciplineNodeMeshes(ot,Sn,!0).then(function(){Jn.objectsTreeLoaded=!0,Jn.setLayerGeometryLoaded(Ve),Ct.divisionTopologyId&&Pe.getDivisions().expandDivisionBoundingBox(Ct.divisionTopologyId,Sn.boundingBox),Sn.setUserColor(Zt),Sn.setUserOpacity(Pt),Sn.setBackground(sn),Sn.setVisible(Jn.isVisible()&&Ve.isVisible()),kn.modelTooDistantHandler!==null&&kn._viewport.isRelativeModelDistancesTooLarge()&&kn.modelTooDistantHandler()})):console.error("Discipline node is undefined")}),_n.next=15,Promise.all(On);case 15:case"end":return _n.stop()}},Fe)})),function(Fe,Pe){return s.apply(this,arguments)})},{key:"_loadModelLayerGeometryCumulated",value:(i=ee(function(Fe,Pe){var Ve=this,ot=arguments.length>2&&arguments[2]!==void 0?arguments[2]:100;return ge().mark(function Ct(){var Et,_t,Zt,Pt,sn,On,kn,_n,Jn;return ge().wrap(function(Di){for(;;)switch(Di.prev=Di.next){case 0:if(Et=Pe.getModel(),_t=Et.getCurrentRevision(),Zt=Ve.getModelResponsesBatch(Et),!Ve.modelObjectsPromises[Et.divisionTopologyId]){Di.next=6;break}return Di.next=6,Ve.modelObjectsPromises[Et.divisionTopologyId];case 6:return Pt={chunked:!0,revision:_t,lod:ot,batch:Zt,vertexNormals:!0,smoothingAngle:null,topology:!0,edges:!1,version:null},sn=[],Di.next=10,Ve.api.objects.getGeometryGLB(Et.divisionTopologyId,Pe.id,Pt);case 10:return sn=Di.sent,Di.next=13,Ve._fullProcessGLBResponse(Fe,Pe,Et,sn,void 0);case 13:return On=Di.sent,Di.next=16,On.createDisciplineNodes();case 16:On.topoNodes={},On.topoNodesPointers={},kn=Pe.getUserColor(),_n=Pe.getUserOpacity(),Jn=Pe.isBackground(),Et.forEachTopologyLeafNode(function(Bt){Bt.objectsTreeLoaded=!0,Bt.setLayerGeometryLoaded(Pe);var Sn=Fe.getDisciplineNode(Bt,Pe);Ve._updateGLBGeometryNodeBoundingBox(Fe,Sn.boundingBox),Sn.setUserColor(kn),Sn.setUserOpacity(_n),Sn.setBackground(Jn),Sn.setVisible(Bt.isVisible()&&Pe.isVisible())}),Ve.modelTooDistantHandler!==null&&Ve._viewport.isRelativeModelDistancesTooLarge()&&Ve.modelTooDistantHandler();case 23:case"end":return Di.stop()}},Ct)})()}),function(Fe,Pe){return i.apply(this,arguments)})},{key:"loadModelStructure",value:(n=ee(ge().mark(function Fe(Pe,Ve,ot){var Ct,Et;return ge().wrap(function(_t){for(;;)switch(_t.prev=_t.next){case 0:if(!Ve.isExternal){_t.next=2;break}return _t.abrupt("return");case 2:if(Ve.topologyLoaded!==!1){_t.next=14;break}return _t.prev=3,Ct=Ve.getCurrentRevision(),_t.next=7,this.api.objects.getTopology(Ve.divisionTopologyId,Ct,!0,!1);case 7:Et=_t.sent,Pe.parseProjectTopologyResponse(Et,Ct),_t.next=14;break;case 11:throw _t.prev=11,_t.t0=_t.catch(3),new Error(_t.t0);case 14:if(Ve.objectsLoaded!==!1){_t.next=23;break}return _t.prev=15,_t.next=18,this._loadModelObjectsTree(Ve,ot);case 18:_t.next=23;break;case 20:throw _t.prev=20,_t.t1=_t.catch(15),new Error(_t.t1);case 23:case"end":return _t.stop()}},Fe,this,[[3,11],[15,20]])})),function(Fe,Pe,Ve){return n.apply(this,arguments)})}]);var n,i,s,c,u,m,v,M,w,P,q,Z,K,he,le,pe,Ie,Ce,Ne,Ge}($7);let lU=ase;function cU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(cU=function(){return!!e})()}var eN=function(e){function t(n){var i;return zi(this,t),i=function(s,c,u){return c=xi(c),ba(s,cU()?Reflect.construct(c,u||[],xi(s).constructor):c.apply(s,u))}(this,t),i._viewport=n,i._mouseButton=null,i._isDragging=!1,i._isPinching=!1,i._isPaning=!1,i.target=new Ee,i.object=null,i.minDistance=0,i.maxDistance=1/0,i.minPolarAngle=0,i.maxPolarAngle=Math.PI,i.lastPlaneIntersectionAfterZoom=new Ee,i}return va(t,e),Si(t,[{key:"startDrag",value:function(n){this._mouseButton=n,this._isDragging=!0}},{key:"processDrag",value:function(){}},{key:"finishDrag",value:function(){this._isDragging=!1}},{key:"isDragging",value:function(){return this._isDragging}},{key:"processOrthographicMouseWheel",value:function(n,i){var s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:.9,c=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1.1,u=arguments.length>4&&arguments[4]!==void 0&&arguments[4];if(n!==0){var m=this._viewport,v=new Ee;if(m.projector.pickingRay(m.getNDCVector(),m.camera).ray.intersectPlane(i,v)||console.error("planeIntersectionBeforeZoom has no intersection"),u){var M=this._calculateZoomFactor(!1),w=m.getNDCVector(),P=m.projector.pickingRay(w,m.camera).ray.direction;if(P.distanceTo(new Ee(0,0,0))>0){P.normalize(),P.multiplyScalar(n>0?M:-M);var q=new Ee().copy(m.controls.target),Z=new Ee().copy(m.camera.position);q.add(P),Z.add(P),m.camera.position.copy(Z),m.controls.target.copy(q)}m.controls.updateOrthographicFrustum()}else m.controls.noZoom=!0,L0.zoomOrthographicCamera(m.camera,n>1?s:c),m.camera.updateProjectionMatrix(),m.camera.updateMatrixWorld();var K=new Ee;m.projector.pickingRay(m.getNDCVector(),m.camera).ray.intersectPlane(i,K)||(console.error("planeIntersectionAfterZoom has no intersection"),K=this.lastPlaneIntersectionAfterZoom),this.planeIntersectionAfterZoom=K;var he=new Ee;he.subVectors(v,K),m.controls.target.add(he),m.camera.position.add(he),m.camera.updateProjectionMatrix(),m.camera.updateMatrixWorld()}}},{key:"processMouseWheel",value:function(){}},{key:"startPinch",value:function(){}},{key:"processPinch",value:function(){}},{key:"finishPinch",value:function(){}},{key:"isPinching",value:function(){return this._isPinching}},{key:"processClick",value:function(){}},{key:"processMouseMove",value:function(){}},{key:"canStartDrag",value:function(){return this._viewport.objectUnderMouse||this._viewport.rotationCenter}},{key:"startPan",value:function(){this._isPaning=!0}},{key:"finishPan",value:function(){this._isPaning=!1}},{key:"isPaning",value:function(){return this._isPaning}},{key:"processPan",value:function(){}},{key:"supportsGPUPicking",value:function(){return!0}},{key:"roundToStep",value:function(n,i){return Math.round(n/i)*i}},{key:"reset",value:function(){this.backupTarget&&(this.target=this.backupTarget.clone())}},{key:"revertModel",value:function(){this.backupTarget&&this.backupObjectPosition&&(this.target=this.backupTarget.clone(),this.object.position.copy(this.backupObjectPosition))}}])}(Gd);function uU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(uU=function(){return!!e})()}function oO(e,t,n,i){var s=Q1(xi(1&i?e.prototype:e),t,n);return 2&i&&typeof s=="function"?function(c){return s.apply(n,c)}:s}var dU=function(e){function t(n){var i;return zi(this,t),i=function(s,c,u){return c=xi(c),ba(s,uU()?Reflect.construct(c,u||[],xi(s).constructor):c.apply(s,u))}(this,t,[n]),i._meshSearch=new jb,i._dragRotationCenter=null,i._lastDragRotationCenter=null,i._prevDragPosition=new Ai,i._pinchToZoomCenterX=0,i._pinchToZoomCenterY=0,i._pinchDistance=null,i.isPointMatching=!1,i}return va(t,e),Si(t,[{key:"setNewRotationPoint",value:function(){var n=this._viewport;if(!n.objectUnderMouse)return n.rotationCenter&&(this._dragRotationCenter=n.rotationCenter.clone()),void console.debug("[Renderer] OrbitViewControl::setNewRotationPoint : Use existing rotation point");var i=this._meshSearch;i.findFaces=!0,i.search(n.objectUnderMouse,n,null,null,null),this._dragRotationCenter=i.faceIntersectionPoint,this._dragRotationCenter||(this._dragRotationCenter=this._lastDragRotationCenter,n.objectUnderMouse=null),console.debug("[Renderer] OrbitViewControl::setNewRotationPoint : New rotation point for object picking point")}},{key:"startDrag",value:function(n,i){var s=this._viewport;this.setNewRotationPoint(),this._dragRotationCenter&&(oO(t,"startDrag",this,3)([n,i]),this._prevDragPosition.x=s.mouse.x,this._prevDragPosition.y=s.mouse.y,s.axisHelper.visible=!0,s.axisHelper.position.copy(this._dragRotationCenter),s.renderQueue.interactionFocusPoint=this._dragRotationCenter,s.renderQueue.setInteractionMode(!1),s.renderQueue.clear(),s.renderQueue.setInteractionMode(!0),s.draw(),this.processDrag(i))}},{key:"processDrag",value:function(n){this._mouseButton===0?this._processDragRotate(n):this._mouseButton!==2&&this._mouseButton!==1||this._processDragMove(n),this._viewport.draw()}},{key:"finishDrag",value:function(n){oO(t,"finishDrag",this,3)([n]);var i,s,c,u=this._viewport;(!this._lastDragRotationCenter&&this._dragRotationCenter||this._lastDragRotationCenter&&this._dragRotationCenter&&!mi.equalVector3(this._lastDragRotationCenter,this._dragRotationCenter))&&(console.debug("[Renderer] OrbitViewControl::finishDrag : New rotation center point: x:".concat(Number.parseFloat(this==null||(i=this._dragRotationCenter)===null||i===void 0?void 0:i.x).toFixed(4)," y:").concat(Number.parseFloat(this==null||(s=this._dragRotationCenter)===null||s===void 0?void 0:s.y).toFixed(4)," z:").concat(Number.parseFloat(this==null||(c=this._dragRotationCenter)===null||c===void 0?void 0:c.z).toFixed(4))),u.setRotationCenter(this._dragRotationCenter),u.currentManipulationControlVisibility()&&u.clippingPlanes.setNewCenterPoint()),this._lastDragRotationCenter=this._dragRotationCenter,this._dragRotationCenter=null,u.axisHelper.visible=!1,u.renderQueue.interactionFocusPoint=null}},{key:"isDragging",value:function(){return this._dragRotationCenter!==null}},{key:"getLastDragRotationCenter",value:function(){return this._lastDragRotationCenter?this._lastDragRotationCenter.clone():null}},{key:"_processPointMatchDragRotate",value:function(n){var i=this._viewport,s=i.mouse.x-this._prevDragPosition.x,c=i.mouse.y-this._prevDragPosition.y,u=n.currentTarget.clientHeight,m=-s/n.currentTarget.clientWidth*Math.PI*2,v=-c/u*Math.PI;if(m!==0||v!==0){var M=i.controls.object.up.clone(),w=i.getVectorScreenCoordinates(this._dragRotationCenter);i.mouse.y<w.y&&(m*=-1),i.mouse.x>w.x&&(v*=-1);var P=i.clippingPlanes.getActiveClippingPlane().normal;P.normalize();var q=new qi;q.makeRotationAxis(P,m);var Z=new qi;Z.makeRotationAxis(P,v);var K=new Ee;K.copy(i.controls.object.position),K.sub(this._dragRotationCenter),K.applyMatrix4(Z),K.applyMatrix4(q),K.add(this._dragRotationCenter);var he=new Ee;he.copy(i.controls.target),he.sub(this._dragRotationCenter),he.applyMatrix4(Z),he.applyMatrix4(q),he.add(this._dragRotationCenter),M.applyMatrix4(Z),M.applyMatrix4(q),M.normalize(),i.controls.object.position.copy(K),i.controls.object.up.copy(M),i.controls.target.copy(he),this.updateCamera(),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y}}},{key:"_processDragRotate",value:function(n){if(this.isPointMatching&&this._viewport.currentInteractor instanceof k7)this._processPointMatchDragRotate(n);else{var i=this._viewport,s=i.mouse.x-this._prevDragPosition.x,c=i.mouse.y-this._prevDragPosition.y,u=n.currentTarget.clientHeight,m=-s/n.currentTarget.clientWidth*Math.PI*2,v=-c/u*Math.PI;if(m!==0||v!==0){var M=L0.getCameraViewDirection(i),w=i.controls.object.up.clone(),P=M.crossVectors(w,M);P.y=0,P.normalize();var q=new qi;q.makeRotationY(m);var Z=new qi;Z.makeRotationAxis(P,v);var K=new Ee;K.copy(i.controls.object.position),K.sub(this._dragRotationCenter),K.applyMatrix4(Z),K.applyMatrix4(q),K.add(this._dragRotationCenter);var he=new Ee;he.copy(i.controls.target),he.sub(this._dragRotationCenter),he.applyMatrix4(Z),he.applyMatrix4(q),he.add(this._dragRotationCenter),w.applyMatrix4(Z),w.applyMatrix4(q),w.normalize(),i.controls.object.position.copy(K),i.controls.object.up.copy(w),i.controls.target.copy(he),this.updateCamera(),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y}}}},{key:"_processDragMove",value:function(){var n=this._viewport,i=new Ee;i.copy(n.controls.object.position);var s=new Ee;s.copy(n.controls.target);var c=new Ee;c.subVectors(i,s),c.normalize();var u=new br;u.setFromNormalAndCoplanarPoint(c,this._dragRotationCenter);var m=new Ee,v=n.projector.pickingRay(n.getNDCVector(),n.camera),M=new Ee;if(v.ray.intersectPlane(u,M)&&m.subVectors(M,this._dragRotationCenter),!n.objectUnderMouse){var w=n.projector.pickingRay(n.getNDCVector(this._prevDragPosition.x,this._prevDragPosition.y),n.camera),P=new Ee;w.ray.intersectPlane(u,P)&&m.subVectors(M,P)}i.sub(m),s.sub(m),n.controls.object.position.copy(i),n.controls.target.copy(s),this.updateCamera(),this._prevDragPosition.x=n.mouse.x,this._prevDragPosition.y=n.mouse.y}},{key:"_calculateZoomFactor",value:function(n){var i=n?2.5:.25,s=this._viewport;if(s.pickGPU)if(s.rotationCenter)(i*=s.rotationCenter.distanceTo(s.camera.position))<100&&(i+=50);else{var c=new Ee(0,0,0),u=s.getContentBoundingBox();u!=null&&u.isValid()?(c.x=u.getCenterX(),c.y=u.getCenterY(),c.z=u.getCenterZ()):(c.x=0,c.y=0,c.z=0),i*=c.distanceTo(s.camera.position)}else i=n?2:.1;return isNaN(i)?1:i}},{key:"_processPointMatchMouseWheel",value:function(n){var i=this._viewport;i.currentInteractor.processMouseWheel();var s=i.clippingPlanes.getActiveClippingPlane(),c=new br;c.setFromNormalAndCoplanarPoint(s.normal,i.rotationCenter),this.processOrthographicMouseWheel(n,c)}},{key:"processMouseWheel",value:function(n,i){if(n!==0){var s=this._viewport;if(this.isPointMatching&&s.currentInteractor instanceof k7)this._processPointMatchMouseWheel(n);else if(s.name!=="mainRendererViewport"||s.camera.type!=="orthographic"){var c=this._calculateZoomFactor(i.shiftKey);s.controls.noZoom=!0,s.camera.updateProjectionMatrix(),s.camera.updateMatrixWorld();var u=s.getNDCVector(),m=s.projector.pickingRay(u,s.camera).ray.direction;if(m.distanceTo(new Ee(0,0,0))>0){m.normalize(),m.multiplyScalar(n>0?c:-c);var v=new Ee().copy(s.controls.target),M=new Ee().copy(s.camera.position);v.add(m),M.add(m),s.camera.position.copy(M),s.controls.target.copy(v),s.name==="mainRendererViewport"&&s.camera.type==="orthographic"&&s.controls.updateOrthographicFrustum()}}else{var w=new br,P=256*s.visibleGeometryBoundingSphere.radius,q=new Ee;s.camera.getWorldDirection(q),q.multiplyScalar(P),q.add(s.camera.position);var Z=new Ee;s.camera.getWorldDirection(Z),w.setFromNormalAndCoplanarPoint(Z,q),this.processOrthographicMouseWheel(n,w,void 0,void 0,!1)}}}},{key:"startPinch",value:function(){var n=this._viewport;this._pinchToZoomCenterX=n.mouse.x,this._pinchToZoomCenterY=n.mouse.y}},{key:"finishPinch",value:function(){this._pinchDistance=null}},{key:"isPinching",value:function(){return this._pinchDistance!==null}},{key:"processPinch",value:function(n){var i=this._viewport,s=n.originalEvent.touches[0].clientX-n.originalEvent.touches[1].clientX,c=n.originalEvent.touches[0].clientY-n.originalEvent.touches[1].clientY,u=Math.sqrt(s*s+c*c),m=oO(t,"roundToStep",this,3)([u,5])-oO(t,"roundToStep",this,3)([this._pinchDistance,5]);if(this._pinchDistance!==null){var v=u-this._pinchDistance;if(this._pinchDistance=u,m!==0){n.preventDefault(),n.stopPropagation();var M=this._calculateZoomFactor(n.shiftKey);i.controls.noZoom=!0,i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld();var w=i.getNDCVector(this._pinchToZoomCenterX,this._pinchToZoomCenterY),P=i.projector.pickingRay(w,i.camera).ray.direction;P.normalize(),P.multiplyScalar(v*M*.08);var q=new Ee().copy(i.controls.target),Z=new Ee().copy(i.camera.position);q.add(P),Z.add(P),i.camera.position.copy(Z),i.controls.target.copy(q),i.draw()}}else this._pinchDistance=u}},{key:"findModelObjectForMouseMove",value:function(){return this._viewport.GPUPick?this._viewport.pickGPU():this._viewport.pickRay(),this._viewport.objectUnderMouse?this._viewport.objectUnderMouse:null}},{key:"processClick",value:function(n){var i,s,c=this._viewport,u=!1;if(c.checkSelectionMode("addPin")&&!c.checkSelectionMode("hidden")&&c.objectUnderMouse){if(i=c.getRayIntersectedObjects()){var m,v,M,w,P=!1;if(c!=null&&(m=c.clippingPlanes)!==null&&m!==void 0&&m.isEnabled()){var q=new bT;q.setFromCamera(c.getNDCVector(),c.camera);for(var Z=q.intersectObject(i.object),K=0;K<Z.length;K++){var he=Z[K];if(!c.clippingPlanes.clipPoint(he.point).clipped){if(K===0&&he.point.equals(i.point))break;(i=he).position={x:he.point.x*c.normFactor,y:he.point.y*c.normFactor,z:he.point.z*c.normFactor};var le=new br(he.face.normal,0),pe=new Ee;he.face.normal.angleTo(c.camera.getWorldDirection(pe))<Math.PI/2&&le.negate(),i.normalVector={x:le.normal.x,y:le.normal.y,z:le.normal.z},P=!0;break}}}i.id=c.getSelected3DObjectId()||(c.objectSets.selectedObjects.length===1?c.objectSets.selectedObjects[0].id:""),P||(i.position={x:i.point.x*c.normFactor,y:i.point.y*c.normFactor,z:i.point.z*c.normFactor},i.face?i.normalVector={x:i.face.normal.x,y:i.face.normal.y,z:i.face.normal.z}:i.indices&&(s=3*i.indices[0],i.normalVector={x:i.object.geometry.attributes.normal.array[s],y:i.object.geometry.attributes.normal.array[s+1],z:i.object.geometry.attributes.normal.array[s+2]}));var Ie,Ce=c==null||(v=c.objectUnderMouse)===null||v===void 0?void 0:v.selected;c.addObjectsToWorkingSet([c.objectUnderMouse]),Ce&&c.selectObject(c.objectUnderMouse),i.node=c==null||(M=c.objectUnderMouse)===null||M===void 0?void 0:M.node,i.isOverlay=(c==null||(w=c.objectUnderMouse)===null||w===void 0?void 0:w.type)==="Overlay",i.isOverlay&&(i.id=c==null||(Ie=c.objectUnderMouse)===null||Ie===void 0?void 0:Ie.overlayId),c.deferred.resolve(i),c.resetObjectUnderMouse()}}else c.checkSelectionMode("pins")&&(i=c.getRayIntersectedObjects(c.pins.pinsObjects3D))&&($(c.domElement).trigger("projectPinSelected",i.object.userData),u=!0);if(!u&&!c.checkSelectionMode("addPin")&&!c.checkSelectionMode("moveModel")&&!c.checkSelectionMode("selectSectionPlane")&&!c.checkSelectionMode("selectPointsForOverlay")&&(!c.isMarkupMode()||c.isMarkupModeTurnedOff())){var Ne=c.checkSelectionMode("hidden");if(!c.blockObjectSelection||Ne){var Ge;if(!Ne&&typeof c.beforeObjectSelection=="function"&&c.beforeObjectSelection()===!1||(c.objectUnderMouse||c.setObjectUnderMouse(c.sectionCuts.getModelObjectForMesh()),!c.objectUnderMouse&&c.overlays.getVisualObjectForMesh()))return;var Fe=c==null||(Ge=c.objectUnderMouse)===null||Ge===void 0?void 0:Ge.isOverlayElement;if(!Fe){var Pe=!!c.forceMultiSelect||void 0;c.handleObjectSelection(n,!c.forceSingleObjectSelection&&Pe)}Ne||Fe||c.draw().then(function(){c.multiSelect=!!c.forceMultiSelect||n.ctrlKey||n.isLongPress,c.multiSelect=!c.forceSingleObjectSelection&&c.multiSelect,$(c.domElement).trigger("select3DObject"),c.multiSelect=!1})}}(c.checkSelectionMode("moveModel")||c.checkSelectionMode("selectSectionPlane")||c.checkSelectionMode("selectPointsForOverlay")||c.isMarkupMode())&&c.currentInteractor.processMouseClick(n)}},{key:"updateOrthographicFrustum",value:function(){var n=this._viewport,i=new br,s=new Ee;s=L0.getCameraViewDirection(n,s),i.setFromNormalAndCoplanarPoint(s,n.visibleGeometryBoundingSphere.center);var c,u=i.distanceToPoint(n.camera.position),m=(c=u>=0?n.visibleGeometryBoundingSphere.radius+Math.abs(u):Math.abs(u)<=n.visibleGeometryBoundingSphere.radius?n.visibleGeometryBoundingSphere.radius-Math.abs(u):1e4)/(2*(2*n.visibleGeometryBoundingSphere.radius));m>1.5&&(m=1.5);var v=c/2*m;n.camera.left=v*n.camera.aspect/-2,n.camera.right=v*n.camera.aspect/2,n.camera.bottom=v/-2,n.camera.top=v/2,n.camera.near=-c*m,n.camera.updateProjectionMatrix()}},{key:"startPan",value:function(){oO(t,"startPan",this,3)([])}},{key:"finishPan",value:function(){oO(t,"finishPan",this,3)([])}},{key:"isPaning",value:function(){return oO(t,"isPaning",this,3)([])}},{key:"processPan",value:function(){oO(t,"processPan",this,3)([])}},{key:"updateCamera",value:function(){var n=this._viewport;n.camera.lookAt(n.controls.target),n.camera.updateProjectionMatrix(),n.camera.updateMatrixWorld()}}])}(eN);function pU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(pU=function(){return!!e})()}function H5(e,t,n,i){var s=Q1(xi(1&i?e.prototype:e),t,n);return 2&i&&typeof s=="function"?function(c){return s.apply(n,c)}:s}var ose=function(e){function t(n){var i;return zi(this,t),i=function(s,c,u){return c=xi(c),ba(s,pU()?Reflect.construct(c,u||[],xi(s).constructor):c.apply(s,u))}(this,t,[n]),i._dragRotationCenter=null,i._prevDragPosition=new Ai,i._startDragWorldPosition=new Ee,i._pinchToZoomCenterX=0,i._pinchToZoomCenterY=0,i._pinchDistance=null,i._levelPlane=null,i._crossSectionPlane=new br(new Ee(1,0,0),0),i._isHeightLevelMode=!1,i._mainViewport=null,i._navigationMap=null,i}return va(t,e),Si(t,[{key:"setMainViewport",value:function(n){this._mainViewport=n}},{key:"getMainViewport",value:function(){return this._mainViewport}},{key:"setNavigationMap",value:function(n){this._navigationMap=n}},{key:"getNavigationMap",value:function(){return this._navigationMap}},{key:"setHeightLevel",value:function(n){this._levelPlane=new br(new Ee(0,1,0),-n)}},{key:"setHeightLevelMode",value:function(n){this._isHeightLevelMode=n}},{key:"startDrag",value:function(n,i){if(this.canProcessInputEvent(i)){var s=this._viewport;H5(t,"startDrag",this,3)([n,i]),this._prevDragPosition.x=s.mouse.x,this._prevDragPosition.y=s.mouse.y,s.renderQueue.setInteractionMode(!1),s.renderQueue.clear(),s.renderQueue.setInteractionMode(!0),s.draw();var c=this._isHeightLevelMode?this._crossSectionPlane:this._levelPlane,u=s.projector.pickingRay(s.getNDCVector(),s.camera),m=new Ee;u.ray.intersectPlane(c,m)&&(this._startDragWorldPosition=m),this.processDrag(i)}}},{key:"processDrag",value:function(n){this._mouseButton===2||this._mouseButton===1?this._processDragMove(n):this._mouseButton===0&&this._processDragRotate(n)}},{key:"finishDrag",value:function(n){H5(t,"finishDrag",this,3)([n])}},{key:"isDragging",value:function(){return H5(t,"isDragging",this,3)([])}},{key:"canProcessInputEvent",value:function(n){var i=this._viewport.getContentBoundingBox();return!(!i||i.getWidth()===0||i.getHeight()===0||i.getDepth()===0)||(n.preventDefault(),n.stopPropagation(),!1)}},{key:"_processDragRotate",value:function(n){if(this.canProcessInputEvent(n)&&!this._isHeightLevelMode){var i=this._viewport,s=this._mainViewport,c=i.mouse.x-this._prevDragPosition.x,u=i.mouse.y-this._prevDragPosition.y,m=n.currentTarget.clientHeight,v=-c/n.currentTarget.clientWidth*Math.PI*2,M=-u/m*Math.PI,w=new Ee;w.copy(s.controls.object.position);var P=s.controls.object.up.clone(),q=new Ee;q.copy(s.controls.target);var Z=new Ee;Z.subVectors(w,q),Z.normalize();var K=new Ee(1,0,0);K.crossVectors(P,Z),K.y=0,K.normalize();var he=new qi;he.makeRotationAxis(K,M);var le=new qi;le.makeRotationY(v),q.sub(w),q.applyMatrix4(he),q.applyMatrix4(le),q.add(w),P.applyMatrix4(he),P.applyMatrix4(le),P.normalize(),s.controls.object.position.copy(w),s.controls.object.up.copy(P),s.controls.target.copy(q),s.camera.lookAt(s.controls.target),s.camera.updateProjectionMatrix(),s.camera.updateMatrixWorld(),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,i.draw(),s.draw()}}},{key:"_processDragMove",value:function(n){if(this.canProcessInputEvent(n)){var i=this._viewport,s=this._isHeightLevelMode?this._crossSectionPlane:this._levelPlane,c=i.projector.pickingRay(i.getNDCVector(),i.camera),u=new Ee;if(c.ray.intersectPlane(s,u)){var m=new Ee;m.subVectors(this._startDragWorldPosition,u),i.controls.object.position.add(m),i.controls.target.add(m)}i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),i.camera.lookAt(i.controls.target),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,i.draw()}}},{key:"processMouseWheel",value:function(n,i){this.canProcessInputEvent(i)&&n!==0&&this.processOrthographicMouseWheel(n,this._levelPlane,.5,2)}},{key:"startPinch",value:function(){var n=this._viewport;this._pinchToZoomCenterX=n.mouse.x,this._pinchToZoomCenterY=n.mouse.y}},{key:"finishPinch",value:function(){this._pinchDistance=null}},{key:"processPinch",value:function(n){if(this.canProcessInputEvent(n)){var i=this._viewport;i.controls.noZoom=!0;var s=n.originalEvent.touches[0].clientX-n.originalEvent.touches[1].clientX,c=n.originalEvent.touches[0].clientY-n.originalEvent.touches[1].clientY,u=Math.sqrt(s*s+c*c),m=H5(t,"roundToStep",this,3)([u,5]);if(this._pinchDistance!==null){var v=m-this._pinchDistance;if(this._pinchDistance=m,v<0)v=.95;else{if(!(v>0))return;v=1.05}i.camera.zoom*=v,i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),n.preventDefault(),n.stopPropagation(),i.controls.noZoom=!0,i.draw()}else this._pinchDistance=m}}},{key:"processClick",value:function(n){var i=this._viewport;if(!i.isCameraFlightInProgress()&&this.canProcessInputEvent(n)){var s=i.projector.pickingRay(i.getNDCVector(),i.camera);if(this._isHeightLevelMode)$(this._viewport.domElement).trigger("clickedNavigationMapHeightLevel",{height:s.ray.origin.y});else{var c=new Ee;s.ray.intersectPlane(this._levelPlane,c),c&&this._navigationMap.moveCamera(c).then(function(){i.draw()})}}}},{key:"processMouseMove",value:function(){if(this._isHeightLevelMode){var n=this._viewport,i=n.projector.pickingRay(n.getNDCVector(),n.camera);$(this._viewport.domElement).trigger("mouseMoveNavigationMapHeightLevel",{height:i.ray.origin.y})}}},{key:"canStartDrag",value:function(){return!0}},{key:"startPan",value:function(n){var i=this._viewport;H5(t,"startPan",this,3)([n]),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,i.renderQueue.setInteractionMode(!1),i.renderQueue.clear(),i.renderQueue.setInteractionMode(!0),i.draw();var s=this._isHeightLevelMode?this._crossSectionPlane:this._levelPlane,c=i.projector.pickingRay(i.getNDCVector(),i.camera),u=new Ee;c.ray.intersectPlane(s,u)&&(this._startDragWorldPosition=u),this.processPan(n)}},{key:"finishPan",value:function(){H5(t,"finishPan",this,3)([])}},{key:"isPaning",value:function(){return H5(t,"isPaning",this,3)([])}},{key:"processPan",value:function(n){var i=this._viewport;if(this.canProcessInputEvent(n)){var s=this._isHeightLevelMode?this._crossSectionPlane:this._levelPlane,c=i.projector.pickingRay(i.getNDCVector(),i.camera),u=new Ee;if(c.ray.intersectPlane(s,u)){var m=new Ee;m.subVectors(this._startDragWorldPosition,u),i.controls.object.position.add(m),i.controls.target.add(m)}i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),i.camera.lookAt(i.controls.target),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,n.preventDefault(),n.stopPropagation(),i.draw()}}},{key:"supportsGPUPicking",value:function(){return!1}}])}(eN);function hU(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,i)}return n}function CL(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?hU(Object(n),!0).forEach(function(i){Nl(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):hU(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function fU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(fU=function(){return!!e})()}var lse=function(e){function t(){var n;return zi(this,t),n=function(i,s,c){return s=xi(s),ba(i,fU()?Reflect.construct(s,c||[],xi(i).constructor):s.apply(i,c))}(this,t),n._sectionSettingsRooms={showFaces:!0,faceColor:"rgb(0,0,0)",faceOpacity:1,showEdges:!0,edgeColor:"rgb(128,128,128)",edgeOpacity:1,edgeThickness:30,useObjectColorAndOpacity:!0,parallelPlaneDistance:0,sectionBoxXDistance:0,sectionBoxYDistance:0,sectionBoxZDistance:0,sectionCutPlaneOption:C5},n}return va(t,e),Si(t,[{key:"requestSectionCuts",value:function(n,i,s){return Promise.all(ST(this.getSplitPromises(n,i,s)))}},{key:"getSplitPromises",value:function(n,i,s){var c=i.modelLayer.filter(function(v){return v.id===o1.Rooms}),u=i.modelLayer.filter(function(v){return v.id!==o1.Rooms&&U7.isInternalLayer(v.id)===!1}),m=[];return c.length>0&&(i.settings.edges=this._sectionSettingsRooms.showEdges,i.settings.edgesThickness=this._sectionSettingsRooms.edgeThickness,m.push(n.apiCallForOneObject(CL(CL({},i),{},{modelLayer:c}),this._sectionSettingsRooms))),u.length>0&&m.push(n.apiCallForOneObject(CL(CL({},i),{},{modelLayer:u}),s)),m}}])}(EW),M0=function(e,t,n){this._viewport=new hS({camera:{type:"orthographic",left:-.5,right:.5,top:.5,bottom:-.5,near:-1e3,far:1e3},controls:{type:"NavigationMapViewControl"},settings:e,units:this.currentUnits,domElementId:n,name:"navigationMapViewport",ssaoSupported:!1,shadowsSupported:!1,disableTransformControls:!0,persistentClippingPlaneSettings:!1}),this._sectionCutsLoader=new CW(t,this._viewport,new lse),this._rendererProject=null,this._viewport.renderQueue.useCulling=!1,this._viewport.renderQueue.useInteractionModeVertexCount=!1,this._viewport.brightness=.2,this._viewport.contrast=.5,this._mainViewport=null,this._mainCamera=null,this._cameraHelper=null,this._levelPlane=new br(new Ee(0,1,0),0),this._cameraHelperType=null;var i=[new Ee(0,0,-1),new Ee(0,0,1)],s=new Ys().setFromPoints(i);this._previewPlane=this._levelPlane.clone();var c=[new Ee(0,0,-1),new Ee(0,0,1)],u=new Ys().setFromPoints(c),m=new c0({color:240116,opacity:1});this._previewPlaneLine=new Ua(u,m),this._previewPlaneLine.computeLineDistances(),this._planeLine=new Ua(s,m),this._planeLine.computeLineDistances(),this._heightLevel=0,this._isHeightLevelMode=!1,this._heightLevelModeChangedCallback=null,this._isLoadingChangedCallback=null,this._isLoading=!1,this._isVisible=!0,this._deferredUpdate=!1,this._sectionSettings={showFaces:!0,faceColor:"rgb(0,0,0)",faceOpacity:1,showEdges:!1,edgeColor:"rgb(0,0,0)",edgeOpacity:1,edgeThickness:1,useObjectColorAndOpacity:!1,parallelPlaneDistance:0,sectionBoxXDistance:0,sectionBoxYDistance:0,sectionBoxZDistance:0,sectionCutPlaneOption:C5},M0.prototype.addEventListeners=function(){$(this._viewport.domElement).on("clickedNavigationMapHeightLevel",{self:this},this.onClickedNavigationMapHeightLevel),$(this._viewport.domElement).on("mouseMoveNavigationMapHeightLevel",{self:this},this.onMouseMoveNavigationMapHeightLevel),$(this._viewport.domElement).on("mouseenter",{self:this},this.onMouseenter),$(this._viewport.domElement).on("mouseleave",{self:this},this.onMouseleave)},M0.prototype.removeEventListeners=function(){$(this._viewport.domElement).off("clickedNavigationMapHeightLevel",this.onClickedNavigationMapHeightLevel),$(this._viewport.domElement).off("mouseMoveNavigationMapHeightLevel",this.onMouseMoveNavigationMapHeightLevel),$(this._viewport.domElement).off("mouseenter",this.onMouseenter),$(this._viewport.domElement).off("mouseleave",this.onMouseleave)},M0.prototype.onClickedNavigationMapHeightLevel=function(v,M){var w=v.data.self;M.height!==void 0&&(w.getHeightLevelMode()&&w.setHeightLevelMode(!1),w.setHeightLevel(M.height),w.setCameraHeightToHeightLevel())},M0.prototype.onMouseMoveNavigationMapHeightLevel=function(v,M){var w=v.data.self;if(w._previewPlaneLine&&M.height!==void 0){w._previewPlane.constant=-M.height;var P=new Ee;P=w._previewPlane.coplanarPoint(P),w._previewPlaneLine.position.y=P.y,w._viewport.draw()}},M0.prototype.onMouseenter=function(v){var M=v.data.self;M._previewPlaneLine&&M.getHeightLevelMode()&&(M._viewport.customScene.add(M._previewPlaneLine),M._viewport.draw())},M0.prototype.onMouseleave=function(v){var M=v.data.self;M._previewPlaneLine&&M.getHeightLevelMode()&&(M._viewport.customScene.remove(M._previewPlaneLine),M._viewport.draw())},M0.prototype.dispose=ee(ge().mark(function v(){return ge().wrap(function(M){for(;;)switch(M.prev=M.next){case 0:if(this._previewPlaneLine.geometry.dispose(),this._planeLine.geometry.dispose(),!this._viewport){M.next=5;break}return M.next=5,this._viewport.dispose();case 5:this.removeEventListeners(),this._mainViewport&&(this._mainViewport.objectSetChangedCallback=null);case 7:case"end":return M.stop()}},v,this)})),M0.prototype.initialize=function(){var v=ee(ge().mark(function M(w){var P,q;return ge().wrap(function(Z){for(;;)switch(Z.prev=Z.next){case 0:return P=w.getContent(),this._rendererProject=P,(q=this._viewport).setContent(P),this.setCameraHelperType(w.camera.type),w.getDisciplineNodeMeshes().copyTo(q.getDisciplineNodeMeshes()),P.viewports.push(q),P.getObjectsContainer().initObjects(q),q.getDisciplineNodeMeshes().updateWebGLBuffers(q),this.setViewportSize(),this.setHeightLevel(w.camera.position.y),Z.next=13,this.setMainViewport(w);case 13:return Z.next=15,this.setupMapMode();case 15:this.addEventListeners();case 16:case"end":return Z.stop()}},M,this)}));return function(M){return v.apply(this,arguments)}}(),M0.prototype.setCameraHelperType=function(v){this._cameraHelperType=v},M0.prototype.getCameraHelperType=function(){return this._cameraHelperType},M0.prototype.updateNavigationMapProjectionMode=function(){var v=ee(ge().mark(function M(w){var P;return ge().wrap(function(q){for(;;)switch(q.prev=q.next){case 0:if(this.setCameraHelperType(w.camera.type),this._mainViewport=w,this._mainCamera=w.camera.clone(),this._mainCamera.far=3*w.dynamicDrawRange._geoBoundingSphere.radius,w.camera.type=="orthographic"&&(P=this._mainCamera.far/2,this._mainCamera.left=P*w.camera.aspect/-2,this._mainCamera.right=P*w.camera.aspect/2,this._mainCamera.bottom=P/-2,this._mainCamera.top=P/2),this._viewport.customScene.remove(this._cameraHelper),this._cameraHelper=new $8(this._mainCamera),this._viewport.controls.setMainViewport(w),this._viewport.controls.setNavigationMap(this),this._viewport.controls.setHeightLevel(this._heightLevel),this._viewport.drawSynchronous(),this._isHeightLevelMode){q.next=14;break}return q.next=14,this.setupMapMode();case 14:case"end":return q.stop()}},M,this)}));return function(M){return v.apply(this,arguments)}}(),M0.prototype.setMainViewport=function(){var v=ee(ge().mark(function M(w){var P,q,Z,K,he=this;return ge().wrap(function(le){for(;;)switch(le.prev=le.next){case 0:return this._mainViewport=w,this._mainCamera=w.camera.clone(),this._cameraHelper=new $8(this._mainCamera),this._viewport.controls.setMainViewport(w),this._viewport.controls.setNavigationMap(this),this._viewport.controls.setHeightLevel(this._heightLevel),w.objectSetChangedCallback=function(pe){pe=="workingObjects"&&he.synchronizeWorkingObjects()},this.synchronizeWorkingObjects(),this._viewport.drawSynchronous(),le.next=11,this.setupMapMode();case 11:P=this._viewport.getContentBoundingBox(),q=mi.getStartPointOfLine(this._previewPlaneLine),Z=mi.getEndPointOfLine(this._previewPlaneLine),q.z=P.getCenterZ()-P.getDepth(),q.x=P.getCenterX(),Z.z=P.getCenterZ()+P.getDepth(),Z.x=P.getCenterX(),K=[q,Z],this._previewPlaneLine.geometry.setFromPoints(K),this._previewPlaneLine.geometry.verticesNeedUpdate=!0,this._previewPlaneLine.geometry.lineDistancesNeedUpdate=!0,this._previewPlaneLine.computeLineDistances(),this._viewport.content&&this._mainViewport.content&&(this._viewport.content.getDivisions().visibleDivisions=this._mainViewport.content.getDivisions().visibleDivisions.splice(0)),this._mainViewport.afterDrawCallback=function(){he._mainCamera.copy(he._mainViewport.camera),he._mainCamera.updateProjectionMatrix(),he._mainCamera.updateMatrixWorld(),he._viewport.draw()};case 25:case"end":return le.stop()}},M,this)}));return function(M){return v.apply(this,arguments)}}(),M0.prototype.getMainViewport=function(){return this._mainViewport},M0.prototype.registerHeightLevelModeChangedCallback=function(v){this._heightLevelModeChangedCallback=v},M0.prototype.registerIsLoadingChangedCallback=function(v){this._isLoadingChangedCallback=v},M0.prototype.setHeightLevelMode=function(){var v=ee(ge().mark(function M(w){return ge().wrap(function(P){for(;;)switch(P.prev=P.next){case 0:if(this._isHeightLevelMode=w,this._heightLevelModeChangedCallback&&this._heightLevelModeChangedCallback(w),this._viewport.controls.setHeightLevelMode(w),!w){P.next=8;break}return P.next=6,this.setupHeightLevelMode();case 6:P.next=10;break;case 8:return P.next=10,this.setupMapMode();case 10:case"end":return P.stop()}},M,this)}));return function(M){return v.apply(this,arguments)}}(),M0.prototype.getHeightLevelMode=function(){return this._isHeightLevelMode},M0.prototype.getProject=function(){return this._rendererProject},M0.prototype.isLoading=function(){return this._isLoading},M0.prototype.setupHeightLevelMode=ee(ge().mark(function v(){var M;return ge().wrap(function(w){for(;;)switch(w.prev=w.next){case 0:return M=this._viewport,this._viewport.brightness=0,this._viewport.contrast=1,M.controls.setHeightLevelMode(!0),M.customScene.remove(this._cameraHelper),M.customScene.add(this._planeLine),M.customScene.add(this._previewPlaneLine),M.clippingPlanes.setEnabled(!1),w.next=10,M.setCameraResetAxis("x");case 10:case"end":return w.stop()}},v,this)})),M0.prototype.setupMapMode=ee(ge().mark(function v(){var M,w;return ge().wrap(function(P){for(;;)switch(P.prev=P.next){case 0:return M=this._viewport,this._viewport.brightness=.2,this._viewport.contrast=.5,M.customScene.remove(this._planeLine),M.customScene.remove(this._previewPlaneLine),this._viewport.emptySectionCutSceneForSectionCutGeometry(),this._viewport.draw(),P.next=9,M.setCameraResetAxis("y");case 9:return M.controls.setHeightLevelMode(!1),M.customScene.add(this._cameraHelper),w=new Ee(0,this._heightLevel,0),M.clippingPlanes.setSectionPlane(this._levelPlane,w,!1,!0),M.clippingPlanes.setEnabled(!0),M.clippingPlanes.setVisible(!1,0),P.next=17,this.updateSectionCuts();case 17:case"end":return P.stop()}},v,this)})),M0.prototype.setHeightLevel=function(v){this._heightLevel=v;var M=this._viewport;M.controls.setHeightLevel(v),this._levelPlane.constant=-v;var w=new Ee;w=this._levelPlane.coplanarPoint(w);var P=this._viewport.getContentBoundingBox(),q=mi.getStartPointOfLine(this._planeLine),Z=mi.getEndPointOfLine(this._planeLine);q.z=P.getCenterZ()-P.getDepth(),q.y=w.y,q.x=P.getCenterX(),Z.z=P.getCenterZ()+P.getDepth(),Z.y=w.y,Z.x=P.getCenterX();var K=[q,Z];this._planeLine.geometry.setFromPoints(K),this._planeLine.geometry.verticesNeedUpdate=!0,this._planeLine.geometry.lineDistancesNeedUpdate=!0,this._planeLine.computeLineDistances(),M.draw()},M0.prototype.setHeightLevelToCameraHeight=function(){this.setHeightLevel(this._mainViewport.camera.position.y)},M0.prototype.setCameraHeightToHeightLevel=ee(ge().mark(function v(){var M,w;return ge().wrap(function(P){for(;;)switch(P.prev=P.next){case 0:return M=this._viewport,(w=this._mainViewport.camera.position.clone()).y=this._heightLevel,P.next=5,this.moveCamera(w);case 5:M.draw();case 6:case"end":return P.stop()}},v,this)})),M0.prototype.moveCamera=function(v){if(this._mainViewport.isCameraFlightInProgress())return Promise.resolve();var M=new Ee(v.x,v.y,v.z),w=new Ee().subVectors(this._mainViewport.controls.target,this._mainViewport.camera.position),P=w.length();w.normalize();var q=new Ee(0,1,0),Z=w.clone().projectOnPlane(q).normalize(),K=new Ee().addVectors(M,Z.clone().multiplyScalar(P)),he=new qi().lookAt(v,K,q),le=new Ci().setFromRotationMatrix(he);return L0.cameraFlyTo(this._mainViewport.camera,this._mainViewport.controls,this._mainViewport,M,K,q,le)},M0.prototype.resetView=function(){this._viewport.camera.zoom=1,this._viewport.restoreViewbox()},M0.prototype.setViewportSize=function(){var v=this._viewport,M=v.getContentBoundingBox();if(M){var w=M.isValid()?.5*Math.max(M.getWidth(),M.getDepth()):0;v.drawDisabled=!0,v.setViewportSize(),v.drawDisabled=!1,v.camera.left=-w*v.camera.aspect,v.camera.right=w*v.camera.aspect,v.camera.top=w,v.camera.bottom=-w,v.camera.updateProjectionMatrix(),v.camera.updateMatrixWorld(),v.draw()}}};M0.prototype.setLoading=function(e){this._isLoading=e,this._isLoadingChangedCallback&&this._isLoadingChangedCallback(this._isLoading)},M0.prototype.setVisible=function(e){this._isVisible=e,this._viewport.noRender=!e,this._viewport.draw()},M0.prototype.updateSectionCuts=ee(ge().mark(function e(){return ge().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(this._rendererProject&&this._isLoading!==!0){t.next=3;break}return this._deferredUpdate=!0,t.abrupt("return");case 3:return this.setLoading(!0),t.prev=4,t.next=7,this._sectionCutsLoader.loadSectionCuts(this._rendererProject,this._viewport,this._sectionSettings,!1);case 7:t.next=12;break;case 9:t.prev=9,t.t0=t.catch(4),console.error(t.t0);case 12:if(this.setLoading(!1),this._deferredUpdate!==!0){t.next=17;break}return this._deferredUpdate=!1,t.next=17,this.updateSectionCuts();case 17:this._viewport.draw();case 18:case"end":return t.stop()}},e,this,[[4,9]])})),M0.prototype.synchronizeWorkingObjects=function(){this._viewport.objectSets.workingObjects=this._mainViewport.objectSets.workingObjects.slice(),this._viewport.restoreWorkingObjectsCustomColors(),this._viewport.draw()};let cse=M0;function mU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(mU=function(){return!!e})()}function lO(e,t,n,i){var s=Q1(xi(1&i?e.prototype:e),t,n);return 2&i&&typeof s=="function"?function(c){return s.apply(n,c)}:s}var use=function(e){function t(n){var i;return zi(this,t),i=function(s,c,u){return c=xi(c),ba(s,mU()?Reflect.construct(c,u||[],xi(s).constructor):c.apply(s,u))}(this,t,[n]),i._prevDragPosition=new Ai,i._startDragWorldPosition=new Ee,i._pinchToZoomCenterX=0,i._pinchToZoomCenterY=0,i._pinchDistance=null,i._levelPlane=new br(new Ee(0,0,1),0),i._fileView=null,i}return va(t,e),Si(t,[{key:"getOverlayElement",value:function(){var n;return(n=this._fileView)===null||n===void 0?void 0:n.overlayMeshElement}},{key:"reset",value:function(){lO(t,"reset",this,3)([]),this._prevDragPosition=new Ai,this._startDragWorldPosition=new Ee,this._pinchToZoomCenterX=0,this._pinchToZoomCenterY=0,this._pinchDistance=null}},{key:"setFileView",value:function(n){this._fileView=n}},{key:"startDrag",value:function(n,i){if(this.canProcessInputEvent(i)){var s=this._viewport;lO(t,"startDrag",this,3)([n,i]),this._prevDragPosition.x=s.mouse.x,this._prevDragPosition.y=s.mouse.y,s.renderQueue.setInteractionMode(!1),s.renderQueue.clear(),s.renderQueue.setInteractionMode(!0),s.draw();var c=s.projector.pickingRay(s.getNDCVector(),s.camera),u=new Ee;c.ray.intersectPlane(this._levelPlane,u)&&(this._startDragWorldPosition=u),this.processDrag(i)}}},{key:"processDrag",value:function(n){this._mouseButton!==2&&this._mouseButton!==1||this._processDragMove(n)}},{key:"finishDrag",value:function(n){lO(t,"finishDrag",this,3)([n])}},{key:"isDragging",value:function(){return lO(t,"isDragging",this,3)([])}},{key:"canProcessInputEvent",value:function(n){var i=this._viewport.getContentBoundingBox();return!(!i||i.getWidth()===0||i.getHeight()===0||i.getDepth()===0)||(n.preventDefault(),n.stopPropagation(),!1)}},{key:"_processDragMove",value:function(n){if(this.canProcessInputEvent(n)){var i=this._viewport,s=i.projector.pickingRay(i.getNDCVector(),i.camera),c=new Ee;if(s.ray.intersectPlane(this._levelPlane,c)){var u=new Ee;u.subVectors(this._startDragWorldPosition,c),i.controls.object.position.add(u),i.controls.target.add(u)}i.camera.lookAt(i.controls.target),i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,this._viewport.draw()}}},{key:"processMouseWheel",value:function(n,i){if(this.canProcessInputEvent(i)&&n!==0){var s=this._viewport;s.checkSelectionMode("selectPointsForOverlay")&&s.currentInteractor.processMouseWheel(i),this.processOrthographicMouseWheel(n,this._levelPlane)}}},{key:"startPinch",value:function(){var n=this._viewport;this._pinchToZoomCenterX=n.mouse.x,this._pinchToZoomCenterY=n.mouse.y}},{key:"finishPinch",value:function(){this._pinchDistance=null}},{key:"processPinch",value:function(n){if(this.canProcessInputEvent(n)){var i=this._viewport;i.controls.noZoom=!0;var s=n.originalEvent.touches[0].clientX-n.originalEvent.touches[1].clientX,c=n.originalEvent.touches[0].clientY-n.originalEvent.touches[1].clientY,u=Math.sqrt(s*s+c*c),m=lO(t,"roundToStep",this,3)([u,5]);if(this._pinchDistance!==null){var v=m-this._pinchDistance;if(this._pinchDistance=m,v<0)v=.95;else{if(!(v>0))return;v=1.05}i.camera.zoom*=v,i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),n.preventDefault(),n.stopPropagation(),i.controls.noZoom=!0,i.draw()}else this._pinchDistance=m}}},{key:"processClick",value:function(n){var i=this._viewport;i.isCameraFlightInProgress()||this.canProcessInputEvent(n)&&i.checkSelectionMode("selectPointsForOverlay")&&i.currentInteractor.processMouseClick(n)}},{key:"processMouseMove",value:function(){}},{key:"canStartDrag",value:function(){return!0}},{key:"startPan",value:function(n){var i=this._viewport;lO(t,"startPan",this,3)([n]),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,i.renderQueue.setInteractionMode(!1),i.renderQueue.clear(),i.renderQueue.setInteractionMode(!0),i.draw();var s=i.projector.pickingRay(i.getNDCVector(),i.camera),c=new Ee;s.ray.intersectPlane(this._levelPlane,c)&&(this._startDragWorldPosition=c),this.processPan(n)}},{key:"finishPan",value:function(){lO(t,"finishPan",this,3)([])}},{key:"isPaning",value:function(){return lO(t,"isPaning",this,3)([])}},{key:"processPan",value:function(n){var i=this._viewport;if(this.canProcessInputEvent(n)){var s=i.projector.pickingRay(i.getNDCVector(),i.camera),c=new Ee;if(s.ray.intersectPlane(this._levelPlane,c)){var u=new Ee;u.subVectors(this._startDragWorldPosition,c),i.controls.object.position.add(u),i.controls.target.add(u)}i.camera.lookAt(i.controls.target),i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,n.preventDefault(),n.stopPropagation(),i.draw()}}},{key:"supportsGPUPicking",value:function(){return!1}}])}(eN),dse=function(){return Si(function n(i,s,c){zi(this,n),this._viewport=new hS({camera:{type:"orthographic",left:-.5,right:.5,top:.5,bottom:-.5,near:-1e3,far:1e3,position:{x:0,y:0,z:2e3}},controls:{type:"FileViewControl",target:{x:0,y:0,z:0}},settings:i,domElementId:c,name:"fileViewViewport",ssaoSupported:!1,shadowsSupported:!1,disableTransformControls:!0}),this._api=s,this._glbParser=new DW(this._viewport),this._viewport.controls.setFileView(this),this._isLoadingChangedCallback=null,this._isLoading=!1,this._isVisible=!0,this._fileData=null,this.overlayMeshElement=null,this.scene=this._viewport.overlays.scene},[{key:"dispose",value:(t=ee(ge().mark(function n(){return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:if(!this._viewport){i.next=3;break}return i.next=3,this._viewport.dispose();case 3:case"end":return i.stop()}},n,this)})),function(){return t.apply(this,arguments)})},{key:"registerIsLoadingChangedCallback",value:function(n){this._isLoadingChangedCallback=n}},{key:"isLoading",value:function(){return this._isLoading}},{key:"resetView",value:function(){var n;this._viewport.camera.zoom=1,this._viewport.camera.position.set(0,0,this.CAMERA_OFFSET),this._viewport.controls.target.set(0,0,0),(n=this._viewport.currentInteractor)===null||n===void 0||n.resizeMatchPointsDimension(),this._viewport.camera.updateProjectionMatrix(),this._viewport.camera.updateMatrixWorld(),this._viewport.draw()}},{key:"getBoundingBox",value:function(){var n=new iO,i=new si;return this._tempBoundingBox=mi.calculateVisibleGeometryBoundingBox(this.scene,i),i.isEmpty()===!1&&n.expandByBox3(i),n}},{key:"setViewportSize",value:function(){var n=this._viewport,i=this.getBoundingBox();if(i){var s=i.isValid()?.8*Math.max(i.getWidth(),i.getDepth(),i.getHeight()):0;n.drawDisabled=!0,n.setViewportSize(),n.drawDisabled=!1,n.camera&&(n.camera.left=-s*n.camera.aspect,n.camera.right=+s*n.camera.aspect,n.camera.top=+s,n.camera.bottom=-s,n.camera.updateProjectionMatrix(),n.camera.updateMatrixWorld()),n.draw()}}},{key:"setLoading",value:function(n){this._isLoading=n,this._isLoadingChangedCallback&&this._isLoadingChangedCallback(this._isLoading)}},{key:"setVisible",value:function(n){this._isVisible=n,this._viewport.noRender=!n,this._viewport.draw()}},{key:"getFileData",value:function(){return this._fileData&&(this._fileData.boundingBox=this.getBoundingBox()),this._fileData}},{key:"setFileData",value:function(n){this._fileData=n}},{key:"getViewport",value:function(){return this._viewport}},{key:"loadFileContent",value:(e=ee(ge().mark(function n(){var i,s;return ge().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:if(console.debug("[Renderer] FileView - loadFileContent called: fileData = ",this._fileData),this._isLoading!==!0){c.next=3;break}return c.abrupt("return");case 3:return c.prev=3,this.setLoading(!0),DT.clearScene(this.scene),this.overlayMeshElement=null,this._viewport.draw(),c.next=10,this._api.objects.getGLB(this._fileData.id,this._fileData.version);case 10:return i=c.sent,c.next=13,this._glbParser.parseGLB(i,this._fileData.id);case 13:(s=c.sent).isGroup&&j7.addBorderMesh(s,this._fileData.id),this.overlayMeshElement=this._viewport.objectFactory.createVisualObject({id:s.id,mesh:s.isGroup?s.borderMesh:s}),this.scene.add(s),this._viewport.draw(),c.next=24;break;case 20:throw c.prev=20,c.t0=c.catch(3),console.error(c.t0),c.t0;case 24:return c.prev=24,this.setLoading(!1),c.finish(24);case 27:case"end":return c.stop()}},n,this,[[3,20,24,27]])})),function(){return e.apply(this,arguments)})}]);var e,t}();function pse(){this.valueValidator=new g7;var e=!1,t=!1,n=!1,i=!1,s="rgb(255,255,255)",c="rgb(153,153,153)",u=.6108652381980153,m=.8726646259971648,v="ambientOcclusionSettings";this._usage=null,this._usageForInteraction=null,this._useShadows=null,this._useShadowsForInteraction=null,this._lightColor=null,this._ambientLightColor=null,this._lightRotation=null,this._lightElevation=null,this._getLocalStorageData=function(){return localStorage.getItem(v)?JSON.parse(localStorage.getItem(v)):this.resetToDefault()},this._setLocalStorageData=function(){var M={usage:this._usage,usageForInteraction:this._usageForInteraction,lightColor:this._lightColor.getStyle(),ambientLightColor:this._ambientLightColor.getStyle(),lightRotation:this._lightRotation,lightElevation:this._lightElevation,useShadows:this._useShadows,useShadowsForInteraction:this._useShadowsForInteraction};localStorage.setItem(v,JSON.stringify(M))},this.invalidate=function(){this._usage=null,this._usageForInteraction=null,this._lightColor=null,this._ambientLightColor=null,this._lightRotation=null,this._lightElevation=null,this._useShadows=null,this._useShadowsForInteraction=null},this.getUsage=function(){if(this._usage!==null)return this._usage;var M=this._getLocalStorageData();return this._usage=this.valueValidator.validateBoolean(M.usage,e),this._usage},this.getUsageForInteraction=function(){if(this._usageForInteraction!==null)return this._usageForInteraction;var M=this._getLocalStorageData();return this._usageForInteraction=this.valueValidator.validateBoolean(M.usageForInteraction,t),this._usageForInteraction},this.getUseShadows=function(){if(this._useShadows!==null)return this._useShadows;var M=this._getLocalStorageData();return this._useShadows=this.valueValidator.validateBoolean(M.useShadows,n),this._useShadows},this.getUseShadowsForInteraction=function(){if(this._useShadowsForInteraction!==null)return this._useShadowsForInteraction;var M=this._getLocalStorageData();return this._useShadowsForInteraction=this.valueValidator.validateBoolean(M.useShadowsForInteraction,i),this._useShadowsForInteraction},this.getLightColor=function(){if(this._lightColor)return this._lightColor;var M=this._getLocalStorageData();return this._lightColor=this.valueValidator.validateColor(M.lightColor,s),this._lightColor},this.getAmbientLightColor=function(){if(this._ambientLightColor)return this._ambientLightColor;var M=this._getLocalStorageData();return this._ambientLightColor=this.valueValidator.validateColor(M.ambientLightColor,c),this._ambientLightColor},this.getLightElevation=function(){if(this._lightElevation)return this._lightElevation;var M=this._getLocalStorageData();return this._lightElevation=this.valueValidator.validateFloat(M.lightElevation,m),this._lightElevation},this.getLightRotation=function(){if(this._lightRotation)return this._lightRotation;var M=this._getLocalStorageData();return this._lightRotation=this.valueValidator.validateFloat(M.lightRotation,u),this._lightRotation},this.resetToDefault=function(){return this._usage=e,this._usageForInteraction=t,this._useShadows=n,this._useShadowsForInteraction=i,this._lightColor=new ri(s),this._ambientLightColor=new ri(c),this._lightElevation=m,this._lightRotation=u,this._setLocalStorageData(),this.get()},this.get=function(){return{usage:this.getUsage(),usageForInteraction:this.getUsageForInteraction(),useShadows:this.getUseShadows(),useShadowsForInteraction:this.getUseShadowsForInteraction(),lightColor:this.getLightColor(),ambientLightColor:this.getAmbientLightColor(),lightRotation:this.getLightRotation(),lightElevation:this.getLightElevation()}},this.set=function(M){this._usage=this.valueValidator.validateBoolean(M.usage,e),this._usageForInteraction=this.valueValidator.validateBoolean(M.usageForInteraction,t),this._useShadows=this.valueValidator.validateBoolean(M.useShadows,n),this._useShadowsForInteraction=this.valueValidator.validateBoolean(M.useShadowsForInteraction,i),this._lightColor=this.valueValidator.validateColor(M.lightColor,s),this._ambientLightColor=this.valueValidator.validateColor(M.ambientLightColor,c),this._lightElevation=this.valueValidator.validateFloat(M.lightElevation,m),this._lightRotation=this.valueValidator.validateFloat(M.lightRotation,u),this._setLocalStorageData()}}let hse=function(){return Si(function e(t){zi(this,e),this.viewport=t,this.scene=new ke,this.scene.name="localCoordSystemScene",this.labelsScene=new ke,this.labelsScene.name="localCoordSystemLabelScene",this.localCoordSystem=null},[{key:"worldToLocal",value:function(e){if(!this.localCoordSystem)return e;var t=new Ee;return t.copy(e),this.localCoordSystem.worldToLocal(t)}},{key:"localToWorld",value:function(e){if(!this.localCoordSystem)return e;var t=new Ee;return t.copy(e),this.localCoordSystem.localToWorld(t)}},{key:"reset",value:function(){DT.clearScene(this.scene),DT.clearScene(this.labelsScene),this.localCoordSystem&&this.localCoordSystem.dispose(),this.localCoordSystem=null}},{key:"set",value:function(e){this.localCoordSystem=e}},{key:"hasLCS",value:function(){return this.localCoordSystem}},{key:"render",value:function(){this.viewport.isMarkupMode()&&(this.viewport.renderer.sortObjects=!0,this.viewport.renderer.render(this.scene,this.viewport.camera),this.viewport.renderer.sortObjects=!1)}},{key:"dispose",value:function(){this.reset()}}])}();function LT(e,t){var n=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(v,M){if(v){if(typeof v=="string")return bU(v,M);var w={}.toString.call(v).slice(8,-1);return w==="Object"&&v.constructor&&(w=v.constructor.name),w==="Map"||w==="Set"?Array.from(v):w==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(w)?bU(v,M):void 0}}(e))||t&&e&&typeof e.length=="number"){n&&(e=n);var i=0,s=function(){};return{s,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(v){throw v},f:s}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
5603
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var c,u=!0,m=!1;return{s:function(){n=n.call(e)},n:function(){var v=n.next();return u=v.done,v},e:function(v){m=!0,c=v},f:function(){try{u||n.return==null||n.return()}finally{if(m)throw c}}}}function aU(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=Array(t);n<t;n++)i[n]=e[n];return i}function oU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(oU=function(){return!!e})()}var ase=function(e){function t(Fe,Pe){var Ve;return zi(this,t),Ve=function(ot,Ct,Et){return Ct=xi(Ct),ba(ot,oU()?Reflect.construct(Ct,Et||[],xi(ot).constructor):Ct.apply(ot,Et))}(this,t,[Pe]),Ve.api=Fe,Ve.nodePromises={},Ve.errorHandler=null,Ve.canceled=!1,Ve.modelObjectsPromises={},Ve.modelTooDistantHandler=null,Ve.initialVisiblityProvider=null,Ve}return va(t,e),Si(t,[{key:"resetState",value:function(){this.nodePromises={},this.modelObjectsPromises={},this.canceled=!1}},{key:"loadProject",value:(Ge=ee(ge().mark(function Fe(Pe){var Ve,ot,Ct,Et;return ge().wrap(function(_t){for(;;)switch(_t.prev=_t.next){case 0:return Ve=this,ot=new Z7(this._viewport),_t.next=4,ot.initializeDisciplineNodeStore();case 4:return this.nodePromises={},this.modelObjectsPromises={},this._viewport.setContent(ot),_t.prev=7,_t.next=10,Ve.api.projects.get(Pe);case 10:Ct=_t.sent,ot.parseProjectDetailsResponse(Ct),_t.next=17;break;case 14:throw _t.prev=14,_t.t0=_t.catch(7),new Error(_t.t0);case 17:return _t.next=19,Ve.checkModelsModified(ot.getModels());case 19:return _t.prev=19,_t.next=22,Ve.api.projects.getTopology(Pe);case 22:Et=_t.sent,ot.parseProjectTopologyResponse(Et),_t.next=29;break;case 26:throw _t.prev=26,_t.t1=_t.catch(19),new Error(_t.t1);case 29:return _t.abrupt("return",ot);case 30:case"end":return _t.stop()}},Fe,this,[[7,14],[19,26]])})),function(Fe){return Ge.apply(this,arguments)})},{key:"loadModel",value:(Ne=ee(function(Fe,Pe,Ve){var ot=this,Ct=!(arguments.length>3&&arguments[3]!==void 0)||arguments[3],Et=arguments.length>4&&arguments[4]!==void 0?arguments[4]:void 0;return ge().mark(function _t(){var Zt,Pt,sn,On,kn;return ge().wrap(function(_n){for(;;)switch(_n.prev=_n.next){case 0:if(Pe.topologyLoaded!==!1){_n.next=12;break}return _n.prev=1,Zt=Pe.getCurrentRevision(),_n.next=5,ot.api.objects.getTopology(Pe.divisionTopologyId,Zt,!0,!1);case 5:Pt=_n.sent,Fe.parseProjectTopologyResponse(Pt,Zt),_n.next=12;break;case 9:throw _n.prev=9,_n.t0=_n.catch(1),new Error(_n.t0);case 12:if(ot.modelObjectsPromises[Pe.divisionTopologyId]||Ct!==!0||(ot.modelObjectsPromises[Pe.divisionTopologyId]=ot._loadModelObjectsTree(Pe,Et)),(sn=Ve||Pe.getLayerArray().filter(function(Jn){return!Jn.isInternal()}))&&sn.length!==0){_n.next=16;break}return _n.abrupt("return");case 16:if(!ot.initialVisiblityProvider){_n.next=25;break}return On=[],Pe.forEachLayer(function(Jn){On.push(Jn.setVisible(ot.initialVisiblityProvider.getModelLayerVisibility(Jn)))}),_n.next=21,Promise.all(On);case 21:return On=[],Pe.forEachTopologyLeafNode(function(Jn){On.push(Jn.setVisible(ot.initialVisiblityProvider.getNodeVisibility(Jn)))}),_n.next=25,Promise.all(On);case 25:return kn=[],sn.forEach(function(Jn){Jn.geometryLoaded===!1&&(Jn.geometryLoaded=!0,kn.push(ot._loadModelLayerGeometryCumulated(Fe,Jn,void 0)))}),_n.next=29,Promise.all(kn).catch(function(){throw new Error});case 29:Fe.getObjectsContainer().updateObjectsIndex(),Fe.resetWebGLBufferTimestamps(),ot._viewport.renderGPUPickTextureNeeded();case 32:case"end":return _n.stop()}},_t,null,[[1,9]])})()}),function(Fe,Pe,Ve){return Ne.apply(this,arguments)})},{key:"loadModelLayers",value:(Ce=ee(ge().mark(function Fe(Pe,Ve){var ot;return ge().wrap(function(Ct){for(;;)switch(Ct.prev=Ct.next){case 0:if(Ve&&Ve.length!==0){Ct.next=2;break}return Ct.abrupt("return");case 2:return ot=Ve[0].getModel(),Ct.abrupt("return",this.loadModel(Pe,ot,Ve));case 4:case"end":return Ct.stop()}},Fe,this)})),function(Fe,Pe){return Ce.apply(this,arguments)})},{key:"_loadClashFilters",value:(Ie=ee(ge().mark(function Fe(Pe,Ve){var ot,Ct,Et,_t,Zt=this;return ge().wrap(function(Pt){for(;;)switch(Pt.prev=Pt.next){case 0:if(ot=[],!Ve||Pe==null||!Pe.id){Pt.next=13;break}return Pt.prev=2,Pt.next=5,this.api.clashDetection.getAllClashRules(Pe.id);case 5:ot=Pt.sent,Pt.next=11;break;case 8:throw Pt.prev=8,Pt.t0=Pt.catch(2),new Error(Pt.t0);case 11:Pt.next=22;break;case 13:return Pt.prev=13,Pt.next=16,this.api.clashDetection.getFilters();case 16:ot=Pt.sent,Pt.next=22;break;case 19:throw Pt.prev=19,Pt.t1=Pt.catch(13),new Error(Pt.t1);case 22:Ct=[],Et=ge().mark(function sn(){var On;return ge().wrap(function(kn){for(;;)switch(kn.prev=kn.next){case 0:Object.hasOwn(ot,_t)&&(On=ot[_t],Ct.push(Zt.api.clashDetection.getFilterResults(Pe.id,On.id,!0,!0).then(function(_n){Pe.parseClashFilterResponse(On.id,_n)})));case 1:case"end":return kn.stop()}},sn)}),Pt.t2=ge().keys(ot);case 25:if((Pt.t3=Pt.t2()).done){Pt.next=30;break}return _t=Pt.t3.value,Pt.delegateYield(Et(),"t4",28);case 28:Pt.next=25;break;case 30:return Pt.next=32,Promise.all(Ct).catch(function(){throw new Error});case 32:case"end":return Pt.stop()}},Fe,this,[[2,8],[13,19]])})),function(Fe,Pe){return Ie.apply(this,arguments)})},{key:"loadClashes",value:(pe=ee(ge().mark(function Fe(Pe){return ge().wrap(function(Ve){for(;;)switch(Ve.prev=Ve.next){case 0:return this.resetState(),Ve.next=3,this._loadClashFilters(Pe,!0);case 3:return Ve.abrupt("return",Pe);case 4:case"end":return Ve.stop()}},Fe,this)})),function(Fe){return pe.apply(this,arguments)})},{key:"loadTopologyNode",value:(le=ee(function(Fe,Pe,Ve){var ot=this,Ct=!(arguments.length>3&&arguments[3]!==void 0)||arguments[3],Et=arguments.length>4&&arguments[4]!==void 0?arguments[4]:void 0;return ge().mark(function _t(){var Zt;return ge().wrap(function(Pt){for(;;)switch(Pt.prev=Pt.next){case 0:if(!(Ve&&Ve.length>0)){Pt.next=4;break}return Zt=Ve[0].getModel(),Pt.next=4,ot.loadModel(Fe,Zt,Ve,Ct,Et);case 4:case"end":return Pt.stop()}},_t)})()}),function(Fe,Pe,Ve){return le.apply(this,arguments)})},{key:"_updateGLBGeometryNodeBoundingBox",value:function(Fe,Pe){Fe.getBoundingBox().expandByMinMax(Pe.min.x,Pe.min.y,Pe.min.z,Pe.max.x,Pe.max.y,Pe.max.z)}},{key:"_fullProcessGLBResponse",value:(he=ee(function(Fe,Pe,Ve,ot){var Ct=this,Et=arguments.length>4&&arguments[4]!==void 0?arguments[4]:void 0;return ge().mark(function _t(){var Zt,Pt,sn,On,kn,_n,Jn,Di,Bt,Sn,Cn,$n,en,gt,Rt,Xt,qt,St;return ge().wrap(function(Nt){for(;;)switch(Nt.prev=Nt.next){case 0:for(On in Zt={},Pt=!1,sn=Fe.getObjectsContainer()._objectRef)sn[On]?Zt[On]="exists":Zt[On]=sn[On];if(Pe.id!==o1.ClashLayer&&Pe.id!==o1.RevisionCompareLayer||(Pt=!0),(kn=new sU(Fe,Pe,Ve)).createTopologyNodes(),Ct._viewport.isReady()){Nt.next=9;break}throw new Error("viewport not ready");case 9:return _n=ot.map(function(){var bt=ee(ge().mark(function Vt(pn){var Dn,bn;return ge().wrap(function(Un){for(;;)switch(Un.prev=Un.next){case 0:return Un.next=2,pn;case 2:return Dn=Un.sent,bn={chunkData:Dn,visualObjectExistanceOfId:Zt,isClashOrRevisionCompare:Pt,properitesPanelTopologyId:Et},Un.abrupt("return",new Promise(function(Wn){var Ln;(Ln=Ct._viewport.glbProcessorWorkerQueue)===null||Ln===void 0||Ln.concurrentGlbProcessorWorkerQueue.push(bn,function(ts){Wn(ts)})}));case 5:case"end":return Un.stop()}},Vt)}));return function(Vt){return bt.apply(this,arguments)}}()),Nt.prev=10,Nt.next=13,Promise.all(_n);case 13:Jn=Nt.sent,Di=!0,Bt=rU(Jn),Nt.prev=16,Bt.s();case 18:if((Sn=Bt.n()).done){Nt.next=27;break}if(Cn=Sn.value,$n=Cn.topoNodeMessage,Object.keys($n).length){Nt.next=23;break}return Nt.abrupt("continue",25);case 23:kn.setTopoNodesBuffersAttributes($n),Di=!1;case 25:Nt.next=18;break;case 27:Nt.next=32;break;case 29:Nt.prev=29,Nt.t0=Nt.catch(16),Bt.e(Nt.t0);case 32:return Nt.prev=32,Bt.f(),Nt.finish(32);case 35:if(!Di){Nt.next=37;break}return Nt.abrupt("return");case 37:kn.createTopoNodesBuffers(),en=rU(Jn),Nt.prev=39,en.s();case 41:if((gt=en.n()).done){Nt.next=50;break}return Rt=gt.value,Xt=new Float32Array(Rt.vertices),qt=new Float32Array(Rt.boundingBoxes),St=Rt.message,Nt.next=48,kn.transferMessageToTopologyNodes(St,Xt,qt);case 48:Nt.next=41;break;case 50:Nt.next=55;break;case 52:Nt.prev=52,Nt.t1=Nt.catch(39),en.e(Nt.t1);case 55:return Nt.prev=55,en.f(),Nt.finish(55);case 58:Nt.next=63;break;case 60:Nt.prev=60,Nt.t2=Nt.catch(10),console.log("Promise all error: ",Nt.t2);case 63:return Nt.abrupt("return",kn);case 64:case"end":return Nt.stop()}},_t,null,[[10,60],[16,29,32,35],[39,52,55,58]])})()}),function(Fe,Pe,Ve,ot){return he.apply(this,arguments)})},{key:"_loadObjectGeometryGLB",value:(K=ee(ge().mark(function Fe(Pe,Ve,ot){var Ct,Et,_t,Zt,Pt,sn,On,kn,_n,Jn;return ge().wrap(function(Di){for(;;)switch(Di.prev=Di.next){case 0:return Ct=Pe.getObjectsContainer().getObject(Ve).discipline,Et={chunked:null,revision:ot,lod:0,batch:null,vertexNormals:!0,smoothingAngle:null,topology:null,edges:!1,version:null},Di.next=4,this.api.objects.getGeometryGLB(Ve,null,Et);case 4:return _t=Di.sent,Zt={id:Ve,revision:ot,divisionTopologyId:Pe.getFakeDivisionTopologyId(),visible:!0},Pt=Pe.getFakeLegacyDiscipline(Ct,ot),Pe.getGeometryNodes().initNode(Pe,Zt,Pt),sn=Pe.getGeometryNodes().getDisciplineNode(Ve,Ct),On={id:Ct},kn={node:{id:Ve},divisionTopologyId:Pe.getFakeDivisionTopologyId(),forEachTopologyLeafNode:function(Bt){Bt(this.node)}},Di.next=13,this._fullProcessGLBResponse(Pe,On,kn,[_t],Ve);case 13:_n=Di.sent;try{Jn=_n.topoNodes[Ve],Pe.createDisciplineNodeMeshes(sn,Jn.opBuffer,Jn.trBuffer,Jn.edgesBuffer),sn.bufferLength=12*(Jn.opBuffer.bufferLength+Jn.trBuffer.bufferLength),sn.revision=ot,sn.boundingBox=new si(new Ee(Jn.boundingBox.minX,Jn.boundingBox.minY,Jn.boundingBox.minZ),new Ee(Jn.boundingBox.maxX,Jn.boundingBox.maxY,Jn.boundingBox.maxZ)),Jn.dispose(),_n.topoNodes={},_n.topoNodesPointers={}}catch(Bt){console.error("Error during createDisciplineNodes then disposal in properties panel: ",Bt)}return this._viewport.setContent(Pe),this._updateGLBGeometryNodeBoundingBox(Pe,sn.boundingBox),this._viewport.noRender||this._viewport.setCameraResetAxis("xyz",!1),Di.abrupt("return",sn);case 19:case"end":return Di.stop()}},Fe,this)})),function(Fe,Pe,Ve){return K.apply(this,arguments)})},{key:"loadObject",value:(Z=ee(function(Fe,Pe){var Ve=this,ot=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;return ge().mark(function Ct(){var Et,_t,Zt;return ge().wrap(function(Pt){for(;;)switch(Pt.prev=Pt.next){case 0:return Ve._viewport.clearLookupTextures(),Et=new eU(Ve._viewport),Ve.nodePromises={},Pt.prev=3,Pt.next=6,Ve.api.objects.getTopology(Fe,Pe,void 0,!0);case 6:_t=Pt.sent,Et.parseObjectTopologyResponse(_t,Pe,ot),Pt.next=13;break;case 10:throw Pt.prev=10,Pt.t0=Pt.catch(3),new Error(Pt.t0);case 13:return Pt.next=15,Ve._loadObjectGeometryGLB(Et,Fe,Pe);case 15:if(Zt=Pt.sent){Pt.next=18;break}throw new Error;case 18:if(Ve._viewport.isReady()){Pt.next=20;break}return Pt.abrupt("return",null);case 20:return Et.getObjectsContainer().updateObjectsIndex(),Et.getObjectsContainer().initObjects(Ve._viewport),Et.getObjectsContainer().forEachObject(function(sn){sn.visible?sn.show(Ve._viewport):sn.hide(Ve._viewport)},!1),Ve._viewport.updateWebGLBuffer(Zt),Ve._viewport.renderGPUPickTextureNeeded(),Pt.abrupt("return",Et);case 26:case"end":return Pt.stop()}},Ct,null,[[3,10]])})()}),function(Fe,Pe){return Z.apply(this,arguments)})},{key:"_reloadLayerGeometry",value:(q=ee(function(Fe,Pe,Ve){var ot=this,Ct=!(arguments.length>3&&arguments[3]!==void 0)||arguments[3],Et=arguments.length>4&&arguments[4]!==void 0?arguments[4]:void 0;return ge().mark(function _t(){var Zt;return ge().wrap(function(Pt){for(;;)switch(Pt.prev=Pt.next){case 0:return Zt=[],Pe.forEach(function(sn){var On=sn.getLayer(Ve);On&&(On.geometryLoaded=!1,sn.forEachTopologyLeafNode(function(kn){delete ot.nodePromises[kn.id],kn.isLayerGeometryLoaded(On)&&Fe.unloadNode(kn.id,On.id)}),Zt.push(ot.loadModel(Fe,sn,[On],Ct,Et)))}),Pt.next=4,Promise.all(Zt);case 4:return Pt.abrupt("return",Fe);case 5:case"end":return Pt.stop()}},_t)})()}),function(Fe,Pe,Ve){return q.apply(this,arguments)})},{key:"getModelResponsesBatch",value:function(Fe){return Fe.id+"("+Fe.getCurrentRevision()+")"}},{key:"checkModelModified",value:(P=ee(function(Fe){var Pe=this,Ve=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1],ot=!(arguments.length>2&&arguments[2]!==void 0)||arguments[2];return ge().mark(function Ct(){var Et;return ge().wrap(function(_t){for(;;)switch(_t.prev=_t.next){case 0:if(Et=!1,Fe==null||!Fe.isExternal){_t.next=3;break}return _t.abrupt("return",Et);case 3:if(!Fe.hasRevisions()){_t.next=9;break}return _t.next=6,Pe.api.objects.head(Fe.divisionTopologyId,Fe.getCurrentRevision());case 6:Et=_t.sent,_t.next=12;break;case 9:return _t.next=11,Pe.api.models.head(Fe.divisionTopologyId);case 11:Et=_t.sent;case 12:return console.debug("[renderer] Model has revisions: ".concat(Fe.hasRevisions()," / current revision: ").concat(Fe.getCurrentRevision()," is unchanged: ").concat(Et)),!Et&&Pe.api.getCache()&&Ve&&Pe.api.getCache().deleteBatchResponses(Pe.getModelResponsesBatch(Fe)),!Et&&Fe.getProject().getDisciplineNodeStore()&&ot&&Fe.getProject().getDisciplineNodeStore().clearModelNodes(Fe.id),_t.abrupt("return",Et);case 16:case"end":return _t.stop()}},Ct)})()}),function(Fe){return P.apply(this,arguments)})},{key:"checkModelsModified",value:(w=ee(function(Fe){var Pe=this,Ve=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1],ot=!(arguments.length>2&&arguments[2]!==void 0)||arguments[2];return ge().mark(function Ct(){var Et,_t;return ge().wrap(function(Zt){for(;;)switch(Zt.prev=Zt.next){case 0:return Et=!1,_t=[],Fe.forEach(function(Pt){var sn=null;(sn=Pt.hasRevisions()?Pe.api.objects.head(Pt.divisionTopologyId,Pt.getCurrentRevision()):Pe.api.models.head(Pt.divisionTopologyId)).then(function(On){Et=!On||Et,!On&&Pe.api.getCache()&&Ve&&Pe.api.getCache().deleteBatchResponses(Pe.getModelResponsesBatch(Pt)),!On&&Pt.getProject().getDisciplineNodeStore()&&ot&&Pt.getProject().getDisciplineNodeStore().clearModelNodes(Pt.id)}),_t.push(sn)}),Zt.next=5,Promise.all(_t);case 5:return Zt.abrupt("return",Et);case 6:case"end":return Zt.stop()}},Ct)})()}),function(Fe){return w.apply(this,arguments)})},{key:"checkAndRefreshProject",value:(M=ee(ge().mark(function Fe(Pe,Ve){var ot,Ct;return ge().wrap(function(Et){for(;;)switch(Et.prev=Et.next){case 0:return Et.next=2,this.checkModelsModified(Ve);case 2:if(!(ot=Et.sent)){Et.next=8;break}return Et.next=6,this.api.projects.get(Pe.id);case 6:Ct=Et.sent,Pe.parseProjectDetailsResponse(Ct);case 8:return Et.abrupt("return",ot);case 9:case"end":return Et.stop()}},Fe,this)})),function(Fe,Pe){return M.apply(this,arguments)})},{key:"reloadClashesFromFilter",value:(v=ee(ge().mark(function Fe(Pe,Ve,ot){return ge().wrap(function(Ct){for(;;)switch(Ct.prev=Ct.next){case 0:return Pe.disposeClashObjectsByFilter(Ve),Pe.parseClashFilterResponse(Ve,ot),Ct.abrupt("return",Pe);case 3:case"end":return Ct.stop()}},Fe)})),function(Fe,Pe,Ve){return v.apply(this,arguments)})},{key:"reloadClashes",value:(m=ee(ge().mark(function Fe(Pe,Ve){return ge().wrap(function(ot){for(;;)switch(ot.prev=ot.next){case 0:return Pe.disposeClashObjects(),ot.next=3,this._loadClashFilters(Pe,Ve);case 3:return ot.abrupt("return",Pe);case 4:case"end":return ot.stop()}},Fe,this)})),function(Fe,Pe){return m.apply(this,arguments)})},{key:"reloadRevisionCompareObjects",value:(u=ee(ge().mark(function Fe(Pe,Ve){return ge().wrap(function(ot){for(;;)switch(ot.prev=ot.next){case 0:return this._viewport.disableDraw(!0),ot.next=3,this.checkAndRefreshProject(Pe,[Ve]);case 3:return ot.next=5,this._reloadLayerGeometry(Pe,[Ve],o1.RevisionCompareLayer,!1,function(Ct){return Pe.getObjectsContainer().getRevisionCompareObject(Ct.id)});case 5:Pe.getObjectsContainer().forEachRevisionCompareObject(function(Ct){var Et=Pe.getObjectsContainer().getObject(Ct.id);Et&&Pe.getObjectsContainer().traverseDown(Et,function(_t){_t.visible=!1})}),this._viewport.disableDraw(!1),Ve.forEachTopologyLeafNode(function(Ct){var Et=Pe.getDisciplineNode(Ct,Ve.getRevisionCompareLayer());Et&&(Et.visible=!0)});case 8:case"end":return ot.stop()}},Fe,this)})),function(Fe,Pe){return u.apply(this,arguments)})},{key:"cancel",value:function(){this.canceled=!0}},{key:"_loadModelObjectsTree",value:(c=ee(ge().mark(function Fe(Pe,Ve){var ot,Ct,Et;return ge().wrap(function(_t){for(;;)switch(_t.prev=_t.next){case 0:return ot=Pe.getCurrentRevision(),Ct=this.getModelResponsesBatch(Pe),_t.next=4,this.api.objects.getTopology(Pe.divisionTopologyId,ot,void 0,!0,Ct);case 4:Et=_t.sent,Pe.parseModelObjectsTopology(Et,Ve),Pe.objectsLoaded=!0;case 7:case"end":return _t.stop()}},Fe,this)})),function(Fe,Pe){return c.apply(this,arguments)})},{key:"_loadModelLayerGeometryFromIndexDb",value:(s=ee(ge().mark(function Fe(Pe,Ve){var ot,Ct,Et,_t,Zt,Pt,sn,On,kn=this;return ge().wrap(function(_n){for(;;)switch(_n.prev=_n.next){case 0:if(ot=Pe.getDisciplineNodeStore()){_n.next=4;break}return console.error("Failed to get DisciplineNodeStore"),_n.abrupt("return");case 4:return Ct=Ve.getModel(),Et=Ct.getCurrentRevision(),_t=Ct.divisionTopologyId,Zt=Ve.getUserColor(),Pt=Ve.getUserOpacity(),sn=Ve.isBackground(),On=[],Ct.forEachTopologyLeafNode(function(Jn){var Di={id:Jn.id,revision:Et,divisionTopologyId:_t,visible:!0},Bt=Ve.asLegacyDiscipline();Pe.getGeometryNodes().initNode(Pe,Di,Bt);var Sn=Pe.getDisciplineNode(Di,Ve);Sn?On.push(Pe.readDisciplineNodeMeshes(ot,Sn,!0).then(function(){Jn.objectsTreeLoaded=!0,Jn.setLayerGeometryLoaded(Ve),Ct.divisionTopologyId&&Pe.getDivisions().expandDivisionBoundingBox(Ct.divisionTopologyId,Sn.boundingBox),Sn.setUserColor(Zt),Sn.setUserOpacity(Pt),Sn.setBackground(sn),Sn.setVisible(Jn.isVisible()&&Ve.isVisible()),kn.modelTooDistantHandler!==null&&kn._viewport.isRelativeModelDistancesTooLarge()&&kn.modelTooDistantHandler()})):console.error("Discipline node is undefined")}),_n.next=15,Promise.all(On);case 15:case"end":return _n.stop()}},Fe)})),function(Fe,Pe){return s.apply(this,arguments)})},{key:"_loadModelLayerGeometryCumulated",value:(i=ee(function(Fe,Pe){var Ve=this,ot=arguments.length>2&&arguments[2]!==void 0?arguments[2]:100;return ge().mark(function Ct(){var Et,_t,Zt,Pt,sn,On,kn,_n,Jn;return ge().wrap(function(Di){for(;;)switch(Di.prev=Di.next){case 0:if(Et=Pe.getModel(),_t=Et.getCurrentRevision(),Zt=Ve.getModelResponsesBatch(Et),!Ve.modelObjectsPromises[Et.divisionTopologyId]){Di.next=6;break}return Di.next=6,Ve.modelObjectsPromises[Et.divisionTopologyId];case 6:return Pt={chunked:!0,revision:_t,lod:ot,batch:Zt,vertexNormals:!0,smoothingAngle:null,topology:!0,edges:!1,version:null},sn=[],Di.next=10,Ve.api.objects.getGeometryGLB(Et.divisionTopologyId,Pe.id,Pt);case 10:return sn=Di.sent,Di.next=13,Ve._fullProcessGLBResponse(Fe,Pe,Et,sn,void 0);case 13:return On=Di.sent,Di.next=16,On.createDisciplineNodes();case 16:On.topoNodes={},On.topoNodesPointers={},kn=Pe.getUserColor(),_n=Pe.getUserOpacity(),Jn=Pe.isBackground(),Et.forEachTopologyLeafNode(function(Bt){Bt.objectsTreeLoaded=!0,Bt.setLayerGeometryLoaded(Pe);var Sn=Fe.getDisciplineNode(Bt,Pe);Ve._updateGLBGeometryNodeBoundingBox(Fe,Sn.boundingBox),Sn.setUserColor(kn),Sn.setUserOpacity(_n),Sn.setBackground(Jn),Sn.setVisible(Bt.isVisible()&&Pe.isVisible())}),Ve.modelTooDistantHandler!==null&&Ve._viewport.isRelativeModelDistancesTooLarge()&&Ve.modelTooDistantHandler();case 23:case"end":return Di.stop()}},Ct)})()}),function(Fe,Pe){return i.apply(this,arguments)})},{key:"loadModelStructure",value:(n=ee(ge().mark(function Fe(Pe,Ve,ot){var Ct,Et;return ge().wrap(function(_t){for(;;)switch(_t.prev=_t.next){case 0:if(!Ve.isExternal){_t.next=2;break}return _t.abrupt("return");case 2:if(Ve.topologyLoaded!==!1){_t.next=14;break}return _t.prev=3,Ct=Ve.getCurrentRevision(),_t.next=7,this.api.objects.getTopology(Ve.divisionTopologyId,Ct,!0,!1);case 7:Et=_t.sent,Pe.parseProjectTopologyResponse(Et,Ct),_t.next=14;break;case 11:throw _t.prev=11,_t.t0=_t.catch(3),new Error(_t.t0);case 14:if(Ve.objectsLoaded!==!1){_t.next=23;break}return _t.prev=15,_t.next=18,this._loadModelObjectsTree(Ve,ot);case 18:_t.next=23;break;case 20:throw _t.prev=20,_t.t1=_t.catch(15),new Error(_t.t1);case 23:case"end":return _t.stop()}},Fe,this,[[3,11],[15,20]])})),function(Fe,Pe,Ve){return n.apply(this,arguments)})}]);var n,i,s,c,u,m,v,M,w,P,q,Z,K,he,le,pe,Ie,Ce,Ne,Ge}($7);let lU=ase;function cU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(cU=function(){return!!e})()}var eN=function(e){function t(n){var i;return zi(this,t),i=function(s,c,u){return c=xi(c),ba(s,cU()?Reflect.construct(c,u||[],xi(s).constructor):c.apply(s,u))}(this,t),i._viewport=n,i._mouseButton=null,i._isDragging=!1,i._isPinching=!1,i._isPaning=!1,i.target=new Ee,i.object=null,i.minDistance=0,i.maxDistance=1/0,i.minPolarAngle=0,i.maxPolarAngle=Math.PI,i.lastPlaneIntersectionAfterZoom=new Ee,i}return va(t,e),Si(t,[{key:"startDrag",value:function(n){this._mouseButton=n,this._isDragging=!0}},{key:"processDrag",value:function(){}},{key:"finishDrag",value:function(){this._isDragging=!1}},{key:"isDragging",value:function(){return this._isDragging}},{key:"processOrthographicMouseWheel",value:function(n,i){var s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:.9,c=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1.1,u=arguments.length>4&&arguments[4]!==void 0&&arguments[4];if(n!==0){var m=this._viewport,v=new Ee;if(m.projector.pickingRay(m.getNDCVector(),m.camera).ray.intersectPlane(i,v)||console.error("planeIntersectionBeforeZoom has no intersection"),u){var M=this._calculateZoomFactor(!1),w=m.getNDCVector(),P=m.projector.pickingRay(w,m.camera).ray.direction;if(P.distanceTo(new Ee(0,0,0))>0){P.normalize(),P.multiplyScalar(n>0?M:-M);var q=new Ee().copy(m.controls.target),Z=new Ee().copy(m.camera.position);q.add(P),Z.add(P),m.camera.position.copy(Z),m.controls.target.copy(q)}m.controls.updateOrthographicFrustum()}else m.controls.noZoom=!0,L0.zoomOrthographicCamera(m.camera,n>1?s:c),m.camera.updateProjectionMatrix(),m.camera.updateMatrixWorld();var K=new Ee;m.projector.pickingRay(m.getNDCVector(),m.camera).ray.intersectPlane(i,K)||(console.error("planeIntersectionAfterZoom has no intersection"),K=this.lastPlaneIntersectionAfterZoom),this.planeIntersectionAfterZoom=K;var he=new Ee;he.subVectors(v,K),m.controls.target.add(he),m.camera.position.add(he),m.camera.updateProjectionMatrix(),m.camera.updateMatrixWorld()}}},{key:"processMouseWheel",value:function(){}},{key:"startPinch",value:function(){}},{key:"processPinch",value:function(){}},{key:"finishPinch",value:function(){}},{key:"isPinching",value:function(){return this._isPinching}},{key:"processClick",value:function(){}},{key:"processMouseMove",value:function(){}},{key:"canStartDrag",value:function(){return this._viewport.objectUnderMouse||this._viewport.rotationCenter}},{key:"startPan",value:function(){this._isPaning=!0}},{key:"finishPan",value:function(){this._isPaning=!1}},{key:"isPaning",value:function(){return this._isPaning}},{key:"processPan",value:function(){}},{key:"supportsGPUPicking",value:function(){return!0}},{key:"roundToStep",value:function(n,i){return Math.round(n/i)*i}},{key:"reset",value:function(){this.backupTarget&&(this.target=this.backupTarget.clone())}},{key:"revertModel",value:function(){this.backupTarget&&this.backupObjectPosition&&(this.target=this.backupTarget.clone(),this.object.position.copy(this.backupObjectPosition))}}])}(Gd);function uU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(uU=function(){return!!e})()}function oO(e,t,n,i){var s=Q1(xi(1&i?e.prototype:e),t,n);return 2&i&&typeof s=="function"?function(c){return s.apply(n,c)}:s}var dU=function(e){function t(n){var i;return zi(this,t),i=function(s,c,u){return c=xi(c),ba(s,uU()?Reflect.construct(c,u||[],xi(s).constructor):c.apply(s,u))}(this,t,[n]),i._meshSearch=new jb,i._dragRotationCenter=null,i._lastDragRotationCenter=null,i._prevDragPosition=new Ai,i._pinchToZoomCenterX=0,i._pinchToZoomCenterY=0,i._pinchDistance=null,i.isPointMatching=!1,i}return va(t,e),Si(t,[{key:"setNewRotationPoint",value:function(){var n=this._viewport;if(!n.objectUnderMouse)return n.rotationCenter&&(this._dragRotationCenter=n.rotationCenter.clone()),void console.debug("[Renderer] OrbitViewControl::setNewRotationPoint : Use existing rotation point");var i=this._meshSearch;i.findFaces=!0,i.search(n.objectUnderMouse,n,null,null,null),this._dragRotationCenter=i.faceIntersectionPoint,this._dragRotationCenter||(this._dragRotationCenter=this._lastDragRotationCenter,n.objectUnderMouse=null),console.debug("[Renderer] OrbitViewControl::setNewRotationPoint : New rotation point for object picking point")}},{key:"startDrag",value:function(n,i){var s=this._viewport;this.setNewRotationPoint(),this._dragRotationCenter&&(oO(t,"startDrag",this,3)([n,i]),this._prevDragPosition.x=s.mouse.x,this._prevDragPosition.y=s.mouse.y,s.axisHelper.visible=!0,s.axisHelper.position.copy(this._dragRotationCenter),s.renderQueue.interactionFocusPoint=this._dragRotationCenter,s.renderQueue.setInteractionMode(!1),s.renderQueue.clear(),s.renderQueue.setInteractionMode(!0),s.draw(),this.processDrag(i))}},{key:"processDrag",value:function(n){this._mouseButton===0?this._processDragRotate(n):this._mouseButton!==2&&this._mouseButton!==1||this._processDragMove(n),this._viewport.draw()}},{key:"finishDrag",value:function(n){oO(t,"finishDrag",this,3)([n]);var i,s,c,u=this._viewport;(!this._lastDragRotationCenter&&this._dragRotationCenter||this._lastDragRotationCenter&&this._dragRotationCenter&&!mi.equalVector3(this._lastDragRotationCenter,this._dragRotationCenter))&&(console.debug("[Renderer] OrbitViewControl::finishDrag : New rotation center point: x:".concat(Number.parseFloat(this==null||(i=this._dragRotationCenter)===null||i===void 0?void 0:i.x).toFixed(4)," y:").concat(Number.parseFloat(this==null||(s=this._dragRotationCenter)===null||s===void 0?void 0:s.y).toFixed(4)," z:").concat(Number.parseFloat(this==null||(c=this._dragRotationCenter)===null||c===void 0?void 0:c.z).toFixed(4))),u.setRotationCenter(this._dragRotationCenter),u.currentManipulationControlVisibility()&&u.clippingPlanes.setNewCenterPoint()),this._lastDragRotationCenter=this._dragRotationCenter,this._dragRotationCenter=null,u.axisHelper.visible=!1,u.renderQueue.interactionFocusPoint=null}},{key:"isDragging",value:function(){return this._dragRotationCenter!==null}},{key:"getLastDragRotationCenter",value:function(){return this._lastDragRotationCenter?this._lastDragRotationCenter.clone():null}},{key:"_processPointMatchDragRotate",value:function(n){var i=this._viewport,s=i.mouse.x-this._prevDragPosition.x,c=i.mouse.y-this._prevDragPosition.y,u=n.currentTarget.clientHeight,m=-s/n.currentTarget.clientWidth*Math.PI*2,v=-c/u*Math.PI;if(m!==0||v!==0){var M=i.controls.object.up.clone(),w=i.getVectorScreenCoordinates(this._dragRotationCenter);i.mouse.y<w.y&&(m*=-1),i.mouse.x>w.x&&(v*=-1);var P=i.clippingPlanes.getActiveClippingPlane().normal;P.normalize();var q=new qi;q.makeRotationAxis(P,m);var Z=new qi;Z.makeRotationAxis(P,v);var K=new Ee;K.copy(i.controls.object.position),K.sub(this._dragRotationCenter),K.applyMatrix4(Z),K.applyMatrix4(q),K.add(this._dragRotationCenter);var he=new Ee;he.copy(i.controls.target),he.sub(this._dragRotationCenter),he.applyMatrix4(Z),he.applyMatrix4(q),he.add(this._dragRotationCenter),M.applyMatrix4(Z),M.applyMatrix4(q),M.normalize(),i.controls.object.position.copy(K),i.controls.object.up.copy(M),i.controls.target.copy(he),this.updateCamera(),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y}}},{key:"_processDragRotate",value:function(n){if(this.isPointMatching&&this._viewport.currentInteractor instanceof k7)this._processPointMatchDragRotate(n);else{var i=this._viewport,s=i.mouse.x-this._prevDragPosition.x,c=i.mouse.y-this._prevDragPosition.y,u=n.currentTarget.clientHeight,m=-s/n.currentTarget.clientWidth*Math.PI*2,v=-c/u*Math.PI;if(m!==0||v!==0){var M=L0.getCameraViewDirection(i),w=i.controls.object.up.clone(),P=M.crossVectors(w,M);P.y=0,P.normalize();var q=new qi;q.makeRotationY(m);var Z=new qi;Z.makeRotationAxis(P,v);var K=new Ee;K.copy(i.controls.object.position),K.sub(this._dragRotationCenter),K.applyMatrix4(Z),K.applyMatrix4(q),K.add(this._dragRotationCenter);var he=new Ee;he.copy(i.controls.target),he.sub(this._dragRotationCenter),he.applyMatrix4(Z),he.applyMatrix4(q),he.add(this._dragRotationCenter),w.applyMatrix4(Z),w.applyMatrix4(q),w.normalize(),i.controls.object.position.copy(K),i.controls.object.up.copy(w),i.controls.target.copy(he),this.updateCamera(),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y}}}},{key:"_processDragMove",value:function(){var n=this._viewport,i=new Ee;i.copy(n.controls.object.position);var s=new Ee;s.copy(n.controls.target);var c=new Ee;c.subVectors(i,s),c.normalize();var u=new br;u.setFromNormalAndCoplanarPoint(c,this._dragRotationCenter);var m=new Ee,v=n.projector.pickingRay(n.getNDCVector(),n.camera),M=new Ee;if(v.ray.intersectPlane(u,M)&&m.subVectors(M,this._dragRotationCenter),!n.objectUnderMouse){var w=n.projector.pickingRay(n.getNDCVector(this._prevDragPosition.x,this._prevDragPosition.y),n.camera),P=new Ee;w.ray.intersectPlane(u,P)&&m.subVectors(M,P)}i.sub(m),s.sub(m),n.controls.object.position.copy(i),n.controls.target.copy(s),this.updateCamera(),this._prevDragPosition.x=n.mouse.x,this._prevDragPosition.y=n.mouse.y}},{key:"_calculateZoomFactor",value:function(n){var i=n?2.5:.25,s=this._viewport;if(s.pickGPU)if(s.rotationCenter)(i*=s.rotationCenter.distanceTo(s.camera.position))<100&&(i+=50);else{var c=new Ee(0,0,0),u=s.getContentBoundingBox();u!=null&&u.isValid()?(c.x=u.getCenterX(),c.y=u.getCenterY(),c.z=u.getCenterZ()):(c.x=0,c.y=0,c.z=0),i*=c.distanceTo(s.camera.position)}else i=n?2:.1;return isNaN(i)?1:i}},{key:"_processPointMatchMouseWheel",value:function(n){var i=this._viewport;i.currentInteractor.processMouseWheel();var s=i.clippingPlanes.getActiveClippingPlane(),c=new br;c.setFromNormalAndCoplanarPoint(s.normal,i.rotationCenter),this.processOrthographicMouseWheel(n,c)}},{key:"processMouseWheel",value:function(n,i){if(n!==0){var s=this._viewport;if(this.isPointMatching&&s.currentInteractor instanceof k7)this._processPointMatchMouseWheel(n);else if(s.name!=="mainRendererViewport"||s.camera.type!=="orthographic"){var c=this._calculateZoomFactor(i.shiftKey);s.controls.noZoom=!0,s.camera.updateProjectionMatrix(),s.camera.updateMatrixWorld();var u=s.getNDCVector(),m=s.projector.pickingRay(u,s.camera).ray.direction;if(m.distanceTo(new Ee(0,0,0))>0){m.normalize(),m.multiplyScalar(n>0?c:-c);var v=new Ee().copy(s.controls.target),M=new Ee().copy(s.camera.position);v.add(m),M.add(m),s.camera.position.copy(M),s.controls.target.copy(v),s.name==="mainRendererViewport"&&s.camera.type==="orthographic"&&s.controls.updateOrthographicFrustum()}}else{var w=new br,P=256*s.visibleGeometryBoundingSphere.radius,q=new Ee;s.camera.getWorldDirection(q),q.multiplyScalar(P),q.add(s.camera.position);var Z=new Ee;s.camera.getWorldDirection(Z),w.setFromNormalAndCoplanarPoint(Z,q),this.processOrthographicMouseWheel(n,w,void 0,void 0,!1)}}}},{key:"startPinch",value:function(){var n=this._viewport;this._pinchToZoomCenterX=n.mouse.x,this._pinchToZoomCenterY=n.mouse.y}},{key:"finishPinch",value:function(){this._pinchDistance=null}},{key:"isPinching",value:function(){return this._pinchDistance!==null}},{key:"processPinch",value:function(n){var i=this._viewport,s=n.originalEvent.touches[0].clientX-n.originalEvent.touches[1].clientX,c=n.originalEvent.touches[0].clientY-n.originalEvent.touches[1].clientY,u=Math.sqrt(s*s+c*c),m=oO(t,"roundToStep",this,3)([u,5])-oO(t,"roundToStep",this,3)([this._pinchDistance,5]);if(this._pinchDistance!==null){var v=u-this._pinchDistance;if(this._pinchDistance=u,m!==0){n.preventDefault(),n.stopPropagation();var M=this._calculateZoomFactor(n.shiftKey);i.controls.noZoom=!0,i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld();var w=i.getNDCVector(this._pinchToZoomCenterX,this._pinchToZoomCenterY),P=i.projector.pickingRay(w,i.camera).ray.direction;P.normalize(),P.multiplyScalar(v*M*.08);var q=new Ee().copy(i.controls.target),Z=new Ee().copy(i.camera.position);q.add(P),Z.add(P),i.camera.position.copy(Z),i.controls.target.copy(q),i.draw()}}else this._pinchDistance=u}},{key:"findModelObjectForMouseMove",value:function(){return this._viewport.GPUPick?this._viewport.pickGPU():this._viewport.pickRay(),this._viewport.objectUnderMouse?this._viewport.objectUnderMouse:null}},{key:"processClick",value:function(n){var i,s,c=this._viewport,u=!1;if(c.checkSelectionMode("addPin")&&!c.checkSelectionMode("hidden")&&c.objectUnderMouse){if(i=c.getRayIntersectedObjects()){var m,v,M,w,P=!1;if(c!=null&&(m=c.clippingPlanes)!==null&&m!==void 0&&m.isEnabled()){var q=new bT;q.setFromCamera(c.getNDCVector(),c.camera);for(var Z=q.intersectObject(i.object),K=0;K<Z.length;K++){var he=Z[K];if(!c.clippingPlanes.clipPoint(he.point).clipped){if(K===0&&he.point.equals(i.point))break;(i=he).position={x:he.point.x*c.normFactor,y:he.point.y*c.normFactor,z:he.point.z*c.normFactor};var le=new br(he.face.normal,0),pe=new Ee;he.face.normal.angleTo(c.camera.getWorldDirection(pe))<Math.PI/2&&le.negate(),i.normalVector={x:le.normal.x,y:le.normal.y,z:le.normal.z},P=!0;break}}}i.id=c.getSelected3DObjectId()||(c.objectSets.selectedObjects.length===1?c.objectSets.selectedObjects[0].id:""),P||(i.position={x:i.point.x*c.normFactor,y:i.point.y*c.normFactor,z:i.point.z*c.normFactor},i.face?i.normalVector={x:i.face.normal.x,y:i.face.normal.y,z:i.face.normal.z}:i.indices&&(s=3*i.indices[0],i.normalVector={x:i.object.geometry.attributes.normal.array[s],y:i.object.geometry.attributes.normal.array[s+1],z:i.object.geometry.attributes.normal.array[s+2]}));var Ie,Ce=c==null||(v=c.objectUnderMouse)===null||v===void 0?void 0:v.selected;c.addObjectsToWorkingSet([c.objectUnderMouse]),Ce&&c.selectObject(c.objectUnderMouse),i.node=c==null||(M=c.objectUnderMouse)===null||M===void 0?void 0:M.node,i.isOverlay=(c==null||(w=c.objectUnderMouse)===null||w===void 0?void 0:w.type)==="Overlay",i.isOverlay&&(i.id=c==null||(Ie=c.objectUnderMouse)===null||Ie===void 0?void 0:Ie.overlayId),c.deferred.resolve(i),c.resetObjectUnderMouse()}}else c.checkSelectionMode("pins")&&(i=c.getRayIntersectedObjects(c.pins.pinsObjects3D))&&($(c.domElement).trigger("projectPinSelected",i.object.userData),u=!0);if(!u&&!c.checkSelectionMode("addPin")&&!c.checkSelectionMode("moveModel")&&!c.checkSelectionMode("selectSectionPlane")&&!c.checkSelectionMode("selectPointsForOverlay")&&(!c.isMarkupMode()||c.isMarkupModeTurnedOff())){var Ne=c.checkSelectionMode("hidden");if(!c.blockObjectSelection||Ne){var Ge;if(!Ne&&typeof c.beforeObjectSelection=="function"&&c.beforeObjectSelection()===!1||(c.objectUnderMouse||c.setObjectUnderMouse(c.sectionCuts.getModelObjectForMesh()),!c.objectUnderMouse&&c.overlays.getVisualObjectForMesh()))return;var Fe=c==null||(Ge=c.objectUnderMouse)===null||Ge===void 0?void 0:Ge.isOverlayElement;if(!Fe){var Pe=!!c.forceMultiSelect||void 0;c.handleObjectSelection(n,!c.forceSingleObjectSelection&&Pe)}Ne||Fe||c.draw().then(function(){c.multiSelect=!!c.forceMultiSelect||n.ctrlKey||n.isLongPress,c.multiSelect=!c.forceSingleObjectSelection&&c.multiSelect,$(c.domElement).trigger("select3DObject"),c.multiSelect=!1})}}(c.checkSelectionMode("moveModel")||c.checkSelectionMode("selectSectionPlane")||c.checkSelectionMode("selectPointsForOverlay")||c.isMarkupMode())&&c.currentInteractor.processMouseClick(n)}},{key:"updateOrthographicFrustum",value:function(){var n=this._viewport,i=new br,s=new Ee;s=L0.getCameraViewDirection(n,s),i.setFromNormalAndCoplanarPoint(s,n.visibleGeometryBoundingSphere.center);var c,u=i.distanceToPoint(n.camera.position),m=(c=u>=0?n.visibleGeometryBoundingSphere.radius+Math.abs(u):Math.abs(u)<=n.visibleGeometryBoundingSphere.radius?n.visibleGeometryBoundingSphere.radius-Math.abs(u):1e4)/(2*(2*n.visibleGeometryBoundingSphere.radius));m>1.5&&(m=1.5);var v=c/2*m;n.camera.left=v*n.camera.aspect/-2,n.camera.right=v*n.camera.aspect/2,n.camera.bottom=v/-2,n.camera.top=v/2,n.camera.near=-c*m,n.camera.updateProjectionMatrix()}},{key:"startPan",value:function(){oO(t,"startPan",this,3)([])}},{key:"finishPan",value:function(){oO(t,"finishPan",this,3)([])}},{key:"isPaning",value:function(){return oO(t,"isPaning",this,3)([])}},{key:"processPan",value:function(){oO(t,"processPan",this,3)([])}},{key:"updateCamera",value:function(){var n=this._viewport;n.camera.lookAt(n.controls.target),n.camera.updateProjectionMatrix(),n.camera.updateMatrixWorld()}}])}(eN);function pU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(pU=function(){return!!e})()}function H5(e,t,n,i){var s=Q1(xi(1&i?e.prototype:e),t,n);return 2&i&&typeof s=="function"?function(c){return s.apply(n,c)}:s}var ose=function(e){function t(n){var i;return zi(this,t),i=function(s,c,u){return c=xi(c),ba(s,pU()?Reflect.construct(c,u||[],xi(s).constructor):c.apply(s,u))}(this,t,[n]),i._dragRotationCenter=null,i._prevDragPosition=new Ai,i._startDragWorldPosition=new Ee,i._pinchToZoomCenterX=0,i._pinchToZoomCenterY=0,i._pinchDistance=null,i._levelPlane=null,i._crossSectionPlane=new br(new Ee(1,0,0),0),i._isHeightLevelMode=!1,i._mainViewport=null,i._navigationMap=null,i}return va(t,e),Si(t,[{key:"setMainViewport",value:function(n){this._mainViewport=n}},{key:"getMainViewport",value:function(){return this._mainViewport}},{key:"setNavigationMap",value:function(n){this._navigationMap=n}},{key:"getNavigationMap",value:function(){return this._navigationMap}},{key:"setHeightLevel",value:function(n){this._levelPlane=new br(new Ee(0,1,0),-n)}},{key:"setHeightLevelMode",value:function(n){this._isHeightLevelMode=n}},{key:"startDrag",value:function(n,i){if(this.canProcessInputEvent(i)){var s=this._viewport;H5(t,"startDrag",this,3)([n,i]),this._prevDragPosition.x=s.mouse.x,this._prevDragPosition.y=s.mouse.y,s.renderQueue.setInteractionMode(!1),s.renderQueue.clear(),s.renderQueue.setInteractionMode(!0),s.draw();var c=this._isHeightLevelMode?this._crossSectionPlane:this._levelPlane,u=s.projector.pickingRay(s.getNDCVector(),s.camera),m=new Ee;u.ray.intersectPlane(c,m)&&(this._startDragWorldPosition=m),this.processDrag(i)}}},{key:"processDrag",value:function(n){this._mouseButton===2||this._mouseButton===1?this._processDragMove(n):this._mouseButton===0&&this._processDragRotate(n)}},{key:"finishDrag",value:function(n){H5(t,"finishDrag",this,3)([n])}},{key:"isDragging",value:function(){return H5(t,"isDragging",this,3)([])}},{key:"canProcessInputEvent",value:function(n){var i=this._viewport.getContentBoundingBox();return!(!i||i.getWidth()===0||i.getHeight()===0||i.getDepth()===0)||(n.preventDefault(),n.stopPropagation(),!1)}},{key:"_processDragRotate",value:function(n){if(this.canProcessInputEvent(n)&&!this._isHeightLevelMode){var i=this._viewport,s=this._mainViewport,c=i.mouse.x-this._prevDragPosition.x,u=i.mouse.y-this._prevDragPosition.y,m=n.currentTarget.clientHeight,v=-c/n.currentTarget.clientWidth*Math.PI*2,M=-u/m*Math.PI,w=new Ee;w.copy(s.controls.object.position);var P=s.controls.object.up.clone(),q=new Ee;q.copy(s.controls.target);var Z=new Ee;Z.subVectors(w,q),Z.normalize();var K=new Ee(1,0,0);K.crossVectors(P,Z),K.y=0,K.normalize();var he=new qi;he.makeRotationAxis(K,M);var le=new qi;le.makeRotationY(v),q.sub(w),q.applyMatrix4(he),q.applyMatrix4(le),q.add(w),P.applyMatrix4(he),P.applyMatrix4(le),P.normalize(),s.controls.object.position.copy(w),s.controls.object.up.copy(P),s.controls.target.copy(q),s.camera.lookAt(s.controls.target),s.camera.updateProjectionMatrix(),s.camera.updateMatrixWorld(),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,i.draw(),s.draw()}}},{key:"_processDragMove",value:function(n){if(this.canProcessInputEvent(n)){var i=this._viewport,s=this._isHeightLevelMode?this._crossSectionPlane:this._levelPlane,c=i.projector.pickingRay(i.getNDCVector(),i.camera),u=new Ee;if(c.ray.intersectPlane(s,u)){var m=new Ee;m.subVectors(this._startDragWorldPosition,u),i.controls.object.position.add(m),i.controls.target.add(m)}i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),i.camera.lookAt(i.controls.target),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,i.draw()}}},{key:"processMouseWheel",value:function(n,i){this.canProcessInputEvent(i)&&n!==0&&this.processOrthographicMouseWheel(n,this._levelPlane,.5,2)}},{key:"startPinch",value:function(){var n=this._viewport;this._pinchToZoomCenterX=n.mouse.x,this._pinchToZoomCenterY=n.mouse.y}},{key:"finishPinch",value:function(){this._pinchDistance=null}},{key:"processPinch",value:function(n){if(this.canProcessInputEvent(n)){var i=this._viewport;i.controls.noZoom=!0;var s=n.originalEvent.touches[0].clientX-n.originalEvent.touches[1].clientX,c=n.originalEvent.touches[0].clientY-n.originalEvent.touches[1].clientY,u=Math.sqrt(s*s+c*c),m=H5(t,"roundToStep",this,3)([u,5]);if(this._pinchDistance!==null){var v=m-this._pinchDistance;if(this._pinchDistance=m,v<0)v=.95;else{if(!(v>0))return;v=1.05}i.camera.zoom*=v,i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),n.preventDefault(),n.stopPropagation(),i.controls.noZoom=!0,i.draw()}else this._pinchDistance=m}}},{key:"processClick",value:function(n){var i=this._viewport;if(!i.isCameraFlightInProgress()&&this.canProcessInputEvent(n)){var s=i.projector.pickingRay(i.getNDCVector(),i.camera);if(this._isHeightLevelMode)$(this._viewport.domElement).trigger("clickedNavigationMapHeightLevel",{height:s.ray.origin.y});else{var c=new Ee;s.ray.intersectPlane(this._levelPlane,c),c&&this._navigationMap.moveCamera(c).then(function(){i.draw()})}}}},{key:"processMouseMove",value:function(){if(this._isHeightLevelMode){var n=this._viewport,i=n.projector.pickingRay(n.getNDCVector(),n.camera);$(this._viewport.domElement).trigger("mouseMoveNavigationMapHeightLevel",{height:i.ray.origin.y})}}},{key:"canStartDrag",value:function(){return!0}},{key:"startPan",value:function(n){var i=this._viewport;H5(t,"startPan",this,3)([n]),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,i.renderQueue.setInteractionMode(!1),i.renderQueue.clear(),i.renderQueue.setInteractionMode(!0),i.draw();var s=this._isHeightLevelMode?this._crossSectionPlane:this._levelPlane,c=i.projector.pickingRay(i.getNDCVector(),i.camera),u=new Ee;c.ray.intersectPlane(s,u)&&(this._startDragWorldPosition=u),this.processPan(n)}},{key:"finishPan",value:function(){H5(t,"finishPan",this,3)([])}},{key:"isPaning",value:function(){return H5(t,"isPaning",this,3)([])}},{key:"processPan",value:function(n){var i=this._viewport;if(this.canProcessInputEvent(n)){var s=this._isHeightLevelMode?this._crossSectionPlane:this._levelPlane,c=i.projector.pickingRay(i.getNDCVector(),i.camera),u=new Ee;if(c.ray.intersectPlane(s,u)){var m=new Ee;m.subVectors(this._startDragWorldPosition,u),i.controls.object.position.add(m),i.controls.target.add(m)}i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),i.camera.lookAt(i.controls.target),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,n.preventDefault(),n.stopPropagation(),i.draw()}}},{key:"supportsGPUPicking",value:function(){return!1}}])}(eN);function hU(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,i)}return n}function CL(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?hU(Object(n),!0).forEach(function(i){Nl(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):hU(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function fU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(fU=function(){return!!e})()}var lse=function(e){function t(){var n;return zi(this,t),n=function(i,s,c){return s=xi(s),ba(i,fU()?Reflect.construct(s,c||[],xi(i).constructor):s.apply(i,c))}(this,t),n._sectionSettingsRooms={showFaces:!0,faceColor:"rgb(0,0,0)",faceOpacity:1,showEdges:!0,edgeColor:"rgb(128,128,128)",edgeOpacity:1,edgeThickness:30,useObjectColorAndOpacity:!0,parallelPlaneDistance:0,sectionBoxXDistance:0,sectionBoxYDistance:0,sectionBoxZDistance:0,sectionCutPlaneOption:C5},n}return va(t,e),Si(t,[{key:"requestSectionCuts",value:function(n,i,s){return Promise.all(ST(this.getSplitPromises(n,i,s)))}},{key:"getSplitPromises",value:function(n,i,s){var c=i.modelLayer.filter(function(v){return v.id===o1.Rooms}),u=i.modelLayer.filter(function(v){return v.id!==o1.Rooms&&U7.isInternalLayer(v.id)===!1}),m=[];return c.length>0&&(i.settings.edges=this._sectionSettingsRooms.showEdges,i.settings.edgesThickness=this._sectionSettingsRooms.edgeThickness,m.push(n.apiCallForOneObject(CL(CL({},i),{},{modelLayer:c}),this._sectionSettingsRooms))),u.length>0&&m.push(n.apiCallForOneObject(CL(CL({},i),{},{modelLayer:u}),s)),m}}])}(EW),M0=function(e,t,n){this._viewport=new hS({camera:{type:"orthographic",left:-.5,right:.5,top:.5,bottom:-.5,near:-1e3,far:1e3},controls:{type:"NavigationMapViewControl"},settings:e,units:this.currentUnits,domElementId:n,name:"navigationMapViewport",ssaoSupported:!1,shadowsSupported:!1,disableTransformControls:!0,persistentClippingPlaneSettings:!1}),this._sectionCutsLoader=new CW(t,this._viewport,new lse),this._rendererProject=null,this._viewport.renderQueue.useCulling=!1,this._viewport.renderQueue.useInteractionModeVertexCount=!1,this._viewport.brightness=.2,this._viewport.contrast=.5,this._mainViewport=null,this._mainCamera=null,this._cameraHelper=null,this._levelPlane=new br(new Ee(0,1,0),0),this._cameraHelperType=null;var i=[new Ee(0,0,-1),new Ee(0,0,1)],s=new Ys().setFromPoints(i);this._previewPlane=this._levelPlane.clone();var c=[new Ee(0,0,-1),new Ee(0,0,1)],u=new Ys().setFromPoints(c),m=new c0({color:240116,opacity:1});this._previewPlaneLine=new Ua(u,m),this._previewPlaneLine.computeLineDistances(),this._planeLine=new Ua(s,m),this._planeLine.computeLineDistances(),this._heightLevel=0,this._isHeightLevelMode=!1,this._heightLevelModeChangedCallback=null,this._isLoadingChangedCallback=null,this._isLoading=!1,this._isVisible=!0,this._deferredUpdate=!1,this._sectionSettings={showFaces:!0,faceColor:"rgb(0,0,0)",faceOpacity:1,showEdges:!1,edgeColor:"rgb(0,0,0)",edgeOpacity:1,edgeThickness:1,useObjectColorAndOpacity:!1,parallelPlaneDistance:0,sectionBoxXDistance:0,sectionBoxYDistance:0,sectionBoxZDistance:0,sectionCutPlaneOption:C5},M0.prototype.addEventListeners=function(){$(this._viewport.domElement).on("clickedNavigationMapHeightLevel",{self:this},this.onClickedNavigationMapHeightLevel),$(this._viewport.domElement).on("mouseMoveNavigationMapHeightLevel",{self:this},this.onMouseMoveNavigationMapHeightLevel),$(this._viewport.domElement).on("mouseenter",{self:this},this.onMouseenter),$(this._viewport.domElement).on("mouseleave",{self:this},this.onMouseleave)},M0.prototype.removeEventListeners=function(){$(this._viewport.domElement).off("clickedNavigationMapHeightLevel",this.onClickedNavigationMapHeightLevel),$(this._viewport.domElement).off("mouseMoveNavigationMapHeightLevel",this.onMouseMoveNavigationMapHeightLevel),$(this._viewport.domElement).off("mouseenter",this.onMouseenter),$(this._viewport.domElement).off("mouseleave",this.onMouseleave)},M0.prototype.onClickedNavigationMapHeightLevel=function(v,M){var w=v.data.self;M.height!==void 0&&(w.getHeightLevelMode()&&w.setHeightLevelMode(!1),w.setHeightLevel(M.height),w.setCameraHeightToHeightLevel())},M0.prototype.onMouseMoveNavigationMapHeightLevel=function(v,M){var w=v.data.self;if(w._previewPlaneLine&&M.height!==void 0){w._previewPlane.constant=-M.height;var P=new Ee;P=w._previewPlane.coplanarPoint(P),w._previewPlaneLine.position.y=P.y,w._viewport.draw()}},M0.prototype.onMouseenter=function(v){var M=v.data.self;M._previewPlaneLine&&M.getHeightLevelMode()&&(M._viewport.customScene.add(M._previewPlaneLine),M._viewport.draw())},M0.prototype.onMouseleave=function(v){var M=v.data.self;M._previewPlaneLine&&M.getHeightLevelMode()&&(M._viewport.customScene.remove(M._previewPlaneLine),M._viewport.draw())},M0.prototype.dispose=ee(ge().mark(function v(){return ge().wrap(function(M){for(;;)switch(M.prev=M.next){case 0:if(this._previewPlaneLine.geometry.dispose(),this._planeLine.geometry.dispose(),!this._viewport){M.next=5;break}return M.next=5,this._viewport.dispose();case 5:this.removeEventListeners(),this._mainViewport&&(this._mainViewport.objectSetChangedCallback=null);case 7:case"end":return M.stop()}},v,this)})),M0.prototype.initialize=function(){var v=ee(ge().mark(function M(w){var P,q;return ge().wrap(function(Z){for(;;)switch(Z.prev=Z.next){case 0:return P=w.getContent(),this._rendererProject=P,(q=this._viewport).setContent(P),this.setCameraHelperType(w.camera.type),w.getDisciplineNodeMeshes().copyTo(q.getDisciplineNodeMeshes()),P.viewports.push(q),P.getObjectsContainer().initObjects(q),q.drawDisabled=!0,q.getDisciplineNodeMeshes().updateWebGLBuffers(q),this.setViewportSize(),this.setHeightLevel(w.camera.position.y),Z.next=14,this.setMainViewport(w);case 14:return Z.next=16,this.setupMapMode();case 16:q.drawDisabled=!1,q.draw(),this.addEventListeners();case 19:case"end":return Z.stop()}},M,this)}));return function(M){return v.apply(this,arguments)}}(),M0.prototype.setCameraHelperType=function(v){this._cameraHelperType=v},M0.prototype.getCameraHelperType=function(){return this._cameraHelperType},M0.prototype.updateNavigationMapProjectionMode=function(){var v=ee(ge().mark(function M(w){var P;return ge().wrap(function(q){for(;;)switch(q.prev=q.next){case 0:if(this.setCameraHelperType(w.camera.type),this._mainViewport=w,this._mainCamera=w.camera.clone(),this._mainCamera.far=3*w.dynamicDrawRange._geoBoundingSphere.radius,w.camera.type=="orthographic"&&(P=this._mainCamera.far/2,this._mainCamera.left=P*w.camera.aspect/-2,this._mainCamera.right=P*w.camera.aspect/2,this._mainCamera.bottom=P/-2,this._mainCamera.top=P/2),this._viewport.customScene.remove(this._cameraHelper),this._cameraHelper=new $8(this._mainCamera),this._viewport.controls.setMainViewport(w),this._viewport.controls.setNavigationMap(this),this._viewport.controls.setHeightLevel(this._heightLevel),this._viewport.drawSynchronous(),this._isHeightLevelMode){q.next=14;break}return q.next=14,this.setupMapMode();case 14:case"end":return q.stop()}},M,this)}));return function(M){return v.apply(this,arguments)}}(),M0.prototype.setMainViewport=function(){var v=ee(ge().mark(function M(w){var P,q,Z,K,he=this;return ge().wrap(function(le){for(;;)switch(le.prev=le.next){case 0:return this._mainViewport=w,this._mainCamera=w.camera.clone(),this._cameraHelper=new $8(this._mainCamera),this._viewport.controls.setMainViewport(w),this._viewport.controls.setNavigationMap(this),this._viewport.controls.setHeightLevel(this._heightLevel),w.objectSetChangedCallback=function(pe){pe=="workingObjects"&&he.synchronizeWorkingObjects()},this.synchronizeWorkingObjects(),this._viewport.drawSynchronous(),le.next=11,this.setupMapMode();case 11:P=this._viewport.getContentBoundingBox(),q=mi.getStartPointOfLine(this._previewPlaneLine),Z=mi.getEndPointOfLine(this._previewPlaneLine),q.z=P.getCenterZ()-P.getDepth(),q.x=P.getCenterX(),Z.z=P.getCenterZ()+P.getDepth(),Z.x=P.getCenterX(),K=[q,Z],this._previewPlaneLine.geometry.setFromPoints(K),this._previewPlaneLine.geometry.verticesNeedUpdate=!0,this._previewPlaneLine.geometry.lineDistancesNeedUpdate=!0,this._previewPlaneLine.computeLineDistances(),this._viewport.content&&this._mainViewport.content&&(this._viewport.content.getDivisions().visibleDivisions=this._mainViewport.content.getDivisions().visibleDivisions.splice(0)),this._mainViewport.afterDrawCallback=function(){he._mainCamera.copy(he._mainViewport.camera),he._mainCamera.updateProjectionMatrix(),he._mainCamera.updateMatrixWorld(),he._viewport.draw()};case 25:case"end":return le.stop()}},M,this)}));return function(M){return v.apply(this,arguments)}}(),M0.prototype.getMainViewport=function(){return this._mainViewport},M0.prototype.registerHeightLevelModeChangedCallback=function(v){this._heightLevelModeChangedCallback=v},M0.prototype.registerIsLoadingChangedCallback=function(v){this._isLoadingChangedCallback=v},M0.prototype.setHeightLevelMode=function(){var v=ee(ge().mark(function M(w){return ge().wrap(function(P){for(;;)switch(P.prev=P.next){case 0:if(this._isHeightLevelMode=w,this._heightLevelModeChangedCallback&&this._heightLevelModeChangedCallback(w),this._viewport.controls.setHeightLevelMode(w),!w){P.next=8;break}return P.next=6,this.setupHeightLevelMode();case 6:P.next=10;break;case 8:return P.next=10,this.setupMapMode();case 10:case"end":return P.stop()}},M,this)}));return function(M){return v.apply(this,arguments)}}(),M0.prototype.getHeightLevelMode=function(){return this._isHeightLevelMode},M0.prototype.getProject=function(){return this._rendererProject},M0.prototype.isLoading=function(){return this._isLoading},M0.prototype.setupHeightLevelMode=function(){var v=this._viewport;return this._viewport.brightness=0,this._viewport.contrast=1,v.controls.setHeightLevelMode(!0),v.customScene.remove(this._cameraHelper),v.customScene.add(this._planeLine),v.customScene.add(this._previewPlaneLine),v.clippingPlanes.setEnabled(!1),v.setCameraResetAxis("x")},M0.prototype.setupMapMode=ee(ge().mark(function v(){var M,w;return ge().wrap(function(P){for(;;)switch(P.prev=P.next){case 0:return M=this._viewport,this._viewport.brightness=.2,this._viewport.contrast=.5,M.customScene.remove(this._planeLine),M.customScene.remove(this._previewPlaneLine),this._viewport.emptySectionCutSceneForSectionCutGeometry(),this._viewport.draw(),P.next=9,M.setCameraResetAxis("y");case 9:return M.controls.setHeightLevelMode(!1),M.customScene.add(this._cameraHelper),w=new Ee(0,this._heightLevel,0),M.clippingPlanes.setSectionPlane(this._levelPlane,w,!1,!0),M.clippingPlanes.setEnabled(!0),M.clippingPlanes.setVisible(!1,0),P.abrupt("return",this.updateSectionCuts());case 16:case"end":return P.stop()}},v,this)})),M0.prototype.setHeightLevel=function(v){this._heightLevel=v;var M=this._viewport;M.controls.setHeightLevel(v),this._levelPlane.constant=-v;var w=new Ee;w=this._levelPlane.coplanarPoint(w);var P=this._viewport.getContentBoundingBox(),q=mi.getStartPointOfLine(this._planeLine),Z=mi.getEndPointOfLine(this._planeLine);q.z=P.getCenterZ()-P.getDepth(),q.y=w.y,q.x=P.getCenterX(),Z.z=P.getCenterZ()+P.getDepth(),Z.y=w.y,Z.x=P.getCenterX();var K=[q,Z];this._planeLine.geometry.setFromPoints(K),this._planeLine.geometry.verticesNeedUpdate=!0,this._planeLine.geometry.lineDistancesNeedUpdate=!0,this._planeLine.computeLineDistances(),M.draw()},M0.prototype.setHeightLevelToCameraHeight=function(){this.setHeightLevel(this._mainViewport.camera.position.y)},M0.prototype.setCameraHeightToHeightLevel=ee(ge().mark(function v(){var M,w;return ge().wrap(function(P){for(;;)switch(P.prev=P.next){case 0:return M=this._viewport,(w=this._mainViewport.camera.position.clone()).y=this._heightLevel,P.next=5,this.moveCamera(w);case 5:M.draw();case 6:case"end":return P.stop()}},v,this)})),M0.prototype.moveCamera=function(v){if(this._mainViewport.isCameraFlightInProgress())return Promise.resolve();var M=new Ee(v.x,v.y,v.z),w=new Ee().subVectors(this._mainViewport.controls.target,this._mainViewport.camera.position),P=w.length();w.normalize();var q=new Ee(0,1,0),Z=w.clone().projectOnPlane(q).normalize(),K=new Ee().addVectors(M,Z.clone().multiplyScalar(P)),he=new qi().lookAt(v,K,q),le=new Ci().setFromRotationMatrix(he);return L0.cameraFlyTo(this._mainViewport.camera,this._mainViewport.controls,this._mainViewport,M,K,q,le)},M0.prototype.resetView=function(){this._viewport.camera.zoom=1,this._viewport.restoreViewbox()},M0.prototype.setViewportSize=function(){this._viewport.setViewportSize()},M0.prototype.setLoading=function(v){this._isLoading=v,this._isLoadingChangedCallback&&this._isLoadingChangedCallback(this._isLoading)},M0.prototype.setVisible=function(v){this._isVisible=v,this._viewport.noRender=!v,this._viewport.draw()},M0.prototype.updateSectionCuts=ee(ge().mark(function v(){return ge().wrap(function(M){for(;;)switch(M.prev=M.next){case 0:if(this._rendererProject&&this._isLoading!==!0){M.next=3;break}return this._deferredUpdate=!0,M.abrupt("return");case 3:return this.setLoading(!0),M.prev=4,M.next=7,this._sectionCutsLoader.loadSectionCuts(this._rendererProject,this._viewport,this._sectionSettings,!1);case 7:M.next=12;break;case 9:M.prev=9,M.t0=M.catch(4),console.error(M.t0);case 12:if(this.setLoading(!1),this._deferredUpdate!==!0){M.next=17;break}return this._deferredUpdate=!1,M.next=17,this.updateSectionCuts();case 17:this._viewport.draw();case 18:case"end":return M.stop()}},v,this,[[4,9]])})),M0.prototype.synchronizeWorkingObjects=function(){this._viewport.objectSets.workingObjects=this._mainViewport.objectSets.workingObjects.slice(),this._viewport.restoreWorkingObjectsCustomColors(),this._viewport.draw()}};let cse=M0;function mU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(mU=function(){return!!e})()}function lO(e,t,n,i){var s=Q1(xi(1&i?e.prototype:e),t,n);return 2&i&&typeof s=="function"?function(c){return s.apply(n,c)}:s}var use=function(e){function t(n){var i;return zi(this,t),i=function(s,c,u){return c=xi(c),ba(s,mU()?Reflect.construct(c,u||[],xi(s).constructor):c.apply(s,u))}(this,t,[n]),i._prevDragPosition=new Ai,i._startDragWorldPosition=new Ee,i._pinchToZoomCenterX=0,i._pinchToZoomCenterY=0,i._pinchDistance=null,i._levelPlane=new br(new Ee(0,0,1),0),i._fileView=null,i}return va(t,e),Si(t,[{key:"getOverlayElement",value:function(){var n;return(n=this._fileView)===null||n===void 0?void 0:n.overlayMeshElement}},{key:"reset",value:function(){lO(t,"reset",this,3)([]),this._prevDragPosition=new Ai,this._startDragWorldPosition=new Ee,this._pinchToZoomCenterX=0,this._pinchToZoomCenterY=0,this._pinchDistance=null}},{key:"setFileView",value:function(n){this._fileView=n}},{key:"startDrag",value:function(n,i){if(this.canProcessInputEvent(i)){var s=this._viewport;lO(t,"startDrag",this,3)([n,i]),this._prevDragPosition.x=s.mouse.x,this._prevDragPosition.y=s.mouse.y,s.renderQueue.setInteractionMode(!1),s.renderQueue.clear(),s.renderQueue.setInteractionMode(!0),s.draw();var c=s.projector.pickingRay(s.getNDCVector(),s.camera),u=new Ee;c.ray.intersectPlane(this._levelPlane,u)&&(this._startDragWorldPosition=u),this.processDrag(i)}}},{key:"processDrag",value:function(n){this._mouseButton!==2&&this._mouseButton!==1||this._processDragMove(n)}},{key:"finishDrag",value:function(n){lO(t,"finishDrag",this,3)([n])}},{key:"isDragging",value:function(){return lO(t,"isDragging",this,3)([])}},{key:"canProcessInputEvent",value:function(n){var i=this._viewport.getContentBoundingBox();return!(!i||i.getWidth()===0||i.getHeight()===0||i.getDepth()===0)||(n.preventDefault(),n.stopPropagation(),!1)}},{key:"_processDragMove",value:function(n){if(this.canProcessInputEvent(n)){var i=this._viewport,s=i.projector.pickingRay(i.getNDCVector(),i.camera),c=new Ee;if(s.ray.intersectPlane(this._levelPlane,c)){var u=new Ee;u.subVectors(this._startDragWorldPosition,c),i.controls.object.position.add(u),i.controls.target.add(u)}i.camera.lookAt(i.controls.target),i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,this._viewport.draw()}}},{key:"processMouseWheel",value:function(n,i){if(this.canProcessInputEvent(i)&&n!==0){var s=this._viewport;s.checkSelectionMode("selectPointsForOverlay")&&s.currentInteractor.processMouseWheel(i),this.processOrthographicMouseWheel(n,this._levelPlane)}}},{key:"startPinch",value:function(){var n=this._viewport;this._pinchToZoomCenterX=n.mouse.x,this._pinchToZoomCenterY=n.mouse.y}},{key:"finishPinch",value:function(){this._pinchDistance=null}},{key:"processPinch",value:function(n){if(this.canProcessInputEvent(n)){var i=this._viewport;i.controls.noZoom=!0;var s=n.originalEvent.touches[0].clientX-n.originalEvent.touches[1].clientX,c=n.originalEvent.touches[0].clientY-n.originalEvent.touches[1].clientY,u=Math.sqrt(s*s+c*c),m=lO(t,"roundToStep",this,3)([u,5]);if(this._pinchDistance!==null){var v=m-this._pinchDistance;if(this._pinchDistance=m,v<0)v=.95;else{if(!(v>0))return;v=1.05}i.camera.zoom*=v,i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),n.preventDefault(),n.stopPropagation(),i.controls.noZoom=!0,i.draw()}else this._pinchDistance=m}}},{key:"processClick",value:function(n){var i=this._viewport;i.isCameraFlightInProgress()||this.canProcessInputEvent(n)&&i.checkSelectionMode("selectPointsForOverlay")&&i.currentInteractor.processMouseClick(n)}},{key:"processMouseMove",value:function(){}},{key:"canStartDrag",value:function(){return!0}},{key:"startPan",value:function(n){var i=this._viewport;lO(t,"startPan",this,3)([n]),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,i.renderQueue.setInteractionMode(!1),i.renderQueue.clear(),i.renderQueue.setInteractionMode(!0),i.draw();var s=i.projector.pickingRay(i.getNDCVector(),i.camera),c=new Ee;s.ray.intersectPlane(this._levelPlane,c)&&(this._startDragWorldPosition=c),this.processPan(n)}},{key:"finishPan",value:function(){lO(t,"finishPan",this,3)([])}},{key:"isPaning",value:function(){return lO(t,"isPaning",this,3)([])}},{key:"processPan",value:function(n){var i=this._viewport;if(this.canProcessInputEvent(n)){var s=i.projector.pickingRay(i.getNDCVector(),i.camera),c=new Ee;if(s.ray.intersectPlane(this._levelPlane,c)){var u=new Ee;u.subVectors(this._startDragWorldPosition,c),i.controls.object.position.add(u),i.controls.target.add(u)}i.camera.lookAt(i.controls.target),i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,n.preventDefault(),n.stopPropagation(),i.draw()}}},{key:"supportsGPUPicking",value:function(){return!1}}])}(eN),dse=function(){return Si(function n(i,s,c){zi(this,n),this._viewport=new hS({camera:{type:"orthographic",left:-.5,right:.5,top:.5,bottom:-.5,near:-1e3,far:1e3,position:{x:0,y:0,z:2e3}},controls:{type:"FileViewControl",target:{x:0,y:0,z:0}},settings:i,domElementId:c,name:"fileViewViewport",ssaoSupported:!1,shadowsSupported:!1,disableTransformControls:!0}),this._api=s,this._glbParser=new DW(this._viewport),this._viewport.controls.setFileView(this),this._isLoadingChangedCallback=null,this._isLoading=!1,this._isVisible=!0,this._fileData=null,this.overlayMeshElement=null,this.scene=this._viewport.overlays.scene},[{key:"dispose",value:(t=ee(ge().mark(function n(){return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:if(!this._viewport){i.next=3;break}return i.next=3,this._viewport.dispose();case 3:case"end":return i.stop()}},n,this)})),function(){return t.apply(this,arguments)})},{key:"registerIsLoadingChangedCallback",value:function(n){this._isLoadingChangedCallback=n}},{key:"isLoading",value:function(){return this._isLoading}},{key:"resetView",value:function(){var n;this._viewport.camera.zoom=1,this._viewport.camera.position.set(0,0,this.CAMERA_OFFSET),this._viewport.controls.target.set(0,0,0),(n=this._viewport.currentInteractor)===null||n===void 0||n.resizeMatchPointsDimension(),this._viewport.camera.updateProjectionMatrix(),this._viewport.camera.updateMatrixWorld(),this._viewport.draw()}},{key:"getBoundingBox",value:function(){var n=new iO,i=new si;return this._tempBoundingBox=mi.calculateVisibleGeometryBoundingBox(this.scene,i),i.isEmpty()===!1&&n.expandByBox3(i),n}},{key:"setViewportSize",value:function(){var n=this._viewport,i=this.getBoundingBox();if(i){var s=i.isValid()?.8*Math.max(i.getWidth(),i.getDepth(),i.getHeight()):0;n.drawDisabled=!0,n.setViewportSize(),n.drawDisabled=!1,n.camera&&(n.camera.left=-s*n.camera.aspect,n.camera.right=+s*n.camera.aspect,n.camera.top=+s,n.camera.bottom=-s,n.camera.updateProjectionMatrix(),n.camera.updateMatrixWorld()),n.draw()}}},{key:"setLoading",value:function(n){this._isLoading=n,this._isLoadingChangedCallback&&this._isLoadingChangedCallback(this._isLoading)}},{key:"setVisible",value:function(n){this._isVisible=n,this._viewport.noRender=!n,this._viewport.draw()}},{key:"getFileData",value:function(){return this._fileData&&(this._fileData.boundingBox=this.getBoundingBox()),this._fileData}},{key:"setFileData",value:function(n){this._fileData=n}},{key:"getViewport",value:function(){return this._viewport}},{key:"loadFileContent",value:(e=ee(ge().mark(function n(){var i,s;return ge().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:if(console.debug("[Renderer] FileView - loadFileContent called: fileData = ",this._fileData),this._isLoading!==!0){c.next=3;break}return c.abrupt("return");case 3:return c.prev=3,this.setLoading(!0),DT.clearScene(this.scene),this.overlayMeshElement=null,this._viewport.draw(),c.next=10,this._api.objects.getGLB(this._fileData.id,this._fileData.version);case 10:return i=c.sent,c.next=13,this._glbParser.parseGLB(i,this._fileData.id);case 13:(s=c.sent).isGroup&&j7.addBorderMesh(s,this._fileData.id),this.overlayMeshElement=this._viewport.objectFactory.createVisualObject({id:s.id,mesh:s.isGroup?s.borderMesh:s}),this.scene.add(s),this._viewport.draw(),c.next=24;break;case 20:throw c.prev=20,c.t0=c.catch(3),console.error(c.t0),c.t0;case 24:return c.prev=24,this.setLoading(!1),c.finish(24);case 27:case"end":return c.stop()}},n,this,[[3,20,24,27]])})),function(){return e.apply(this,arguments)})}]);var e,t}();function pse(){this.valueValidator=new g7;var e=!1,t=!1,n=!1,i=!1,s="rgb(255,255,255)",c="rgb(153,153,153)",u=.6108652381980153,m=.8726646259971648,v="ambientOcclusionSettings";this._usage=null,this._usageForInteraction=null,this._useShadows=null,this._useShadowsForInteraction=null,this._lightColor=null,this._ambientLightColor=null,this._lightRotation=null,this._lightElevation=null,this._getLocalStorageData=function(){return localStorage.getItem(v)?JSON.parse(localStorage.getItem(v)):this.resetToDefault()},this._setLocalStorageData=function(){var M={usage:this._usage,usageForInteraction:this._usageForInteraction,lightColor:this._lightColor.getStyle(),ambientLightColor:this._ambientLightColor.getStyle(),lightRotation:this._lightRotation,lightElevation:this._lightElevation,useShadows:this._useShadows,useShadowsForInteraction:this._useShadowsForInteraction};localStorage.setItem(v,JSON.stringify(M))},this.invalidate=function(){this._usage=null,this._usageForInteraction=null,this._lightColor=null,this._ambientLightColor=null,this._lightRotation=null,this._lightElevation=null,this._useShadows=null,this._useShadowsForInteraction=null},this.getUsage=function(){if(this._usage!==null)return this._usage;var M=this._getLocalStorageData();return this._usage=this.valueValidator.validateBoolean(M.usage,e),this._usage},this.getUsageForInteraction=function(){if(this._usageForInteraction!==null)return this._usageForInteraction;var M=this._getLocalStorageData();return this._usageForInteraction=this.valueValidator.validateBoolean(M.usageForInteraction,t),this._usageForInteraction},this.getUseShadows=function(){if(this._useShadows!==null)return this._useShadows;var M=this._getLocalStorageData();return this._useShadows=this.valueValidator.validateBoolean(M.useShadows,n),this._useShadows},this.getUseShadowsForInteraction=function(){if(this._useShadowsForInteraction!==null)return this._useShadowsForInteraction;var M=this._getLocalStorageData();return this._useShadowsForInteraction=this.valueValidator.validateBoolean(M.useShadowsForInteraction,i),this._useShadowsForInteraction},this.getLightColor=function(){if(this._lightColor)return this._lightColor;var M=this._getLocalStorageData();return this._lightColor=this.valueValidator.validateColor(M.lightColor,s),this._lightColor},this.getAmbientLightColor=function(){if(this._ambientLightColor)return this._ambientLightColor;var M=this._getLocalStorageData();return this._ambientLightColor=this.valueValidator.validateColor(M.ambientLightColor,c),this._ambientLightColor},this.getLightElevation=function(){if(this._lightElevation)return this._lightElevation;var M=this._getLocalStorageData();return this._lightElevation=this.valueValidator.validateFloat(M.lightElevation,m),this._lightElevation},this.getLightRotation=function(){if(this._lightRotation)return this._lightRotation;var M=this._getLocalStorageData();return this._lightRotation=this.valueValidator.validateFloat(M.lightRotation,u),this._lightRotation},this.resetToDefault=function(){return this._usage=e,this._usageForInteraction=t,this._useShadows=n,this._useShadowsForInteraction=i,this._lightColor=new ri(s),this._ambientLightColor=new ri(c),this._lightElevation=m,this._lightRotation=u,this._setLocalStorageData(),this.get()},this.get=function(){return{usage:this.getUsage(),usageForInteraction:this.getUsageForInteraction(),useShadows:this.getUseShadows(),useShadowsForInteraction:this.getUseShadowsForInteraction(),lightColor:this.getLightColor(),ambientLightColor:this.getAmbientLightColor(),lightRotation:this.getLightRotation(),lightElevation:this.getLightElevation()}},this.set=function(M){this._usage=this.valueValidator.validateBoolean(M.usage,e),this._usageForInteraction=this.valueValidator.validateBoolean(M.usageForInteraction,t),this._useShadows=this.valueValidator.validateBoolean(M.useShadows,n),this._useShadowsForInteraction=this.valueValidator.validateBoolean(M.useShadowsForInteraction,i),this._lightColor=this.valueValidator.validateColor(M.lightColor,s),this._ambientLightColor=this.valueValidator.validateColor(M.ambientLightColor,c),this._lightElevation=this.valueValidator.validateFloat(M.lightElevation,m),this._lightRotation=this.valueValidator.validateFloat(M.lightRotation,u),this._setLocalStorageData()}}let hse=function(){return Si(function e(t){zi(this,e),this.viewport=t,this.scene=new ke,this.scene.name="localCoordSystemScene",this.labelsScene=new ke,this.labelsScene.name="localCoordSystemLabelScene",this.localCoordSystem=null},[{key:"worldToLocal",value:function(e){if(!this.localCoordSystem)return e;var t=new Ee;return t.copy(e),this.localCoordSystem.worldToLocal(t)}},{key:"localToWorld",value:function(e){if(!this.localCoordSystem)return e;var t=new Ee;return t.copy(e),this.localCoordSystem.localToWorld(t)}},{key:"reset",value:function(){DT.clearScene(this.scene),DT.clearScene(this.labelsScene),this.localCoordSystem&&this.localCoordSystem.dispose(),this.localCoordSystem=null}},{key:"set",value:function(e){this.localCoordSystem=e}},{key:"hasLCS",value:function(){return this.localCoordSystem}},{key:"render",value:function(){this.viewport.isMarkupMode()&&(this.viewport.renderer.sortObjects=!0,this.viewport.renderer.render(this.scene,this.viewport.camera),this.viewport.renderer.sortObjects=!1)}},{key:"dispose",value:function(){this.reset()}}])}();function LT(e,t){var n=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(v,M){if(v){if(typeof v=="string")return bU(v,M);var w={}.toString.call(v).slice(8,-1);return w==="Object"&&v.constructor&&(w=v.constructor.name),w==="Map"||w==="Set"?Array.from(v):w==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(w)?bU(v,M):void 0}}(e))||t&&e&&typeof e.length=="number"){n&&(e=n);var i=0,s=function(){};return{s,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(v){throw v},f:s}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
5604
5604
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var c,u=!0,m=!1;return{s:function(){n=n.call(e)},n:function(){var v=n.next();return u=v.done,v},e:function(v){m=!0,c=v},f:function(){try{u||n.return==null||n.return()}finally{if(m)throw c}}}}function bU(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=Array(t);n<t;n++)i[n]=e[n];return i}var tN=function(e){this.viewport=e,this.objectUtils=new lL(this.viewport),this.scene=new ke,this.scene.name="markupsScene",this.labelsScene=new ke,this.labelsScene.name="markupsLabelScene",this.markups=[],this.workingObjects=[],this.countOfElems=function(){return this.markups.length},this.get=function(t){return this.markups[t]},this.add=function(t){t.convertSectionGeometryIdsToObjectIds(),this.markups.push(t)},this.updateLabel=function(t,n){var i=t.containsPoint(n.calcTextPosition());return n.setLabelVisible(i),n.updateLabel(this.viewport.projector,this.viewport.camera,this.viewport.orthoCamera),i},this.setVisibleState=function(t){var n=this,i=!0;return t.getObjectIds().map(function(s){n.viewport.isVisibleObject(s)||(i=!1)}),t.setVisible(i),i},this.applyClipping=function(t,n){if(n){var i;if(t.hasObjectId((i=this.viewport.objectUnderMouse)===null||i===void 0?void 0:i.id))return void(t.isClipped&&t.unClip());t.clip(this.viewport.clippingPlanes)}else t.isClipped&&t.unClip()},this.render=function(){var t=this,n=arguments.length>0&&arguments[0]!==void 0&&arguments[0];if(this.viewport.isMarkupMode()){var i=this.viewport.checkSelectionMode("section"),s=this.viewport.renderQueue.frustum;this.markups.forEach(function(c){t.setVisibleState(c)?(t.updateLabel(s,c),t.applyClipping(c,i)):c.setLabelVisible(!1)}),tN.USE_TRANSPARENCY&&!n&&(this.markups.forEach(function(c){return c.setMaterial(!0)}),this.viewport.renderer.sortObjects=!1,this.viewport.renderer.render(this.scene,this.viewport.camera)),this.markups.forEach(function(c){return c.setMaterial(!1)}),this.viewport.renderer.sortObjects=!0,this.viewport.renderer.render(this.scene,this.viewport.camera),n&&this.markups.forEach(function(c){return c.setLabelOpaque(n)}),this.viewport.renderer.sortObjects=!0,this.viewport.renderer.render(this.labelsScene,this.viewport.orthoCamera),this.viewport.renderer.sortObjects=!1}},this.has=function(t){var n,i=LT(this.markups);try{for(i.s();!(n=i.n()).done;){var s=n.value;if(t==="annotations"&&s instanceof mL||t==="labels"&&s instanceof fL||t==="dimensions"&&s instanceof z5)return!0}}catch(c){i.e(c)}finally{i.f()}return!1},this.getAll=function(t){var n,i=[],s=LT(this.markups);try{for(s.s();!(n=s.n()).done;){var c=n.value;(t==="annotations"&&c instanceof mL||t==="labels"&&c instanceof fL||t==="dimensions"&&c instanceof z5)&&i.push(c.getObjectData())}}catch(u){s.e(u)}finally{s.f()}return i},this.setAnnotations=function(t){this.removeAll("annotations");var n,i=LT(t);try{for(i.s();!(n=i.n()).done;){var s=n.value,c=new oW(this.viewport);c.setObjectData(s),this.add(c),c.addToScene(this.scene,this.labelsScene),c.updateGeometry(this.viewport.projector,this.viewport.camera,this.viewport.orthoCamera),c.setVisible(!0),c.setMaterial(!0),c.setLabelVisible(!0),c.setDeleteButtonVisible(!0)}}catch(u){i.e(u)}finally{i.f()}this.viewport.draw()},this.setDimensions=function(t){this.removeAll("dimensions");var n,i=LT(t);try{for(i.s();!(n=i.n()).done;){var s=n.value,c=null;switch(s.type){case"DimensionLine":c=new yq(this.viewport);break;case"DimensionPerpendicularLine":c=new C7(this.viewport);break;case"DimensionEdge":c=new hL(this.viewport);break;case"DimensionLocalPoint":c=new Cq(this.viewport,this.viewport.textLocalizationFnc("_Measure_Local_Point_Shortcut_For_Dimension_Label"));break;case"DimensionCalibrationPoint":c=new Sq(this.viewport,this.viewport.textLocalizationFnc("_Measure_Calibrated_Point_Shortcut_For_Dimension_Label"));break;case"DimensionAngle":c=new Aq(this.viewport);break;default:console.warn("Dimension type ".concat(s.type," is not defined"))}c&&(c.setObjectData(s),this.add(c),c.addToScene(this.scene,this.labelsScene),c.updateGeometry(this.labelsScene,this.viewport.projector,this.viewport.camera,this.viewport.orthoCamera),c.setVisible(!0),c.setMaterial(!0),c.setLabelVisible(!0),c.setDeleteButtonVisible(!0))}}catch(u){i.e(u)}finally{i.f()}this.viewport.draw()},this.setLabels=function(t){this.removeAll("labels");var n,i=LT(t);try{for(i.s();!(n=i.n()).done;){var s=n.value,c=new N7;c.setObjectData(s),c.addObjectId(s.objectIds[0]),this.add(c),c.addToScene(this.scene,this.labelsScene),c.updateGeometry(this.labelsScene,this.viewport.projector,this.viewport.camera,this.viewport.orthoCamera),c.setVisible(!0),c.setMaterial(!0),c.setLabelVisible(!0),c.setDeleteButtonVisible(!0)}}catch(u){i.e(u)}finally{i.f()}this.viewport.draw()},this.remove=function(t){for(var n=0;n<this.markups.length;n++)if(this.markups[n]===t)return this.markups.splice(n,1),t.removeFromScene(this.scene,this.labelsScene),void t.dispose()},this.removeAll=function(t){var n,i=[],s=LT(this.markups);try{for(s.s();!(n=s.n()).done;){var c=n.value;t===""||!t||t==="annotations"&&c instanceof mL||t==="labels"&&c instanceof fL||t==="dimensions"&&c instanceof z5?(c.removeFromScene(this.scene,this.labelsScene),c.dispose()):i.push(c)}}catch(u){s.e(u)}finally{s.f()}this.markups=i},this._getIsolatedObjectIds=function(){var t=[];return this.markups.forEach(function(n){n.isIsolated()&&n.getObjectIds().map(function(i){t.indexOf(i)<0&&t.push(i)})}),t},this.cleanupIsolation=function(){this.viewport.checkSelectionMode("isolated")&&this.isolate()},this.isolate=function(){var t=this,n=this.viewport.checkSelectionMode("isolated");n||(this.viewport.setSelectionMode("isolated"),n=!0),this.viewport.disposeIsolatedSet(),this.viewport.removeObjectsFromWorkingSet(this.workingObjects),this.workingObjects=[],this._getIsolatedObjectIds().forEach(function(i){var s=t.viewport.getObject(i);s&&t.workingObjects.push(s)}),this.viewport.addObjectsToWorkingSet(this.workingObjects),this.viewport.makeIsolatedSet(),this.workingObjects.length===0&&n&&this.viewport.setSelectionMode("isolated")},this.mouseMove=function(t){for(var n=this,i=n.markups.length-1;i>=0;i--){var s;if(n.markups[i].mouseMove(t))return n.markups.push(n.markups.splice(i,1)[0]),n.viewport.highlight.setAllInvisible(),(s=n.viewport.currentInteractor)===null||s===void 0||s.canNotBeAdded(),n.viewport.draw(),!0}return!1},this.mouseUp=function(t){for(var n=this.markups.length,i=0;i<n;i++)if(this.markups[i].mouseUp(t)===!0)return!0;return!1},this.mouseUpDblClick=function(t){for(var n=this,i=n.markups.length,s=0;s<i;s++)if(n.markups[s].mouseUpDblClick(t)===!0)return n.markups[s];return null},this.mouseActionNeedsLabelUpdate=function(){var t,n=this,i=this;if(i!=null&&(t=i.viewport)!==null&&t!==void 0&&(t=t.currentInteractor)!==null&&t!==void 0&&t.preview&&i.viewport.currentInteractor.name!=="MarkupNoInputInteractor"&&i.viewport.currentInteractor.name!=="LocalCoordSystemInteractor"){var s=i.viewport.renderQueue.frustum;Array.isArray(i.viewport.currentInteractor.preview)?i.viewport.currentInteractor.preview.forEach(function(c){return n.updateLabel(s,c)}):(this.updateLabel(s,i.viewport.currentInteractor.preview),i.viewport.currentInteractor.preview.setDeleteButtonVisible(!1))}},this.dispose=function(){this.removeAll()}};tN.USE_TRANSPARENCY=l1.getUseTransparency();let fse=tN;function mD(e){return function(...t){var n=t.pop();return e.call(this,t,n)}}var mse=typeof queueMicrotask=="function"&&queueMicrotask,vU=typeof setImmediate=="function"&&setImmediate,gU=typeof process=="object"&&typeof process.nextTick=="function";function yU(e){setTimeout(e,0)}function MU(e){return(t,...n)=>e(()=>t(...n))}var F5=MU(mse?queueMicrotask:vU?setImmediate:gU?process.nextTick:yU);function nN(e){return bD(e)?function(...t){let n=t.pop();return IU(e.apply(this,t),n)}:mD(function(t,n){var i;try{i=e.apply(this,t)}catch(s){return n(s)}if(i&&typeof i.then=="function")return IU(i,n);n(null,i)})}function IU(e,t){return e.then(n=>{AU(t,null,n)},n=>{AU(t,n&&(n instanceof Error||n.message)?n:new Error(n))})}function AU(e,t,n){try{e(t,n)}catch(i){F5(s=>{throw s},i)}}function bD(e){return e[Symbol.toStringTag]==="AsyncFunction"}function gl(e){if(typeof e!="function")throw new Error("expected a function");return bD(e)?nN(e):e}function dl(e,t){if(t||(t=e.length),!t)throw new Error("arity is undefined");return function(...n){return typeof n[t-1]=="function"?e.apply(this,n):new Promise((i,s)=>{n[t-1]=(c,...u)=>{if(c)return s(c);i(u.length>1?u:u[0])},e.apply(this,n)})}}function OU(e){return function(t,...n){return dl(function(i){var s=this;return e(t,(c,u)=>{gl(c).apply(s,n.concat(u))},i)})}}function iN(e,t,n,i){t=t||[];var s=[],c=0,u=gl(n);return e(t,(m,v,M)=>{var w=c++;u(m,(P,q)=>{s[w]=q,M(P)})},m=>{i(m,s)})}function DL(e){return e&&typeof e.length=="number"&&e.length>=0&&e.length%1==0}let SL={};function cO(e){function t(...n){if(e!==null){var i=e;e=null,i.apply(this,n)}}return Object.assign(t,e),t}function bse(e){if(DL(e))return function(u){var m=-1,v=u.length;return function(){return++m<v?{value:u[m],key:m}:null}}(e);var t,n,i,s,c=function(u){return u[Symbol.iterator]&&u[Symbol.iterator]()}(e);return c?function(u){var m=-1;return function(){var v=u.next();return v.done?null:(m++,{value:v.value,key:m})}}(c):(n=(t=e)?Object.keys(t):[],i=-1,s=n.length,function u(){var m=n[++i];return m==="__proto__"?u():i<s?{value:t[m],key:m}:null})}function uO(e){return function(...t){if(e===null)throw new Error("Callback was already called.");var n=e;e=null,n.apply(this,t)}}function wU(e,t,n,i){let s=!1,c=!1,u=!1,m=0,v=0;function M(){m>=t||u||s||(u=!0,e.next().then(({value:q,done:Z})=>{if(!c&&!s){if(u=!1,Z)return s=!0,void(m<=0&&i(null));m++,n(q,v,w),v++,M()}}).catch(P))}function w(q,Z){if(m-=1,!c)return q?P(q):q===!1?(s=!0,void(c=!0)):Z===SL||s&&m<=0?(s=!0,i(null)):void M()}function P(q){c||(u=!1,s=!0,i(q))}M()}var Dy=e=>(t,n,i)=>{if(i=cO(i),e<=0)throw new RangeError("concurrency limit cannot be less than 1");if(!t)return i(null);if(t[Symbol.toStringTag]==="AsyncGenerator")return wU(t,e,n,i);if(function(P){return typeof P[Symbol.asyncIterator]=="function"}(t))return wU(t[Symbol.asyncIterator](),e,n,i);var s=bse(t),c=!1,u=!1,m=0,v=!1;function M(P,q){if(!u)if(m-=1,P)c=!0,i(P);else if(P===!1)c=!0,u=!0;else{if(q===SL||c&&m<=0)return c=!0,i(null);v||w()}}function w(){for(v=!0;m<e&&!c;){var P=s();if(P===null)return c=!0,void(m<=0&&i(null));m+=1,n(P.value,P.key,uO(M))}v=!1}w()},zL=dl(function(e,t,n,i){return Dy(t)(e,gl(n),i)},4);function vse(e,t,n){n=cO(n);var i=0,s=0,{length:c}=e,u=!1;function m(v,M){v===!1&&(u=!0),u!==!0&&(v?n(v):++s!==c&&M!==SL||n(null))}for(c===0&&n(null);i<c;i++)t(e[i],i,uO(m))}function gse(e,t,n){return zL(e,1/0,t,n)}var Sy=dl(function(e,t,n){return(DL(e)?vse:gse)(e,gl(t),n)},3),sN=dl(function(e,t,n){return iN(Sy,e,t,n)},3),yse=OU(sN),u4=dl(function(e,t,n){return zL(e,1,t,n)},3),_U=dl(function(e,t,n){return iN(u4,e,t,n)},3),Mse=OU(_U);let RT=Symbol("promiseCallback");function xT(){let e,t;function n(i,...s){if(i)return t(i);e(s.length>1?s:s[0])}return n[RT]=new Promise((i,s)=>{e=i,t=s}),n}function TU(e,t,n){typeof t!="number"&&(n=t,t=null),n=cO(n||xT());var i=Object.keys(e).length;if(!i)return n(null);t||(t=i);var s={},c=0,u=!1,m=!1,v=Object.create(null),M=[],w=[],P={};function q(he,le){M.push(()=>function(pe,Ie){if(!m){var Ce=uO((Ge,...Fe)=>{if(c--,Ge!==!1)if(Fe.length<2&&([Fe]=Fe),Ge){var Pe={};if(Object.keys(s).forEach(Ve=>{Pe[Ve]=s[Ve]}),Pe[pe]=Fe,m=!0,v=Object.create(null),u)return;n(Ge,Pe)}else s[pe]=Fe,(v[pe]||[]).forEach(Ve=>Ve()),Z();else u=!0});c++;var Ne=gl(Ie[Ie.length-1]);Ie.length>1?Ne(s,Ce):Ne(Ce)}}(he,le))}function Z(){if(!u){if(M.length===0&&c===0)return n(null,s);for(;M.length&&c<t;)M.shift()()}}function K(he){var le=[];return Object.keys(e).forEach(pe=>{let Ie=e[pe];Array.isArray(Ie)&&Ie.indexOf(he)>=0&&le.push(pe)}),le}return Object.keys(e).forEach(he=>{var le=e[he];if(!Array.isArray(le))return q(he,[le]),void w.push(he);var pe=le.slice(0,le.length-1),Ie=pe.length;if(Ie===0)return q(he,le),void w.push(he);P[he]=Ie,pe.forEach(Ce=>{if(!e[Ce])throw new Error("async.auto task `"+he+"` has a non-existent dependency `"+Ce+"` in "+pe.join(", "));(function(Ne,Ge){var Fe=v[Ne];Fe||(Fe=v[Ne]=[]),Fe.push(Ge)})(Ce,()=>{--Ie===0&&q(he,le)})})}),function(){for(var he=0;w.length;)he++,K(w.pop()).forEach(le=>{--P[le]==0&&w.push(le)});if(he!==i)throw new Error("async.auto cannot execute tasks due to a recursive dependency")}(),Z(),n[RT]}var Ise=/^(?:async\s)?(?:function)?\s*(?:\w+\s*)?\(([^)]+)\)(?:\s*{)/,Ase=/^(?:async\s)?\s*(?:\(\s*)?((?:[^)=\s]\s*)*)(?:\)\s*)?=>/,Ose=/,/,wse=/(=.+)?(\s*)$/;class _se{constructor(){this.head=this.tail=null,this.length=0}removeLink(t){return t.prev?t.prev.next=t.next:this.head=t.next,t.next?t.next.prev=t.prev:this.tail=t.prev,t.prev=t.next=null,this.length-=1,t}empty(){for(;this.head;)this.shift();return this}insertAfter(t,n){n.prev=t,n.next=t.next,t.next?t.next.prev=n:this.tail=n,t.next=n,this.length+=1}insertBefore(t,n){n.prev=t.prev,n.next=t,t.prev?t.prev.next=n:this.head=n,t.prev=n,this.length+=1}unshift(t){this.head?this.insertBefore(this.head,t):EU(this,t)}push(t){this.tail?this.insertAfter(this.tail,t):EU(this,t)}shift(){return this.head&&this.removeLink(this.head)}pop(){return this.tail&&this.removeLink(this.tail)}toArray(){return[...this]}*[Symbol.iterator](){for(var t=this.head;t;)yield t.data,t=t.next}remove(t){for(var n=this.head;n;){var{next:i}=n;t(n)&&this.removeLink(n),n=i}return this}}function EU(e,t){e.length=1,e.head=e.tail=t}function rN(e,t,n){if(t==null)t=1;else if(t===0)throw new RangeError("Concurrency must not be zero");var i=gl(e),s=0,c=[];let u={error:[],drain:[],saturated:[],unsaturated:[],empty:[]};function m(le,pe){return le?pe?void(u[le]=u[le].filter(Ie=>Ie!==pe)):u[le]=[]:Object.keys(u).forEach(Ie=>u[Ie]=[])}function v(le,...pe){u[le].forEach(Ie=>Ie(...pe))}var M=!1;function w(le,pe,Ie,Ce){if(Ce!=null&&typeof Ce!="function")throw new Error("task callback must be a function");var Ne,Ge;function Fe(Ve,...ot){return Ve?Ie?Ge(Ve):Ne():ot.length<=1?Ne(ot[0]):void Ne(ot)}he.started=!0;var Pe=he._createTaskItem(le,Ie?Fe:Ce||Fe);if(pe?he._tasks.unshift(Pe):he._tasks.push(Pe),M||(M=!0,F5(()=>{M=!1,he.process()})),Ie||!Ce)return new Promise((Ve,ot)=>{Ne=Ve,Ge=ot})}function P(le){return function(pe,...Ie){s-=1;for(var Ce=0,Ne=le.length;Ce<Ne;Ce++){var Ge=le[Ce],Fe=c.indexOf(Ge);Fe===0?c.shift():Fe>0&&c.splice(Fe,1),Ge.callback(pe,...Ie),pe!=null&&v("error",pe,Ge.data)}s<=he.concurrency-he.buffer&&v("unsaturated"),he.idle()&&v("drain"),he.process()}}function q(le){return!(le.length!==0||!he.idle())&&(F5(()=>v("drain")),!0)}let Z=le=>pe=>{if(!pe)return new Promise((Ie,Ce)=>{(function(Ne,Ge){let Fe=(...Pe)=>{m(Ne,Fe),Ge(...Pe)};u[Ne].push(Fe)})(le,(Ne,Ge)=>{if(Ne)return Ce(Ne);Ie(Ge)})});m(le),function(Ie,Ce){u[Ie].push(Ce)}(le,pe)};var K=!1,he={_tasks:new _se,_createTaskItem:(le,pe)=>({data:le,callback:pe}),*[Symbol.iterator](){yield*zY(he._tasks[Symbol.iterator]())},concurrency:t,payload:n,buffer:t/4,started:!1,paused:!1,push(le,pe){return Array.isArray(le)?q(le)?void 0:le.map(Ie=>w(Ie,!1,!1,pe)):w(le,!1,!1,pe)},pushAsync(le,pe){return Array.isArray(le)?q(le)?void 0:le.map(Ie=>w(Ie,!1,!0,pe)):w(le,!1,!0,pe)},kill(){m(),he._tasks.empty()},unshift(le,pe){return Array.isArray(le)?q(le)?void 0:le.map(Ie=>w(Ie,!0,!1,pe)):w(le,!0,!1,pe)},unshiftAsync(le,pe){return Array.isArray(le)?q(le)?void 0:le.map(Ie=>w(Ie,!0,!0,pe)):w(le,!0,!0,pe)},remove(le){he._tasks.remove(le)},process(){if(!K){for(K=!0;!he.paused&&s<he.concurrency&&he._tasks.length;){var le=[],pe=[],Ie=he._tasks.length;he.payload&&(Ie=Math.min(Ie,he.payload));for(var Ce=0;Ce<Ie;Ce++){var Ne=he._tasks.shift();le.push(Ne),c.push(Ne),pe.push(Ne.data)}s+=1,he._tasks.length===0&&v("empty"),s===he.concurrency&&v("saturated");var Ge=uO(P(le));i(pe,Ge)}K=!1}},length:()=>he._tasks.length,running:()=>s,workersList:()=>c,idle:()=>he._tasks.length+s===0,pause(){he.paused=!0},resume(){he.paused!==!1&&(he.paused=!1,F5(he.process))}};return Object.defineProperties(he,{saturated:{writable:!1,value:Z("saturated")},unsaturated:{writable:!1,value:Z("unsaturated")},empty:{writable:!1,value:Z("empty")},drain:{writable:!1,value:Z("drain")},error:{writable:!1,value:Z("error")}}),he}var vD=dl(function(e,t,n,i){i=cO(i);var s=gl(n);return u4(e,(c,u,m)=>{s(t,c,(v,M)=>{t=M,m(v)})},c=>i(c,t))},4);function CU(...e){var t=e.map(gl);return function(...n){var i=this,s=n[n.length-1];return typeof s=="function"?n.pop():s=xT(),vD(t,n,(c,u,m)=>{u.apply(i,c.concat((v,...M)=>{m(v,M)}))},(c,u)=>s(c,...u)),s[RT]}}var LL=dl(function(e,t,n,i){return iN(Dy(t),e,n,i)},4),RL=dl(function(e,t,n,i){var s=gl(n);return LL(e,t,(c,u)=>{s(c,(m,...v)=>m?u(m):u(m,v))},(c,u)=>{for(var m=[],v=0;v<u.length;v++)u[v]&&(m=m.concat(...u[v]));return i(c,m)})},4),DU=dl(function(e,t,n){return RL(e,1/0,t,n)},3),SU=dl(function(e,t,n){return RL(e,1,t,n)},3);function d4(e,t){return(n,i,s,c)=>{var u,m=!1;let v=gl(s);n(i,(M,w,P)=>{v(M,(q,Z)=>q||q===!1?P(q):e(Z)&&!u?(m=!0,u=t(!0,M),P(null,SL)):void P())},M=>{if(M)return c(M);c(null,m?u:t(!1))})}}var zU=dl(function(e,t,n){return d4(i=>i,(i,s)=>s)(Sy,e,t,n)},3),LU=dl(function(e,t,n,i){return d4(s=>s,(s,c)=>c)(Dy(t),e,n,i)},4),RU=dl(function(e,t,n){return d4(i=>i,(i,s)=>s)(Dy(1),e,t,n)},3);function xU(e){return(t,...n)=>gl(t)(...n,(i,...s)=>{typeof console=="object"&&(i?console.error&&console.error(i):console[e]&&s.forEach(c=>console[e](c)))})}var Tse=xU("dir"),aN=dl(function(e,t,n){n=uO(n);var i,s=gl(e),c=gl(t);function u(v,...M){if(v)return n(v);v!==!1&&(i=M,c(...M,m))}function m(v,M){return v?n(v):v!==!1?M?void s(u):n(null,...i):void 0}return m(null,!0)},3);function NU(e){return(t,n,i)=>e(t,i)}var PU=dl(function(e,t,n){return Sy(e,NU(gl(t)),n)},3),oN=dl(function(e,t,n,i){return Dy(t)(e,NU(gl(n)),i)},4),lN=dl(function(e,t,n){return oN(e,1,t,n)},3);function BU(e){return bD(e)?e:function(...t){var n=t.pop(),i=!0;t.push((...s)=>{i?F5(()=>n(...s)):n(...s)}),e.apply(this,t),i=!1}}var kU=dl(function(e,t,n){return d4(i=>!i,i=>!i)(Sy,e,t,n)},3),HU=dl(function(e,t,n,i){return d4(s=>!s,s=>!s)(Dy(t),e,n,i)},4),FU=dl(function(e,t,n){return d4(i=>!i,i=>!i)(u4,e,t,n)},3);function Ese(e,t,n,i){var s=new Array(t.length);e(t,(c,u,m)=>{n(c,(v,M)=>{s[u]=!!M,m(v)})},c=>{if(c)return i(c);for(var u=[],m=0;m<t.length;m++)s[m]&&u.push(t[m]);i(null,u)})}function Cse(e,t,n,i){var s=[];e(t,(c,u,m)=>{n(c,(v,M)=>{if(v)return m(v);M&&s.push({index:u,value:c}),m(v)})},c=>{if(c)return i(c);i(null,s.sort((u,m)=>u.index-m.index).map(u=>u.value))})}function xL(e,t,n,i){return(DL(t)?Ese:Cse)(e,t,gl(n),i)}var qU=dl(function(e,t,n){return xL(Sy,e,t,n)},3),WU=dl(function(e,t,n,i){return xL(Dy(t),e,n,i)},4),UU=dl(function(e,t,n){return xL(u4,e,t,n)},3),Dse=dl(function(e,t){var n=uO(t),i=gl(BU(e));return function s(c){if(c)return n(c);c!==!1&&i(s)}()},2),cN=dl(function(e,t,n,i){var s=gl(n);return LL(e,t,(c,u)=>{s(c,(m,v)=>m?u(m):u(m,{key:v,val:c}))},(c,u)=>{for(var m={},{hasOwnProperty:v}=Object.prototype,M=0;M<u.length;M++)if(u[M]){var{key:w}=u[M],{val:P}=u[M];v.call(m,w)?m[w].push(P):m[w]=[P]}return i(c,m)})},4),Sse=xU("log"),uN=dl(function(e,t,n,i){i=cO(i);var s={},c=gl(n);return Dy(t)(e,(u,m,v)=>{c(u,m,(M,w)=>{if(M)return v(M);s[m]=w,v(M)})},u=>i(u,s))},4),zse=MU(gU?process.nextTick:vU?setImmediate:yU),dN=dl((e,t,n)=>{var i=DL(t)?[]:{};e(t,(s,c,u)=>{gl(s)((m,...v)=>{v.length<2&&([v]=v),i[c]=v,u(m)})},s=>n(s,i))},3);function jU(e,t){var n=gl(e);return rN((i,s)=>{n(i[0],s)},t,1)}class Lse{constructor(){this.heap=[],this.pushCount=Number.MIN_SAFE_INTEGER}get length(){return this.heap.length}empty(){return this.heap=[],this}percUp(t){let n;for(;t>0&&pN(this.heap[t],this.heap[n=GU(t)]);){let i=this.heap[t];this.heap[t]=this.heap[n],this.heap[n]=i,t=n}}percDown(t){let n;for(;(n=1+(t<<1))<this.heap.length&&(n+1<this.heap.length&&pN(this.heap[n+1],this.heap[n])&&(n+=1),!pN(this.heap[t],this.heap[n]));){let i=this.heap[t];this.heap[t]=this.heap[n],this.heap[n]=i,t=n}}push(t){t.pushCount=++this.pushCount,this.heap.push(t),this.percUp(this.heap.length-1)}unshift(t){return this.heap.push(t)}shift(){let[t]=this.heap;return this.heap[0]=this.heap[this.heap.length-1],this.heap.pop(),this.percDown(0),t}toArray(){return[...this]}*[Symbol.iterator](){for(let t=0;t<this.heap.length;t++)yield this.heap[t].data}remove(t){let n=0;for(let i=0;i<this.heap.length;i++)t(this.heap[i])||(this.heap[n]=this.heap[i],n++);this.heap.splice(n);for(let i=GU(this.heap.length-1);i>=0;i--)this.percDown(i);return this}}function GU(e){return(e+1>>1)-1}function pN(e,t){return e.priority!==t.priority?e.priority<t.priority:e.pushCount<t.pushCount}var Rse=dl(function(e,t){if(t=cO(t),!Array.isArray(e))return t(new TypeError("First argument to race must be an array of functions"));if(!e.length)return t();for(var n=0,i=e.length;n<i;n++)gl(e[n])(t)},2);function VU(e,t,n,i){var s=[...e].reverse();return vD(s,t,n,i)}function hN(e){var t=gl(e);return mD(function(n,i){return n.push((s,...c)=>{let u={};if(s&&(u.error=s),c.length>0){var m=c;c.length<=1&&([m]=c),u.value=m}i(null,u)}),t.apply(this,n)})}function fN(e,t,n,i){let s=gl(n);return xL(e,t,(c,u)=>{s(c,(m,v)=>{u(m,!v)})},i)}var xse=dl(function(e,t,n){return fN(Sy,e,t,n)},3),Nse=dl(function(e,t,n,i){return fN(Dy(t),e,n,i)},4),Pse=dl(function(e,t,n){return fN(u4,e,t,n)},3);function YU(e){return function(){return e}}function mN(e,t,n){var i={times:5,intervalFunc:YU(0)};if(arguments.length<3&&typeof e=="function"?(n=t||xT(),t=e):(function(u,m){if(typeof m=="object")u.times=+m.times||5,u.intervalFunc=typeof m.interval=="function"?m.interval:YU(+m.interval||0),u.errorFilter=m.errorFilter;else{if(typeof m!="number"&&typeof m!="string")throw new Error("Invalid arguments for async.retry");u.times=+m||5}}(i,e),n=n||xT()),typeof t!="function")throw new Error("Invalid arguments for async.retry");var s=gl(t),c=1;return function u(){s((m,...v)=>{m!==!1&&(m&&c++<i.times&&(typeof i.errorFilter!="function"||i.errorFilter(m))?setTimeout(u,i.intervalFunc(c-1)):n(m,...v))})}(),n[RT]}var XU=dl(function(e,t,n){return d4(Boolean,i=>i)(Sy,e,t,n)},3),QU=dl(function(e,t,n,i){return d4(Boolean,s=>s)(Dy(t),e,n,i)},4),ZU=dl(function(e,t,n){return d4(Boolean,i=>i)(u4,e,t,n)},3),Bse=dl(function(e,t,n){var i=gl(t);return sN(e,(c,u)=>{i(c,(m,v)=>{if(m)return u(m);u(m,{value:c,criteria:v})})},(c,u)=>{if(c)return n(c);n(null,u.sort(s).map(m=>m.value))});function s(c,u){var m=c.criteria,v=u.criteria;return m<v?-1:m>v?1:0}},3);function bN(e,t,n,i){var s=gl(n);return LL(function(c){for(var u=Array(c);c--;)u[c]=c;return u}(e),t,s,i)}var kse=dl(function(e,t){var n,i=null;return lN(e,(s,c)=>{gl(s)((u,...m)=>{if(u===!1)return c(u);m.length<2?[n]=m:n=m,i=u,c(u?null:{})})},()=>t(i,n))}),vN=dl(function(e,t,n){n=uO(n);var i=gl(t),s=gl(e),c=[];function u(v,...M){if(v)return n(v);c=M,v!==!1&&s(m)}function m(v,M){return v?n(v):v!==!1?M?void i(u):n(null,...c):void 0}return s(m)},3),Hse=dl(function(e,t){if(t=cO(t),!Array.isArray(e))return t(new Error("First argument to waterfall must be an array of functions"));if(!e.length)return t();var n=0;function i(c){gl(e[n++])(...c,uO(s))}function s(c,...u){if(c!==!1)return c||n===e.length?t(c,...u):void i(u)}i([])}),KU={apply:function(e,...t){return(...n)=>e(...t,...n)},applyEach:yse,applyEachSeries:Mse,asyncify:nN,auto:TU,autoInject:function(e,t){var n={};return Object.keys(e).forEach(i=>{var s,c=e[i],u=bD(c),m=!u&&c.length===1||u&&c.length===0;if(Array.isArray(c))s=[...c],c=s.pop(),n[i]=s.concat(s.length>0?v:c);else if(m)n[i]=c;else{if(s=function(M){let w=function(Z){let K="",he=0,le=Z.indexOf("*/");for(;he<Z.length;)if(Z[he]==="/"&&Z[he+1]==="/"){let pe=Z.indexOf(`
5605
5605
  `,he);he=pe===-1?Z.length:pe}else if(le!==-1&&Z[he]==="/"&&Z[he+1]==="*"){let pe=Z.indexOf("*/",he);pe!==-1?(he=pe+2,le=Z.indexOf("*/",he)):(K+=Z[he],he++)}else K+=Z[he],he++;return K}(M.toString()),P=w.match(Ise);if(P||(P=w.match(Ase)),!P)throw new Error(`could not parse args in autoInject
5606
5606
  Source:
@@ -5816,7 +5816,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
5816
5816
  fov: `).concat(e.fov,`
5817
5817
  aspect: `).concat(t/n,`
5818
5818
  near/far: `).concat(e.near/e.far,`
5819
- `)),this.cameraBeforePointMatching=new nr,e.type==="perspective"?this.camera=new nr(e.fov,t/n,e.near,e.far):e.type==="orthographic"&&(this.camera=new CM(e.left,e.right,e.top,e.bottom,e.near,e.far),this.camera.aspect=t/n,this.name=="mainRendererViewport"&&(this.camera.fov=45)),this.camera.name="mainCamera",this.camera.type=e.type,this.camera.position.set(e.position.x,e.position.y,e.position.z),this.scene.add(this.camera),this.orthoCamera=new CM(-t/2,t/2,n/2,-n/2,1,10),this.orthoCamera.position.z=10;var i=e.far-e.near,s=t/n;this.orthographicCamera=new CM(i*s/-2,i*s/2,i/2,i/-2,e.near,e.far),this.orthographicCamera.position.set(e.position.x,e.position.y,e.position.z),this.orthographicCamera.aspect=t/n,this.orthographicCamera.fov=45,this.perspectiveCamera=new nr(e.fov,t/n,e.near,e.far)}},initControls:function(e,t){this.controls.target=new Ee(e.target.x||0,e.target.y||0,e.target.z||0),this.controls.object=this.camera,this.controls.domElement=this.renderer.domElement,this.controls.localElement=this.renderer.domElement,t||this.initTransformControls()},_transformControlsChangeEvent:function(){if(this.transformControls){switch(this.transformControls.mode){case"translate":this.clippingPlanes.recalcClippingSceneForTranslation(this.transformControlsPosition);break;case"rotate":this.clippingPlanes.recalcClippingSceneForRotation(this.transformControlsRotation);break;case"scale":this.clippingPlanes.recalcClippingSceneForScale(this.transformControlsScale)}this.draw()}},_transformControlsMouseDownEvent:function(){this.emptySectionCutSceneForSectionCutGeometry(),this.transformControlsPosition=this.clippingPlanes._clippingPlanes[this.clippingPlanes._activeClippingPlane].clippingPlaneFrame.position.clone(),this.transformControlsRotation=this.clippingPlanes._clippingPlanes[this.clippingPlanes._activeClippingPlane].clippingPlaneFrame.rotation.clone(),this.transformControlsScale=this.clippingPlanes._clippingPlanes[this.clippingPlanes._activeClippingPlane].clippingPlaneFrame.scale.clone()},_transformControlsMouseUp:function(){this.transformControlsPosition=null,this.transformControlsRotation=null,this.transformControlsScale=null,this.clippingPlanes.onRefreshSectionCuts()},initTransformControls:function(){this.transformControls=new gG(this.camera,this.renderer.domElement),this.transformControls.addEventListener("change",this._transformControlsChangeEvent.bind(this)),this.transformControls.addEventListener("mouseDown",this._transformControlsMouseDownEvent.bind(this)),this.transformControls.addEventListener("mouseUp",Lre.debounce(this._transformControlsMouseUp.bind(this),1e3)),this.transformControls.setSpace("local"),this.transformControls.setRotationSnap(pL.radians(5)),this.controlsScene.add(this.transformControls)},disposeTransformControls:function(){var e,t,n,i;(e=this.transformControls)===null||e===void 0||e.removeEventListener("change",this._transformControlsChangeEvent),(t=this.transformControls)===null||t===void 0||t.removeEventListener("mouseDown",this._transformControlsMouseDownEvent),(n=this.transformControls)===null||n===void 0||n.removeEventListener("mouseUp",this._transformControlsMouseUp),(i=this.transformControls)===null||i===void 0||i.dispose(),this.transformControls=null},initFrameSelection:function(){this.frameSelection=new _re(this),this.frameSelection.init()},disposeFrameSelection:function(){var e;(e=this.frameSelection)===null||e===void 0||e.dispose(),this.frameSelection=null},renderScene:function(e){var t,n=this,i=this.checkSelectionMode("isolated");this.defaultPassChain.getPass(4).setEnabled(i);var s=e.drawClashes&&((t=this.content)===null||t===void 0?void 0:t.getClashes().getCurrentClashFilter())!==null;Rre.forEach(function(c){n.defaultPassChain.getPass(c).setEnabled(s)}),e.drawHelperScene===!0&&this.renderer.render(this.helperScene,this.camera),e.drawPins===!0&&this.pins.render(),this.defaultPassChain.render(this.renderer,this.disciplineNodeMeshScene.getScene(),this.camera),s&&i&&this.defaultPassChain.renderPasses([1,2],this.renderer,this.scene,this.camera)},setContent:function(e){this.content=e},getContent:function(){return this.content},hasContent:function(){return this.content!==null},draw:function(){var e=this;return this.noRender||this.drawDisabled||this.drawRequest||!this.renderer?new Promise(function(t){t()}):new Promise(function(t){e.drawRequest=requestAnimationFrame(function(){if(e.noRender||e.drawDisabled||!e.renderer)return e.drawRequest=null,void t();e.drawSynchronous(),e.drawRequest=null,t()})})},cancelDrawRequest:function(){this.drawRequest&&(cancelAnimationFrame(this.drawRequest),this.drawRequest=null)},fillRenderQueue:function(){this.renderQueue.fill(this.camera,$(this.domElement).height()),this.content&&this.clashesRenderQueue.fill(this.content,this.camera)},prepareMeshMatrices:function(e){var t=e||this.camera;L0.updatePerspectiveCamera(t,!0),this.renderQueue.forEachQueuedMesh(function(n,i){i.modelViewMatrix.multiplyMatrices(t.matrixWorldInverse,i.matrixWorld),i.normalMatrix.getNormalMatrix(i.modelViewMatrix)})},drawSynchronous:function(){this.noRender||this.drawDisabled||!this.renderer||(this.render(this.defaultDrawFlags),this.afterDrawCallback&&this.afterDrawCallback(this),this.afterCameraFlyCallback&&this.afterCameraFlyCallback(this))},drawThumbnail:function(){var e,t=this.clippingPlanes.getAllVisibleStates();this.clippingPlanes.setAllVisible(!1),this.transformControls&&(e=this.transformControls.visible,this.transformControls.visible=!1);var n=new nj().setStatesForThumbnail();this.render(n),this.clippingPlanes.setAllVisibleStates(t),this.transformControls&&(this.transformControls.visible=e)},updateMeshesWebGLBuffer:function(){var e=this,t=this.getGeometryNodes();t&&t.forEachDisciplineNode(function(n){if(n.isGeometryLoaded()!==!1&&n.visible!==!1){var i=e.getDisciplineNodeMeshes().getNodeMesh(n);i&&i.updateMeshesWebGLBuffer(e,n.getGeometryTimestamp())}})},updateNavigationMapCameraFrustum:function(){var e=this.controls.getNavigationMap(),t=this.controls.getMainViewport();e.getCameraHelperType()!==t.camera.type&&e.updateNavigationMapProjectionMode(t)},updateNavigationMap:function(){this.name==="navigationMapViewport"&&this.updateNavigationMapCameraFrustum()},render:function(e){var t;if(e||(e=this.defaultDrawFlags),this.calculateDrawRange(),this.updateNavigationMap(),this.updateMeshesWebGLBuffer(),this.renderer.autoClear=!1,this.renderer.clear(),this.shadows.isEnabled()&&this.shadowsEnabled&&this.shadowsSupported&&this.shadows.renderShadowMaps(),this.fillRenderQueue(),this.debugView>0){if((this.debugView===4||this.debugView===5)&&!this.ssaoEnabled||this.debugView===6&&!this.shadowsEnabled)return;switch(this.debugView){case 1:this.debugFullscreenQuad.setColorTexture(this.colorLookup.getTexture());break;case 2:this.debugFullscreenQuad.setColorTexture(this.pickColorLookup.getTexture());break;case 3:this.debugFullscreenQuad.setColorTexture(this.gpuPicker.getRenderTarget().texture);break;case 4:this.debugFullscreenQuad.setColorTexture(this.ssaoPassChain.getPass(0).getRenderTarget().texture);break;case 5:this.debugFullscreenQuad.setColorTexture(this.ssaoPassChain.getPass(1).getRenderTarget().texture);break;case 6:this.debugFullscreenQuad.setColorTexture(this.shadows.shadowMaps[0].getDepthBuffer().texture)}this.debugFullscreenQuad.render(this.renderer)}else(t=this.currentInteractor)===null||t===void 0||t.beforeRender(),this.prepareMeshMatrices(this.camera),this.ssaoEnabled&&this.ssaoSupported&&this.ssaoPassChain?(this.ssaoPassChain.render(this.renderer,this.disciplineNodeMeshScene.getScene(),this.camera),this.ambientOcclusionTexture=this.ssaoPassChain.getLastPass().getRenderTarget().texture):this.ambientOcclusionTexture=null,this.renderer.clear(),this.renderer.autoClear=!1,this.doRenderGPUPickTexture(),this.renderer.autoClear=!1,this.renderer.clear(),e.drawBackground===!0&&this.background.draw(this.renderer),e.drawScene===!0&&this.renderScene(e),this.updateStats(),this.renderer.render(this.scene,this.camera),e.drawSectionCuts===!0&&this.sectionCuts.render(),e.drawOverlays===!0&&this.overlays.render(),e.drawMarkups===!0&&(this.markups.render(e.drawMarkupsOpaque),this.localCoordSystemManager.render()),e.drawHelperScene===!0&&this.highlightObjectEdges.render(),e.drawCustomScene===!0&&this.renderer.render(this.customScene,this.camera),e.drawHighlight===!0&&this.highlight.render(this),e.drawFingerPrint===!0&&this.fingerprintCursor.render(this),e.drawControlsScene===!0&&this.renderer.render(this.controlsScene,this.camera),this.renderer.autoClear=!0},isMultiselectActive:function(){return this.multiSelect},getDeselectedObjectId:function(){var e=this.deselectedObject;return e&&!this.checkSelectionMode("hidden")?e.id:null},moveDivisionBoundingBox:function(e,t,n,i){var s;(s=this.content)===null||s===void 0||s.getDivisions().moveDivisionBoundingBox(this,e,t,n,i)},resetDivisionBoundingBox:function(e){var t;(t=this.content)===null||t===void 0||t.getDivisions().resetDivisionBoundingBox(this,e)},resetSceneBoundingBox:function(){var e=this.getContentBoundingBox();e&&e.reset()},showDivisionBoundingBox:function(e){var t;(t=this.content)===null||t===void 0||t.getDivisions().showDivisionBoundingBox(this,e)},hideDivisionBoundingBox:function(e){var t;(t=this.content)===null||t===void 0||t.getDivisions().hideDivisionBoundingBox(this,e)},setDivisionVisible:function(e,t){var n;(n=this.content)===null||n===void 0||n.getDivisions().setDivisionVisible(e,t)},isRelativeModelDistancesTooLarge:function(e){return!!this.content&&this.content.getDivisions().isRelativeModelDistancesTooLarge(e)},getClashElementRevision:function(e){if(this.content){var t=this.content.getClashes().getClashElement(e);return t?t.getRevision():void 0}},toggleClashHoverBox:function(e,t){if(this.content){var n=this.content.getClashes().getClashObjectForClashElementId(e);n&&n.setHovered(t)}},setupClashIssueScene:function(){var e=this.objectSets.workingObjects.slice();this.resetSelectionMode(),this.addObjectsToWorkingSet(e),this.setSelectionMode("isolated"),this.draw()},resetClashScene:function(){var e;(e=this.content)===null||e===void 0||e.getClashes().resetClashScene(this),this.draw()},setupClashScene:function(e){var t=this.content.getClashes(),n=t.getClashObjectForClashElementId(e[0]);n&&t.setupClashScene(n,this)},calcObjectsBoundingbox:function(e){var t,n=new si,i=__(e);try{for(i.s();!(t=i.n()).done;){var s=t.value,c=this.getObject(s);if(c){var u=c.getBoundingBox(this.getObjectsContainer());u&&(n.expandByPoint(u.min),n.expandByPoint(u.max))}}}catch(m){i.e(m)}finally{i.f()}return n},resetRevisonComparisonScene:function(e,t){var n;e&&(n=this.objectSets.workingObjects.slice()),this.resetSelectionMode(),e&&(t&&(n=n.filter(function(i){return Object.hasOwn(i,"visibleRevisionComparison")===!1})),this.addObjectsToWorkingSet(n),this.setSelectionMode("isolated"))},centerBoundingBox:(XG=ee(ge().mark(function e(t){var n;return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return n=t.getBoundingSphere(new al),i.next=4,L0.centerBoundingSphere(this.camera,this.controls,this,n,L0.NO_CAMERA_FLIGHT,1.2);case 4:this.setRotationCenter(n.center);case 5:case"end":return i.stop()}},e,this)})),function(e){return XG.apply(this,arguments)}),centerOverlay:(YG=ee(ge().mark(function e(t){var n;return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return(n=new si).setFromObject(t),i.next=4,this.centerBoundingBox(n);case 4:case"end":return i.stop()}},e,this)})),function(e){return YG.apply(this,arguments)}),centerOverlayById:(VG=ee(ge().mark(function e(t){var n,i;return ge().wrap(function(s){for(;;)switch(s.prev=s.next){case 0:return s.next=2,this.overlayManager.loadOverlay(t);case 2:return n=s.sent,(i=new si).setFromObject(n),s.next=7,this.centerBoundingBox(i);case 7:case"end":return s.stop()}},e,this)})),function(e){return VG.apply(this,arguments)}),centerObjects:(GG=ee(ge().mark(function e(t){var n,i,s=this;return ge().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:return n=[],this.getObjectsContainer()&&t.forEach(function(u){return n=n.concat(s.getObjectsContainer().getObjectTreeIds(u))}),i=this.calcObjectsBoundingbox(n),c.abrupt("return",this.centerBoundingBox(i));case 5:case"end":return c.stop()}},e,this)})),function(e){return GG.apply(this,arguments)}),clipObjects:function(){var e=arguments.length>0&&arguments[0]!==void 0&&arguments[0],t=this.objectSets.selectedObjects.length>0&&!e?this.objectSets.selectedObjects.map(function(i){return i.id}):this.objectSets.workingObjects.map(function(i){return i.id}),n=this.calcObjectsBoundingbox(t);n.expandByScalar(1e3/this.normFactor),this.clippingPlanes.setSectionBox(n)},isolateObjects:function(e){var t=this.checkSelectionMode("isolated");t&&this.resetIsolationMode(),this.objectSets.workingObjects=[];var n=this.getObjectsContainer().getObjects(e);this.addObjectsToWorkingSet(n),t?this.setIsolationMode():this.setSelectionMode("isolated"),this.draw()},addObjectsToWorkingSet:function(e){new OL(this,this.objectSets.workingObjects,"working").Execute(e)},removeObjectsFromWorkingSet:function(e){new OL(this,this.objectSets.workingObjects,"working").Execute(e,{inverse:!0})},addObjectsToSelectedSet:function(e){new Ey(this,this.objectSets.selectedObjects).Execute(e)},addObjectsToHiddenSet:function(e){new B5(this,this.objectSets.hiddenObjects).Execute(e)},addObjectsToColoredSet:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;new hD(this,this.objectSets.coloredObjects,t).Execute(e,{noBubble:!0,colors:t,alpha:n}),this.triggerObjectSetChangedEvent("coloredObjects")},disposeIsolatedSet:function(){new pD(this).Execute(this.objectSets.workingObjects,{inverse:!0})},makeIsolatedSet:function(){new pD(this).Execute(this.objectSets.workingObjects)},restoreSelectedObjects:function(){new Ey(this).Execute(this.objectSets.selectedObjects,{noBubble:!0})},hideIsolateObjects:function(){this.isolateSelectedObjects&&this.objectSets.selectedObjects.length>0&&this.addSelectedObjectsToWorkingObjects(),new AL(this).Execute(this.objectSets.workingObjects,{noBubble:!0}),this.draw()},resetHideIsolateObjects:function(){this.restoreSelectedObjects(),new AL(this).Execute(this.objectSets.workingObjects,{noBubble:!0,inverse:!0}),this.draw()},hideObjects:function(e){var t=this.getObjectsContainer().getObjects(e);new B5(this,this.objectSets.hiddenObjects).Execute(t),this.draw()},getSelected3DObjectId:function(){var e=this.objectUnderMouse,t=this.rootObjectUnderMouse;if(e&&!this.checkSelectionMode("hidden"))return e.relatedObjects?e.id.substr(0,36):t?t.id:e.id},getAllSelected3DObjectIds:function(){var e=new Set;this.objectSets.selectedObjects.forEach(function(n){var i;i=n.relatedObjects?n.id.substr(0,36):n.parent||n.id,e.add(i)});var t=[];return e.forEach(function(n){return t.push(n)}),t},getAllSelected3DObjectIdsNodesRevisions:function(){var e=new Set;this.objectSets.selectedObjects.forEach(function(n){var i=n.id,s="",c=1;n.node&&(s=n.node),n.revision&&(c=n.revision);var u={id:i,node:s,revision:c},m=JSON.stringify(u);e.add(m)});var t=[];return e.forEach(function(n){var i=JSON.parse(n);t.push(i)}),t},getObjectRevision:function(e){if(e){var t=this.getObject(e);return t?t.revision:""}return""},pickGPU:function(){return this.gpuPicker.pick(),this},renderGPUPickTextureNeeded:function(){this.newGPUPickTextureNeeded=!0},doRenderGPUPickTexture:function(){this.newGPUPickTextureNeeded&&(this.newGPUPickTextureNeeded=!1,this.gpuPicker.render())},highlightNodeChildren:function(e,t){if(this.getGeometryNodes().getNode(e)===!1)return!1;var n=this.getObjectsContainer().getNodeObjectIds(e);return this.highlightObjects(n,t),!0},highlightObject:function(e,t,n){this.setObjectUnderMouse(this.getObject(e)),this.objectUnderMouse&&!this.objectUnderMouse.parent&&this.objectUnderMouse.discipline===o1.ClashLayer&&this.setObjectUnderMouse(this.content.getClashes().getClashElement(e)),this.objectUnderMouse||this.setObjectUnderMouse(this.content.getClashes().getClashElement(e)),this.handleObjectSelection(null,t,n),this.draw()},highlightObjects:function(e,t,n){t||(this.resetObjectUnderMouse(),this.handleObjectSelection(null,!1,n));var i,s=__(e);try{for(s.s();!(i=s.n()).done;){var c=i.value;this.setObjectUnderMouse(this.getObject(c)),this.handleObjectSelection(null,t,n)}}catch(u){s.e(u)}finally{s.f()}this.draw()},disposePins:function(e){this.pins.disposePins(e)},resetObjectUnderMouse:function(){this.objectUnderMouse=null,this.rootObjectUnderMouse=null},setBlockObjectSelection:function(e){this.blockObjectSelection=e},disposePinObject:function(e){this.pins.disposePinObject(e)},objectLoop:function(e,t){this.getObjectsContainer().objectLoop(e,t)},hideObject:function(e){return e.visible=!1,e.hide(this)},showObject:function(e){return e.visible=!0,e.show(this)},selectObject:function(e){var t=this.activeObjColor,n=[t.r,t.g,t.b];e.selected=!0,e.paint(this,n)},deselectObject:function(e){delete e.selected,e.paint(this)},_hoverEffectTurnedOn:function(e){this.useHoverEffect&&e&&new jW(this).Execute([e],{noBubble:!1})},_hoverEffectTurnedOff:function(e){this.useHoverEffect&&e&&(new jW(this).Execute([e],{inverse:!0,noBubble:!1}),e!=null&&e.selected&&new Ey(this).Execute([e],{noBubble:!1}))},_resetHoverEffect:function(){this.objectUnderMouseChanged=!1,this._hoverEffectTurnedOff(this.objectUnderMouse),this._hoverEffectTurnedOff(this.lastObjectUnderMouse),this.objectUnderMouse=null,this.lastObjectUnderMouse=null,this.draw()},_setHoverEffect:function(){this.objectUnderMouseChanged&&(this.objectUnderMouseChanged=!1,this._hoverEffectTurnedOff(this.lastObjectUnderMouse),this._hoverEffectTurnedOn(this.objectUnderMouse),this.lastObjectUnderMouse=null,this.draw())},_applyHoverEffect:function(){this.controls.supportsGPUPicking()&&this.pickGPU(),this.objectUnderMouse||this.setObjectUnderMouse(this.sectionCuts.getVisualObjectForMesh()),this.objectUnderMouse||this.setObjectUnderMouse(this.overlays.getVisualObjectForMesh()),this._setHoverEffect()},handleObjectSelection:function(e,t,n){var i=this.objectUnderMouse,s=t!==void 0?t:e&&(e.ctrlKey||e.isLongPress);this.deselectedObject=null;var c,u=this.checkSelectionMode("hidden");if(i&&i.isClashElement===!0){var m,v=i.getClashObject();return(m=this.content)===null||m===void 0||m.getClashes().setSelectedClash(v,this),void this.resetSelectedObjects()}if((c=this.content)===null||c===void 0||(c=c.getClashes())===null||c===void 0||c.resetSelectedClash(this),this.connectionElement._handleSelection(i),i&&s&&!u){var M=new Ey(this,this.objectSets.selectedObjects);return M.Execute([i],{multiSelect:s,noBubble:n}),void(M.deselectedObjects.length>0&&(i=null,this._resetHoverEffect(),this.deselectedObject=this.rootObjectUnderMouse,this.resetObjectUnderMouse()))}if(s||u||this.resetSelectedObjects(),this._resetHoverEffect(),this.objectUnderMouse=i,i){if(u){var w;if(this.showHiddenObjectsTransparent){var P=this.objectSets.hiddenObjects.find(function(pe){return pe.id===i.id});new B5(this,this.objectSets.hiddenObjects).Execute([i],{noBubble:!1,inverse:P})}else new B5(this,this.objectSets.hiddenObjects).Execute([i],{noBubble:!1});var q=new CustomEvent("onHidingObject",{bubbles:!0,cancelable:!0}),Z=(w=document)===null||w===void 0?void 0:w.getElementById("mainViewportContainer");Z&&Z.dispatchEvent(q)}else{var K=new Ey(this,this.objectSets.selectedObjects),he=this.getCommandPolicy(K,"noBubble"),le=this.getCommandPolicy(K,"noTraverse");K.Execute([i],{noBubble:n||he!==void 0,noTraverse:le})}i.relatedObjects&&this.objectSets.selectedObjects.length-1!==i.relatedObjects.length&&$(this.domElement).trigger("missingRelatedObjects")}},startInteractor:function(e,t){this.currentInteractor!==null&&(this.currentInteractor.selectionMode.length?this.unsetSelectionMode(this.currentInteractor.selectionMode):this.currentInteractor.cancel()),t.selectionMode=e,this.currentInteractor=t,this.currentInteractor.start()},subscribeToSelectionModeChanges:function(e){e instanceof Function&&(this.selectionModeChangeHandler=e)},subscribeToLCSDefinedChanges:function(e){e instanceof Function&&(this.localCoordSystemDefinedChangeHandler=e)},subscribeToOverlayPointSelectionModelViewFinished:function(e){e instanceof Function&&(this.overlayPointSelectionModelViewFinishedHandler=e)},subscribeToOverlayPointSelectionFileViewFinished:function(e){e instanceof Function&&(this.overlayPointSelectionFileViewFinishedHandler=e)},subscribeToConnectionElementSelected:function(e){e instanceof Function&&(this._connectionElementSelectedHandler=e)},setSelectionMode:function(e){if(this.checkSelectionMode(e))return this.unsetSelectionMode(e),this;e==="clipIsolated"?(this.unsetSelectionMode("isolated"),this.unsetSelectionMode("hideIsolated"),this.unsetSelectionMode("section"),this.clipObjects()):e==="hideIsolated"?(this.unsetSelectionMode("isolated"),this.unsetSelectionMode("clipIsolated"),this.unsetSelectionMode("section"),this.hideIsolateObjects()):e==="isolated"?(this.unsetSelectionMode("hideIsolated"),this.unsetSelectionMode("clipIsolated"),this.unsetSelectionMode("hidden"),this.unsetSelectionMode("selectSectionPlane")):e==="hidden"?(this.unsetSelectionMode("hideIsolated"),this.unsetSelectionMode("isolated"),this._unsetSelectionModesMarkups("")):e==="addPin"?this.unsetSelectionMode("hidden"):e==="section"?(this.unsetSelectionMode("hideIsolated"),this.unsetSelectionMode("clipIsolated"),this.clippingPlanes.restoreClippingPlanes(),this.clippingPlanes.setEnabled(!0),this.fillRenderQueue()):e==="measurePerpendicular"?(this._unsetSelectionModesMarkups("measurePerpendicular"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new xte(this))):e==="measureFree"?(this._unsetSelectionModesMarkups("measureFree"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new Fte(this))):e==="measureAngle"?(this._unsetSelectionModesMarkups("measureAngle"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new Ute(this))):e==="measureLocalPoint"?(this._unsetSelectionModesMarkups("measureLocalPoint"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new Qte(this))):e==="measureCalibratedPoint"?(this._unsetSelectionModesMarkups("measureCalibratedPoint"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new Kte(this))):e==="measureEdge"?(this._unsetSelectionModesMarkups("measureEdge"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new ene(this))):e==="measureAutoEdges"?(this._unsetSelectionModesMarkups("measureAutoEdges"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new ine(this))):e==="laserMeasurement"?(this._unsetSelectionModesMarkups("laserMeasurement"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new rne(this))):e==="localCoordSystemCreation"?(this._unsetSelectionModesMarkups("localCoordSystemCreation"),this.unsetSelectionMode("hidden"),this.localCoordSystemManager.hasLCS()||(this.localCoordSystemDefinedChangeHandler(!0),this.startInteractor(e,new lne(this)))):e==="localCoordSystemDefined"?(this._unsetSelectionModesMarkups("localCoordSystemDefined"),this.unsetSelectionMode("hidden"),this.localCoordSystemManager.reset(),this.localCoordSystemDefinedChangeHandler(!1),e="markupTurnedOff",this.startInteractor(e,new uW(this))):e==="objectProps"?(this._unsetSelectionModesMarkups("objectProps"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new pne(this))):e==="markupTurnedOff"?(this._unsetSelectionModesMarkups("markupTurnedOff"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new uW(this))):e==="annotation"?(this._unsetSelectionModesMarkups("annotation"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new bne(this))):e==="moveModel"?this.startInteractor(e,new gne(this)):e==="selectSectionPlane"?(this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&(console.debug("multiPlanes in use. Don't remove current planes"),this.clippingPlanes.restoreClippingPlanes(),this.clippingPlanes.setEnabled(!0)),this.emptySectionCutSceneForSectionCutGeometry(),this.startInteractor(e,new yne(this)),this.clippingPlanes.addNewPlaneIsOn=!0):e==="selectPointsForOverlay"&&this.startInteractor(e,new k7(this));var t=this.selectionMode.slice();return e?(t.push(e),this.selectionMode=t,this.selectionModeChangeHandler&&this.selectionModeChangeHandler(t),e==="isolated"&&this.setIsolationMode()):(this.unsetSelectionMode("isolated"),this.unsetSelectionMode("hidden"),this.unsetSelectionMode("hideIsolated")),this.renderGPUPickTextureNeeded(),this.draw(),this},unsetSelectionMode:function(e){var t=this.selectionMode.indexOf(e),n=this.selectionMode.slice();if(t===-1||!e)return this;if(n.splice(t,1),this.selectionMode=n,this.selectionModeChangeHandler&&this.selectionModeChangeHandler(n),e==="isolated"){this.resetIsolationMode();var i=this.objectSets.selectedObjects.map(function(s){return s});i.length>0&&(this.resetSelectedObjects(),new Ey(this,this.objectSets.selectedObjects).Execute(i,{noBubble:!0}))}return e==="hideIsolated"&&this.resetHideIsolateObjects(),e==="clipIsolated"&&this.clippingPlanes.reset(),e!=="section"&&e!=="selectSectionPlane"||(this.clippingPlanes.storeClippingPlanes(),this.clippingPlanes.setEnabled(!1),this.clippingPlanes.hideAdditionalClippingPlanes(),this.emptySectionCutSceneForSectionCutGeometry(),this.setSectionAxis(),this.renderQueue.setInteractionMode(!1),this.fillRenderQueue(),this.renderGPUPickTextureNeeded()),e!=="measurePerpendicular"&&e!=="measureFree"&&e!=="measureAngle"&&e!=="measureLocalPoint"&&e!=="measureCalibratedPoint"&&e!=="measureEdge"&&e!=="measureAutoEdges"&&e!=="laserMeasurement"&&e!=="localCoordSystemCreation"&&e!=="localCoordSystemDefined"&&e!=="objectProps"&&e!=="markupTurnedOff"&&e!=="annotation"&&e!=="moveModel"&&e!=="selectSectionPlane"&&e!=="selectPointsForOverlay"||this.currentInteractor!==null&&(this.currentInteractor.cancel(),this.currentInteractor=null),e!=="hidden"&&(this.renderGPUPickTextureNeeded(),this.draw()),this},resetSelectedObjects:function(e){var t=new Ey(this,this.objectSets.selectedObjects,e),n=this.getCommandPolicy(t,"noTraverse");t.Execute(this.objectSets.selectedObjects,{inverse:!0,noBubble:!0,noTraverse:n})},resetHiddenObjects:function(e){new B5(this,this.objectSets.hiddenObjects,e).Execute(this.objectSets.hiddenObjects,{inverse:!0,noBubble:!0}),this.renderGPUPickTextureNeeded(),this.draw()},resetWorkingObjects:function(e){if(e){var t=this.checkSelectionMode("isolated");t&&this.resetIsolationMode(),new OL(this,this.objectSets.workingObjects,"working",e).Execute(this.objectSets.workingObjects,{inverse:!0,noBubble:!0}),t&&this.setIsolationMode()}else this.makeColoredSet([]);this.triggerObjectSetChangedEvent("workingObjects")},resetColoredObjects:function(e){new hD(this,this.objectSets.coloredObjects,e).Execute(this.objectSets.coloredObjects,{inverse:!0,noBubble:!0}),this.triggerObjectSetChangedEvent("coloredObjects")},resetAllObjectSets:function(e){this.resetSelectedObjects(e),this.resetHiddenObjects(e),this.resetWorkingObjects(e),this.resetColoredObjects(e)},moveSelectedObjectsToWorkingObjects:function(){var e=new Ey(this,this.objectSets.selectedObjects);e.Execute(this.objectSets.selectedObjects,{inverse:!0,noBubble:!0}),this.objectSets.workingObjects=e.deselectedObjects},addSelectedObjectsToWorkingObjects:function(){this.objectSets.workingObjects=[],this.addObjectsToWorkingSet(this.objectSets.selectedObjects)},setIsolationMode:function(){this.isolateSelectedObjects&&this.objectSets.selectedObjects.length>0&&this.addSelectedObjectsToWorkingObjects(),new pD(this,this.objectSets.workingObjects).Execute(this.objectSets.workingObjects,{noBubble:!0}),this.renderGPUPickTextureNeeded()},resetIsolationMode:function(){new pD(this).Execute(this.objectSets.workingObjects,{inverse:!0}),this.renderGPUPickTextureNeeded()},adaptMakeColoredSetParams:function(e){var t=this;if(!(e.length>0&&e[0]instanceof _T)){var n=[],i={};return e.forEach(function(s){var c=t.getObject(s.id);!c&&Object.hasOwn(s,"elementId")&&(c=t.getObject(s.elementId)),c&&(n.push(c),s.color&&(i[c.id]=s.color))}),{objects:n,colors:i}}},makeColoredSet:function(e){var t=this.checkSelectionMode("isolated"),n=this.checkSelectionMode("hideIsolated"),i=this.checkSelectionMode("clipIsolated");new hD(this).Execute(this.objectSets.workingObjects,{noBubble:!0,inverse:!0}),this.triggerObjectSetChangedEvent("workingObjects"),t&&this.resetIsolationMode(),n&&this.resetHideIsolateObjects(),this.removeObjectsFromWorkingSet(this.objectSets.workingObjects),this.objectSets.workingObjects=[];var s=new hD(this,this.objectSets.workingObjects),c=this.adaptMakeColoredSetParams(e);c?s.Execute(c.objects,{noBubble:!0,colors:c.colors}):s.Execute(e,{noBubble:!0}),this.triggerObjectSetChangedEvent("workingObjects"),t&&this.setIsolationMode(),n&&this.hideIsolateObjects(),i&&this.clipObjects(!0),this.objectSets.selectedObjects.length>0&&(new Ey(this).Execute(this.objectSets.selectedObjects),this.triggerObjectSetChangedEvent("selectedObjects")),this.draw()},resetSelectionMode:function(){var e,t;return this.resetObjectUnderMouse(),this.unsetSelectionMode("isolated"),this.unsetSelectionMode("clipIsolated"),this.unsetSelectionMode("hideIsolated"),this.unsetSelectionMode("hidden"),this.unsetSelectionMode("section"),this._unsetSelectionModesMarkups(""),this.unsetSelectionMode("moveModel"),this.unsetSelectionMode("selectSectionPlane"),this.resetAllObjectSets(),this.setSelectionMode(),(e=this.content)===null||e===void 0||e.getClashes().resetSelectedClash(this),(t=this.content)===null||t===void 0||t.getClashes().resetClashScene(this),this},checkSelectionMode:function(e,t){var n=!1;return e?(n=this.selectionMode.indexOf(e)!==-1,t&&(n&=this.selectionMode.length===1)):n=!!this.selectionMode.length,n},isMarkupMode:function(){return this.isMarkupModeTurnedOff()||this.isMeasureMode()||this.isLabelMode()||this.isAnnotationMode()},isMarkupModeTurnedOff:function(){return this.checkSelectionMode("markupTurnedOff")},isMeasureMode:function(){return this.checkSelectionMode("measurePerpendicular")||this.checkSelectionMode("measureFree")||this.checkSelectionMode("measureAngle")||this.checkSelectionMode("measureLocalPoint")||this.checkSelectionMode("measureCalibratedPoint")||this.checkSelectionMode("measureEdge")||this.checkSelectionMode("measureAutoEdges")||this.checkSelectionMode("laserMeasurement")||this.checkSelectionMode("localCoordSystemCreation")||this.checkSelectionMode("localCoordSystemDefined")},isLabelMode:function(){return this.checkSelectionMode("objectProps")},isAnnotationMode:function(){return this.checkSelectionMode("annotation")},isOverlayPointInputMode:function(){return this.checkSelectionMode("selectPointsForOverlay")},isSelectSectionPlane:function(){return this.checkSelectionMode("selectSectionPlane")},isFingerprintInputMode:function(){return this.isMarkupMode()||this.isOverlayPointInputMode()||this.isSelectSectionPlane()},_unsetSelectionModesMarkups:function(e){e!=="measurePerpendicular"&&this.unsetSelectionMode("measurePerpendicular"),e!=="measureFree"&&this.unsetSelectionMode("measureFree"),e!=="measureAngle"&&this.unsetSelectionMode("measureAngle"),e!=="measureLocalPoint"&&this.unsetSelectionMode("measureLocalPoint"),e!=="measureCalibratedPoint"&&this.unsetSelectionMode("measureCalibratedPoint"),e!=="measureEdge"&&this.unsetSelectionMode("measureEdge"),e!=="measureAutoEdges"&&this.unsetSelectionMode("measureAutoEdges"),e!=="lasermeasurement"&&this.unsetSelectionMode("laserMeasurement"),e!=="localCoordSystemCreation"&&this.unsetSelectionMode("localCoordSystemCreation"),e!=="localCoordSystemDefined"&&this.unsetSelectionMode("localCoordSystemDefined"),e!=="annotation"&&this.unsetSelectionMode("annotation"),e!=="objectProps"&&this.unsetSelectionMode("objectProps"),e!=="markupTurnedOff"&&this.unsetSelectionMode("markupTurnedOff")},hasLabels:function(){return this.markups.has("labels")},hasAnnotations:function(){return this.markups.has("annotations")},hasMeasurements:function(){return this.markups.has("dimensions")},resetLabels:function(){this.markups.removeAll("labels")},resetAnnotations:function(){this.markups.removeAll("annotations")},resetMeasurements:function(){this.markups.removeAll("dimensions")},getRotationCenter:function(){return this.rotationCenter},setRotationCenter:function(e){var t;this.rotationCenter=e?e.clone():(t=this.visibleGeometryBoundingSphere)===null||t===void 0?void 0:t.center.clone()},setCameraResetAxis:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:L0.CAMERA_FLIGHT;return console.debug("setCameraResetAxis axis= ".concat(e," fly=").concat(t)),this.resetCameraAxis=e,this.resetCamera(t)},setSectionAxis:function(e){var t=this.getContentBoundingBox();t!=null&&t.isValid()&&(this.camera.updateProjectionMatrix(),this.camera.updateMatrixWorld(),e&&(this.camera.position.x===t.getCenterX()&&(this.camera.position.x-=319.1),this.camera.position.y===t.getCenterY()&&(this.camera.position.y+=319.1),this.unsetSelectionMode("section"),this.unsetSelectionMode("selectSectionPlane"),e==="Free"?this.setSelectionMode("selectSectionPlane"):(this.setSelectionMode("section"),this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()?this.clippingPlanes.addSectionAxis(e):this.clippingPlanes.setSectionAxis(e),this.clippingPlanes.addNewPlaneIsOn=!1),this.clippingPlanes.onUpdateSectionParams(),this.clippingPlanes.storeClippingPlanes(),L0.updatePerspectiveCamera(this.camera,!0),this.draw()))},setViewportSize:function(e,t){var n=$(this.domElement),i=e||Math.floor(n.innerWidth()),s=t||Math.floor(n.innerHeight());i!==0&&s!==0&&(this.gpuPicker.resize(i,s),this.defaultPassChain.resizeViewport(i,s),this.ssaoSupported&&this.ssaoPassChain&&this.ssaoPassChain.resizeViewport(i,s),this.camera.aspect=i/s,this.camera.updateProjectionMatrix(),this.orthoCamera.left=-i/2,this.orthoCamera.right=i/2,this.orthoCamera.top=s/2,this.orthoCamera.bottom=-s/2,this.orthoCamera.updateProjectionMatrix(),this.name==="mainRendererViewport"&&this.camera.type==="orthographic"&&L0.resizeOrthographicFrustum(this.camera,i,s),this.renderer&&this.renderer.setSize(i,s,!0),this.renderGPUPickTextureNeeded(),this.draw())},resetViewport:function(){var e,t;console.debug("Viewport3d::resetViewport - name = '".concat(this.name,"'")),window.BimPlus.AnimationPending=0,this.resetAllObjectSets(),this.disposeObjects(this.pins.pinsObjects3D),this.objectSets.selectedObjects=[],this.disposeObjects(this.root),this.templateObjects={},this.templates=[],this.renderQueue.dispose(),(e=this.content)===null||e===void 0||e.getDivisions().hideDivisionBoundingBox(this),(t=this.content)===null||t===void 0||t.getDivisions().reset(),this.normFactor=1,this.sectionCuts.dispose(),this.overlays.clear(),this.disciplineNodeMeshScene.clearMeshes(),this.nodeMeshes.dispose(),this.content&&this.content.dispose(),this.transformControls&&this.transformControls.detach(),this.draw()},getScenePars:function(){var e,t=this.camera.fov?this.camera.fov:1,n=$(this.domElement),i=n.width()/n.height();this.calculateVisibleGeometryBoundaries();var s=new Ee,c=new Ee;return s=this.visibleGeometryBoundingBox.getSize(s),c=this.visibleGeometryBoundingBox.getCenter(c),e=Math.sqrt(s.x*s.x+s.y*s.y)/(i*Math.tan(t*Math.PI/360))/2,isFinite(e)||(e=0),{camera:{fov:this.camera.fov,far:this.camera.far,near:this.camera.near,position:{x:c.x,y:c.y,z:e+c.z+s.z/2}},controls:{target:{x:c.x,y:c.y,z:c.z}}}},restoreViewbox:(jG=ee(ge().mark(function e(){var t;return ge().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return t=this.visibleGeometryBoundingBox.getBoundingSphere(new al),n.next=3,L0.centerBoundingSphere(this.camera,this.controls,this,t,L0.CAMERA_FLIGHT);case 3:case"end":return n.stop()}},e,this)})),function(){return jG.apply(this,arguments)}),resetCamera:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:L0.NO_CAMERA_FLIGHT;return this.camera.zoom=1,L0.resetCamera(this.camera,this.controls,this,e)},setSlideScene:function(e,t,n){return this.slides.setSlideScene(e,t,n)},doubleClick:function(e){e.preventDefault()},contextMenu:function(e){e.preventDefault()},controlsUpdated:function(e){e.data.self.draw()},setTargetToObject:function(e,t){L0.setCameraTargetToObject(this.camera,this.controls,this,e,t)},calculateBoundingBox:function(e){return this.getObject(e).getBoundingBox(this.getObjectsContainer())},setPointMatchingCamera:function(){var e=this;if(!e.isCameraFlightInProgress()){e.toggleCameraType(e),e.controls.isPointMatching=!0,e.copyCameraAttributes(e.cameraBeforePointMatching,e.camera),e.cameraBeforePointMatching.target=e.controls.target.clone(),e.camera.zoom=1;var t=e.clippingPlanes.getActiveClippingPlane(),n=e.clippingPlanes.getActiveClippingPlaneMaterial(),i=new Ci;n.getWorldQuaternion(i);var s=new Ee;s.copy(t.normal),s.normalize();var c=e.dynamicDrawRange._geoBoundingSphere.radius,u=e.controls.getLastDragRotationCenter();u||(u=e.rotationCenter);var m=new qi;m.makeRotationFromQuaternion(i);var v=new Ee,M=new Ee,w=new Ee;m.extractBasis(v,M,w);var P=u.clone(),q=P.clone().add(s.clone().multiplyScalar(c));return L0.alignCameraOrhographic(e.camera,e.controls,e,q,P,M,c,L0.CAMERA_FLIGHT)}},unsetPointMatchingCamera:function(){var e=this;if(!e.isCameraFlightInProgress()){e.toggleCameraType(e),e.controls.isPointMatching=!1,e.camera.zoom=1;var t=e.camera,n=e.controls,i=e.cameraBeforePointMatching.position.clone(),s=e.cameraBeforePointMatching.target.clone(),c=e.cameraBeforePointMatching.up,u=e.cameraBeforePointMatching.quaternion.clone();L0.cameraFlyTo(t,n,e,i,s,c,u)}},copyCameraAttributes:function(e,t){e.name=t.name,e.up.copy(t.up),e.position.copy(t.position),e.rotation.copy(t.rotation),e.aspect=t.aspect,e.fov=t.fov,e.quaternion.copy(t.quaternion)},toggleProjectionMode:function(e){e.toggleCameraType(e),e.controls.reset();var t=e.visibleGeometryBoundingBox.getBoundingSphere(new al);L0.centerBoundingSphere(e.camera,e.controls,e,t,L0.CAMERA_FLIGHT)},toggleCameraType:function(e){e.camera.type==="perspective"?(e.perspectiveCamera=e.camera,e.camera=e.orthographicCamera,e.camera.type="orthographic",e.copyCameraAttributes(e.camera,e.perspectiveCamera),e.controls.updateOrthographicFrustum()):(e.orthographicCamera=e.camera,e.camera=e.perspectiveCamera,e.camera.type="perspective",e.copyCameraAttributes(e.camera,e.orthographicCamera)),e.transformControls&&(e.transformControls.camera=e.camera),e.controls.object=e.camera,e.renderGPUPickTextureNeeded(),e.draw()},isPerspectiveCamera:function(){var e;return(this==null||(e=this.camera)===null||e===void 0?void 0:e.type)==="perspective"},isOrthographicCamera:function(){var e;return(this==null||(e=this.camera)===null||e===void 0?void 0:e.type)==="orthographic"},mouseDown:function(e){var t,n=e.data.self;if(!n.isCameraFlightInProgress()){var i=e.offset?e.offset:$(this).offset(),s=n.hasTouches(e,1),c=n.hasTouches(e,2),u=n.hasTouches(e,3);n.mouseDownEventOfRenderer=!0,n!=null&&(t=n.transformControls)!==null&&t!==void 0&&t.dragging?n.renderQueue.setInteractionMode(!0):(n.touchWithOneFinger=!0,(c||u)&&(n.touchWithOneFinger=!1),s&&n.presstimer===null&&(n.isLongPress=!1,n.presstimer=setTimeout(function(){n.isLongPress=!0},500)),n.mouseClick=!0,n.renderQueue.setInteractionMode(!0),e.button===0||s?(e.preventDefault(),n.mouseDownButton=0,s&&(n.mouse.x=e.originalEvent.touches[0].clientX-i.left,n.mouse.y=e.originalEvent.touches[0].clientY-i.top,n.isFingerprintInputMode()&&n.fingerprintCursor.isMouseOver(e)&&(n.singleTouchFingerprintOffset=-n.fingerprintCursor.FINGERPRINT_OFFSET,n.mouse.y+=n.singleTouchFingerprintOffset))):e.button===1?n.mouseDownButton=1:(e.button===2||c||u)&&(e.preventDefault(),n.mouseDownButton=2),n.isFrameSelectionEvent=n.isDevMode()&&gA.isValid(e))}},mouseMove:function(e){var t,n=e.data.self;if(!n.isCameraFlightInProgress()){var i=e.offset?e.offset:$(this).offset(),s=n.hasTouches(e,1),c=n.hasTouches(e,2),u=n.hasTouches(e,3),m=e.clientX-i.left===n.mouse.x&&e.clientY-i.top+n.singleTouchFingerprintOffset===n.mouse.y;if(!n.isCameraFlightInProgress()&&!(n!=null&&(t=n.transformControls)!==null&&t!==void 0&&t.dragging||(s&&(m=e.originalEvent.touches[0].clientX-i.left===n.mouse.x&&e.originalEvent.touches[0].clientY-i.top+n.singleTouchFingerprintOffset===n.mouse.y),n.cancelLongPress(),m)))if(s?(n.mouse.x=e.originalEvent.touches[0].clientX-i.left,n.mouse.y=e.originalEvent.touches[0].clientY-i.top+n.singleTouchFingerprintOffset):c?(n.mouse.x=(e.originalEvent.touches[0].clientX+e.originalEvent.touches[1].clientX)/2-i.left,n.mouse.y=(e.originalEvent.touches[0].clientY+e.originalEvent.touches[1].clientY)/2-i.top):u?(n.mouse.x=e.originalEvent.touches[1].clientX-i.left,n.mouse.y=e.originalEvent.touches[1].clientY-i.top):(n.mouse.x=e.clientX-i.left,n.mouse.y=e.clientY-i.top),n.controls.processMouseMove(e),n.fingerprintCursor.processMouseMove(e),s&&n.isFingerprintInputMode()&&n.fingerprintCursor.fingerprintHit){n._applyHoverEffect();var v,M=!0;n.isMarkupMode()&&n.markups.mouseMove(e)&&(M=!1),M&&((v=n.currentInteractor)===null||v===void 0||v.processMouseMove(e))}else{s&&(n.controls.isPinching()&&n.controls.finishPinch(),n.controls.isPaning()&&n.controls.finishPan(e)),c&&(n.controls.isPaning()&&n.controls.finishPan(e),n.controls.isPinching()||n.controls.startPinch(),n.controls.processPinch(e)),u&&n.controls.isPinching()&&n.controls.finishPinch(),n.controls.isDragging()&&n.controls.processDrag(e);var w=n.mouseDownButton===0||n.mouseDownButton===1||n.mouseDownButton===2;if(!n.isFrameSelectionEvent&&w||s&&!n.mouseClick||c||u){var P;n.mouseClick&&(n.controls.supportsGPUPicking()&&n.pickGPU(),n.objectUnderMouse||n.setObjectUnderMouse(n.sectionCuts.getVisualObjectForMesh()),n.objectUnderMouse||n.setObjectUnderMouse(n.overlays.getVisualObjectForMesh()),n.controls.canStartDrag()?(n.isMarkupMode()&&n!=null&&(P=n.currentInteractor)!==null&&P!==void 0&&P.preview&&n.currentInteractor.name!=="MarkupNoInputInteractor"&&n.currentInteractor.name!=="LocalCoordSystemInteractor"&&(Array.isArray(n.currentInteractor.preview)?n.currentInteractor.preview.forEach(function(Z){return Z.setLabelVisible(!1)}):n.currentInteractor.preview.setLabelVisible(!1)),n.controls.startDrag(n.mouseDownButton,e)):n.controls.isDragging()&&n.controls.finishDrag(e)),n.mouseClick=!1}else{var q;n.isFrameSelectionEvent||n._applyHoverEffect(),n.isMarkupMode()?n.markups.mouseMove(e)||(q=n.currentInteractor)===null||q===void 0||q.processMouseMove(e):(n.checkSelectionMode("moveModel")||n.checkSelectionMode("selectSectionPlane")||n.checkSelectionMode("selectPointsForOverlay"))&&n.currentInteractor.processMouseMove(e)}}}},mouseUp:function(e){var t=e.data.self;if(!t.isCameraFlightInProgress()&&t.mouseDownEventOfRenderer){if(t.mouseDownEventOfRenderer=!1,t.cancelLongPress(),e.isLongPress=t.isLongPress,t.renderQueue.setInteractionMode(!1),t.fillRenderQueue(),clearTimeout(t.clickTimer),t.clickTimer=setTimeout(function(){t.clickCount=0},t.doubleClickDelay),t.clickCount>0){var n=null,i=null;if(t.isMarkupMode()&&(i=t.markups.mouseUpDblClick(e)),i)t.centerObjects(i.getObjectIds());else if(n=t.objectUnderMouse,t.controls.supportsGPUPicking()&&t.pickGPU(),t.touchWithOneFinger===!0)if(t.objectUnderMouse&&!t.isTouchMode())t.centerObjects([t.objectUnderMouse.id]);else{var s=t.overlays.getVisualObjectForMesh();s!=null&&s.mesh&&t.centerOverlay(s.mesh)}return t.setObjectUnderMouse(n),t.mouseClick=!1,t.mouseDownButton=null,t.isFrameSelectionEvent=!1,t.controls.isDragging()&&t.controls.finishDrag(e),t.clickCount=0,void t.renderGPUPickTextureNeeded()}if(t.clickCount++,t.controls.isDragging()&&(t.controls.finishDrag(e),t.draw()),t.controls.isPinching()&&(t.controls.finishPinch(),t.draw()),t.controls.isPaning()&&(t.controls.finishPan(),t.draw()),t._resetHoverEffect(),t.mouseClick&&t.mouseDownButton===0){var c,u=(c=t.content)===null||c===void 0?void 0:c.getClashes();if(u&&u.getCurrentClashFilter()!==null){u.resetSelectedClash(t),u.resetClashScene(t);var m=t.getNDCVector(),v=t.projector.pickingRay(m,t.camera).ray,M=t.clashesRenderQueue.castRayToClashes(v,200);if(M)return t.setObjectUnderMouse(M),u.setSelectedClash(M.getClashObject(),t),t.resetSelectedObjects(),$(t.domElement).trigger("select3DObject"),t.mouseClick=!1,t.mouseDownButton=null,void t.draw()}t.controls.supportsGPUPicking()&&t.pickGPU(),t.objectUnderMouse||t.setObjectUnderMouse(t.overlays.getVisualObjectForMesh());var w=!1;t.isMarkupMode()&&(w=t.markups.mouseUp(e)),w||t.controls.processClick(e)}t.mouseClick=!1,t.mouseDownButton=null,t.singleTouchFingerprintOffset=0,t.isMarkupMode()&&(t.markups.mouseActionNeedsLabelUpdate(e),t.fingerprintCursor.mouseUp()),t.renderGPUPickTextureNeeded(),t.draw()}},_mouseWheelBrowserSpecificDelta:function(e){return e.originalEvent.wheelDelta?e.originalEvent.wheelDelta:e.originalEvent.detail?-e.originalEvent.detail:void 0},mouseWheel:function(e){var t=e.data.self;if(!t.isCameraFlightInProgress()){var n=t._mouseWheelBrowserSpecificDelta(e);t.renderQueue.setInteractionMode(!0),e.preventDefault(),e.stopPropagation(),t.controls.processMouseWheel(n,e),t.isMarkupMode()&&t.markups.mouseActionNeedsLabelUpdate(e),clearTimeout($.data(e.target,"tid")),$.data(e.target,"tid",setTimeout(function(){t.renderQueue.setInteractionMode(!1),t.renderGPUPickTextureNeeded(),t.fillRenderQueue(),t.draw()},250)),t.draw()}},mouseOut:function(e){var t=e.data.self;t._resetHoverEffect(),t.mouse.x=-1,t.mouse.y=-1,t.draw()},restoreZoom:function(){var e=this;return e.resetSelectionMode(),e.cameraBackup?(this.controls.target.set(e.cameraBackup.target.x,e.cameraBackup.target.y,e.cameraBackup.target.z),this.camera.position.set(e.cameraBackup.position.x,e.cameraBackup.position.y,e.cameraBackup.position.z),this.camera.quaternion.set(e.cameraBackup.quaternion[0],e.cameraBackup.quaternion[1],e.cameraBackup.quaternion[2],e.cameraBackup.quaternion[3]),this.camera.up.set(e.cameraBackup.up.x,e.cameraBackup.up.y,e.cameraBackup.up.z),L0.updatePerspectiveCamera(this.camera,!1),this.setViewportSize(),Promise.resolve()):e.resetCamera(L0.CAMERA_FLIGHT)},backupCameraView:function(){L0.backupCameraView(this,this.camera,this.controls)},zoomToObject:function(){var e=ee(ge().mark(function t(n){return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:L0.zoomToObject(this.camera,this.controls,this,n);case 1:case"end":return i.stop()}},t,this)}));return function(t){return e.apply(this,arguments)}}(),zoomToObjects:function(){var e=ee(ge().mark(function t(n){return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:L0.zoomToObjects(this.camera,this.controls,this,n);case 1:case"end":return i.stop()}},t,this)}));return function(t){return e.apply(this,arguments)}}(),isCameraFlightInProgress:function(){return this.cameraFlightInProgress},getRayIntersectedObjects:function(e){var t,n,i,s,c=this,u=this.getNDCVector(),m=this.objectUnderMouse,v=[],M=[],w=0;if(this.camera.updateProjectionMatrix(),this.camera.updateMatrixWorld(),n=this.projector.pickingRay(u,this.camera),e)M=n.intersectObjects(e.children,!0);else if(m){var P=this.getObjectsContainer().getObjectRoot(m);if(P.hasOwnGeometry())if(P.meshesData.length===0)v.push(P.getMesh(c,0));else{var q,Z=__(P.meshesData.entries());try{for(Z.s();!(q=Z.n()).done;){var K=de(q.value,1)[0];(t=P.getMesh(c,K))&&v.indexOf(t)===-1&&v.push(t)}}catch(le){Z.e(le)}finally{Z.f()}}else this.getObjectsContainer().traverseDown(P,function(le){var pe,Ie=__(le.meshesData.entries());try{for(Ie.s();!(pe=Ie.n()).done;){var Ce=de(pe.value,1)[0];(t=le.getMesh(c,Ce))&&v.indexOf(t)===-1&&v.push(t)}}catch(Ne){Ie.e(Ne)}finally{Ie.f()}});M=n.intersectObjects(v)}if(m=null,M.length){var he;for(this.checkSelectionMode("section")&&this.clippingPlanes.intersects(n,he)&&(w=he),i=0,s=M.length;i<s;i++)if(M[i].distance>w){m=M[i];break}}return m},getNDCVector:function(e,t){var n=new Ai,i=(n=this.renderer.getSize(n)).x/2,s=n.y/2,c=e||this.mouse.x,u=t||this.mouse.y;return new Ee(c/i-1,1-u/s,.5)},addLights:function(e,t){var n,i,s,c=t;for(n=0,i=c.length;n<i;n++)c[n].type==="ambient"?e.add(new Hz(c[n].color)):c[n].type==="directional"?((s=new JC(c[n].color,c[n].intensity)).position.copy(c[n].position),e.add(s)):c[n].type==="spot"?console.debug("[Renderer] addLights - no spot lights defined at the moment"):c[n].type==="point"?console.debug("[Renderer] addLights - no point lights defined at the moment"):c[n].type==="hemisphere"&&e.add(new H8(c[n].skyColorHex,c[n].groundColorHex,c[n].intensity||1))},toggleDisciplinesOpacity:function(e,t){var n,i,s,c=this.content.getDisciplines();for(n=0,s=c.length;n<s;n++)(i=c[n]).isCollisionLayer||i.isRevisionComparisonLayer||(i.visible||t)&&this.setDisciplineOpacity(i,e?i.opacity:null);return this},toggleClashDisciplineOpacity:function(e){var t,n,i,s=this.content.getDisciplines();for(t=0,i=s.length;t<i;t++)(n=s[t]).isCollisionLayer&&n.visible&&this.setDisciplineOpacity(n,e?n.opacity:null);return this},disposeObjects:function(e,t,n){if(e)for(var i;e.children.length;)i=e.children[0],t=t||i.node,n=n||i.discipline,i&&i.node===t&&i.discipline===n&&(i.geometry?i.geometry.dispose():i.children.length&&this.disposeObjects(i),e.remove(i),i=null)},traverseObjectNode:function(e,t){var n=this.getObjectsContainer().getObject(e.id);n&&this.getObjectsContainer().traverseDown(n,function(i){t(i)})},toggleObjectNode:function(e){var t=this,n=this.content.getClashes().getClashElement(e.id);n&&n.getClashObject().setVisible(e.visible),this.traverseObjectNode(e,function(i){e.visible?(i.visible=!0,i.show(t)):(i.visible=!1,i.hide(t))}),this.draw()},toggleObjectNodeOpacity:function(e){var t=this,n=this.content.getClashes().getClashElement(e.id);n&&n.getClashObject().setBackground(e.opacity<1),this.traverseObjectNode(e,function(i){return i.setBackground(t,e.opacity<1)}),this.draw()},displayCollisionElement:function(e,t){if(this.content){var n=this.content.getClashes().getClashObjectForClashElementId(e);n&&n.setVisible(t)}},displayRevisionCompareElement:function(e,t,n){var i=this.findSubsetIdsObjects(e);if(i.length>0){var s,c=__(i);try{for(c.s();!(s=c.n()).done;){var u=s.value;(!n||u.compareTo===n)&&(t?this.showObject(u):this.hideObject(u))}}catch(m){c.e(m)}finally{c.f()}}},findSubsetIdsObjects:function(e){return this.getObjectsContainer().findSubsetIdsObjects(e)},filterRevisionCompareElements:function(e,t,n){var i=this;if(e&&e.length>0){var s=this.checkSelectionMode("isolated");s&&this.disposeIsolatedSet(),e.forEach(function(c){var u,m=__(i.findSubsetIdsObjects(c));try{for(m.s();!(u=m.n()).done;){var v=u.value;v.compareTo&&(v.compareTo===n&&n!==0&&t.contains(v.discipline)?i.showObject(v):i.hideObject(v))}}catch(M){m.e(M)}finally{m.f()}}),s&&this.makeIsolatedSet()}},displayRevisionCompareOriginalElements:function(e,t){var n=this;if(e&&e.length>0){var i=this.checkSelectionMode("isolated");i&&this.disposeIsolatedSet(),e.forEach(function(s){var c=n.findSubsetIdsObjects(s);if(c.length>0){var u,m=__(c);try{for(m.s();!(u=m.n()).done;){var v=u.value;t?n.showObject(v):n.hideObject(v)}}catch(M){m.e(M)}finally{m.f()}}}),i&&this.makeIsolatedSet()}},setDisciplineOpacity:function(e,t){var n=this,i=this.getGeometryNodes().nodelist,s=e.id;t=t||this.disciplineOpacity,i.nodes.forEach(function(c){if(Object.hasOwn(i,c)&&i[c][s]&&i[c].divisionTopologyId===e.divisionTopologyId){var u=e.opaque?e.selectedUserOpacity:void 0;n.getGeometryNodes().setNodeDisciplineOpacity(c,s,t,u)}}),this.draw()},showPins:function(e,t){return e?(this.pins.showPins(e,t),this):this},hidePins:function(){return this.pins.hidePins(),this},getPinObject:function(){return this.deferred=$.Deferred(),this.setSelectionMode("addPin"),this.deferred},cancelAddPin:function(){this.checkSelectionMode("addPin")&&(this.deferred.reject(),this.unsetSelectionMode("addPin"))},getSlideThumbnail:function(){return this.slides.getSlideThumbnail()},getSlideThumbnailBlob:function(e,t){return this.slides.getSlideThumbnailBlob(e,t)},getSlideParams:function(){return this.slides.getSlideParams()},showRelatedObject:function(e){return this.pins.zoomToPin(e)},highlightPin:function(e){this.pins.highlightPin(e)},resetPinsMaterial:function(){this.pins.resetPinsMaterial()},refreshIsolatedSet:function(){this.checkSelectionMode("isolated")&&(this.disposeIsolatedSet(),this.makeIsolatedSet())},colorizeObjects:function(e,t){var n=this.getObjectsContainer().getObjects(e);this.addObjectsToColoredSet(n,t),this.draw()},hoverObject:function(e){this.lastObjectUnderMouse=this.objectUnderMouse,this.objectUnderMouseChanged=!0,this.objectUnderMouse=this.getObjectsContainer().getObject(e),this._setHoverEffect()},resetHoveredObject:function(){this._resetHoverEffect()},updateStats:function(){var e,t=this,n=$("#debug").data("st"),i=(e=window)!==null&&e!==void 0&&(e=e.performance)!==null&&e!==void 0&&e.memory?(window.performance.memory.jsHeapSizeLimit/1e9).toFixed(2)+" GB":"N/A";n&&(n.update(),$("div#debug > div#renderInfo").html("Shaders: "+t.renderer.info.memory.programs+"<br />Calls: "+t.renderer.info.render.calls+"<br />Triangles: "+(t.renderer.info.render.faces/1e6).toFixed(2)+" M<br />Meshes: "+t.root.children.length+"<br />Chrome JS heap: "+i+"<br />Chrome buffer: "+(t.maxWebGLBufferSize/1e9).toFixed(2)+" GB<br /><br />Objects<br />Total: "+t.getObjectsContainer().getObjectCount()))},isTouchMode:function(){return localStorage.getItem("inTouchMode")==="true"},cancelLongPress:function(){this.presstimer!==null&&(clearTimeout(this.presstimer),this.presstimer=null)},hasTouches:function(e,t){var n;return(e==null||(n=e.originalEvent)===null||n===void 0?void 0:n.touches)&&e.originalEvent.touches.length===t},disableDraw:function(e){this.drawDisabled=e,e===!0&&this.cancelDrawRequest()},getObject:function(e){return this.getObjectsContainer().getObject(e)},setLocalizationFnc:function(e){e instanceof Function&&(this.textLocalizationFnc=e)},modifyPreviewArrowPosition:function(e,t,n){var i;(i=this.currentInteractor)!==null&&i!==void 0&&i.modifyPreviewArrowPosition&&(this.currentInteractor.modifyPreviewArrowPosition(e,t,n),this.draw())},setMultiselect:function(e){this.forceMultiSelect=e},setSingleObjectSelection:function(e){this.forceSingleObjectSelection=e},escapeKeyPressed:function(){if(this.currentInteractor)return this.currentInteractor.name==="MeasurePerpendicularInteractor"||this.currentInteractor.name==="MeasureFreeInteractor"||this.currentInteractor.name==="MeasureAngleInteractor"||this.currentInteractor.name==="AnnotationInteractor"||this.currentInteractor.name==="LocalCoordSystemInteractor"||this.currentInteractor.name==="SelectPointsForOverlayInteractor"?(this.currentInteractor.cancel(),void this.currentInteractor.start()):void(this.currentInteractor.name==="SectionPlaneInteractor"&&(this.currentInteractor.cancel(),this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&!this.deleteActivePlanePossible()&&this.setSinglePlaneMode(),this.clippingPlanes.restoreClippingPlanes(),this.clippingPlanes.setEnabled(!0),this.clippingPlanes.addNewPlaneIsOn=!1,this.clippingPlanes.onUpdateSectionParams()))},getCommandPolicy:function(e,t){var n=e.GetCommandName();if(this.commandPolicies[n]!==void 0&&this.commandPolicies[n][t]!==void 0)return this.commandPolicies[n][t]},calculateDefaultBoundingBox:function(){this.visibleGeometryBoundingBox.set(new Ee(-1,-1,-1),new Ee(1,1,1)),this.visibleGeometryBoundingBox.getBoundingSphere(this.visibleGeometryBoundingSphere)},calculateVisibleGeometryBoundaries:function(){this.visibleGeometryBoundingBox.makeEmpty();var e=this.getGeometryNodes();return!!e&&(this.visibleGeometryBoundingBox=e.calculateVisibleGeometryBoundingBox(this.visibleGeometryBoundingBox),this.visibleGeometryBoundingBox.isEmpty()?(this.calculateDefaultBoundingBox(),!1):(this.visibleGeometryBoundingBox.getBoundingSphere(this.visibleGeometryBoundingSphere),!0))},calculateDrawRange:function(){this.dynamicDrawRange.calculateDrawRange(this)},useTranslationForTransformControls:function(){this.transformControls.setMode("translate"),this.updateTransformControls(!1)},useScaleForTransformControls:function(){this.transformControls.setMode("scale"),this.updateTransformControls(!1)},useRotationForTransformControls:function(){this.transformControls.setMode("rotate"),this.updateTransformControls(!1)},switchVisibilityOfTransformControls:function(){this.updateTransformControls(!0)},updateTransformControls:function(e){this.transformControls.visible=!e||!this.transformControls.visible,this.transformControls.visible===!1?(this.transformControls.showX=!1,this.transformControls.showY=!1,this.transformControls.showZ=!1):this.clippingPlanes.clippingPlaneSettings.useParallelPlane()?(this.transformControls.showX=!0,this.transformControls.showY=this.transformControls.getMode()==="rotate",this.transformControls.showZ=this.transformControls.getMode()==="rotate"):this.clippingPlanes.clippingPlaneSettings.useBoxPlanes()?(this.transformControls.showX=!0,this.transformControls.showY=!0,this.transformControls.showZ=!0):(this.transformControls.showX=!0,this.transformControls.showY=this.transformControls.getMode()==="rotate",this.transformControls.showZ=this.transformControls.getMode()==="rotate",this.transformControls.getMode()==="scale"&&(this.transformControls.showX=!1,this.transformControls.visible=!1)),this.draw()},showClippingFrames:function(e){this.clippingPlanes.showClippingFrames(e),this.draw()},_setPlaneMode:function(e){var t=arguments.length>1&&arguments[1]!==void 0&&arguments[1];this.clippingPlanes.resetActivePlane(),this.clippingPlanes.hideAdditionalClippingPlanes(),this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&this.clippingPlanes.setUseUpVector(!1);var n=this.clippingPlanes.getSectionCutOptions();n.sectionCutPlaneOption=e,this.clippingPlanes.setSectionCutOptions(n,t)},setSinglePlaneMode:function(){this._setPlaneMode("single",!0),this.clippingPlanes.addNewPlaneIsOn=!1},setParallelPlaneMode:function(){this._setPlaneMode("parallel",!0),this.clippingPlanes.addNewPlaneIsOn=!1},setBoxPlaneMode:function(){this._setPlaneMode("box",!0),this.clippingPlanes.addNewPlaneIsOn=!1},setMultiPlaneMode:function(){this._setPlaneMode("multi",!0),this.clippingPlanes.addNewPlaneIsOn=!0},isAxisModeEnabled:function(){var e;return!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()||((e=this.clippingPlanes)===null||e===void 0?void 0:e.areMorePlanesPossible())&&this.clippingPlanes.addNewPlaneIsOn},addNewPlaneClicked:function(){var e=this.clippingPlanes.addNewPlaneIsOn;this.clippingPlanes.addNewPlaneIsOn?this.deleteActivePlanePossible()||this.setSinglePlaneMode():this.clippingPlanes.clippingPlaneSettings.useSinglePlane()&&this.setMultiPlaneMode(),this.clippingPlanes.addNewPlaneIsOn=!e,this.clippingPlanes.addNewPlaneIsOn||this.escapeKeyPressed(),this.clippingPlanes.onUpdateSectionParams()},addNewPlanePossible:function(){return!!this.clippingPlanes.clippingPlaneSettings.useSinglePlane()||!!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&((e=this.clippingPlanes)===null||e===void 0?void 0:e.areMorePlanesPossible());var e},isAddNewPlaneEnabled:function(){return this.addNewPlanePossible()||(this.clippingPlanes.addNewPlaneIsOn=!1),this.clippingPlanes.addNewPlaneIsOn},moveTransformControlToPrevPlane:function(){this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&this.transformControls&&this.clippingPlanes.setTransformControlToPlane(this.clippingPlanes.setPrevPlaneAsActive())},moveToPrevPlanePossible:function(){var e;return!!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&((e=this.clippingPlanes)===null||e===void 0?void 0:e.moveToPrevPlanePossible())},moveTransformControlToNextPlane:function(){this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&this.transformControls&&this.clippingPlanes.setTransformControlToPlane(this.clippingPlanes.setNextPlaneAsActive())},moveToNextPlanePossible:function(){var e;return!!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&((e=this.clippingPlanes)===null||e===void 0?void 0:e.moveToNextPlanePossible())},deleteActivePlaneClicked:function(){this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&this.clippingPlanes.deleteActivePlane(),this.deleteActivePlanePossible()||this.setSinglePlaneMode()},deleteActivePlanePossible:function(){var e;return!!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&((e=this.clippingPlanes)===null||e===void 0?void 0:e.deleteActivePlanePossible())},flipOrientation:function(){this.clippingPlanes.isActivePlaneVisible()&&(this.clippingPlanes.flipOrientation(),this.renderGPUPickTextureNeeded())},currentClippingMode:function(){return this.clippingPlanes.getSectionCutOptions().sectionCutPlaneOption},currentManipulationMode:function(){return this.transformControls.mode},currentManipulationControlVisibility:function(){return this.transformControls.visible},isActivePlaneVisible:function(){var e;return!!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&((e=this.clippingPlanes)===null||e===void 0?void 0:e.isActivePlaneVisible())},isFlipPlanePossible:function(){var e;return!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()||((e=this.clippingPlanes)===null||e===void 0?void 0:e.isActivePlaneVisible())},_onFreePlaneSelected:function(){var e,t=new CustomEvent("onFreePlaneSelected",{bubbles:!0,cancelable:!0}),n=(e=document)===null||e===void 0?void 0:e.getElementById("mainViewportContainer");n&&n.dispatchEvent(t)},setFreePlaneSection:function(e,t){console.debug(`[Renderer] setFreePlaneSection
5819
+ `)),this.cameraBeforePointMatching=new nr,e.type==="perspective"?this.camera=new nr(e.fov,t/n,e.near,e.far):e.type==="orthographic"&&(this.camera=new CM(e.left,e.right,e.top,e.bottom,e.near,e.far),this.camera.aspect=t/n,this.name=="mainRendererViewport"&&(this.camera.fov=45)),this.camera.name="mainCamera",this.camera.type=e.type,this.camera.position.set(e.position.x,e.position.y,e.position.z),this.scene.add(this.camera),this.orthoCamera=new CM(-t/2,t/2,n/2,-n/2,1,10),this.orthoCamera.position.z=10;var i=e.far-e.near,s=t/n;this.orthographicCamera=new CM(i*s/-2,i*s/2,i/2,i/-2,e.near,e.far),this.orthographicCamera.position.set(e.position.x,e.position.y,e.position.z),this.orthographicCamera.aspect=t/n,this.orthographicCamera.fov=45,this.perspectiveCamera=new nr(e.fov,t/n,e.near,e.far)}},initControls:function(e,t){this.controls.target=new Ee(e.target.x||0,e.target.y||0,e.target.z||0),this.controls.object=this.camera,this.controls.domElement=this.renderer.domElement,this.controls.localElement=this.renderer.domElement,t||this.initTransformControls()},_transformControlsChangeEvent:function(){if(this.transformControls){switch(this.transformControls.mode){case"translate":this.clippingPlanes.recalcClippingSceneForTranslation(this.transformControlsPosition);break;case"rotate":this.clippingPlanes.recalcClippingSceneForRotation(this.transformControlsRotation);break;case"scale":this.clippingPlanes.recalcClippingSceneForScale(this.transformControlsScale)}this.draw()}},_transformControlsMouseDownEvent:function(){this.emptySectionCutSceneForSectionCutGeometry(),this.transformControlsPosition=this.clippingPlanes._clippingPlanes[this.clippingPlanes._activeClippingPlane].clippingPlaneFrame.position.clone(),this.transformControlsRotation=this.clippingPlanes._clippingPlanes[this.clippingPlanes._activeClippingPlane].clippingPlaneFrame.rotation.clone(),this.transformControlsScale=this.clippingPlanes._clippingPlanes[this.clippingPlanes._activeClippingPlane].clippingPlaneFrame.scale.clone()},_transformControlsMouseUp:function(){this.transformControlsPosition=null,this.transformControlsRotation=null,this.transformControlsScale=null,this.clippingPlanes.onRefreshSectionCuts()},initTransformControls:function(){this.transformControls=new gG(this.camera,this.renderer.domElement),this.transformControls.addEventListener("change",this._transformControlsChangeEvent.bind(this)),this.transformControls.addEventListener("mouseDown",this._transformControlsMouseDownEvent.bind(this)),this.transformControls.addEventListener("mouseUp",Lre.debounce(this._transformControlsMouseUp.bind(this),1e3)),this.transformControls.setSpace("local"),this.transformControls.setRotationSnap(pL.radians(5)),this.controlsScene.add(this.transformControls)},disposeTransformControls:function(){var e,t,n,i;(e=this.transformControls)===null||e===void 0||e.removeEventListener("change",this._transformControlsChangeEvent),(t=this.transformControls)===null||t===void 0||t.removeEventListener("mouseDown",this._transformControlsMouseDownEvent),(n=this.transformControls)===null||n===void 0||n.removeEventListener("mouseUp",this._transformControlsMouseUp),(i=this.transformControls)===null||i===void 0||i.dispose(),this.transformControls=null},initFrameSelection:function(){this.frameSelection=new _re(this),this.frameSelection.init()},disposeFrameSelection:function(){var e;(e=this.frameSelection)===null||e===void 0||e.dispose(),this.frameSelection=null},renderScene:function(e){var t,n=this,i=this.checkSelectionMode("isolated");this.defaultPassChain.getPass(4).setEnabled(i);var s=e.drawClashes&&((t=this.content)===null||t===void 0?void 0:t.getClashes().getCurrentClashFilter())!==null;Rre.forEach(function(c){n.defaultPassChain.getPass(c).setEnabled(s)}),e.drawHelperScene===!0&&this.renderer.render(this.helperScene,this.camera),e.drawPins===!0&&this.pins.render(),this.defaultPassChain.render(this.renderer,this.disciplineNodeMeshScene.getScene(),this.camera),s&&i&&this.defaultPassChain.renderPasses([1,2],this.renderer,this.scene,this.camera)},setContent:function(e){this.content=e},getContent:function(){return this.content},hasContent:function(){return this.content!==null},draw:function(){var e=this;return this.noRender||this.drawDisabled||this.drawRequest||!this.renderer?new Promise(function(t){t()}):new Promise(function(t){e.drawRequest=requestAnimationFrame(function(){if(e.noRender||e.drawDisabled||!e.renderer)return e.drawRequest=null,void t();e.drawSynchronous(),e.drawRequest=null,t()})})},cancelDrawRequest:function(){this.drawRequest&&(cancelAnimationFrame(this.drawRequest),this.drawRequest=null)},fillRenderQueue:function(){this.renderQueue.fill(this.camera,$(this.domElement).height()),this.content&&this.clashesRenderQueue.fill(this.content,this.camera)},prepareMeshMatrices:function(e){var t=e||this.camera;L0.updatePerspectiveCamera(t,!0),this.renderQueue.forEachQueuedMesh(function(n,i){i.modelViewMatrix.multiplyMatrices(t.matrixWorldInverse,i.matrixWorld),i.normalMatrix.getNormalMatrix(i.modelViewMatrix)})},drawSynchronous:function(){this.noRender||this.drawDisabled||!this.renderer||(this.render(this.defaultDrawFlags),this.afterDrawCallback&&this.afterDrawCallback(this),this.afterCameraFlyCallback&&this.afterCameraFlyCallback(this))},drawThumbnail:function(){var e,t=this.clippingPlanes.getAllVisibleStates();this.clippingPlanes.setAllVisible(!1),this.transformControls&&(e=this.transformControls.visible,this.transformControls.visible=!1);var n=new nj().setStatesForThumbnail();this.render(n),this.clippingPlanes.setAllVisibleStates(t),this.transformControls&&(this.transformControls.visible=e)},updateMeshesWebGLBuffer:function(){var e=this,t=this.getGeometryNodes();t&&t.forEachDisciplineNode(function(n){if(n.isGeometryLoaded()!==!1&&n.visible!==!1){var i=e.getDisciplineNodeMeshes().getNodeMesh(n);i&&i.updateMeshesWebGLBuffer(e,n.getGeometryTimestamp())}})},updateNavigationMapCameraFrustum:function(){var e=this.controls.getNavigationMap(),t=this.controls.getMainViewport();e.getCameraHelperType()!==t.camera.type&&e.updateNavigationMapProjectionMode(t)},updateNavigationMap:function(){this.name==="navigationMapViewport"&&this.updateNavigationMapCameraFrustum()},render:function(e){var t;if(e||(e=this.defaultDrawFlags),this.calculateDrawRange(),this.updateNavigationMap(),this.updateMeshesWebGLBuffer(),this.renderer.autoClear=!1,this.renderer.clear(),this.shadows.isEnabled()&&this.shadowsEnabled&&this.shadowsSupported&&this.shadows.renderShadowMaps(),this.fillRenderQueue(),this.debugView>0){if((this.debugView===4||this.debugView===5)&&!this.ssaoEnabled||this.debugView===6&&!this.shadowsEnabled)return;switch(this.debugView){case 1:this.debugFullscreenQuad.setColorTexture(this.colorLookup.getTexture());break;case 2:this.debugFullscreenQuad.setColorTexture(this.pickColorLookup.getTexture());break;case 3:this.debugFullscreenQuad.setColorTexture(this.gpuPicker.getRenderTarget().texture);break;case 4:this.debugFullscreenQuad.setColorTexture(this.ssaoPassChain.getPass(0).getRenderTarget().texture);break;case 5:this.debugFullscreenQuad.setColorTexture(this.ssaoPassChain.getPass(1).getRenderTarget().texture);break;case 6:this.debugFullscreenQuad.setColorTexture(this.shadows.shadowMaps[0].getDepthBuffer().texture)}this.debugFullscreenQuad.render(this.renderer)}else(t=this.currentInteractor)===null||t===void 0||t.beforeRender(),this.prepareMeshMatrices(this.camera),this.ssaoEnabled&&this.ssaoSupported&&this.ssaoPassChain?(this.ssaoPassChain.render(this.renderer,this.disciplineNodeMeshScene.getScene(),this.camera),this.ambientOcclusionTexture=this.ssaoPassChain.getLastPass().getRenderTarget().texture):this.ambientOcclusionTexture=null,this.renderer.clear(),this.renderer.autoClear=!1,this.doRenderGPUPickTexture(),this.renderer.autoClear=!1,this.renderer.clear(),e.drawBackground===!0&&this.background.draw(this.renderer),e.drawScene===!0&&this.renderScene(e),this.updateStats(),this.renderer.render(this.scene,this.camera),e.drawSectionCuts===!0&&this.sectionCuts.render(),e.drawOverlays===!0&&this.overlays.render(),e.drawMarkups===!0&&(this.markups.render(e.drawMarkupsOpaque),this.localCoordSystemManager.render()),e.drawHelperScene===!0&&this.highlightObjectEdges.render(),e.drawCustomScene===!0&&this.renderer.render(this.customScene,this.camera),e.drawHighlight===!0&&this.highlight.render(this),e.drawFingerPrint===!0&&this.fingerprintCursor.render(this),e.drawControlsScene===!0&&this.renderer.render(this.controlsScene,this.camera),this.renderer.autoClear=!0},isMultiselectActive:function(){return this.multiSelect},getDeselectedObjectId:function(){var e=this.deselectedObject;return e&&!this.checkSelectionMode("hidden")?e.id:null},moveDivisionBoundingBox:function(e,t,n,i){var s;(s=this.content)===null||s===void 0||s.getDivisions().moveDivisionBoundingBox(this,e,t,n,i)},resetDivisionBoundingBox:function(e){var t;(t=this.content)===null||t===void 0||t.getDivisions().resetDivisionBoundingBox(this,e)},resetSceneBoundingBox:function(){var e=this.getContentBoundingBox();e&&e.reset()},showDivisionBoundingBox:function(e){var t;(t=this.content)===null||t===void 0||t.getDivisions().showDivisionBoundingBox(this,e)},hideDivisionBoundingBox:function(e){var t;(t=this.content)===null||t===void 0||t.getDivisions().hideDivisionBoundingBox(this,e)},setDivisionVisible:function(e,t){var n;(n=this.content)===null||n===void 0||n.getDivisions().setDivisionVisible(e,t)},isRelativeModelDistancesTooLarge:function(e){return!!this.content&&this.content.getDivisions().isRelativeModelDistancesTooLarge(e)},getClashElementRevision:function(e){if(this.content){var t=this.content.getClashes().getClashElement(e);return t?t.getRevision():void 0}},toggleClashHoverBox:function(e,t){if(this.content){var n=this.content.getClashes().getClashObjectForClashElementId(e);n&&n.setHovered(t)}},setupClashIssueScene:function(){var e=this.objectSets.workingObjects.slice();this.resetSelectionMode(),this.addObjectsToWorkingSet(e),this.setSelectionMode("isolated"),this.draw()},resetClashScene:function(){var e;(e=this.content)===null||e===void 0||e.getClashes().resetClashScene(this),this.draw()},setupClashScene:function(e){var t=this.content.getClashes(),n=t.getClashObjectForClashElementId(e[0]);n&&t.setupClashScene(n,this)},calcObjectsBoundingbox:function(e){var t,n=new si,i=__(e);try{for(i.s();!(t=i.n()).done;){var s=t.value,c=this.getObject(s);if(c){var u=c.getBoundingBox(this.getObjectsContainer());u&&(n.expandByPoint(u.min),n.expandByPoint(u.max))}}}catch(m){i.e(m)}finally{i.f()}return n},resetRevisonComparisonScene:function(e,t){var n;e&&(n=this.objectSets.workingObjects.slice()),this.resetSelectionMode(),e&&(t&&(n=n.filter(function(i){return Object.hasOwn(i,"visibleRevisionComparison")===!1})),this.addObjectsToWorkingSet(n),this.setSelectionMode("isolated"))},centerBoundingBox:(XG=ee(ge().mark(function e(t){var n;return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return n=t.getBoundingSphere(new al),i.next=4,L0.centerBoundingSphere(this.camera,this.controls,this,n,L0.NO_CAMERA_FLIGHT,1.2);case 4:this.setRotationCenter(n.center);case 5:case"end":return i.stop()}},e,this)})),function(e){return XG.apply(this,arguments)}),centerOverlay:(YG=ee(ge().mark(function e(t){var n;return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return(n=new si).setFromObject(t),i.next=4,this.centerBoundingBox(n);case 4:case"end":return i.stop()}},e,this)})),function(e){return YG.apply(this,arguments)}),centerOverlayById:(VG=ee(ge().mark(function e(t){var n,i;return ge().wrap(function(s){for(;;)switch(s.prev=s.next){case 0:return s.next=2,this.overlayManager.loadOverlay(t);case 2:return n=s.sent,(i=new si).setFromObject(n),s.next=7,this.centerBoundingBox(i);case 7:case"end":return s.stop()}},e,this)})),function(e){return VG.apply(this,arguments)}),centerObjects:(GG=ee(ge().mark(function e(t){var n,i,s=this;return ge().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:return n=[],this.getObjectsContainer()&&t.forEach(function(u){return n=n.concat(s.getObjectsContainer().getObjectTreeIds(u))}),i=this.calcObjectsBoundingbox(n),c.abrupt("return",this.centerBoundingBox(i));case 5:case"end":return c.stop()}},e,this)})),function(e){return GG.apply(this,arguments)}),clipObjects:function(){var e=arguments.length>0&&arguments[0]!==void 0&&arguments[0],t=this.objectSets.selectedObjects.length>0&&!e?this.objectSets.selectedObjects.map(function(i){return i.id}):this.objectSets.workingObjects.map(function(i){return i.id}),n=this.calcObjectsBoundingbox(t);n.expandByScalar(1e3/this.normFactor),this.clippingPlanes.setSectionBox(n)},isolateObjects:function(e){var t=this.checkSelectionMode("isolated");t&&this.resetIsolationMode(),this.objectSets.workingObjects=[];var n=this.getObjectsContainer().getObjects(e);this.addObjectsToWorkingSet(n),t?this.setIsolationMode():this.setSelectionMode("isolated"),this.draw()},addObjectsToWorkingSet:function(e){new OL(this,this.objectSets.workingObjects,"working").Execute(e)},removeObjectsFromWorkingSet:function(e){new OL(this,this.objectSets.workingObjects,"working").Execute(e,{inverse:!0})},addObjectsToSelectedSet:function(e){new Ey(this,this.objectSets.selectedObjects).Execute(e)},addObjectsToHiddenSet:function(e){new B5(this,this.objectSets.hiddenObjects).Execute(e)},addObjectsToColoredSet:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;new hD(this,this.objectSets.coloredObjects,t).Execute(e,{noBubble:!0,colors:t,alpha:n}),this.triggerObjectSetChangedEvent("coloredObjects")},disposeIsolatedSet:function(){new pD(this).Execute(this.objectSets.workingObjects,{inverse:!0})},makeIsolatedSet:function(){new pD(this).Execute(this.objectSets.workingObjects)},restoreSelectedObjects:function(){new Ey(this).Execute(this.objectSets.selectedObjects,{noBubble:!0})},hideIsolateObjects:function(){this.isolateSelectedObjects&&this.objectSets.selectedObjects.length>0&&this.addSelectedObjectsToWorkingObjects(),new AL(this).Execute(this.objectSets.workingObjects,{noBubble:!0}),this.draw()},resetHideIsolateObjects:function(){this.restoreSelectedObjects(),new AL(this).Execute(this.objectSets.workingObjects,{noBubble:!0,inverse:!0}),this.draw()},hideObjects:function(e){var t=this.getObjectsContainer().getObjects(e);new B5(this,this.objectSets.hiddenObjects).Execute(t),this.draw()},getSelected3DObjectId:function(){var e=this.objectUnderMouse,t=this.rootObjectUnderMouse;if(e&&!this.checkSelectionMode("hidden"))return e.relatedObjects?e.id.substr(0,36):t?t.id:e.id},getAllSelected3DObjectIds:function(){var e=new Set;this.objectSets.selectedObjects.forEach(function(n){var i;i=n.relatedObjects?n.id.substr(0,36):n.parent||n.id,e.add(i)});var t=[];return e.forEach(function(n){return t.push(n)}),t},getAllSelected3DObjectIdsNodesRevisions:function(){var e=new Set;this.objectSets.selectedObjects.forEach(function(n){var i=n.id,s="",c=1;n.node&&(s=n.node),n.revision&&(c=n.revision);var u={id:i,node:s,revision:c},m=JSON.stringify(u);e.add(m)});var t=[];return e.forEach(function(n){var i=JSON.parse(n);t.push(i)}),t},getObjectRevision:function(e){if(e){var t=this.getObject(e);return t?t.revision:""}return""},pickGPU:function(){return this.gpuPicker.pick(),this},renderGPUPickTextureNeeded:function(){this.newGPUPickTextureNeeded=!0},doRenderGPUPickTexture:function(){this.newGPUPickTextureNeeded&&(this.newGPUPickTextureNeeded=!1,this.gpuPicker.render())},highlightNodeChildren:function(e,t){if(this.getGeometryNodes().getNode(e)===!1)return!1;var n=this.getObjectsContainer().getNodeObjectIds(e);return this.highlightObjects(n,t),!0},highlightObject:function(e,t,n){this.setObjectUnderMouse(this.getObject(e)),this.objectUnderMouse&&!this.objectUnderMouse.parent&&this.objectUnderMouse.discipline===o1.ClashLayer&&this.setObjectUnderMouse(this.content.getClashes().getClashElement(e)),this.objectUnderMouse||this.setObjectUnderMouse(this.content.getClashes().getClashElement(e)),this.handleObjectSelection(null,t,n),this.draw()},highlightObjects:function(e,t,n){t||(this.resetObjectUnderMouse(),this.handleObjectSelection(null,!1,n));var i,s=__(e);try{for(s.s();!(i=s.n()).done;){var c=i.value;this.setObjectUnderMouse(this.getObject(c)),this.handleObjectSelection(null,t,n)}}catch(u){s.e(u)}finally{s.f()}this.draw()},disposePins:function(e){this.pins.disposePins(e)},resetObjectUnderMouse:function(){this.objectUnderMouse=null,this.rootObjectUnderMouse=null},setBlockObjectSelection:function(e){this.blockObjectSelection=e},disposePinObject:function(e){this.pins.disposePinObject(e)},objectLoop:function(e,t){this.getObjectsContainer().objectLoop(e,t)},hideObject:function(e){return e.visible=!1,e.hide(this)},showObject:function(e){return e.visible=!0,e.show(this)},selectObject:function(e){var t=this.activeObjColor,n=[t.r,t.g,t.b];e.selected=!0,e.paint(this,n)},deselectObject:function(e){delete e.selected,e.paint(this)},_hoverEffectTurnedOn:function(e){this.useHoverEffect&&e&&new jW(this).Execute([e],{noBubble:!1})},_hoverEffectTurnedOff:function(e){this.useHoverEffect&&e&&(new jW(this).Execute([e],{inverse:!0,noBubble:!1}),e!=null&&e.selected&&new Ey(this).Execute([e],{noBubble:!1}))},_resetHoverEffect:function(){this.objectUnderMouseChanged=!1,this._hoverEffectTurnedOff(this.objectUnderMouse),this._hoverEffectTurnedOff(this.lastObjectUnderMouse),this.objectUnderMouse=null,this.lastObjectUnderMouse=null,this.draw()},_setHoverEffect:function(){this.objectUnderMouseChanged&&(this.objectUnderMouseChanged=!1,this._hoverEffectTurnedOff(this.lastObjectUnderMouse),this._hoverEffectTurnedOn(this.objectUnderMouse),this.lastObjectUnderMouse=null,this.draw())},_applyHoverEffect:function(){this.controls.supportsGPUPicking()&&this.pickGPU(),this.objectUnderMouse||this.setObjectUnderMouse(this.sectionCuts.getVisualObjectForMesh()),this.objectUnderMouse||this.setObjectUnderMouse(this.overlays.getVisualObjectForMesh()),this._setHoverEffect()},handleObjectSelection:function(e,t,n){var i=this.objectUnderMouse,s=t!==void 0?t:e&&(e.ctrlKey||e.isLongPress);this.deselectedObject=null;var c,u=this.checkSelectionMode("hidden");if(i&&i.isClashElement===!0){var m,v=i.getClashObject();return(m=this.content)===null||m===void 0||m.getClashes().setSelectedClash(v,this),void this.resetSelectedObjects()}if((c=this.content)===null||c===void 0||(c=c.getClashes())===null||c===void 0||c.resetSelectedClash(this),this.connectionElement._handleSelection(i),i&&s&&!u){var M=new Ey(this,this.objectSets.selectedObjects);return M.Execute([i],{multiSelect:s,noBubble:n}),void(M.deselectedObjects.length>0&&(i=null,this._resetHoverEffect(),this.deselectedObject=this.rootObjectUnderMouse,this.resetObjectUnderMouse()))}if(s||u||this.resetSelectedObjects(),this._resetHoverEffect(),this.objectUnderMouse=i,i){if(u){var w;if(this.showHiddenObjectsTransparent){var P=this.objectSets.hiddenObjects.find(function(pe){return pe.id===i.id});new B5(this,this.objectSets.hiddenObjects).Execute([i],{noBubble:!1,inverse:P})}else new B5(this,this.objectSets.hiddenObjects).Execute([i],{noBubble:!1});var q=new CustomEvent("onHidingObject",{bubbles:!0,cancelable:!0}),Z=(w=document)===null||w===void 0?void 0:w.getElementById("mainViewportContainer");Z&&Z.dispatchEvent(q)}else{var K=new Ey(this,this.objectSets.selectedObjects),he=this.getCommandPolicy(K,"noBubble"),le=this.getCommandPolicy(K,"noTraverse");K.Execute([i],{noBubble:n||he!==void 0,noTraverse:le})}i.relatedObjects&&this.objectSets.selectedObjects.length-1!==i.relatedObjects.length&&$(this.domElement).trigger("missingRelatedObjects")}},startInteractor:function(e,t){this.currentInteractor!==null&&(this.currentInteractor.selectionMode.length?this.unsetSelectionMode(this.currentInteractor.selectionMode):this.currentInteractor.cancel()),t.selectionMode=e,this.currentInteractor=t,this.currentInteractor.start()},subscribeToSelectionModeChanges:function(e){e instanceof Function&&(this.selectionModeChangeHandler=e)},subscribeToLCSDefinedChanges:function(e){e instanceof Function&&(this.localCoordSystemDefinedChangeHandler=e)},subscribeToOverlayPointSelectionModelViewFinished:function(e){e instanceof Function&&(this.overlayPointSelectionModelViewFinishedHandler=e)},subscribeToOverlayPointSelectionFileViewFinished:function(e){e instanceof Function&&(this.overlayPointSelectionFileViewFinishedHandler=e)},subscribeToConnectionElementSelected:function(e){e instanceof Function&&(this._connectionElementSelectedHandler=e)},setSelectionMode:function(e){if(this.checkSelectionMode(e))return this.unsetSelectionMode(e),this;e==="clipIsolated"?(this.unsetSelectionMode("isolated"),this.unsetSelectionMode("hideIsolated"),this.unsetSelectionMode("section"),this.clipObjects()):e==="hideIsolated"?(this.unsetSelectionMode("isolated"),this.unsetSelectionMode("clipIsolated"),this.unsetSelectionMode("section"),this.hideIsolateObjects()):e==="isolated"?(this.unsetSelectionMode("hideIsolated"),this.unsetSelectionMode("clipIsolated"),this.unsetSelectionMode("hidden"),this.unsetSelectionMode("selectSectionPlane")):e==="hidden"?(this.unsetSelectionMode("hideIsolated"),this.unsetSelectionMode("isolated"),this._unsetSelectionModesMarkups("")):e==="addPin"?this.unsetSelectionMode("hidden"):e==="section"?(this.unsetSelectionMode("hideIsolated"),this.unsetSelectionMode("clipIsolated"),this.clippingPlanes.restoreClippingPlanes(),this.clippingPlanes.setEnabled(!0),this.fillRenderQueue()):e==="measurePerpendicular"?(this._unsetSelectionModesMarkups("measurePerpendicular"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new xte(this))):e==="measureFree"?(this._unsetSelectionModesMarkups("measureFree"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new Fte(this))):e==="measureAngle"?(this._unsetSelectionModesMarkups("measureAngle"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new Ute(this))):e==="measureLocalPoint"?(this._unsetSelectionModesMarkups("measureLocalPoint"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new Qte(this))):e==="measureCalibratedPoint"?(this._unsetSelectionModesMarkups("measureCalibratedPoint"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new Kte(this))):e==="measureEdge"?(this._unsetSelectionModesMarkups("measureEdge"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new ene(this))):e==="measureAutoEdges"?(this._unsetSelectionModesMarkups("measureAutoEdges"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new ine(this))):e==="laserMeasurement"?(this._unsetSelectionModesMarkups("laserMeasurement"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new rne(this))):e==="localCoordSystemCreation"?(this._unsetSelectionModesMarkups("localCoordSystemCreation"),this.unsetSelectionMode("hidden"),this.localCoordSystemManager.hasLCS()||(this.localCoordSystemDefinedChangeHandler(!0),this.startInteractor(e,new lne(this)))):e==="localCoordSystemDefined"?(this._unsetSelectionModesMarkups("localCoordSystemDefined"),this.unsetSelectionMode("hidden"),this.localCoordSystemManager.reset(),this.localCoordSystemDefinedChangeHandler(!1),e="markupTurnedOff",this.startInteractor(e,new uW(this))):e==="objectProps"?(this._unsetSelectionModesMarkups("objectProps"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new pne(this))):e==="markupTurnedOff"?(this._unsetSelectionModesMarkups("markupTurnedOff"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new uW(this))):e==="annotation"?(this._unsetSelectionModesMarkups("annotation"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new bne(this))):e==="moveModel"?this.startInteractor(e,new gne(this)):e==="selectSectionPlane"?(this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&(console.debug("multiPlanes in use. Don't remove current planes"),this.clippingPlanes.restoreClippingPlanes(),this.clippingPlanes.setEnabled(!0)),this.emptySectionCutSceneForSectionCutGeometry(),this.startInteractor(e,new yne(this)),this.clippingPlanes.addNewPlaneIsOn=!0):e==="selectPointsForOverlay"&&this.startInteractor(e,new k7(this));var t=this.selectionMode.slice();return e?(t.push(e),this.selectionMode=t,this.selectionModeChangeHandler&&this.selectionModeChangeHandler(t),e==="isolated"&&this.setIsolationMode()):(this.unsetSelectionMode("isolated"),this.unsetSelectionMode("hidden"),this.unsetSelectionMode("hideIsolated")),this.renderGPUPickTextureNeeded(),this.draw(),this},unsetSelectionMode:function(e){var t=this.selectionMode.indexOf(e),n=this.selectionMode.slice();if(t===-1||!e)return this;if(n.splice(t,1),this.selectionMode=n,this.selectionModeChangeHandler&&this.selectionModeChangeHandler(n),e==="isolated"){this.resetIsolationMode();var i=this.objectSets.selectedObjects.map(function(s){return s});i.length>0&&(this.resetSelectedObjects(),new Ey(this,this.objectSets.selectedObjects).Execute(i,{noBubble:!0}))}return e==="hideIsolated"&&this.resetHideIsolateObjects(),e==="clipIsolated"&&this.clippingPlanes.reset(),e!=="section"&&e!=="selectSectionPlane"||(this.clippingPlanes.storeClippingPlanes(),this.clippingPlanes.setEnabled(!1),this.clippingPlanes.hideAdditionalClippingPlanes(),this.emptySectionCutSceneForSectionCutGeometry(),this.setSectionAxis(),this.renderQueue.setInteractionMode(!1),this.fillRenderQueue(),this.renderGPUPickTextureNeeded()),e!=="measurePerpendicular"&&e!=="measureFree"&&e!=="measureAngle"&&e!=="measureLocalPoint"&&e!=="measureCalibratedPoint"&&e!=="measureEdge"&&e!=="measureAutoEdges"&&e!=="laserMeasurement"&&e!=="localCoordSystemCreation"&&e!=="localCoordSystemDefined"&&e!=="objectProps"&&e!=="markupTurnedOff"&&e!=="annotation"&&e!=="moveModel"&&e!=="selectSectionPlane"&&e!=="selectPointsForOverlay"||this.currentInteractor!==null&&(this.currentInteractor.cancel(),this.currentInteractor=null),e!=="hidden"&&(this.renderGPUPickTextureNeeded(),this.draw()),this},resetSelectedObjects:function(e){var t=new Ey(this,this.objectSets.selectedObjects,e),n=this.getCommandPolicy(t,"noTraverse");t.Execute(this.objectSets.selectedObjects,{inverse:!0,noBubble:!0,noTraverse:n})},resetHiddenObjects:function(e){new B5(this,this.objectSets.hiddenObjects,e).Execute(this.objectSets.hiddenObjects,{inverse:!0,noBubble:!0}),this.renderGPUPickTextureNeeded(),this.draw()},resetWorkingObjects:function(e){if(e){var t=this.checkSelectionMode("isolated");t&&this.resetIsolationMode(),new OL(this,this.objectSets.workingObjects,"working",e).Execute(this.objectSets.workingObjects,{inverse:!0,noBubble:!0}),t&&this.setIsolationMode()}else this.makeColoredSet([]);this.triggerObjectSetChangedEvent("workingObjects")},resetColoredObjects:function(e){new hD(this,this.objectSets.coloredObjects,e).Execute(this.objectSets.coloredObjects,{inverse:!0,noBubble:!0}),this.triggerObjectSetChangedEvent("coloredObjects")},resetAllObjectSets:function(e){this.resetSelectedObjects(e),this.resetHiddenObjects(e),this.resetWorkingObjects(e),this.resetColoredObjects(e)},moveSelectedObjectsToWorkingObjects:function(){var e=new Ey(this,this.objectSets.selectedObjects);e.Execute(this.objectSets.selectedObjects,{inverse:!0,noBubble:!0}),this.objectSets.workingObjects=e.deselectedObjects},addSelectedObjectsToWorkingObjects:function(){this.objectSets.workingObjects=[],this.addObjectsToWorkingSet(this.objectSets.selectedObjects)},setIsolationMode:function(){this.isolateSelectedObjects&&this.objectSets.selectedObjects.length>0&&this.addSelectedObjectsToWorkingObjects(),new pD(this,this.objectSets.workingObjects).Execute(this.objectSets.workingObjects,{noBubble:!0}),this.renderGPUPickTextureNeeded()},resetIsolationMode:function(){new pD(this).Execute(this.objectSets.workingObjects,{inverse:!0}),this.renderGPUPickTextureNeeded()},adaptMakeColoredSetParams:function(e){var t=this;if(!(e.length>0&&e[0]instanceof _T)){var n=[],i={};return e.forEach(function(s){var c=t.getObject(s.id);!c&&Object.hasOwn(s,"elementId")&&(c=t.getObject(s.elementId)),c&&(n.push(c),s.color&&(i[c.id]=s.color))}),{objects:n,colors:i}}},makeColoredSet:function(e){var t=this.checkSelectionMode("isolated"),n=this.checkSelectionMode("hideIsolated"),i=this.checkSelectionMode("clipIsolated");new hD(this).Execute(this.objectSets.workingObjects,{noBubble:!0,inverse:!0}),this.triggerObjectSetChangedEvent("workingObjects"),t&&this.resetIsolationMode(),n&&this.resetHideIsolateObjects(),this.removeObjectsFromWorkingSet(this.objectSets.workingObjects),this.objectSets.workingObjects=[];var s=new hD(this,this.objectSets.workingObjects),c=this.adaptMakeColoredSetParams(e);c?s.Execute(c.objects,{noBubble:!0,colors:c.colors}):s.Execute(e,{noBubble:!0}),this.triggerObjectSetChangedEvent("workingObjects"),t&&this.setIsolationMode(),n&&this.hideIsolateObjects(),i&&this.clipObjects(!0),this.objectSets.selectedObjects.length>0&&(new Ey(this).Execute(this.objectSets.selectedObjects),this.triggerObjectSetChangedEvent("selectedObjects")),this.draw()},resetSelectionMode:function(){var e,t;return this.resetObjectUnderMouse(),this.unsetSelectionMode("isolated"),this.unsetSelectionMode("clipIsolated"),this.unsetSelectionMode("hideIsolated"),this.unsetSelectionMode("hidden"),this.unsetSelectionMode("section"),this._unsetSelectionModesMarkups(""),this.unsetSelectionMode("moveModel"),this.unsetSelectionMode("selectSectionPlane"),this.resetAllObjectSets(),this.setSelectionMode(),(e=this.content)===null||e===void 0||e.getClashes().resetSelectedClash(this),(t=this.content)===null||t===void 0||t.getClashes().resetClashScene(this),this},checkSelectionMode:function(e,t){var n=!1;return e?(n=this.selectionMode.indexOf(e)!==-1,t&&(n&=this.selectionMode.length===1)):n=!!this.selectionMode.length,n},isMarkupMode:function(){return this.isMarkupModeTurnedOff()||this.isMeasureMode()||this.isLabelMode()||this.isAnnotationMode()},isMarkupModeTurnedOff:function(){return this.checkSelectionMode("markupTurnedOff")},isMeasureMode:function(){return this.checkSelectionMode("measurePerpendicular")||this.checkSelectionMode("measureFree")||this.checkSelectionMode("measureAngle")||this.checkSelectionMode("measureLocalPoint")||this.checkSelectionMode("measureCalibratedPoint")||this.checkSelectionMode("measureEdge")||this.checkSelectionMode("measureAutoEdges")||this.checkSelectionMode("laserMeasurement")||this.checkSelectionMode("localCoordSystemCreation")||this.checkSelectionMode("localCoordSystemDefined")},isLabelMode:function(){return this.checkSelectionMode("objectProps")},isAnnotationMode:function(){return this.checkSelectionMode("annotation")},isOverlayPointInputMode:function(){return this.checkSelectionMode("selectPointsForOverlay")},isSelectSectionPlane:function(){return this.checkSelectionMode("selectSectionPlane")},isFingerprintInputMode:function(){return this.isMarkupMode()||this.isOverlayPointInputMode()||this.isSelectSectionPlane()},_unsetSelectionModesMarkups:function(e){e!=="measurePerpendicular"&&this.unsetSelectionMode("measurePerpendicular"),e!=="measureFree"&&this.unsetSelectionMode("measureFree"),e!=="measureAngle"&&this.unsetSelectionMode("measureAngle"),e!=="measureLocalPoint"&&this.unsetSelectionMode("measureLocalPoint"),e!=="measureCalibratedPoint"&&this.unsetSelectionMode("measureCalibratedPoint"),e!=="measureEdge"&&this.unsetSelectionMode("measureEdge"),e!=="measureAutoEdges"&&this.unsetSelectionMode("measureAutoEdges"),e!=="lasermeasurement"&&this.unsetSelectionMode("laserMeasurement"),e!=="localCoordSystemCreation"&&this.unsetSelectionMode("localCoordSystemCreation"),e!=="localCoordSystemDefined"&&this.unsetSelectionMode("localCoordSystemDefined"),e!=="annotation"&&this.unsetSelectionMode("annotation"),e!=="objectProps"&&this.unsetSelectionMode("objectProps"),e!=="markupTurnedOff"&&this.unsetSelectionMode("markupTurnedOff")},hasLabels:function(){return this.markups.has("labels")},hasAnnotations:function(){return this.markups.has("annotations")},hasMeasurements:function(){return this.markups.has("dimensions")},resetLabels:function(){this.markups.removeAll("labels")},resetAnnotations:function(){this.markups.removeAll("annotations")},resetMeasurements:function(){this.markups.removeAll("dimensions")},getRotationCenter:function(){return this.rotationCenter},setRotationCenter:function(e){var t;this.rotationCenter=e?e.clone():(t=this.visibleGeometryBoundingSphere)===null||t===void 0?void 0:t.center.clone()},setCameraResetAxis:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:L0.CAMERA_FLIGHT;return console.debug("setCameraResetAxis axis= ".concat(e," fly=").concat(t)),this.resetCameraAxis=e,this.resetCamera(t)},setSectionAxis:function(e){var t=this.getContentBoundingBox();t!=null&&t.isValid()&&(this.camera.updateProjectionMatrix(),this.camera.updateMatrixWorld(),e&&(this.camera.position.x===t.getCenterX()&&(this.camera.position.x-=319.1),this.camera.position.y===t.getCenterY()&&(this.camera.position.y+=319.1),this.unsetSelectionMode("section"),this.unsetSelectionMode("selectSectionPlane"),e==="Free"?this.setSelectionMode("selectSectionPlane"):(this.setSelectionMode("section"),this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()?this.clippingPlanes.addSectionAxis(e):this.clippingPlanes.setSectionAxis(e),this.clippingPlanes.addNewPlaneIsOn=!1),this.clippingPlanes.onUpdateSectionParams(),this.clippingPlanes.storeClippingPlanes(),L0.updatePerspectiveCamera(this.camera,!0),this.draw()))},setViewportSize:function(e,t){var n=$(this.domElement),i=e||Math.floor(n.innerWidth()),s=t||Math.floor(n.innerHeight());i!==0&&s!==0&&(this.gpuPicker.resize(i,s),this.defaultPassChain.resizeViewport(i,s),this.ssaoSupported&&this.ssaoPassChain&&this.ssaoPassChain.resizeViewport(i,s),this.camera.aspect=i/s,this.camera.updateProjectionMatrix(),this.orthoCamera.left=-i/2,this.orthoCamera.right=i/2,this.orthoCamera.top=s/2,this.orthoCamera.bottom=-s/2,this.orthoCamera.updateProjectionMatrix(),this.camera.type==="orthographic"&&L0.resizeOrthographicFrustum(this.camera,i,s),this.renderer&&this.renderer.setSize(i,s,!0),this.renderGPUPickTextureNeeded(),this.draw())},resetViewport:function(){var e,t;console.debug("Viewport3d::resetViewport - name = '".concat(this.name,"'")),window.BimPlus.AnimationPending=0,this.resetAllObjectSets(),this.disposeObjects(this.pins.pinsObjects3D),this.objectSets.selectedObjects=[],this.disposeObjects(this.root),this.templateObjects={},this.templates=[],this.renderQueue.dispose(),(e=this.content)===null||e===void 0||e.getDivisions().hideDivisionBoundingBox(this),(t=this.content)===null||t===void 0||t.getDivisions().reset(),this.normFactor=1,this.sectionCuts.dispose(),this.overlays.clear(),this.disciplineNodeMeshScene.clearMeshes(),this.nodeMeshes.dispose(),this.content&&this.content.dispose(),this.transformControls&&this.transformControls.detach(),this.draw()},getScenePars:function(){var e,t=this.camera.fov?this.camera.fov:1,n=$(this.domElement),i=n.width()/n.height();this.calculateVisibleGeometryBoundaries();var s=new Ee,c=new Ee;return s=this.visibleGeometryBoundingBox.getSize(s),c=this.visibleGeometryBoundingBox.getCenter(c),e=Math.sqrt(s.x*s.x+s.y*s.y)/(i*Math.tan(t*Math.PI/360))/2,isFinite(e)||(e=0),{camera:{fov:this.camera.fov,far:this.camera.far,near:this.camera.near,position:{x:c.x,y:c.y,z:e+c.z+s.z/2}},controls:{target:{x:c.x,y:c.y,z:c.z}}}},restoreViewbox:(jG=ee(ge().mark(function e(){var t;return ge().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return t=this.visibleGeometryBoundingBox.getBoundingSphere(new al),n.next=3,L0.centerBoundingSphere(this.camera,this.controls,this,t,L0.CAMERA_FLIGHT);case 3:case"end":return n.stop()}},e,this)})),function(){return jG.apply(this,arguments)}),resetCamera:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:L0.NO_CAMERA_FLIGHT;return this.camera.zoom=1,L0.resetCamera(this.camera,this.controls,this,e)},setSlideScene:function(e,t,n){return this.slides.setSlideScene(e,t,n)},doubleClick:function(e){e.preventDefault()},contextMenu:function(e){e.preventDefault()},controlsUpdated:function(e){e.data.self.draw()},setTargetToObject:function(e,t){L0.setCameraTargetToObject(this.camera,this.controls,this,e,t)},calculateBoundingBox:function(e){return this.getObject(e).getBoundingBox(this.getObjectsContainer())},setPointMatchingCamera:function(){var e=this;if(!e.isCameraFlightInProgress()){e.toggleCameraType(e),e.controls.isPointMatching=!0,e.copyCameraAttributes(e.cameraBeforePointMatching,e.camera),e.cameraBeforePointMatching.target=e.controls.target.clone(),e.camera.zoom=1;var t=e.clippingPlanes.getActiveClippingPlane(),n=e.clippingPlanes.getActiveClippingPlaneMaterial(),i=new Ci;n.getWorldQuaternion(i);var s=new Ee;s.copy(t.normal),s.normalize();var c=e.dynamicDrawRange._geoBoundingSphere.radius,u=e.controls.getLastDragRotationCenter();u||(u=e.rotationCenter);var m=new qi;m.makeRotationFromQuaternion(i);var v=new Ee,M=new Ee,w=new Ee;m.extractBasis(v,M,w);var P=u.clone(),q=P.clone().add(s.clone().multiplyScalar(c));return L0.alignCameraOrhographic(e.camera,e.controls,e,q,P,M,c,L0.CAMERA_FLIGHT)}},unsetPointMatchingCamera:function(){var e=this;if(!e.isCameraFlightInProgress()){e.toggleCameraType(e),e.controls.isPointMatching=!1,e.camera.zoom=1;var t=e.camera,n=e.controls,i=e.cameraBeforePointMatching.position.clone(),s=e.cameraBeforePointMatching.target.clone(),c=e.cameraBeforePointMatching.up,u=e.cameraBeforePointMatching.quaternion.clone();L0.cameraFlyTo(t,n,e,i,s,c,u)}},copyCameraAttributes:function(e,t){e.name=t.name,e.up.copy(t.up),e.position.copy(t.position),e.rotation.copy(t.rotation),e.aspect=t.aspect,e.fov=t.fov,e.quaternion.copy(t.quaternion)},toggleProjectionMode:function(e){e.toggleCameraType(e),e.controls.reset();var t=e.visibleGeometryBoundingBox.getBoundingSphere(new al);L0.centerBoundingSphere(e.camera,e.controls,e,t,L0.CAMERA_FLIGHT)},toggleCameraType:function(e){e.camera.type==="perspective"?(e.perspectiveCamera=e.camera,e.camera=e.orthographicCamera,e.camera.type="orthographic",e.copyCameraAttributes(e.camera,e.perspectiveCamera),e.controls.updateOrthographicFrustum()):(e.orthographicCamera=e.camera,e.camera=e.perspectiveCamera,e.camera.type="perspective",e.copyCameraAttributes(e.camera,e.orthographicCamera)),e.transformControls&&(e.transformControls.camera=e.camera),e.controls.object=e.camera,e.renderGPUPickTextureNeeded(),e.draw()},isPerspectiveCamera:function(){var e;return(this==null||(e=this.camera)===null||e===void 0?void 0:e.type)==="perspective"},isOrthographicCamera:function(){var e;return(this==null||(e=this.camera)===null||e===void 0?void 0:e.type)==="orthographic"},mouseDown:function(e){var t,n=e.data.self;if(!n.isCameraFlightInProgress()){var i=e.offset?e.offset:$(this).offset(),s=n.hasTouches(e,1),c=n.hasTouches(e,2),u=n.hasTouches(e,3);n.mouseDownEventOfRenderer=!0,n!=null&&(t=n.transformControls)!==null&&t!==void 0&&t.dragging?n.renderQueue.setInteractionMode(!0):(n.touchWithOneFinger=!0,(c||u)&&(n.touchWithOneFinger=!1),s&&n.presstimer===null&&(n.isLongPress=!1,n.presstimer=setTimeout(function(){n.isLongPress=!0},500)),n.mouseClick=!0,n.renderQueue.setInteractionMode(!0),e.button===0||s?(e.preventDefault(),n.mouseDownButton=0,s&&(n.mouse.x=e.originalEvent.touches[0].clientX-i.left,n.mouse.y=e.originalEvent.touches[0].clientY-i.top,n.isFingerprintInputMode()&&n.fingerprintCursor.isMouseOver(e)&&(n.singleTouchFingerprintOffset=-n.fingerprintCursor.FINGERPRINT_OFFSET,n.mouse.y+=n.singleTouchFingerprintOffset))):e.button===1?n.mouseDownButton=1:(e.button===2||c||u)&&(e.preventDefault(),n.mouseDownButton=2),n.isFrameSelectionEvent=n.isDevMode()&&gA.isValid(e))}},mouseMove:function(e){var t,n=e.data.self;if(!n.isCameraFlightInProgress()){var i=e.offset?e.offset:$(this).offset(),s=n.hasTouches(e,1),c=n.hasTouches(e,2),u=n.hasTouches(e,3),m=e.clientX-i.left===n.mouse.x&&e.clientY-i.top+n.singleTouchFingerprintOffset===n.mouse.y;if(!n.isCameraFlightInProgress()&&!(n!=null&&(t=n.transformControls)!==null&&t!==void 0&&t.dragging||(s&&(m=e.originalEvent.touches[0].clientX-i.left===n.mouse.x&&e.originalEvent.touches[0].clientY-i.top+n.singleTouchFingerprintOffset===n.mouse.y),n.cancelLongPress(),m)))if(s?(n.mouse.x=e.originalEvent.touches[0].clientX-i.left,n.mouse.y=e.originalEvent.touches[0].clientY-i.top+n.singleTouchFingerprintOffset):c?(n.mouse.x=(e.originalEvent.touches[0].clientX+e.originalEvent.touches[1].clientX)/2-i.left,n.mouse.y=(e.originalEvent.touches[0].clientY+e.originalEvent.touches[1].clientY)/2-i.top):u?(n.mouse.x=e.originalEvent.touches[1].clientX-i.left,n.mouse.y=e.originalEvent.touches[1].clientY-i.top):(n.mouse.x=e.clientX-i.left,n.mouse.y=e.clientY-i.top),n.controls.processMouseMove(e),n.fingerprintCursor.processMouseMove(e),s&&n.isFingerprintInputMode()&&n.fingerprintCursor.fingerprintHit){n._applyHoverEffect();var v,M=!0;n.isMarkupMode()&&n.markups.mouseMove(e)&&(M=!1),M&&((v=n.currentInteractor)===null||v===void 0||v.processMouseMove(e))}else{s&&(n.controls.isPinching()&&n.controls.finishPinch(),n.controls.isPaning()&&n.controls.finishPan(e)),c&&(n.controls.isPaning()&&n.controls.finishPan(e),n.controls.isPinching()||n.controls.startPinch(),n.controls.processPinch(e)),u&&n.controls.isPinching()&&n.controls.finishPinch(),n.controls.isDragging()&&n.controls.processDrag(e);var w=n.mouseDownButton===0||n.mouseDownButton===1||n.mouseDownButton===2;if(!n.isFrameSelectionEvent&&w||s&&!n.mouseClick||c||u){var P;n.mouseClick&&(n.controls.supportsGPUPicking()&&n.pickGPU(),n.objectUnderMouse||n.setObjectUnderMouse(n.sectionCuts.getVisualObjectForMesh()),n.objectUnderMouse||n.setObjectUnderMouse(n.overlays.getVisualObjectForMesh()),n.controls.canStartDrag()?(n.isMarkupMode()&&n!=null&&(P=n.currentInteractor)!==null&&P!==void 0&&P.preview&&n.currentInteractor.name!=="MarkupNoInputInteractor"&&n.currentInteractor.name!=="LocalCoordSystemInteractor"&&(Array.isArray(n.currentInteractor.preview)?n.currentInteractor.preview.forEach(function(Z){return Z.setLabelVisible(!1)}):n.currentInteractor.preview.setLabelVisible(!1)),n.controls.startDrag(n.mouseDownButton,e)):n.controls.isDragging()&&n.controls.finishDrag(e)),n.mouseClick=!1}else{var q;n.isFrameSelectionEvent||n._applyHoverEffect(),n.isMarkupMode()?n.markups.mouseMove(e)||(q=n.currentInteractor)===null||q===void 0||q.processMouseMove(e):(n.checkSelectionMode("moveModel")||n.checkSelectionMode("selectSectionPlane")||n.checkSelectionMode("selectPointsForOverlay"))&&n.currentInteractor.processMouseMove(e)}}}},mouseUp:function(e){var t=e.data.self;if(!t.isCameraFlightInProgress()&&t.mouseDownEventOfRenderer){if(t.mouseDownEventOfRenderer=!1,t.cancelLongPress(),e.isLongPress=t.isLongPress,t.renderQueue.setInteractionMode(!1),t.fillRenderQueue(),clearTimeout(t.clickTimer),t.clickTimer=setTimeout(function(){t.clickCount=0},t.doubleClickDelay),t.clickCount>0){var n=null,i=null;if(t.isMarkupMode()&&(i=t.markups.mouseUpDblClick(e)),i)t.centerObjects(i.getObjectIds());else if(n=t.objectUnderMouse,t.controls.supportsGPUPicking()&&t.pickGPU(),t.touchWithOneFinger===!0)if(t.objectUnderMouse&&!t.isTouchMode())t.centerObjects([t.objectUnderMouse.id]);else{var s=t.overlays.getVisualObjectForMesh();s!=null&&s.mesh&&t.centerOverlay(s.mesh)}return t.setObjectUnderMouse(n),t.mouseClick=!1,t.mouseDownButton=null,t.isFrameSelectionEvent=!1,t.controls.isDragging()&&t.controls.finishDrag(e),t.clickCount=0,void t.renderGPUPickTextureNeeded()}if(t.clickCount++,t.controls.isDragging()&&(t.controls.finishDrag(e),t.draw()),t.controls.isPinching()&&(t.controls.finishPinch(),t.draw()),t.controls.isPaning()&&(t.controls.finishPan(),t.draw()),t._resetHoverEffect(),t.mouseClick&&t.mouseDownButton===0){var c,u=(c=t.content)===null||c===void 0?void 0:c.getClashes();if(u&&u.getCurrentClashFilter()!==null){u.resetSelectedClash(t),u.resetClashScene(t);var m=t.getNDCVector(),v=t.projector.pickingRay(m,t.camera).ray,M=t.clashesRenderQueue.castRayToClashes(v,200);if(M)return t.setObjectUnderMouse(M),u.setSelectedClash(M.getClashObject(),t),t.resetSelectedObjects(),$(t.domElement).trigger("select3DObject"),t.mouseClick=!1,t.mouseDownButton=null,void t.draw()}t.controls.supportsGPUPicking()&&t.pickGPU(),t.objectUnderMouse||t.setObjectUnderMouse(t.overlays.getVisualObjectForMesh());var w=!1;t.isMarkupMode()&&(w=t.markups.mouseUp(e)),w||t.controls.processClick(e)}t.mouseClick=!1,t.mouseDownButton=null,t.singleTouchFingerprintOffset=0,t.isMarkupMode()&&(t.markups.mouseActionNeedsLabelUpdate(e),t.fingerprintCursor.mouseUp()),t.renderGPUPickTextureNeeded(),t.draw()}},_mouseWheelBrowserSpecificDelta:function(e){return e.originalEvent.wheelDelta?e.originalEvent.wheelDelta:e.originalEvent.detail?-e.originalEvent.detail:void 0},mouseWheel:function(e){var t=e.data.self;if(!t.isCameraFlightInProgress()){var n=t._mouseWheelBrowserSpecificDelta(e);t.renderQueue.setInteractionMode(!0),e.preventDefault(),e.stopPropagation(),t.controls.processMouseWheel(n,e),t.isMarkupMode()&&t.markups.mouseActionNeedsLabelUpdate(e),clearTimeout($.data(e.target,"tid")),$.data(e.target,"tid",setTimeout(function(){t.renderQueue.setInteractionMode(!1),t.renderGPUPickTextureNeeded(),t.fillRenderQueue(),t.draw()},250)),t.draw()}},mouseOut:function(e){var t=e.data.self;t._resetHoverEffect(),t.mouse.x=-1,t.mouse.y=-1,t.draw()},restoreZoom:function(){var e=this;return e.resetSelectionMode(),e.cameraBackup?(this.controls.target.set(e.cameraBackup.target.x,e.cameraBackup.target.y,e.cameraBackup.target.z),this.camera.position.set(e.cameraBackup.position.x,e.cameraBackup.position.y,e.cameraBackup.position.z),this.camera.quaternion.set(e.cameraBackup.quaternion[0],e.cameraBackup.quaternion[1],e.cameraBackup.quaternion[2],e.cameraBackup.quaternion[3]),this.camera.up.set(e.cameraBackup.up.x,e.cameraBackup.up.y,e.cameraBackup.up.z),L0.updatePerspectiveCamera(this.camera,!1),this.setViewportSize(),Promise.resolve()):e.resetCamera(L0.CAMERA_FLIGHT)},backupCameraView:function(){L0.backupCameraView(this,this.camera,this.controls)},zoomToObject:function(){var e=ee(ge().mark(function t(n){return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:L0.zoomToObject(this.camera,this.controls,this,n);case 1:case"end":return i.stop()}},t,this)}));return function(t){return e.apply(this,arguments)}}(),zoomToObjects:function(){var e=ee(ge().mark(function t(n){return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:L0.zoomToObjects(this.camera,this.controls,this,n);case 1:case"end":return i.stop()}},t,this)}));return function(t){return e.apply(this,arguments)}}(),isCameraFlightInProgress:function(){return this.cameraFlightInProgress},getRayIntersectedObjects:function(e){var t,n,i,s,c=this,u=this.getNDCVector(),m=this.objectUnderMouse,v=[],M=[],w=0;if(this.camera.updateProjectionMatrix(),this.camera.updateMatrixWorld(),n=this.projector.pickingRay(u,this.camera),e)M=n.intersectObjects(e.children,!0);else if(m){var P=this.getObjectsContainer().getObjectRoot(m);if(P.hasOwnGeometry())if(P.meshesData.length===0)v.push(P.getMesh(c,0));else{var q,Z=__(P.meshesData.entries());try{for(Z.s();!(q=Z.n()).done;){var K=de(q.value,1)[0];(t=P.getMesh(c,K))&&v.indexOf(t)===-1&&v.push(t)}}catch(le){Z.e(le)}finally{Z.f()}}else this.getObjectsContainer().traverseDown(P,function(le){var pe,Ie=__(le.meshesData.entries());try{for(Ie.s();!(pe=Ie.n()).done;){var Ce=de(pe.value,1)[0];(t=le.getMesh(c,Ce))&&v.indexOf(t)===-1&&v.push(t)}}catch(Ne){Ie.e(Ne)}finally{Ie.f()}});M=n.intersectObjects(v)}if(m=null,M.length){var he;for(this.checkSelectionMode("section")&&this.clippingPlanes.intersects(n,he)&&(w=he),i=0,s=M.length;i<s;i++)if(M[i].distance>w){m=M[i];break}}return m},getNDCVector:function(e,t){var n=new Ai,i=(n=this.renderer.getSize(n)).x/2,s=n.y/2,c=e||this.mouse.x,u=t||this.mouse.y;return new Ee(c/i-1,1-u/s,.5)},addLights:function(e,t){var n,i,s,c=t;for(n=0,i=c.length;n<i;n++)c[n].type==="ambient"?e.add(new Hz(c[n].color)):c[n].type==="directional"?((s=new JC(c[n].color,c[n].intensity)).position.copy(c[n].position),e.add(s)):c[n].type==="spot"?console.debug("[Renderer] addLights - no spot lights defined at the moment"):c[n].type==="point"?console.debug("[Renderer] addLights - no point lights defined at the moment"):c[n].type==="hemisphere"&&e.add(new H8(c[n].skyColorHex,c[n].groundColorHex,c[n].intensity||1))},toggleDisciplinesOpacity:function(e,t){var n,i,s,c=this.content.getDisciplines();for(n=0,s=c.length;n<s;n++)(i=c[n]).isCollisionLayer||i.isRevisionComparisonLayer||(i.visible||t)&&this.setDisciplineOpacity(i,e?i.opacity:null);return this},toggleClashDisciplineOpacity:function(e){var t,n,i,s=this.content.getDisciplines();for(t=0,i=s.length;t<i;t++)(n=s[t]).isCollisionLayer&&n.visible&&this.setDisciplineOpacity(n,e?n.opacity:null);return this},disposeObjects:function(e,t,n){if(e)for(var i;e.children.length;)i=e.children[0],t=t||i.node,n=n||i.discipline,i&&i.node===t&&i.discipline===n&&(i.geometry?i.geometry.dispose():i.children.length&&this.disposeObjects(i),e.remove(i),i=null)},traverseObjectNode:function(e,t){var n=this.getObjectsContainer().getObject(e.id);n&&this.getObjectsContainer().traverseDown(n,function(i){t(i)})},toggleObjectNode:function(e){var t=this,n=this.content.getClashes().getClashElement(e.id);n&&n.getClashObject().setVisible(e.visible),this.traverseObjectNode(e,function(i){e.visible?(i.visible=!0,i.show(t)):(i.visible=!1,i.hide(t))}),this.draw()},toggleObjectNodeOpacity:function(e){var t=this,n=this.content.getClashes().getClashElement(e.id);n&&n.getClashObject().setBackground(e.opacity<1),this.traverseObjectNode(e,function(i){return i.setBackground(t,e.opacity<1)}),this.draw()},displayCollisionElement:function(e,t){if(this.content){var n=this.content.getClashes().getClashObjectForClashElementId(e);n&&n.setVisible(t)}},displayRevisionCompareElement:function(e,t,n){var i=this.findSubsetIdsObjects(e);if(i.length>0){var s,c=__(i);try{for(c.s();!(s=c.n()).done;){var u=s.value;(!n||u.compareTo===n)&&(t?this.showObject(u):this.hideObject(u))}}catch(m){c.e(m)}finally{c.f()}}},findSubsetIdsObjects:function(e){return this.getObjectsContainer().findSubsetIdsObjects(e)},filterRevisionCompareElements:function(e,t,n){var i=this;if(e&&e.length>0){var s=this.checkSelectionMode("isolated");s&&this.disposeIsolatedSet(),e.forEach(function(c){var u,m=__(i.findSubsetIdsObjects(c));try{for(m.s();!(u=m.n()).done;){var v=u.value;v.compareTo&&(v.compareTo===n&&n!==0&&t.contains(v.discipline)?i.showObject(v):i.hideObject(v))}}catch(M){m.e(M)}finally{m.f()}}),s&&this.makeIsolatedSet()}},displayRevisionCompareOriginalElements:function(e,t){var n=this;if(e&&e.length>0){var i=this.checkSelectionMode("isolated");i&&this.disposeIsolatedSet(),e.forEach(function(s){var c=n.findSubsetIdsObjects(s);if(c.length>0){var u,m=__(c);try{for(m.s();!(u=m.n()).done;){var v=u.value;t?n.showObject(v):n.hideObject(v)}}catch(M){m.e(M)}finally{m.f()}}}),i&&this.makeIsolatedSet()}},setDisciplineOpacity:function(e,t){var n=this,i=this.getGeometryNodes().nodelist,s=e.id;t=t||this.disciplineOpacity,i.nodes.forEach(function(c){if(Object.hasOwn(i,c)&&i[c][s]&&i[c].divisionTopologyId===e.divisionTopologyId){var u=e.opaque?e.selectedUserOpacity:void 0;n.getGeometryNodes().setNodeDisciplineOpacity(c,s,t,u)}}),this.draw()},showPins:function(e,t){return e?(this.pins.showPins(e,t),this):this},hidePins:function(){return this.pins.hidePins(),this},getPinObject:function(){return this.deferred=$.Deferred(),this.setSelectionMode("addPin"),this.deferred},cancelAddPin:function(){this.checkSelectionMode("addPin")&&(this.deferred.reject(),this.unsetSelectionMode("addPin"))},getSlideThumbnail:function(){return this.slides.getSlideThumbnail()},getSlideThumbnailBlob:function(e,t){return this.slides.getSlideThumbnailBlob(e,t)},getSlideParams:function(){return this.slides.getSlideParams()},showRelatedObject:function(e){return this.pins.zoomToPin(e)},highlightPin:function(e){this.pins.highlightPin(e)},resetPinsMaterial:function(){this.pins.resetPinsMaterial()},refreshIsolatedSet:function(){this.checkSelectionMode("isolated")&&(this.disposeIsolatedSet(),this.makeIsolatedSet())},colorizeObjects:function(e,t){var n=this.getObjectsContainer().getObjects(e);this.addObjectsToColoredSet(n,t),this.draw()},hoverObject:function(e){this.lastObjectUnderMouse=this.objectUnderMouse,this.objectUnderMouseChanged=!0,this.objectUnderMouse=this.getObjectsContainer().getObject(e),this._setHoverEffect()},resetHoveredObject:function(){this._resetHoverEffect()},updateStats:function(){var e,t=this,n=$("#debug").data("st"),i=(e=window)!==null&&e!==void 0&&(e=e.performance)!==null&&e!==void 0&&e.memory?(window.performance.memory.jsHeapSizeLimit/1e9).toFixed(2)+" GB":"N/A";n&&(n.update(),$("div#debug > div#renderInfo").html("Shaders: "+t.renderer.info.memory.programs+"<br />Calls: "+t.renderer.info.render.calls+"<br />Triangles: "+(t.renderer.info.render.faces/1e6).toFixed(2)+" M<br />Meshes: "+t.root.children.length+"<br />Chrome JS heap: "+i+"<br />Chrome buffer: "+(t.maxWebGLBufferSize/1e9).toFixed(2)+" GB<br /><br />Objects<br />Total: "+t.getObjectsContainer().getObjectCount()))},isTouchMode:function(){return localStorage.getItem("inTouchMode")==="true"},cancelLongPress:function(){this.presstimer!==null&&(clearTimeout(this.presstimer),this.presstimer=null)},hasTouches:function(e,t){var n;return(e==null||(n=e.originalEvent)===null||n===void 0?void 0:n.touches)&&e.originalEvent.touches.length===t},disableDraw:function(e){this.drawDisabled=e,e===!0&&this.cancelDrawRequest()},getObject:function(e){return this.getObjectsContainer().getObject(e)},setLocalizationFnc:function(e){e instanceof Function&&(this.textLocalizationFnc=e)},modifyPreviewArrowPosition:function(e,t,n){var i;(i=this.currentInteractor)!==null&&i!==void 0&&i.modifyPreviewArrowPosition&&(this.currentInteractor.modifyPreviewArrowPosition(e,t,n),this.draw())},setMultiselect:function(e){this.forceMultiSelect=e},setSingleObjectSelection:function(e){this.forceSingleObjectSelection=e},escapeKeyPressed:function(){if(this.currentInteractor)return this.currentInteractor.name==="MeasurePerpendicularInteractor"||this.currentInteractor.name==="MeasureFreeInteractor"||this.currentInteractor.name==="MeasureAngleInteractor"||this.currentInteractor.name==="AnnotationInteractor"||this.currentInteractor.name==="LocalCoordSystemInteractor"||this.currentInteractor.name==="SelectPointsForOverlayInteractor"?(this.currentInteractor.cancel(),void this.currentInteractor.start()):void(this.currentInteractor.name==="SectionPlaneInteractor"&&(this.currentInteractor.cancel(),this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&!this.deleteActivePlanePossible()&&this.setSinglePlaneMode(),this.clippingPlanes.restoreClippingPlanes(),this.clippingPlanes.setEnabled(!0),this.clippingPlanes.addNewPlaneIsOn=!1,this.clippingPlanes.onUpdateSectionParams()))},getCommandPolicy:function(e,t){var n=e.GetCommandName();if(this.commandPolicies[n]!==void 0&&this.commandPolicies[n][t]!==void 0)return this.commandPolicies[n][t]},calculateDefaultBoundingBox:function(){this.visibleGeometryBoundingBox.set(new Ee(-1,-1,-1),new Ee(1,1,1)),this.visibleGeometryBoundingBox.getBoundingSphere(this.visibleGeometryBoundingSphere)},calculateVisibleGeometryBoundaries:function(){this.visibleGeometryBoundingBox.makeEmpty();var e=this.getGeometryNodes();return!!e&&(this.visibleGeometryBoundingBox=e.calculateVisibleGeometryBoundingBox(this.visibleGeometryBoundingBox),this.visibleGeometryBoundingBox.isEmpty()?(this.calculateDefaultBoundingBox(),!1):(this.visibleGeometryBoundingBox.getBoundingSphere(this.visibleGeometryBoundingSphere),!0))},calculateDrawRange:function(){this.dynamicDrawRange.calculateDrawRange(this)},useTranslationForTransformControls:function(){this.transformControls.setMode("translate"),this.updateTransformControls(!1)},useScaleForTransformControls:function(){this.transformControls.setMode("scale"),this.updateTransformControls(!1)},useRotationForTransformControls:function(){this.transformControls.setMode("rotate"),this.updateTransformControls(!1)},switchVisibilityOfTransformControls:function(){this.updateTransformControls(!0)},updateTransformControls:function(e){this.transformControls.visible=!e||!this.transformControls.visible,this.transformControls.visible===!1?(this.transformControls.showX=!1,this.transformControls.showY=!1,this.transformControls.showZ=!1):this.clippingPlanes.clippingPlaneSettings.useParallelPlane()?(this.transformControls.showX=!0,this.transformControls.showY=this.transformControls.getMode()==="rotate",this.transformControls.showZ=this.transformControls.getMode()==="rotate"):this.clippingPlanes.clippingPlaneSettings.useBoxPlanes()?(this.transformControls.showX=!0,this.transformControls.showY=!0,this.transformControls.showZ=!0):(this.transformControls.showX=!0,this.transformControls.showY=this.transformControls.getMode()==="rotate",this.transformControls.showZ=this.transformControls.getMode()==="rotate",this.transformControls.getMode()==="scale"&&(this.transformControls.showX=!1,this.transformControls.visible=!1)),this.draw()},showClippingFrames:function(e){this.clippingPlanes.showClippingFrames(e),this.draw()},_setPlaneMode:function(e){var t=arguments.length>1&&arguments[1]!==void 0&&arguments[1];this.clippingPlanes.resetActivePlane(),this.clippingPlanes.hideAdditionalClippingPlanes(),this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&this.clippingPlanes.setUseUpVector(!1);var n=this.clippingPlanes.getSectionCutOptions();n.sectionCutPlaneOption=e,this.clippingPlanes.setSectionCutOptions(n,t)},setSinglePlaneMode:function(){this._setPlaneMode("single",!0),this.clippingPlanes.addNewPlaneIsOn=!1},setParallelPlaneMode:function(){this._setPlaneMode("parallel",!0),this.clippingPlanes.addNewPlaneIsOn=!1},setBoxPlaneMode:function(){this._setPlaneMode("box",!0),this.clippingPlanes.addNewPlaneIsOn=!1},setMultiPlaneMode:function(){this._setPlaneMode("multi",!0),this.clippingPlanes.addNewPlaneIsOn=!0},isAxisModeEnabled:function(){var e;return!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()||((e=this.clippingPlanes)===null||e===void 0?void 0:e.areMorePlanesPossible())&&this.clippingPlanes.addNewPlaneIsOn},addNewPlaneClicked:function(){var e=this.clippingPlanes.addNewPlaneIsOn;this.clippingPlanes.addNewPlaneIsOn?this.deleteActivePlanePossible()||this.setSinglePlaneMode():this.clippingPlanes.clippingPlaneSettings.useSinglePlane()&&this.setMultiPlaneMode(),this.clippingPlanes.addNewPlaneIsOn=!e,this.clippingPlanes.addNewPlaneIsOn||this.escapeKeyPressed(),this.clippingPlanes.onUpdateSectionParams()},addNewPlanePossible:function(){return!!this.clippingPlanes.clippingPlaneSettings.useSinglePlane()||!!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&((e=this.clippingPlanes)===null||e===void 0?void 0:e.areMorePlanesPossible());var e},isAddNewPlaneEnabled:function(){return this.addNewPlanePossible()||(this.clippingPlanes.addNewPlaneIsOn=!1),this.clippingPlanes.addNewPlaneIsOn},moveTransformControlToPrevPlane:function(){this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&this.transformControls&&this.clippingPlanes.setTransformControlToPlane(this.clippingPlanes.setPrevPlaneAsActive())},moveToPrevPlanePossible:function(){var e;return!!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&((e=this.clippingPlanes)===null||e===void 0?void 0:e.moveToPrevPlanePossible())},moveTransformControlToNextPlane:function(){this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&this.transformControls&&this.clippingPlanes.setTransformControlToPlane(this.clippingPlanes.setNextPlaneAsActive())},moveToNextPlanePossible:function(){var e;return!!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&((e=this.clippingPlanes)===null||e===void 0?void 0:e.moveToNextPlanePossible())},deleteActivePlaneClicked:function(){this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&this.clippingPlanes.deleteActivePlane(),this.deleteActivePlanePossible()||this.setSinglePlaneMode()},deleteActivePlanePossible:function(){var e;return!!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&((e=this.clippingPlanes)===null||e===void 0?void 0:e.deleteActivePlanePossible())},flipOrientation:function(){this.clippingPlanes.isActivePlaneVisible()&&(this.clippingPlanes.flipOrientation(),this.renderGPUPickTextureNeeded())},currentClippingMode:function(){return this.clippingPlanes.getSectionCutOptions().sectionCutPlaneOption},currentManipulationMode:function(){return this.transformControls.mode},currentManipulationControlVisibility:function(){return this.transformControls.visible},isActivePlaneVisible:function(){var e;return!!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&((e=this.clippingPlanes)===null||e===void 0?void 0:e.isActivePlaneVisible())},isFlipPlanePossible:function(){var e;return!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()||((e=this.clippingPlanes)===null||e===void 0?void 0:e.isActivePlaneVisible())},_onFreePlaneSelected:function(){var e,t=new CustomEvent("onFreePlaneSelected",{bubbles:!0,cancelable:!0}),n=(e=document)===null||e===void 0?void 0:e.getElementById("mainViewportContainer");n&&n.dispatchEvent(t)},setFreePlaneSection:function(e,t){console.debug(`[Renderer] setFreePlaneSection
5820
5820
  normal: (`.concat(e.x.toFixed(2),", ").concat(e.y.toFixed(2),", ").concat(e.z.toFixed(2),`)
5821
5821
  pos: (`).concat(t.x.toFixed(2),", ").concat(t.y.toFixed(2),", ").concat(t.z.toFixed(2),`)
5822
5822
  `)),this.clippingPlanes.addNewPlaneIsOn=!1,this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()?this.clippingPlanes.addSection(e,t):this.clippingPlanes.setSection(e,t,!0,!0),this.clippingPlanes.storeClippingPlanes(),this._onFreePlaneSelected()},emptySectionCutSceneForSectionCutGeometry:function(){this.sectionCuts.emptySectionCutSceneForSectionCutGeometry(),this.draw()},_onOverlayLoaded:function(e){var t,n=new CustomEvent("onOverlayLoaded",{bubbles:!0,cancelable:!0,detail:e}),i=(t=document)===null||t===void 0?void 0:t.getElementById("mainViewportContainer");i&&i.dispatchEvent(n)},createOverlay:(UG=ee(ge().mark(function e(t,n,i,s){var c;return ge().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.abrupt("return",(c=this.overlayManager)===null||c===void 0?void 0:c.createOverlay(t,n,i,s));case 1:case"end":return u.stop()}},e,this)})),function(e,t,n,i){return UG.apply(this,arguments)}),generateOverlay:(WG=ee(ge().mark(function e(t,n){var i;return ge().wrap(function(s){for(;;)switch(s.prev=s.next){case 0:return s.next=2,this.overlays.generateOverlay(t,n);case 2:return i=s.sent,s.abrupt("return",i);case 4:case"end":return s.stop()}},e,this)})),function(e,t){return WG.apply(this,arguments)}),loadOverlay:(qG=ee(ge().mark(function e(t,n){var i,s;return ge().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:return s=(i=this.overlayManager)===null||i===void 0?void 0:i.loadOverlay(t,n),this.draw(),c.abrupt("return",s);case 3:case"end":return c.stop()}},e,this)})),function(e,t){return qG.apply(this,arguments)}),loadOverlayList:(FG=ee(ge().mark(function e(t,n){var i,s,c;return ge().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return s=this.getAllLoadedOverlays(),c=t.filter(function(m){return!s.find(function(v){return v===m})}),u.next=4,(i=this.overlayManager)===null||i===void 0?void 0:i.loadOverlayList(c,n);case 4:this.showOverlays(t),this.draw();case 6:case"end":return u.stop()}},e,this)})),function(e,t){return FG.apply(this,arguments)}),deleteOverlay:(HG=ee(ge().mark(function e(t){var n;return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return i.abrupt("return",(n=this.overlayManager)===null||n===void 0?void 0:n.deleteOverlay(t));case 1:case"end":return i.stop()}},e,this)})),function(e){return HG.apply(this,arguments)}),clearOverlays:function(){this.overlays.clear(),this.draw()},showOverlays:function(e){this.overlays.setOverlaysVisibility(e,!0),this.draw()},hideOverlays:function(e){this.overlays.setOverlaysVisibility(e,!1),this.draw()},hideAllOverlays:function(){this.overlays.hideAllOverlays(),this.draw()},removeOverlayFromSceneById:function(e){this.overlays.setOverlaysVisibility([e],!1),this.overlays.removeOverlayFromSceneById(e),this.draw()},getAllVisibleOverlays:function(){return this.overlays.getAllVisibleOverlays()},getAllLoadedOverlays:function(){return this.overlays.getAllLoadedOverlays()},setOverlaysTransparency:function(e,t){this.overlays.setOverlaysTransparency(e,t),this.draw()},getOverlayTransparency:function(e){return this.overlays.getOverlayTransparency(e)},startSelectPointsForOverlayInteractor:function(e){var t;if(!e&&!this.clippingPlanes.isEnabled())throw new Error("No clipping plane defined. One plane is needed for overlays");console.debug("[Renderer] selectPointsForOverlay (viewport: ".concat(this==null?void 0:this.name)),this.setSelectionMode("selectPointsForOverlay"),e&&((t=this.currentInteractor)===null||t===void 0||t.setfileViewInteractor()),this.draw()},getHiddenObjectsIds:function(){return this.objectSets.hiddenObjects.map(function(e){return e.id})},isValidSectionCutResult:function(e,t){return e.cuttingPlanes.length>0&&t.cuttingPlanes.length>0&&e.cuttingPlanes[0].cuttingPoint.x===t.cuttingPlanes[0].cuttingPoint.x&&e.cuttingPlanes[0].cuttingPoint.y===t.cuttingPlanes[0].cuttingPoint.y&&e.cuttingPlanes[0].cuttingPoint.z===t.cuttingPlanes[0].cuttingPoint.z&&e.modelLayer.includes(t.modelLayer[0])&&e.topologyNodes===t.topologyNodes&&e.hiddenObjects===t.hiddenObjects},generateSectionCuts:(kG=ee(ge().mark(function e(t,n){return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return i.next=2,this.sectionCuts.createMeshesFromGlbResponse(t,n||this.clippingPlanes.getSectionCutOptions());case 2:this.draw();case 3:case"end":return i.stop()}},e,this)})),function(e,t){return kG.apply(this,arguments)}),setMeasureUnit:function(e,t,n,i){var s;this.units&&this.units[e]&&(this.units[e].unit=t,this.units[e].precision=n,this.units[e].multiplicator=i,(s=this.currentInteractor)!==null&&s!==void 0&&s.setUnit&&this.currentInteractor.setUnit())},getVectorScreenCoordinates:function(e){var t=new Ai;t=this.renderer.getSize(t);var n=e.clone().project(this.camera);return n.x=(n.x+1)*t.x/2,n.y=-(n.y-1)*t.y/2,n.z=0,n},getAmbientOcclusionOptions:function(){return this.ambientOcclusionSettings.get()},setAmbientOcclusionOptions:function(e){this.ambientOcclusionSettings.set(e),this.lightDirection.setFromSphericalCoords(1,e.lightElevation,e.lightRotation),this.lightColor.copy(e.lightColor),this.originalLightColor.copy(e.lightColor),this.ambientLightColor.copy(e.ambientLightColor),this.originalAmbientLightColor.copy(e.ambientLightColor),this.ssaoEnabled=this.ssaoSupported&&e.usage,this.ssaoEnabledInteraction=this.ssaoEnabled&&e.usageForInteraction;var t=e.useShadows&&this.shadowsSupported;this.shadows.setEnabled(t),this.shadowsEnabled=t,this.shadowsEnabledInteraction=t&&e.useShadowsForInteraction},resetAmbientOcclusionOptions:function(){return this.ambientOcclusionSettings.resetToDefault()},setSunPosition:function(e){var t=e.northDirection,n=e.year,i=e.month,s=e.day,c=e.hours,u=e.minutes,m=e.timezone,v=e.latitude,M=e.longitude,w=e.showSky,P=n+"-"+(i<10?"0":"")+i+"-"+(s<10?"0":"")+s,q=new(Ere()).utc(P).tz(m).clone().startOf("day").clone().add(c,"hours").add(u,"minute"),Z=this.sunCalculation.getPosition(q,v,M),K=(360-Ro.radToDeg(Z.azimuth)-t).toFixed(2),he=Z.altitude.toFixed(2),le=Math.PI/2-he,pe=Ro.degToRad(K);if(this.lightDirection.setFromSphericalCoords(1,le,pe),this.lightColor=this.originalLightColor.clone(),this.ambientLightColor=this.originalAmbientLightColor.clone(),he<.2){var Ie=pL.mapInterval(.1,.2,.8,1,he);this.lightColor.intensity=Ie,this.lightColor.multiplyScalar(Ie),this.ambientLightColor.intensity=Ie}if(he<.1){var Ce=pL.mapInterval(0,.1,0,.8,he);this.lightColor.intensity=Ce,this.lightColor.multiplyScalar(Ce),this.ambientLightColor.intensity=Ce}if(he<0&&(this.lightColor.setRGB(0,0,0),this.ambientLightColor.intensity=0),this.sky.visible=w,this.sky.visible){var Ne={turbidity:10,rayleigh:3,mieCoefficient:.005,mieDirectionalG:.7,exposure:.5},Ge=this.sky.material.uniforms;Ge.turbidity.value=Ne.turbidity,Ge.rayleigh.value=Ne.rayleigh,Ge.mieCoefficient.value=Ne.mieCoefficient,Ge.mieDirectionalG.value=Ne.mieDirectionalG,Ge.sunPosition.value.copy(this.lightDirection),this.renderer.toneMappingExposure=Ne.exposure,this.renderer.toneMapping=yu}else this.renderer.toneMappingExposure=1,this.renderer.toneMapping=D0;return this.draw(),{zenithAngle:le,azimuthAngle:pe}},getAnnotationOptions:function(){return this.annotationSettings.get()},setAnnotationOptions:function(e){this.annotationSettings.set(e),this.color[0].copy(e.color),this.color[1].copy(e.color),this.color[2].copy(e.color)},getAnnotationBorderColorType:function(){return this.annotationSettings.get().borderColorType},setAnnotationBorderColorType:function(e){var t=this.annotationSettings.get();t.borderColorType=e,this.annotationSettings.set(t)},resetAnnotationOptions:function(){return this.annotationSettings.resetToDefault()},getAnnotations:function(){return this.markups.getAll("annotations")},getDimensions:function(){return this.markups.getAll("dimensions")},getLabels:function(){return this.markups.getAll("labels")},setAnnotations:function(e){this.markups.setAnnotations(e)},setDimensions:function(e){this.markups.setDimensions(e)},setLabels:function(e){this.markups.setLabels(e)},getObjectsContainer:function(){return this.content?this.content.getObjectsContainer():null},getGeometryNodes:function(){return this.content?this.content.getGeometryNodes():null},getContentBoundingBox:function(){var e=this.content?this.content.getBoundingBox():null;return e||(e=new iO),e.isValid()||(e.expandByMinMax(-1e3,-1e3,-1e3,1e3,1e3,1e3),e.emptyContent=!0),e},drawBackgroundToCanvas:function(e,t,n){this.background.drawToCanvas(e,t,n)},setBackground:function(e,t){this.background.setBackground(e,t)},captureScreen:function(){this.drawSynchronous();var e=this.renderer.getContext(),t=new Uint8Array(e.drawingBufferWidth*e.drawingBufferHeight*4);return e.readPixels(0,0,e.drawingBufferWidth,e.drawingBufferHeight,e.RGBA,e.UNSIGNED_BYTE,t),t},captureScreenBlob:function(){var e=this;return this.drawSynchronous(),new Promise(function(t){e.renderer.domElement.toBlob(function(n){t(n)})})},getDisciplineNodeMeshes:function(){return this.nodeMeshes},updateWebGLBuffers:function(){this.content.getGeometryNodes().updateWebGLBuffers(this),this.draw()},updateWebGLBuffer:function(e){this.nodeMeshes.updateWebGLBuffer(this,e)},setCurrentClashFilter:function(e){var t;(t=this.content)===null||t===void 0||t.getClashes().setCurrentClashFilter(e)},beginChangeWorkingSet:function(){var e=this.checkSelectionMode("isolated"),t=this.checkSelectionMode("hideIsolated"),n=this.checkSelectionMode("clipIsolated");return e&&this.resetIsolationMode(),t&&this.resetHideIsolateObjects(),{isolated:e,hideIsolated:t,clipIsolated:n}},endChangeWorkingSet:function(e){e.isolated&&this.setIsolationMode(),e.hideIsolated&&this.hideIsolateObjects(),e.clipIsolated&&this.clipObjects(!0)},changeWorkingSet:function(e){var t=this.beginChangeWorkingSet();e(),this.endChangeWorkingSet(t)},getIsolationMode:function(){var e=0;return this.checkSelectionMode("isolated")&&(e=1),this.checkSelectionMode("hideIsolated")&&(e=2),e},setShowHiddenObjectsTransparent:function(){var e=!(arguments.length>0&&arguments[0]!==void 0)||arguments[0];this.showHiddenObjectsTransparent=e,this.renderGPUPickTextureNeeded(),this.draw()},hasLCS:function(){return this.localCoordSystemManager.hasLCS()},setupProjectView:function(){return this.calculateVisibleGeometryBoundaries()!==!1&&(this.resetCamera(),!0)},setObjectUnderMouse:function(e){var t,n;(this==null||(t=this.objectUnderMouse)===null||t===void 0?void 0:t.id)!==e?.id&&(this.lastObjectUnderMouse=this.objectUnderMouse,this._hoverEffectTurnedOff(this.lastObjectUnderMouse),this.objectUnderMouseChanged=!0),e?(this.objectUnderMouse=e,e.isClashElement?this.rootObjectUnderMouse=e:this.rootObjectUnderMouse=(n=this.getObjectsContainer())===null||n===void 0?void 0:n.getObjectRoot(e)):this.resetObjectUnderMouse()},isVisibleObject:function(e){var t=this.getObjectsContainer().getObject(e);if(!t)return this.overlays.isVisibleOverlay(e);var n=this.objectSets.hiddenObjects.find(function(c){return c.id===e}),i=t.getIsolation(this),s=this.checkSelectionMode("hideIsolated");return!(t==null||!t.isDisciplineNodeVisible(this)||!t.visible||n||s&&!i)},restoreObjectStates:function(){this.objectSets.selectedObjects.length>0&&new Ey(this).Execute(this.objectSets.selectedObjects),this.objectSets.hiddenObjects.length>0&&new B5(this).Execute(this.objectSets.hiddenObjects),this.objectSets.workingObjects.length>0&&this.checkSelectionMode("isolated")&&new pD(this).Execute(this.objectSets.workingObjects),this.objectSets.workingObjects.length>0&&this.checkSelectionMode("hideIsolated")&&new AL(this).Execute(this.objectSets.workingObjects)},restoreWorkingObjectsCustomColors:function(){var e=this,t=this.getObjectsContainer();this.objectSets.workingObjects.forEach(function(n){n.customColor?n.setCustomColor(e,n.customColor):n.resetCustomColor(e),n.customAlpha?n.setCustomAlpha(e,n.customAlpha):n.resetCustomAlpha(e),t.traverseDown(n,function(i){i.customColor?i.setCustomColor(e,i.customColor):i.resetCustomColor(e),i.customAlpha?i.setCustomAlpha(e,i.customAlpha):i.resetCustomAlpha(e)})})},setUseHoverEffect:function(e){this.useHoverEffect=e},triggerObjectSetChangedEvent:function(e){this.objectSetChangedCallback&&this.objectSetChangedCallback(e)}}})(),f})())});var Ove=G_((NK,cce)=>{"use strict";(function(p,h){typeof NK=="object"&&typeof cce=="object"?cce.exports=h():typeof define=="function"&&define.amd?define([],h):typeof NK=="object"?NK.add=h():p.add=h()})(self,()=>(()=>{"use strict";var p={d:(Lt,$e)=>{for(var dt in $e)p.o($e,dt)&&!p.o(Lt,dt)&&Object.defineProperty(Lt,dt,{enumerable:!0,get:$e[dt]})},o:(Lt,$e)=>Object.prototype.hasOwnProperty.call(Lt,$e),r:Lt=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(Lt,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(Lt,"__esModule",{value:!0})}},h={};function a(Lt){return a=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},a(Lt)}function f(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,g(zt.key),zt)}}function g(Lt){var $e=function(dt,zt){if(a(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(a(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return a($e)=="symbol"?$e:$e+""}p.r(h),p.d(h,{BimExplorer:()=>$a,BimFilesIsoSelect:()=>fo,BimFilesOverlaySelect:()=>gf,BimFilesSelect:()=>wi,BimModelsIsoSelect:()=>Mf,BimModelsSelect:()=>vl,BimObjectProperties:()=>jd,BimPortal:()=>Zs,BimTaskList:()=>ms,BimTaskProperties:()=>us,ExportManager:()=>j1,ExternalClient:()=>H,ModelViewer:()=>m1,getUrlParameter:()=>Yp});var C,H=function(){return Lt=function zt(fn){(function(Tt,$t){if(!(Tt instanceof $t))throw new TypeError("Cannot call a class as a function")})(this,zt),this._messageHandlers={},this._errorHandler=null,this._clientName=fn},$e=[{key:"initialize",value:function(){var zt=this;console.log("ExternalClient initialized"),window.addEventListener("message",function(fn){var Tt=fn.data;if(Tt==="")zt.errorReceived({error:"External client got an empty message !"});else{var $t;try{$t=JSON.parse(Tt)}catch{return void zt.errorReceived({error:"External client got an invalid message json payload !"})}zt.messageReceived($t)}})}},{key:"addMessageHandler",value:function(zt,fn){this._messageHandlers[zt]=fn}},{key:"removeMessageHandler",value:function(zt){delete this._messageHandlers[zt]}},{key:"messageReceived",value:function(zt){var fn=this._messageHandlers[zt.message];fn&&fn(zt.data)}},{key:"addErrorHandler",value:function(zt){this._errorHandler=zt}},{key:"removeErrorHandler",value:function(){this._errorHandler=null}},{key:"errorReceived",value:function(zt){var fn=this._errorHandler;fn&&fn(zt)}},{key:"sendMessage",value:function(zt,fn,Tt){var $t=document.getElementById(zt);return!($t==null||!$t.contentWindow||($t.contentWindow.postMessage(JSON.stringify({messageType:"bimplusMessageIn",message:fn,data:Tt}),"*"),0))}},{key:"getClientName",value:function(){return this._clientName}}],$e&&f(Lt.prototype,$e),dt&&f(Lt,dt),Object.defineProperty(Lt,"prototype",{writable:!1}),Lt;var Lt,$e,dt}();function de(Lt){return de=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},de(Lt)}function G(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,ge(zt.key),zt)}}function ee(Lt,$e,dt){return $e&&G(Lt.prototype,$e),dt&&G(Lt,dt),Object.defineProperty(Lt,"prototype",{writable:!1}),Lt}function fe(Lt,$e,dt){return($e=ge($e))in Lt?Object.defineProperty(Lt,$e,{value:dt,enumerable:!0,configurable:!0,writable:!0}):Lt[$e]=dt,Lt}function ge(Lt){var $e=function(dt,zt){if(de(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(de(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return de($e)=="symbol"?$e:$e+""}var je=ee(function Lt(){(function($e,dt){if(!($e instanceof dt))throw new TypeError("Cannot call a class as a function")})(this,Lt)});function et(Lt){return et=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},et(Lt)}function Dt(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,Mn(zt.key),zt)}}function Mn(Lt){var $e=function(dt,zt){if(et(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(et(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return et($e)=="symbol"?$e:$e+""}C=je,fe(je,"embedded","?embedded=1"),fe(je,"url",function(Lt,$e){var dt="";return typeof $e?.baseUrl=="string"?(dt=$e.baseUrl).endsWith("/")||(dt+="/"):(dt="https://portal",Lt&&(Lt==="dev"&&(dt+="-dev"),Lt==="stage"&&(dt+="-stage")),dt+=".bimplus.net/"),dt}),fe(je,"token",function(Lt){return"&token="+Lt}),fe(je,"client",function(Lt){return Lt?"&external_client=PostMessage:"+Lt.getClientName():""}),fe(je,"source",function(Lt){return Lt&&typeof Lt=="string"?"&source="+Lt:""}),fe(je,"teamId",function(Lt){return Lt?"&team_id="+Lt:""}),fe(je,"projectId",function(Lt){return Lt?"&project_id="+Lt:""}),fe(je,"addParameter",function(Lt,$e,dt){return $e&&dt?Lt?Lt+"&".concat($e,"=").concat(dt):"?".concat($e,"=").concat(dt):Lt}),fe(je,"addParameters",function(Lt,$e){var dt=Lt;for(var zt in $e)dt=C.addParameter(dt,zt,$e[zt]);return dt});var Kn=function(){return Lt=function zt(fn,Tt,$t,fi,is){(function(Gi,ti){if(!(Gi instanceof ti))throw new TypeError("Cannot call a class as a function")})(this,zt),this._client=Tt,this._domId=fn,this._env=$t,this._token=fi,this._options=is},($e=[{key:"sendMessage",value:function(zt,fn){if(!this._client){var Tt="Error for SendMessage. Client not defined.";throw console.error(Tt),ReferenceError(Tt)}this._client.sendMessage(this._domId,zt,fn)}},{key:"getDOMElementId",value:function(){return this._domId}},{key:"initMessageHandlers",value:function(){}},{key:"loadIFrame",value:function(zt){var fn=document.getElementById(this._domId);if(!fn){var Tt="DOM element not found: "+this._domId;throw console.error(Tt),ReferenceError(Tt)}fn.src=zt}},{key:"loadIFrameShadowRoot",value:function(zt,fn){var Tt=zt.getElementById(this._domId);if(!Tt){var $t="DOM element not found: "+this._domId;throw console.error($t),ReferenceError($t)}Tt.src=fn}}])&&Dt(Lt.prototype,$e),dt&&Dt(Lt,dt),Object.defineProperty(Lt,"prototype",{writable:!1}),Lt;var Lt,$e,dt}();function Li(Lt){return Li=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},Li(Lt)}function es(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,sr(zt.key),zt)}}function sr(Lt){var $e=function(dt,zt){if(Li(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(Li(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return Li($e)=="symbol"?$e:$e+""}function ys(Lt,$e,dt){return $e=na($e),function(zt,fn){if(fn&&(Li(fn)=="object"||typeof fn=="function"))return fn;if(fn!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Tt){if(Tt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Tt}(zt)}(Lt,Yr()?Reflect.construct($e,dt||[],na(Lt).constructor):$e.apply(Lt,dt))}function Yr(){try{var Lt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(Yr=function(){return!!Lt})()}function Ei(){return Ei=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(Lt,$e,dt){var zt=function(Tt,$t){for(;!{}.hasOwnProperty.call(Tt,$t)&&(Tt=na(Tt))!==null;);return Tt}(Lt,$e);if(zt){var fn=Object.getOwnPropertyDescriptor(zt,$e);return fn.get?fn.get.call(arguments.length<3?Lt:dt):fn.value}},Ei.apply(null,arguments)}function na(Lt){return na=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($e){return $e.__proto__||Object.getPrototypeOf($e)},na(Lt)}function ur(Lt,$e){return ur=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(dt,zt){return dt.__proto__=zt,dt},ur(Lt,$e)}var Zs=function(Lt){function $e(Tt,$t,fi,is,Gi){var ti;return function(Yn,ro){if(!(Yn instanceof ro))throw new TypeError("Cannot call a class as a function")}(this,$e),(ti=ys(this,$e,[Tt,fi,is,$t,Gi])).onTeamChanged=null,ti.onProjectSelected=null,ti.onAttachmentSelected=null,ti.onAttachmentSelectedDetails=null,ti}return function(Tt,$t){if(typeof $t!="function"&&$t!==null)throw new TypeError("Super expression must either be null or a function");Tt.prototype=Object.create($t&&$t.prototype,{constructor:{value:Tt,writable:!0,configurable:!0}}),Object.defineProperty(Tt,"prototype",{writable:!1}),$t&&ur(Tt,$t)}($e,Lt),dt=$e,zt=[{key:"getUrl",value:function(){return je.url(this._env,this._options)+je.embedded+je.token(this._token)+je.client(this._client)}},{key:"load",value:function(){var Tt=this.getUrl();this.loadIFrame(Tt),this.initMessageHandlers()}},{key:"initMessageHandlers",value:function(){var Tt,$t,fi,is,Gi,ti=this;(Tt=$e,$t="initMessageHandlers",fi=this,Gi=Ei(na(1&(is=3)?Tt.prototype:Tt),$t,fi),2&is&&typeof Gi=="function"?function(Yn){return Gi.apply(fi,Yn)}:Gi)([]),this._client.addMessageHandler("TeamChanged",function(Yn){ti.onTeamChanged&&ti.onTeamChanged(Yn.id)}),this._client.addMessageHandler("ProjectSelected",function(Yn){ti.onProjectSelected&&ti.onProjectSelected(Yn.id)}),this._client.addMessageHandler("AttachmentSelected",function(Yn){ti.onAttachmentSelected&&ti.onAttachmentSelected(Yn!=null&&Yn.id?Yn.id:Yn)}),this._client.addMessageHandler("AttachmentSelectedDetails",function(Yn){ti.onAttachmentSelectedDetails&&ti.onAttachmentSelectedDetails(Yn!=null&&Yn.id?Yn.id:Yn)})}}],zt&&es(dt.prototype,zt),fn&&es(dt,fn),Object.defineProperty(dt,"prototype",{writable:!1}),dt;var dt,zt,fn}(Kn);function Dl(Lt){return Dl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},Dl(Lt)}function ha(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,So(zt.key),zt)}}function So(Lt){var $e=function(dt,zt){if(Dl(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(Dl(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return Dl($e)=="symbol"?$e:$e+""}function _l(Lt,$e,dt){return $e=ko($e),function(zt,fn){if(fn&&(Dl(fn)=="object"||typeof fn=="function"))return fn;if(fn!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Tt){if(Tt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Tt}(zt)}(Lt,R1()?Reflect.construct($e,dt||[],ko(Lt).constructor):$e.apply(Lt,dt))}function R1(){try{var Lt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(R1=function(){return!!Lt})()}function ll(){return ll=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(Lt,$e,dt){var zt=function(Tt,$t){for(;!{}.hasOwnProperty.call(Tt,$t)&&(Tt=ko(Tt))!==null;);return Tt}(Lt,$e);if(zt){var fn=Object.getOwnPropertyDescriptor(zt,$e);return fn.get?fn.get.call(arguments.length<3?Lt:dt):fn.value}},ll.apply(null,arguments)}function ko(Lt){return ko=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($e){return $e.__proto__||Object.getPrototypeOf($e)},ko(Lt)}function Iu(Lt,$e){return Iu=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(dt,zt){return dt.__proto__=zt,dt},Iu(Lt,$e)}var $a=function(Lt){function $e(Tt,$t,fi,is,Gi){var ti;return function(Yn,ro){if(!(Yn instanceof ro))throw new TypeError("Cannot call a class as a function")}(this,$e),(ti=_l(this,$e,[Tt,fi,is,$t,Gi])).onObjectSelected=null,ti.onObjectsSelected=null,ti.onIssueSelected=null,ti.onPinSelected=null,ti.onCheckAlive=null,ti.onDataLoaded=null,ti.onClickedHyperlink=null,ti}return function(Tt,$t){if(typeof $t!="function"&&$t!==null)throw new TypeError("Super expression must either be null or a function");Tt.prototype=Object.create($t&&$t.prototype,{constructor:{value:Tt,writable:!0,configurable:!0}}),Object.defineProperty(Tt,"prototype",{writable:!1}),$t&&Iu(Tt,$t)}($e,Lt),dt=$e,zt=[{key:"getUrl",value:function(Tt,$t){return(this._env&&this._env==="localhost"?"http://127.0.0.1:4200/":je.url(this._env,this._options))+"#/viewer"+je.embedded+je.token(this._token)+je.client(this._client)+"&project_id="+$t+"&team_id="+Tt}},{key:"load",value:function(Tt,$t){var fi=this.getUrl(Tt,$t);this.loadIFrame(fi),this.initMessageHandlers()}},{key:"initMessageHandlers",value:function(){var Tt,$t,fi,is,Gi,ti=this;(Tt=$e,$t="initMessageHandlers",fi=this,Gi=ll(ko(1&(is=3)?Tt.prototype:Tt),$t,fi),2&is&&typeof Gi=="function"?function(Yn){return Gi.apply(fi,Yn)}:Gi)([]),this._client.addMessageHandler("PinSelected",function(Yn){ti.onPinSelected&&ti.onPinSelected(Yn.id)}),this._client.addMessageHandler("ObjectSelected",function(Yn){ti.onObjectSelected&&ti.onObjectSelected(Yn.Id,Yn.multiSelect,Yn.selected)}),this._client.addMessageHandler("ObjectsSelected",function(Yn){ti.onObjectsSelected&&ti.onObjectsSelected(Yn.ids,Yn.multiSelect,Yn.selected)}),this._client.addMessageHandler("IssueSelected",function(Yn){ti.onIssueSelected&&ti.onIssueSelected(Yn.id)}),this._client.addMessageHandler("CheckAlive",function(Yn){ti.onCheckAlive&&ti.onCheckAlive(Yn.client)}),this._client.addMessageHandler("DataLoaded",function(){ti.onDataLoaded&&ti.onDataLoaded()}),this._client.addMessageHandler("ClickedHyperlink",function(Yn){ti.onClickedHyperlink&&ti.onClickedHyperlink(Yn.url)})}},{key:"resetView",value:function(){this.sendMessage("ResetView")}},{key:"centerObject",value:function(Tt,$t){this.sendMessage("CenterObject",{id:Tt,flyTo:$t})}},{key:"selectPin",value:function(Tt){this.sendMessage("PinSelected",{id:Tt})}},{key:"selectObjects",value:function(Tt,$t,fi,is){this.sendMessage("ObjectsSelected",{ids:Tt,multiSelect:$t,isolate:fi,blockProperties:is})}},{key:"isolateObjects",value:function(Tt){this.sendMessage("ObjectsIsolated",{ids:Tt})}},{key:"checkAlive",value:function(){this.sendMessage("CheckAlive",{})}},{key:"selectStructure",value:function(Tt,$t,fi,is,Gi,ti){this.sendMessage("StructureSelected",{id:Tt,visibleNodes:$t,showAll:fi,expandAll:is,hideUnreferencedTopology:Gi,isolate:ti})}},{key:"selectIssue",value:function(Tt){this.sendMessage("IssueSelected",{id:Tt})}},{key:"colorizeObjects",value:function(Tt,$t){this.sendMessage("ColorizeObjects",{ids:Tt,color:$t})}}],zt&&ha(dt.prototype,zt),fn&&ha(dt,fn),Object.defineProperty(dt,"prototype",{writable:!1}),dt;var dt,zt,fn}(Kn);function wo(Lt){return wo=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},wo(Lt)}function s0(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,x1(zt.key),zt)}}function x1(Lt){var $e=function(dt,zt){if(wo(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(wo(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return wo($e)=="symbol"?$e:$e+""}function r0(Lt,$e,dt){return $e=Bi($e),function(zt,fn){if(fn&&(wo(fn)=="object"||typeof fn=="function"))return fn;if(fn!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Tt){if(Tt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Tt}(zt)}(Lt,as()?Reflect.construct($e,dt||[],Bi(Lt).constructor):$e.apply(Lt,dt))}function as(){try{var Lt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(as=function(){return!!Lt})()}function Ea(){return Ea=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(Lt,$e,dt){var zt=function(Tt,$t){for(;!{}.hasOwnProperty.call(Tt,$t)&&(Tt=Bi(Tt))!==null;);return Tt}(Lt,$e);if(zt){var fn=Object.getOwnPropertyDescriptor(zt,$e);return fn.get?fn.get.call(arguments.length<3?Lt:dt):fn.value}},Ea.apply(null,arguments)}function Bi(Lt){return Bi=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($e){return $e.__proto__||Object.getPrototypeOf($e)},Bi(Lt)}function gi(Lt,$e){return gi=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(dt,zt){return dt.__proto__=zt,dt},gi(Lt,$e)}var ms=function(Lt){function $e(Tt,$t,fi,is,Gi){var ti;return function(Yn,ro){if(!(Yn instanceof ro))throw new TypeError("Cannot call a class as a function")}(this,$e),(ti=r0(this,$e,[Tt,fi,is,$t,Gi])).onObjectSelected=null,ti.onObjectsSelected=null,ti.onIssueSelected=null,ti.onCheckAlive=null,ti.onDataLoaded=null,ti}return function(Tt,$t){if(typeof $t!="function"&&$t!==null)throw new TypeError("Super expression must either be null or a function");Tt.prototype=Object.create($t&&$t.prototype,{constructor:{value:Tt,writable:!0,configurable:!0}}),Object.defineProperty(Tt,"prototype",{writable:!1}),$t&&gi(Tt,$t)}($e,Lt),dt=$e,zt=[{key:"getUrl",value:function(Tt,$t,fi){return je.url(this._env,this._options)+"viewer/"+je.embedded+"&destination=EMBEDDED_ISSUE_LIST"+je.source(fi)+je.token(this._token)+je.client(this._client)+"/#/embeddedissuelist?project_id="+$t+"&team_id="+Tt}},{key:"load",value:function(Tt,$t,fi){var is=this.getUrl(Tt,$t,fi);this.loadIFrame(is),this.initMessageHandlers()}},{key:"initMessageHandlers",value:function(){var Tt,$t,fi,is,Gi,ti=this;(Tt=$e,$t="initMessageHandlers",fi=this,Gi=Ea(Bi(1&(is=3)?Tt.prototype:Tt),$t,fi),2&is&&typeof Gi=="function"?function(Yn){return Gi.apply(fi,Yn)}:Gi)([]),this._client.addMessageHandler("ObjectSelected",function(Yn){ti.onObjectSelected&&ti.onObjectSelected(Yn.Id,Yn.multiSelect,Yn.selected)}),this._client.addMessageHandler("ObjectsSelected",function(Yn){ti.onObjectsSelected&&ti.onObjectsSelected(Yn.ids,Yn.multiSelect,Yn.selected)}),this._client.addMessageHandler("IssueSelected",function(Yn){ti.onIssueSelected&&ti.onIssueSelected(Yn.id)}),this._client.addMessageHandler("CheckAlive",function(Yn){ti.onCheckAlive&&ti.onCheckAlive(Yn.client)}),this._client.addMessageHandler("DataLoaded",function(){ti.onDataLoaded&&ti.onDataLoaded()})}},{key:"selectObjects",value:function(Tt,$t,fi,is){this.sendMessage("ObjectsSelected",{ids:Tt,multiSelect:$t,isolate:fi,blockProperties:is})}},{key:"checkAlive",value:function(){this.sendMessage("CheckAlive",{})}},{key:"selectIssue",value:function(Tt){this.sendMessage("IssueSelected",{id:Tt})}}],zt&&s0(dt.prototype,zt),fn&&s0(dt,fn),Object.defineProperty(dt,"prototype",{writable:!1}),dt;var dt,zt,fn}(Kn);function rr(Lt){return rr=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},rr(Lt)}function qs(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,rn(zt.key),zt)}}function rn(Lt){var $e=function(dt,zt){if(rr(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(rr(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return rr($e)=="symbol"?$e:$e+""}function vi(Lt,$e,dt){return $e=ws($e),function(zt,fn){if(fn&&(rr(fn)=="object"||typeof fn=="function"))return fn;if(fn!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Tt){if(Tt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Tt}(zt)}(Lt,Ui()?Reflect.construct($e,dt||[],ws(Lt).constructor):$e.apply(Lt,dt))}function Ui(){try{var Lt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(Ui=function(){return!!Lt})()}function Yi(){return Yi=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(Lt,$e,dt){var zt=function(Tt,$t){for(;!{}.hasOwnProperty.call(Tt,$t)&&(Tt=ws(Tt))!==null;);return Tt}(Lt,$e);if(zt){var fn=Object.getOwnPropertyDescriptor(zt,$e);return fn.get?fn.get.call(arguments.length<3?Lt:dt):fn.value}},Yi.apply(null,arguments)}function ws(Lt){return ws=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($e){return $e.__proto__||Object.getPrototypeOf($e)},ws(Lt)}function fa(Lt,$e){return fa=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(dt,zt){return dt.__proto__=zt,dt},fa(Lt,$e)}var us=function(Lt){function $e(Tt,$t,fi,is,Gi){var ti;return function(Yn,ro){if(!(Yn instanceof ro))throw new TypeError("Cannot call a class as a function")}(this,$e),(ti=vi(this,$e,[Tt,fi,is,$t,Gi])).onObjectSelected=null,ti.onObjectsSelected=null,ti.onIssueSelected=null,ti.onPinSelected=null,ti.onCheckAlive=null,ti.onDataLoaded=null,ti.onClickedHyperlink=null,ti}return function(Tt,$t){if(typeof $t!="function"&&$t!==null)throw new TypeError("Super expression must either be null or a function");Tt.prototype=Object.create($t&&$t.prototype,{constructor:{value:Tt,writable:!0,configurable:!0}}),Object.defineProperty(Tt,"prototype",{writable:!1}),$t&&fa(Tt,$t)}($e,Lt),dt=$e,zt=[{key:"getUrl",value:function(Tt,$t,fi,is){return je.url(this._env,this._options)+"viewer/"+je.embedded+"&destination=EMBEDDED_ISSUE"+je.source(is)+je.token(this._token)+je.client(this._client)+"/#/embeddedissue?project_id="+$t+"&issue_id="+fi+"&team_id="+Tt}},{key:"load",value:function(Tt,$t,fi,is){var Gi=this.getUrl(Tt,$t,fi,is);this.loadIFrame(Gi),this.initMessageHandlers()}},{key:"initMessageHandlers",value:function(){var Tt,$t,fi,is,Gi,ti=this;(Tt=$e,$t="initMessageHandlers",fi=this,Gi=Yi(ws(1&(is=3)?Tt.prototype:Tt),$t,fi),2&is&&typeof Gi=="function"?function(Yn){return Gi.apply(fi,Yn)}:Gi)([]),this._client.addMessageHandler("PinSelected",function(Yn){ti.onPinSelected&&ti.onPinSelected(Yn.id)}),this._client.addMessageHandler("ObjectSelected",function(Yn){ti.onObjectSelected&&ti.onObjectSelected(Yn.Id,Yn.multiSelect,Yn.selected)}),this._client.addMessageHandler("ObjectsSelected",function(Yn){ti.onObjectsSelected&&ti.onObjectsSelected(Yn.ids,Yn.multiSelect,Yn.selected)}),this._client.addMessageHandler("IssueSelected",function(Yn){ti.onIssueSelected&&ti.onIssueSelected(Yn.id)}),this._client.addMessageHandler("CheckAlive",function(Yn){ti.onCheckAlive&&ti.onCheckAlive(Yn.client)}),this._client.addMessageHandler("DataLoaded",function(){ti.onDataLoaded&&ti.onDataLoaded()}),this._client.addMessageHandler("ClickedHyperlink",function(Yn){ti.onClickedHyperlink&&ti.onClickedHyperlink(Yn.url)})}},{key:"selectPin",value:function(Tt){this.sendMessage("PinSelected",{id:Tt})}},{key:"selectObjects",value:function(Tt,$t,fi,is){this.sendMessage("ObjectsSelected",{ids:Tt,multiSelect:$t,isolate:fi,blockProperties:is})}},{key:"checkAlive",value:function(){this.sendMessage("CheckAlive",{})}},{key:"selectIssue",value:function(Tt){this.sendMessage("IssueSelected",{id:Tt})}}],zt&&qs(dt.prototype,zt),fn&&qs(dt,fn),Object.defineProperty(dt,"prototype",{writable:!1}),dt;var dt,zt,fn}(Kn);function so(Lt){return so=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},so(Lt)}function C0(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,Qo(zt.key),zt)}}function cr(Lt,$e,dt){return $e=zo($e),function(zt,fn){if(fn&&(so(fn)=="object"||typeof fn=="function"))return fn;if(fn!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Tt){if(Tt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Tt}(zt)}(Lt,N1()?Reflect.construct($e,dt||[],zo(Lt).constructor):$e.apply(Lt,dt))}function N1(){try{var Lt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(N1=function(){return!!Lt})()}function Du(){return Du=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(Lt,$e,dt){var zt=function(Tt,$t){for(;!{}.hasOwnProperty.call(Tt,$t)&&(Tt=zo(Tt))!==null;);return Tt}(Lt,$e);if(zt){var fn=Object.getOwnPropertyDescriptor(zt,$e);return fn.get?fn.get.call(arguments.length<3?Lt:dt):fn.value}},Du.apply(null,arguments)}function zo(Lt){return zo=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($e){return $e.__proto__||Object.getPrototypeOf($e)},zo(Lt)}function U1(Lt,$e){return U1=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(dt,zt){return dt.__proto__=zt,dt},U1(Lt,$e)}function Qo(Lt){var $e=function(dt,zt){if(so(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(so(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return so($e)=="symbol"?$e:$e+""}var jd=function(Lt){function $e(Tt,$t,fi,is,Gi){var ti,Yn,ro,q0;return function(g0,zu){if(!(g0 instanceof zu))throw new TypeError("Cannot call a class as a function")}(this,$e),ti=cr(this,$e,[Tt,fi,is,$t,Gi]),Yn=ti,q0=function(g0,zu,w1){var _1=je.url(this._env,this._options);return _1+="viewer/#/objproperties"+je.embedded+je.token(this._token)+je.client(this._client)+"&project_id="+zu+"&team_id="+g0+"&object_id="+w1},(ro=Qo(ro="getUrl"))in Yn?Object.defineProperty(Yn,ro,{value:q0,enumerable:!0,configurable:!0,writable:!0}):Yn[ro]=q0,ti}return function(Tt,$t){if(typeof $t!="function"&&$t!==null)throw new TypeError("Super expression must either be null or a function");Tt.prototype=Object.create($t&&$t.prototype,{constructor:{value:Tt,writable:!0,configurable:!0}}),Object.defineProperty(Tt,"prototype",{writable:!1}),$t&&U1(Tt,$t)}($e,Lt),dt=$e,zt=[{key:"load",value:function(Tt,$t,fi){var is=this.getUrl(Tt,$t,fi);this.loadIFrame(is),this.initMessageHandlers()}},{key:"initMessageHandlers",value:function(){var Tt,$t,fi,is,Gi;(Tt=$e,$t="initMessageHandlers",fi=this,Gi=Du(zo(1&(is=3)?Tt.prototype:Tt),$t,fi),2&is&&typeof Gi=="function"?function(ti){return Gi.apply(fi,ti)}:Gi)([])}}],zt&&C0(dt.prototype,zt),fn&&C0(dt,fn),Object.defineProperty(dt,"prototype",{writable:!1}),dt;var dt,zt,fn}(Kn);function cl(Lt){return cl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},cl(Lt)}function D0(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,sa(zt.key),zt)}}function sa(Lt){var $e=function(dt,zt){if(cl(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(cl(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return cl($e)=="symbol"?$e:$e+""}function ff(Lt,$e,dt){return $e=Ll($e),function(zt,fn){if(fn&&(cl(fn)=="object"||typeof fn=="function"))return fn;if(fn!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Tt){if(Tt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Tt}(zt)}(Lt,gu()?Reflect.construct($e,dt||[],Ll(Lt).constructor):$e.apply(Lt,dt))}function gu(){try{var Lt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(gu=function(){return!!Lt})()}function yu(){return yu=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(Lt,$e,dt){var zt=function(Tt,$t){for(;!{}.hasOwnProperty.call(Tt,$t)&&(Tt=Ll(Tt))!==null;);return Tt}(Lt,$e);if(zt){var fn=Object.getOwnPropertyDescriptor(zt,$e);return fn.get?fn.get.call(arguments.length<3?Lt:dt):fn.value}},yu.apply(null,arguments)}function Ll(Lt){return Ll=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($e){return $e.__proto__||Object.getPrototypeOf($e)},Ll(Lt)}function h1(Lt,$e){return h1=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(dt,zt){return dt.__proto__=zt,dt},h1(Lt,$e)}var j1=function(Lt){function $e(Tt,$t,fi,is,Gi){var ti;return function(Yn,ro){if(!(Yn instanceof ro))throw new TypeError("Cannot call a class as a function")}(this,$e),(ti=ff(this,$e,[Tt,$t,fi,is,Gi])).onExportStarted=null,ti}return function(Tt,$t){if(typeof $t!="function"&&$t!==null)throw new TypeError("Super expression must either be null or a function");Tt.prototype=Object.create($t&&$t.prototype,{constructor:{value:Tt,writable:!0,configurable:!0}}),Object.defineProperty(Tt,"prototype",{writable:!1}),$t&&h1(Tt,$t)}($e,Lt),dt=$e,zt=[{key:"getUrl",value:function(Tt,$t){var fi=this._env&&this._env==="localhost"?"http://127.0.0.1:4200/":je.url(this._env,this._options)+"export-manager/";return fi+="#/viewer"+je.embedded+je.token(this._token)+je.client(this._client)+"&project_id="+$t+"&team_id="+Tt}},{key:"initMessageHandlers",value:function(){var Tt,$t,fi,is,Gi,ti=this;(Tt=$e,$t="initMessageHandlers",fi=this,Gi=yu(Ll(1&(is=3)?Tt.prototype:Tt),$t,fi),2&is&&typeof Gi=="function"?function(Yn){return Gi.apply(fi,Yn)}:Gi)([]),this._client.addMessageHandler("ExportStarted",function(Yn){ti.onExportStarted&&ti.onExportStarted(Yn.id)})}}],zt&&D0(dt.prototype,zt),fn&&D0(dt,fn),Object.defineProperty(dt,"prototype",{writable:!1}),dt;var dt,zt,fn}($a);function Go(Lt){return Go=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},Go(Lt)}function Zo(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,f1(zt.key),zt)}}function f1(Lt){var $e=function(dt,zt){if(Go(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(Go(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return Go($e)=="symbol"?$e:$e+""}function F0(Lt,$e,dt){return $e=t0($e),function(zt,fn){if(fn&&(Go(fn)=="object"||typeof fn=="function"))return fn;if(fn!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Tt){if(Tt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Tt}(zt)}(Lt,b0()?Reflect.construct($e,dt||[],t0(Lt).constructor):$e.apply(Lt,dt))}function b0(){try{var Lt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(b0=function(){return!!Lt})()}function Vo(){return Vo=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(Lt,$e,dt){var zt=function(Tt,$t){for(;!{}.hasOwnProperty.call(Tt,$t)&&(Tt=t0(Tt))!==null;);return Tt}(Lt,$e);if(zt){var fn=Object.getOwnPropertyDescriptor(zt,$e);return fn.get?fn.get.call(arguments.length<3?Lt:dt):fn.value}},Vo.apply(null,arguments)}function t0(Lt){return t0=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($e){return $e.__proto__||Object.getPrototypeOf($e)},t0(Lt)}function Ns(Lt,$e){return Ns=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(dt,zt){return dt.__proto__=zt,dt},Ns(Lt,$e)}var wi=function(Lt){function $e(Tt,$t,fi,is,Gi){var ti;return function(Yn,ro){if(!(Yn instanceof ro))throw new TypeError("Cannot call a class as a function")}(this,$e),(ti=F0(this,$e,[Tt,fi,is,$t,Gi])).onAttachmentSelected=null,ti.onAttachmentSelectedDetails=null,ti}return function(Tt,$t){if(typeof $t!="function"&&$t!==null)throw new TypeError("Super expression must either be null or a function");Tt.prototype=Object.create($t&&$t.prototype,{constructor:{value:Tt,writable:!0,configurable:!0}}),Object.defineProperty(Tt,"prototype",{writable:!1}),$t&&Ns(Tt,$t)}($e,Lt),dt=$e,zt=[{key:"getUrl",value:function(Tt,$t){var fi=je.url(this._env,this._options);return fi+=je.embedded+je.token(this._token)+je.client(this._client)+"/#/project/"+Tt+"/"+$t+"/files/select"}},{key:"load",value:function(Tt,$t){var fi=this.getUrl(Tt,$t);this.loadIFrame(fi),this.initMessageHandlers()}},{key:"loadShadowRoot",value:function(Tt,$t,fi){var is=this.getUrl($t,fi);this.loadIFrameShadowRoot(Tt,is),this.initMessageHandlers()}},{key:"initMessageHandlers",value:function(){var Tt,$t,fi,is,Gi,ti=this;(Tt=$e,$t="initMessageHandlers",fi=this,Gi=Vo(t0(1&(is=3)?Tt.prototype:Tt),$t,fi),2&is&&typeof Gi=="function"?function(Yn){return Gi.apply(fi,Yn)}:Gi)([]),this._client.addMessageHandler("AttachmentSelected",function(Yn){ti.onAttachmentSelected&&ti.onAttachmentSelected(Yn!=null&&Yn.id?Yn.id:Yn)}),this._client.addMessageHandler("AttachmentSelectedDetails",function(Yn){ti.onAttachmentSelectedDetails&&ti.onAttachmentSelectedDetails(Yn!=null&&Yn.id?Yn.id:Yn)})}}],zt&&Zo(dt.prototype,zt),fn&&Zo(dt,fn),Object.defineProperty(dt,"prototype",{writable:!1}),dt;var dt,zt,fn}(Kn);function bl(Lt){return bl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},bl(Lt)}function P1(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,ji(zt.key),zt)}}function ji(Lt){var $e=function(dt,zt){if(bl(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(bl(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return bl($e)=="symbol"?$e:$e+""}function wl(Lt,$e,dt){return $e=Hi($e),function(zt,fn){if(fn&&(bl(fn)=="object"||typeof fn=="function"))return fn;if(fn!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Tt){if(Tt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Tt}(zt)}(Lt,hr()?Reflect.construct($e,dt||[],Hi(Lt).constructor):$e.apply(Lt,dt))}function hr(){try{var Lt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(hr=function(){return!!Lt})()}function O1(){return O1=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(Lt,$e,dt){var zt=function(Tt,$t){for(;!{}.hasOwnProperty.call(Tt,$t)&&(Tt=Hi(Tt))!==null;);return Tt}(Lt,$e);if(zt){var fn=Object.getOwnPropertyDescriptor(zt,$e);return fn.get?fn.get.call(arguments.length<3?Lt:dt):fn.value}},O1.apply(null,arguments)}function Hi(Lt){return Hi=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($e){return $e.__proto__||Object.getPrototypeOf($e)},Hi(Lt)}function Gs(Lt,$e){return Gs=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(dt,zt){return dt.__proto__=zt,dt},Gs(Lt,$e)}var gf=function(Lt){function $e(Tt,$t,fi,is,Gi){var ti;return function(Yn,ro){if(!(Yn instanceof ro))throw new TypeError("Cannot call a class as a function")}(this,$e),(ti=wl(this,$e,[Tt,fi,is,$t,Gi])).onAttachmentSelected=null,ti.onAttachmentSelectedDetails=null,ti}return function(Tt,$t){if(typeof $t!="function"&&$t!==null)throw new TypeError("Super expression must either be null or a function");Tt.prototype=Object.create($t&&$t.prototype,{constructor:{value:Tt,writable:!0,configurable:!0}}),Object.defineProperty(Tt,"prototype",{writable:!1}),$t&&Gs(Tt,$t)}($e,Lt),dt=$e,zt=[{key:"getUrl",value:function(Tt,$t){var fi=je.url(this._env,this._options);return fi+=je.embedded+je.token(this._token)+je.client(this._client)+"/#/project/"+Tt+"/"+$t+"/files/overlayselect"}},{key:"load",value:function(Tt,$t){var fi=this.getUrl(Tt,$t);this.loadIFrame(fi),this.initMessageHandlers()}},{key:"initMessageHandlers",value:function(){var Tt,$t,fi,is,Gi,ti=this;(Tt=$e,$t="initMessageHandlers",fi=this,Gi=O1(Hi(1&(is=3)?Tt.prototype:Tt),$t,fi),2&is&&typeof Gi=="function"?function(Yn){return Gi.apply(fi,Yn)}:Gi)([]),this._client.addMessageHandler("AttachmentSelected",function(Yn){ti.onAttachmentSelected&&ti.onAttachmentSelected(Yn!=null&&Yn.id?Yn.id:Yn)}),this._client.addMessageHandler("AttachmentSelectedDetails",function(Yn){ti.onAttachmentSelectedDetails&&ti.onAttachmentSelectedDetails(Yn!=null&&Yn.id?Yn.id:Yn)})}}],zt&&P1(dt.prototype,zt),fn&&P1(dt,fn),Object.defineProperty(dt,"prototype",{writable:!1}),dt;var dt,zt,fn}(Kn);function e1(Lt){return e1=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},e1(Lt)}function Ur(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,Br(zt.key),zt)}}function Br(Lt){var $e=function(dt,zt){if(e1(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(e1(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return e1($e)=="symbol"?$e:$e+""}function rl(Lt,$e,dt){return $e=jr($e),function(zt,fn){if(fn&&(e1(fn)=="object"||typeof fn=="function"))return fn;if(fn!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Tt){if(Tt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Tt}(zt)}(Lt,dr()?Reflect.construct($e,dt||[],jr(Lt).constructor):$e.apply(Lt,dt))}function dr(){try{var Lt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(dr=function(){return!!Lt})()}function Mr(){return Mr=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(Lt,$e,dt){var zt=function(Tt,$t){for(;!{}.hasOwnProperty.call(Tt,$t)&&(Tt=jr(Tt))!==null;);return Tt}(Lt,$e);if(zt){var fn=Object.getOwnPropertyDescriptor(zt,$e);return fn.get?fn.get.call(arguments.length<3?Lt:dt):fn.value}},Mr.apply(null,arguments)}function jr(Lt){return jr=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($e){return $e.__proto__||Object.getPrototypeOf($e)},jr(Lt)}function s1(Lt,$e){return s1=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(dt,zt){return dt.__proto__=zt,dt},s1(Lt,$e)}var vl=function(Lt){function $e(Tt,$t,fi,is,Gi){var ti;return function(Yn,ro){if(!(Yn instanceof ro))throw new TypeError("Cannot call a class as a function")}(this,$e),(ti=rl(this,$e,[Tt,fi,is,$t,Gi])).onModelSelected=null,ti.onModelSelectedDetails=null,ti}return function(Tt,$t){if(typeof $t!="function"&&$t!==null)throw new TypeError("Super expression must either be null or a function");Tt.prototype=Object.create($t&&$t.prototype,{constructor:{value:Tt,writable:!0,configurable:!0}}),Object.defineProperty(Tt,"prototype",{writable:!1}),$t&&s1(Tt,$t)}($e,Lt),dt=$e,zt=[{key:"getUrl",value:function(Tt,$t){var fi=je.url(this._env,this._options);return fi+=je.embedded+je.token(this._token)+je.client(this._client)+"/#/project/"+Tt+"/"+$t+"/models/select"}},{key:"load",value:function(Tt,$t){var fi=this.getUrl(Tt,$t);this.loadIFrame(fi),this.initMessageHandlers()}},{key:"initMessageHandlers",value:function(){var Tt,$t,fi,is,Gi,ti=this;(Tt=$e,$t="initMessageHandlers",fi=this,Gi=Mr(jr(1&(is=3)?Tt.prototype:Tt),$t,fi),2&is&&typeof Gi=="function"?function(Yn){return Gi.apply(fi,Yn)}:Gi)([]),this._client.addMessageHandler("ModelSelected",function(Yn){ti.onModelSelected&&ti.onModelSelected(Yn!=null&&Yn.id?Yn.id:Yn)}),this._client.addMessageHandler("ModelSelectedDetails",function(Yn){ti.onModelSelectedDetails&&ti.onModelSelectedDetails(Yn!=null&&Yn.id?Yn.id:Yn)})}}],zt&&Ur(dt.prototype,zt),fn&&Ur(dt,fn),Object.defineProperty(dt,"prototype",{writable:!1}),dt;var dt,zt,fn}(Kn);function Ho(Lt){return Ho=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},Ho(Lt)}function Rl(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,ql(zt.key),zt)}}function ql(Lt){var $e=function(dt,zt){if(Ho(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(Ho(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return Ho($e)=="symbol"?$e:$e+""}function v0(Lt,$e,dt){return $e=e0($e),function(zt,fn){if(fn&&(Ho(fn)=="object"||typeof fn=="function"))return fn;if(fn!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Tt){if(Tt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Tt}(zt)}(Lt,eo()?Reflect.construct($e,dt||[],e0(Lt).constructor):$e.apply(Lt,dt))}function eo(){try{var Lt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(eo=function(){return!!Lt})()}function jl(){return jl=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(Lt,$e,dt){var zt=function(Tt,$t){for(;!{}.hasOwnProperty.call(Tt,$t)&&(Tt=e0(Tt))!==null;);return Tt}(Lt,$e);if(zt){var fn=Object.getOwnPropertyDescriptor(zt,$e);return fn.get?fn.get.call(arguments.length<3?Lt:dt):fn.value}},jl.apply(null,arguments)}function e0(Lt){return e0=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($e){return $e.__proto__||Object.getPrototypeOf($e)},e0(Lt)}function yf(Lt,$e){return yf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(dt,zt){return dt.__proto__=zt,dt},yf(Lt,$e)}var fo=function(Lt){function $e(Tt,$t,fi,is,Gi){var ti;return function(Yn,ro){if(!(Yn instanceof ro))throw new TypeError("Cannot call a class as a function")}(this,$e),(ti=v0(this,$e,[Tt,fi,is,$t,Gi])).onAttachmentSelected=null,ti.onAttachmentSelectedDetails=null,ti}return function(Tt,$t){if(typeof $t!="function"&&$t!==null)throw new TypeError("Super expression must either be null or a function");Tt.prototype=Object.create($t&&$t.prototype,{constructor:{value:Tt,writable:!0,configurable:!0}}),Object.defineProperty(Tt,"prototype",{writable:!1}),$t&&yf(Tt,$t)}($e,Lt),dt=$e,zt=[{key:"getUrl",value:function(Tt,$t,fi){var is=fi||je.url(this._env,this._options);return is+=je.embedded+je.token(this._token)+je.client(this._client)+"/#/project/"+Tt+"/"+$t+"/files/isoselect"}},{key:"load",value:function(Tt,$t,fi){var is=this.getUrl(Tt,$t,fi);this.loadIFrame(is),this.initMessageHandlers()}},{key:"initMessageHandlers",value:function(){var Tt,$t,fi,is,Gi,ti=this;(Tt=$e,$t="initMessageHandlers",fi=this,Gi=jl(e0(1&(is=3)?Tt.prototype:Tt),$t,fi),2&is&&typeof Gi=="function"?function(Yn){return Gi.apply(fi,Yn)}:Gi)([]),this._client.addMessageHandler("AttachmentSelected",function(Yn){ti.onAttachmentSelected&&ti.onAttachmentSelected(Yn!=null&&Yn.id?Yn.id:Yn)}),this._client.addMessageHandler("AttachmentSelectedDetails",function(Yn){ti.onAttachmentSelectedDetails&&ti.onAttachmentSelectedDetails(Yn!=null&&Yn.id?Yn.id:Yn)})}}],zt&&Rl(dt.prototype,zt),fn&&Rl(dt,fn),Object.defineProperty(dt,"prototype",{writable:!1}),dt;var dt,zt,fn}(Kn);function Wa(Lt){return Wa=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},Wa(Lt)}function Ia(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,Su(zt.key),zt)}}function Su(Lt){var $e=function(dt,zt){if(Wa(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(Wa(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return Wa($e)=="symbol"?$e:$e+""}function G1(Lt,$e,dt){return $e=Ko($e),function(zt,fn){if(fn&&(Wa(fn)=="object"||typeof fn=="function"))return fn;if(fn!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Tt){if(Tt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Tt}(zt)}(Lt,Bo()?Reflect.construct($e,dt||[],Ko(Lt).constructor):$e.apply(Lt,dt))}function Bo(){try{var Lt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(Bo=function(){return!!Lt})()}function L1(){return L1=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(Lt,$e,dt){var zt=function(Tt,$t){for(;!{}.hasOwnProperty.call(Tt,$t)&&(Tt=Ko(Tt))!==null;);return Tt}(Lt,$e);if(zt){var fn=Object.getOwnPropertyDescriptor(zt,$e);return fn.get?fn.get.call(arguments.length<3?Lt:dt):fn.value}},L1.apply(null,arguments)}function Ko(Lt){return Ko=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($e){return $e.__proto__||Object.getPrototypeOf($e)},Ko(Lt)}function Jp(Lt,$e){return Jp=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(dt,zt){return dt.__proto__=zt,dt},Jp(Lt,$e)}var Mf=function(Lt){function $e(Tt,$t,fi,is,Gi){var ti;return function(Yn,ro){if(!(Yn instanceof ro))throw new TypeError("Cannot call a class as a function")}(this,$e),(ti=G1(this,$e,[Tt,fi,is,$t,Gi])).onModelSelected=null,ti.onModelSelectedDetails=null,ti}return function(Tt,$t){if(typeof $t!="function"&&$t!==null)throw new TypeError("Super expression must either be null or a function");Tt.prototype=Object.create($t&&$t.prototype,{constructor:{value:Tt,writable:!0,configurable:!0}}),Object.defineProperty(Tt,"prototype",{writable:!1}),$t&&Jp(Tt,$t)}($e,Lt),dt=$e,zt=[{key:"getUrl",value:function(Tt,$t,fi){var is=fi||je.url(this._env,this._options);return is+=je.embedded+je.token(this._token)+je.client(this._client)+"/#/project/"+Tt+"/"+$t+"/models/isoselect"}},{key:"load",value:function(Tt,$t,fi){var is=this.getUrl(Tt,$t,fi);this.loadIFrame(is),this.initMessageHandlers()}},{key:"initMessageHandlers",value:function(){var Tt,$t,fi,is,Gi,ti=this;(Tt=$e,$t="initMessageHandlers",fi=this,Gi=L1(Ko(1&(is=3)?Tt.prototype:Tt),$t,fi),2&is&&typeof Gi=="function"?function(Yn){return Gi.apply(fi,Yn)}:Gi)([]),this._client.addMessageHandler("ModelSelected",function(Yn){ti.onModelSelected&&ti.onModelSelected(Yn!=null&&Yn.id?Yn.id:Yn)}),this._client.addMessageHandler("ModelSelectedDetails",function(Yn){ti.onModelSelectedDetails&&ti.onModelSelectedDetails(Yn!=null&&Yn.id?Yn.id:Yn)})}}],zt&&Ia(dt.prototype,zt),fn&&Ia(dt,fn),Object.defineProperty(dt,"prototype",{writable:!1}),dt;var dt,zt,fn}(Kn);function ic(Lt){return ic=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},ic(Lt)}function Yd(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,$u(zt.key),zt)}}function $u(Lt){var $e=function(dt,zt){if(ic(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(ic(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return ic($e)=="symbol"?$e:$e+""}var m1=function(){return Lt=function zt(fn,Tt){(function($t,fi){if(!($t instanceof fi))throw new TypeError("Cannot call a class as a function")})(this,zt),this.viewerUri=fn&&fn!=="dev"&&fn!=="stage"&&fn!=="prod"?fn:je.url(fn,Tt)+"/viewer/#/modelviewer"},$e=[{key:"openFileUriWindow",value:function(zt,fn,Tt,$t){var fi="";fi=je.addParameters(fi,{fileUri:encodeURIComponent(zt),team_id:Tt,project_id:$t});var is=this.viewerUri+fi;return window.open(is,fn)}},{key:"openBufferDataWindow",value:function(zt,fn,Tt,$t){var fi="";fi=je.addParameters(fi,{awaitDataMessage:"true",team_id:Tt,project_id:$t});var is=this.viewerUri+fi,Gi=window.open(is,fn);if(Gi){var ti=function(Yn){Yn.data==="WatingForData"&&Gi&&window&&(Gi.postMessage(zt,"*",[zt]),window.removeEventListener("message",ti))};return window.addEventListener("message",ti,!1),Gi}alert("Could not open preview window. Please enable popups in your browser to use this feature")}}],$e&&Yd(Lt.prototype,$e),dt&&Yd(Lt,dt),Object.defineProperty(Lt,"prototype",{writable:!1}),Lt;var Lt,$e,dt}(),Yp=function(Lt){var $e,dt,zt=decodeURIComponent(window.location.search.substring(1)).split("&");for(dt=0;dt<zt.length;dt++)if(($e=zt[dt].split("="))[0]===Lt)return $e[1]===void 0||$e[1]};return h})())});var yce=G_((gce,Ck)=>{"use strict";(function(p,h){typeof gce=="object"&&typeof Ck<"u"?Ck.exports=h():typeof define=="function"&&define.amd?define(h):p.moment=h()})(gce,function(){"use strict";var p;function h(){return p.apply(null,arguments)}function a(E){p=E}function f(E){return E instanceof Array||Object.prototype.toString.call(E)==="[object Array]"}function g(E){return E!=null&&Object.prototype.toString.call(E)==="[object Object]"}function C(E,Y){return Object.prototype.hasOwnProperty.call(E,Y)}function H(E){if(Object.getOwnPropertyNames)return Object.getOwnPropertyNames(E).length===0;var Y;for(Y in E)if(C(E,Y))return!1;return!0}function de(E){return E===void 0}function G(E){return typeof E=="number"||Object.prototype.toString.call(E)==="[object Number]"}function ee(E){return E instanceof Date||Object.prototype.toString.call(E)==="[object Date]"}function fe(E,Y){var Ae=[],ze,Ye=E.length;for(ze=0;ze<Ye;++ze)Ae.push(Y(E[ze],ze));return Ae}function ge(E,Y){for(var Ae in Y)C(Y,Ae)&&(E[Ae]=Y[Ae]);return C(Y,"toString")&&(E.toString=Y.toString),C(Y,"valueOf")&&(E.valueOf=Y.valueOf),E}function je(E,Y,Ae,ze){return Zu(E,Y,Ae,ze,!0).utc()}function et(){return{empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidEra:null,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],era:null,meridiem:null,rfc2822:!1,weekdayMismatch:!1}}function Dt(E){return E._pf==null&&(E._pf=et()),E._pf}var Mn;Array.prototype.some?Mn=Array.prototype.some:Mn=function(E){var Y=Object(this),Ae=Y.length>>>0,ze;for(ze=0;ze<Ae;ze++)if(ze in Y&&E.call(this,Y[ze],ze,Y))return!0;return!1};function Kn(E){var Y=null,Ae=!1,ze=E._d&&!isNaN(E._d.getTime());if(ze&&(Y=Dt(E),Ae=Mn.call(Y.parsedDateParts,function(Ye){return Ye!=null}),ze=Y.overflow<0&&!Y.empty&&!Y.invalidEra&&!Y.invalidMonth&&!Y.invalidWeekday&&!Y.weekdayMismatch&&!Y.nullInput&&!Y.invalidFormat&&!Y.userInvalidated&&(!Y.meridiem||Y.meridiem&&Ae),E._strict&&(ze=ze&&Y.charsLeftOver===0&&Y.unusedTokens.length===0&&Y.bigHour===void 0)),Object.isFrozen==null||!Object.isFrozen(E))E._isValid=ze;else return ze;return E._isValid}function Li(E){var Y=je(NaN);return E!=null?ge(Dt(Y),E):Dt(Y).userInvalidated=!0,Y}var es=h.momentProperties=[],sr=!1;function ys(E,Y){var Ae,ze,Ye,xt=es.length;if(de(Y._isAMomentObject)||(E._isAMomentObject=Y._isAMomentObject),de(Y._i)||(E._i=Y._i),de(Y._f)||(E._f=Y._f),de(Y._l)||(E._l=Y._l),de(Y._strict)||(E._strict=Y._strict),de(Y._tzm)||(E._tzm=Y._tzm),de(Y._isUTC)||(E._isUTC=Y._isUTC),de(Y._offset)||(E._offset=Y._offset),de(Y._pf)||(E._pf=Dt(Y)),de(Y._locale)||(E._locale=Y._locale),xt>0)for(Ae=0;Ae<xt;Ae++)ze=es[Ae],Ye=Y[ze],de(Ye)||(E[ze]=Ye);return E}function Yr(E){ys(this,E),this._d=new Date(E._d!=null?E._d.getTime():NaN),this.isValid()||(this._d=new Date(NaN)),sr===!1&&(sr=!0,h.updateOffset(this),sr=!1)}function Ei(E){return E instanceof Yr||E!=null&&E._isAMomentObject!=null}function na(E){h.suppressDeprecationWarnings===!1&&typeof console<"u"&&console.warn&&console.warn("Deprecation warning: "+E)}function ur(E,Y){var Ae=!0;return ge(function(){if(h.deprecationHandler!=null&&h.deprecationHandler(null,E),Ae){var ze=[],Ye,xt,mn,j=arguments.length;for(xt=0;xt<j;xt++){if(Ye="",typeof arguments[xt]=="object"){Ye+=`
@@ -11420,7 +11420,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
11420
11420
  boundingBox size: `.concat(m?new Float32Array(Object.values(m)).byteLength:void 0),Et+=`
11421
11421
  visualObjects data: `.concat(v?.length," (").concat(v?.length/1e6," MB)"),console.debug(Et)}},{key:"readData",value:(t=ee(ge().mark(function i(s){var c,u;return ge().wrap(function(m){for(;;)switch(m.prev=m.next){case 0:return window&&window.BIMPLUS_SDK_PENDING_REQUESTS!==void 0&&window.BIMPLUS_SDK_PENDING_REQUESTS++,c=this.getNodeStoreId(s),m.next=4,this._db.nodes.get(c);case 4:return u=m.sent,window&&window.BIMPLUS_SDK_PENDING_REQUESTS!==void 0&&window.BIMPLUS_SDK_PENDING_REQUESTS--,u||console.error("readData can't read data from db for node ".concat(s.nodeId,", discipline ").concat(s.id," and revision ").concat(s.revision,". StoreId : ").concat(c)),m.abrupt("return",u?u.data:null);case 8:case"end":return m.stop()}},i,this)})),function(i){return t.apply(this,arguments)})},{key:"writeData",value:(e=ee(ge().mark(function i(s,c,u,m,v,M){var w,P;return ge().wrap(function(q){for(;;)switch(q.prev=q.next){case 0:return window&&window.BIMPLUS_SDK_PENDING_REQUESTS!==void 0&&window.BIMPLUS_SDK_PENDING_REQUESTS++,w=this.getNodeStoreId(s),P=_T.objectsAsString(M),q.next=5,this._db.nodes.put({id:w,model:s.divisionId,data:{opIndices:c.indices,opPositions:c.positions,opNormals:c.normals,trIndices:u.indices,trPositions:u.positions,trNormals:u.normals,edgesIndices:m.indices,edgesPositions:m.positions,edgesNormals:m.normals,minX:v?.minX,minY:v?.minY,minZ:v?.minZ,maxX:v?.maxX,maxY:v?.maxY,maxZ:v?.maxZ,visualObjectsData:P},timestamp:$.now()});case 5:q.sent||console.error("Failed to insert Node Geometry to store: node ".concat(s.nodeId,", discipline ").concat(s.id," and revision ").concat(s.revision,". StoreId : ").concat(w)),window&&window.BIMPLUS_SDK_PENDING_REQUESTS!==void 0&&window.BIMPLUS_SDK_PENDING_REQUESTS--;case 8:case"end":return q.stop()}},i,this)})),function(i,s,c,u,m,v){return e.apply(this,arguments)})}]);var e,t,n}();let ise=nse;var u0=function(e){wL.call(this,e),this.id=null,this.name=null,this.userOffsets=null,this._models={},this._disciplineNodeStore=null,u0.prototype.initializeDisciplineNodeStore=ee(ge().mark(function t(){return ge().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return this._disciplineNodeStore=new ise,n.next=3,this._disciplineNodeStore.initDB();case 3:case"end":return n.stop()}},t,this)})),u0.prototype.closeDisciplineNodeStore=ee(ge().mark(function t(){return ge().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.abrupt("return",this._disciplineNodeStore.close());case 1:case"end":return n.stop()}},t,this)})),u0.prototype.setProjectUserOffsets=function(t){console.debug("ProjectContent - user XYZ-offsets (".concat(t.x,", ").concat(t.y,", ").concat(t.z,")")),t&&(this.userOffsets=t,wq.setUserOffsets(t))},u0.prototype.addModel=function(t){this._models[t.id]=t},u0.prototype.getModel=function(t){return this._models[t]},u0.prototype.getModels=function(){var t=[];return this.forEachModel(function(n){t.push(n)}),t},u0.prototype.removeModel=function(t){delete this._models[t]},u0.prototype.findModel=function(t){for(var n in this._models)if(Object.hasOwn(this._models,n)){var i=this._models[n];if(t(i))return i}return null},u0.prototype.forEachModel=function(t){for(var n in this._models)Object.hasOwn(this._models,n)&&t(this._models[n])},u0.prototype.filterModels=function(t){var n=[];for(var i in this._models)if(Object.hasOwn(this._models,i)){var s=this._models[i];t(s)===!0&&n.push(s)}return n},u0.prototype.getTopologyLeafNode=function(t){var n;return this.forEachModel(function(i){var s=i.getTopologyLeafNode(t);s&&!n&&(n={model:i,node:s})}),n},u0.prototype.forEachTopologyLeafNode=function(t){this.forEachModel(function(n){n.forEachTopologyLeafNode(function(i){t(n,i)})})},u0.prototype.parseProjectDetailsResponse=function(t){var n=this;this.id=t.id,this.name=t.name;var i=this._models;t.disciplines&&t.disciplines.forEach(function(s){var c=i[s.divisionId];c||(c=new Y7(n,s.divisionId,s.divisionTopologyId,s.divisionName),i[s.divisionId]=c);var u=c.getLayer(s.id);u?u._revisions=s.revisions:((u=new X7(s.id,s.name))._revisions=s.revisions,c.addLayer(u))})},u0.prototype.parseProjectRevisionsResponse=function(t){t&&t.length!=0&&this.forEachModel(function(n){var i=t.filter(function(c){return c.divisionId===n.id}).map(function(c){return c.revisionNr}).sort();n.setRevisions(i);var s=t.filter(function(c){return c.divisionId===n.id&&c.release}).map(function(c){return c.revisionNr}).sort();n.setReleasedRevisions(s)})},u0.prototype.disposeClashObjectsByFilter=function(t){var n=this.getClashes();n.getClashObjects().filter(function(i){return i.clashFilter===t}).forEach(function(i){i.unregisterClash(n)})},u0.prototype.disposeObjects=function(t){var n=this.objectsContainer.getObjectsArray().filter(function(i){return i.discipline===t});this.removeObjects(n,!1)},u0.prototype.disposeLayerGeometry=function(t){this.forEachViewport(function(n){return n.disableDraw(!0)}),this.forEachModel(function(n){var i=n.getLayer(t);i&&i.geometryLoaded!==!1&&n.forEachTopologyLeafNode(function(s){s.isLayerGeometryLoaded(i)&&s.disposeLayerGeometry(i)})}),this.forEachViewport(function(n){return n.disableDraw(!1)})},u0.prototype.disposeClashObjects=function(){this.getClashes().reset()},u0.prototype.disposeRevisionCompareObjects=function(){this.objectsContainer.clearRevisionCompareObjects(),this.disposeObjects(o1.RevisionCompareLayer),this.disposeLayerGeometry(o1.RevisionCompareLayer)},u0.prototype.parseClashFilterResponse=function(t,n){var i=this,s=new rO;this.disposeClashObjectsByFilter(t),["open","unresolved","resolved"].forEach(function(c){for(var u=n[c],m=0;;){var v=u[m];if(!v)return;var M=s.createClashObject({id:v.id,volume:v.volume,clashFilter:t,status:c});M.clashingObjects=[v.element1?v.element1.id:null,v.element2?v.element2.id:null],M.clashingObjects=M.clashingObjects.filter(function(w){return w}),M.createClashElements(v.clashElements,i),M.setVisible(!1),M.registerClash(i.getClashes()),m++}})},u0.prototype.parseRevisionCompareResultResponse=function(t){var n=this;this.disposeRevisionCompareObjects();var i=new rO;["inserted","deleted","changedGeometry","changed"].forEach(function(s){var c=t[s].resultObjects;c&&c.forEach(function(u){var m=[];u.second&&u.first?m=[u.first.id,u.second.id]:u.first&&(m=[u.first.id]);var v=u.lastTopologyId;if(n.getTopologyLeafNode(v)){var M=i.createRevisionCompareObject({id:u.comparisonObjectId,layerId:u.disciplineId,modelId:t.divisionId,topologyNodeId:u.lastTopologyId,comparedObjects:m,comparedRevisions:[t.firstRevision,t.secondRevision],type:s});n.objectsContainer.addRevisionCompareObject(M);var w=n.objectsContainer.getObject(M.id);w||(w=i.createVisualObject({id:M.id,discipline:o1.RevisionCompareLayer,node:v,model:t.divisionId}),n.objectsContainer.addObject(w)),w&&(w.hasRelation(JW,w.id)===!1&&w.addRelation(JW,w.id),w.compareTo=M.comparedRevisions[1])}else console.log("Revision Compare object topology node "+v+" not found!")})})},u0.prototype.parseProjectTopologyResponse=function(t,n){var i=this;if(t.elementTypeId!==_L.TopologyDivisionType)t.children&&t.children.length>0&&t.children.forEach(function(c){i.parseProjectTopologyResponse(c,n)}),t.children&&t.children.length;else{var s=this.findModel(function(c){return c.divisionTopologyId===t.id});s?s.parseProjectTopologySubTree(t,n):console.warn("Can't find model for divisionTopologyId "+t.divisionTopologyId)}},u0.prototype.clearProjectTopology=function(t){var n=this.findModel(function(i){return i.id===t});n&&n.clear()},u0.prototype.parseObjectTopologyResponse=function(t,n,i){var s=this,c=new rO,u=t.id,m=function(v,M){var w=null;if(_L.isTopologyType(v.elementTypeId))u=v.id;else{if(v.layerid===o1.ClashLayer||i&&i(v)===!1)return;w=c.createVisualObject({id:v.id,node:u,type:v.type,name:v.name,revision:n,discipline:v.layerid,groupBoundary:!v.isChild}),v.isChild===void 0&&console.error("Missing isChild property for object : "+v.id),v.layerid||console.error("Missing LayerId for object : "+v.id),M&&M.addChild(w),s.objectsContainer.addObject(w)}v.children&&v.children.length>0&&v.children.forEach(function(P){m(P,w)})};m(t,null)},u0.prototype.unloadNode=function(t,n,i){var s=this.getTopologyLeafNode(t);if(!s)return!1;var c=s.model.getLayer(n);s.node.setLayerGeometryLoaded(c,!1),this.geometryNodes.disposeNode(t,n,i);var u=this.objectsContainer.getObjectsArray().filter(function(m){return m.node===t&&m.discipline===n});return this.objectsContainer.removeObjects(u,!0),!0},u0.prototype.unloadModel=function(t,n,i){var s=this,c=[];if(t.forEachTopologyLeafNode(function(m){c=c.concat(s.objectsContainer.getObjectsArray().filter(function(v){return v.node===m.id}))}),t.forEachTopologyLeafNode(function(m){m.objectsTreeLoaded=!1,t.forEachLayer(function(v){v.geometryLoaded=!1,m.setLayerGeometryLoaded(v,!1),s.geometryNodes.disposeNode(m.id,v.id,n)})}),this.objectsContainer.removeObjects(c,!0),!i){t.clear(!1);var u=this.getDivisions();this.forEachViewport(function(m){u.resetDivisionBoundingBox(m,t.divisionTopologyId)})}t.objectsLoaded=!1},u0.prototype.getDisciplineNode=function(t,n){var i=this.geometryNodes.nodelist[t.id];return i&&n&&n.id?i[n.id]:null},u0.prototype.getDisciplineNodeStore=function(){return this._disciplineNodeStore},u0.prototype.setDisciplineNodeStore=function(t){this._disciplineNodeStore=t}};u0.prototype=new wL,u0.prototype.constructor=u0;let Z7=u0;var aO=function(e){wL.call(this,e),this.id=null,aO.prototype.parseObjectTopologyResponse=function(t,n,i){var s=this;this.id=t.id;var c=new rO,u=function(m,v){var M;if(m.layerid||(i!=null&&(M=i.getClashes())!==null&&M!==void 0&&M.getClashElement(m.id)?m.layerid=o1.ClashLayer:console.error("Missing LayerId for object : "+m.id)),m.layerid===o1.ClashLayer&&i){var w=i.getClashes().getClashElement(m.id).getClashObject().clone();w.setHovered(!1),w.registerClash(s.getClashes()),w.setVisible(!0),w.clashElements.forEach(function(q){q.setVisible(!0)}),s.getClashes().setCurrentClashFilter(w.clashFilter)}var P=c.createVisualObject({id:m.id,type:m.type,name:m.name,revision:n,discipline:m.layerid});v&&v.addChild(P),s.getObjectsContainer().addObject(P),m.children&&m.children.length>0&&m.children.forEach(function(q){u(q,P)})};u(t,null)},aO.prototype.getFakeDivisionId=function(){return"c465cee2-8e87-4234-b01f-16ed2b59f5e7"},aO.prototype.getFakeDivisionTopologyId=function(){return"6297cf40-5d28-41ed-acb5-555411d22821"},aO.prototype.getFakeLegacyDiscipline=function(t,n){return{divisionId:this.getFakeDivisionId(),divisionName:"",divisionTopologyId:this.getFakeDivisionTopologyId(),hide:!1,id:t,name:this.name,notModified:!1,opacity:this.opacity,opaque:this.opacity===1,revision:n,revisions:[n],visible:!0,isCollisionLayer:this.id===o1.ClashLayer||void 0,isRevisionComparisonLayer:this.id===o1.RevisionCompareLayer||void 0}}};aO.prototype=new wL,aO.prototype.constructor=aO;let eU=aO,K7=function(){this.positions=null,this.normals=null,this.objectIndices=null,this.indices=null,this.bufferLength=0,this.bCnt=0,this.iCnt=0,this.getBufferCount=function(){return this.bCnt},this.getIndexBufferCount=function(){return this.iCnt},this.createBuffer=function(e,t){this.bufferLength=e,this.positions=new Float32Array(3*e),this.normals=new Float32Array(e),this.objectIndices=new Float32Array(2*e),t&&(this.indices=new Uint32Array(3*t),this.iCnt=t),this.bCnt=e},this.createLineBuffer=function(e,t){this.bufferLength=e,this.positions=new Float32Array(3*e),this.normals=new Float32Array(e),this.objectIndices=new Float32Array(2*e),t&&(this.indices=new Uint32Array(2*t))},this.clearBuffer=function(){this.positions=null,this.normals=null,this.objectIndices=null,this.indices=null,this.bufferLength=0,this.bCnt=0,this.iCnt=0}};var fD=function(e,t){this.isReinforcement=!1,this.trNumVertices=0,this.trNumTriangles=0,this.opNumVertices=0,this.opNumTriangles=0,this.edgesNumVertices=0,this.edgesNumLines=0,this.opBuffer=new K7,this.trBuffer=new K7,this.edgesBuffer=new K7,this.boundingBox=new iO,this.nodeId=e,this.divisionTopologyId=t,this.parsedVisualObjects={},fD.prototype.createBuffers=function(){this.opNumVertices>0&&this.opBuffer.createBuffer(this.opNumVertices,this.opNumTriangles),this.trNumVertices>0&&this.trBuffer.createBuffer(this.trNumVertices,this.trNumTriangles),this.edgesNumVertices>0&&(this.edgesBuffer.createLineBuffer(this.edgesNumVertices,this.edgesNumLines),this.edgesBuffer.bCnt=this.edgesNumVertices,this.edgesBuffer.iCnt=this.edgesNumLines)},fD.prototype.createDisciplineNode=function(){var n=ee(ge().mark(function i(s,c,u){var m,v,M,w,P;return ge().wrap(function(q){for(;;)switch(q.prev=q.next){case 0:if(v={id:this.nodeId,revision:u,divisionTopologyId:this.divisionTopologyId,visible:!0},M=c.asLegacyDiscipline(),s.getGeometryNodes().initNode(s,v,M),(w=s.getDisciplineNode(v,c)).bufferLength=12*(this.opBuffer.bufferLength+this.trBuffer.bufferLength),w.revision=u,!(P=s.getDisciplineNodeStore())){q.next=16;break}return q.prev=8,q.next=11,P.writeData(w,this.opBuffer,this.trBuffer,this.edgesBuffer,this.boundingBox,this.parsedVisualObjects);case 11:q.next=16;break;case 13:q.prev=13,q.t0=q.catch(8),console.error("Failed to write geometry to discipline node store due to: "+q.t0);case 16:return((m=s.getTopologyLeafNode(this.nodeId))===null||m===void 0?void 0:m.node).isVisible()===!0&&c.isVisible()===!0||!P?s.createDisciplineNodeMeshes(w,this.opBuffer,this.trBuffer,this.edgesBuffer):w.setGeometryLoaded(!1),w.boundingBox=new si(new Ee(this.boundingBox.minX,this.boundingBox.minY,this.boundingBox.minZ),new Ee(this.boundingBox.maxX,this.boundingBox.maxY,this.boundingBox.maxZ)),q.abrupt("return",w);case 20:case"end":return q.stop()}},i,this,[[8,13]])}));return function(i,s,c){return n.apply(this,arguments)}}(),fD.prototype.dumpInfo=function(){console.log("Building disciplineNode nodeId=".concat(this.nodeId,":")),console.log("Object Count: ".concat(this.parsedVisualObjects.length)),console.log("trNumVertices: ".concat(this.trNumVertices)),console.log("trNumTriangles: ".concat(this.trNumTriangles)),console.log("opNumVertices: ".concat(this.opNumVertices)),console.log("opNumTriangles: ".concat(this.opNumTriangles)),console.log("Boundingbox min (".concat(this.boundingBox.minX," | ").concat(this.boundingBox.minY," | ").concat(this.boundingBox.minZ,")")),console.log("Boundingbox max (".concat(this.boundingBox.maxX," | ").concat(this.boundingBox.maxY," | ").concat(this.boundingBox.maxZ,")"))},fD.prototype.dispose=function(){this.opBuffer.clearBuffer(),this.opBuffer=null,this.trBuffer.clearBuffer(),this.trBuffer=null,this.edgesBuffer.clearBuffer(),this.edgesBuffer=null}};let tU=fD;var J7,sse=(J7=typeof document<"u"&&document.currentScript?document.currentScript.src:void 0,function(e={}){var t,n,i=e;i.ready=new Promise((Cn,$n)=>{t=Cn,n=$n});var s,c=Object.assign({},i),u="";u=self.location.href,J7&&(u=J7),u=u.indexOf("blob:")!==0?u.substr(0,u.replace(/[?#].*/,"").lastIndexOf("/")+1):"",s=Cn=>{var $n=new XMLHttpRequest;return $n.open("GET",Cn,!1),$n.responseType="arraybuffer",$n.send(null),new Uint8Array($n.response)},i.print||console.log.bind(console);var m,v,M=i.printErr||console.error.bind(console);Object.assign(i,c),c=null,i.arguments&&i.arguments,i.thisProgram&&i.thisProgram,i.quit&&i.quit,i.wasmBinary&&(m=i.wasmBinary),typeof WebAssembly!="object"&&Ne("no native wasm support detected");var w,P,q=!1;function Z(){var Cn=v.buffer;i.HEAP8=w=new Int8Array(Cn),i.HEAP16=new Int16Array(Cn),i.HEAPU8=P=new Uint8Array(Cn),i.HEAPU16=new Uint16Array(Cn),i.HEAP32=new Int32Array(Cn),i.HEAPU32=new Uint32Array(Cn),i.HEAPF32=new Float32Array(Cn),i.HEAPF64=new Float64Array(Cn)}var K=[],he=[],le=[],pe=0,Ie=null,Ce=null;function Ne(Cn){i.onAbort&&i.onAbort(Cn),M(Cn="Aborted("+Cn+")"),q=!0,Cn+=". Build with -sASSERTIONS for more info.";var $n=new WebAssembly.RuntimeError(Cn);throw n($n),$n}var Ge,Fe,Pe="data:application/octet-stream;base64,",Ve=Cn=>Cn.startsWith(Pe);function ot(Cn){if(Cn==Ge&&m)return new Uint8Array(m);var $n=function(en){if(Ve(en))return function(gt){for(var Rt=atob(gt),Xt=new Uint8Array(Rt.length),qt=0;qt<Rt.length;++qt)Xt[qt]=Rt.charCodeAt(qt);return Xt}(en.slice(37))}(Cn);if($n)return $n;if(s)return s(Cn);throw"both async and sync fetching of the wasm failed"}function Ct(Cn,$n,en){return function(gt){return Promise.resolve().then(()=>ot(gt))}(Cn).then(gt=>WebAssembly.instantiate(gt,$n)).then(gt=>gt).then(en,gt=>{M(`failed to asynchronously prepare wasm: ${gt}`),Ne(gt)})}Ve(Ge="data:application/octet-stream;base64,AGFzbQEAAAABJgdgAX8Bf2ABfAF8YAF/AGAAAGAAAX9gBn9/f39/fwBgBH9/f38AAgcBAWEBYQAAAw0MAAEDAQEAAgQFAgAGBAUBcAEBAQUHAQGACICAAgYIAX8BQYCNBAsHKQoBYgIAAWMAAwFkAAwBZQAJAWYACwFnAAoBaAAIAWkABwFqAAYBawEACphPDE8BAn9BgAkoAgAiASAAQQdqQXhxIgJqIQACQCACQQAgACABTRsNACAAPwBBEHRLBEAgABAARQ0BC0GACSAANgIAIAEPC0GECUEwNgIAQX8LjQEAIAAgACAAIAAgAEQJ9/0N4T0CP6JEiLIBdeDvST+gokQ7j2i1KIKkv6CiRFVEiA5Vwck/oKJEfW/rAxLW1L+gokRVVVVVVVXFP6AgAKIgACAAIAAgAESCki6xxbizP6JEWQGNG2wG5r+gokTIilmc5SoAQKCiREstihwnOgPAoKJEAAAAAAAA8D+gowsCAAusAQMBfAF+AX8gAL0iAkI0iKdB/w9xIgNBsghNBHwgA0H9B00EQCAARAAAAAAAAAAAog8LAnwgACAAmiACQgBZGyIARAAAAAAAADBDoEQAAAAAAAAww6AgAKEiAUQAAAAAAADgP2QEQCAAIAGgRAAAAAAAAPC/oAwBCyAAIAGgIgAgAUQAAAAAAADgv2VFDQAaIABEAAAAAAAA8D+gCyIAIACaIAJCAFkbBSAACwv7AwMDfAN/AX4gAL0iB0IgiKdB/////wdxIgRBgIDAoARPBEAgAEQYLURU+yH5PyAApiAHQv///////////wCDQoCAgICAgID4/wBWGw8LAkACfyAEQf//7/4DTQRAQX8gBEGAgIDyA08NARoMAgsgAJkhACAEQf//y/8DTQRAIARB//+X/wNNBEAgACAAoEQAAAAAAADwv6AgAEQAAAAAAAAAQKCjIQBBAAwCCyAARAAAAAAAAPC/oCAARAAAAAAAAPA/oKMhAEEBDAELIARB//+NgARNBEAgAEQAAAAAAAD4v6AgAEQAAAAAAAD4P6JEAAAAAAAA8D+goyEAQQIMAQtEAAAAAAAA8L8gAKMhAEEDCyEGIAAgAKIiAiACoiIBIAEgASABIAFEL2xqLES0or+iRJr93lIt3q2/oKJEbZp0r/Kws7+gokRxFiP+xnG8v6CiRMTrmJmZmcm/oKIhAyACIAEgASABIAEgAUQR2iLjOq2QP6JE6w12JEt7qT+gokRRPdCgZg2xP6CiRG4gTMXNRbc/oKJE/4MAkiRJwj+gokQNVVVVVVXVP6CiIQEgBEH//+/+A00EQCAAIAAgAyABoKKhDwsgBkEDdCIEQYAIaisDACAAIAMgAaCiIARBoAhqKwMAoSAAoaEiAJogACAHQgBTGyEACyAACxAAIwAgAGtBcHEiACQAIAALBgAgACQACwQAIwAL6BAECn8dfAl9AX4gAEEASgRAA0AgAiAIQQJ0aigCACEKIAEgCEEGdGoiBioCILsiEyAGKgIYuyIXIAYqAgS7IhiiIAYqAgi7IhkgBioCFLsiGqKhIhGiIAYqAgC7IhQgBioCKLsiGyAaoiAXIAYqAiS7IhyioSISoiAcIBmiIBggG6KhIhUgBioCELsiFqKgoCIQmUQAAAAAAACwPGNFBEAgGiAUoiAYIBaioUQAAAAAAADwPyAQoyIQoiEiIBwgFqIgGiAToqEgEKIhIyATIBeiIBYgG5qioCAQoiEkIBEgEKIhJSAVIBCiISYgEiAQoiEnIBYgGaIgFCAXoqEgEKIhKCATIBiiIBQgHJqioCAQoiEpIBsgFKIgGSAToqEgEKIhHwtBACELQ///f38hMkP//3//ITMCQCAKQQBMBEBD//9//yEuQ///f/8hL0P//39/ITBD//9/fyExDAELIAYqAji7ISogBioCNLshKyAGKgIwuyEsQ///f/8hLkP//3//IS9D//9/fyEwQ///f38hMQNAICggAyALIAxqIg1BGGxqIgYqAhS7IhGiICQgBioCDLsiIKIgHyAGKgIQuyIhoqCgIRAgIiARoiAjICCiICkgIaKgoCESIAYqAgC7IRUgBioCCLshHSAGKgIEuyEeAnwCQCAlIBGiICcgIKIgJiAhoqCgIhGZRAAAAAAAALA8Y0UNACASmUQAAAAAAACwPGNFDQBEGC1EVPshCcBEAAAAAAAAAIAgEr0iNkIAUxsgEb1CAFMNARpEGC1EVPshCUBEAAAAAAAAAAAgNkIAUxsMAQsCfAJAIBK9Qv///////////wCDQoCAgICAgID4/wBYBEAgEb1C////////////AINCgYCAgICAgPj/AFQNAQsgESASoAwBCyASvSI2QiCIpyIHQYCAwP8DayA2pyIOckUEQCAREAUMAQsgB0EedkECcSIPIBG9IjZCP4inciEGAkAgNkIgiKdB/////wdxIgkgNqdyRQRAAkACQCAGQQJrDgIAAQMLRBgtRFT7IQlADAMLRBgtRFT7IQnADAILRBgtRFT7Ifk/IBGmIAdB/////wdxIgcgDnJFDQEaAkAgB0GAgMD/B0YEQCAJQYCAwP8HRw0BIAZBA3RBwAhqKwMADAMLRBgtRFT7Ifk/IBGmIAlBgIDA/wdHIAdBgICAIGogCU9xRQ0CGgJ8IA8EQEQAAAAAAAAAACAJQYCAgCBqIAdJDQEaCyARIBKjmRAFCyERAkACQAJAIAYOAwQAAQILIBGaDAQLRBgtRFT7IQlAIBFEB1wUMyamobygoQwDCyARRAdcFDMmpqG8oEQYLURU+yEJwKAMAgsgBkEDdEHgCGorAwAhEQsgEQsLIRICfCAQvUL///////////8Ag0KAgICAgICA+P8AWAR8IBBEAAAAAAAA8L+lBUQAAAAAAADwvwtEAAAAAAAA8D+kIhC9IjZCIIinQf////8HcSIGQYCAwP8DTwRARAAAAAAAAAAARBgtRFT7IQlAIDZCAFkbIDanIAZBgIDA/wNrckUNARpEAAAAAAAAAAAgECAQoaMMAQsCfCAGQf////4DTQRARBgtRFT7Ifk/IAZBgYCA4wNJDQEaRAdcFDMmppE8IBAgECAQohACoqEgEKFEGC1EVPsh+T+gDAILIDZCAFMEQEQYLURU+yH5PyAQRAAAAAAAAPA/oEQAAAAAAADgP6IiEJ8iESARIBAQAqJEB1wUMyamkbygoKEiECAQoAwCC0QAAAAAAADwPyAQoUQAAAAAAADgP6IiEJ8iESAQEAKiIBAgEb1CgICAgHCDvyIQIBCioSARIBCgo6AgEKAiECAQoAsLIRAgBCANQQR0aiIGIBwgHaIgGCAVoiAaIB6ioKAgK6C2IjQ4AgQgBiATIB2iIBQgFaIgFiAeoqCgICygtiI1OAIAIAYgGyAdoiAZIBWiIBcgHqKgoCAqoLYiLTgCCCAGIBJEGC1EVPshGUCjRAAAAAAAAOA/oEQAAAAAAP6vQKIQBEQAAAAAAACwQKIgEL1C////////////AINCgICAgICAgPj/AFgEfCAQRBJwDM76IQlApAVEEnAMzvohCUALRI3ttaD3xrA+pUQYLURU+yEJQKNEAAAAAAD+r0CiEASgtjgCDCAzvEH/////B3FBgICA/AdNBH0gMyAtIDOXIC28Qf////8HcUGAgID8B0sbBSAtCyEzIDG8Qf////8HcUGAgID8B00EfSAxIC0gMZYgLbxB/////wdxQYCAgPwHSxsFIC0LITEgNCEtIC68Qf////8HcUGAgID8B00EfSAuIC0gLpcgLbxB/////wdxQYCAgPwHSxsFIC0LIS4gMLxB/////wdxQYCAgPwHTQR9IDAgLSAwliAtvEH/////B3FBgICA/AdLGwUgLQshMCA1IS0gL7xB/////wdxQYCAgPwHTQR9IC8gLSAvlyAtvEH/////B3FBgICA/AdLGwUgLQshLyAyvEH/////B3FBgICA/AdNBH0gMiAtIDKWIC28Qf////8HcUGAgID8B0sbBSAtCyEyIAtBAWoiCyAKRw0ACwsgBSAIQeAAbGoiBiAyOAIAIAYgMDgCBCAGIDE4AgggBiAvOAIMIAYgMDgCECAGIDE4AhQgBiAyOAIYIAYgLjgCHCAGIDE4AlwgBiAuOAJYIAYgLzgCVCAGIDM4AlAgBiAwOAJMIAYgLzgCSCAGIDM4AkQgBkFAayAuOAIAIAYgMjgCPCAGIDM4AjggBiAuOAI0IAYgLzgCMCAGIDM4AiwgBiAwOAIoIAYgMjgCJCAGIDE4AiAgCiAMaiEMIAhBAWoiCCAARw0ACwsL0gsBB38CQCAARQ0AIABBCGsiAiAAQQRrKAIAIgFBeHEiAGohBQJAIAFBAXENACABQQNxRQ0BIAIgAigCACIBayICQZgJKAIASQ0BIAAgAWohAAJAAkBBnAkoAgAgAkcEQCABQf8BTQRAIAFBA3YhBCACKAIMIgEgAigCCCIDRgRAQYgJQYgJKAIAQX4gBHdxNgIADAULIAMgATYCDCABIAM2AggMBAsgAigCGCEGIAIgAigCDCIBRwRAIAIoAggiAyABNgIMIAEgAzYCCAwDCyACQRRqIgQoAgAiA0UEQCACKAIQIgNFDQIgAkEQaiEECwNAIAQhByADIgFBFGoiBCgCACIDDQAgAUEQaiEEIAEoAhAiAw0ACyAHQQA2AgAMAgsgBSgCBCIBQQNxQQNHDQJBkAkgADYCACAFIAFBfnE2AgQgAiAAQQFyNgIEIAUgADYCAA8LQQAhAQsgBkUNAAJAIAIoAhwiA0ECdEG4C2oiBCgCACACRgRAIAQgATYCACABDQFBjAlBjAkoAgBBfiADd3E2AgAMAgsgBkEQQRQgBigCECACRhtqIAE2AgAgAUUNAQsgASAGNgIYIAIoAhAiAwRAIAEgAzYCECADIAE2AhgLIAIoAhQiA0UNACABIAM2AhQgAyABNgIYCyACIAVPDQAgBSgCBCIBQQFxRQ0AAkACQAJAAkAgAUECcUUEQEGgCSgCACAFRgRAQaAJIAI2AgBBlAlBlAkoAgAgAGoiADYCACACIABBAXI2AgQgAkGcCSgCAEcNBkGQCUEANgIAQZwJQQA2AgAPC0GcCSgCACAFRgRAQZwJIAI2AgBBkAlBkAkoAgAgAGoiADYCACACIABBAXI2AgQgACACaiAANgIADwsgAUF4cSAAaiEAIAFB/wFNBEAgAUEDdiEEIAUoAgwiASAFKAIIIgNGBEBBiAlBiAkoAgBBfiAEd3E2AgAMBQsgAyABNgIMIAEgAzYCCAwECyAFKAIYIQYgBSAFKAIMIgFHBEBBmAkoAgAaIAUoAggiAyABNgIMIAEgAzYCCAwDCyAFQRRqIgQoAgAiA0UEQCAFKAIQIgNFDQIgBUEQaiEECwNAIAQhByADIgFBFGoiBCgCACIDDQAgAUEQaiEEIAEoAhAiAw0ACyAHQQA2AgAMAgsgBSABQX5xNgIEIAIgAEEBcjYCBCAAIAJqIAA2AgAMAwtBACEBCyAGRQ0AAkAgBSgCHCIDQQJ0QbgLaiIEKAIAIAVGBEAgBCABNgIAIAENAUGMCUGMCSgCAEF+IAN3cTYCAAwCCyAGQRBBFCAGKAIQIAVGG2ogATYCACABRQ0BCyABIAY2AhggBSgCECIDBEAgASADNgIQIAMgATYCGAsgBSgCFCIDRQ0AIAEgAzYCFCADIAE2AhgLIAIgAEEBcjYCBCAAIAJqIAA2AgAgAkGcCSgCAEcNAEGQCSAANgIADwsgAEH/AU0EQCAAQXhxQbAJaiEBAn9BiAkoAgAiA0EBIABBA3Z0IgBxRQRAQYgJIAAgA3I2AgAgAQwBCyABKAIICyEAIAEgAjYCCCAAIAI2AgwgAiABNgIMIAIgADYCCA8LQR8hAyAAQf///wdNBEAgAEEmIABBCHZnIgFrdkEBcSABQQF0a0E+aiEDCyACIAM2AhwgAkIANwIQIANBAnRBuAtqIQECQAJAAkBBjAkoAgAiBEEBIAN0IgdxRQRAQYwJIAQgB3I2AgAgASACNgIAIAIgATYCGAwBCyAAQRkgA0EBdmtBACADQR9HG3QhAyABKAIAIQEDQCABIgQoAgRBeHEgAEYNAiADQR12IQEgA0EBdCEDIAQgAUEEcWoiB0EQaigCACIBDQALIAcgAjYCECACIAQ2AhgLIAIgAjYCDCACIAI2AggMAQsgBCgCCCIAIAI2AgwgBCACNgIIIAJBADYCGCACIAQ2AgwgAiAANgIIC0GoCUGoCSgCAEEBayIAQX8gABs2AgALC8YnAQx/IwBBEGsiCiQAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAQfQBTQRAQYgJKAIAIgZBECAAQQtqQXhxIABBC0kbIgVBA3YiAHYiAUEDcQRAAkAgAUF/c0EBcSAAaiICQQN0IgFBsAlqIgAgAUG4CWooAgAiASgCCCIERgRAQYgJIAZBfiACd3E2AgAMAQsgBCAANgIMIAAgBDYCCAsgAUEIaiEAIAEgAkEDdCICQQNyNgIEIAEgAmoiASABKAIEQQFyNgIEDA8LIAVBkAkoAgAiB00NASABBEACQEECIAB0IgJBACACa3IgASAAdHFoIgFBA3QiAEGwCWoiAiAAQbgJaigCACIAKAIIIgRGBEBBiAkgBkF+IAF3cSIGNgIADAELIAQgAjYCDCACIAQ2AggLIAAgBUEDcjYCBCAAIAVqIgggAUEDdCIBIAVrIgRBAXI2AgQgACABaiAENgIAIAcEQCAHQXhxQbAJaiEBQZwJKAIAIQICfyAGQQEgB0EDdnQiA3FFBEBBiAkgAyAGcjYCACABDAELIAEoAggLIQMgASACNgIIIAMgAjYCDCACIAE2AgwgAiADNgIICyAAQQhqIQBBnAkgCDYCAEGQCSAENgIADA8LQYwJKAIAIgtFDQEgC2hBAnRBuAtqKAIAIgIoAgRBeHEgBWshAyACIQEDQAJAIAEoAhAiAEUEQCABKAIUIgBFDQELIAAoAgRBeHEgBWsiASADIAEgA0kiARshAyAAIAIgARshAiAAIQEMAQsLIAIoAhghCSACIAIoAgwiBEcEQEGYCSgCABogAigCCCIAIAQ2AgwgBCAANgIIDA4LIAJBFGoiASgCACIARQRAIAIoAhAiAEUNAyACQRBqIQELA0AgASEIIAAiBEEUaiIBKAIAIgANACAEQRBqIQEgBCgCECIADQALIAhBADYCAAwNC0F/IQUgAEG/f0sNACAAQQtqIgBBeHEhBUGMCSgCACIIRQ0AQQAgBWshAwJAAkACQAJ/QQAgBUGAAkkNABpBHyAFQf///wdLDQAaIAVBJiAAQQh2ZyIAa3ZBAXEgAEEBdGtBPmoLIgdBAnRBuAtqKAIAIgFFBEBBACEADAELQQAhACAFQRkgB0EBdmtBACAHQR9HG3QhAgNAAkAgASgCBEF4cSAFayIGIANPDQAgASEEIAYiAw0AQQAhAyABIQAMAwsgACABKAIUIgYgBiABIAJBHXZBBHFqKAIQIgFGGyAAIAYbIQAgAkEBdCECIAENAAsLIAAgBHJFBEBBACEEQQIgB3QiAEEAIABrciAIcSIARQ0DIABoQQJ0QbgLaigCACEACyAARQ0BCwNAIAAoAgRBeHEgBWsiAiADSSEBIAIgAyABGyEDIAAgBCABGyEEIAAoAhAiAQR/IAEFIAAoAhQLIgANAAsLIARFDQAgA0GQCSgCACAFa08NACAEKAIYIQcgBCAEKAIMIgJHBEBBmAkoAgAaIAQoAggiACACNgIMIAIgADYCCAwMCyAEQRRqIgEoAgAiAEUEQCAEKAIQIgBFDQMgBEEQaiEBCwNAIAEhBiAAIgJBFGoiASgCACIADQAgAkEQaiEBIAIoAhAiAA0ACyAGQQA2AgAMCwsgBUGQCSgCACIETQRAQZwJKAIAIQACQCAEIAVrIgFBEE8EQCAAIAVqIgIgAUEBcjYCBCAAIARqIAE2AgAgACAFQQNyNgIEDAELIAAgBEEDcjYCBCAAIARqIgEgASgCBEEBcjYCBEEAIQJBACEBC0GQCSABNgIAQZwJIAI2AgAgAEEIaiEADA0LIAVBlAkoAgAiAkkEQEGUCSACIAVrIgE2AgBBoAlBoAkoAgAiACAFaiICNgIAIAIgAUEBcjYCBCAAIAVBA3I2AgQgAEEIaiEADA0LQQAhACAFQS9qIgMCf0HgDCgCAARAQegMKAIADAELQewMQn83AgBB5AxCgKCAgICABDcCAEHgDCAKQQxqQXBxQdiq1aoFczYCAEH0DEEANgIAQcQMQQA2AgBBgCALIgFqIgZBACABayIIcSIBIAVNDQxBwAwoAgAiBARAQbgMKAIAIgcgAWoiCSAHTQ0NIAQgCUkNDQsCQEHEDC0AAEEEcUUEQAJAAkACQAJAQaAJKAIAIgQEQEHIDCEAA0AgBCAAKAIAIgdPBEAgByAAKAIEaiAESw0DCyAAKAIIIgANAAsLQQAQASICQX9GDQMgASEGQeQMKAIAIgBBAWsiBCACcQRAIAEgAmsgAiAEakEAIABrcWohBgsgBSAGTw0DQcAMKAIAIgAEQEG4DCgCACIEIAZqIgggBE0NBCAAIAhJDQQLIAYQASIAIAJHDQEMBQsgBiACayAIcSIGEAEiAiAAKAIAIAAoAgRqRg0BIAIhAAsgAEF/Rg0BIAVBMGogBk0EQCAAIQIMBAtB6AwoAgAiAiADIAZrakEAIAJrcSICEAFBf0YNASACIAZqIQYgACECDAMLIAJBf0cNAgtBxAxBxAwoAgBBBHI2AgALIAEQASECQQAQASEAIAJBf0YNBSAAQX9GDQUgACACTQ0FIAAgAmsiBiAFQShqTQ0FC0G4DEG4DCgCACAGaiIANgIAQbwMKAIAIABJBEBBvAwgADYCAAsCQEGgCSgCACIDBEBByAwhAANAIAIgACgCACIBIAAoAgQiBGpGDQIgACgCCCIADQALDAQLQZgJKAIAIgBBACAAIAJNG0UEQEGYCSACNgIAC0EAIQBBzAwgBjYCAEHIDCACNgIAQagJQX82AgBBrAlB4AwoAgA2AgBB1AxBADYCAANAIABBA3QiAUG4CWogAUGwCWoiBDYCACABQbwJaiAENgIAIABBAWoiAEEgRw0AC0GUCSAGQShrIgBBeCACa0EHcSIBayIENgIAQaAJIAEgAmoiATYCACABIARBAXI2AgQgACACakEoNgIEQaQJQfAMKAIANgIADAQLIAIgA00NAiABIANLDQIgACgCDEEIcQ0CIAAgBCAGajYCBEGgCSADQXggA2tBB3EiAGoiATYCAEGUCUGUCSgCACAGaiICIABrIgA2AgAgASAAQQFyNgIEIAIgA2pBKDYCBEGkCUHwDCgCADYCAAwDC0EAIQQMCgtBACECDAgLQZgJKAIAIAJLBEBBmAkgAjYCAAsgAiAGaiEBQcgMIQACQAJAAkADQCABIAAoAgBHBEAgACgCCCIADQEMAgsLIAAtAAxBCHFFDQELQcgMIQADQCADIAAoAgAiAU8EQCABIAAoAgRqIgQgA0sNAwsgACgCCCEADAALAAsgACACNgIAIAAgACgCBCAGajYCBCACQXggAmtBB3FqIgcgBUEDcjYCBCABQXggAWtBB3FqIgYgBSAHaiIFayEAIAMgBkYEQEGgCSAFNgIAQZQJQZQJKAIAIABqIgA2AgAgBSAAQQFyNgIEDAgLQZwJKAIAIAZGBEBBnAkgBTYCAEGQCUGQCSgCACAAaiIANgIAIAUgAEEBcjYCBCAAIAVqIAA2AgAMCAsgBigCBCIDQQNxQQFHDQYgA0F4cSEJIANB/wFNBEAgBigCDCIBIAYoAggiAkYEQEGICUGICSgCAEF+IANBA3Z3cTYCAAwHCyACIAE2AgwgASACNgIIDAYLIAYoAhghCCAGIAYoAgwiAkcEQCAGKAIIIgEgAjYCDCACIAE2AggMBQsgBkEUaiIBKAIAIgNFBEAgBigCECIDRQ0EIAZBEGohAQsDQCABIQQgAyICQRRqIgEoAgAiAw0AIAJBEGohASACKAIQIgMNAAsgBEEANgIADAQLQZQJIAZBKGsiAEF4IAJrQQdxIgFrIgg2AgBBoAkgASACaiIBNgIAIAEgCEEBcjYCBCAAIAJqQSg2AgRBpAlB8AwoAgA2AgAgAyAEQScgBGtBB3FqQS9rIgAgACADQRBqSRsiAUEbNgIEIAFB0AwpAgA3AhAgAUHIDCkCADcCCEHQDCABQQhqNgIAQcwMIAY2AgBByAwgAjYCAEHUDEEANgIAIAFBGGohAANAIABBBzYCBCAAQQhqIQwgAEEEaiEAIAwgBEkNAAsgASADRg0AIAEgASgCBEF+cTYCBCADIAEgA2siAkEBcjYCBCABIAI2AgAgAkH/AU0EQCACQXhxQbAJaiEAAn9BiAkoAgAiAUEBIAJBA3Z0IgJxRQRAQYgJIAEgAnI2AgAgAAwBCyAAKAIICyEBIAAgAzYCCCABIAM2AgwgAyAANgIMIAMgATYCCAwBC0EfIQAgAkH///8HTQRAIAJBJiACQQh2ZyIAa3ZBAXEgAEEBdGtBPmohAAsgAyAANgIcIANCADcCECAAQQJ0QbgLaiEBAkACQEGMCSgCACIEQQEgAHQiBnFFBEBBjAkgBCAGcjYCACABIAM2AgAMAQsgAkEZIABBAXZrQQAgAEEfRxt0IQAgASgCACEEA0AgBCIBKAIEQXhxIAJGDQIgAEEddiEEIABBAXQhACABIARBBHFqIgYoAhAiBA0ACyAGIAM2AhALIAMgATYCGCADIAM2AgwgAyADNgIIDAELIAEoAggiACADNgIMIAEgAzYCCCADQQA2AhggAyABNgIMIAMgADYCCAtBlAkoAgAiACAFTQ0AQZQJIAAgBWsiATYCAEGgCUGgCSgCACIAIAVqIgI2AgAgAiABQQFyNgIEIAAgBUEDcjYCBCAAQQhqIQAMCAtBhAlBMDYCAEEAIQAMBwtBACECCyAIRQ0AAkAgBigCHCIBQQJ0QbgLaiIEKAIAIAZGBEAgBCACNgIAIAINAUGMCUGMCSgCAEF+IAF3cTYCAAwCCyAIQRBBFCAIKAIQIAZGG2ogAjYCACACRQ0BCyACIAg2AhggBigCECIBBEAgAiABNgIQIAEgAjYCGAsgBigCFCIBRQ0AIAIgATYCFCABIAI2AhgLIAAgCWohACAGIAlqIgYoAgQhAwsgBiADQX5xNgIEIAUgAEEBcjYCBCAAIAVqIAA2AgAgAEH/AU0EQCAAQXhxQbAJaiEBAn9BiAkoAgAiAkEBIABBA3Z0IgBxRQRAQYgJIAAgAnI2AgAgAQwBCyABKAIICyEAIAEgBTYCCCAAIAU2AgwgBSABNgIMIAUgADYCCAwBC0EfIQMgAEH///8HTQRAIABBJiAAQQh2ZyIBa3ZBAXEgAUEBdGtBPmohAwsgBSADNgIcIAVCADcCECADQQJ0QbgLaiEBAkACQEGMCSgCACICQQEgA3QiBHFFBEBBjAkgAiAEcjYCACABIAU2AgAMAQsgAEEZIANBAXZrQQAgA0EfRxt0IQMgASgCACECA0AgAiIBKAIEQXhxIABGDQIgA0EddiECIANBAXQhAyABIAJBBHFqIgQoAhAiAg0ACyAEIAU2AhALIAUgATYCGCAFIAU2AgwgBSAFNgIIDAELIAEoAggiACAFNgIMIAEgBTYCCCAFQQA2AhggBSABNgIMIAUgADYCCAsgB0EIaiEADAILAkAgB0UNAAJAIAQoAhwiAEECdEG4C2oiASgCACAERgRAIAEgAjYCACACDQFBjAkgCEF+IAB3cSIINgIADAILIAdBEEEUIAcoAhAgBEYbaiACNgIAIAJFDQELIAIgBzYCGCAEKAIQIgAEQCACIAA2AhAgACACNgIYCyAEKAIUIgBFDQAgAiAANgIUIAAgAjYCGAsCQCADQQ9NBEAgBCADIAVqIgBBA3I2AgQgACAEaiIAIAAoAgRBAXI2AgQMAQsgBCAFQQNyNgIEIAQgBWoiAiADQQFyNgIEIAIgA2ogAzYCACADQf8BTQRAIANBeHFBsAlqIQACf0GICSgCACIBQQEgA0EDdnQiA3FFBEBBiAkgASADcjYCACAADAELIAAoAggLIQEgACACNgIIIAEgAjYCDCACIAA2AgwgAiABNgIIDAELQR8hACADQf///wdNBEAgA0EmIANBCHZnIgBrdkEBcSAAQQF0a0E+aiEACyACIAA2AhwgAkIANwIQIABBAnRBuAtqIQECQAJAIAhBASAAdCIGcUUEQEGMCSAGIAhyNgIAIAEgAjYCAAwBCyADQRkgAEEBdmtBACAAQR9HG3QhACABKAIAIQUDQCAFIgEoAgRBeHEgA0YNAiAAQR12IQYgAEEBdCEAIAEgBkEEcWoiBigCECIFDQALIAYgAjYCEAsgAiABNgIYIAIgAjYCDCACIAI2AggMAQsgASgCCCIAIAI2AgwgASACNgIIIAJBADYCGCACIAE2AgwgAiAANgIICyAEQQhqIQAMAQsCQCAJRQ0AAkAgAigCHCIAQQJ0QbgLaiIBKAIAIAJGBEAgASAENgIAIAQNAUGMCSALQX4gAHdxNgIADAILIAlBEEEUIAkoAhAgAkYbaiAENgIAIARFDQELIAQgCTYCGCACKAIQIgAEQCAEIAA2AhAgACAENgIYCyACKAIUIgBFDQAgBCAANgIUIAAgBDYCGAsCQCADQQ9NBEAgAiADIAVqIgBBA3I2AgQgACACaiIAIAAoAgRBAXI2AgQMAQsgAiAFQQNyNgIEIAIgBWoiBCADQQFyNgIEIAMgBGogAzYCACAHBEAgB0F4cUGwCWohAEGcCSgCACEBAn9BASAHQQN2dCIFIAZxRQRAQYgJIAUgBnI2AgAgAAwBCyAAKAIICyEGIAAgATYCCCAGIAE2AgwgASAANgIMIAEgBjYCCAtBnAkgBDYCAEGQCSADNgIACyACQQhqIQALIApBEGokACAAC+UDAgV/FXwgAEEASgRAA0AgAiAFQQJ0aigCACEHIAEgBUEGdGoiBCoCILsiDyAEKgIYuyIMIAQqAgS7IhOiIAQqAgi7Ig0gBCoCFLsiFKKhIgqiIAQqAgC7IhAgBCoCKLsiDiAUoiAMIAQqAiS7IhWioSILoiAVIA2iIBMgDqKhIhEgBCoCELsiEqKgoCIJmUQAAAAAAACwPGNFBEAgEiANoiAQIAyioUQAAAAAAADwPyAJoyIJoiEXIA8gDKIgEiAOmqKgIAmiIRggCiAJoiEZIBEgCaIhGiALIAmiIRsgDiAQoiANIA+ioSAJoiEWC0EAIQggB0EASgRAIAQqAji7IREgBCoCNLshHCAEKgIwuyEdA0AgAyAGIAhqQRhsaiIEQRBqIBcgBCoCFLsiCaIgGCAEKgIMuyIKoiAWIAQqAhC7IguioKC2OAIAIAQgGSAJoiAbIAqiIBogC6KgoLY4AgwgBCAPIAQqAgi7IgmiIBAgBCoCALsiCqIgEiAEKgIEuyILoqCgIB2gtjgCACAEIBUgCaIgEyAKoiAUIAuioKAgHKC2OAIEIAQgDiAJoiANIAqiIAwgC6KgoCARoLY4AgggCEEBaiIIIAdHDQALCyAGIAdqIQYgBUEBaiIFIABHDQALCwsLhwEDAEGACAtgT7thBWes3T8YLURU+yHpP5v2gdILc+8/GC1EVPsh+T/iZS8ifyt6PAdcFDMmpoE8vcvweogHcDwHXBQzJqaRPBgtRFT7Iek/GC1EVPsh6b/SITN/fNkCQNIhM3982QLAAEHvCAsRgBgtRFT7IQlAGC1EVPshCcAAQYAJCwOABgE=")||(Fe=Ge,Ge=i.locateFile?i.locateFile(Fe,u):u+Fe);var Et,_t=Cn=>{for(;Cn.length>0;)Cn.shift()(i)},Zt=(i.noExitRuntime,Cn=>{var $n=(Cn-v.buffer.byteLength+65535)/65536;try{return v.grow($n),Z(),1}catch{}}),Pt=Cn=>{var $n=(gt=>{for(var Rt=0,Xt=0;Xt<gt.length;++Xt){var qt=gt.charCodeAt(Xt);qt<=127?Rt++:qt<=2047?Rt+=2:qt>=55296&&qt<=57343?(Rt+=4,++Xt):Rt+=3}return Rt})(Cn)+1,en=Bt($n);return((gt,Rt,Xt)=>{((qt,St,Nt,bt)=>{if(!(bt>0))return 0;for(var Vt=Nt+bt-1,pn=0;pn<qt.length;++pn){var Dn=qt.charCodeAt(pn);if(Dn>=55296&&Dn<=57343&&(Dn=65536+((1023&Dn)<<10)|1023&qt.charCodeAt(++pn)),Dn<=127){if(Nt>=Vt)break;St[Nt++]=Dn}else if(Dn<=2047){if(Nt+1>=Vt)break;St[Nt++]=192|Dn>>6,St[Nt++]=128|63&Dn}else if(Dn<=65535){if(Nt+2>=Vt)break;St[Nt++]=224|Dn>>12,St[Nt++]=128|Dn>>6&63,St[Nt++]=128|63&Dn}else{if(Nt+3>=Vt)break;St[Nt++]=240|Dn>>18,St[Nt++]=128|Dn>>12&63,St[Nt++]=128|Dn>>6&63,St[Nt++]=128|63&Dn}}St[Nt]=0})(gt,P,Rt,Xt)})(Cn,en,$n),en},sn=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0,On=(Cn,$n)=>Cn?((en,gt,Rt)=>{for(var Xt=gt+Rt,qt=gt;en[qt]&&!(qt>=Xt);)++qt;if(qt-gt>16&&en.buffer&&sn)return sn.decode(en.subarray(gt,qt));for(var St="";gt<qt;){var Nt=en[gt++];if(128&Nt){var bt=63&en[gt++];if((224&Nt)!=192){var Vt=63&en[gt++];if((Nt=(240&Nt)==224?(15&Nt)<<12|bt<<6|Vt:(7&Nt)<<18|bt<<12|Vt<<6|63&en[gt++])<65536)St+=String.fromCharCode(Nt);else{var pn=Nt-65536;St+=String.fromCharCode(55296|pn>>10,56320|1023&pn)}}else St+=String.fromCharCode((31&Nt)<<6|bt)}else St+=String.fromCharCode(Nt)}return St})(P,Cn,$n):"",kn={a:Cn=>{var $n=P.length,en=2147483648;if((Cn>>>=0)>en)return!1;for(var gt,Rt,Xt=1;Xt<=4;Xt*=2){var qt=$n*(1+.2/Xt);qt=Math.min(qt,Cn+100663296);var St=Math.min(en,(gt=Math.max(Cn,qt))+((Rt=65536)-gt%Rt)%Rt);if(Zt(St))return!0}return!1}},_n=function(){var Cn,$n,en,gt={a:kn};function Rt(Xt,qt){var St;return _n=Xt.exports,v=_n.b,Z(),St=_n.c,he.unshift(St),function(){if(pe--,i.monitorRunDependencies&&i.monitorRunDependencies(pe),pe==0&&(Ie!==null&&(clearInterval(Ie),Ie=null),Ce)){var Nt=Ce;Ce=null,Nt()}}(),_n}if(pe++,i.monitorRunDependencies&&i.monitorRunDependencies(pe),i.instantiateWasm)try{return i.instantiateWasm(gt,Rt)}catch(Xt){M(`Module.instantiateWasm callback failed with error: ${Xt}`),n(Xt)}return(Cn=Ge,$n=gt,en=function(Xt){Rt(Xt.instance)},Ct(Cn,$n,en)).catch(n),{}}(),Jn=(i._inplace_transform_vertices=(Cn,$n,en,gt)=>(i._inplace_transform_vertices=_n.d)(Cn,$n,en,gt),i._process_vertices=(Cn,$n,en,gt,Rt,Xt)=>(i._process_vertices=_n.e)(Cn,$n,en,gt,Rt,Xt),i._malloc=Cn=>(i._malloc=_n.f)(Cn),i._free=Cn=>(i._free=_n.g)(Cn),()=>(Jn=_n.h)()),Di=Cn=>(Di=_n.i)(Cn),Bt=Cn=>(Bt=_n.j)(Cn);function Sn(){function Cn(){Et||(Et=!0,i.calledRun=!0,q||(_t(he),t(i),i.onRuntimeInitialized&&i.onRuntimeInitialized(),function(){if(i.postRun)for(typeof i.postRun=="function"&&(i.postRun=[i.postRun]);i.postRun.length;)$n=i.postRun.shift(),le.unshift($n);var $n;_t(le)}()))}pe>0||(function(){if(i.preRun)for(typeof i.preRun=="function"&&(i.preRun=[i.preRun]);i.preRun.length;)$n=i.preRun.shift(),K.unshift($n);var $n;_t(K)}(),pe>0||(i.setStatus?(i.setStatus("Running..."),setTimeout(function(){setTimeout(function(){i.setStatus("")},1),Cn()},1)):Cn()))}if(i.ccall=(Cn,$n,en,gt,Rt)=>{var Xt={string:Dn=>{var bn=0;return Dn!=null&&Dn!==0&&(bn=Pt(Dn)),bn},array:Dn=>{var bn,Un,Wn=Bt(Dn.length);return bn=Dn,Un=Wn,w.set(bn,Un),Wn}},qt=(Dn=>i["_"+Dn])(Cn),St=[],Nt=0;if(gt)for(var bt=0;bt<gt.length;bt++){var Vt=Xt[en[bt]];Vt?(Nt===0&&(Nt=Jn()),St[bt]=Vt(gt[bt])):St[bt]=gt[bt]}var pn=qt.apply(null,St);return pn=function(Dn){return Nt!==0&&Di(Nt),function(bn){return $n==="string"?On(bn):$n==="boolean"?!!bn:bn}(Dn)}(pn)},Ce=function Cn(){Et||Sn(),Et||(Ce=Cn)},i.preInit)for(typeof i.preInit=="function"&&(i.preInit=[i.preInit]);i.preInit.length>0;)i.preInit.pop()();return Sn(),e.ready});let nU=sse;function zT(e,t){var n=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(v,M){if(v){if(typeof v=="string")return iU(v,M);var w={}.toString.call(v).slice(8,-1);return w==="Object"&&v.constructor&&(w=v.constructor.name),w==="Map"||w==="Set"?Array.from(v):w==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(w)?iU(v,M):void 0}}(e))||t&&e&&typeof e.length=="number"){n&&(e=n);var i=0,s=function(){};return{s,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(v){throw v},f:s}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
11422
11422
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var c,u=!0,m=!1;return{s:function(){n=n.call(e)},n:function(){var v=n.next();return u=v.done,v},e:function(v){m=!0,c=v},f:function(){try{u||n.return==null||n.return()}finally{if(m)throw c}}}}function iU(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=Array(t);n<t;n++)i[n]=e[n];return i}var rse=function(){return Si(function c(u){zi(this,c),this._viewport=u,this._project=null,this._webAssemblyModule=null,this._isInitialized=null},[{key:"initalize",value:(s=ee(ge().mark(function c(){return ge().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:if(this._isInitialized!==!0){u.next=2;break}return u.abrupt("return",!1);case 2:return u.next=4,new nU;case 4:return this._webAssemblyModule=u.sent,this._isInitialized=!0,u.abrupt("return",!0);case 7:case"end":return u.stop()}},c,this)})),function(){return s.apply(this,arguments)})},{key:"_createModelLayers",value:(i=ee(function(c,u){var m=!(arguments.length>2&&arguments[2]!==void 0)||arguments[2];return ge().mark(function v(){var M,w,P,q;return ge().wrap(function(Z){for(;;)switch(Z.prev=Z.next){case 0:M=0,w=Object.values(u);case 1:if(!(M<w.length)){Z.next=11;break}return P=w[M],(q=new X7(P.id,P.name))._revisions=[1],c.addLayer(q),Z.next=8,q.setVisible(m);case 8:M++,Z.next=1;break;case 11:case"end":return Z.stop()}},v)})()}),function(c,u){return i.apply(this,arguments)})},{key:"_loadModelGeometry",value:(n=ee(ge().mark(function c(u,m){var v,M=this;return ge().wrap(function(w){for(;;)switch(w.prev=w.next){case 0:return v=[],u.forEachTopologyLeafNode(function(P){u.forEachLayer(function(q){var Z=m.filter(function(K){return K.object.node===P.id&&K.object.discipline===q.id});Z.length!==0&&(console.log(Z),v.push(M.loadNodeGeometry(u,q,P,Z)),P.setLayerGeometryLoaded(q))}),P.objectsTreeLoaded=!0}),w.next=4,Promise.allSettled(v);case 4:case"end":return w.stop()}},c)})),function(c,u){return n.apply(this,arguments)})},{key:"runWorkerProcessVerticesWasmModule",value:(t=ee(ge().mark(function c(u,m,v){var M,w,P,q=this;return ge().wrap(function(Z){for(;;)switch(Z.prev=Z.next){case 0:return M={matrixArray:u,meshVertexCountArray:m,verticesComponentsArray:v,workerFunction:"applyAssemblyProcessVertices"},w=new Promise(function(K){var he;(he=q._project.viewports[0].glbProcessorWorkerQueue)===null||he===void 0||he.concurrentGlbProcessorWorkerQueue.push(M,function(le){K(le)})}),Z.next=4,w;case 4:return P=Z.sent,P={vertices:new Float32Array(P.vertices),boundingBoxes:new Float32Array(P.boundingBoxes)},Z.abrupt("return",P);case 7:case"end":return Z.stop()}},c)})),function(c,u,m){return t.apply(this,arguments)})},{key:"runProcessVerticesWasmModule",value:function(c,u,m,v){var M,w,P,q,Z,K=u.length/6,he=new Float32Array(4*K),le=new Float32Array(24*c),pe=0;M=pe,w=pe+=m.length*m.BYTES_PER_ELEMENT,P=pe+=v.length*v.BYTES_PER_ELEMENT,q=pe+=u.length*u.BYTES_PER_ELEMENT,Z=pe+=he.length*he.BYTES_PER_ELEMENT,pe+=le.length*le.BYTES_PER_ELEMENT;var Ie=this._webAssemblyModule._malloc(pe),Ce=new Uint8Array(this._webAssemblyModule.HEAPU8.buffer,Ie,pe);Ce.set(new Uint8Array(m.buffer),M),Ce.set(new Uint8Array(v.buffer),w),Ce.set(new Uint8Array(u.buffer),P);var Ne=Ce.byteOffset;this._webAssemblyModule.ccall("process_vertices","null",["number","number","number","number","number","number","number"],[c,Ne+M,Ne+w,Ne+P,Ne+q,Ne+Z]);for(var Ge=new Float32Array(Ce.buffer,Ne+q,he.length),Fe=0;Fe<he.length;Fe++)he[Fe]=Ge[Fe];for(var Pe=new Float32Array(Ce.buffer,Ne+Z,le.length),Ve=0;Ve<le.length;Ve++)le[Ve]=Pe[Ve];return this._webAssemblyModule._free(Ce.byteOffset),{vertices:he,boundingBoxes:le}}},{key:"_processObjectsVertices",value:function(c,u){var m,v=0,M=0,w=0,P=0,q=0,Z=zT(c);try{for(Z.s();!(m=Z.n()).done;){var K,he=zT(m.value.geometries);try{for(he.s();!(K=he.n()).done;){var le=K.value;q++;var pe=le.opaque,Ie=void 0,Ce=void 0,Ne=void 0,Ge=void 0;pe?(Ie=M,Ne=P,M+=le.vertices.length/6,P+=le.indices.length,Ce=M,Ge=P):(Ie=v,Ne=w,v+=le.vertices.length/6,w+=le.indices.length,Ce=v,Ge=w),le.startVertex=Ie,le.endVertex=Ce,le.startIndex=Ne,le.endIndex=Ge}}catch(Jn){he.e(Jn)}finally{he.f()}}}catch(Jn){Z.e(Jn)}finally{Z.f()}var Fe=new Float32Array(6*(v+M)),Pe=new Uint32Array(w+P),Ve=new Float32Array(16*q),ot=new Uint32Array(q);u.trNumVertices=v,u.trNumTriangles=w/3,u.opNumVertices=M,u.opNumTriangles=P/3,u.createBuffers();var Ct,Et=0,_t=0,Zt=0,Pt=0,sn=zT(c);try{for(sn.s();!(Ct=sn.n()).done;){var On,kn=zT(Ct.value.geometries);try{for(kn.s();!(On=kn.n()).done;){var _n=On.value;Fe.set(_n.vertices,Et),Et+=_n.vertices.length,Pe.set(_n.indices,_t),_t+=_n.indices.length,Ve.set(_n.matrix,Zt),Zt+=_n.matrix.length,ot.set([_n.vertices.length/6],Pt),Pt++}}catch(Jn){kn.e(Jn)}finally{kn.f()}}}catch(Jn){sn.e(Jn)}finally{sn.f()}return this.runProcessVerticesWasmModule(q,Fe,Ve,ot)}},{key:"_transferObjectGeometryBufferData",value:function(c,u,m,v){for(var M=c.opaque?u.opBuffer:u.trBuffer,w=c.startVertex,P=(c.endIndex-c.startIndex)/3,q=c.endVertex-c.startVertex,Z=0;Z<q;Z++){var K=Z+v,he=Z+w;M.positions[3*he]=m.vertices[4*K],M.positions[3*he+1]=m.vertices[4*K+1],M.positions[3*he+2]=m.vertices[4*K+2],M.normals[he]=m.vertices[4*K+3]}v+=q;for(var le=c.startIndex,pe=0;pe<3*P;pe++)M.indices[le+pe]=c.indices[pe]+w;return v}},{key:"_transferObjectGeometryBoundingBox",value:function(c,u,m,v){u.reset(),u.expandByBox(m.boundingBoxes.slice(24*v,24*(v+1))),u.isValid()&&(c.expandByPoint(u.minX,u.minY,u.minZ),c.expandByPoint(u.maxX,u.maxY,u.maxZ))}},{key:"_postprocessObjectsVertices",value:function(c,u,m){var v,M=0,w=0,P=new iO,q=new iO,Z=zT(c);try{for(Z.s();!(v=Z.n()).done;){var K=v.value;q.reset();var he,le=zT(K.geometries);try{for(le.s();!(he=le.n()).done;){var pe=he.value,Ie=[pe.color.x,pe.color.y,pe.color.z],Ce=pe.color.w;M=this._transferObjectGeometryBufferData(pe,m,u,M),this._transferObjectGeometryBoundingBox(q,P,u,w),w++,K.object.addMeshData(Ie,Ce,pe.startIndex,pe.endIndex,pe.startVertex,pe.endVertex,Ce<1?AT:IT)}}catch(Ge){le.e(Ge)}finally{le.f()}if(K.geometries.length>0&&q.isValid()){var Ne=K.object.setBoundingBox(q.createFloat32Array());Ne&&Ne.isEmpty()===!1&&m.boundingBox.expandByBox3(Ne)}m.parsedVisualObjects[K.object.id]=K.object}}catch(Ge){Z.e(Ge)}finally{Z.f()}}},{key:"loadNodeGeometry",value:(e=ee(ge().mark(function c(u,m,v,M){var w,P,q,Z,K;return ge().wrap(function(he){for(;;)switch(he.prev=he.next){case 0:return w=new tU(v.id,u.divisionTopologyId),P=this._processObjectsVertices(M,w),he.next=4,this._postprocessObjectsVertices(M,P,w);case 4:return he.next=6,w.createDisciplineNode(this._project,m,1);case 6:q=new si,Z=new Ee,K=new Ee,Z.set(w.boundingBox.minX,w.boundingBox.minY,w.boundingBox.minZ),K.set(w.boundingBox.maxX,w.boundingBox.maxY,w.boundingBox.maxZ),q.set(Z,K),this._project.getDivisions().expandDivisionBoundingBox(u.divisionTopologyId,q),w.dumpInfo(),w.dispose();case 15:case"end":return he.stop()}},c,this)})),function(c,u,m,v){return e.apply(this,arguments)})}]);var e,t,n,i,s}();let $7=rse;var k5=function(e,t,n){this.topoNodes={},this.topoNodesPointers={},this.project=e,this.layer=t,this.model=n,k5.prototype.createTopologyNodes=function(){var i=this;this.model.forEachTopologyLeafNode(function(s){i.topoNodes[s.id]=new tU(s.id,i.model.divisionTopologyId),i.topoNodesPointers[s.id]={opBufferPtrs:{positionsPtr:0,indicesPtr:0},trBufferPtrs:{positionsPtr:0,indicesPtr:0}}})},k5.prototype.forEachTopoNode=function(i){for(var s in this.topoNodes)Object.hasOwn(this.topoNodes,s)&&i(this.topoNodes[s])},k5.prototype.createDisciplineNodes=ee(ge().mark(function i(){var s,c,u,m,v=this;return ge().wrap(function(M){for(;;)switch(M.prev=M.next){case 0:return s=new si,c=new Ee,u=new Ee,m=[],this.forEachTopoNode(function(w){m.push(w.createDisciplineNode(v.project,v.layer,v.model.getCurrentRevision()).then(function(){n.divisionTopologyId&&(c.set(w.boundingBox.minX,w.boundingBox.minY,w.boundingBox.minZ),u.set(w.boundingBox.maxX,w.boundingBox.maxY,w.boundingBox.maxZ),s.set(c,u),v.project.getDivisions().expandDivisionBoundingBox(v.model.divisionTopologyId,s)),w.dispose()}))}),M.abrupt("return",Promise.allSettled(m));case 6:case"end":return M.stop()}},i,this)})),k5.prototype.setTopoNodesBuffersAttributes=function(i){for(var s in i)this.topoNodes[s].trNumVertices+=i[s].trNumVertices,this.topoNodes[s].trNumTriangles+=i[s].trNumTriangles,this.topoNodes[s].opNumVertices+=i[s].opNumVertices,this.topoNodes[s].opNumTriangles+=i[s].opNumTriangles},k5.prototype.createTopoNodesBuffers=function(){this.forEachTopoNode(function(i){i.createBuffers()})},k5.prototype.transferMessageToTopologyNodes=function(){var i=ee(ge().mark(function s(c,u,m){var v,M,w,P,q,Z,K,he,le,pe,Ie,Ce,Ne,Ge,Fe,Pe,Ve,ot,Ct,Et,_t,Zt,Pt,sn;return ge().wrap(function(On){for(;;)switch(On.prev=On.next){case 0:for(v=Object.keys(c).length,M=0,w=null,P=null,q=0;q<v;q++){for(Z=c[q],K=null,he=null,le=this.project.getObjectsContainer().getObject(Z.visualObjectId),pe=le.setBoundingBox(m.slice(24*q,24*(q+1))),w=this.topoNodes[Z.topologyNodeId],P=this.topoNodesPointers[Z.topologyNodeId],w.parsedVisualObjects[Z.visualObjectId]=le,Ie=Z.opacity,Ce=Z.color,le.discipline=this.layer.id,le.node=Z.topologyNodeId,K=Ie<1?w.trBuffer:w.opBuffer,he=Ie<1?P.trBufferPtrs:P.opBufferPtrs,w.boundingBox.expandByBox3(pe),Ne=he.positionsPtr,Ge=Z.indexArray.length/3,Fe=Z.vertexCount,Pe=he.indicesPtr,Ve=he.indicesPtr+3*Ge,ot=Ne,Ct=Ne+Fe,le.addMeshData(Ce,Ie,Pe,Ve,ot,Ct,Ie<1?AT:IT),Et=0;Et<Fe;Et++)_t=Et+M,Zt=Et+Ne,K.positions[3*Zt]=u[4*_t],K.positions[3*Zt+1]=u[4*_t+1],K.positions[3*Zt+2]=u[4*_t+2],K.normals[Zt]=u[4*_t+3];for(M+=Fe,Pt=he.indicesPtr,sn=0;sn<3*Ge;sn++)K.indices[Pt+sn]=Z.indexArray[sn]+Ne;he.positionsPtr+=Fe,he.indicesPtr+=3*Ge}case 5:case"end":return On.stop()}},s,this)}));return function(s,c,u){return i.apply(this,arguments)}}()};let sU=k5;function rU(e,t){var n=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(v,M){if(v){if(typeof v=="string")return aU(v,M);var w={}.toString.call(v).slice(8,-1);return w==="Object"&&v.constructor&&(w=v.constructor.name),w==="Map"||w==="Set"?Array.from(v):w==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(w)?aU(v,M):void 0}}(e))||t&&e&&typeof e.length=="number"){n&&(e=n);var i=0,s=function(){};return{s,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(v){throw v},f:s}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
11423
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var c,u=!0,m=!1;return{s:function(){n=n.call(e)},n:function(){var v=n.next();return u=v.done,v},e:function(v){m=!0,c=v},f:function(){try{u||n.return==null||n.return()}finally{if(m)throw c}}}}function aU(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=Array(t);n<t;n++)i[n]=e[n];return i}function oU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(oU=function(){return!!e})()}var ase=function(e){function t(Fe,Pe){var Ve;return zi(this,t),Ve=function(ot,Ct,Et){return Ct=xi(Ct),ba(ot,oU()?Reflect.construct(Ct,Et||[],xi(ot).constructor):Ct.apply(ot,Et))}(this,t,[Pe]),Ve.api=Fe,Ve.nodePromises={},Ve.errorHandler=null,Ve.canceled=!1,Ve.modelObjectsPromises={},Ve.modelTooDistantHandler=null,Ve.initialVisiblityProvider=null,Ve}return va(t,e),Si(t,[{key:"resetState",value:function(){this.nodePromises={},this.modelObjectsPromises={},this.canceled=!1}},{key:"loadProject",value:(Ge=ee(ge().mark(function Fe(Pe){var Ve,ot,Ct,Et;return ge().wrap(function(_t){for(;;)switch(_t.prev=_t.next){case 0:return Ve=this,ot=new Z7(this._viewport),_t.next=4,ot.initializeDisciplineNodeStore();case 4:return this.nodePromises={},this.modelObjectsPromises={},this._viewport.setContent(ot),_t.prev=7,_t.next=10,Ve.api.projects.get(Pe);case 10:Ct=_t.sent,ot.parseProjectDetailsResponse(Ct),_t.next=17;break;case 14:throw _t.prev=14,_t.t0=_t.catch(7),new Error(_t.t0);case 17:return _t.next=19,Ve.checkModelsModified(ot.getModels());case 19:return _t.prev=19,_t.next=22,Ve.api.projects.getTopology(Pe);case 22:Et=_t.sent,ot.parseProjectTopologyResponse(Et),_t.next=29;break;case 26:throw _t.prev=26,_t.t1=_t.catch(19),new Error(_t.t1);case 29:return _t.abrupt("return",ot);case 30:case"end":return _t.stop()}},Fe,this,[[7,14],[19,26]])})),function(Fe){return Ge.apply(this,arguments)})},{key:"loadModel",value:(Ne=ee(function(Fe,Pe,Ve){var ot=this,Ct=!(arguments.length>3&&arguments[3]!==void 0)||arguments[3],Et=arguments.length>4&&arguments[4]!==void 0?arguments[4]:void 0;return ge().mark(function _t(){var Zt,Pt,sn,On,kn;return ge().wrap(function(_n){for(;;)switch(_n.prev=_n.next){case 0:if(Pe.topologyLoaded!==!1){_n.next=12;break}return _n.prev=1,Zt=Pe.getCurrentRevision(),_n.next=5,ot.api.objects.getTopology(Pe.divisionTopologyId,Zt,!0,!1);case 5:Pt=_n.sent,Fe.parseProjectTopologyResponse(Pt,Zt),_n.next=12;break;case 9:throw _n.prev=9,_n.t0=_n.catch(1),new Error(_n.t0);case 12:if(ot.modelObjectsPromises[Pe.divisionTopologyId]||Ct!==!0||(ot.modelObjectsPromises[Pe.divisionTopologyId]=ot._loadModelObjectsTree(Pe,Et)),(sn=Ve||Pe.getLayerArray().filter(function(Jn){return!Jn.isInternal()}))&&sn.length!==0){_n.next=16;break}return _n.abrupt("return");case 16:if(!ot.initialVisiblityProvider){_n.next=25;break}return On=[],Pe.forEachLayer(function(Jn){On.push(Jn.setVisible(ot.initialVisiblityProvider.getModelLayerVisibility(Jn)))}),_n.next=21,Promise.all(On);case 21:return On=[],Pe.forEachTopologyLeafNode(function(Jn){On.push(Jn.setVisible(ot.initialVisiblityProvider.getNodeVisibility(Jn)))}),_n.next=25,Promise.all(On);case 25:return kn=[],sn.forEach(function(Jn){Jn.geometryLoaded===!1&&(Jn.geometryLoaded=!0,kn.push(ot._loadModelLayerGeometryCumulated(Fe,Jn,void 0)))}),_n.next=29,Promise.all(kn).catch(function(){throw new Error});case 29:Fe.getObjectsContainer().updateObjectsIndex(),Fe.resetWebGLBufferTimestamps(),ot._viewport.renderGPUPickTextureNeeded();case 32:case"end":return _n.stop()}},_t,null,[[1,9]])})()}),function(Fe,Pe,Ve){return Ne.apply(this,arguments)})},{key:"loadModelLayers",value:(Ce=ee(ge().mark(function Fe(Pe,Ve){var ot;return ge().wrap(function(Ct){for(;;)switch(Ct.prev=Ct.next){case 0:if(Ve&&Ve.length!==0){Ct.next=2;break}return Ct.abrupt("return");case 2:return ot=Ve[0].getModel(),Ct.abrupt("return",this.loadModel(Pe,ot,Ve));case 4:case"end":return Ct.stop()}},Fe,this)})),function(Fe,Pe){return Ce.apply(this,arguments)})},{key:"_loadClashFilters",value:(Ie=ee(ge().mark(function Fe(Pe,Ve){var ot,Ct,Et,_t,Zt=this;return ge().wrap(function(Pt){for(;;)switch(Pt.prev=Pt.next){case 0:if(ot=[],!Ve||Pe==null||!Pe.id){Pt.next=13;break}return Pt.prev=2,Pt.next=5,this.api.clashDetection.getAllClashRules(Pe.id);case 5:ot=Pt.sent,Pt.next=11;break;case 8:throw Pt.prev=8,Pt.t0=Pt.catch(2),new Error(Pt.t0);case 11:Pt.next=22;break;case 13:return Pt.prev=13,Pt.next=16,this.api.clashDetection.getFilters();case 16:ot=Pt.sent,Pt.next=22;break;case 19:throw Pt.prev=19,Pt.t1=Pt.catch(13),new Error(Pt.t1);case 22:Ct=[],Et=ge().mark(function sn(){var On;return ge().wrap(function(kn){for(;;)switch(kn.prev=kn.next){case 0:Object.hasOwn(ot,_t)&&(On=ot[_t],Ct.push(Zt.api.clashDetection.getFilterResults(Pe.id,On.id,!0,!0).then(function(_n){Pe.parseClashFilterResponse(On.id,_n)})));case 1:case"end":return kn.stop()}},sn)}),Pt.t2=ge().keys(ot);case 25:if((Pt.t3=Pt.t2()).done){Pt.next=30;break}return _t=Pt.t3.value,Pt.delegateYield(Et(),"t4",28);case 28:Pt.next=25;break;case 30:return Pt.next=32,Promise.all(Ct).catch(function(){throw new Error});case 32:case"end":return Pt.stop()}},Fe,this,[[2,8],[13,19]])})),function(Fe,Pe){return Ie.apply(this,arguments)})},{key:"loadClashes",value:(pe=ee(ge().mark(function Fe(Pe){return ge().wrap(function(Ve){for(;;)switch(Ve.prev=Ve.next){case 0:return this.resetState(),Ve.next=3,this._loadClashFilters(Pe,!0);case 3:return Ve.abrupt("return",Pe);case 4:case"end":return Ve.stop()}},Fe,this)})),function(Fe){return pe.apply(this,arguments)})},{key:"loadTopologyNode",value:(le=ee(function(Fe,Pe,Ve){var ot=this,Ct=!(arguments.length>3&&arguments[3]!==void 0)||arguments[3],Et=arguments.length>4&&arguments[4]!==void 0?arguments[4]:void 0;return ge().mark(function _t(){var Zt;return ge().wrap(function(Pt){for(;;)switch(Pt.prev=Pt.next){case 0:if(!(Ve&&Ve.length>0)){Pt.next=4;break}return Zt=Ve[0].getModel(),Pt.next=4,ot.loadModel(Fe,Zt,Ve,Ct,Et);case 4:case"end":return Pt.stop()}},_t)})()}),function(Fe,Pe,Ve){return le.apply(this,arguments)})},{key:"_updateGLBGeometryNodeBoundingBox",value:function(Fe,Pe){Fe.getBoundingBox().expandByMinMax(Pe.min.x,Pe.min.y,Pe.min.z,Pe.max.x,Pe.max.y,Pe.max.z)}},{key:"_fullProcessGLBResponse",value:(he=ee(function(Fe,Pe,Ve,ot){var Ct=this,Et=arguments.length>4&&arguments[4]!==void 0?arguments[4]:void 0;return ge().mark(function _t(){var Zt,Pt,sn,On,kn,_n,Jn,Di,Bt,Sn,Cn,$n,en,gt,Rt,Xt,qt,St;return ge().wrap(function(Nt){for(;;)switch(Nt.prev=Nt.next){case 0:for(On in Zt={},Pt=!1,sn=Fe.getObjectsContainer()._objectRef)sn[On]?Zt[On]="exists":Zt[On]=sn[On];if(Pe.id!==o1.ClashLayer&&Pe.id!==o1.RevisionCompareLayer||(Pt=!0),(kn=new sU(Fe,Pe,Ve)).createTopologyNodes(),Ct._viewport.isReady()){Nt.next=9;break}throw new Error("viewport not ready");case 9:return _n=ot.map(function(){var bt=ee(ge().mark(function Vt(pn){var Dn,bn;return ge().wrap(function(Un){for(;;)switch(Un.prev=Un.next){case 0:return Un.next=2,pn;case 2:return Dn=Un.sent,bn={chunkData:Dn,visualObjectExistanceOfId:Zt,isClashOrRevisionCompare:Pt,properitesPanelTopologyId:Et},Un.abrupt("return",new Promise(function(Wn){var Ln;(Ln=Ct._viewport.glbProcessorWorkerQueue)===null||Ln===void 0||Ln.concurrentGlbProcessorWorkerQueue.push(bn,function(ts){Wn(ts)})}));case 5:case"end":return Un.stop()}},Vt)}));return function(Vt){return bt.apply(this,arguments)}}()),Nt.prev=10,Nt.next=13,Promise.all(_n);case 13:Jn=Nt.sent,Di=!0,Bt=rU(Jn),Nt.prev=16,Bt.s();case 18:if((Sn=Bt.n()).done){Nt.next=27;break}if(Cn=Sn.value,$n=Cn.topoNodeMessage,Object.keys($n).length){Nt.next=23;break}return Nt.abrupt("continue",25);case 23:kn.setTopoNodesBuffersAttributes($n),Di=!1;case 25:Nt.next=18;break;case 27:Nt.next=32;break;case 29:Nt.prev=29,Nt.t0=Nt.catch(16),Bt.e(Nt.t0);case 32:return Nt.prev=32,Bt.f(),Nt.finish(32);case 35:if(!Di){Nt.next=37;break}return Nt.abrupt("return");case 37:kn.createTopoNodesBuffers(),en=rU(Jn),Nt.prev=39,en.s();case 41:if((gt=en.n()).done){Nt.next=50;break}return Rt=gt.value,Xt=new Float32Array(Rt.vertices),qt=new Float32Array(Rt.boundingBoxes),St=Rt.message,Nt.next=48,kn.transferMessageToTopologyNodes(St,Xt,qt);case 48:Nt.next=41;break;case 50:Nt.next=55;break;case 52:Nt.prev=52,Nt.t1=Nt.catch(39),en.e(Nt.t1);case 55:return Nt.prev=55,en.f(),Nt.finish(55);case 58:Nt.next=63;break;case 60:Nt.prev=60,Nt.t2=Nt.catch(10),console.log("Promise all error: ",Nt.t2);case 63:return Nt.abrupt("return",kn);case 64:case"end":return Nt.stop()}},_t,null,[[10,60],[16,29,32,35],[39,52,55,58]])})()}),function(Fe,Pe,Ve,ot){return he.apply(this,arguments)})},{key:"_loadObjectGeometryGLB",value:(K=ee(ge().mark(function Fe(Pe,Ve,ot){var Ct,Et,_t,Zt,Pt,sn,On,kn,_n,Jn;return ge().wrap(function(Di){for(;;)switch(Di.prev=Di.next){case 0:return Ct=Pe.getObjectsContainer().getObject(Ve).discipline,Et={chunked:null,revision:ot,lod:0,batch:null,vertexNormals:!0,smoothingAngle:null,topology:null,edges:!1,version:null},Di.next=4,this.api.objects.getGeometryGLB(Ve,null,Et);case 4:return _t=Di.sent,Zt={id:Ve,revision:ot,divisionTopologyId:Pe.getFakeDivisionTopologyId(),visible:!0},Pt=Pe.getFakeLegacyDiscipline(Ct,ot),Pe.getGeometryNodes().initNode(Pe,Zt,Pt),sn=Pe.getGeometryNodes().getDisciplineNode(Ve,Ct),On={id:Ct},kn={node:{id:Ve},divisionTopologyId:Pe.getFakeDivisionTopologyId(),forEachTopologyLeafNode:function(Bt){Bt(this.node)}},Di.next=13,this._fullProcessGLBResponse(Pe,On,kn,[_t],Ve);case 13:_n=Di.sent;try{Jn=_n.topoNodes[Ve],Pe.createDisciplineNodeMeshes(sn,Jn.opBuffer,Jn.trBuffer,Jn.edgesBuffer),sn.bufferLength=12*(Jn.opBuffer.bufferLength+Jn.trBuffer.bufferLength),sn.revision=ot,sn.boundingBox=new si(new Ee(Jn.boundingBox.minX,Jn.boundingBox.minY,Jn.boundingBox.minZ),new Ee(Jn.boundingBox.maxX,Jn.boundingBox.maxY,Jn.boundingBox.maxZ)),Jn.dispose(),_n.topoNodes={},_n.topoNodesPointers={}}catch(Bt){console.error("Error during createDisciplineNodes then disposal in properties panel: ",Bt)}return this._viewport.setContent(Pe),this._updateGLBGeometryNodeBoundingBox(Pe,sn.boundingBox),this._viewport.noRender||this._viewport.setCameraResetAxis("xyz",!1),Di.abrupt("return",sn);case 19:case"end":return Di.stop()}},Fe,this)})),function(Fe,Pe,Ve){return K.apply(this,arguments)})},{key:"loadObject",value:(Z=ee(function(Fe,Pe){var Ve=this,ot=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;return ge().mark(function Ct(){var Et,_t,Zt;return ge().wrap(function(Pt){for(;;)switch(Pt.prev=Pt.next){case 0:return Ve._viewport.clearLookupTextures(),Et=new eU(Ve._viewport),Ve.nodePromises={},Pt.prev=3,Pt.next=6,Ve.api.objects.getTopology(Fe,Pe,void 0,!0);case 6:_t=Pt.sent,Et.parseObjectTopologyResponse(_t,Pe,ot),Pt.next=13;break;case 10:throw Pt.prev=10,Pt.t0=Pt.catch(3),new Error(Pt.t0);case 13:return Pt.next=15,Ve._loadObjectGeometryGLB(Et,Fe,Pe);case 15:if(Zt=Pt.sent){Pt.next=18;break}throw new Error;case 18:if(Ve._viewport.isReady()){Pt.next=20;break}return Pt.abrupt("return",null);case 20:return Et.getObjectsContainer().updateObjectsIndex(),Et.getObjectsContainer().initObjects(Ve._viewport),Et.getObjectsContainer().forEachObject(function(sn){sn.visible?sn.show(Ve._viewport):sn.hide(Ve._viewport)},!1),Ve._viewport.updateWebGLBuffer(Zt),Ve._viewport.renderGPUPickTextureNeeded(),Pt.abrupt("return",Et);case 26:case"end":return Pt.stop()}},Ct,null,[[3,10]])})()}),function(Fe,Pe){return Z.apply(this,arguments)})},{key:"_reloadLayerGeometry",value:(q=ee(function(Fe,Pe,Ve){var ot=this,Ct=!(arguments.length>3&&arguments[3]!==void 0)||arguments[3],Et=arguments.length>4&&arguments[4]!==void 0?arguments[4]:void 0;return ge().mark(function _t(){var Zt;return ge().wrap(function(Pt){for(;;)switch(Pt.prev=Pt.next){case 0:return Zt=[],Pe.forEach(function(sn){var On=sn.getLayer(Ve);On&&(On.geometryLoaded=!1,sn.forEachTopologyLeafNode(function(kn){delete ot.nodePromises[kn.id],kn.isLayerGeometryLoaded(On)&&Fe.unloadNode(kn.id,On.id)}),Zt.push(ot.loadModel(Fe,sn,[On],Ct,Et)))}),Pt.next=4,Promise.all(Zt);case 4:return Pt.abrupt("return",Fe);case 5:case"end":return Pt.stop()}},_t)})()}),function(Fe,Pe,Ve){return q.apply(this,arguments)})},{key:"getModelResponsesBatch",value:function(Fe){return Fe.id+"("+Fe.getCurrentRevision()+")"}},{key:"checkModelModified",value:(P=ee(function(Fe){var Pe=this,Ve=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1],ot=!(arguments.length>2&&arguments[2]!==void 0)||arguments[2];return ge().mark(function Ct(){var Et;return ge().wrap(function(_t){for(;;)switch(_t.prev=_t.next){case 0:if(Et=!1,Fe==null||!Fe.isExternal){_t.next=3;break}return _t.abrupt("return",Et);case 3:if(!Fe.hasRevisions()){_t.next=9;break}return _t.next=6,Pe.api.objects.head(Fe.divisionTopologyId,Fe.getCurrentRevision());case 6:Et=_t.sent,_t.next=12;break;case 9:return _t.next=11,Pe.api.models.head(Fe.divisionTopologyId);case 11:Et=_t.sent;case 12:return console.debug("[renderer] Model has revisions: ".concat(Fe.hasRevisions()," / current revision: ").concat(Fe.getCurrentRevision()," is unchanged: ").concat(Et)),!Et&&Pe.api.getCache()&&Ve&&Pe.api.getCache().deleteBatchResponses(Pe.getModelResponsesBatch(Fe)),!Et&&Fe.getProject().getDisciplineNodeStore()&&ot&&Fe.getProject().getDisciplineNodeStore().clearModelNodes(Fe.id),_t.abrupt("return",Et);case 16:case"end":return _t.stop()}},Ct)})()}),function(Fe){return P.apply(this,arguments)})},{key:"checkModelsModified",value:(w=ee(function(Fe){var Pe=this,Ve=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1],ot=!(arguments.length>2&&arguments[2]!==void 0)||arguments[2];return ge().mark(function Ct(){var Et,_t;return ge().wrap(function(Zt){for(;;)switch(Zt.prev=Zt.next){case 0:return Et=!1,_t=[],Fe.forEach(function(Pt){var sn=null;(sn=Pt.hasRevisions()?Pe.api.objects.head(Pt.divisionTopologyId,Pt.getCurrentRevision()):Pe.api.models.head(Pt.divisionTopologyId)).then(function(On){Et=!On||Et,!On&&Pe.api.getCache()&&Ve&&Pe.api.getCache().deleteBatchResponses(Pe.getModelResponsesBatch(Pt)),!On&&Pt.getProject().getDisciplineNodeStore()&&ot&&Pt.getProject().getDisciplineNodeStore().clearModelNodes(Pt.id)}),_t.push(sn)}),Zt.next=5,Promise.all(_t);case 5:return Zt.abrupt("return",Et);case 6:case"end":return Zt.stop()}},Ct)})()}),function(Fe){return w.apply(this,arguments)})},{key:"checkAndRefreshProject",value:(M=ee(ge().mark(function Fe(Pe,Ve){var ot,Ct;return ge().wrap(function(Et){for(;;)switch(Et.prev=Et.next){case 0:return Et.next=2,this.checkModelsModified(Ve);case 2:if(!(ot=Et.sent)){Et.next=8;break}return Et.next=6,this.api.projects.get(Pe.id);case 6:Ct=Et.sent,Pe.parseProjectDetailsResponse(Ct);case 8:return Et.abrupt("return",ot);case 9:case"end":return Et.stop()}},Fe,this)})),function(Fe,Pe){return M.apply(this,arguments)})},{key:"reloadClashesFromFilter",value:(v=ee(ge().mark(function Fe(Pe,Ve,ot){return ge().wrap(function(Ct){for(;;)switch(Ct.prev=Ct.next){case 0:return Pe.disposeClashObjectsByFilter(Ve),Pe.parseClashFilterResponse(Ve,ot),Ct.abrupt("return",Pe);case 3:case"end":return Ct.stop()}},Fe)})),function(Fe,Pe,Ve){return v.apply(this,arguments)})},{key:"reloadClashes",value:(m=ee(ge().mark(function Fe(Pe,Ve){return ge().wrap(function(ot){for(;;)switch(ot.prev=ot.next){case 0:return Pe.disposeClashObjects(),ot.next=3,this._loadClashFilters(Pe,Ve);case 3:return ot.abrupt("return",Pe);case 4:case"end":return ot.stop()}},Fe,this)})),function(Fe,Pe){return m.apply(this,arguments)})},{key:"reloadRevisionCompareObjects",value:(u=ee(ge().mark(function Fe(Pe,Ve){return ge().wrap(function(ot){for(;;)switch(ot.prev=ot.next){case 0:return this._viewport.disableDraw(!0),ot.next=3,this.checkAndRefreshProject(Pe,[Ve]);case 3:return ot.next=5,this._reloadLayerGeometry(Pe,[Ve],o1.RevisionCompareLayer,!1,function(Ct){return Pe.getObjectsContainer().getRevisionCompareObject(Ct.id)});case 5:Pe.getObjectsContainer().forEachRevisionCompareObject(function(Ct){var Et=Pe.getObjectsContainer().getObject(Ct.id);Et&&Pe.getObjectsContainer().traverseDown(Et,function(_t){_t.visible=!1})}),this._viewport.disableDraw(!1),Ve.forEachTopologyLeafNode(function(Ct){var Et=Pe.getDisciplineNode(Ct,Ve.getRevisionCompareLayer());Et&&(Et.visible=!0)});case 8:case"end":return ot.stop()}},Fe,this)})),function(Fe,Pe){return u.apply(this,arguments)})},{key:"cancel",value:function(){this.canceled=!0}},{key:"_loadModelObjectsTree",value:(c=ee(ge().mark(function Fe(Pe,Ve){var ot,Ct,Et;return ge().wrap(function(_t){for(;;)switch(_t.prev=_t.next){case 0:return ot=Pe.getCurrentRevision(),Ct=this.getModelResponsesBatch(Pe),_t.next=4,this.api.objects.getTopology(Pe.divisionTopologyId,ot,void 0,!0,Ct);case 4:Et=_t.sent,Pe.parseModelObjectsTopology(Et,Ve),Pe.objectsLoaded=!0;case 7:case"end":return _t.stop()}},Fe,this)})),function(Fe,Pe){return c.apply(this,arguments)})},{key:"_loadModelLayerGeometryFromIndexDb",value:(s=ee(ge().mark(function Fe(Pe,Ve){var ot,Ct,Et,_t,Zt,Pt,sn,On,kn=this;return ge().wrap(function(_n){for(;;)switch(_n.prev=_n.next){case 0:if(ot=Pe.getDisciplineNodeStore()){_n.next=4;break}return console.error("Failed to get DisciplineNodeStore"),_n.abrupt("return");case 4:return Ct=Ve.getModel(),Et=Ct.getCurrentRevision(),_t=Ct.divisionTopologyId,Zt=Ve.getUserColor(),Pt=Ve.getUserOpacity(),sn=Ve.isBackground(),On=[],Ct.forEachTopologyLeafNode(function(Jn){var Di={id:Jn.id,revision:Et,divisionTopologyId:_t,visible:!0},Bt=Ve.asLegacyDiscipline();Pe.getGeometryNodes().initNode(Pe,Di,Bt);var Sn=Pe.getDisciplineNode(Di,Ve);Sn?On.push(Pe.readDisciplineNodeMeshes(ot,Sn,!0).then(function(){Jn.objectsTreeLoaded=!0,Jn.setLayerGeometryLoaded(Ve),Ct.divisionTopologyId&&Pe.getDivisions().expandDivisionBoundingBox(Ct.divisionTopologyId,Sn.boundingBox),Sn.setUserColor(Zt),Sn.setUserOpacity(Pt),Sn.setBackground(sn),Sn.setVisible(Jn.isVisible()&&Ve.isVisible()),kn.modelTooDistantHandler!==null&&kn._viewport.isRelativeModelDistancesTooLarge()&&kn.modelTooDistantHandler()})):console.error("Discipline node is undefined")}),_n.next=15,Promise.all(On);case 15:case"end":return _n.stop()}},Fe)})),function(Fe,Pe){return s.apply(this,arguments)})},{key:"_loadModelLayerGeometryCumulated",value:(i=ee(function(Fe,Pe){var Ve=this,ot=arguments.length>2&&arguments[2]!==void 0?arguments[2]:100;return ge().mark(function Ct(){var Et,_t,Zt,Pt,sn,On,kn,_n,Jn;return ge().wrap(function(Di){for(;;)switch(Di.prev=Di.next){case 0:if(Et=Pe.getModel(),_t=Et.getCurrentRevision(),Zt=Ve.getModelResponsesBatch(Et),!Ve.modelObjectsPromises[Et.divisionTopologyId]){Di.next=6;break}return Di.next=6,Ve.modelObjectsPromises[Et.divisionTopologyId];case 6:return Pt={chunked:!0,revision:_t,lod:ot,batch:Zt,vertexNormals:!0,smoothingAngle:null,topology:!0,edges:!1,version:null},sn=[],Di.next=10,Ve.api.objects.getGeometryGLB(Et.divisionTopologyId,Pe.id,Pt);case 10:return sn=Di.sent,Di.next=13,Ve._fullProcessGLBResponse(Fe,Pe,Et,sn,void 0);case 13:return On=Di.sent,Di.next=16,On.createDisciplineNodes();case 16:On.topoNodes={},On.topoNodesPointers={},kn=Pe.getUserColor(),_n=Pe.getUserOpacity(),Jn=Pe.isBackground(),Et.forEachTopologyLeafNode(function(Bt){Bt.objectsTreeLoaded=!0,Bt.setLayerGeometryLoaded(Pe);var Sn=Fe.getDisciplineNode(Bt,Pe);Ve._updateGLBGeometryNodeBoundingBox(Fe,Sn.boundingBox),Sn.setUserColor(kn),Sn.setUserOpacity(_n),Sn.setBackground(Jn),Sn.setVisible(Bt.isVisible()&&Pe.isVisible())}),Ve.modelTooDistantHandler!==null&&Ve._viewport.isRelativeModelDistancesTooLarge()&&Ve.modelTooDistantHandler();case 23:case"end":return Di.stop()}},Ct)})()}),function(Fe,Pe){return i.apply(this,arguments)})},{key:"loadModelStructure",value:(n=ee(ge().mark(function Fe(Pe,Ve,ot){var Ct,Et;return ge().wrap(function(_t){for(;;)switch(_t.prev=_t.next){case 0:if(!Ve.isExternal){_t.next=2;break}return _t.abrupt("return");case 2:if(Ve.topologyLoaded!==!1){_t.next=14;break}return _t.prev=3,Ct=Ve.getCurrentRevision(),_t.next=7,this.api.objects.getTopology(Ve.divisionTopologyId,Ct,!0,!1);case 7:Et=_t.sent,Pe.parseProjectTopologyResponse(Et,Ct),_t.next=14;break;case 11:throw _t.prev=11,_t.t0=_t.catch(3),new Error(_t.t0);case 14:if(Ve.objectsLoaded!==!1){_t.next=23;break}return _t.prev=15,_t.next=18,this._loadModelObjectsTree(Ve,ot);case 18:_t.next=23;break;case 20:throw _t.prev=20,_t.t1=_t.catch(15),new Error(_t.t1);case 23:case"end":return _t.stop()}},Fe,this,[[3,11],[15,20]])})),function(Fe,Pe,Ve){return n.apply(this,arguments)})}]);var n,i,s,c,u,m,v,M,w,P,q,Z,K,he,le,pe,Ie,Ce,Ne,Ge}($7);let lU=ase;function cU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(cU=function(){return!!e})()}var eN=function(e){function t(n){var i;return zi(this,t),i=function(s,c,u){return c=xi(c),ba(s,cU()?Reflect.construct(c,u||[],xi(s).constructor):c.apply(s,u))}(this,t),i._viewport=n,i._mouseButton=null,i._isDragging=!1,i._isPinching=!1,i._isPaning=!1,i.target=new Ee,i.object=null,i.minDistance=0,i.maxDistance=1/0,i.minPolarAngle=0,i.maxPolarAngle=Math.PI,i.lastPlaneIntersectionAfterZoom=new Ee,i}return va(t,e),Si(t,[{key:"startDrag",value:function(n){this._mouseButton=n,this._isDragging=!0}},{key:"processDrag",value:function(){}},{key:"finishDrag",value:function(){this._isDragging=!1}},{key:"isDragging",value:function(){return this._isDragging}},{key:"processOrthographicMouseWheel",value:function(n,i){var s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:.9,c=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1.1,u=arguments.length>4&&arguments[4]!==void 0&&arguments[4];if(n!==0){var m=this._viewport,v=new Ee;if(m.projector.pickingRay(m.getNDCVector(),m.camera).ray.intersectPlane(i,v)||console.error("planeIntersectionBeforeZoom has no intersection"),u){var M=this._calculateZoomFactor(!1),w=m.getNDCVector(),P=m.projector.pickingRay(w,m.camera).ray.direction;if(P.distanceTo(new Ee(0,0,0))>0){P.normalize(),P.multiplyScalar(n>0?M:-M);var q=new Ee().copy(m.controls.target),Z=new Ee().copy(m.camera.position);q.add(P),Z.add(P),m.camera.position.copy(Z),m.controls.target.copy(q)}m.controls.updateOrthographicFrustum()}else m.controls.noZoom=!0,L0.zoomOrthographicCamera(m.camera,n>1?s:c),m.camera.updateProjectionMatrix(),m.camera.updateMatrixWorld();var K=new Ee;m.projector.pickingRay(m.getNDCVector(),m.camera).ray.intersectPlane(i,K)||(console.error("planeIntersectionAfterZoom has no intersection"),K=this.lastPlaneIntersectionAfterZoom),this.planeIntersectionAfterZoom=K;var he=new Ee;he.subVectors(v,K),m.controls.target.add(he),m.camera.position.add(he),m.camera.updateProjectionMatrix(),m.camera.updateMatrixWorld()}}},{key:"processMouseWheel",value:function(){}},{key:"startPinch",value:function(){}},{key:"processPinch",value:function(){}},{key:"finishPinch",value:function(){}},{key:"isPinching",value:function(){return this._isPinching}},{key:"processClick",value:function(){}},{key:"processMouseMove",value:function(){}},{key:"canStartDrag",value:function(){return this._viewport.objectUnderMouse||this._viewport.rotationCenter}},{key:"startPan",value:function(){this._isPaning=!0}},{key:"finishPan",value:function(){this._isPaning=!1}},{key:"isPaning",value:function(){return this._isPaning}},{key:"processPan",value:function(){}},{key:"supportsGPUPicking",value:function(){return!0}},{key:"roundToStep",value:function(n,i){return Math.round(n/i)*i}},{key:"reset",value:function(){this.backupTarget&&(this.target=this.backupTarget.clone())}},{key:"revertModel",value:function(){this.backupTarget&&this.backupObjectPosition&&(this.target=this.backupTarget.clone(),this.object.position.copy(this.backupObjectPosition))}}])}(Gd);function uU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(uU=function(){return!!e})()}function oO(e,t,n,i){var s=Q1(xi(1&i?e.prototype:e),t,n);return 2&i&&typeof s=="function"?function(c){return s.apply(n,c)}:s}var dU=function(e){function t(n){var i;return zi(this,t),i=function(s,c,u){return c=xi(c),ba(s,uU()?Reflect.construct(c,u||[],xi(s).constructor):c.apply(s,u))}(this,t,[n]),i._meshSearch=new jb,i._dragRotationCenter=null,i._lastDragRotationCenter=null,i._prevDragPosition=new Ai,i._pinchToZoomCenterX=0,i._pinchToZoomCenterY=0,i._pinchDistance=null,i.isPointMatching=!1,i}return va(t,e),Si(t,[{key:"setNewRotationPoint",value:function(){var n=this._viewport;if(!n.objectUnderMouse)return n.rotationCenter&&(this._dragRotationCenter=n.rotationCenter.clone()),void console.debug("[Renderer] OrbitViewControl::setNewRotationPoint : Use existing rotation point");var i=this._meshSearch;i.findFaces=!0,i.search(n.objectUnderMouse,n,null,null,null),this._dragRotationCenter=i.faceIntersectionPoint,this._dragRotationCenter||(this._dragRotationCenter=this._lastDragRotationCenter,n.objectUnderMouse=null),console.debug("[Renderer] OrbitViewControl::setNewRotationPoint : New rotation point for object picking point")}},{key:"startDrag",value:function(n,i){var s=this._viewport;this.setNewRotationPoint(),this._dragRotationCenter&&(oO(t,"startDrag",this,3)([n,i]),this._prevDragPosition.x=s.mouse.x,this._prevDragPosition.y=s.mouse.y,s.axisHelper.visible=!0,s.axisHelper.position.copy(this._dragRotationCenter),s.renderQueue.interactionFocusPoint=this._dragRotationCenter,s.renderQueue.setInteractionMode(!1),s.renderQueue.clear(),s.renderQueue.setInteractionMode(!0),s.draw(),this.processDrag(i))}},{key:"processDrag",value:function(n){this._mouseButton===0?this._processDragRotate(n):this._mouseButton!==2&&this._mouseButton!==1||this._processDragMove(n),this._viewport.draw()}},{key:"finishDrag",value:function(n){oO(t,"finishDrag",this,3)([n]);var i,s,c,u=this._viewport;(!this._lastDragRotationCenter&&this._dragRotationCenter||this._lastDragRotationCenter&&this._dragRotationCenter&&!mi.equalVector3(this._lastDragRotationCenter,this._dragRotationCenter))&&(console.debug("[Renderer] OrbitViewControl::finishDrag : New rotation center point: x:".concat(Number.parseFloat(this==null||(i=this._dragRotationCenter)===null||i===void 0?void 0:i.x).toFixed(4)," y:").concat(Number.parseFloat(this==null||(s=this._dragRotationCenter)===null||s===void 0?void 0:s.y).toFixed(4)," z:").concat(Number.parseFloat(this==null||(c=this._dragRotationCenter)===null||c===void 0?void 0:c.z).toFixed(4))),u.setRotationCenter(this._dragRotationCenter),u.currentManipulationControlVisibility()&&u.clippingPlanes.setNewCenterPoint()),this._lastDragRotationCenter=this._dragRotationCenter,this._dragRotationCenter=null,u.axisHelper.visible=!1,u.renderQueue.interactionFocusPoint=null}},{key:"isDragging",value:function(){return this._dragRotationCenter!==null}},{key:"getLastDragRotationCenter",value:function(){return this._lastDragRotationCenter?this._lastDragRotationCenter.clone():null}},{key:"_processPointMatchDragRotate",value:function(n){var i=this._viewport,s=i.mouse.x-this._prevDragPosition.x,c=i.mouse.y-this._prevDragPosition.y,u=n.currentTarget.clientHeight,m=-s/n.currentTarget.clientWidth*Math.PI*2,v=-c/u*Math.PI;if(m!==0||v!==0){var M=i.controls.object.up.clone(),w=i.getVectorScreenCoordinates(this._dragRotationCenter);i.mouse.y<w.y&&(m*=-1),i.mouse.x>w.x&&(v*=-1);var P=i.clippingPlanes.getActiveClippingPlane().normal;P.normalize();var q=new qi;q.makeRotationAxis(P,m);var Z=new qi;Z.makeRotationAxis(P,v);var K=new Ee;K.copy(i.controls.object.position),K.sub(this._dragRotationCenter),K.applyMatrix4(Z),K.applyMatrix4(q),K.add(this._dragRotationCenter);var he=new Ee;he.copy(i.controls.target),he.sub(this._dragRotationCenter),he.applyMatrix4(Z),he.applyMatrix4(q),he.add(this._dragRotationCenter),M.applyMatrix4(Z),M.applyMatrix4(q),M.normalize(),i.controls.object.position.copy(K),i.controls.object.up.copy(M),i.controls.target.copy(he),this.updateCamera(),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y}}},{key:"_processDragRotate",value:function(n){if(this.isPointMatching&&this._viewport.currentInteractor instanceof k7)this._processPointMatchDragRotate(n);else{var i=this._viewport,s=i.mouse.x-this._prevDragPosition.x,c=i.mouse.y-this._prevDragPosition.y,u=n.currentTarget.clientHeight,m=-s/n.currentTarget.clientWidth*Math.PI*2,v=-c/u*Math.PI;if(m!==0||v!==0){var M=L0.getCameraViewDirection(i),w=i.controls.object.up.clone(),P=M.crossVectors(w,M);P.y=0,P.normalize();var q=new qi;q.makeRotationY(m);var Z=new qi;Z.makeRotationAxis(P,v);var K=new Ee;K.copy(i.controls.object.position),K.sub(this._dragRotationCenter),K.applyMatrix4(Z),K.applyMatrix4(q),K.add(this._dragRotationCenter);var he=new Ee;he.copy(i.controls.target),he.sub(this._dragRotationCenter),he.applyMatrix4(Z),he.applyMatrix4(q),he.add(this._dragRotationCenter),w.applyMatrix4(Z),w.applyMatrix4(q),w.normalize(),i.controls.object.position.copy(K),i.controls.object.up.copy(w),i.controls.target.copy(he),this.updateCamera(),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y}}}},{key:"_processDragMove",value:function(){var n=this._viewport,i=new Ee;i.copy(n.controls.object.position);var s=new Ee;s.copy(n.controls.target);var c=new Ee;c.subVectors(i,s),c.normalize();var u=new br;u.setFromNormalAndCoplanarPoint(c,this._dragRotationCenter);var m=new Ee,v=n.projector.pickingRay(n.getNDCVector(),n.camera),M=new Ee;if(v.ray.intersectPlane(u,M)&&m.subVectors(M,this._dragRotationCenter),!n.objectUnderMouse){var w=n.projector.pickingRay(n.getNDCVector(this._prevDragPosition.x,this._prevDragPosition.y),n.camera),P=new Ee;w.ray.intersectPlane(u,P)&&m.subVectors(M,P)}i.sub(m),s.sub(m),n.controls.object.position.copy(i),n.controls.target.copy(s),this.updateCamera(),this._prevDragPosition.x=n.mouse.x,this._prevDragPosition.y=n.mouse.y}},{key:"_calculateZoomFactor",value:function(n){var i=n?2.5:.25,s=this._viewport;if(s.pickGPU)if(s.rotationCenter)(i*=s.rotationCenter.distanceTo(s.camera.position))<100&&(i+=50);else{var c=new Ee(0,0,0),u=s.getContentBoundingBox();u!=null&&u.isValid()?(c.x=u.getCenterX(),c.y=u.getCenterY(),c.z=u.getCenterZ()):(c.x=0,c.y=0,c.z=0),i*=c.distanceTo(s.camera.position)}else i=n?2:.1;return isNaN(i)?1:i}},{key:"_processPointMatchMouseWheel",value:function(n){var i=this._viewport;i.currentInteractor.processMouseWheel();var s=i.clippingPlanes.getActiveClippingPlane(),c=new br;c.setFromNormalAndCoplanarPoint(s.normal,i.rotationCenter),this.processOrthographicMouseWheel(n,c)}},{key:"processMouseWheel",value:function(n,i){if(n!==0){var s=this._viewport;if(this.isPointMatching&&s.currentInteractor instanceof k7)this._processPointMatchMouseWheel(n);else if(s.name!=="mainRendererViewport"||s.camera.type!=="orthographic"){var c=this._calculateZoomFactor(i.shiftKey);s.controls.noZoom=!0,s.camera.updateProjectionMatrix(),s.camera.updateMatrixWorld();var u=s.getNDCVector(),m=s.projector.pickingRay(u,s.camera).ray.direction;if(m.distanceTo(new Ee(0,0,0))>0){m.normalize(),m.multiplyScalar(n>0?c:-c);var v=new Ee().copy(s.controls.target),M=new Ee().copy(s.camera.position);v.add(m),M.add(m),s.camera.position.copy(M),s.controls.target.copy(v),s.name==="mainRendererViewport"&&s.camera.type==="orthographic"&&s.controls.updateOrthographicFrustum()}}else{var w=new br,P=256*s.visibleGeometryBoundingSphere.radius,q=new Ee;s.camera.getWorldDirection(q),q.multiplyScalar(P),q.add(s.camera.position);var Z=new Ee;s.camera.getWorldDirection(Z),w.setFromNormalAndCoplanarPoint(Z,q),this.processOrthographicMouseWheel(n,w,void 0,void 0,!1)}}}},{key:"startPinch",value:function(){var n=this._viewport;this._pinchToZoomCenterX=n.mouse.x,this._pinchToZoomCenterY=n.mouse.y}},{key:"finishPinch",value:function(){this._pinchDistance=null}},{key:"isPinching",value:function(){return this._pinchDistance!==null}},{key:"processPinch",value:function(n){var i=this._viewport,s=n.originalEvent.touches[0].clientX-n.originalEvent.touches[1].clientX,c=n.originalEvent.touches[0].clientY-n.originalEvent.touches[1].clientY,u=Math.sqrt(s*s+c*c),m=oO(t,"roundToStep",this,3)([u,5])-oO(t,"roundToStep",this,3)([this._pinchDistance,5]);if(this._pinchDistance!==null){var v=u-this._pinchDistance;if(this._pinchDistance=u,m!==0){n.preventDefault(),n.stopPropagation();var M=this._calculateZoomFactor(n.shiftKey);i.controls.noZoom=!0,i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld();var w=i.getNDCVector(this._pinchToZoomCenterX,this._pinchToZoomCenterY),P=i.projector.pickingRay(w,i.camera).ray.direction;P.normalize(),P.multiplyScalar(v*M*.08);var q=new Ee().copy(i.controls.target),Z=new Ee().copy(i.camera.position);q.add(P),Z.add(P),i.camera.position.copy(Z),i.controls.target.copy(q),i.draw()}}else this._pinchDistance=u}},{key:"findModelObjectForMouseMove",value:function(){return this._viewport.GPUPick?this._viewport.pickGPU():this._viewport.pickRay(),this._viewport.objectUnderMouse?this._viewport.objectUnderMouse:null}},{key:"processClick",value:function(n){var i,s,c=this._viewport,u=!1;if(c.checkSelectionMode("addPin")&&!c.checkSelectionMode("hidden")&&c.objectUnderMouse){if(i=c.getRayIntersectedObjects()){var m,v,M,w,P=!1;if(c!=null&&(m=c.clippingPlanes)!==null&&m!==void 0&&m.isEnabled()){var q=new bT;q.setFromCamera(c.getNDCVector(),c.camera);for(var Z=q.intersectObject(i.object),K=0;K<Z.length;K++){var he=Z[K];if(!c.clippingPlanes.clipPoint(he.point).clipped){if(K===0&&he.point.equals(i.point))break;(i=he).position={x:he.point.x*c.normFactor,y:he.point.y*c.normFactor,z:he.point.z*c.normFactor};var le=new br(he.face.normal,0),pe=new Ee;he.face.normal.angleTo(c.camera.getWorldDirection(pe))<Math.PI/2&&le.negate(),i.normalVector={x:le.normal.x,y:le.normal.y,z:le.normal.z},P=!0;break}}}i.id=c.getSelected3DObjectId()||(c.objectSets.selectedObjects.length===1?c.objectSets.selectedObjects[0].id:""),P||(i.position={x:i.point.x*c.normFactor,y:i.point.y*c.normFactor,z:i.point.z*c.normFactor},i.face?i.normalVector={x:i.face.normal.x,y:i.face.normal.y,z:i.face.normal.z}:i.indices&&(s=3*i.indices[0],i.normalVector={x:i.object.geometry.attributes.normal.array[s],y:i.object.geometry.attributes.normal.array[s+1],z:i.object.geometry.attributes.normal.array[s+2]}));var Ie,Ce=c==null||(v=c.objectUnderMouse)===null||v===void 0?void 0:v.selected;c.addObjectsToWorkingSet([c.objectUnderMouse]),Ce&&c.selectObject(c.objectUnderMouse),i.node=c==null||(M=c.objectUnderMouse)===null||M===void 0?void 0:M.node,i.isOverlay=(c==null||(w=c.objectUnderMouse)===null||w===void 0?void 0:w.type)==="Overlay",i.isOverlay&&(i.id=c==null||(Ie=c.objectUnderMouse)===null||Ie===void 0?void 0:Ie.overlayId),c.deferred.resolve(i),c.resetObjectUnderMouse()}}else c.checkSelectionMode("pins")&&(i=c.getRayIntersectedObjects(c.pins.pinsObjects3D))&&($(c.domElement).trigger("projectPinSelected",i.object.userData),u=!0);if(!u&&!c.checkSelectionMode("addPin")&&!c.checkSelectionMode("moveModel")&&!c.checkSelectionMode("selectSectionPlane")&&!c.checkSelectionMode("selectPointsForOverlay")&&(!c.isMarkupMode()||c.isMarkupModeTurnedOff())){var Ne=c.checkSelectionMode("hidden");if(!c.blockObjectSelection||Ne){var Ge;if(!Ne&&typeof c.beforeObjectSelection=="function"&&c.beforeObjectSelection()===!1||(c.objectUnderMouse||c.setObjectUnderMouse(c.sectionCuts.getModelObjectForMesh()),!c.objectUnderMouse&&c.overlays.getVisualObjectForMesh()))return;var Fe=c==null||(Ge=c.objectUnderMouse)===null||Ge===void 0?void 0:Ge.isOverlayElement;if(!Fe){var Pe=!!c.forceMultiSelect||void 0;c.handleObjectSelection(n,!c.forceSingleObjectSelection&&Pe)}Ne||Fe||c.draw().then(function(){c.multiSelect=!!c.forceMultiSelect||n.ctrlKey||n.isLongPress,c.multiSelect=!c.forceSingleObjectSelection&&c.multiSelect,$(c.domElement).trigger("select3DObject"),c.multiSelect=!1})}}(c.checkSelectionMode("moveModel")||c.checkSelectionMode("selectSectionPlane")||c.checkSelectionMode("selectPointsForOverlay")||c.isMarkupMode())&&c.currentInteractor.processMouseClick(n)}},{key:"updateOrthographicFrustum",value:function(){var n=this._viewport,i=new br,s=new Ee;s=L0.getCameraViewDirection(n,s),i.setFromNormalAndCoplanarPoint(s,n.visibleGeometryBoundingSphere.center);var c,u=i.distanceToPoint(n.camera.position),m=(c=u>=0?n.visibleGeometryBoundingSphere.radius+Math.abs(u):Math.abs(u)<=n.visibleGeometryBoundingSphere.radius?n.visibleGeometryBoundingSphere.radius-Math.abs(u):1e4)/(2*(2*n.visibleGeometryBoundingSphere.radius));m>1.5&&(m=1.5);var v=c/2*m;n.camera.left=v*n.camera.aspect/-2,n.camera.right=v*n.camera.aspect/2,n.camera.bottom=v/-2,n.camera.top=v/2,n.camera.near=-c*m,n.camera.updateProjectionMatrix()}},{key:"startPan",value:function(){oO(t,"startPan",this,3)([])}},{key:"finishPan",value:function(){oO(t,"finishPan",this,3)([])}},{key:"isPaning",value:function(){return oO(t,"isPaning",this,3)([])}},{key:"processPan",value:function(){oO(t,"processPan",this,3)([])}},{key:"updateCamera",value:function(){var n=this._viewport;n.camera.lookAt(n.controls.target),n.camera.updateProjectionMatrix(),n.camera.updateMatrixWorld()}}])}(eN);function pU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(pU=function(){return!!e})()}function H5(e,t,n,i){var s=Q1(xi(1&i?e.prototype:e),t,n);return 2&i&&typeof s=="function"?function(c){return s.apply(n,c)}:s}var ose=function(e){function t(n){var i;return zi(this,t),i=function(s,c,u){return c=xi(c),ba(s,pU()?Reflect.construct(c,u||[],xi(s).constructor):c.apply(s,u))}(this,t,[n]),i._dragRotationCenter=null,i._prevDragPosition=new Ai,i._startDragWorldPosition=new Ee,i._pinchToZoomCenterX=0,i._pinchToZoomCenterY=0,i._pinchDistance=null,i._levelPlane=null,i._crossSectionPlane=new br(new Ee(1,0,0),0),i._isHeightLevelMode=!1,i._mainViewport=null,i._navigationMap=null,i}return va(t,e),Si(t,[{key:"setMainViewport",value:function(n){this._mainViewport=n}},{key:"getMainViewport",value:function(){return this._mainViewport}},{key:"setNavigationMap",value:function(n){this._navigationMap=n}},{key:"getNavigationMap",value:function(){return this._navigationMap}},{key:"setHeightLevel",value:function(n){this._levelPlane=new br(new Ee(0,1,0),-n)}},{key:"setHeightLevelMode",value:function(n){this._isHeightLevelMode=n}},{key:"startDrag",value:function(n,i){if(this.canProcessInputEvent(i)){var s=this._viewport;H5(t,"startDrag",this,3)([n,i]),this._prevDragPosition.x=s.mouse.x,this._prevDragPosition.y=s.mouse.y,s.renderQueue.setInteractionMode(!1),s.renderQueue.clear(),s.renderQueue.setInteractionMode(!0),s.draw();var c=this._isHeightLevelMode?this._crossSectionPlane:this._levelPlane,u=s.projector.pickingRay(s.getNDCVector(),s.camera),m=new Ee;u.ray.intersectPlane(c,m)&&(this._startDragWorldPosition=m),this.processDrag(i)}}},{key:"processDrag",value:function(n){this._mouseButton===2||this._mouseButton===1?this._processDragMove(n):this._mouseButton===0&&this._processDragRotate(n)}},{key:"finishDrag",value:function(n){H5(t,"finishDrag",this,3)([n])}},{key:"isDragging",value:function(){return H5(t,"isDragging",this,3)([])}},{key:"canProcessInputEvent",value:function(n){var i=this._viewport.getContentBoundingBox();return!(!i||i.getWidth()===0||i.getHeight()===0||i.getDepth()===0)||(n.preventDefault(),n.stopPropagation(),!1)}},{key:"_processDragRotate",value:function(n){if(this.canProcessInputEvent(n)&&!this._isHeightLevelMode){var i=this._viewport,s=this._mainViewport,c=i.mouse.x-this._prevDragPosition.x,u=i.mouse.y-this._prevDragPosition.y,m=n.currentTarget.clientHeight,v=-c/n.currentTarget.clientWidth*Math.PI*2,M=-u/m*Math.PI,w=new Ee;w.copy(s.controls.object.position);var P=s.controls.object.up.clone(),q=new Ee;q.copy(s.controls.target);var Z=new Ee;Z.subVectors(w,q),Z.normalize();var K=new Ee(1,0,0);K.crossVectors(P,Z),K.y=0,K.normalize();var he=new qi;he.makeRotationAxis(K,M);var le=new qi;le.makeRotationY(v),q.sub(w),q.applyMatrix4(he),q.applyMatrix4(le),q.add(w),P.applyMatrix4(he),P.applyMatrix4(le),P.normalize(),s.controls.object.position.copy(w),s.controls.object.up.copy(P),s.controls.target.copy(q),s.camera.lookAt(s.controls.target),s.camera.updateProjectionMatrix(),s.camera.updateMatrixWorld(),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,i.draw(),s.draw()}}},{key:"_processDragMove",value:function(n){if(this.canProcessInputEvent(n)){var i=this._viewport,s=this._isHeightLevelMode?this._crossSectionPlane:this._levelPlane,c=i.projector.pickingRay(i.getNDCVector(),i.camera),u=new Ee;if(c.ray.intersectPlane(s,u)){var m=new Ee;m.subVectors(this._startDragWorldPosition,u),i.controls.object.position.add(m),i.controls.target.add(m)}i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),i.camera.lookAt(i.controls.target),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,i.draw()}}},{key:"processMouseWheel",value:function(n,i){this.canProcessInputEvent(i)&&n!==0&&this.processOrthographicMouseWheel(n,this._levelPlane,.5,2)}},{key:"startPinch",value:function(){var n=this._viewport;this._pinchToZoomCenterX=n.mouse.x,this._pinchToZoomCenterY=n.mouse.y}},{key:"finishPinch",value:function(){this._pinchDistance=null}},{key:"processPinch",value:function(n){if(this.canProcessInputEvent(n)){var i=this._viewport;i.controls.noZoom=!0;var s=n.originalEvent.touches[0].clientX-n.originalEvent.touches[1].clientX,c=n.originalEvent.touches[0].clientY-n.originalEvent.touches[1].clientY,u=Math.sqrt(s*s+c*c),m=H5(t,"roundToStep",this,3)([u,5]);if(this._pinchDistance!==null){var v=m-this._pinchDistance;if(this._pinchDistance=m,v<0)v=.95;else{if(!(v>0))return;v=1.05}i.camera.zoom*=v,i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),n.preventDefault(),n.stopPropagation(),i.controls.noZoom=!0,i.draw()}else this._pinchDistance=m}}},{key:"processClick",value:function(n){var i=this._viewport;if(!i.isCameraFlightInProgress()&&this.canProcessInputEvent(n)){var s=i.projector.pickingRay(i.getNDCVector(),i.camera);if(this._isHeightLevelMode)$(this._viewport.domElement).trigger("clickedNavigationMapHeightLevel",{height:s.ray.origin.y});else{var c=new Ee;s.ray.intersectPlane(this._levelPlane,c),c&&this._navigationMap.moveCamera(c).then(function(){i.draw()})}}}},{key:"processMouseMove",value:function(){if(this._isHeightLevelMode){var n=this._viewport,i=n.projector.pickingRay(n.getNDCVector(),n.camera);$(this._viewport.domElement).trigger("mouseMoveNavigationMapHeightLevel",{height:i.ray.origin.y})}}},{key:"canStartDrag",value:function(){return!0}},{key:"startPan",value:function(n){var i=this._viewport;H5(t,"startPan",this,3)([n]),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,i.renderQueue.setInteractionMode(!1),i.renderQueue.clear(),i.renderQueue.setInteractionMode(!0),i.draw();var s=this._isHeightLevelMode?this._crossSectionPlane:this._levelPlane,c=i.projector.pickingRay(i.getNDCVector(),i.camera),u=new Ee;c.ray.intersectPlane(s,u)&&(this._startDragWorldPosition=u),this.processPan(n)}},{key:"finishPan",value:function(){H5(t,"finishPan",this,3)([])}},{key:"isPaning",value:function(){return H5(t,"isPaning",this,3)([])}},{key:"processPan",value:function(n){var i=this._viewport;if(this.canProcessInputEvent(n)){var s=this._isHeightLevelMode?this._crossSectionPlane:this._levelPlane,c=i.projector.pickingRay(i.getNDCVector(),i.camera),u=new Ee;if(c.ray.intersectPlane(s,u)){var m=new Ee;m.subVectors(this._startDragWorldPosition,u),i.controls.object.position.add(m),i.controls.target.add(m)}i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),i.camera.lookAt(i.controls.target),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,n.preventDefault(),n.stopPropagation(),i.draw()}}},{key:"supportsGPUPicking",value:function(){return!1}}])}(eN);function hU(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,i)}return n}function CL(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?hU(Object(n),!0).forEach(function(i){Nl(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):hU(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function fU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(fU=function(){return!!e})()}var lse=function(e){function t(){var n;return zi(this,t),n=function(i,s,c){return s=xi(s),ba(i,fU()?Reflect.construct(s,c||[],xi(i).constructor):s.apply(i,c))}(this,t),n._sectionSettingsRooms={showFaces:!0,faceColor:"rgb(0,0,0)",faceOpacity:1,showEdges:!0,edgeColor:"rgb(128,128,128)",edgeOpacity:1,edgeThickness:30,useObjectColorAndOpacity:!0,parallelPlaneDistance:0,sectionBoxXDistance:0,sectionBoxYDistance:0,sectionBoxZDistance:0,sectionCutPlaneOption:C5},n}return va(t,e),Si(t,[{key:"requestSectionCuts",value:function(n,i,s){return Promise.all(ST(this.getSplitPromises(n,i,s)))}},{key:"getSplitPromises",value:function(n,i,s){var c=i.modelLayer.filter(function(v){return v.id===o1.Rooms}),u=i.modelLayer.filter(function(v){return v.id!==o1.Rooms&&U7.isInternalLayer(v.id)===!1}),m=[];return c.length>0&&(i.settings.edges=this._sectionSettingsRooms.showEdges,i.settings.edgesThickness=this._sectionSettingsRooms.edgeThickness,m.push(n.apiCallForOneObject(CL(CL({},i),{},{modelLayer:c}),this._sectionSettingsRooms))),u.length>0&&m.push(n.apiCallForOneObject(CL(CL({},i),{},{modelLayer:u}),s)),m}}])}(EW),M0=function(e,t,n){this._viewport=new hS({camera:{type:"orthographic",left:-.5,right:.5,top:.5,bottom:-.5,near:-1e3,far:1e3},controls:{type:"NavigationMapViewControl"},settings:e,units:this.currentUnits,domElementId:n,name:"navigationMapViewport",ssaoSupported:!1,shadowsSupported:!1,disableTransformControls:!0,persistentClippingPlaneSettings:!1}),this._sectionCutsLoader=new CW(t,this._viewport,new lse),this._rendererProject=null,this._viewport.renderQueue.useCulling=!1,this._viewport.renderQueue.useInteractionModeVertexCount=!1,this._viewport.brightness=.2,this._viewport.contrast=.5,this._mainViewport=null,this._mainCamera=null,this._cameraHelper=null,this._levelPlane=new br(new Ee(0,1,0),0),this._cameraHelperType=null;var i=[new Ee(0,0,-1),new Ee(0,0,1)],s=new Ys().setFromPoints(i);this._previewPlane=this._levelPlane.clone();var c=[new Ee(0,0,-1),new Ee(0,0,1)],u=new Ys().setFromPoints(c),m=new c0({color:240116,opacity:1});this._previewPlaneLine=new Ua(u,m),this._previewPlaneLine.computeLineDistances(),this._planeLine=new Ua(s,m),this._planeLine.computeLineDistances(),this._heightLevel=0,this._isHeightLevelMode=!1,this._heightLevelModeChangedCallback=null,this._isLoadingChangedCallback=null,this._isLoading=!1,this._isVisible=!0,this._deferredUpdate=!1,this._sectionSettings={showFaces:!0,faceColor:"rgb(0,0,0)",faceOpacity:1,showEdges:!1,edgeColor:"rgb(0,0,0)",edgeOpacity:1,edgeThickness:1,useObjectColorAndOpacity:!1,parallelPlaneDistance:0,sectionBoxXDistance:0,sectionBoxYDistance:0,sectionBoxZDistance:0,sectionCutPlaneOption:C5},M0.prototype.addEventListeners=function(){$(this._viewport.domElement).on("clickedNavigationMapHeightLevel",{self:this},this.onClickedNavigationMapHeightLevel),$(this._viewport.domElement).on("mouseMoveNavigationMapHeightLevel",{self:this},this.onMouseMoveNavigationMapHeightLevel),$(this._viewport.domElement).on("mouseenter",{self:this},this.onMouseenter),$(this._viewport.domElement).on("mouseleave",{self:this},this.onMouseleave)},M0.prototype.removeEventListeners=function(){$(this._viewport.domElement).off("clickedNavigationMapHeightLevel",this.onClickedNavigationMapHeightLevel),$(this._viewport.domElement).off("mouseMoveNavigationMapHeightLevel",this.onMouseMoveNavigationMapHeightLevel),$(this._viewport.domElement).off("mouseenter",this.onMouseenter),$(this._viewport.domElement).off("mouseleave",this.onMouseleave)},M0.prototype.onClickedNavigationMapHeightLevel=function(v,M){var w=v.data.self;M.height!==void 0&&(w.getHeightLevelMode()&&w.setHeightLevelMode(!1),w.setHeightLevel(M.height),w.setCameraHeightToHeightLevel())},M0.prototype.onMouseMoveNavigationMapHeightLevel=function(v,M){var w=v.data.self;if(w._previewPlaneLine&&M.height!==void 0){w._previewPlane.constant=-M.height;var P=new Ee;P=w._previewPlane.coplanarPoint(P),w._previewPlaneLine.position.y=P.y,w._viewport.draw()}},M0.prototype.onMouseenter=function(v){var M=v.data.self;M._previewPlaneLine&&M.getHeightLevelMode()&&(M._viewport.customScene.add(M._previewPlaneLine),M._viewport.draw())},M0.prototype.onMouseleave=function(v){var M=v.data.self;M._previewPlaneLine&&M.getHeightLevelMode()&&(M._viewport.customScene.remove(M._previewPlaneLine),M._viewport.draw())},M0.prototype.dispose=ee(ge().mark(function v(){return ge().wrap(function(M){for(;;)switch(M.prev=M.next){case 0:if(this._previewPlaneLine.geometry.dispose(),this._planeLine.geometry.dispose(),!this._viewport){M.next=5;break}return M.next=5,this._viewport.dispose();case 5:this.removeEventListeners(),this._mainViewport&&(this._mainViewport.objectSetChangedCallback=null);case 7:case"end":return M.stop()}},v,this)})),M0.prototype.initialize=function(){var v=ee(ge().mark(function M(w){var P,q;return ge().wrap(function(Z){for(;;)switch(Z.prev=Z.next){case 0:return P=w.getContent(),this._rendererProject=P,(q=this._viewport).setContent(P),this.setCameraHelperType(w.camera.type),w.getDisciplineNodeMeshes().copyTo(q.getDisciplineNodeMeshes()),P.viewports.push(q),P.getObjectsContainer().initObjects(q),q.getDisciplineNodeMeshes().updateWebGLBuffers(q),this.setViewportSize(),this.setHeightLevel(w.camera.position.y),Z.next=13,this.setMainViewport(w);case 13:return Z.next=15,this.setupMapMode();case 15:this.addEventListeners();case 16:case"end":return Z.stop()}},M,this)}));return function(M){return v.apply(this,arguments)}}(),M0.prototype.setCameraHelperType=function(v){this._cameraHelperType=v},M0.prototype.getCameraHelperType=function(){return this._cameraHelperType},M0.prototype.updateNavigationMapProjectionMode=function(){var v=ee(ge().mark(function M(w){var P;return ge().wrap(function(q){for(;;)switch(q.prev=q.next){case 0:if(this.setCameraHelperType(w.camera.type),this._mainViewport=w,this._mainCamera=w.camera.clone(),this._mainCamera.far=3*w.dynamicDrawRange._geoBoundingSphere.radius,w.camera.type=="orthographic"&&(P=this._mainCamera.far/2,this._mainCamera.left=P*w.camera.aspect/-2,this._mainCamera.right=P*w.camera.aspect/2,this._mainCamera.bottom=P/-2,this._mainCamera.top=P/2),this._viewport.customScene.remove(this._cameraHelper),this._cameraHelper=new $8(this._mainCamera),this._viewport.controls.setMainViewport(w),this._viewport.controls.setNavigationMap(this),this._viewport.controls.setHeightLevel(this._heightLevel),this._viewport.drawSynchronous(),this._isHeightLevelMode){q.next=14;break}return q.next=14,this.setupMapMode();case 14:case"end":return q.stop()}},M,this)}));return function(M){return v.apply(this,arguments)}}(),M0.prototype.setMainViewport=function(){var v=ee(ge().mark(function M(w){var P,q,Z,K,he=this;return ge().wrap(function(le){for(;;)switch(le.prev=le.next){case 0:return this._mainViewport=w,this._mainCamera=w.camera.clone(),this._cameraHelper=new $8(this._mainCamera),this._viewport.controls.setMainViewport(w),this._viewport.controls.setNavigationMap(this),this._viewport.controls.setHeightLevel(this._heightLevel),w.objectSetChangedCallback=function(pe){pe=="workingObjects"&&he.synchronizeWorkingObjects()},this.synchronizeWorkingObjects(),this._viewport.drawSynchronous(),le.next=11,this.setupMapMode();case 11:P=this._viewport.getContentBoundingBox(),q=mi.getStartPointOfLine(this._previewPlaneLine),Z=mi.getEndPointOfLine(this._previewPlaneLine),q.z=P.getCenterZ()-P.getDepth(),q.x=P.getCenterX(),Z.z=P.getCenterZ()+P.getDepth(),Z.x=P.getCenterX(),K=[q,Z],this._previewPlaneLine.geometry.setFromPoints(K),this._previewPlaneLine.geometry.verticesNeedUpdate=!0,this._previewPlaneLine.geometry.lineDistancesNeedUpdate=!0,this._previewPlaneLine.computeLineDistances(),this._viewport.content&&this._mainViewport.content&&(this._viewport.content.getDivisions().visibleDivisions=this._mainViewport.content.getDivisions().visibleDivisions.splice(0)),this._mainViewport.afterDrawCallback=function(){he._mainCamera.copy(he._mainViewport.camera),he._mainCamera.updateProjectionMatrix(),he._mainCamera.updateMatrixWorld(),he._viewport.draw()};case 25:case"end":return le.stop()}},M,this)}));return function(M){return v.apply(this,arguments)}}(),M0.prototype.getMainViewport=function(){return this._mainViewport},M0.prototype.registerHeightLevelModeChangedCallback=function(v){this._heightLevelModeChangedCallback=v},M0.prototype.registerIsLoadingChangedCallback=function(v){this._isLoadingChangedCallback=v},M0.prototype.setHeightLevelMode=function(){var v=ee(ge().mark(function M(w){return ge().wrap(function(P){for(;;)switch(P.prev=P.next){case 0:if(this._isHeightLevelMode=w,this._heightLevelModeChangedCallback&&this._heightLevelModeChangedCallback(w),this._viewport.controls.setHeightLevelMode(w),!w){P.next=8;break}return P.next=6,this.setupHeightLevelMode();case 6:P.next=10;break;case 8:return P.next=10,this.setupMapMode();case 10:case"end":return P.stop()}},M,this)}));return function(M){return v.apply(this,arguments)}}(),M0.prototype.getHeightLevelMode=function(){return this._isHeightLevelMode},M0.prototype.getProject=function(){return this._rendererProject},M0.prototype.isLoading=function(){return this._isLoading},M0.prototype.setupHeightLevelMode=ee(ge().mark(function v(){var M;return ge().wrap(function(w){for(;;)switch(w.prev=w.next){case 0:return M=this._viewport,this._viewport.brightness=0,this._viewport.contrast=1,M.controls.setHeightLevelMode(!0),M.customScene.remove(this._cameraHelper),M.customScene.add(this._planeLine),M.customScene.add(this._previewPlaneLine),M.clippingPlanes.setEnabled(!1),w.next=10,M.setCameraResetAxis("x");case 10:case"end":return w.stop()}},v,this)})),M0.prototype.setupMapMode=ee(ge().mark(function v(){var M,w;return ge().wrap(function(P){for(;;)switch(P.prev=P.next){case 0:return M=this._viewport,this._viewport.brightness=.2,this._viewport.contrast=.5,M.customScene.remove(this._planeLine),M.customScene.remove(this._previewPlaneLine),this._viewport.emptySectionCutSceneForSectionCutGeometry(),this._viewport.draw(),P.next=9,M.setCameraResetAxis("y");case 9:return M.controls.setHeightLevelMode(!1),M.customScene.add(this._cameraHelper),w=new Ee(0,this._heightLevel,0),M.clippingPlanes.setSectionPlane(this._levelPlane,w,!1,!0),M.clippingPlanes.setEnabled(!0),M.clippingPlanes.setVisible(!1,0),P.next=17,this.updateSectionCuts();case 17:case"end":return P.stop()}},v,this)})),M0.prototype.setHeightLevel=function(v){this._heightLevel=v;var M=this._viewport;M.controls.setHeightLevel(v),this._levelPlane.constant=-v;var w=new Ee;w=this._levelPlane.coplanarPoint(w);var P=this._viewport.getContentBoundingBox(),q=mi.getStartPointOfLine(this._planeLine),Z=mi.getEndPointOfLine(this._planeLine);q.z=P.getCenterZ()-P.getDepth(),q.y=w.y,q.x=P.getCenterX(),Z.z=P.getCenterZ()+P.getDepth(),Z.y=w.y,Z.x=P.getCenterX();var K=[q,Z];this._planeLine.geometry.setFromPoints(K),this._planeLine.geometry.verticesNeedUpdate=!0,this._planeLine.geometry.lineDistancesNeedUpdate=!0,this._planeLine.computeLineDistances(),M.draw()},M0.prototype.setHeightLevelToCameraHeight=function(){this.setHeightLevel(this._mainViewport.camera.position.y)},M0.prototype.setCameraHeightToHeightLevel=ee(ge().mark(function v(){var M,w;return ge().wrap(function(P){for(;;)switch(P.prev=P.next){case 0:return M=this._viewport,(w=this._mainViewport.camera.position.clone()).y=this._heightLevel,P.next=5,this.moveCamera(w);case 5:M.draw();case 6:case"end":return P.stop()}},v,this)})),M0.prototype.moveCamera=function(v){if(this._mainViewport.isCameraFlightInProgress())return Promise.resolve();var M=new Ee(v.x,v.y,v.z),w=new Ee().subVectors(this._mainViewport.controls.target,this._mainViewport.camera.position),P=w.length();w.normalize();var q=new Ee(0,1,0),Z=w.clone().projectOnPlane(q).normalize(),K=new Ee().addVectors(M,Z.clone().multiplyScalar(P)),he=new qi().lookAt(v,K,q),le=new Ci().setFromRotationMatrix(he);return L0.cameraFlyTo(this._mainViewport.camera,this._mainViewport.controls,this._mainViewport,M,K,q,le)},M0.prototype.resetView=function(){this._viewport.camera.zoom=1,this._viewport.restoreViewbox()},M0.prototype.setViewportSize=function(){var v=this._viewport,M=v.getContentBoundingBox();if(M){var w=M.isValid()?.5*Math.max(M.getWidth(),M.getDepth()):0;v.drawDisabled=!0,v.setViewportSize(),v.drawDisabled=!1,v.camera.left=-w*v.camera.aspect,v.camera.right=w*v.camera.aspect,v.camera.top=w,v.camera.bottom=-w,v.camera.updateProjectionMatrix(),v.camera.updateMatrixWorld(),v.draw()}}};M0.prototype.setLoading=function(e){this._isLoading=e,this._isLoadingChangedCallback&&this._isLoadingChangedCallback(this._isLoading)},M0.prototype.setVisible=function(e){this._isVisible=e,this._viewport.noRender=!e,this._viewport.draw()},M0.prototype.updateSectionCuts=ee(ge().mark(function e(){return ge().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(this._rendererProject&&this._isLoading!==!0){t.next=3;break}return this._deferredUpdate=!0,t.abrupt("return");case 3:return this.setLoading(!0),t.prev=4,t.next=7,this._sectionCutsLoader.loadSectionCuts(this._rendererProject,this._viewport,this._sectionSettings,!1);case 7:t.next=12;break;case 9:t.prev=9,t.t0=t.catch(4),console.error(t.t0);case 12:if(this.setLoading(!1),this._deferredUpdate!==!0){t.next=17;break}return this._deferredUpdate=!1,t.next=17,this.updateSectionCuts();case 17:this._viewport.draw();case 18:case"end":return t.stop()}},e,this,[[4,9]])})),M0.prototype.synchronizeWorkingObjects=function(){this._viewport.objectSets.workingObjects=this._mainViewport.objectSets.workingObjects.slice(),this._viewport.restoreWorkingObjectsCustomColors(),this._viewport.draw()};let cse=M0;function mU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(mU=function(){return!!e})()}function lO(e,t,n,i){var s=Q1(xi(1&i?e.prototype:e),t,n);return 2&i&&typeof s=="function"?function(c){return s.apply(n,c)}:s}var use=function(e){function t(n){var i;return zi(this,t),i=function(s,c,u){return c=xi(c),ba(s,mU()?Reflect.construct(c,u||[],xi(s).constructor):c.apply(s,u))}(this,t,[n]),i._prevDragPosition=new Ai,i._startDragWorldPosition=new Ee,i._pinchToZoomCenterX=0,i._pinchToZoomCenterY=0,i._pinchDistance=null,i._levelPlane=new br(new Ee(0,0,1),0),i._fileView=null,i}return va(t,e),Si(t,[{key:"getOverlayElement",value:function(){var n;return(n=this._fileView)===null||n===void 0?void 0:n.overlayMeshElement}},{key:"reset",value:function(){lO(t,"reset",this,3)([]),this._prevDragPosition=new Ai,this._startDragWorldPosition=new Ee,this._pinchToZoomCenterX=0,this._pinchToZoomCenterY=0,this._pinchDistance=null}},{key:"setFileView",value:function(n){this._fileView=n}},{key:"startDrag",value:function(n,i){if(this.canProcessInputEvent(i)){var s=this._viewport;lO(t,"startDrag",this,3)([n,i]),this._prevDragPosition.x=s.mouse.x,this._prevDragPosition.y=s.mouse.y,s.renderQueue.setInteractionMode(!1),s.renderQueue.clear(),s.renderQueue.setInteractionMode(!0),s.draw();var c=s.projector.pickingRay(s.getNDCVector(),s.camera),u=new Ee;c.ray.intersectPlane(this._levelPlane,u)&&(this._startDragWorldPosition=u),this.processDrag(i)}}},{key:"processDrag",value:function(n){this._mouseButton!==2&&this._mouseButton!==1||this._processDragMove(n)}},{key:"finishDrag",value:function(n){lO(t,"finishDrag",this,3)([n])}},{key:"isDragging",value:function(){return lO(t,"isDragging",this,3)([])}},{key:"canProcessInputEvent",value:function(n){var i=this._viewport.getContentBoundingBox();return!(!i||i.getWidth()===0||i.getHeight()===0||i.getDepth()===0)||(n.preventDefault(),n.stopPropagation(),!1)}},{key:"_processDragMove",value:function(n){if(this.canProcessInputEvent(n)){var i=this._viewport,s=i.projector.pickingRay(i.getNDCVector(),i.camera),c=new Ee;if(s.ray.intersectPlane(this._levelPlane,c)){var u=new Ee;u.subVectors(this._startDragWorldPosition,c),i.controls.object.position.add(u),i.controls.target.add(u)}i.camera.lookAt(i.controls.target),i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,this._viewport.draw()}}},{key:"processMouseWheel",value:function(n,i){if(this.canProcessInputEvent(i)&&n!==0){var s=this._viewport;s.checkSelectionMode("selectPointsForOverlay")&&s.currentInteractor.processMouseWheel(i),this.processOrthographicMouseWheel(n,this._levelPlane)}}},{key:"startPinch",value:function(){var n=this._viewport;this._pinchToZoomCenterX=n.mouse.x,this._pinchToZoomCenterY=n.mouse.y}},{key:"finishPinch",value:function(){this._pinchDistance=null}},{key:"processPinch",value:function(n){if(this.canProcessInputEvent(n)){var i=this._viewport;i.controls.noZoom=!0;var s=n.originalEvent.touches[0].clientX-n.originalEvent.touches[1].clientX,c=n.originalEvent.touches[0].clientY-n.originalEvent.touches[1].clientY,u=Math.sqrt(s*s+c*c),m=lO(t,"roundToStep",this,3)([u,5]);if(this._pinchDistance!==null){var v=m-this._pinchDistance;if(this._pinchDistance=m,v<0)v=.95;else{if(!(v>0))return;v=1.05}i.camera.zoom*=v,i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),n.preventDefault(),n.stopPropagation(),i.controls.noZoom=!0,i.draw()}else this._pinchDistance=m}}},{key:"processClick",value:function(n){var i=this._viewport;i.isCameraFlightInProgress()||this.canProcessInputEvent(n)&&i.checkSelectionMode("selectPointsForOverlay")&&i.currentInteractor.processMouseClick(n)}},{key:"processMouseMove",value:function(){}},{key:"canStartDrag",value:function(){return!0}},{key:"startPan",value:function(n){var i=this._viewport;lO(t,"startPan",this,3)([n]),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,i.renderQueue.setInteractionMode(!1),i.renderQueue.clear(),i.renderQueue.setInteractionMode(!0),i.draw();var s=i.projector.pickingRay(i.getNDCVector(),i.camera),c=new Ee;s.ray.intersectPlane(this._levelPlane,c)&&(this._startDragWorldPosition=c),this.processPan(n)}},{key:"finishPan",value:function(){lO(t,"finishPan",this,3)([])}},{key:"isPaning",value:function(){return lO(t,"isPaning",this,3)([])}},{key:"processPan",value:function(n){var i=this._viewport;if(this.canProcessInputEvent(n)){var s=i.projector.pickingRay(i.getNDCVector(),i.camera),c=new Ee;if(s.ray.intersectPlane(this._levelPlane,c)){var u=new Ee;u.subVectors(this._startDragWorldPosition,c),i.controls.object.position.add(u),i.controls.target.add(u)}i.camera.lookAt(i.controls.target),i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,n.preventDefault(),n.stopPropagation(),i.draw()}}},{key:"supportsGPUPicking",value:function(){return!1}}])}(eN),dse=function(){return Si(function n(i,s,c){zi(this,n),this._viewport=new hS({camera:{type:"orthographic",left:-.5,right:.5,top:.5,bottom:-.5,near:-1e3,far:1e3,position:{x:0,y:0,z:2e3}},controls:{type:"FileViewControl",target:{x:0,y:0,z:0}},settings:i,domElementId:c,name:"fileViewViewport",ssaoSupported:!1,shadowsSupported:!1,disableTransformControls:!0}),this._api=s,this._glbParser=new DW(this._viewport),this._viewport.controls.setFileView(this),this._isLoadingChangedCallback=null,this._isLoading=!1,this._isVisible=!0,this._fileData=null,this.overlayMeshElement=null,this.scene=this._viewport.overlays.scene},[{key:"dispose",value:(t=ee(ge().mark(function n(){return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:if(!this._viewport){i.next=3;break}return i.next=3,this._viewport.dispose();case 3:case"end":return i.stop()}},n,this)})),function(){return t.apply(this,arguments)})},{key:"registerIsLoadingChangedCallback",value:function(n){this._isLoadingChangedCallback=n}},{key:"isLoading",value:function(){return this._isLoading}},{key:"resetView",value:function(){var n;this._viewport.camera.zoom=1,this._viewport.camera.position.set(0,0,this.CAMERA_OFFSET),this._viewport.controls.target.set(0,0,0),(n=this._viewport.currentInteractor)===null||n===void 0||n.resizeMatchPointsDimension(),this._viewport.camera.updateProjectionMatrix(),this._viewport.camera.updateMatrixWorld(),this._viewport.draw()}},{key:"getBoundingBox",value:function(){var n=new iO,i=new si;return this._tempBoundingBox=mi.calculateVisibleGeometryBoundingBox(this.scene,i),i.isEmpty()===!1&&n.expandByBox3(i),n}},{key:"setViewportSize",value:function(){var n=this._viewport,i=this.getBoundingBox();if(i){var s=i.isValid()?.8*Math.max(i.getWidth(),i.getDepth(),i.getHeight()):0;n.drawDisabled=!0,n.setViewportSize(),n.drawDisabled=!1,n.camera&&(n.camera.left=-s*n.camera.aspect,n.camera.right=+s*n.camera.aspect,n.camera.top=+s,n.camera.bottom=-s,n.camera.updateProjectionMatrix(),n.camera.updateMatrixWorld()),n.draw()}}},{key:"setLoading",value:function(n){this._isLoading=n,this._isLoadingChangedCallback&&this._isLoadingChangedCallback(this._isLoading)}},{key:"setVisible",value:function(n){this._isVisible=n,this._viewport.noRender=!n,this._viewport.draw()}},{key:"getFileData",value:function(){return this._fileData&&(this._fileData.boundingBox=this.getBoundingBox()),this._fileData}},{key:"setFileData",value:function(n){this._fileData=n}},{key:"getViewport",value:function(){return this._viewport}},{key:"loadFileContent",value:(e=ee(ge().mark(function n(){var i,s;return ge().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:if(console.debug("[Renderer] FileView - loadFileContent called: fileData = ",this._fileData),this._isLoading!==!0){c.next=3;break}return c.abrupt("return");case 3:return c.prev=3,this.setLoading(!0),DT.clearScene(this.scene),this.overlayMeshElement=null,this._viewport.draw(),c.next=10,this._api.objects.getGLB(this._fileData.id,this._fileData.version);case 10:return i=c.sent,c.next=13,this._glbParser.parseGLB(i,this._fileData.id);case 13:(s=c.sent).isGroup&&j7.addBorderMesh(s,this._fileData.id),this.overlayMeshElement=this._viewport.objectFactory.createVisualObject({id:s.id,mesh:s.isGroup?s.borderMesh:s}),this.scene.add(s),this._viewport.draw(),c.next=24;break;case 20:throw c.prev=20,c.t0=c.catch(3),console.error(c.t0),c.t0;case 24:return c.prev=24,this.setLoading(!1),c.finish(24);case 27:case"end":return c.stop()}},n,this,[[3,20,24,27]])})),function(){return e.apply(this,arguments)})}]);var e,t}();function pse(){this.valueValidator=new g7;var e=!1,t=!1,n=!1,i=!1,s="rgb(255,255,255)",c="rgb(153,153,153)",u=.6108652381980153,m=.8726646259971648,v="ambientOcclusionSettings";this._usage=null,this._usageForInteraction=null,this._useShadows=null,this._useShadowsForInteraction=null,this._lightColor=null,this._ambientLightColor=null,this._lightRotation=null,this._lightElevation=null,this._getLocalStorageData=function(){return localStorage.getItem(v)?JSON.parse(localStorage.getItem(v)):this.resetToDefault()},this._setLocalStorageData=function(){var M={usage:this._usage,usageForInteraction:this._usageForInteraction,lightColor:this._lightColor.getStyle(),ambientLightColor:this._ambientLightColor.getStyle(),lightRotation:this._lightRotation,lightElevation:this._lightElevation,useShadows:this._useShadows,useShadowsForInteraction:this._useShadowsForInteraction};localStorage.setItem(v,JSON.stringify(M))},this.invalidate=function(){this._usage=null,this._usageForInteraction=null,this._lightColor=null,this._ambientLightColor=null,this._lightRotation=null,this._lightElevation=null,this._useShadows=null,this._useShadowsForInteraction=null},this.getUsage=function(){if(this._usage!==null)return this._usage;var M=this._getLocalStorageData();return this._usage=this.valueValidator.validateBoolean(M.usage,e),this._usage},this.getUsageForInteraction=function(){if(this._usageForInteraction!==null)return this._usageForInteraction;var M=this._getLocalStorageData();return this._usageForInteraction=this.valueValidator.validateBoolean(M.usageForInteraction,t),this._usageForInteraction},this.getUseShadows=function(){if(this._useShadows!==null)return this._useShadows;var M=this._getLocalStorageData();return this._useShadows=this.valueValidator.validateBoolean(M.useShadows,n),this._useShadows},this.getUseShadowsForInteraction=function(){if(this._useShadowsForInteraction!==null)return this._useShadowsForInteraction;var M=this._getLocalStorageData();return this._useShadowsForInteraction=this.valueValidator.validateBoolean(M.useShadowsForInteraction,i),this._useShadowsForInteraction},this.getLightColor=function(){if(this._lightColor)return this._lightColor;var M=this._getLocalStorageData();return this._lightColor=this.valueValidator.validateColor(M.lightColor,s),this._lightColor},this.getAmbientLightColor=function(){if(this._ambientLightColor)return this._ambientLightColor;var M=this._getLocalStorageData();return this._ambientLightColor=this.valueValidator.validateColor(M.ambientLightColor,c),this._ambientLightColor},this.getLightElevation=function(){if(this._lightElevation)return this._lightElevation;var M=this._getLocalStorageData();return this._lightElevation=this.valueValidator.validateFloat(M.lightElevation,m),this._lightElevation},this.getLightRotation=function(){if(this._lightRotation)return this._lightRotation;var M=this._getLocalStorageData();return this._lightRotation=this.valueValidator.validateFloat(M.lightRotation,u),this._lightRotation},this.resetToDefault=function(){return this._usage=e,this._usageForInteraction=t,this._useShadows=n,this._useShadowsForInteraction=i,this._lightColor=new ri(s),this._ambientLightColor=new ri(c),this._lightElevation=m,this._lightRotation=u,this._setLocalStorageData(),this.get()},this.get=function(){return{usage:this.getUsage(),usageForInteraction:this.getUsageForInteraction(),useShadows:this.getUseShadows(),useShadowsForInteraction:this.getUseShadowsForInteraction(),lightColor:this.getLightColor(),ambientLightColor:this.getAmbientLightColor(),lightRotation:this.getLightRotation(),lightElevation:this.getLightElevation()}},this.set=function(M){this._usage=this.valueValidator.validateBoolean(M.usage,e),this._usageForInteraction=this.valueValidator.validateBoolean(M.usageForInteraction,t),this._useShadows=this.valueValidator.validateBoolean(M.useShadows,n),this._useShadowsForInteraction=this.valueValidator.validateBoolean(M.useShadowsForInteraction,i),this._lightColor=this.valueValidator.validateColor(M.lightColor,s),this._ambientLightColor=this.valueValidator.validateColor(M.ambientLightColor,c),this._lightElevation=this.valueValidator.validateFloat(M.lightElevation,m),this._lightRotation=this.valueValidator.validateFloat(M.lightRotation,u),this._setLocalStorageData()}}let hse=function(){return Si(function e(t){zi(this,e),this.viewport=t,this.scene=new ke,this.scene.name="localCoordSystemScene",this.labelsScene=new ke,this.labelsScene.name="localCoordSystemLabelScene",this.localCoordSystem=null},[{key:"worldToLocal",value:function(e){if(!this.localCoordSystem)return e;var t=new Ee;return t.copy(e),this.localCoordSystem.worldToLocal(t)}},{key:"localToWorld",value:function(e){if(!this.localCoordSystem)return e;var t=new Ee;return t.copy(e),this.localCoordSystem.localToWorld(t)}},{key:"reset",value:function(){DT.clearScene(this.scene),DT.clearScene(this.labelsScene),this.localCoordSystem&&this.localCoordSystem.dispose(),this.localCoordSystem=null}},{key:"set",value:function(e){this.localCoordSystem=e}},{key:"hasLCS",value:function(){return this.localCoordSystem}},{key:"render",value:function(){this.viewport.isMarkupMode()&&(this.viewport.renderer.sortObjects=!0,this.viewport.renderer.render(this.scene,this.viewport.camera),this.viewport.renderer.sortObjects=!1)}},{key:"dispose",value:function(){this.reset()}}])}();function LT(e,t){var n=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(v,M){if(v){if(typeof v=="string")return bU(v,M);var w={}.toString.call(v).slice(8,-1);return w==="Object"&&v.constructor&&(w=v.constructor.name),w==="Map"||w==="Set"?Array.from(v):w==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(w)?bU(v,M):void 0}}(e))||t&&e&&typeof e.length=="number"){n&&(e=n);var i=0,s=function(){};return{s,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(v){throw v},f:s}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
11423
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var c,u=!0,m=!1;return{s:function(){n=n.call(e)},n:function(){var v=n.next();return u=v.done,v},e:function(v){m=!0,c=v},f:function(){try{u||n.return==null||n.return()}finally{if(m)throw c}}}}function aU(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=Array(t);n<t;n++)i[n]=e[n];return i}function oU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(oU=function(){return!!e})()}var ase=function(e){function t(Fe,Pe){var Ve;return zi(this,t),Ve=function(ot,Ct,Et){return Ct=xi(Ct),ba(ot,oU()?Reflect.construct(Ct,Et||[],xi(ot).constructor):Ct.apply(ot,Et))}(this,t,[Pe]),Ve.api=Fe,Ve.nodePromises={},Ve.errorHandler=null,Ve.canceled=!1,Ve.modelObjectsPromises={},Ve.modelTooDistantHandler=null,Ve.initialVisiblityProvider=null,Ve}return va(t,e),Si(t,[{key:"resetState",value:function(){this.nodePromises={},this.modelObjectsPromises={},this.canceled=!1}},{key:"loadProject",value:(Ge=ee(ge().mark(function Fe(Pe){var Ve,ot,Ct,Et;return ge().wrap(function(_t){for(;;)switch(_t.prev=_t.next){case 0:return Ve=this,ot=new Z7(this._viewport),_t.next=4,ot.initializeDisciplineNodeStore();case 4:return this.nodePromises={},this.modelObjectsPromises={},this._viewport.setContent(ot),_t.prev=7,_t.next=10,Ve.api.projects.get(Pe);case 10:Ct=_t.sent,ot.parseProjectDetailsResponse(Ct),_t.next=17;break;case 14:throw _t.prev=14,_t.t0=_t.catch(7),new Error(_t.t0);case 17:return _t.next=19,Ve.checkModelsModified(ot.getModels());case 19:return _t.prev=19,_t.next=22,Ve.api.projects.getTopology(Pe);case 22:Et=_t.sent,ot.parseProjectTopologyResponse(Et),_t.next=29;break;case 26:throw _t.prev=26,_t.t1=_t.catch(19),new Error(_t.t1);case 29:return _t.abrupt("return",ot);case 30:case"end":return _t.stop()}},Fe,this,[[7,14],[19,26]])})),function(Fe){return Ge.apply(this,arguments)})},{key:"loadModel",value:(Ne=ee(function(Fe,Pe,Ve){var ot=this,Ct=!(arguments.length>3&&arguments[3]!==void 0)||arguments[3],Et=arguments.length>4&&arguments[4]!==void 0?arguments[4]:void 0;return ge().mark(function _t(){var Zt,Pt,sn,On,kn;return ge().wrap(function(_n){for(;;)switch(_n.prev=_n.next){case 0:if(Pe.topologyLoaded!==!1){_n.next=12;break}return _n.prev=1,Zt=Pe.getCurrentRevision(),_n.next=5,ot.api.objects.getTopology(Pe.divisionTopologyId,Zt,!0,!1);case 5:Pt=_n.sent,Fe.parseProjectTopologyResponse(Pt,Zt),_n.next=12;break;case 9:throw _n.prev=9,_n.t0=_n.catch(1),new Error(_n.t0);case 12:if(ot.modelObjectsPromises[Pe.divisionTopologyId]||Ct!==!0||(ot.modelObjectsPromises[Pe.divisionTopologyId]=ot._loadModelObjectsTree(Pe,Et)),(sn=Ve||Pe.getLayerArray().filter(function(Jn){return!Jn.isInternal()}))&&sn.length!==0){_n.next=16;break}return _n.abrupt("return");case 16:if(!ot.initialVisiblityProvider){_n.next=25;break}return On=[],Pe.forEachLayer(function(Jn){On.push(Jn.setVisible(ot.initialVisiblityProvider.getModelLayerVisibility(Jn)))}),_n.next=21,Promise.all(On);case 21:return On=[],Pe.forEachTopologyLeafNode(function(Jn){On.push(Jn.setVisible(ot.initialVisiblityProvider.getNodeVisibility(Jn)))}),_n.next=25,Promise.all(On);case 25:return kn=[],sn.forEach(function(Jn){Jn.geometryLoaded===!1&&(Jn.geometryLoaded=!0,kn.push(ot._loadModelLayerGeometryCumulated(Fe,Jn,void 0)))}),_n.next=29,Promise.all(kn).catch(function(){throw new Error});case 29:Fe.getObjectsContainer().updateObjectsIndex(),Fe.resetWebGLBufferTimestamps(),ot._viewport.renderGPUPickTextureNeeded();case 32:case"end":return _n.stop()}},_t,null,[[1,9]])})()}),function(Fe,Pe,Ve){return Ne.apply(this,arguments)})},{key:"loadModelLayers",value:(Ce=ee(ge().mark(function Fe(Pe,Ve){var ot;return ge().wrap(function(Ct){for(;;)switch(Ct.prev=Ct.next){case 0:if(Ve&&Ve.length!==0){Ct.next=2;break}return Ct.abrupt("return");case 2:return ot=Ve[0].getModel(),Ct.abrupt("return",this.loadModel(Pe,ot,Ve));case 4:case"end":return Ct.stop()}},Fe,this)})),function(Fe,Pe){return Ce.apply(this,arguments)})},{key:"_loadClashFilters",value:(Ie=ee(ge().mark(function Fe(Pe,Ve){var ot,Ct,Et,_t,Zt=this;return ge().wrap(function(Pt){for(;;)switch(Pt.prev=Pt.next){case 0:if(ot=[],!Ve||Pe==null||!Pe.id){Pt.next=13;break}return Pt.prev=2,Pt.next=5,this.api.clashDetection.getAllClashRules(Pe.id);case 5:ot=Pt.sent,Pt.next=11;break;case 8:throw Pt.prev=8,Pt.t0=Pt.catch(2),new Error(Pt.t0);case 11:Pt.next=22;break;case 13:return Pt.prev=13,Pt.next=16,this.api.clashDetection.getFilters();case 16:ot=Pt.sent,Pt.next=22;break;case 19:throw Pt.prev=19,Pt.t1=Pt.catch(13),new Error(Pt.t1);case 22:Ct=[],Et=ge().mark(function sn(){var On;return ge().wrap(function(kn){for(;;)switch(kn.prev=kn.next){case 0:Object.hasOwn(ot,_t)&&(On=ot[_t],Ct.push(Zt.api.clashDetection.getFilterResults(Pe.id,On.id,!0,!0).then(function(_n){Pe.parseClashFilterResponse(On.id,_n)})));case 1:case"end":return kn.stop()}},sn)}),Pt.t2=ge().keys(ot);case 25:if((Pt.t3=Pt.t2()).done){Pt.next=30;break}return _t=Pt.t3.value,Pt.delegateYield(Et(),"t4",28);case 28:Pt.next=25;break;case 30:return Pt.next=32,Promise.all(Ct).catch(function(){throw new Error});case 32:case"end":return Pt.stop()}},Fe,this,[[2,8],[13,19]])})),function(Fe,Pe){return Ie.apply(this,arguments)})},{key:"loadClashes",value:(pe=ee(ge().mark(function Fe(Pe){return ge().wrap(function(Ve){for(;;)switch(Ve.prev=Ve.next){case 0:return this.resetState(),Ve.next=3,this._loadClashFilters(Pe,!0);case 3:return Ve.abrupt("return",Pe);case 4:case"end":return Ve.stop()}},Fe,this)})),function(Fe){return pe.apply(this,arguments)})},{key:"loadTopologyNode",value:(le=ee(function(Fe,Pe,Ve){var ot=this,Ct=!(arguments.length>3&&arguments[3]!==void 0)||arguments[3],Et=arguments.length>4&&arguments[4]!==void 0?arguments[4]:void 0;return ge().mark(function _t(){var Zt;return ge().wrap(function(Pt){for(;;)switch(Pt.prev=Pt.next){case 0:if(!(Ve&&Ve.length>0)){Pt.next=4;break}return Zt=Ve[0].getModel(),Pt.next=4,ot.loadModel(Fe,Zt,Ve,Ct,Et);case 4:case"end":return Pt.stop()}},_t)})()}),function(Fe,Pe,Ve){return le.apply(this,arguments)})},{key:"_updateGLBGeometryNodeBoundingBox",value:function(Fe,Pe){Fe.getBoundingBox().expandByMinMax(Pe.min.x,Pe.min.y,Pe.min.z,Pe.max.x,Pe.max.y,Pe.max.z)}},{key:"_fullProcessGLBResponse",value:(he=ee(function(Fe,Pe,Ve,ot){var Ct=this,Et=arguments.length>4&&arguments[4]!==void 0?arguments[4]:void 0;return ge().mark(function _t(){var Zt,Pt,sn,On,kn,_n,Jn,Di,Bt,Sn,Cn,$n,en,gt,Rt,Xt,qt,St;return ge().wrap(function(Nt){for(;;)switch(Nt.prev=Nt.next){case 0:for(On in Zt={},Pt=!1,sn=Fe.getObjectsContainer()._objectRef)sn[On]?Zt[On]="exists":Zt[On]=sn[On];if(Pe.id!==o1.ClashLayer&&Pe.id!==o1.RevisionCompareLayer||(Pt=!0),(kn=new sU(Fe,Pe,Ve)).createTopologyNodes(),Ct._viewport.isReady()){Nt.next=9;break}throw new Error("viewport not ready");case 9:return _n=ot.map(function(){var bt=ee(ge().mark(function Vt(pn){var Dn,bn;return ge().wrap(function(Un){for(;;)switch(Un.prev=Un.next){case 0:return Un.next=2,pn;case 2:return Dn=Un.sent,bn={chunkData:Dn,visualObjectExistanceOfId:Zt,isClashOrRevisionCompare:Pt,properitesPanelTopologyId:Et},Un.abrupt("return",new Promise(function(Wn){var Ln;(Ln=Ct._viewport.glbProcessorWorkerQueue)===null||Ln===void 0||Ln.concurrentGlbProcessorWorkerQueue.push(bn,function(ts){Wn(ts)})}));case 5:case"end":return Un.stop()}},Vt)}));return function(Vt){return bt.apply(this,arguments)}}()),Nt.prev=10,Nt.next=13,Promise.all(_n);case 13:Jn=Nt.sent,Di=!0,Bt=rU(Jn),Nt.prev=16,Bt.s();case 18:if((Sn=Bt.n()).done){Nt.next=27;break}if(Cn=Sn.value,$n=Cn.topoNodeMessage,Object.keys($n).length){Nt.next=23;break}return Nt.abrupt("continue",25);case 23:kn.setTopoNodesBuffersAttributes($n),Di=!1;case 25:Nt.next=18;break;case 27:Nt.next=32;break;case 29:Nt.prev=29,Nt.t0=Nt.catch(16),Bt.e(Nt.t0);case 32:return Nt.prev=32,Bt.f(),Nt.finish(32);case 35:if(!Di){Nt.next=37;break}return Nt.abrupt("return");case 37:kn.createTopoNodesBuffers(),en=rU(Jn),Nt.prev=39,en.s();case 41:if((gt=en.n()).done){Nt.next=50;break}return Rt=gt.value,Xt=new Float32Array(Rt.vertices),qt=new Float32Array(Rt.boundingBoxes),St=Rt.message,Nt.next=48,kn.transferMessageToTopologyNodes(St,Xt,qt);case 48:Nt.next=41;break;case 50:Nt.next=55;break;case 52:Nt.prev=52,Nt.t1=Nt.catch(39),en.e(Nt.t1);case 55:return Nt.prev=55,en.f(),Nt.finish(55);case 58:Nt.next=63;break;case 60:Nt.prev=60,Nt.t2=Nt.catch(10),console.log("Promise all error: ",Nt.t2);case 63:return Nt.abrupt("return",kn);case 64:case"end":return Nt.stop()}},_t,null,[[10,60],[16,29,32,35],[39,52,55,58]])})()}),function(Fe,Pe,Ve,ot){return he.apply(this,arguments)})},{key:"_loadObjectGeometryGLB",value:(K=ee(ge().mark(function Fe(Pe,Ve,ot){var Ct,Et,_t,Zt,Pt,sn,On,kn,_n,Jn;return ge().wrap(function(Di){for(;;)switch(Di.prev=Di.next){case 0:return Ct=Pe.getObjectsContainer().getObject(Ve).discipline,Et={chunked:null,revision:ot,lod:0,batch:null,vertexNormals:!0,smoothingAngle:null,topology:null,edges:!1,version:null},Di.next=4,this.api.objects.getGeometryGLB(Ve,null,Et);case 4:return _t=Di.sent,Zt={id:Ve,revision:ot,divisionTopologyId:Pe.getFakeDivisionTopologyId(),visible:!0},Pt=Pe.getFakeLegacyDiscipline(Ct,ot),Pe.getGeometryNodes().initNode(Pe,Zt,Pt),sn=Pe.getGeometryNodes().getDisciplineNode(Ve,Ct),On={id:Ct},kn={node:{id:Ve},divisionTopologyId:Pe.getFakeDivisionTopologyId(),forEachTopologyLeafNode:function(Bt){Bt(this.node)}},Di.next=13,this._fullProcessGLBResponse(Pe,On,kn,[_t],Ve);case 13:_n=Di.sent;try{Jn=_n.topoNodes[Ve],Pe.createDisciplineNodeMeshes(sn,Jn.opBuffer,Jn.trBuffer,Jn.edgesBuffer),sn.bufferLength=12*(Jn.opBuffer.bufferLength+Jn.trBuffer.bufferLength),sn.revision=ot,sn.boundingBox=new si(new Ee(Jn.boundingBox.minX,Jn.boundingBox.minY,Jn.boundingBox.minZ),new Ee(Jn.boundingBox.maxX,Jn.boundingBox.maxY,Jn.boundingBox.maxZ)),Jn.dispose(),_n.topoNodes={},_n.topoNodesPointers={}}catch(Bt){console.error("Error during createDisciplineNodes then disposal in properties panel: ",Bt)}return this._viewport.setContent(Pe),this._updateGLBGeometryNodeBoundingBox(Pe,sn.boundingBox),this._viewport.noRender||this._viewport.setCameraResetAxis("xyz",!1),Di.abrupt("return",sn);case 19:case"end":return Di.stop()}},Fe,this)})),function(Fe,Pe,Ve){return K.apply(this,arguments)})},{key:"loadObject",value:(Z=ee(function(Fe,Pe){var Ve=this,ot=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;return ge().mark(function Ct(){var Et,_t,Zt;return ge().wrap(function(Pt){for(;;)switch(Pt.prev=Pt.next){case 0:return Ve._viewport.clearLookupTextures(),Et=new eU(Ve._viewport),Ve.nodePromises={},Pt.prev=3,Pt.next=6,Ve.api.objects.getTopology(Fe,Pe,void 0,!0);case 6:_t=Pt.sent,Et.parseObjectTopologyResponse(_t,Pe,ot),Pt.next=13;break;case 10:throw Pt.prev=10,Pt.t0=Pt.catch(3),new Error(Pt.t0);case 13:return Pt.next=15,Ve._loadObjectGeometryGLB(Et,Fe,Pe);case 15:if(Zt=Pt.sent){Pt.next=18;break}throw new Error;case 18:if(Ve._viewport.isReady()){Pt.next=20;break}return Pt.abrupt("return",null);case 20:return Et.getObjectsContainer().updateObjectsIndex(),Et.getObjectsContainer().initObjects(Ve._viewport),Et.getObjectsContainer().forEachObject(function(sn){sn.visible?sn.show(Ve._viewport):sn.hide(Ve._viewport)},!1),Ve._viewport.updateWebGLBuffer(Zt),Ve._viewport.renderGPUPickTextureNeeded(),Pt.abrupt("return",Et);case 26:case"end":return Pt.stop()}},Ct,null,[[3,10]])})()}),function(Fe,Pe){return Z.apply(this,arguments)})},{key:"_reloadLayerGeometry",value:(q=ee(function(Fe,Pe,Ve){var ot=this,Ct=!(arguments.length>3&&arguments[3]!==void 0)||arguments[3],Et=arguments.length>4&&arguments[4]!==void 0?arguments[4]:void 0;return ge().mark(function _t(){var Zt;return ge().wrap(function(Pt){for(;;)switch(Pt.prev=Pt.next){case 0:return Zt=[],Pe.forEach(function(sn){var On=sn.getLayer(Ve);On&&(On.geometryLoaded=!1,sn.forEachTopologyLeafNode(function(kn){delete ot.nodePromises[kn.id],kn.isLayerGeometryLoaded(On)&&Fe.unloadNode(kn.id,On.id)}),Zt.push(ot.loadModel(Fe,sn,[On],Ct,Et)))}),Pt.next=4,Promise.all(Zt);case 4:return Pt.abrupt("return",Fe);case 5:case"end":return Pt.stop()}},_t)})()}),function(Fe,Pe,Ve){return q.apply(this,arguments)})},{key:"getModelResponsesBatch",value:function(Fe){return Fe.id+"("+Fe.getCurrentRevision()+")"}},{key:"checkModelModified",value:(P=ee(function(Fe){var Pe=this,Ve=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1],ot=!(arguments.length>2&&arguments[2]!==void 0)||arguments[2];return ge().mark(function Ct(){var Et;return ge().wrap(function(_t){for(;;)switch(_t.prev=_t.next){case 0:if(Et=!1,Fe==null||!Fe.isExternal){_t.next=3;break}return _t.abrupt("return",Et);case 3:if(!Fe.hasRevisions()){_t.next=9;break}return _t.next=6,Pe.api.objects.head(Fe.divisionTopologyId,Fe.getCurrentRevision());case 6:Et=_t.sent,_t.next=12;break;case 9:return _t.next=11,Pe.api.models.head(Fe.divisionTopologyId);case 11:Et=_t.sent;case 12:return console.debug("[renderer] Model has revisions: ".concat(Fe.hasRevisions()," / current revision: ").concat(Fe.getCurrentRevision()," is unchanged: ").concat(Et)),!Et&&Pe.api.getCache()&&Ve&&Pe.api.getCache().deleteBatchResponses(Pe.getModelResponsesBatch(Fe)),!Et&&Fe.getProject().getDisciplineNodeStore()&&ot&&Fe.getProject().getDisciplineNodeStore().clearModelNodes(Fe.id),_t.abrupt("return",Et);case 16:case"end":return _t.stop()}},Ct)})()}),function(Fe){return P.apply(this,arguments)})},{key:"checkModelsModified",value:(w=ee(function(Fe){var Pe=this,Ve=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1],ot=!(arguments.length>2&&arguments[2]!==void 0)||arguments[2];return ge().mark(function Ct(){var Et,_t;return ge().wrap(function(Zt){for(;;)switch(Zt.prev=Zt.next){case 0:return Et=!1,_t=[],Fe.forEach(function(Pt){var sn=null;(sn=Pt.hasRevisions()?Pe.api.objects.head(Pt.divisionTopologyId,Pt.getCurrentRevision()):Pe.api.models.head(Pt.divisionTopologyId)).then(function(On){Et=!On||Et,!On&&Pe.api.getCache()&&Ve&&Pe.api.getCache().deleteBatchResponses(Pe.getModelResponsesBatch(Pt)),!On&&Pt.getProject().getDisciplineNodeStore()&&ot&&Pt.getProject().getDisciplineNodeStore().clearModelNodes(Pt.id)}),_t.push(sn)}),Zt.next=5,Promise.all(_t);case 5:return Zt.abrupt("return",Et);case 6:case"end":return Zt.stop()}},Ct)})()}),function(Fe){return w.apply(this,arguments)})},{key:"checkAndRefreshProject",value:(M=ee(ge().mark(function Fe(Pe,Ve){var ot,Ct;return ge().wrap(function(Et){for(;;)switch(Et.prev=Et.next){case 0:return Et.next=2,this.checkModelsModified(Ve);case 2:if(!(ot=Et.sent)){Et.next=8;break}return Et.next=6,this.api.projects.get(Pe.id);case 6:Ct=Et.sent,Pe.parseProjectDetailsResponse(Ct);case 8:return Et.abrupt("return",ot);case 9:case"end":return Et.stop()}},Fe,this)})),function(Fe,Pe){return M.apply(this,arguments)})},{key:"reloadClashesFromFilter",value:(v=ee(ge().mark(function Fe(Pe,Ve,ot){return ge().wrap(function(Ct){for(;;)switch(Ct.prev=Ct.next){case 0:return Pe.disposeClashObjectsByFilter(Ve),Pe.parseClashFilterResponse(Ve,ot),Ct.abrupt("return",Pe);case 3:case"end":return Ct.stop()}},Fe)})),function(Fe,Pe,Ve){return v.apply(this,arguments)})},{key:"reloadClashes",value:(m=ee(ge().mark(function Fe(Pe,Ve){return ge().wrap(function(ot){for(;;)switch(ot.prev=ot.next){case 0:return Pe.disposeClashObjects(),ot.next=3,this._loadClashFilters(Pe,Ve);case 3:return ot.abrupt("return",Pe);case 4:case"end":return ot.stop()}},Fe,this)})),function(Fe,Pe){return m.apply(this,arguments)})},{key:"reloadRevisionCompareObjects",value:(u=ee(ge().mark(function Fe(Pe,Ve){return ge().wrap(function(ot){for(;;)switch(ot.prev=ot.next){case 0:return this._viewport.disableDraw(!0),ot.next=3,this.checkAndRefreshProject(Pe,[Ve]);case 3:return ot.next=5,this._reloadLayerGeometry(Pe,[Ve],o1.RevisionCompareLayer,!1,function(Ct){return Pe.getObjectsContainer().getRevisionCompareObject(Ct.id)});case 5:Pe.getObjectsContainer().forEachRevisionCompareObject(function(Ct){var Et=Pe.getObjectsContainer().getObject(Ct.id);Et&&Pe.getObjectsContainer().traverseDown(Et,function(_t){_t.visible=!1})}),this._viewport.disableDraw(!1),Ve.forEachTopologyLeafNode(function(Ct){var Et=Pe.getDisciplineNode(Ct,Ve.getRevisionCompareLayer());Et&&(Et.visible=!0)});case 8:case"end":return ot.stop()}},Fe,this)})),function(Fe,Pe){return u.apply(this,arguments)})},{key:"cancel",value:function(){this.canceled=!0}},{key:"_loadModelObjectsTree",value:(c=ee(ge().mark(function Fe(Pe,Ve){var ot,Ct,Et;return ge().wrap(function(_t){for(;;)switch(_t.prev=_t.next){case 0:return ot=Pe.getCurrentRevision(),Ct=this.getModelResponsesBatch(Pe),_t.next=4,this.api.objects.getTopology(Pe.divisionTopologyId,ot,void 0,!0,Ct);case 4:Et=_t.sent,Pe.parseModelObjectsTopology(Et,Ve),Pe.objectsLoaded=!0;case 7:case"end":return _t.stop()}},Fe,this)})),function(Fe,Pe){return c.apply(this,arguments)})},{key:"_loadModelLayerGeometryFromIndexDb",value:(s=ee(ge().mark(function Fe(Pe,Ve){var ot,Ct,Et,_t,Zt,Pt,sn,On,kn=this;return ge().wrap(function(_n){for(;;)switch(_n.prev=_n.next){case 0:if(ot=Pe.getDisciplineNodeStore()){_n.next=4;break}return console.error("Failed to get DisciplineNodeStore"),_n.abrupt("return");case 4:return Ct=Ve.getModel(),Et=Ct.getCurrentRevision(),_t=Ct.divisionTopologyId,Zt=Ve.getUserColor(),Pt=Ve.getUserOpacity(),sn=Ve.isBackground(),On=[],Ct.forEachTopologyLeafNode(function(Jn){var Di={id:Jn.id,revision:Et,divisionTopologyId:_t,visible:!0},Bt=Ve.asLegacyDiscipline();Pe.getGeometryNodes().initNode(Pe,Di,Bt);var Sn=Pe.getDisciplineNode(Di,Ve);Sn?On.push(Pe.readDisciplineNodeMeshes(ot,Sn,!0).then(function(){Jn.objectsTreeLoaded=!0,Jn.setLayerGeometryLoaded(Ve),Ct.divisionTopologyId&&Pe.getDivisions().expandDivisionBoundingBox(Ct.divisionTopologyId,Sn.boundingBox),Sn.setUserColor(Zt),Sn.setUserOpacity(Pt),Sn.setBackground(sn),Sn.setVisible(Jn.isVisible()&&Ve.isVisible()),kn.modelTooDistantHandler!==null&&kn._viewport.isRelativeModelDistancesTooLarge()&&kn.modelTooDistantHandler()})):console.error("Discipline node is undefined")}),_n.next=15,Promise.all(On);case 15:case"end":return _n.stop()}},Fe)})),function(Fe,Pe){return s.apply(this,arguments)})},{key:"_loadModelLayerGeometryCumulated",value:(i=ee(function(Fe,Pe){var Ve=this,ot=arguments.length>2&&arguments[2]!==void 0?arguments[2]:100;return ge().mark(function Ct(){var Et,_t,Zt,Pt,sn,On,kn,_n,Jn;return ge().wrap(function(Di){for(;;)switch(Di.prev=Di.next){case 0:if(Et=Pe.getModel(),_t=Et.getCurrentRevision(),Zt=Ve.getModelResponsesBatch(Et),!Ve.modelObjectsPromises[Et.divisionTopologyId]){Di.next=6;break}return Di.next=6,Ve.modelObjectsPromises[Et.divisionTopologyId];case 6:return Pt={chunked:!0,revision:_t,lod:ot,batch:Zt,vertexNormals:!0,smoothingAngle:null,topology:!0,edges:!1,version:null},sn=[],Di.next=10,Ve.api.objects.getGeometryGLB(Et.divisionTopologyId,Pe.id,Pt);case 10:return sn=Di.sent,Di.next=13,Ve._fullProcessGLBResponse(Fe,Pe,Et,sn,void 0);case 13:return On=Di.sent,Di.next=16,On.createDisciplineNodes();case 16:On.topoNodes={},On.topoNodesPointers={},kn=Pe.getUserColor(),_n=Pe.getUserOpacity(),Jn=Pe.isBackground(),Et.forEachTopologyLeafNode(function(Bt){Bt.objectsTreeLoaded=!0,Bt.setLayerGeometryLoaded(Pe);var Sn=Fe.getDisciplineNode(Bt,Pe);Ve._updateGLBGeometryNodeBoundingBox(Fe,Sn.boundingBox),Sn.setUserColor(kn),Sn.setUserOpacity(_n),Sn.setBackground(Jn),Sn.setVisible(Bt.isVisible()&&Pe.isVisible())}),Ve.modelTooDistantHandler!==null&&Ve._viewport.isRelativeModelDistancesTooLarge()&&Ve.modelTooDistantHandler();case 23:case"end":return Di.stop()}},Ct)})()}),function(Fe,Pe){return i.apply(this,arguments)})},{key:"loadModelStructure",value:(n=ee(ge().mark(function Fe(Pe,Ve,ot){var Ct,Et;return ge().wrap(function(_t){for(;;)switch(_t.prev=_t.next){case 0:if(!Ve.isExternal){_t.next=2;break}return _t.abrupt("return");case 2:if(Ve.topologyLoaded!==!1){_t.next=14;break}return _t.prev=3,Ct=Ve.getCurrentRevision(),_t.next=7,this.api.objects.getTopology(Ve.divisionTopologyId,Ct,!0,!1);case 7:Et=_t.sent,Pe.parseProjectTopologyResponse(Et,Ct),_t.next=14;break;case 11:throw _t.prev=11,_t.t0=_t.catch(3),new Error(_t.t0);case 14:if(Ve.objectsLoaded!==!1){_t.next=23;break}return _t.prev=15,_t.next=18,this._loadModelObjectsTree(Ve,ot);case 18:_t.next=23;break;case 20:throw _t.prev=20,_t.t1=_t.catch(15),new Error(_t.t1);case 23:case"end":return _t.stop()}},Fe,this,[[3,11],[15,20]])})),function(Fe,Pe,Ve){return n.apply(this,arguments)})}]);var n,i,s,c,u,m,v,M,w,P,q,Z,K,he,le,pe,Ie,Ce,Ne,Ge}($7);let lU=ase;function cU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(cU=function(){return!!e})()}var eN=function(e){function t(n){var i;return zi(this,t),i=function(s,c,u){return c=xi(c),ba(s,cU()?Reflect.construct(c,u||[],xi(s).constructor):c.apply(s,u))}(this,t),i._viewport=n,i._mouseButton=null,i._isDragging=!1,i._isPinching=!1,i._isPaning=!1,i.target=new Ee,i.object=null,i.minDistance=0,i.maxDistance=1/0,i.minPolarAngle=0,i.maxPolarAngle=Math.PI,i.lastPlaneIntersectionAfterZoom=new Ee,i}return va(t,e),Si(t,[{key:"startDrag",value:function(n){this._mouseButton=n,this._isDragging=!0}},{key:"processDrag",value:function(){}},{key:"finishDrag",value:function(){this._isDragging=!1}},{key:"isDragging",value:function(){return this._isDragging}},{key:"processOrthographicMouseWheel",value:function(n,i){var s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:.9,c=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1.1,u=arguments.length>4&&arguments[4]!==void 0&&arguments[4];if(n!==0){var m=this._viewport,v=new Ee;if(m.projector.pickingRay(m.getNDCVector(),m.camera).ray.intersectPlane(i,v)||console.error("planeIntersectionBeforeZoom has no intersection"),u){var M=this._calculateZoomFactor(!1),w=m.getNDCVector(),P=m.projector.pickingRay(w,m.camera).ray.direction;if(P.distanceTo(new Ee(0,0,0))>0){P.normalize(),P.multiplyScalar(n>0?M:-M);var q=new Ee().copy(m.controls.target),Z=new Ee().copy(m.camera.position);q.add(P),Z.add(P),m.camera.position.copy(Z),m.controls.target.copy(q)}m.controls.updateOrthographicFrustum()}else m.controls.noZoom=!0,L0.zoomOrthographicCamera(m.camera,n>1?s:c),m.camera.updateProjectionMatrix(),m.camera.updateMatrixWorld();var K=new Ee;m.projector.pickingRay(m.getNDCVector(),m.camera).ray.intersectPlane(i,K)||(console.error("planeIntersectionAfterZoom has no intersection"),K=this.lastPlaneIntersectionAfterZoom),this.planeIntersectionAfterZoom=K;var he=new Ee;he.subVectors(v,K),m.controls.target.add(he),m.camera.position.add(he),m.camera.updateProjectionMatrix(),m.camera.updateMatrixWorld()}}},{key:"processMouseWheel",value:function(){}},{key:"startPinch",value:function(){}},{key:"processPinch",value:function(){}},{key:"finishPinch",value:function(){}},{key:"isPinching",value:function(){return this._isPinching}},{key:"processClick",value:function(){}},{key:"processMouseMove",value:function(){}},{key:"canStartDrag",value:function(){return this._viewport.objectUnderMouse||this._viewport.rotationCenter}},{key:"startPan",value:function(){this._isPaning=!0}},{key:"finishPan",value:function(){this._isPaning=!1}},{key:"isPaning",value:function(){return this._isPaning}},{key:"processPan",value:function(){}},{key:"supportsGPUPicking",value:function(){return!0}},{key:"roundToStep",value:function(n,i){return Math.round(n/i)*i}},{key:"reset",value:function(){this.backupTarget&&(this.target=this.backupTarget.clone())}},{key:"revertModel",value:function(){this.backupTarget&&this.backupObjectPosition&&(this.target=this.backupTarget.clone(),this.object.position.copy(this.backupObjectPosition))}}])}(Gd);function uU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(uU=function(){return!!e})()}function oO(e,t,n,i){var s=Q1(xi(1&i?e.prototype:e),t,n);return 2&i&&typeof s=="function"?function(c){return s.apply(n,c)}:s}var dU=function(e){function t(n){var i;return zi(this,t),i=function(s,c,u){return c=xi(c),ba(s,uU()?Reflect.construct(c,u||[],xi(s).constructor):c.apply(s,u))}(this,t,[n]),i._meshSearch=new jb,i._dragRotationCenter=null,i._lastDragRotationCenter=null,i._prevDragPosition=new Ai,i._pinchToZoomCenterX=0,i._pinchToZoomCenterY=0,i._pinchDistance=null,i.isPointMatching=!1,i}return va(t,e),Si(t,[{key:"setNewRotationPoint",value:function(){var n=this._viewport;if(!n.objectUnderMouse)return n.rotationCenter&&(this._dragRotationCenter=n.rotationCenter.clone()),void console.debug("[Renderer] OrbitViewControl::setNewRotationPoint : Use existing rotation point");var i=this._meshSearch;i.findFaces=!0,i.search(n.objectUnderMouse,n,null,null,null),this._dragRotationCenter=i.faceIntersectionPoint,this._dragRotationCenter||(this._dragRotationCenter=this._lastDragRotationCenter,n.objectUnderMouse=null),console.debug("[Renderer] OrbitViewControl::setNewRotationPoint : New rotation point for object picking point")}},{key:"startDrag",value:function(n,i){var s=this._viewport;this.setNewRotationPoint(),this._dragRotationCenter&&(oO(t,"startDrag",this,3)([n,i]),this._prevDragPosition.x=s.mouse.x,this._prevDragPosition.y=s.mouse.y,s.axisHelper.visible=!0,s.axisHelper.position.copy(this._dragRotationCenter),s.renderQueue.interactionFocusPoint=this._dragRotationCenter,s.renderQueue.setInteractionMode(!1),s.renderQueue.clear(),s.renderQueue.setInteractionMode(!0),s.draw(),this.processDrag(i))}},{key:"processDrag",value:function(n){this._mouseButton===0?this._processDragRotate(n):this._mouseButton!==2&&this._mouseButton!==1||this._processDragMove(n),this._viewport.draw()}},{key:"finishDrag",value:function(n){oO(t,"finishDrag",this,3)([n]);var i,s,c,u=this._viewport;(!this._lastDragRotationCenter&&this._dragRotationCenter||this._lastDragRotationCenter&&this._dragRotationCenter&&!mi.equalVector3(this._lastDragRotationCenter,this._dragRotationCenter))&&(console.debug("[Renderer] OrbitViewControl::finishDrag : New rotation center point: x:".concat(Number.parseFloat(this==null||(i=this._dragRotationCenter)===null||i===void 0?void 0:i.x).toFixed(4)," y:").concat(Number.parseFloat(this==null||(s=this._dragRotationCenter)===null||s===void 0?void 0:s.y).toFixed(4)," z:").concat(Number.parseFloat(this==null||(c=this._dragRotationCenter)===null||c===void 0?void 0:c.z).toFixed(4))),u.setRotationCenter(this._dragRotationCenter),u.currentManipulationControlVisibility()&&u.clippingPlanes.setNewCenterPoint()),this._lastDragRotationCenter=this._dragRotationCenter,this._dragRotationCenter=null,u.axisHelper.visible=!1,u.renderQueue.interactionFocusPoint=null}},{key:"isDragging",value:function(){return this._dragRotationCenter!==null}},{key:"getLastDragRotationCenter",value:function(){return this._lastDragRotationCenter?this._lastDragRotationCenter.clone():null}},{key:"_processPointMatchDragRotate",value:function(n){var i=this._viewport,s=i.mouse.x-this._prevDragPosition.x,c=i.mouse.y-this._prevDragPosition.y,u=n.currentTarget.clientHeight,m=-s/n.currentTarget.clientWidth*Math.PI*2,v=-c/u*Math.PI;if(m!==0||v!==0){var M=i.controls.object.up.clone(),w=i.getVectorScreenCoordinates(this._dragRotationCenter);i.mouse.y<w.y&&(m*=-1),i.mouse.x>w.x&&(v*=-1);var P=i.clippingPlanes.getActiveClippingPlane().normal;P.normalize();var q=new qi;q.makeRotationAxis(P,m);var Z=new qi;Z.makeRotationAxis(P,v);var K=new Ee;K.copy(i.controls.object.position),K.sub(this._dragRotationCenter),K.applyMatrix4(Z),K.applyMatrix4(q),K.add(this._dragRotationCenter);var he=new Ee;he.copy(i.controls.target),he.sub(this._dragRotationCenter),he.applyMatrix4(Z),he.applyMatrix4(q),he.add(this._dragRotationCenter),M.applyMatrix4(Z),M.applyMatrix4(q),M.normalize(),i.controls.object.position.copy(K),i.controls.object.up.copy(M),i.controls.target.copy(he),this.updateCamera(),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y}}},{key:"_processDragRotate",value:function(n){if(this.isPointMatching&&this._viewport.currentInteractor instanceof k7)this._processPointMatchDragRotate(n);else{var i=this._viewport,s=i.mouse.x-this._prevDragPosition.x,c=i.mouse.y-this._prevDragPosition.y,u=n.currentTarget.clientHeight,m=-s/n.currentTarget.clientWidth*Math.PI*2,v=-c/u*Math.PI;if(m!==0||v!==0){var M=L0.getCameraViewDirection(i),w=i.controls.object.up.clone(),P=M.crossVectors(w,M);P.y=0,P.normalize();var q=new qi;q.makeRotationY(m);var Z=new qi;Z.makeRotationAxis(P,v);var K=new Ee;K.copy(i.controls.object.position),K.sub(this._dragRotationCenter),K.applyMatrix4(Z),K.applyMatrix4(q),K.add(this._dragRotationCenter);var he=new Ee;he.copy(i.controls.target),he.sub(this._dragRotationCenter),he.applyMatrix4(Z),he.applyMatrix4(q),he.add(this._dragRotationCenter),w.applyMatrix4(Z),w.applyMatrix4(q),w.normalize(),i.controls.object.position.copy(K),i.controls.object.up.copy(w),i.controls.target.copy(he),this.updateCamera(),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y}}}},{key:"_processDragMove",value:function(){var n=this._viewport,i=new Ee;i.copy(n.controls.object.position);var s=new Ee;s.copy(n.controls.target);var c=new Ee;c.subVectors(i,s),c.normalize();var u=new br;u.setFromNormalAndCoplanarPoint(c,this._dragRotationCenter);var m=new Ee,v=n.projector.pickingRay(n.getNDCVector(),n.camera),M=new Ee;if(v.ray.intersectPlane(u,M)&&m.subVectors(M,this._dragRotationCenter),!n.objectUnderMouse){var w=n.projector.pickingRay(n.getNDCVector(this._prevDragPosition.x,this._prevDragPosition.y),n.camera),P=new Ee;w.ray.intersectPlane(u,P)&&m.subVectors(M,P)}i.sub(m),s.sub(m),n.controls.object.position.copy(i),n.controls.target.copy(s),this.updateCamera(),this._prevDragPosition.x=n.mouse.x,this._prevDragPosition.y=n.mouse.y}},{key:"_calculateZoomFactor",value:function(n){var i=n?2.5:.25,s=this._viewport;if(s.pickGPU)if(s.rotationCenter)(i*=s.rotationCenter.distanceTo(s.camera.position))<100&&(i+=50);else{var c=new Ee(0,0,0),u=s.getContentBoundingBox();u!=null&&u.isValid()?(c.x=u.getCenterX(),c.y=u.getCenterY(),c.z=u.getCenterZ()):(c.x=0,c.y=0,c.z=0),i*=c.distanceTo(s.camera.position)}else i=n?2:.1;return isNaN(i)?1:i}},{key:"_processPointMatchMouseWheel",value:function(n){var i=this._viewport;i.currentInteractor.processMouseWheel();var s=i.clippingPlanes.getActiveClippingPlane(),c=new br;c.setFromNormalAndCoplanarPoint(s.normal,i.rotationCenter),this.processOrthographicMouseWheel(n,c)}},{key:"processMouseWheel",value:function(n,i){if(n!==0){var s=this._viewport;if(this.isPointMatching&&s.currentInteractor instanceof k7)this._processPointMatchMouseWheel(n);else if(s.name!=="mainRendererViewport"||s.camera.type!=="orthographic"){var c=this._calculateZoomFactor(i.shiftKey);s.controls.noZoom=!0,s.camera.updateProjectionMatrix(),s.camera.updateMatrixWorld();var u=s.getNDCVector(),m=s.projector.pickingRay(u,s.camera).ray.direction;if(m.distanceTo(new Ee(0,0,0))>0){m.normalize(),m.multiplyScalar(n>0?c:-c);var v=new Ee().copy(s.controls.target),M=new Ee().copy(s.camera.position);v.add(m),M.add(m),s.camera.position.copy(M),s.controls.target.copy(v),s.name==="mainRendererViewport"&&s.camera.type==="orthographic"&&s.controls.updateOrthographicFrustum()}}else{var w=new br,P=256*s.visibleGeometryBoundingSphere.radius,q=new Ee;s.camera.getWorldDirection(q),q.multiplyScalar(P),q.add(s.camera.position);var Z=new Ee;s.camera.getWorldDirection(Z),w.setFromNormalAndCoplanarPoint(Z,q),this.processOrthographicMouseWheel(n,w,void 0,void 0,!1)}}}},{key:"startPinch",value:function(){var n=this._viewport;this._pinchToZoomCenterX=n.mouse.x,this._pinchToZoomCenterY=n.mouse.y}},{key:"finishPinch",value:function(){this._pinchDistance=null}},{key:"isPinching",value:function(){return this._pinchDistance!==null}},{key:"processPinch",value:function(n){var i=this._viewport,s=n.originalEvent.touches[0].clientX-n.originalEvent.touches[1].clientX,c=n.originalEvent.touches[0].clientY-n.originalEvent.touches[1].clientY,u=Math.sqrt(s*s+c*c),m=oO(t,"roundToStep",this,3)([u,5])-oO(t,"roundToStep",this,3)([this._pinchDistance,5]);if(this._pinchDistance!==null){var v=u-this._pinchDistance;if(this._pinchDistance=u,m!==0){n.preventDefault(),n.stopPropagation();var M=this._calculateZoomFactor(n.shiftKey);i.controls.noZoom=!0,i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld();var w=i.getNDCVector(this._pinchToZoomCenterX,this._pinchToZoomCenterY),P=i.projector.pickingRay(w,i.camera).ray.direction;P.normalize(),P.multiplyScalar(v*M*.08);var q=new Ee().copy(i.controls.target),Z=new Ee().copy(i.camera.position);q.add(P),Z.add(P),i.camera.position.copy(Z),i.controls.target.copy(q),i.draw()}}else this._pinchDistance=u}},{key:"findModelObjectForMouseMove",value:function(){return this._viewport.GPUPick?this._viewport.pickGPU():this._viewport.pickRay(),this._viewport.objectUnderMouse?this._viewport.objectUnderMouse:null}},{key:"processClick",value:function(n){var i,s,c=this._viewport,u=!1;if(c.checkSelectionMode("addPin")&&!c.checkSelectionMode("hidden")&&c.objectUnderMouse){if(i=c.getRayIntersectedObjects()){var m,v,M,w,P=!1;if(c!=null&&(m=c.clippingPlanes)!==null&&m!==void 0&&m.isEnabled()){var q=new bT;q.setFromCamera(c.getNDCVector(),c.camera);for(var Z=q.intersectObject(i.object),K=0;K<Z.length;K++){var he=Z[K];if(!c.clippingPlanes.clipPoint(he.point).clipped){if(K===0&&he.point.equals(i.point))break;(i=he).position={x:he.point.x*c.normFactor,y:he.point.y*c.normFactor,z:he.point.z*c.normFactor};var le=new br(he.face.normal,0),pe=new Ee;he.face.normal.angleTo(c.camera.getWorldDirection(pe))<Math.PI/2&&le.negate(),i.normalVector={x:le.normal.x,y:le.normal.y,z:le.normal.z},P=!0;break}}}i.id=c.getSelected3DObjectId()||(c.objectSets.selectedObjects.length===1?c.objectSets.selectedObjects[0].id:""),P||(i.position={x:i.point.x*c.normFactor,y:i.point.y*c.normFactor,z:i.point.z*c.normFactor},i.face?i.normalVector={x:i.face.normal.x,y:i.face.normal.y,z:i.face.normal.z}:i.indices&&(s=3*i.indices[0],i.normalVector={x:i.object.geometry.attributes.normal.array[s],y:i.object.geometry.attributes.normal.array[s+1],z:i.object.geometry.attributes.normal.array[s+2]}));var Ie,Ce=c==null||(v=c.objectUnderMouse)===null||v===void 0?void 0:v.selected;c.addObjectsToWorkingSet([c.objectUnderMouse]),Ce&&c.selectObject(c.objectUnderMouse),i.node=c==null||(M=c.objectUnderMouse)===null||M===void 0?void 0:M.node,i.isOverlay=(c==null||(w=c.objectUnderMouse)===null||w===void 0?void 0:w.type)==="Overlay",i.isOverlay&&(i.id=c==null||(Ie=c.objectUnderMouse)===null||Ie===void 0?void 0:Ie.overlayId),c.deferred.resolve(i),c.resetObjectUnderMouse()}}else c.checkSelectionMode("pins")&&(i=c.getRayIntersectedObjects(c.pins.pinsObjects3D))&&($(c.domElement).trigger("projectPinSelected",i.object.userData),u=!0);if(!u&&!c.checkSelectionMode("addPin")&&!c.checkSelectionMode("moveModel")&&!c.checkSelectionMode("selectSectionPlane")&&!c.checkSelectionMode("selectPointsForOverlay")&&(!c.isMarkupMode()||c.isMarkupModeTurnedOff())){var Ne=c.checkSelectionMode("hidden");if(!c.blockObjectSelection||Ne){var Ge;if(!Ne&&typeof c.beforeObjectSelection=="function"&&c.beforeObjectSelection()===!1||(c.objectUnderMouse||c.setObjectUnderMouse(c.sectionCuts.getModelObjectForMesh()),!c.objectUnderMouse&&c.overlays.getVisualObjectForMesh()))return;var Fe=c==null||(Ge=c.objectUnderMouse)===null||Ge===void 0?void 0:Ge.isOverlayElement;if(!Fe){var Pe=!!c.forceMultiSelect||void 0;c.handleObjectSelection(n,!c.forceSingleObjectSelection&&Pe)}Ne||Fe||c.draw().then(function(){c.multiSelect=!!c.forceMultiSelect||n.ctrlKey||n.isLongPress,c.multiSelect=!c.forceSingleObjectSelection&&c.multiSelect,$(c.domElement).trigger("select3DObject"),c.multiSelect=!1})}}(c.checkSelectionMode("moveModel")||c.checkSelectionMode("selectSectionPlane")||c.checkSelectionMode("selectPointsForOverlay")||c.isMarkupMode())&&c.currentInteractor.processMouseClick(n)}},{key:"updateOrthographicFrustum",value:function(){var n=this._viewport,i=new br,s=new Ee;s=L0.getCameraViewDirection(n,s),i.setFromNormalAndCoplanarPoint(s,n.visibleGeometryBoundingSphere.center);var c,u=i.distanceToPoint(n.camera.position),m=(c=u>=0?n.visibleGeometryBoundingSphere.radius+Math.abs(u):Math.abs(u)<=n.visibleGeometryBoundingSphere.radius?n.visibleGeometryBoundingSphere.radius-Math.abs(u):1e4)/(2*(2*n.visibleGeometryBoundingSphere.radius));m>1.5&&(m=1.5);var v=c/2*m;n.camera.left=v*n.camera.aspect/-2,n.camera.right=v*n.camera.aspect/2,n.camera.bottom=v/-2,n.camera.top=v/2,n.camera.near=-c*m,n.camera.updateProjectionMatrix()}},{key:"startPan",value:function(){oO(t,"startPan",this,3)([])}},{key:"finishPan",value:function(){oO(t,"finishPan",this,3)([])}},{key:"isPaning",value:function(){return oO(t,"isPaning",this,3)([])}},{key:"processPan",value:function(){oO(t,"processPan",this,3)([])}},{key:"updateCamera",value:function(){var n=this._viewport;n.camera.lookAt(n.controls.target),n.camera.updateProjectionMatrix(),n.camera.updateMatrixWorld()}}])}(eN);function pU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(pU=function(){return!!e})()}function H5(e,t,n,i){var s=Q1(xi(1&i?e.prototype:e),t,n);return 2&i&&typeof s=="function"?function(c){return s.apply(n,c)}:s}var ose=function(e){function t(n){var i;return zi(this,t),i=function(s,c,u){return c=xi(c),ba(s,pU()?Reflect.construct(c,u||[],xi(s).constructor):c.apply(s,u))}(this,t,[n]),i._dragRotationCenter=null,i._prevDragPosition=new Ai,i._startDragWorldPosition=new Ee,i._pinchToZoomCenterX=0,i._pinchToZoomCenterY=0,i._pinchDistance=null,i._levelPlane=null,i._crossSectionPlane=new br(new Ee(1,0,0),0),i._isHeightLevelMode=!1,i._mainViewport=null,i._navigationMap=null,i}return va(t,e),Si(t,[{key:"setMainViewport",value:function(n){this._mainViewport=n}},{key:"getMainViewport",value:function(){return this._mainViewport}},{key:"setNavigationMap",value:function(n){this._navigationMap=n}},{key:"getNavigationMap",value:function(){return this._navigationMap}},{key:"setHeightLevel",value:function(n){this._levelPlane=new br(new Ee(0,1,0),-n)}},{key:"setHeightLevelMode",value:function(n){this._isHeightLevelMode=n}},{key:"startDrag",value:function(n,i){if(this.canProcessInputEvent(i)){var s=this._viewport;H5(t,"startDrag",this,3)([n,i]),this._prevDragPosition.x=s.mouse.x,this._prevDragPosition.y=s.mouse.y,s.renderQueue.setInteractionMode(!1),s.renderQueue.clear(),s.renderQueue.setInteractionMode(!0),s.draw();var c=this._isHeightLevelMode?this._crossSectionPlane:this._levelPlane,u=s.projector.pickingRay(s.getNDCVector(),s.camera),m=new Ee;u.ray.intersectPlane(c,m)&&(this._startDragWorldPosition=m),this.processDrag(i)}}},{key:"processDrag",value:function(n){this._mouseButton===2||this._mouseButton===1?this._processDragMove(n):this._mouseButton===0&&this._processDragRotate(n)}},{key:"finishDrag",value:function(n){H5(t,"finishDrag",this,3)([n])}},{key:"isDragging",value:function(){return H5(t,"isDragging",this,3)([])}},{key:"canProcessInputEvent",value:function(n){var i=this._viewport.getContentBoundingBox();return!(!i||i.getWidth()===0||i.getHeight()===0||i.getDepth()===0)||(n.preventDefault(),n.stopPropagation(),!1)}},{key:"_processDragRotate",value:function(n){if(this.canProcessInputEvent(n)&&!this._isHeightLevelMode){var i=this._viewport,s=this._mainViewport,c=i.mouse.x-this._prevDragPosition.x,u=i.mouse.y-this._prevDragPosition.y,m=n.currentTarget.clientHeight,v=-c/n.currentTarget.clientWidth*Math.PI*2,M=-u/m*Math.PI,w=new Ee;w.copy(s.controls.object.position);var P=s.controls.object.up.clone(),q=new Ee;q.copy(s.controls.target);var Z=new Ee;Z.subVectors(w,q),Z.normalize();var K=new Ee(1,0,0);K.crossVectors(P,Z),K.y=0,K.normalize();var he=new qi;he.makeRotationAxis(K,M);var le=new qi;le.makeRotationY(v),q.sub(w),q.applyMatrix4(he),q.applyMatrix4(le),q.add(w),P.applyMatrix4(he),P.applyMatrix4(le),P.normalize(),s.controls.object.position.copy(w),s.controls.object.up.copy(P),s.controls.target.copy(q),s.camera.lookAt(s.controls.target),s.camera.updateProjectionMatrix(),s.camera.updateMatrixWorld(),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,i.draw(),s.draw()}}},{key:"_processDragMove",value:function(n){if(this.canProcessInputEvent(n)){var i=this._viewport,s=this._isHeightLevelMode?this._crossSectionPlane:this._levelPlane,c=i.projector.pickingRay(i.getNDCVector(),i.camera),u=new Ee;if(c.ray.intersectPlane(s,u)){var m=new Ee;m.subVectors(this._startDragWorldPosition,u),i.controls.object.position.add(m),i.controls.target.add(m)}i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),i.camera.lookAt(i.controls.target),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,i.draw()}}},{key:"processMouseWheel",value:function(n,i){this.canProcessInputEvent(i)&&n!==0&&this.processOrthographicMouseWheel(n,this._levelPlane,.5,2)}},{key:"startPinch",value:function(){var n=this._viewport;this._pinchToZoomCenterX=n.mouse.x,this._pinchToZoomCenterY=n.mouse.y}},{key:"finishPinch",value:function(){this._pinchDistance=null}},{key:"processPinch",value:function(n){if(this.canProcessInputEvent(n)){var i=this._viewport;i.controls.noZoom=!0;var s=n.originalEvent.touches[0].clientX-n.originalEvent.touches[1].clientX,c=n.originalEvent.touches[0].clientY-n.originalEvent.touches[1].clientY,u=Math.sqrt(s*s+c*c),m=H5(t,"roundToStep",this,3)([u,5]);if(this._pinchDistance!==null){var v=m-this._pinchDistance;if(this._pinchDistance=m,v<0)v=.95;else{if(!(v>0))return;v=1.05}i.camera.zoom*=v,i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),n.preventDefault(),n.stopPropagation(),i.controls.noZoom=!0,i.draw()}else this._pinchDistance=m}}},{key:"processClick",value:function(n){var i=this._viewport;if(!i.isCameraFlightInProgress()&&this.canProcessInputEvent(n)){var s=i.projector.pickingRay(i.getNDCVector(),i.camera);if(this._isHeightLevelMode)$(this._viewport.domElement).trigger("clickedNavigationMapHeightLevel",{height:s.ray.origin.y});else{var c=new Ee;s.ray.intersectPlane(this._levelPlane,c),c&&this._navigationMap.moveCamera(c).then(function(){i.draw()})}}}},{key:"processMouseMove",value:function(){if(this._isHeightLevelMode){var n=this._viewport,i=n.projector.pickingRay(n.getNDCVector(),n.camera);$(this._viewport.domElement).trigger("mouseMoveNavigationMapHeightLevel",{height:i.ray.origin.y})}}},{key:"canStartDrag",value:function(){return!0}},{key:"startPan",value:function(n){var i=this._viewport;H5(t,"startPan",this,3)([n]),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,i.renderQueue.setInteractionMode(!1),i.renderQueue.clear(),i.renderQueue.setInteractionMode(!0),i.draw();var s=this._isHeightLevelMode?this._crossSectionPlane:this._levelPlane,c=i.projector.pickingRay(i.getNDCVector(),i.camera),u=new Ee;c.ray.intersectPlane(s,u)&&(this._startDragWorldPosition=u),this.processPan(n)}},{key:"finishPan",value:function(){H5(t,"finishPan",this,3)([])}},{key:"isPaning",value:function(){return H5(t,"isPaning",this,3)([])}},{key:"processPan",value:function(n){var i=this._viewport;if(this.canProcessInputEvent(n)){var s=this._isHeightLevelMode?this._crossSectionPlane:this._levelPlane,c=i.projector.pickingRay(i.getNDCVector(),i.camera),u=new Ee;if(c.ray.intersectPlane(s,u)){var m=new Ee;m.subVectors(this._startDragWorldPosition,u),i.controls.object.position.add(m),i.controls.target.add(m)}i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),i.camera.lookAt(i.controls.target),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,n.preventDefault(),n.stopPropagation(),i.draw()}}},{key:"supportsGPUPicking",value:function(){return!1}}])}(eN);function hU(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,i)}return n}function CL(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?hU(Object(n),!0).forEach(function(i){Nl(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):hU(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function fU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(fU=function(){return!!e})()}var lse=function(e){function t(){var n;return zi(this,t),n=function(i,s,c){return s=xi(s),ba(i,fU()?Reflect.construct(s,c||[],xi(i).constructor):s.apply(i,c))}(this,t),n._sectionSettingsRooms={showFaces:!0,faceColor:"rgb(0,0,0)",faceOpacity:1,showEdges:!0,edgeColor:"rgb(128,128,128)",edgeOpacity:1,edgeThickness:30,useObjectColorAndOpacity:!0,parallelPlaneDistance:0,sectionBoxXDistance:0,sectionBoxYDistance:0,sectionBoxZDistance:0,sectionCutPlaneOption:C5},n}return va(t,e),Si(t,[{key:"requestSectionCuts",value:function(n,i,s){return Promise.all(ST(this.getSplitPromises(n,i,s)))}},{key:"getSplitPromises",value:function(n,i,s){var c=i.modelLayer.filter(function(v){return v.id===o1.Rooms}),u=i.modelLayer.filter(function(v){return v.id!==o1.Rooms&&U7.isInternalLayer(v.id)===!1}),m=[];return c.length>0&&(i.settings.edges=this._sectionSettingsRooms.showEdges,i.settings.edgesThickness=this._sectionSettingsRooms.edgeThickness,m.push(n.apiCallForOneObject(CL(CL({},i),{},{modelLayer:c}),this._sectionSettingsRooms))),u.length>0&&m.push(n.apiCallForOneObject(CL(CL({},i),{},{modelLayer:u}),s)),m}}])}(EW),M0=function(e,t,n){this._viewport=new hS({camera:{type:"orthographic",left:-.5,right:.5,top:.5,bottom:-.5,near:-1e3,far:1e3},controls:{type:"NavigationMapViewControl"},settings:e,units:this.currentUnits,domElementId:n,name:"navigationMapViewport",ssaoSupported:!1,shadowsSupported:!1,disableTransformControls:!0,persistentClippingPlaneSettings:!1}),this._sectionCutsLoader=new CW(t,this._viewport,new lse),this._rendererProject=null,this._viewport.renderQueue.useCulling=!1,this._viewport.renderQueue.useInteractionModeVertexCount=!1,this._viewport.brightness=.2,this._viewport.contrast=.5,this._mainViewport=null,this._mainCamera=null,this._cameraHelper=null,this._levelPlane=new br(new Ee(0,1,0),0),this._cameraHelperType=null;var i=[new Ee(0,0,-1),new Ee(0,0,1)],s=new Ys().setFromPoints(i);this._previewPlane=this._levelPlane.clone();var c=[new Ee(0,0,-1),new Ee(0,0,1)],u=new Ys().setFromPoints(c),m=new c0({color:240116,opacity:1});this._previewPlaneLine=new Ua(u,m),this._previewPlaneLine.computeLineDistances(),this._planeLine=new Ua(s,m),this._planeLine.computeLineDistances(),this._heightLevel=0,this._isHeightLevelMode=!1,this._heightLevelModeChangedCallback=null,this._isLoadingChangedCallback=null,this._isLoading=!1,this._isVisible=!0,this._deferredUpdate=!1,this._sectionSettings={showFaces:!0,faceColor:"rgb(0,0,0)",faceOpacity:1,showEdges:!1,edgeColor:"rgb(0,0,0)",edgeOpacity:1,edgeThickness:1,useObjectColorAndOpacity:!1,parallelPlaneDistance:0,sectionBoxXDistance:0,sectionBoxYDistance:0,sectionBoxZDistance:0,sectionCutPlaneOption:C5},M0.prototype.addEventListeners=function(){$(this._viewport.domElement).on("clickedNavigationMapHeightLevel",{self:this},this.onClickedNavigationMapHeightLevel),$(this._viewport.domElement).on("mouseMoveNavigationMapHeightLevel",{self:this},this.onMouseMoveNavigationMapHeightLevel),$(this._viewport.domElement).on("mouseenter",{self:this},this.onMouseenter),$(this._viewport.domElement).on("mouseleave",{self:this},this.onMouseleave)},M0.prototype.removeEventListeners=function(){$(this._viewport.domElement).off("clickedNavigationMapHeightLevel",this.onClickedNavigationMapHeightLevel),$(this._viewport.domElement).off("mouseMoveNavigationMapHeightLevel",this.onMouseMoveNavigationMapHeightLevel),$(this._viewport.domElement).off("mouseenter",this.onMouseenter),$(this._viewport.domElement).off("mouseleave",this.onMouseleave)},M0.prototype.onClickedNavigationMapHeightLevel=function(v,M){var w=v.data.self;M.height!==void 0&&(w.getHeightLevelMode()&&w.setHeightLevelMode(!1),w.setHeightLevel(M.height),w.setCameraHeightToHeightLevel())},M0.prototype.onMouseMoveNavigationMapHeightLevel=function(v,M){var w=v.data.self;if(w._previewPlaneLine&&M.height!==void 0){w._previewPlane.constant=-M.height;var P=new Ee;P=w._previewPlane.coplanarPoint(P),w._previewPlaneLine.position.y=P.y,w._viewport.draw()}},M0.prototype.onMouseenter=function(v){var M=v.data.self;M._previewPlaneLine&&M.getHeightLevelMode()&&(M._viewport.customScene.add(M._previewPlaneLine),M._viewport.draw())},M0.prototype.onMouseleave=function(v){var M=v.data.self;M._previewPlaneLine&&M.getHeightLevelMode()&&(M._viewport.customScene.remove(M._previewPlaneLine),M._viewport.draw())},M0.prototype.dispose=ee(ge().mark(function v(){return ge().wrap(function(M){for(;;)switch(M.prev=M.next){case 0:if(this._previewPlaneLine.geometry.dispose(),this._planeLine.geometry.dispose(),!this._viewport){M.next=5;break}return M.next=5,this._viewport.dispose();case 5:this.removeEventListeners(),this._mainViewport&&(this._mainViewport.objectSetChangedCallback=null);case 7:case"end":return M.stop()}},v,this)})),M0.prototype.initialize=function(){var v=ee(ge().mark(function M(w){var P,q;return ge().wrap(function(Z){for(;;)switch(Z.prev=Z.next){case 0:return P=w.getContent(),this._rendererProject=P,(q=this._viewport).setContent(P),this.setCameraHelperType(w.camera.type),w.getDisciplineNodeMeshes().copyTo(q.getDisciplineNodeMeshes()),P.viewports.push(q),P.getObjectsContainer().initObjects(q),q.drawDisabled=!0,q.getDisciplineNodeMeshes().updateWebGLBuffers(q),this.setViewportSize(),this.setHeightLevel(w.camera.position.y),Z.next=14,this.setMainViewport(w);case 14:return Z.next=16,this.setupMapMode();case 16:q.drawDisabled=!1,q.draw(),this.addEventListeners();case 19:case"end":return Z.stop()}},M,this)}));return function(M){return v.apply(this,arguments)}}(),M0.prototype.setCameraHelperType=function(v){this._cameraHelperType=v},M0.prototype.getCameraHelperType=function(){return this._cameraHelperType},M0.prototype.updateNavigationMapProjectionMode=function(){var v=ee(ge().mark(function M(w){var P;return ge().wrap(function(q){for(;;)switch(q.prev=q.next){case 0:if(this.setCameraHelperType(w.camera.type),this._mainViewport=w,this._mainCamera=w.camera.clone(),this._mainCamera.far=3*w.dynamicDrawRange._geoBoundingSphere.radius,w.camera.type=="orthographic"&&(P=this._mainCamera.far/2,this._mainCamera.left=P*w.camera.aspect/-2,this._mainCamera.right=P*w.camera.aspect/2,this._mainCamera.bottom=P/-2,this._mainCamera.top=P/2),this._viewport.customScene.remove(this._cameraHelper),this._cameraHelper=new $8(this._mainCamera),this._viewport.controls.setMainViewport(w),this._viewport.controls.setNavigationMap(this),this._viewport.controls.setHeightLevel(this._heightLevel),this._viewport.drawSynchronous(),this._isHeightLevelMode){q.next=14;break}return q.next=14,this.setupMapMode();case 14:case"end":return q.stop()}},M,this)}));return function(M){return v.apply(this,arguments)}}(),M0.prototype.setMainViewport=function(){var v=ee(ge().mark(function M(w){var P,q,Z,K,he=this;return ge().wrap(function(le){for(;;)switch(le.prev=le.next){case 0:return this._mainViewport=w,this._mainCamera=w.camera.clone(),this._cameraHelper=new $8(this._mainCamera),this._viewport.controls.setMainViewport(w),this._viewport.controls.setNavigationMap(this),this._viewport.controls.setHeightLevel(this._heightLevel),w.objectSetChangedCallback=function(pe){pe=="workingObjects"&&he.synchronizeWorkingObjects()},this.synchronizeWorkingObjects(),this._viewport.drawSynchronous(),le.next=11,this.setupMapMode();case 11:P=this._viewport.getContentBoundingBox(),q=mi.getStartPointOfLine(this._previewPlaneLine),Z=mi.getEndPointOfLine(this._previewPlaneLine),q.z=P.getCenterZ()-P.getDepth(),q.x=P.getCenterX(),Z.z=P.getCenterZ()+P.getDepth(),Z.x=P.getCenterX(),K=[q,Z],this._previewPlaneLine.geometry.setFromPoints(K),this._previewPlaneLine.geometry.verticesNeedUpdate=!0,this._previewPlaneLine.geometry.lineDistancesNeedUpdate=!0,this._previewPlaneLine.computeLineDistances(),this._viewport.content&&this._mainViewport.content&&(this._viewport.content.getDivisions().visibleDivisions=this._mainViewport.content.getDivisions().visibleDivisions.splice(0)),this._mainViewport.afterDrawCallback=function(){he._mainCamera.copy(he._mainViewport.camera),he._mainCamera.updateProjectionMatrix(),he._mainCamera.updateMatrixWorld(),he._viewport.draw()};case 25:case"end":return le.stop()}},M,this)}));return function(M){return v.apply(this,arguments)}}(),M0.prototype.getMainViewport=function(){return this._mainViewport},M0.prototype.registerHeightLevelModeChangedCallback=function(v){this._heightLevelModeChangedCallback=v},M0.prototype.registerIsLoadingChangedCallback=function(v){this._isLoadingChangedCallback=v},M0.prototype.setHeightLevelMode=function(){var v=ee(ge().mark(function M(w){return ge().wrap(function(P){for(;;)switch(P.prev=P.next){case 0:if(this._isHeightLevelMode=w,this._heightLevelModeChangedCallback&&this._heightLevelModeChangedCallback(w),this._viewport.controls.setHeightLevelMode(w),!w){P.next=8;break}return P.next=6,this.setupHeightLevelMode();case 6:P.next=10;break;case 8:return P.next=10,this.setupMapMode();case 10:case"end":return P.stop()}},M,this)}));return function(M){return v.apply(this,arguments)}}(),M0.prototype.getHeightLevelMode=function(){return this._isHeightLevelMode},M0.prototype.getProject=function(){return this._rendererProject},M0.prototype.isLoading=function(){return this._isLoading},M0.prototype.setupHeightLevelMode=function(){var v=this._viewport;return this._viewport.brightness=0,this._viewport.contrast=1,v.controls.setHeightLevelMode(!0),v.customScene.remove(this._cameraHelper),v.customScene.add(this._planeLine),v.customScene.add(this._previewPlaneLine),v.clippingPlanes.setEnabled(!1),v.setCameraResetAxis("x")},M0.prototype.setupMapMode=ee(ge().mark(function v(){var M,w;return ge().wrap(function(P){for(;;)switch(P.prev=P.next){case 0:return M=this._viewport,this._viewport.brightness=.2,this._viewport.contrast=.5,M.customScene.remove(this._planeLine),M.customScene.remove(this._previewPlaneLine),this._viewport.emptySectionCutSceneForSectionCutGeometry(),this._viewport.draw(),P.next=9,M.setCameraResetAxis("y");case 9:return M.controls.setHeightLevelMode(!1),M.customScene.add(this._cameraHelper),w=new Ee(0,this._heightLevel,0),M.clippingPlanes.setSectionPlane(this._levelPlane,w,!1,!0),M.clippingPlanes.setEnabled(!0),M.clippingPlanes.setVisible(!1,0),P.abrupt("return",this.updateSectionCuts());case 16:case"end":return P.stop()}},v,this)})),M0.prototype.setHeightLevel=function(v){this._heightLevel=v;var M=this._viewport;M.controls.setHeightLevel(v),this._levelPlane.constant=-v;var w=new Ee;w=this._levelPlane.coplanarPoint(w);var P=this._viewport.getContentBoundingBox(),q=mi.getStartPointOfLine(this._planeLine),Z=mi.getEndPointOfLine(this._planeLine);q.z=P.getCenterZ()-P.getDepth(),q.y=w.y,q.x=P.getCenterX(),Z.z=P.getCenterZ()+P.getDepth(),Z.y=w.y,Z.x=P.getCenterX();var K=[q,Z];this._planeLine.geometry.setFromPoints(K),this._planeLine.geometry.verticesNeedUpdate=!0,this._planeLine.geometry.lineDistancesNeedUpdate=!0,this._planeLine.computeLineDistances(),M.draw()},M0.prototype.setHeightLevelToCameraHeight=function(){this.setHeightLevel(this._mainViewport.camera.position.y)},M0.prototype.setCameraHeightToHeightLevel=ee(ge().mark(function v(){var M,w;return ge().wrap(function(P){for(;;)switch(P.prev=P.next){case 0:return M=this._viewport,(w=this._mainViewport.camera.position.clone()).y=this._heightLevel,P.next=5,this.moveCamera(w);case 5:M.draw();case 6:case"end":return P.stop()}},v,this)})),M0.prototype.moveCamera=function(v){if(this._mainViewport.isCameraFlightInProgress())return Promise.resolve();var M=new Ee(v.x,v.y,v.z),w=new Ee().subVectors(this._mainViewport.controls.target,this._mainViewport.camera.position),P=w.length();w.normalize();var q=new Ee(0,1,0),Z=w.clone().projectOnPlane(q).normalize(),K=new Ee().addVectors(M,Z.clone().multiplyScalar(P)),he=new qi().lookAt(v,K,q),le=new Ci().setFromRotationMatrix(he);return L0.cameraFlyTo(this._mainViewport.camera,this._mainViewport.controls,this._mainViewport,M,K,q,le)},M0.prototype.resetView=function(){this._viewport.camera.zoom=1,this._viewport.restoreViewbox()},M0.prototype.setViewportSize=function(){this._viewport.setViewportSize()},M0.prototype.setLoading=function(v){this._isLoading=v,this._isLoadingChangedCallback&&this._isLoadingChangedCallback(this._isLoading)},M0.prototype.setVisible=function(v){this._isVisible=v,this._viewport.noRender=!v,this._viewport.draw()},M0.prototype.updateSectionCuts=ee(ge().mark(function v(){return ge().wrap(function(M){for(;;)switch(M.prev=M.next){case 0:if(this._rendererProject&&this._isLoading!==!0){M.next=3;break}return this._deferredUpdate=!0,M.abrupt("return");case 3:return this.setLoading(!0),M.prev=4,M.next=7,this._sectionCutsLoader.loadSectionCuts(this._rendererProject,this._viewport,this._sectionSettings,!1);case 7:M.next=12;break;case 9:M.prev=9,M.t0=M.catch(4),console.error(M.t0);case 12:if(this.setLoading(!1),this._deferredUpdate!==!0){M.next=17;break}return this._deferredUpdate=!1,M.next=17,this.updateSectionCuts();case 17:this._viewport.draw();case 18:case"end":return M.stop()}},v,this,[[4,9]])})),M0.prototype.synchronizeWorkingObjects=function(){this._viewport.objectSets.workingObjects=this._mainViewport.objectSets.workingObjects.slice(),this._viewport.restoreWorkingObjectsCustomColors(),this._viewport.draw()}};let cse=M0;function mU(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(mU=function(){return!!e})()}function lO(e,t,n,i){var s=Q1(xi(1&i?e.prototype:e),t,n);return 2&i&&typeof s=="function"?function(c){return s.apply(n,c)}:s}var use=function(e){function t(n){var i;return zi(this,t),i=function(s,c,u){return c=xi(c),ba(s,mU()?Reflect.construct(c,u||[],xi(s).constructor):c.apply(s,u))}(this,t,[n]),i._prevDragPosition=new Ai,i._startDragWorldPosition=new Ee,i._pinchToZoomCenterX=0,i._pinchToZoomCenterY=0,i._pinchDistance=null,i._levelPlane=new br(new Ee(0,0,1),0),i._fileView=null,i}return va(t,e),Si(t,[{key:"getOverlayElement",value:function(){var n;return(n=this._fileView)===null||n===void 0?void 0:n.overlayMeshElement}},{key:"reset",value:function(){lO(t,"reset",this,3)([]),this._prevDragPosition=new Ai,this._startDragWorldPosition=new Ee,this._pinchToZoomCenterX=0,this._pinchToZoomCenterY=0,this._pinchDistance=null}},{key:"setFileView",value:function(n){this._fileView=n}},{key:"startDrag",value:function(n,i){if(this.canProcessInputEvent(i)){var s=this._viewport;lO(t,"startDrag",this,3)([n,i]),this._prevDragPosition.x=s.mouse.x,this._prevDragPosition.y=s.mouse.y,s.renderQueue.setInteractionMode(!1),s.renderQueue.clear(),s.renderQueue.setInteractionMode(!0),s.draw();var c=s.projector.pickingRay(s.getNDCVector(),s.camera),u=new Ee;c.ray.intersectPlane(this._levelPlane,u)&&(this._startDragWorldPosition=u),this.processDrag(i)}}},{key:"processDrag",value:function(n){this._mouseButton!==2&&this._mouseButton!==1||this._processDragMove(n)}},{key:"finishDrag",value:function(n){lO(t,"finishDrag",this,3)([n])}},{key:"isDragging",value:function(){return lO(t,"isDragging",this,3)([])}},{key:"canProcessInputEvent",value:function(n){var i=this._viewport.getContentBoundingBox();return!(!i||i.getWidth()===0||i.getHeight()===0||i.getDepth()===0)||(n.preventDefault(),n.stopPropagation(),!1)}},{key:"_processDragMove",value:function(n){if(this.canProcessInputEvent(n)){var i=this._viewport,s=i.projector.pickingRay(i.getNDCVector(),i.camera),c=new Ee;if(s.ray.intersectPlane(this._levelPlane,c)){var u=new Ee;u.subVectors(this._startDragWorldPosition,c),i.controls.object.position.add(u),i.controls.target.add(u)}i.camera.lookAt(i.controls.target),i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,this._viewport.draw()}}},{key:"processMouseWheel",value:function(n,i){if(this.canProcessInputEvent(i)&&n!==0){var s=this._viewport;s.checkSelectionMode("selectPointsForOverlay")&&s.currentInteractor.processMouseWheel(i),this.processOrthographicMouseWheel(n,this._levelPlane)}}},{key:"startPinch",value:function(){var n=this._viewport;this._pinchToZoomCenterX=n.mouse.x,this._pinchToZoomCenterY=n.mouse.y}},{key:"finishPinch",value:function(){this._pinchDistance=null}},{key:"processPinch",value:function(n){if(this.canProcessInputEvent(n)){var i=this._viewport;i.controls.noZoom=!0;var s=n.originalEvent.touches[0].clientX-n.originalEvent.touches[1].clientX,c=n.originalEvent.touches[0].clientY-n.originalEvent.touches[1].clientY,u=Math.sqrt(s*s+c*c),m=lO(t,"roundToStep",this,3)([u,5]);if(this._pinchDistance!==null){var v=m-this._pinchDistance;if(this._pinchDistance=m,v<0)v=.95;else{if(!(v>0))return;v=1.05}i.camera.zoom*=v,i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),n.preventDefault(),n.stopPropagation(),i.controls.noZoom=!0,i.draw()}else this._pinchDistance=m}}},{key:"processClick",value:function(n){var i=this._viewport;i.isCameraFlightInProgress()||this.canProcessInputEvent(n)&&i.checkSelectionMode("selectPointsForOverlay")&&i.currentInteractor.processMouseClick(n)}},{key:"processMouseMove",value:function(){}},{key:"canStartDrag",value:function(){return!0}},{key:"startPan",value:function(n){var i=this._viewport;lO(t,"startPan",this,3)([n]),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,i.renderQueue.setInteractionMode(!1),i.renderQueue.clear(),i.renderQueue.setInteractionMode(!0),i.draw();var s=i.projector.pickingRay(i.getNDCVector(),i.camera),c=new Ee;s.ray.intersectPlane(this._levelPlane,c)&&(this._startDragWorldPosition=c),this.processPan(n)}},{key:"finishPan",value:function(){lO(t,"finishPan",this,3)([])}},{key:"isPaning",value:function(){return lO(t,"isPaning",this,3)([])}},{key:"processPan",value:function(n){var i=this._viewport;if(this.canProcessInputEvent(n)){var s=i.projector.pickingRay(i.getNDCVector(),i.camera),c=new Ee;if(s.ray.intersectPlane(this._levelPlane,c)){var u=new Ee;u.subVectors(this._startDragWorldPosition,c),i.controls.object.position.add(u),i.controls.target.add(u)}i.camera.lookAt(i.controls.target),i.camera.updateProjectionMatrix(),i.camera.updateMatrixWorld(),this._prevDragPosition.x=i.mouse.x,this._prevDragPosition.y=i.mouse.y,n.preventDefault(),n.stopPropagation(),i.draw()}}},{key:"supportsGPUPicking",value:function(){return!1}}])}(eN),dse=function(){return Si(function n(i,s,c){zi(this,n),this._viewport=new hS({camera:{type:"orthographic",left:-.5,right:.5,top:.5,bottom:-.5,near:-1e3,far:1e3,position:{x:0,y:0,z:2e3}},controls:{type:"FileViewControl",target:{x:0,y:0,z:0}},settings:i,domElementId:c,name:"fileViewViewport",ssaoSupported:!1,shadowsSupported:!1,disableTransformControls:!0}),this._api=s,this._glbParser=new DW(this._viewport),this._viewport.controls.setFileView(this),this._isLoadingChangedCallback=null,this._isLoading=!1,this._isVisible=!0,this._fileData=null,this.overlayMeshElement=null,this.scene=this._viewport.overlays.scene},[{key:"dispose",value:(t=ee(ge().mark(function n(){return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:if(!this._viewport){i.next=3;break}return i.next=3,this._viewport.dispose();case 3:case"end":return i.stop()}},n,this)})),function(){return t.apply(this,arguments)})},{key:"registerIsLoadingChangedCallback",value:function(n){this._isLoadingChangedCallback=n}},{key:"isLoading",value:function(){return this._isLoading}},{key:"resetView",value:function(){var n;this._viewport.camera.zoom=1,this._viewport.camera.position.set(0,0,this.CAMERA_OFFSET),this._viewport.controls.target.set(0,0,0),(n=this._viewport.currentInteractor)===null||n===void 0||n.resizeMatchPointsDimension(),this._viewport.camera.updateProjectionMatrix(),this._viewport.camera.updateMatrixWorld(),this._viewport.draw()}},{key:"getBoundingBox",value:function(){var n=new iO,i=new si;return this._tempBoundingBox=mi.calculateVisibleGeometryBoundingBox(this.scene,i),i.isEmpty()===!1&&n.expandByBox3(i),n}},{key:"setViewportSize",value:function(){var n=this._viewport,i=this.getBoundingBox();if(i){var s=i.isValid()?.8*Math.max(i.getWidth(),i.getDepth(),i.getHeight()):0;n.drawDisabled=!0,n.setViewportSize(),n.drawDisabled=!1,n.camera&&(n.camera.left=-s*n.camera.aspect,n.camera.right=+s*n.camera.aspect,n.camera.top=+s,n.camera.bottom=-s,n.camera.updateProjectionMatrix(),n.camera.updateMatrixWorld()),n.draw()}}},{key:"setLoading",value:function(n){this._isLoading=n,this._isLoadingChangedCallback&&this._isLoadingChangedCallback(this._isLoading)}},{key:"setVisible",value:function(n){this._isVisible=n,this._viewport.noRender=!n,this._viewport.draw()}},{key:"getFileData",value:function(){return this._fileData&&(this._fileData.boundingBox=this.getBoundingBox()),this._fileData}},{key:"setFileData",value:function(n){this._fileData=n}},{key:"getViewport",value:function(){return this._viewport}},{key:"loadFileContent",value:(e=ee(ge().mark(function n(){var i,s;return ge().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:if(console.debug("[Renderer] FileView - loadFileContent called: fileData = ",this._fileData),this._isLoading!==!0){c.next=3;break}return c.abrupt("return");case 3:return c.prev=3,this.setLoading(!0),DT.clearScene(this.scene),this.overlayMeshElement=null,this._viewport.draw(),c.next=10,this._api.objects.getGLB(this._fileData.id,this._fileData.version);case 10:return i=c.sent,c.next=13,this._glbParser.parseGLB(i,this._fileData.id);case 13:(s=c.sent).isGroup&&j7.addBorderMesh(s,this._fileData.id),this.overlayMeshElement=this._viewport.objectFactory.createVisualObject({id:s.id,mesh:s.isGroup?s.borderMesh:s}),this.scene.add(s),this._viewport.draw(),c.next=24;break;case 20:throw c.prev=20,c.t0=c.catch(3),console.error(c.t0),c.t0;case 24:return c.prev=24,this.setLoading(!1),c.finish(24);case 27:case"end":return c.stop()}},n,this,[[3,20,24,27]])})),function(){return e.apply(this,arguments)})}]);var e,t}();function pse(){this.valueValidator=new g7;var e=!1,t=!1,n=!1,i=!1,s="rgb(255,255,255)",c="rgb(153,153,153)",u=.6108652381980153,m=.8726646259971648,v="ambientOcclusionSettings";this._usage=null,this._usageForInteraction=null,this._useShadows=null,this._useShadowsForInteraction=null,this._lightColor=null,this._ambientLightColor=null,this._lightRotation=null,this._lightElevation=null,this._getLocalStorageData=function(){return localStorage.getItem(v)?JSON.parse(localStorage.getItem(v)):this.resetToDefault()},this._setLocalStorageData=function(){var M={usage:this._usage,usageForInteraction:this._usageForInteraction,lightColor:this._lightColor.getStyle(),ambientLightColor:this._ambientLightColor.getStyle(),lightRotation:this._lightRotation,lightElevation:this._lightElevation,useShadows:this._useShadows,useShadowsForInteraction:this._useShadowsForInteraction};localStorage.setItem(v,JSON.stringify(M))},this.invalidate=function(){this._usage=null,this._usageForInteraction=null,this._lightColor=null,this._ambientLightColor=null,this._lightRotation=null,this._lightElevation=null,this._useShadows=null,this._useShadowsForInteraction=null},this.getUsage=function(){if(this._usage!==null)return this._usage;var M=this._getLocalStorageData();return this._usage=this.valueValidator.validateBoolean(M.usage,e),this._usage},this.getUsageForInteraction=function(){if(this._usageForInteraction!==null)return this._usageForInteraction;var M=this._getLocalStorageData();return this._usageForInteraction=this.valueValidator.validateBoolean(M.usageForInteraction,t),this._usageForInteraction},this.getUseShadows=function(){if(this._useShadows!==null)return this._useShadows;var M=this._getLocalStorageData();return this._useShadows=this.valueValidator.validateBoolean(M.useShadows,n),this._useShadows},this.getUseShadowsForInteraction=function(){if(this._useShadowsForInteraction!==null)return this._useShadowsForInteraction;var M=this._getLocalStorageData();return this._useShadowsForInteraction=this.valueValidator.validateBoolean(M.useShadowsForInteraction,i),this._useShadowsForInteraction},this.getLightColor=function(){if(this._lightColor)return this._lightColor;var M=this._getLocalStorageData();return this._lightColor=this.valueValidator.validateColor(M.lightColor,s),this._lightColor},this.getAmbientLightColor=function(){if(this._ambientLightColor)return this._ambientLightColor;var M=this._getLocalStorageData();return this._ambientLightColor=this.valueValidator.validateColor(M.ambientLightColor,c),this._ambientLightColor},this.getLightElevation=function(){if(this._lightElevation)return this._lightElevation;var M=this._getLocalStorageData();return this._lightElevation=this.valueValidator.validateFloat(M.lightElevation,m),this._lightElevation},this.getLightRotation=function(){if(this._lightRotation)return this._lightRotation;var M=this._getLocalStorageData();return this._lightRotation=this.valueValidator.validateFloat(M.lightRotation,u),this._lightRotation},this.resetToDefault=function(){return this._usage=e,this._usageForInteraction=t,this._useShadows=n,this._useShadowsForInteraction=i,this._lightColor=new ri(s),this._ambientLightColor=new ri(c),this._lightElevation=m,this._lightRotation=u,this._setLocalStorageData(),this.get()},this.get=function(){return{usage:this.getUsage(),usageForInteraction:this.getUsageForInteraction(),useShadows:this.getUseShadows(),useShadowsForInteraction:this.getUseShadowsForInteraction(),lightColor:this.getLightColor(),ambientLightColor:this.getAmbientLightColor(),lightRotation:this.getLightRotation(),lightElevation:this.getLightElevation()}},this.set=function(M){this._usage=this.valueValidator.validateBoolean(M.usage,e),this._usageForInteraction=this.valueValidator.validateBoolean(M.usageForInteraction,t),this._useShadows=this.valueValidator.validateBoolean(M.useShadows,n),this._useShadowsForInteraction=this.valueValidator.validateBoolean(M.useShadowsForInteraction,i),this._lightColor=this.valueValidator.validateColor(M.lightColor,s),this._ambientLightColor=this.valueValidator.validateColor(M.ambientLightColor,c),this._lightElevation=this.valueValidator.validateFloat(M.lightElevation,m),this._lightRotation=this.valueValidator.validateFloat(M.lightRotation,u),this._setLocalStorageData()}}let hse=function(){return Si(function e(t){zi(this,e),this.viewport=t,this.scene=new ke,this.scene.name="localCoordSystemScene",this.labelsScene=new ke,this.labelsScene.name="localCoordSystemLabelScene",this.localCoordSystem=null},[{key:"worldToLocal",value:function(e){if(!this.localCoordSystem)return e;var t=new Ee;return t.copy(e),this.localCoordSystem.worldToLocal(t)}},{key:"localToWorld",value:function(e){if(!this.localCoordSystem)return e;var t=new Ee;return t.copy(e),this.localCoordSystem.localToWorld(t)}},{key:"reset",value:function(){DT.clearScene(this.scene),DT.clearScene(this.labelsScene),this.localCoordSystem&&this.localCoordSystem.dispose(),this.localCoordSystem=null}},{key:"set",value:function(e){this.localCoordSystem=e}},{key:"hasLCS",value:function(){return this.localCoordSystem}},{key:"render",value:function(){this.viewport.isMarkupMode()&&(this.viewport.renderer.sortObjects=!0,this.viewport.renderer.render(this.scene,this.viewport.camera),this.viewport.renderer.sortObjects=!1)}},{key:"dispose",value:function(){this.reset()}}])}();function LT(e,t){var n=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(v,M){if(v){if(typeof v=="string")return bU(v,M);var w={}.toString.call(v).slice(8,-1);return w==="Object"&&v.constructor&&(w=v.constructor.name),w==="Map"||w==="Set"?Array.from(v):w==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(w)?bU(v,M):void 0}}(e))||t&&e&&typeof e.length=="number"){n&&(e=n);var i=0,s=function(){};return{s,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(v){throw v},f:s}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
11424
11424
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var c,u=!0,m=!1;return{s:function(){n=n.call(e)},n:function(){var v=n.next();return u=v.done,v},e:function(v){m=!0,c=v},f:function(){try{u||n.return==null||n.return()}finally{if(m)throw c}}}}function bU(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=Array(t);n<t;n++)i[n]=e[n];return i}var tN=function(e){this.viewport=e,this.objectUtils=new lL(this.viewport),this.scene=new ke,this.scene.name="markupsScene",this.labelsScene=new ke,this.labelsScene.name="markupsLabelScene",this.markups=[],this.workingObjects=[],this.countOfElems=function(){return this.markups.length},this.get=function(t){return this.markups[t]},this.add=function(t){t.convertSectionGeometryIdsToObjectIds(),this.markups.push(t)},this.updateLabel=function(t,n){var i=t.containsPoint(n.calcTextPosition());return n.setLabelVisible(i),n.updateLabel(this.viewport.projector,this.viewport.camera,this.viewport.orthoCamera),i},this.setVisibleState=function(t){var n=this,i=!0;return t.getObjectIds().map(function(s){n.viewport.isVisibleObject(s)||(i=!1)}),t.setVisible(i),i},this.applyClipping=function(t,n){if(n){var i;if(t.hasObjectId((i=this.viewport.objectUnderMouse)===null||i===void 0?void 0:i.id))return void(t.isClipped&&t.unClip());t.clip(this.viewport.clippingPlanes)}else t.isClipped&&t.unClip()},this.render=function(){var t=this,n=arguments.length>0&&arguments[0]!==void 0&&arguments[0];if(this.viewport.isMarkupMode()){var i=this.viewport.checkSelectionMode("section"),s=this.viewport.renderQueue.frustum;this.markups.forEach(function(c){t.setVisibleState(c)?(t.updateLabel(s,c),t.applyClipping(c,i)):c.setLabelVisible(!1)}),tN.USE_TRANSPARENCY&&!n&&(this.markups.forEach(function(c){return c.setMaterial(!0)}),this.viewport.renderer.sortObjects=!1,this.viewport.renderer.render(this.scene,this.viewport.camera)),this.markups.forEach(function(c){return c.setMaterial(!1)}),this.viewport.renderer.sortObjects=!0,this.viewport.renderer.render(this.scene,this.viewport.camera),n&&this.markups.forEach(function(c){return c.setLabelOpaque(n)}),this.viewport.renderer.sortObjects=!0,this.viewport.renderer.render(this.labelsScene,this.viewport.orthoCamera),this.viewport.renderer.sortObjects=!1}},this.has=function(t){var n,i=LT(this.markups);try{for(i.s();!(n=i.n()).done;){var s=n.value;if(t==="annotations"&&s instanceof mL||t==="labels"&&s instanceof fL||t==="dimensions"&&s instanceof z5)return!0}}catch(c){i.e(c)}finally{i.f()}return!1},this.getAll=function(t){var n,i=[],s=LT(this.markups);try{for(s.s();!(n=s.n()).done;){var c=n.value;(t==="annotations"&&c instanceof mL||t==="labels"&&c instanceof fL||t==="dimensions"&&c instanceof z5)&&i.push(c.getObjectData())}}catch(u){s.e(u)}finally{s.f()}return i},this.setAnnotations=function(t){this.removeAll("annotations");var n,i=LT(t);try{for(i.s();!(n=i.n()).done;){var s=n.value,c=new oW(this.viewport);c.setObjectData(s),this.add(c),c.addToScene(this.scene,this.labelsScene),c.updateGeometry(this.viewport.projector,this.viewport.camera,this.viewport.orthoCamera),c.setVisible(!0),c.setMaterial(!0),c.setLabelVisible(!0),c.setDeleteButtonVisible(!0)}}catch(u){i.e(u)}finally{i.f()}this.viewport.draw()},this.setDimensions=function(t){this.removeAll("dimensions");var n,i=LT(t);try{for(i.s();!(n=i.n()).done;){var s=n.value,c=null;switch(s.type){case"DimensionLine":c=new yq(this.viewport);break;case"DimensionPerpendicularLine":c=new C7(this.viewport);break;case"DimensionEdge":c=new hL(this.viewport);break;case"DimensionLocalPoint":c=new Cq(this.viewport,this.viewport.textLocalizationFnc("_Measure_Local_Point_Shortcut_For_Dimension_Label"));break;case"DimensionCalibrationPoint":c=new Sq(this.viewport,this.viewport.textLocalizationFnc("_Measure_Calibrated_Point_Shortcut_For_Dimension_Label"));break;case"DimensionAngle":c=new Aq(this.viewport);break;default:console.warn("Dimension type ".concat(s.type," is not defined"))}c&&(c.setObjectData(s),this.add(c),c.addToScene(this.scene,this.labelsScene),c.updateGeometry(this.labelsScene,this.viewport.projector,this.viewport.camera,this.viewport.orthoCamera),c.setVisible(!0),c.setMaterial(!0),c.setLabelVisible(!0),c.setDeleteButtonVisible(!0))}}catch(u){i.e(u)}finally{i.f()}this.viewport.draw()},this.setLabels=function(t){this.removeAll("labels");var n,i=LT(t);try{for(i.s();!(n=i.n()).done;){var s=n.value,c=new N7;c.setObjectData(s),c.addObjectId(s.objectIds[0]),this.add(c),c.addToScene(this.scene,this.labelsScene),c.updateGeometry(this.labelsScene,this.viewport.projector,this.viewport.camera,this.viewport.orthoCamera),c.setVisible(!0),c.setMaterial(!0),c.setLabelVisible(!0),c.setDeleteButtonVisible(!0)}}catch(u){i.e(u)}finally{i.f()}this.viewport.draw()},this.remove=function(t){for(var n=0;n<this.markups.length;n++)if(this.markups[n]===t)return this.markups.splice(n,1),t.removeFromScene(this.scene,this.labelsScene),void t.dispose()},this.removeAll=function(t){var n,i=[],s=LT(this.markups);try{for(s.s();!(n=s.n()).done;){var c=n.value;t===""||!t||t==="annotations"&&c instanceof mL||t==="labels"&&c instanceof fL||t==="dimensions"&&c instanceof z5?(c.removeFromScene(this.scene,this.labelsScene),c.dispose()):i.push(c)}}catch(u){s.e(u)}finally{s.f()}this.markups=i},this._getIsolatedObjectIds=function(){var t=[];return this.markups.forEach(function(n){n.isIsolated()&&n.getObjectIds().map(function(i){t.indexOf(i)<0&&t.push(i)})}),t},this.cleanupIsolation=function(){this.viewport.checkSelectionMode("isolated")&&this.isolate()},this.isolate=function(){var t=this,n=this.viewport.checkSelectionMode("isolated");n||(this.viewport.setSelectionMode("isolated"),n=!0),this.viewport.disposeIsolatedSet(),this.viewport.removeObjectsFromWorkingSet(this.workingObjects),this.workingObjects=[],this._getIsolatedObjectIds().forEach(function(i){var s=t.viewport.getObject(i);s&&t.workingObjects.push(s)}),this.viewport.addObjectsToWorkingSet(this.workingObjects),this.viewport.makeIsolatedSet(),this.workingObjects.length===0&&n&&this.viewport.setSelectionMode("isolated")},this.mouseMove=function(t){for(var n=this,i=n.markups.length-1;i>=0;i--){var s;if(n.markups[i].mouseMove(t))return n.markups.push(n.markups.splice(i,1)[0]),n.viewport.highlight.setAllInvisible(),(s=n.viewport.currentInteractor)===null||s===void 0||s.canNotBeAdded(),n.viewport.draw(),!0}return!1},this.mouseUp=function(t){for(var n=this.markups.length,i=0;i<n;i++)if(this.markups[i].mouseUp(t)===!0)return!0;return!1},this.mouseUpDblClick=function(t){for(var n=this,i=n.markups.length,s=0;s<i;s++)if(n.markups[s].mouseUpDblClick(t)===!0)return n.markups[s];return null},this.mouseActionNeedsLabelUpdate=function(){var t,n=this,i=this;if(i!=null&&(t=i.viewport)!==null&&t!==void 0&&(t=t.currentInteractor)!==null&&t!==void 0&&t.preview&&i.viewport.currentInteractor.name!=="MarkupNoInputInteractor"&&i.viewport.currentInteractor.name!=="LocalCoordSystemInteractor"){var s=i.viewport.renderQueue.frustum;Array.isArray(i.viewport.currentInteractor.preview)?i.viewport.currentInteractor.preview.forEach(function(c){return n.updateLabel(s,c)}):(this.updateLabel(s,i.viewport.currentInteractor.preview),i.viewport.currentInteractor.preview.setDeleteButtonVisible(!1))}},this.dispose=function(){this.removeAll()}};tN.USE_TRANSPARENCY=l1.getUseTransparency();let fse=tN;function mD(e){return function(...t){var n=t.pop();return e.call(this,t,n)}}var mse=typeof queueMicrotask=="function"&&queueMicrotask,vU=typeof setImmediate=="function"&&setImmediate,gU=typeof process=="object"&&typeof process.nextTick=="function";function yU(e){setTimeout(e,0)}function MU(e){return(t,...n)=>e(()=>t(...n))}var F5=MU(mse?queueMicrotask:vU?setImmediate:gU?process.nextTick:yU);function nN(e){return bD(e)?function(...t){let n=t.pop();return IU(e.apply(this,t),n)}:mD(function(t,n){var i;try{i=e.apply(this,t)}catch(s){return n(s)}if(i&&typeof i.then=="function")return IU(i,n);n(null,i)})}function IU(e,t){return e.then(n=>{AU(t,null,n)},n=>{AU(t,n&&(n instanceof Error||n.message)?n:new Error(n))})}function AU(e,t,n){try{e(t,n)}catch(i){F5(s=>{throw s},i)}}function bD(e){return e[Symbol.toStringTag]==="AsyncFunction"}function gl(e){if(typeof e!="function")throw new Error("expected a function");return bD(e)?nN(e):e}function dl(e,t){if(t||(t=e.length),!t)throw new Error("arity is undefined");return function(...n){return typeof n[t-1]=="function"?e.apply(this,n):new Promise((i,s)=>{n[t-1]=(c,...u)=>{if(c)return s(c);i(u.length>1?u:u[0])},e.apply(this,n)})}}function OU(e){return function(t,...n){return dl(function(i){var s=this;return e(t,(c,u)=>{gl(c).apply(s,n.concat(u))},i)})}}function iN(e,t,n,i){t=t||[];var s=[],c=0,u=gl(n);return e(t,(m,v,M)=>{var w=c++;u(m,(P,q)=>{s[w]=q,M(P)})},m=>{i(m,s)})}function DL(e){return e&&typeof e.length=="number"&&e.length>=0&&e.length%1==0}let SL={};function cO(e){function t(...n){if(e!==null){var i=e;e=null,i.apply(this,n)}}return Object.assign(t,e),t}function bse(e){if(DL(e))return function(u){var m=-1,v=u.length;return function(){return++m<v?{value:u[m],key:m}:null}}(e);var t,n,i,s,c=function(u){return u[Symbol.iterator]&&u[Symbol.iterator]()}(e);return c?function(u){var m=-1;return function(){var v=u.next();return v.done?null:(m++,{value:v.value,key:m})}}(c):(n=(t=e)?Object.keys(t):[],i=-1,s=n.length,function u(){var m=n[++i];return m==="__proto__"?u():i<s?{value:t[m],key:m}:null})}function uO(e){return function(...t){if(e===null)throw new Error("Callback was already called.");var n=e;e=null,n.apply(this,t)}}function wU(e,t,n,i){let s=!1,c=!1,u=!1,m=0,v=0;function M(){m>=t||u||s||(u=!0,e.next().then(({value:q,done:Z})=>{if(!c&&!s){if(u=!1,Z)return s=!0,void(m<=0&&i(null));m++,n(q,v,w),v++,M()}}).catch(P))}function w(q,Z){if(m-=1,!c)return q?P(q):q===!1?(s=!0,void(c=!0)):Z===SL||s&&m<=0?(s=!0,i(null)):void M()}function P(q){c||(u=!1,s=!0,i(q))}M()}var Dy=e=>(t,n,i)=>{if(i=cO(i),e<=0)throw new RangeError("concurrency limit cannot be less than 1");if(!t)return i(null);if(t[Symbol.toStringTag]==="AsyncGenerator")return wU(t,e,n,i);if(function(P){return typeof P[Symbol.asyncIterator]=="function"}(t))return wU(t[Symbol.asyncIterator](),e,n,i);var s=bse(t),c=!1,u=!1,m=0,v=!1;function M(P,q){if(!u)if(m-=1,P)c=!0,i(P);else if(P===!1)c=!0,u=!0;else{if(q===SL||c&&m<=0)return c=!0,i(null);v||w()}}function w(){for(v=!0;m<e&&!c;){var P=s();if(P===null)return c=!0,void(m<=0&&i(null));m+=1,n(P.value,P.key,uO(M))}v=!1}w()},zL=dl(function(e,t,n,i){return Dy(t)(e,gl(n),i)},4);function vse(e,t,n){n=cO(n);var i=0,s=0,{length:c}=e,u=!1;function m(v,M){v===!1&&(u=!0),u!==!0&&(v?n(v):++s!==c&&M!==SL||n(null))}for(c===0&&n(null);i<c;i++)t(e[i],i,uO(m))}function gse(e,t,n){return zL(e,1/0,t,n)}var Sy=dl(function(e,t,n){return(DL(e)?vse:gse)(e,gl(t),n)},3),sN=dl(function(e,t,n){return iN(Sy,e,t,n)},3),yse=OU(sN),u4=dl(function(e,t,n){return zL(e,1,t,n)},3),_U=dl(function(e,t,n){return iN(u4,e,t,n)},3),Mse=OU(_U);let RT=Symbol("promiseCallback");function xT(){let e,t;function n(i,...s){if(i)return t(i);e(s.length>1?s:s[0])}return n[RT]=new Promise((i,s)=>{e=i,t=s}),n}function TU(e,t,n){typeof t!="number"&&(n=t,t=null),n=cO(n||xT());var i=Object.keys(e).length;if(!i)return n(null);t||(t=i);var s={},c=0,u=!1,m=!1,v=Object.create(null),M=[],w=[],P={};function q(he,le){M.push(()=>function(pe,Ie){if(!m){var Ce=uO((Ge,...Fe)=>{if(c--,Ge!==!1)if(Fe.length<2&&([Fe]=Fe),Ge){var Pe={};if(Object.keys(s).forEach(Ve=>{Pe[Ve]=s[Ve]}),Pe[pe]=Fe,m=!0,v=Object.create(null),u)return;n(Ge,Pe)}else s[pe]=Fe,(v[pe]||[]).forEach(Ve=>Ve()),Z();else u=!0});c++;var Ne=gl(Ie[Ie.length-1]);Ie.length>1?Ne(s,Ce):Ne(Ce)}}(he,le))}function Z(){if(!u){if(M.length===0&&c===0)return n(null,s);for(;M.length&&c<t;)M.shift()()}}function K(he){var le=[];return Object.keys(e).forEach(pe=>{let Ie=e[pe];Array.isArray(Ie)&&Ie.indexOf(he)>=0&&le.push(pe)}),le}return Object.keys(e).forEach(he=>{var le=e[he];if(!Array.isArray(le))return q(he,[le]),void w.push(he);var pe=le.slice(0,le.length-1),Ie=pe.length;if(Ie===0)return q(he,le),void w.push(he);P[he]=Ie,pe.forEach(Ce=>{if(!e[Ce])throw new Error("async.auto task `"+he+"` has a non-existent dependency `"+Ce+"` in "+pe.join(", "));(function(Ne,Ge){var Fe=v[Ne];Fe||(Fe=v[Ne]=[]),Fe.push(Ge)})(Ce,()=>{--Ie===0&&q(he,le)})})}),function(){for(var he=0;w.length;)he++,K(w.pop()).forEach(le=>{--P[le]==0&&w.push(le)});if(he!==i)throw new Error("async.auto cannot execute tasks due to a recursive dependency")}(),Z(),n[RT]}var Ise=/^(?:async\s)?(?:function)?\s*(?:\w+\s*)?\(([^)]+)\)(?:\s*{)/,Ase=/^(?:async\s)?\s*(?:\(\s*)?((?:[^)=\s]\s*)*)(?:\)\s*)?=>/,Ose=/,/,wse=/(=.+)?(\s*)$/;class _se{constructor(){this.head=this.tail=null,this.length=0}removeLink(t){return t.prev?t.prev.next=t.next:this.head=t.next,t.next?t.next.prev=t.prev:this.tail=t.prev,t.prev=t.next=null,this.length-=1,t}empty(){for(;this.head;)this.shift();return this}insertAfter(t,n){n.prev=t,n.next=t.next,t.next?t.next.prev=n:this.tail=n,t.next=n,this.length+=1}insertBefore(t,n){n.prev=t.prev,n.next=t,t.prev?t.prev.next=n:this.head=n,t.prev=n,this.length+=1}unshift(t){this.head?this.insertBefore(this.head,t):EU(this,t)}push(t){this.tail?this.insertAfter(this.tail,t):EU(this,t)}shift(){return this.head&&this.removeLink(this.head)}pop(){return this.tail&&this.removeLink(this.tail)}toArray(){return[...this]}*[Symbol.iterator](){for(var t=this.head;t;)yield t.data,t=t.next}remove(t){for(var n=this.head;n;){var{next:i}=n;t(n)&&this.removeLink(n),n=i}return this}}function EU(e,t){e.length=1,e.head=e.tail=t}function rN(e,t,n){if(t==null)t=1;else if(t===0)throw new RangeError("Concurrency must not be zero");var i=gl(e),s=0,c=[];let u={error:[],drain:[],saturated:[],unsaturated:[],empty:[]};function m(le,pe){return le?pe?void(u[le]=u[le].filter(Ie=>Ie!==pe)):u[le]=[]:Object.keys(u).forEach(Ie=>u[Ie]=[])}function v(le,...pe){u[le].forEach(Ie=>Ie(...pe))}var M=!1;function w(le,pe,Ie,Ce){if(Ce!=null&&typeof Ce!="function")throw new Error("task callback must be a function");var Ne,Ge;function Fe(Ve,...ot){return Ve?Ie?Ge(Ve):Ne():ot.length<=1?Ne(ot[0]):void Ne(ot)}he.started=!0;var Pe=he._createTaskItem(le,Ie?Fe:Ce||Fe);if(pe?he._tasks.unshift(Pe):he._tasks.push(Pe),M||(M=!0,F5(()=>{M=!1,he.process()})),Ie||!Ce)return new Promise((Ve,ot)=>{Ne=Ve,Ge=ot})}function P(le){return function(pe,...Ie){s-=1;for(var Ce=0,Ne=le.length;Ce<Ne;Ce++){var Ge=le[Ce],Fe=c.indexOf(Ge);Fe===0?c.shift():Fe>0&&c.splice(Fe,1),Ge.callback(pe,...Ie),pe!=null&&v("error",pe,Ge.data)}s<=he.concurrency-he.buffer&&v("unsaturated"),he.idle()&&v("drain"),he.process()}}function q(le){return!(le.length!==0||!he.idle())&&(F5(()=>v("drain")),!0)}let Z=le=>pe=>{if(!pe)return new Promise((Ie,Ce)=>{(function(Ne,Ge){let Fe=(...Pe)=>{m(Ne,Fe),Ge(...Pe)};u[Ne].push(Fe)})(le,(Ne,Ge)=>{if(Ne)return Ce(Ne);Ie(Ge)})});m(le),function(Ie,Ce){u[Ie].push(Ce)}(le,pe)};var K=!1,he={_tasks:new _se,_createTaskItem:(le,pe)=>({data:le,callback:pe}),*[Symbol.iterator](){yield*zY(he._tasks[Symbol.iterator]())},concurrency:t,payload:n,buffer:t/4,started:!1,paused:!1,push(le,pe){return Array.isArray(le)?q(le)?void 0:le.map(Ie=>w(Ie,!1,!1,pe)):w(le,!1,!1,pe)},pushAsync(le,pe){return Array.isArray(le)?q(le)?void 0:le.map(Ie=>w(Ie,!1,!0,pe)):w(le,!1,!0,pe)},kill(){m(),he._tasks.empty()},unshift(le,pe){return Array.isArray(le)?q(le)?void 0:le.map(Ie=>w(Ie,!0,!1,pe)):w(le,!0,!1,pe)},unshiftAsync(le,pe){return Array.isArray(le)?q(le)?void 0:le.map(Ie=>w(Ie,!0,!0,pe)):w(le,!0,!0,pe)},remove(le){he._tasks.remove(le)},process(){if(!K){for(K=!0;!he.paused&&s<he.concurrency&&he._tasks.length;){var le=[],pe=[],Ie=he._tasks.length;he.payload&&(Ie=Math.min(Ie,he.payload));for(var Ce=0;Ce<Ie;Ce++){var Ne=he._tasks.shift();le.push(Ne),c.push(Ne),pe.push(Ne.data)}s+=1,he._tasks.length===0&&v("empty"),s===he.concurrency&&v("saturated");var Ge=uO(P(le));i(pe,Ge)}K=!1}},length:()=>he._tasks.length,running:()=>s,workersList:()=>c,idle:()=>he._tasks.length+s===0,pause(){he.paused=!0},resume(){he.paused!==!1&&(he.paused=!1,F5(he.process))}};return Object.defineProperties(he,{saturated:{writable:!1,value:Z("saturated")},unsaturated:{writable:!1,value:Z("unsaturated")},empty:{writable:!1,value:Z("empty")},drain:{writable:!1,value:Z("drain")},error:{writable:!1,value:Z("error")}}),he}var vD=dl(function(e,t,n,i){i=cO(i);var s=gl(n);return u4(e,(c,u,m)=>{s(t,c,(v,M)=>{t=M,m(v)})},c=>i(c,t))},4);function CU(...e){var t=e.map(gl);return function(...n){var i=this,s=n[n.length-1];return typeof s=="function"?n.pop():s=xT(),vD(t,n,(c,u,m)=>{u.apply(i,c.concat((v,...M)=>{m(v,M)}))},(c,u)=>s(c,...u)),s[RT]}}var LL=dl(function(e,t,n,i){return iN(Dy(t),e,n,i)},4),RL=dl(function(e,t,n,i){var s=gl(n);return LL(e,t,(c,u)=>{s(c,(m,...v)=>m?u(m):u(m,v))},(c,u)=>{for(var m=[],v=0;v<u.length;v++)u[v]&&(m=m.concat(...u[v]));return i(c,m)})},4),DU=dl(function(e,t,n){return RL(e,1/0,t,n)},3),SU=dl(function(e,t,n){return RL(e,1,t,n)},3);function d4(e,t){return(n,i,s,c)=>{var u,m=!1;let v=gl(s);n(i,(M,w,P)=>{v(M,(q,Z)=>q||q===!1?P(q):e(Z)&&!u?(m=!0,u=t(!0,M),P(null,SL)):void P())},M=>{if(M)return c(M);c(null,m?u:t(!1))})}}var zU=dl(function(e,t,n){return d4(i=>i,(i,s)=>s)(Sy,e,t,n)},3),LU=dl(function(e,t,n,i){return d4(s=>s,(s,c)=>c)(Dy(t),e,n,i)},4),RU=dl(function(e,t,n){return d4(i=>i,(i,s)=>s)(Dy(1),e,t,n)},3);function xU(e){return(t,...n)=>gl(t)(...n,(i,...s)=>{typeof console=="object"&&(i?console.error&&console.error(i):console[e]&&s.forEach(c=>console[e](c)))})}var Tse=xU("dir"),aN=dl(function(e,t,n){n=uO(n);var i,s=gl(e),c=gl(t);function u(v,...M){if(v)return n(v);v!==!1&&(i=M,c(...M,m))}function m(v,M){return v?n(v):v!==!1?M?void s(u):n(null,...i):void 0}return m(null,!0)},3);function NU(e){return(t,n,i)=>e(t,i)}var PU=dl(function(e,t,n){return Sy(e,NU(gl(t)),n)},3),oN=dl(function(e,t,n,i){return Dy(t)(e,NU(gl(n)),i)},4),lN=dl(function(e,t,n){return oN(e,1,t,n)},3);function BU(e){return bD(e)?e:function(...t){var n=t.pop(),i=!0;t.push((...s)=>{i?F5(()=>n(...s)):n(...s)}),e.apply(this,t),i=!1}}var kU=dl(function(e,t,n){return d4(i=>!i,i=>!i)(Sy,e,t,n)},3),HU=dl(function(e,t,n,i){return d4(s=>!s,s=>!s)(Dy(t),e,n,i)},4),FU=dl(function(e,t,n){return d4(i=>!i,i=>!i)(u4,e,t,n)},3);function Ese(e,t,n,i){var s=new Array(t.length);e(t,(c,u,m)=>{n(c,(v,M)=>{s[u]=!!M,m(v)})},c=>{if(c)return i(c);for(var u=[],m=0;m<t.length;m++)s[m]&&u.push(t[m]);i(null,u)})}function Cse(e,t,n,i){var s=[];e(t,(c,u,m)=>{n(c,(v,M)=>{if(v)return m(v);M&&s.push({index:u,value:c}),m(v)})},c=>{if(c)return i(c);i(null,s.sort((u,m)=>u.index-m.index).map(u=>u.value))})}function xL(e,t,n,i){return(DL(t)?Ese:Cse)(e,t,gl(n),i)}var qU=dl(function(e,t,n){return xL(Sy,e,t,n)},3),WU=dl(function(e,t,n,i){return xL(Dy(t),e,n,i)},4),UU=dl(function(e,t,n){return xL(u4,e,t,n)},3),Dse=dl(function(e,t){var n=uO(t),i=gl(BU(e));return function s(c){if(c)return n(c);c!==!1&&i(s)}()},2),cN=dl(function(e,t,n,i){var s=gl(n);return LL(e,t,(c,u)=>{s(c,(m,v)=>m?u(m):u(m,{key:v,val:c}))},(c,u)=>{for(var m={},{hasOwnProperty:v}=Object.prototype,M=0;M<u.length;M++)if(u[M]){var{key:w}=u[M],{val:P}=u[M];v.call(m,w)?m[w].push(P):m[w]=[P]}return i(c,m)})},4),Sse=xU("log"),uN=dl(function(e,t,n,i){i=cO(i);var s={},c=gl(n);return Dy(t)(e,(u,m,v)=>{c(u,m,(M,w)=>{if(M)return v(M);s[m]=w,v(M)})},u=>i(u,s))},4),zse=MU(gU?process.nextTick:vU?setImmediate:yU),dN=dl((e,t,n)=>{var i=DL(t)?[]:{};e(t,(s,c,u)=>{gl(s)((m,...v)=>{v.length<2&&([v]=v),i[c]=v,u(m)})},s=>n(s,i))},3);function jU(e,t){var n=gl(e);return rN((i,s)=>{n(i[0],s)},t,1)}class Lse{constructor(){this.heap=[],this.pushCount=Number.MIN_SAFE_INTEGER}get length(){return this.heap.length}empty(){return this.heap=[],this}percUp(t){let n;for(;t>0&&pN(this.heap[t],this.heap[n=GU(t)]);){let i=this.heap[t];this.heap[t]=this.heap[n],this.heap[n]=i,t=n}}percDown(t){let n;for(;(n=1+(t<<1))<this.heap.length&&(n+1<this.heap.length&&pN(this.heap[n+1],this.heap[n])&&(n+=1),!pN(this.heap[t],this.heap[n]));){let i=this.heap[t];this.heap[t]=this.heap[n],this.heap[n]=i,t=n}}push(t){t.pushCount=++this.pushCount,this.heap.push(t),this.percUp(this.heap.length-1)}unshift(t){return this.heap.push(t)}shift(){let[t]=this.heap;return this.heap[0]=this.heap[this.heap.length-1],this.heap.pop(),this.percDown(0),t}toArray(){return[...this]}*[Symbol.iterator](){for(let t=0;t<this.heap.length;t++)yield this.heap[t].data}remove(t){let n=0;for(let i=0;i<this.heap.length;i++)t(this.heap[i])||(this.heap[n]=this.heap[i],n++);this.heap.splice(n);for(let i=GU(this.heap.length-1);i>=0;i--)this.percDown(i);return this}}function GU(e){return(e+1>>1)-1}function pN(e,t){return e.priority!==t.priority?e.priority<t.priority:e.pushCount<t.pushCount}var Rse=dl(function(e,t){if(t=cO(t),!Array.isArray(e))return t(new TypeError("First argument to race must be an array of functions"));if(!e.length)return t();for(var n=0,i=e.length;n<i;n++)gl(e[n])(t)},2);function VU(e,t,n,i){var s=[...e].reverse();return vD(s,t,n,i)}function hN(e){var t=gl(e);return mD(function(n,i){return n.push((s,...c)=>{let u={};if(s&&(u.error=s),c.length>0){var m=c;c.length<=1&&([m]=c),u.value=m}i(null,u)}),t.apply(this,n)})}function fN(e,t,n,i){let s=gl(n);return xL(e,t,(c,u)=>{s(c,(m,v)=>{u(m,!v)})},i)}var xse=dl(function(e,t,n){return fN(Sy,e,t,n)},3),Nse=dl(function(e,t,n,i){return fN(Dy(t),e,n,i)},4),Pse=dl(function(e,t,n){return fN(u4,e,t,n)},3);function YU(e){return function(){return e}}function mN(e,t,n){var i={times:5,intervalFunc:YU(0)};if(arguments.length<3&&typeof e=="function"?(n=t||xT(),t=e):(function(u,m){if(typeof m=="object")u.times=+m.times||5,u.intervalFunc=typeof m.interval=="function"?m.interval:YU(+m.interval||0),u.errorFilter=m.errorFilter;else{if(typeof m!="number"&&typeof m!="string")throw new Error("Invalid arguments for async.retry");u.times=+m||5}}(i,e),n=n||xT()),typeof t!="function")throw new Error("Invalid arguments for async.retry");var s=gl(t),c=1;return function u(){s((m,...v)=>{m!==!1&&(m&&c++<i.times&&(typeof i.errorFilter!="function"||i.errorFilter(m))?setTimeout(u,i.intervalFunc(c-1)):n(m,...v))})}(),n[RT]}var XU=dl(function(e,t,n){return d4(Boolean,i=>i)(Sy,e,t,n)},3),QU=dl(function(e,t,n,i){return d4(Boolean,s=>s)(Dy(t),e,n,i)},4),ZU=dl(function(e,t,n){return d4(Boolean,i=>i)(u4,e,t,n)},3),Bse=dl(function(e,t,n){var i=gl(t);return sN(e,(c,u)=>{i(c,(m,v)=>{if(m)return u(m);u(m,{value:c,criteria:v})})},(c,u)=>{if(c)return n(c);n(null,u.sort(s).map(m=>m.value))});function s(c,u){var m=c.criteria,v=u.criteria;return m<v?-1:m>v?1:0}},3);function bN(e,t,n,i){var s=gl(n);return LL(function(c){for(var u=Array(c);c--;)u[c]=c;return u}(e),t,s,i)}var kse=dl(function(e,t){var n,i=null;return lN(e,(s,c)=>{gl(s)((u,...m)=>{if(u===!1)return c(u);m.length<2?[n]=m:n=m,i=u,c(u?null:{})})},()=>t(i,n))}),vN=dl(function(e,t,n){n=uO(n);var i=gl(t),s=gl(e),c=[];function u(v,...M){if(v)return n(v);c=M,v!==!1&&s(m)}function m(v,M){return v?n(v):v!==!1?M?void i(u):n(null,...c):void 0}return s(m)},3),Hse=dl(function(e,t){if(t=cO(t),!Array.isArray(e))return t(new Error("First argument to waterfall must be an array of functions"));if(!e.length)return t();var n=0;function i(c){gl(e[n++])(...c,uO(s))}function s(c,...u){if(c!==!1)return c||n===e.length?t(c,...u):void i(u)}i([])}),KU={apply:function(e,...t){return(...n)=>e(...t,...n)},applyEach:yse,applyEachSeries:Mse,asyncify:nN,auto:TU,autoInject:function(e,t){var n={};return Object.keys(e).forEach(i=>{var s,c=e[i],u=bD(c),m=!u&&c.length===1||u&&c.length===0;if(Array.isArray(c))s=[...c],c=s.pop(),n[i]=s.concat(s.length>0?v:c);else if(m)n[i]=c;else{if(s=function(M){let w=function(Z){let K="",he=0,le=Z.indexOf("*/");for(;he<Z.length;)if(Z[he]==="/"&&Z[he+1]==="/"){let pe=Z.indexOf(`
11425
11425
  `,he);he=pe===-1?Z.length:pe}else if(le!==-1&&Z[he]==="/"&&Z[he+1]==="*"){let pe=Z.indexOf("*/",he);pe!==-1?(he=pe+2,le=Z.indexOf("*/",he)):(K+=Z[he],he++)}else K+=Z[he],he++;return K}(M.toString()),P=w.match(Ise);if(P||(P=w.match(Ase)),!P)throw new Error(`could not parse args in autoInject
11426
11426
  Source:
@@ -11636,7 +11636,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
11636
11636
  fov: `).concat(e.fov,`
11637
11637
  aspect: `).concat(t/n,`
11638
11638
  near/far: `).concat(e.near/e.far,`
11639
- `)),this.cameraBeforePointMatching=new nr,e.type==="perspective"?this.camera=new nr(e.fov,t/n,e.near,e.far):e.type==="orthographic"&&(this.camera=new CM(e.left,e.right,e.top,e.bottom,e.near,e.far),this.camera.aspect=t/n,this.name=="mainRendererViewport"&&(this.camera.fov=45)),this.camera.name="mainCamera",this.camera.type=e.type,this.camera.position.set(e.position.x,e.position.y,e.position.z),this.scene.add(this.camera),this.orthoCamera=new CM(-t/2,t/2,n/2,-n/2,1,10),this.orthoCamera.position.z=10;var i=e.far-e.near,s=t/n;this.orthographicCamera=new CM(i*s/-2,i*s/2,i/2,i/-2,e.near,e.far),this.orthographicCamera.position.set(e.position.x,e.position.y,e.position.z),this.orthographicCamera.aspect=t/n,this.orthographicCamera.fov=45,this.perspectiveCamera=new nr(e.fov,t/n,e.near,e.far)}},initControls:function(e,t){this.controls.target=new Ee(e.target.x||0,e.target.y||0,e.target.z||0),this.controls.object=this.camera,this.controls.domElement=this.renderer.domElement,this.controls.localElement=this.renderer.domElement,t||this.initTransformControls()},_transformControlsChangeEvent:function(){if(this.transformControls){switch(this.transformControls.mode){case"translate":this.clippingPlanes.recalcClippingSceneForTranslation(this.transformControlsPosition);break;case"rotate":this.clippingPlanes.recalcClippingSceneForRotation(this.transformControlsRotation);break;case"scale":this.clippingPlanes.recalcClippingSceneForScale(this.transformControlsScale)}this.draw()}},_transformControlsMouseDownEvent:function(){this.emptySectionCutSceneForSectionCutGeometry(),this.transformControlsPosition=this.clippingPlanes._clippingPlanes[this.clippingPlanes._activeClippingPlane].clippingPlaneFrame.position.clone(),this.transformControlsRotation=this.clippingPlanes._clippingPlanes[this.clippingPlanes._activeClippingPlane].clippingPlaneFrame.rotation.clone(),this.transformControlsScale=this.clippingPlanes._clippingPlanes[this.clippingPlanes._activeClippingPlane].clippingPlaneFrame.scale.clone()},_transformControlsMouseUp:function(){this.transformControlsPosition=null,this.transformControlsRotation=null,this.transformControlsScale=null,this.clippingPlanes.onRefreshSectionCuts()},initTransformControls:function(){this.transformControls=new gG(this.camera,this.renderer.domElement),this.transformControls.addEventListener("change",this._transformControlsChangeEvent.bind(this)),this.transformControls.addEventListener("mouseDown",this._transformControlsMouseDownEvent.bind(this)),this.transformControls.addEventListener("mouseUp",Lre.debounce(this._transformControlsMouseUp.bind(this),1e3)),this.transformControls.setSpace("local"),this.transformControls.setRotationSnap(pL.radians(5)),this.controlsScene.add(this.transformControls)},disposeTransformControls:function(){var e,t,n,i;(e=this.transformControls)===null||e===void 0||e.removeEventListener("change",this._transformControlsChangeEvent),(t=this.transformControls)===null||t===void 0||t.removeEventListener("mouseDown",this._transformControlsMouseDownEvent),(n=this.transformControls)===null||n===void 0||n.removeEventListener("mouseUp",this._transformControlsMouseUp),(i=this.transformControls)===null||i===void 0||i.dispose(),this.transformControls=null},initFrameSelection:function(){this.frameSelection=new _re(this),this.frameSelection.init()},disposeFrameSelection:function(){var e;(e=this.frameSelection)===null||e===void 0||e.dispose(),this.frameSelection=null},renderScene:function(e){var t,n=this,i=this.checkSelectionMode("isolated");this.defaultPassChain.getPass(4).setEnabled(i);var s=e.drawClashes&&((t=this.content)===null||t===void 0?void 0:t.getClashes().getCurrentClashFilter())!==null;Rre.forEach(function(c){n.defaultPassChain.getPass(c).setEnabled(s)}),e.drawHelperScene===!0&&this.renderer.render(this.helperScene,this.camera),e.drawPins===!0&&this.pins.render(),this.defaultPassChain.render(this.renderer,this.disciplineNodeMeshScene.getScene(),this.camera),s&&i&&this.defaultPassChain.renderPasses([1,2],this.renderer,this.scene,this.camera)},setContent:function(e){this.content=e},getContent:function(){return this.content},hasContent:function(){return this.content!==null},draw:function(){var e=this;return this.noRender||this.drawDisabled||this.drawRequest||!this.renderer?new Promise(function(t){t()}):new Promise(function(t){e.drawRequest=requestAnimationFrame(function(){if(e.noRender||e.drawDisabled||!e.renderer)return e.drawRequest=null,void t();e.drawSynchronous(),e.drawRequest=null,t()})})},cancelDrawRequest:function(){this.drawRequest&&(cancelAnimationFrame(this.drawRequest),this.drawRequest=null)},fillRenderQueue:function(){this.renderQueue.fill(this.camera,$(this.domElement).height()),this.content&&this.clashesRenderQueue.fill(this.content,this.camera)},prepareMeshMatrices:function(e){var t=e||this.camera;L0.updatePerspectiveCamera(t,!0),this.renderQueue.forEachQueuedMesh(function(n,i){i.modelViewMatrix.multiplyMatrices(t.matrixWorldInverse,i.matrixWorld),i.normalMatrix.getNormalMatrix(i.modelViewMatrix)})},drawSynchronous:function(){this.noRender||this.drawDisabled||!this.renderer||(this.render(this.defaultDrawFlags),this.afterDrawCallback&&this.afterDrawCallback(this),this.afterCameraFlyCallback&&this.afterCameraFlyCallback(this))},drawThumbnail:function(){var e,t=this.clippingPlanes.getAllVisibleStates();this.clippingPlanes.setAllVisible(!1),this.transformControls&&(e=this.transformControls.visible,this.transformControls.visible=!1);var n=new nj().setStatesForThumbnail();this.render(n),this.clippingPlanes.setAllVisibleStates(t),this.transformControls&&(this.transformControls.visible=e)},updateMeshesWebGLBuffer:function(){var e=this,t=this.getGeometryNodes();t&&t.forEachDisciplineNode(function(n){if(n.isGeometryLoaded()!==!1&&n.visible!==!1){var i=e.getDisciplineNodeMeshes().getNodeMesh(n);i&&i.updateMeshesWebGLBuffer(e,n.getGeometryTimestamp())}})},updateNavigationMapCameraFrustum:function(){var e=this.controls.getNavigationMap(),t=this.controls.getMainViewport();e.getCameraHelperType()!==t.camera.type&&e.updateNavigationMapProjectionMode(t)},updateNavigationMap:function(){this.name==="navigationMapViewport"&&this.updateNavigationMapCameraFrustum()},render:function(e){var t;if(e||(e=this.defaultDrawFlags),this.calculateDrawRange(),this.updateNavigationMap(),this.updateMeshesWebGLBuffer(),this.renderer.autoClear=!1,this.renderer.clear(),this.shadows.isEnabled()&&this.shadowsEnabled&&this.shadowsSupported&&this.shadows.renderShadowMaps(),this.fillRenderQueue(),this.debugView>0){if((this.debugView===4||this.debugView===5)&&!this.ssaoEnabled||this.debugView===6&&!this.shadowsEnabled)return;switch(this.debugView){case 1:this.debugFullscreenQuad.setColorTexture(this.colorLookup.getTexture());break;case 2:this.debugFullscreenQuad.setColorTexture(this.pickColorLookup.getTexture());break;case 3:this.debugFullscreenQuad.setColorTexture(this.gpuPicker.getRenderTarget().texture);break;case 4:this.debugFullscreenQuad.setColorTexture(this.ssaoPassChain.getPass(0).getRenderTarget().texture);break;case 5:this.debugFullscreenQuad.setColorTexture(this.ssaoPassChain.getPass(1).getRenderTarget().texture);break;case 6:this.debugFullscreenQuad.setColorTexture(this.shadows.shadowMaps[0].getDepthBuffer().texture)}this.debugFullscreenQuad.render(this.renderer)}else(t=this.currentInteractor)===null||t===void 0||t.beforeRender(),this.prepareMeshMatrices(this.camera),this.ssaoEnabled&&this.ssaoSupported&&this.ssaoPassChain?(this.ssaoPassChain.render(this.renderer,this.disciplineNodeMeshScene.getScene(),this.camera),this.ambientOcclusionTexture=this.ssaoPassChain.getLastPass().getRenderTarget().texture):this.ambientOcclusionTexture=null,this.renderer.clear(),this.renderer.autoClear=!1,this.doRenderGPUPickTexture(),this.renderer.autoClear=!1,this.renderer.clear(),e.drawBackground===!0&&this.background.draw(this.renderer),e.drawScene===!0&&this.renderScene(e),this.updateStats(),this.renderer.render(this.scene,this.camera),e.drawSectionCuts===!0&&this.sectionCuts.render(),e.drawOverlays===!0&&this.overlays.render(),e.drawMarkups===!0&&(this.markups.render(e.drawMarkupsOpaque),this.localCoordSystemManager.render()),e.drawHelperScene===!0&&this.highlightObjectEdges.render(),e.drawCustomScene===!0&&this.renderer.render(this.customScene,this.camera),e.drawHighlight===!0&&this.highlight.render(this),e.drawFingerPrint===!0&&this.fingerprintCursor.render(this),e.drawControlsScene===!0&&this.renderer.render(this.controlsScene,this.camera),this.renderer.autoClear=!0},isMultiselectActive:function(){return this.multiSelect},getDeselectedObjectId:function(){var e=this.deselectedObject;return e&&!this.checkSelectionMode("hidden")?e.id:null},moveDivisionBoundingBox:function(e,t,n,i){var s;(s=this.content)===null||s===void 0||s.getDivisions().moveDivisionBoundingBox(this,e,t,n,i)},resetDivisionBoundingBox:function(e){var t;(t=this.content)===null||t===void 0||t.getDivisions().resetDivisionBoundingBox(this,e)},resetSceneBoundingBox:function(){var e=this.getContentBoundingBox();e&&e.reset()},showDivisionBoundingBox:function(e){var t;(t=this.content)===null||t===void 0||t.getDivisions().showDivisionBoundingBox(this,e)},hideDivisionBoundingBox:function(e){var t;(t=this.content)===null||t===void 0||t.getDivisions().hideDivisionBoundingBox(this,e)},setDivisionVisible:function(e,t){var n;(n=this.content)===null||n===void 0||n.getDivisions().setDivisionVisible(e,t)},isRelativeModelDistancesTooLarge:function(e){return!!this.content&&this.content.getDivisions().isRelativeModelDistancesTooLarge(e)},getClashElementRevision:function(e){if(this.content){var t=this.content.getClashes().getClashElement(e);return t?t.getRevision():void 0}},toggleClashHoverBox:function(e,t){if(this.content){var n=this.content.getClashes().getClashObjectForClashElementId(e);n&&n.setHovered(t)}},setupClashIssueScene:function(){var e=this.objectSets.workingObjects.slice();this.resetSelectionMode(),this.addObjectsToWorkingSet(e),this.setSelectionMode("isolated"),this.draw()},resetClashScene:function(){var e;(e=this.content)===null||e===void 0||e.getClashes().resetClashScene(this),this.draw()},setupClashScene:function(e){var t=this.content.getClashes(),n=t.getClashObjectForClashElementId(e[0]);n&&t.setupClashScene(n,this)},calcObjectsBoundingbox:function(e){var t,n=new si,i=__(e);try{for(i.s();!(t=i.n()).done;){var s=t.value,c=this.getObject(s);if(c){var u=c.getBoundingBox(this.getObjectsContainer());u&&(n.expandByPoint(u.min),n.expandByPoint(u.max))}}}catch(m){i.e(m)}finally{i.f()}return n},resetRevisonComparisonScene:function(e,t){var n;e&&(n=this.objectSets.workingObjects.slice()),this.resetSelectionMode(),e&&(t&&(n=n.filter(function(i){return Object.hasOwn(i,"visibleRevisionComparison")===!1})),this.addObjectsToWorkingSet(n),this.setSelectionMode("isolated"))},centerBoundingBox:(XG=ee(ge().mark(function e(t){var n;return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return n=t.getBoundingSphere(new al),i.next=4,L0.centerBoundingSphere(this.camera,this.controls,this,n,L0.NO_CAMERA_FLIGHT,1.2);case 4:this.setRotationCenter(n.center);case 5:case"end":return i.stop()}},e,this)})),function(e){return XG.apply(this,arguments)}),centerOverlay:(YG=ee(ge().mark(function e(t){var n;return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return(n=new si).setFromObject(t),i.next=4,this.centerBoundingBox(n);case 4:case"end":return i.stop()}},e,this)})),function(e){return YG.apply(this,arguments)}),centerOverlayById:(VG=ee(ge().mark(function e(t){var n,i;return ge().wrap(function(s){for(;;)switch(s.prev=s.next){case 0:return s.next=2,this.overlayManager.loadOverlay(t);case 2:return n=s.sent,(i=new si).setFromObject(n),s.next=7,this.centerBoundingBox(i);case 7:case"end":return s.stop()}},e,this)})),function(e){return VG.apply(this,arguments)}),centerObjects:(GG=ee(ge().mark(function e(t){var n,i,s=this;return ge().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:return n=[],this.getObjectsContainer()&&t.forEach(function(u){return n=n.concat(s.getObjectsContainer().getObjectTreeIds(u))}),i=this.calcObjectsBoundingbox(n),c.abrupt("return",this.centerBoundingBox(i));case 5:case"end":return c.stop()}},e,this)})),function(e){return GG.apply(this,arguments)}),clipObjects:function(){var e=arguments.length>0&&arguments[0]!==void 0&&arguments[0],t=this.objectSets.selectedObjects.length>0&&!e?this.objectSets.selectedObjects.map(function(i){return i.id}):this.objectSets.workingObjects.map(function(i){return i.id}),n=this.calcObjectsBoundingbox(t);n.expandByScalar(1e3/this.normFactor),this.clippingPlanes.setSectionBox(n)},isolateObjects:function(e){var t=this.checkSelectionMode("isolated");t&&this.resetIsolationMode(),this.objectSets.workingObjects=[];var n=this.getObjectsContainer().getObjects(e);this.addObjectsToWorkingSet(n),t?this.setIsolationMode():this.setSelectionMode("isolated"),this.draw()},addObjectsToWorkingSet:function(e){new OL(this,this.objectSets.workingObjects,"working").Execute(e)},removeObjectsFromWorkingSet:function(e){new OL(this,this.objectSets.workingObjects,"working").Execute(e,{inverse:!0})},addObjectsToSelectedSet:function(e){new Ey(this,this.objectSets.selectedObjects).Execute(e)},addObjectsToHiddenSet:function(e){new B5(this,this.objectSets.hiddenObjects).Execute(e)},addObjectsToColoredSet:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;new hD(this,this.objectSets.coloredObjects,t).Execute(e,{noBubble:!0,colors:t,alpha:n}),this.triggerObjectSetChangedEvent("coloredObjects")},disposeIsolatedSet:function(){new pD(this).Execute(this.objectSets.workingObjects,{inverse:!0})},makeIsolatedSet:function(){new pD(this).Execute(this.objectSets.workingObjects)},restoreSelectedObjects:function(){new Ey(this).Execute(this.objectSets.selectedObjects,{noBubble:!0})},hideIsolateObjects:function(){this.isolateSelectedObjects&&this.objectSets.selectedObjects.length>0&&this.addSelectedObjectsToWorkingObjects(),new AL(this).Execute(this.objectSets.workingObjects,{noBubble:!0}),this.draw()},resetHideIsolateObjects:function(){this.restoreSelectedObjects(),new AL(this).Execute(this.objectSets.workingObjects,{noBubble:!0,inverse:!0}),this.draw()},hideObjects:function(e){var t=this.getObjectsContainer().getObjects(e);new B5(this,this.objectSets.hiddenObjects).Execute(t),this.draw()},getSelected3DObjectId:function(){var e=this.objectUnderMouse,t=this.rootObjectUnderMouse;if(e&&!this.checkSelectionMode("hidden"))return e.relatedObjects?e.id.substr(0,36):t?t.id:e.id},getAllSelected3DObjectIds:function(){var e=new Set;this.objectSets.selectedObjects.forEach(function(n){var i;i=n.relatedObjects?n.id.substr(0,36):n.parent||n.id,e.add(i)});var t=[];return e.forEach(function(n){return t.push(n)}),t},getAllSelected3DObjectIdsNodesRevisions:function(){var e=new Set;this.objectSets.selectedObjects.forEach(function(n){var i=n.id,s="",c=1;n.node&&(s=n.node),n.revision&&(c=n.revision);var u={id:i,node:s,revision:c},m=JSON.stringify(u);e.add(m)});var t=[];return e.forEach(function(n){var i=JSON.parse(n);t.push(i)}),t},getObjectRevision:function(e){if(e){var t=this.getObject(e);return t?t.revision:""}return""},pickGPU:function(){return this.gpuPicker.pick(),this},renderGPUPickTextureNeeded:function(){this.newGPUPickTextureNeeded=!0},doRenderGPUPickTexture:function(){this.newGPUPickTextureNeeded&&(this.newGPUPickTextureNeeded=!1,this.gpuPicker.render())},highlightNodeChildren:function(e,t){if(this.getGeometryNodes().getNode(e)===!1)return!1;var n=this.getObjectsContainer().getNodeObjectIds(e);return this.highlightObjects(n,t),!0},highlightObject:function(e,t,n){this.setObjectUnderMouse(this.getObject(e)),this.objectUnderMouse&&!this.objectUnderMouse.parent&&this.objectUnderMouse.discipline===o1.ClashLayer&&this.setObjectUnderMouse(this.content.getClashes().getClashElement(e)),this.objectUnderMouse||this.setObjectUnderMouse(this.content.getClashes().getClashElement(e)),this.handleObjectSelection(null,t,n),this.draw()},highlightObjects:function(e,t,n){t||(this.resetObjectUnderMouse(),this.handleObjectSelection(null,!1,n));var i,s=__(e);try{for(s.s();!(i=s.n()).done;){var c=i.value;this.setObjectUnderMouse(this.getObject(c)),this.handleObjectSelection(null,t,n)}}catch(u){s.e(u)}finally{s.f()}this.draw()},disposePins:function(e){this.pins.disposePins(e)},resetObjectUnderMouse:function(){this.objectUnderMouse=null,this.rootObjectUnderMouse=null},setBlockObjectSelection:function(e){this.blockObjectSelection=e},disposePinObject:function(e){this.pins.disposePinObject(e)},objectLoop:function(e,t){this.getObjectsContainer().objectLoop(e,t)},hideObject:function(e){return e.visible=!1,e.hide(this)},showObject:function(e){return e.visible=!0,e.show(this)},selectObject:function(e){var t=this.activeObjColor,n=[t.r,t.g,t.b];e.selected=!0,e.paint(this,n)},deselectObject:function(e){delete e.selected,e.paint(this)},_hoverEffectTurnedOn:function(e){this.useHoverEffect&&e&&new jW(this).Execute([e],{noBubble:!1})},_hoverEffectTurnedOff:function(e){this.useHoverEffect&&e&&(new jW(this).Execute([e],{inverse:!0,noBubble:!1}),e!=null&&e.selected&&new Ey(this).Execute([e],{noBubble:!1}))},_resetHoverEffect:function(){this.objectUnderMouseChanged=!1,this._hoverEffectTurnedOff(this.objectUnderMouse),this._hoverEffectTurnedOff(this.lastObjectUnderMouse),this.objectUnderMouse=null,this.lastObjectUnderMouse=null,this.draw()},_setHoverEffect:function(){this.objectUnderMouseChanged&&(this.objectUnderMouseChanged=!1,this._hoverEffectTurnedOff(this.lastObjectUnderMouse),this._hoverEffectTurnedOn(this.objectUnderMouse),this.lastObjectUnderMouse=null,this.draw())},_applyHoverEffect:function(){this.controls.supportsGPUPicking()&&this.pickGPU(),this.objectUnderMouse||this.setObjectUnderMouse(this.sectionCuts.getVisualObjectForMesh()),this.objectUnderMouse||this.setObjectUnderMouse(this.overlays.getVisualObjectForMesh()),this._setHoverEffect()},handleObjectSelection:function(e,t,n){var i=this.objectUnderMouse,s=t!==void 0?t:e&&(e.ctrlKey||e.isLongPress);this.deselectedObject=null;var c,u=this.checkSelectionMode("hidden");if(i&&i.isClashElement===!0){var m,v=i.getClashObject();return(m=this.content)===null||m===void 0||m.getClashes().setSelectedClash(v,this),void this.resetSelectedObjects()}if((c=this.content)===null||c===void 0||(c=c.getClashes())===null||c===void 0||c.resetSelectedClash(this),this.connectionElement._handleSelection(i),i&&s&&!u){var M=new Ey(this,this.objectSets.selectedObjects);return M.Execute([i],{multiSelect:s,noBubble:n}),void(M.deselectedObjects.length>0&&(i=null,this._resetHoverEffect(),this.deselectedObject=this.rootObjectUnderMouse,this.resetObjectUnderMouse()))}if(s||u||this.resetSelectedObjects(),this._resetHoverEffect(),this.objectUnderMouse=i,i){if(u){var w;if(this.showHiddenObjectsTransparent){var P=this.objectSets.hiddenObjects.find(function(pe){return pe.id===i.id});new B5(this,this.objectSets.hiddenObjects).Execute([i],{noBubble:!1,inverse:P})}else new B5(this,this.objectSets.hiddenObjects).Execute([i],{noBubble:!1});var q=new CustomEvent("onHidingObject",{bubbles:!0,cancelable:!0}),Z=(w=document)===null||w===void 0?void 0:w.getElementById("mainViewportContainer");Z&&Z.dispatchEvent(q)}else{var K=new Ey(this,this.objectSets.selectedObjects),he=this.getCommandPolicy(K,"noBubble"),le=this.getCommandPolicy(K,"noTraverse");K.Execute([i],{noBubble:n||he!==void 0,noTraverse:le})}i.relatedObjects&&this.objectSets.selectedObjects.length-1!==i.relatedObjects.length&&$(this.domElement).trigger("missingRelatedObjects")}},startInteractor:function(e,t){this.currentInteractor!==null&&(this.currentInteractor.selectionMode.length?this.unsetSelectionMode(this.currentInteractor.selectionMode):this.currentInteractor.cancel()),t.selectionMode=e,this.currentInteractor=t,this.currentInteractor.start()},subscribeToSelectionModeChanges:function(e){e instanceof Function&&(this.selectionModeChangeHandler=e)},subscribeToLCSDefinedChanges:function(e){e instanceof Function&&(this.localCoordSystemDefinedChangeHandler=e)},subscribeToOverlayPointSelectionModelViewFinished:function(e){e instanceof Function&&(this.overlayPointSelectionModelViewFinishedHandler=e)},subscribeToOverlayPointSelectionFileViewFinished:function(e){e instanceof Function&&(this.overlayPointSelectionFileViewFinishedHandler=e)},subscribeToConnectionElementSelected:function(e){e instanceof Function&&(this._connectionElementSelectedHandler=e)},setSelectionMode:function(e){if(this.checkSelectionMode(e))return this.unsetSelectionMode(e),this;e==="clipIsolated"?(this.unsetSelectionMode("isolated"),this.unsetSelectionMode("hideIsolated"),this.unsetSelectionMode("section"),this.clipObjects()):e==="hideIsolated"?(this.unsetSelectionMode("isolated"),this.unsetSelectionMode("clipIsolated"),this.unsetSelectionMode("section"),this.hideIsolateObjects()):e==="isolated"?(this.unsetSelectionMode("hideIsolated"),this.unsetSelectionMode("clipIsolated"),this.unsetSelectionMode("hidden"),this.unsetSelectionMode("selectSectionPlane")):e==="hidden"?(this.unsetSelectionMode("hideIsolated"),this.unsetSelectionMode("isolated"),this._unsetSelectionModesMarkups("")):e==="addPin"?this.unsetSelectionMode("hidden"):e==="section"?(this.unsetSelectionMode("hideIsolated"),this.unsetSelectionMode("clipIsolated"),this.clippingPlanes.restoreClippingPlanes(),this.clippingPlanes.setEnabled(!0),this.fillRenderQueue()):e==="measurePerpendicular"?(this._unsetSelectionModesMarkups("measurePerpendicular"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new xte(this))):e==="measureFree"?(this._unsetSelectionModesMarkups("measureFree"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new Fte(this))):e==="measureAngle"?(this._unsetSelectionModesMarkups("measureAngle"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new Ute(this))):e==="measureLocalPoint"?(this._unsetSelectionModesMarkups("measureLocalPoint"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new Qte(this))):e==="measureCalibratedPoint"?(this._unsetSelectionModesMarkups("measureCalibratedPoint"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new Kte(this))):e==="measureEdge"?(this._unsetSelectionModesMarkups("measureEdge"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new ene(this))):e==="measureAutoEdges"?(this._unsetSelectionModesMarkups("measureAutoEdges"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new ine(this))):e==="laserMeasurement"?(this._unsetSelectionModesMarkups("laserMeasurement"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new rne(this))):e==="localCoordSystemCreation"?(this._unsetSelectionModesMarkups("localCoordSystemCreation"),this.unsetSelectionMode("hidden"),this.localCoordSystemManager.hasLCS()||(this.localCoordSystemDefinedChangeHandler(!0),this.startInteractor(e,new lne(this)))):e==="localCoordSystemDefined"?(this._unsetSelectionModesMarkups("localCoordSystemDefined"),this.unsetSelectionMode("hidden"),this.localCoordSystemManager.reset(),this.localCoordSystemDefinedChangeHandler(!1),e="markupTurnedOff",this.startInteractor(e,new uW(this))):e==="objectProps"?(this._unsetSelectionModesMarkups("objectProps"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new pne(this))):e==="markupTurnedOff"?(this._unsetSelectionModesMarkups("markupTurnedOff"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new uW(this))):e==="annotation"?(this._unsetSelectionModesMarkups("annotation"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new bne(this))):e==="moveModel"?this.startInteractor(e,new gne(this)):e==="selectSectionPlane"?(this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&(console.debug("multiPlanes in use. Don't remove current planes"),this.clippingPlanes.restoreClippingPlanes(),this.clippingPlanes.setEnabled(!0)),this.emptySectionCutSceneForSectionCutGeometry(),this.startInteractor(e,new yne(this)),this.clippingPlanes.addNewPlaneIsOn=!0):e==="selectPointsForOverlay"&&this.startInteractor(e,new k7(this));var t=this.selectionMode.slice();return e?(t.push(e),this.selectionMode=t,this.selectionModeChangeHandler&&this.selectionModeChangeHandler(t),e==="isolated"&&this.setIsolationMode()):(this.unsetSelectionMode("isolated"),this.unsetSelectionMode("hidden"),this.unsetSelectionMode("hideIsolated")),this.renderGPUPickTextureNeeded(),this.draw(),this},unsetSelectionMode:function(e){var t=this.selectionMode.indexOf(e),n=this.selectionMode.slice();if(t===-1||!e)return this;if(n.splice(t,1),this.selectionMode=n,this.selectionModeChangeHandler&&this.selectionModeChangeHandler(n),e==="isolated"){this.resetIsolationMode();var i=this.objectSets.selectedObjects.map(function(s){return s});i.length>0&&(this.resetSelectedObjects(),new Ey(this,this.objectSets.selectedObjects).Execute(i,{noBubble:!0}))}return e==="hideIsolated"&&this.resetHideIsolateObjects(),e==="clipIsolated"&&this.clippingPlanes.reset(),e!=="section"&&e!=="selectSectionPlane"||(this.clippingPlanes.storeClippingPlanes(),this.clippingPlanes.setEnabled(!1),this.clippingPlanes.hideAdditionalClippingPlanes(),this.emptySectionCutSceneForSectionCutGeometry(),this.setSectionAxis(),this.renderQueue.setInteractionMode(!1),this.fillRenderQueue(),this.renderGPUPickTextureNeeded()),e!=="measurePerpendicular"&&e!=="measureFree"&&e!=="measureAngle"&&e!=="measureLocalPoint"&&e!=="measureCalibratedPoint"&&e!=="measureEdge"&&e!=="measureAutoEdges"&&e!=="laserMeasurement"&&e!=="localCoordSystemCreation"&&e!=="localCoordSystemDefined"&&e!=="objectProps"&&e!=="markupTurnedOff"&&e!=="annotation"&&e!=="moveModel"&&e!=="selectSectionPlane"&&e!=="selectPointsForOverlay"||this.currentInteractor!==null&&(this.currentInteractor.cancel(),this.currentInteractor=null),e!=="hidden"&&(this.renderGPUPickTextureNeeded(),this.draw()),this},resetSelectedObjects:function(e){var t=new Ey(this,this.objectSets.selectedObjects,e),n=this.getCommandPolicy(t,"noTraverse");t.Execute(this.objectSets.selectedObjects,{inverse:!0,noBubble:!0,noTraverse:n})},resetHiddenObjects:function(e){new B5(this,this.objectSets.hiddenObjects,e).Execute(this.objectSets.hiddenObjects,{inverse:!0,noBubble:!0}),this.renderGPUPickTextureNeeded(),this.draw()},resetWorkingObjects:function(e){if(e){var t=this.checkSelectionMode("isolated");t&&this.resetIsolationMode(),new OL(this,this.objectSets.workingObjects,"working",e).Execute(this.objectSets.workingObjects,{inverse:!0,noBubble:!0}),t&&this.setIsolationMode()}else this.makeColoredSet([]);this.triggerObjectSetChangedEvent("workingObjects")},resetColoredObjects:function(e){new hD(this,this.objectSets.coloredObjects,e).Execute(this.objectSets.coloredObjects,{inverse:!0,noBubble:!0}),this.triggerObjectSetChangedEvent("coloredObjects")},resetAllObjectSets:function(e){this.resetSelectedObjects(e),this.resetHiddenObjects(e),this.resetWorkingObjects(e),this.resetColoredObjects(e)},moveSelectedObjectsToWorkingObjects:function(){var e=new Ey(this,this.objectSets.selectedObjects);e.Execute(this.objectSets.selectedObjects,{inverse:!0,noBubble:!0}),this.objectSets.workingObjects=e.deselectedObjects},addSelectedObjectsToWorkingObjects:function(){this.objectSets.workingObjects=[],this.addObjectsToWorkingSet(this.objectSets.selectedObjects)},setIsolationMode:function(){this.isolateSelectedObjects&&this.objectSets.selectedObjects.length>0&&this.addSelectedObjectsToWorkingObjects(),new pD(this,this.objectSets.workingObjects).Execute(this.objectSets.workingObjects,{noBubble:!0}),this.renderGPUPickTextureNeeded()},resetIsolationMode:function(){new pD(this).Execute(this.objectSets.workingObjects,{inverse:!0}),this.renderGPUPickTextureNeeded()},adaptMakeColoredSetParams:function(e){var t=this;if(!(e.length>0&&e[0]instanceof _T)){var n=[],i={};return e.forEach(function(s){var c=t.getObject(s.id);!c&&Object.hasOwn(s,"elementId")&&(c=t.getObject(s.elementId)),c&&(n.push(c),s.color&&(i[c.id]=s.color))}),{objects:n,colors:i}}},makeColoredSet:function(e){var t=this.checkSelectionMode("isolated"),n=this.checkSelectionMode("hideIsolated"),i=this.checkSelectionMode("clipIsolated");new hD(this).Execute(this.objectSets.workingObjects,{noBubble:!0,inverse:!0}),this.triggerObjectSetChangedEvent("workingObjects"),t&&this.resetIsolationMode(),n&&this.resetHideIsolateObjects(),this.removeObjectsFromWorkingSet(this.objectSets.workingObjects),this.objectSets.workingObjects=[];var s=new hD(this,this.objectSets.workingObjects),c=this.adaptMakeColoredSetParams(e);c?s.Execute(c.objects,{noBubble:!0,colors:c.colors}):s.Execute(e,{noBubble:!0}),this.triggerObjectSetChangedEvent("workingObjects"),t&&this.setIsolationMode(),n&&this.hideIsolateObjects(),i&&this.clipObjects(!0),this.objectSets.selectedObjects.length>0&&(new Ey(this).Execute(this.objectSets.selectedObjects),this.triggerObjectSetChangedEvent("selectedObjects")),this.draw()},resetSelectionMode:function(){var e,t;return this.resetObjectUnderMouse(),this.unsetSelectionMode("isolated"),this.unsetSelectionMode("clipIsolated"),this.unsetSelectionMode("hideIsolated"),this.unsetSelectionMode("hidden"),this.unsetSelectionMode("section"),this._unsetSelectionModesMarkups(""),this.unsetSelectionMode("moveModel"),this.unsetSelectionMode("selectSectionPlane"),this.resetAllObjectSets(),this.setSelectionMode(),(e=this.content)===null||e===void 0||e.getClashes().resetSelectedClash(this),(t=this.content)===null||t===void 0||t.getClashes().resetClashScene(this),this},checkSelectionMode:function(e,t){var n=!1;return e?(n=this.selectionMode.indexOf(e)!==-1,t&&(n&=this.selectionMode.length===1)):n=!!this.selectionMode.length,n},isMarkupMode:function(){return this.isMarkupModeTurnedOff()||this.isMeasureMode()||this.isLabelMode()||this.isAnnotationMode()},isMarkupModeTurnedOff:function(){return this.checkSelectionMode("markupTurnedOff")},isMeasureMode:function(){return this.checkSelectionMode("measurePerpendicular")||this.checkSelectionMode("measureFree")||this.checkSelectionMode("measureAngle")||this.checkSelectionMode("measureLocalPoint")||this.checkSelectionMode("measureCalibratedPoint")||this.checkSelectionMode("measureEdge")||this.checkSelectionMode("measureAutoEdges")||this.checkSelectionMode("laserMeasurement")||this.checkSelectionMode("localCoordSystemCreation")||this.checkSelectionMode("localCoordSystemDefined")},isLabelMode:function(){return this.checkSelectionMode("objectProps")},isAnnotationMode:function(){return this.checkSelectionMode("annotation")},isOverlayPointInputMode:function(){return this.checkSelectionMode("selectPointsForOverlay")},isSelectSectionPlane:function(){return this.checkSelectionMode("selectSectionPlane")},isFingerprintInputMode:function(){return this.isMarkupMode()||this.isOverlayPointInputMode()||this.isSelectSectionPlane()},_unsetSelectionModesMarkups:function(e){e!=="measurePerpendicular"&&this.unsetSelectionMode("measurePerpendicular"),e!=="measureFree"&&this.unsetSelectionMode("measureFree"),e!=="measureAngle"&&this.unsetSelectionMode("measureAngle"),e!=="measureLocalPoint"&&this.unsetSelectionMode("measureLocalPoint"),e!=="measureCalibratedPoint"&&this.unsetSelectionMode("measureCalibratedPoint"),e!=="measureEdge"&&this.unsetSelectionMode("measureEdge"),e!=="measureAutoEdges"&&this.unsetSelectionMode("measureAutoEdges"),e!=="lasermeasurement"&&this.unsetSelectionMode("laserMeasurement"),e!=="localCoordSystemCreation"&&this.unsetSelectionMode("localCoordSystemCreation"),e!=="localCoordSystemDefined"&&this.unsetSelectionMode("localCoordSystemDefined"),e!=="annotation"&&this.unsetSelectionMode("annotation"),e!=="objectProps"&&this.unsetSelectionMode("objectProps"),e!=="markupTurnedOff"&&this.unsetSelectionMode("markupTurnedOff")},hasLabels:function(){return this.markups.has("labels")},hasAnnotations:function(){return this.markups.has("annotations")},hasMeasurements:function(){return this.markups.has("dimensions")},resetLabels:function(){this.markups.removeAll("labels")},resetAnnotations:function(){this.markups.removeAll("annotations")},resetMeasurements:function(){this.markups.removeAll("dimensions")},getRotationCenter:function(){return this.rotationCenter},setRotationCenter:function(e){var t;this.rotationCenter=e?e.clone():(t=this.visibleGeometryBoundingSphere)===null||t===void 0?void 0:t.center.clone()},setCameraResetAxis:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:L0.CAMERA_FLIGHT;return console.debug("setCameraResetAxis axis= ".concat(e," fly=").concat(t)),this.resetCameraAxis=e,this.resetCamera(t)},setSectionAxis:function(e){var t=this.getContentBoundingBox();t!=null&&t.isValid()&&(this.camera.updateProjectionMatrix(),this.camera.updateMatrixWorld(),e&&(this.camera.position.x===t.getCenterX()&&(this.camera.position.x-=319.1),this.camera.position.y===t.getCenterY()&&(this.camera.position.y+=319.1),this.unsetSelectionMode("section"),this.unsetSelectionMode("selectSectionPlane"),e==="Free"?this.setSelectionMode("selectSectionPlane"):(this.setSelectionMode("section"),this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()?this.clippingPlanes.addSectionAxis(e):this.clippingPlanes.setSectionAxis(e),this.clippingPlanes.addNewPlaneIsOn=!1),this.clippingPlanes.onUpdateSectionParams(),this.clippingPlanes.storeClippingPlanes(),L0.updatePerspectiveCamera(this.camera,!0),this.draw()))},setViewportSize:function(e,t){var n=$(this.domElement),i=e||Math.floor(n.innerWidth()),s=t||Math.floor(n.innerHeight());i!==0&&s!==0&&(this.gpuPicker.resize(i,s),this.defaultPassChain.resizeViewport(i,s),this.ssaoSupported&&this.ssaoPassChain&&this.ssaoPassChain.resizeViewport(i,s),this.camera.aspect=i/s,this.camera.updateProjectionMatrix(),this.orthoCamera.left=-i/2,this.orthoCamera.right=i/2,this.orthoCamera.top=s/2,this.orthoCamera.bottom=-s/2,this.orthoCamera.updateProjectionMatrix(),this.name==="mainRendererViewport"&&this.camera.type==="orthographic"&&L0.resizeOrthographicFrustum(this.camera,i,s),this.renderer&&this.renderer.setSize(i,s,!0),this.renderGPUPickTextureNeeded(),this.draw())},resetViewport:function(){var e,t;console.debug("Viewport3d::resetViewport - name = '".concat(this.name,"'")),window.BimPlus.AnimationPending=0,this.resetAllObjectSets(),this.disposeObjects(this.pins.pinsObjects3D),this.objectSets.selectedObjects=[],this.disposeObjects(this.root),this.templateObjects={},this.templates=[],this.renderQueue.dispose(),(e=this.content)===null||e===void 0||e.getDivisions().hideDivisionBoundingBox(this),(t=this.content)===null||t===void 0||t.getDivisions().reset(),this.normFactor=1,this.sectionCuts.dispose(),this.overlays.clear(),this.disciplineNodeMeshScene.clearMeshes(),this.nodeMeshes.dispose(),this.content&&this.content.dispose(),this.transformControls&&this.transformControls.detach(),this.draw()},getScenePars:function(){var e,t=this.camera.fov?this.camera.fov:1,n=$(this.domElement),i=n.width()/n.height();this.calculateVisibleGeometryBoundaries();var s=new Ee,c=new Ee;return s=this.visibleGeometryBoundingBox.getSize(s),c=this.visibleGeometryBoundingBox.getCenter(c),e=Math.sqrt(s.x*s.x+s.y*s.y)/(i*Math.tan(t*Math.PI/360))/2,isFinite(e)||(e=0),{camera:{fov:this.camera.fov,far:this.camera.far,near:this.camera.near,position:{x:c.x,y:c.y,z:e+c.z+s.z/2}},controls:{target:{x:c.x,y:c.y,z:c.z}}}},restoreViewbox:(jG=ee(ge().mark(function e(){var t;return ge().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return t=this.visibleGeometryBoundingBox.getBoundingSphere(new al),n.next=3,L0.centerBoundingSphere(this.camera,this.controls,this,t,L0.CAMERA_FLIGHT);case 3:case"end":return n.stop()}},e,this)})),function(){return jG.apply(this,arguments)}),resetCamera:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:L0.NO_CAMERA_FLIGHT;return this.camera.zoom=1,L0.resetCamera(this.camera,this.controls,this,e)},setSlideScene:function(e,t,n){return this.slides.setSlideScene(e,t,n)},doubleClick:function(e){e.preventDefault()},contextMenu:function(e){e.preventDefault()},controlsUpdated:function(e){e.data.self.draw()},setTargetToObject:function(e,t){L0.setCameraTargetToObject(this.camera,this.controls,this,e,t)},calculateBoundingBox:function(e){return this.getObject(e).getBoundingBox(this.getObjectsContainer())},setPointMatchingCamera:function(){var e=this;if(!e.isCameraFlightInProgress()){e.toggleCameraType(e),e.controls.isPointMatching=!0,e.copyCameraAttributes(e.cameraBeforePointMatching,e.camera),e.cameraBeforePointMatching.target=e.controls.target.clone(),e.camera.zoom=1;var t=e.clippingPlanes.getActiveClippingPlane(),n=e.clippingPlanes.getActiveClippingPlaneMaterial(),i=new Ci;n.getWorldQuaternion(i);var s=new Ee;s.copy(t.normal),s.normalize();var c=e.dynamicDrawRange._geoBoundingSphere.radius,u=e.controls.getLastDragRotationCenter();u||(u=e.rotationCenter);var m=new qi;m.makeRotationFromQuaternion(i);var v=new Ee,M=new Ee,w=new Ee;m.extractBasis(v,M,w);var P=u.clone(),q=P.clone().add(s.clone().multiplyScalar(c));return L0.alignCameraOrhographic(e.camera,e.controls,e,q,P,M,c,L0.CAMERA_FLIGHT)}},unsetPointMatchingCamera:function(){var e=this;if(!e.isCameraFlightInProgress()){e.toggleCameraType(e),e.controls.isPointMatching=!1,e.camera.zoom=1;var t=e.camera,n=e.controls,i=e.cameraBeforePointMatching.position.clone(),s=e.cameraBeforePointMatching.target.clone(),c=e.cameraBeforePointMatching.up,u=e.cameraBeforePointMatching.quaternion.clone();L0.cameraFlyTo(t,n,e,i,s,c,u)}},copyCameraAttributes:function(e,t){e.name=t.name,e.up.copy(t.up),e.position.copy(t.position),e.rotation.copy(t.rotation),e.aspect=t.aspect,e.fov=t.fov,e.quaternion.copy(t.quaternion)},toggleProjectionMode:function(e){e.toggleCameraType(e),e.controls.reset();var t=e.visibleGeometryBoundingBox.getBoundingSphere(new al);L0.centerBoundingSphere(e.camera,e.controls,e,t,L0.CAMERA_FLIGHT)},toggleCameraType:function(e){e.camera.type==="perspective"?(e.perspectiveCamera=e.camera,e.camera=e.orthographicCamera,e.camera.type="orthographic",e.copyCameraAttributes(e.camera,e.perspectiveCamera),e.controls.updateOrthographicFrustum()):(e.orthographicCamera=e.camera,e.camera=e.perspectiveCamera,e.camera.type="perspective",e.copyCameraAttributes(e.camera,e.orthographicCamera)),e.transformControls&&(e.transformControls.camera=e.camera),e.controls.object=e.camera,e.renderGPUPickTextureNeeded(),e.draw()},isPerspectiveCamera:function(){var e;return(this==null||(e=this.camera)===null||e===void 0?void 0:e.type)==="perspective"},isOrthographicCamera:function(){var e;return(this==null||(e=this.camera)===null||e===void 0?void 0:e.type)==="orthographic"},mouseDown:function(e){var t,n=e.data.self;if(!n.isCameraFlightInProgress()){var i=e.offset?e.offset:$(this).offset(),s=n.hasTouches(e,1),c=n.hasTouches(e,2),u=n.hasTouches(e,3);n.mouseDownEventOfRenderer=!0,n!=null&&(t=n.transformControls)!==null&&t!==void 0&&t.dragging?n.renderQueue.setInteractionMode(!0):(n.touchWithOneFinger=!0,(c||u)&&(n.touchWithOneFinger=!1),s&&n.presstimer===null&&(n.isLongPress=!1,n.presstimer=setTimeout(function(){n.isLongPress=!0},500)),n.mouseClick=!0,n.renderQueue.setInteractionMode(!0),e.button===0||s?(e.preventDefault(),n.mouseDownButton=0,s&&(n.mouse.x=e.originalEvent.touches[0].clientX-i.left,n.mouse.y=e.originalEvent.touches[0].clientY-i.top,n.isFingerprintInputMode()&&n.fingerprintCursor.isMouseOver(e)&&(n.singleTouchFingerprintOffset=-n.fingerprintCursor.FINGERPRINT_OFFSET,n.mouse.y+=n.singleTouchFingerprintOffset))):e.button===1?n.mouseDownButton=1:(e.button===2||c||u)&&(e.preventDefault(),n.mouseDownButton=2),n.isFrameSelectionEvent=n.isDevMode()&&gA.isValid(e))}},mouseMove:function(e){var t,n=e.data.self;if(!n.isCameraFlightInProgress()){var i=e.offset?e.offset:$(this).offset(),s=n.hasTouches(e,1),c=n.hasTouches(e,2),u=n.hasTouches(e,3),m=e.clientX-i.left===n.mouse.x&&e.clientY-i.top+n.singleTouchFingerprintOffset===n.mouse.y;if(!n.isCameraFlightInProgress()&&!(n!=null&&(t=n.transformControls)!==null&&t!==void 0&&t.dragging||(s&&(m=e.originalEvent.touches[0].clientX-i.left===n.mouse.x&&e.originalEvent.touches[0].clientY-i.top+n.singleTouchFingerprintOffset===n.mouse.y),n.cancelLongPress(),m)))if(s?(n.mouse.x=e.originalEvent.touches[0].clientX-i.left,n.mouse.y=e.originalEvent.touches[0].clientY-i.top+n.singleTouchFingerprintOffset):c?(n.mouse.x=(e.originalEvent.touches[0].clientX+e.originalEvent.touches[1].clientX)/2-i.left,n.mouse.y=(e.originalEvent.touches[0].clientY+e.originalEvent.touches[1].clientY)/2-i.top):u?(n.mouse.x=e.originalEvent.touches[1].clientX-i.left,n.mouse.y=e.originalEvent.touches[1].clientY-i.top):(n.mouse.x=e.clientX-i.left,n.mouse.y=e.clientY-i.top),n.controls.processMouseMove(e),n.fingerprintCursor.processMouseMove(e),s&&n.isFingerprintInputMode()&&n.fingerprintCursor.fingerprintHit){n._applyHoverEffect();var v,M=!0;n.isMarkupMode()&&n.markups.mouseMove(e)&&(M=!1),M&&((v=n.currentInteractor)===null||v===void 0||v.processMouseMove(e))}else{s&&(n.controls.isPinching()&&n.controls.finishPinch(),n.controls.isPaning()&&n.controls.finishPan(e)),c&&(n.controls.isPaning()&&n.controls.finishPan(e),n.controls.isPinching()||n.controls.startPinch(),n.controls.processPinch(e)),u&&n.controls.isPinching()&&n.controls.finishPinch(),n.controls.isDragging()&&n.controls.processDrag(e);var w=n.mouseDownButton===0||n.mouseDownButton===1||n.mouseDownButton===2;if(!n.isFrameSelectionEvent&&w||s&&!n.mouseClick||c||u){var P;n.mouseClick&&(n.controls.supportsGPUPicking()&&n.pickGPU(),n.objectUnderMouse||n.setObjectUnderMouse(n.sectionCuts.getVisualObjectForMesh()),n.objectUnderMouse||n.setObjectUnderMouse(n.overlays.getVisualObjectForMesh()),n.controls.canStartDrag()?(n.isMarkupMode()&&n!=null&&(P=n.currentInteractor)!==null&&P!==void 0&&P.preview&&n.currentInteractor.name!=="MarkupNoInputInteractor"&&n.currentInteractor.name!=="LocalCoordSystemInteractor"&&(Array.isArray(n.currentInteractor.preview)?n.currentInteractor.preview.forEach(function(Z){return Z.setLabelVisible(!1)}):n.currentInteractor.preview.setLabelVisible(!1)),n.controls.startDrag(n.mouseDownButton,e)):n.controls.isDragging()&&n.controls.finishDrag(e)),n.mouseClick=!1}else{var q;n.isFrameSelectionEvent||n._applyHoverEffect(),n.isMarkupMode()?n.markups.mouseMove(e)||(q=n.currentInteractor)===null||q===void 0||q.processMouseMove(e):(n.checkSelectionMode("moveModel")||n.checkSelectionMode("selectSectionPlane")||n.checkSelectionMode("selectPointsForOverlay"))&&n.currentInteractor.processMouseMove(e)}}}},mouseUp:function(e){var t=e.data.self;if(!t.isCameraFlightInProgress()&&t.mouseDownEventOfRenderer){if(t.mouseDownEventOfRenderer=!1,t.cancelLongPress(),e.isLongPress=t.isLongPress,t.renderQueue.setInteractionMode(!1),t.fillRenderQueue(),clearTimeout(t.clickTimer),t.clickTimer=setTimeout(function(){t.clickCount=0},t.doubleClickDelay),t.clickCount>0){var n=null,i=null;if(t.isMarkupMode()&&(i=t.markups.mouseUpDblClick(e)),i)t.centerObjects(i.getObjectIds());else if(n=t.objectUnderMouse,t.controls.supportsGPUPicking()&&t.pickGPU(),t.touchWithOneFinger===!0)if(t.objectUnderMouse&&!t.isTouchMode())t.centerObjects([t.objectUnderMouse.id]);else{var s=t.overlays.getVisualObjectForMesh();s!=null&&s.mesh&&t.centerOverlay(s.mesh)}return t.setObjectUnderMouse(n),t.mouseClick=!1,t.mouseDownButton=null,t.isFrameSelectionEvent=!1,t.controls.isDragging()&&t.controls.finishDrag(e),t.clickCount=0,void t.renderGPUPickTextureNeeded()}if(t.clickCount++,t.controls.isDragging()&&(t.controls.finishDrag(e),t.draw()),t.controls.isPinching()&&(t.controls.finishPinch(),t.draw()),t.controls.isPaning()&&(t.controls.finishPan(),t.draw()),t._resetHoverEffect(),t.mouseClick&&t.mouseDownButton===0){var c,u=(c=t.content)===null||c===void 0?void 0:c.getClashes();if(u&&u.getCurrentClashFilter()!==null){u.resetSelectedClash(t),u.resetClashScene(t);var m=t.getNDCVector(),v=t.projector.pickingRay(m,t.camera).ray,M=t.clashesRenderQueue.castRayToClashes(v,200);if(M)return t.setObjectUnderMouse(M),u.setSelectedClash(M.getClashObject(),t),t.resetSelectedObjects(),$(t.domElement).trigger("select3DObject"),t.mouseClick=!1,t.mouseDownButton=null,void t.draw()}t.controls.supportsGPUPicking()&&t.pickGPU(),t.objectUnderMouse||t.setObjectUnderMouse(t.overlays.getVisualObjectForMesh());var w=!1;t.isMarkupMode()&&(w=t.markups.mouseUp(e)),w||t.controls.processClick(e)}t.mouseClick=!1,t.mouseDownButton=null,t.singleTouchFingerprintOffset=0,t.isMarkupMode()&&(t.markups.mouseActionNeedsLabelUpdate(e),t.fingerprintCursor.mouseUp()),t.renderGPUPickTextureNeeded(),t.draw()}},_mouseWheelBrowserSpecificDelta:function(e){return e.originalEvent.wheelDelta?e.originalEvent.wheelDelta:e.originalEvent.detail?-e.originalEvent.detail:void 0},mouseWheel:function(e){var t=e.data.self;if(!t.isCameraFlightInProgress()){var n=t._mouseWheelBrowserSpecificDelta(e);t.renderQueue.setInteractionMode(!0),e.preventDefault(),e.stopPropagation(),t.controls.processMouseWheel(n,e),t.isMarkupMode()&&t.markups.mouseActionNeedsLabelUpdate(e),clearTimeout($.data(e.target,"tid")),$.data(e.target,"tid",setTimeout(function(){t.renderQueue.setInteractionMode(!1),t.renderGPUPickTextureNeeded(),t.fillRenderQueue(),t.draw()},250)),t.draw()}},mouseOut:function(e){var t=e.data.self;t._resetHoverEffect(),t.mouse.x=-1,t.mouse.y=-1,t.draw()},restoreZoom:function(){var e=this;return e.resetSelectionMode(),e.cameraBackup?(this.controls.target.set(e.cameraBackup.target.x,e.cameraBackup.target.y,e.cameraBackup.target.z),this.camera.position.set(e.cameraBackup.position.x,e.cameraBackup.position.y,e.cameraBackup.position.z),this.camera.quaternion.set(e.cameraBackup.quaternion[0],e.cameraBackup.quaternion[1],e.cameraBackup.quaternion[2],e.cameraBackup.quaternion[3]),this.camera.up.set(e.cameraBackup.up.x,e.cameraBackup.up.y,e.cameraBackup.up.z),L0.updatePerspectiveCamera(this.camera,!1),this.setViewportSize(),Promise.resolve()):e.resetCamera(L0.CAMERA_FLIGHT)},backupCameraView:function(){L0.backupCameraView(this,this.camera,this.controls)},zoomToObject:function(){var e=ee(ge().mark(function t(n){return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:L0.zoomToObject(this.camera,this.controls,this,n);case 1:case"end":return i.stop()}},t,this)}));return function(t){return e.apply(this,arguments)}}(),zoomToObjects:function(){var e=ee(ge().mark(function t(n){return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:L0.zoomToObjects(this.camera,this.controls,this,n);case 1:case"end":return i.stop()}},t,this)}));return function(t){return e.apply(this,arguments)}}(),isCameraFlightInProgress:function(){return this.cameraFlightInProgress},getRayIntersectedObjects:function(e){var t,n,i,s,c=this,u=this.getNDCVector(),m=this.objectUnderMouse,v=[],M=[],w=0;if(this.camera.updateProjectionMatrix(),this.camera.updateMatrixWorld(),n=this.projector.pickingRay(u,this.camera),e)M=n.intersectObjects(e.children,!0);else if(m){var P=this.getObjectsContainer().getObjectRoot(m);if(P.hasOwnGeometry())if(P.meshesData.length===0)v.push(P.getMesh(c,0));else{var q,Z=__(P.meshesData.entries());try{for(Z.s();!(q=Z.n()).done;){var K=de(q.value,1)[0];(t=P.getMesh(c,K))&&v.indexOf(t)===-1&&v.push(t)}}catch(le){Z.e(le)}finally{Z.f()}}else this.getObjectsContainer().traverseDown(P,function(le){var pe,Ie=__(le.meshesData.entries());try{for(Ie.s();!(pe=Ie.n()).done;){var Ce=de(pe.value,1)[0];(t=le.getMesh(c,Ce))&&v.indexOf(t)===-1&&v.push(t)}}catch(Ne){Ie.e(Ne)}finally{Ie.f()}});M=n.intersectObjects(v)}if(m=null,M.length){var he;for(this.checkSelectionMode("section")&&this.clippingPlanes.intersects(n,he)&&(w=he),i=0,s=M.length;i<s;i++)if(M[i].distance>w){m=M[i];break}}return m},getNDCVector:function(e,t){var n=new Ai,i=(n=this.renderer.getSize(n)).x/2,s=n.y/2,c=e||this.mouse.x,u=t||this.mouse.y;return new Ee(c/i-1,1-u/s,.5)},addLights:function(e,t){var n,i,s,c=t;for(n=0,i=c.length;n<i;n++)c[n].type==="ambient"?e.add(new Hz(c[n].color)):c[n].type==="directional"?((s=new JC(c[n].color,c[n].intensity)).position.copy(c[n].position),e.add(s)):c[n].type==="spot"?console.debug("[Renderer] addLights - no spot lights defined at the moment"):c[n].type==="point"?console.debug("[Renderer] addLights - no point lights defined at the moment"):c[n].type==="hemisphere"&&e.add(new H8(c[n].skyColorHex,c[n].groundColorHex,c[n].intensity||1))},toggleDisciplinesOpacity:function(e,t){var n,i,s,c=this.content.getDisciplines();for(n=0,s=c.length;n<s;n++)(i=c[n]).isCollisionLayer||i.isRevisionComparisonLayer||(i.visible||t)&&this.setDisciplineOpacity(i,e?i.opacity:null);return this},toggleClashDisciplineOpacity:function(e){var t,n,i,s=this.content.getDisciplines();for(t=0,i=s.length;t<i;t++)(n=s[t]).isCollisionLayer&&n.visible&&this.setDisciplineOpacity(n,e?n.opacity:null);return this},disposeObjects:function(e,t,n){if(e)for(var i;e.children.length;)i=e.children[0],t=t||i.node,n=n||i.discipline,i&&i.node===t&&i.discipline===n&&(i.geometry?i.geometry.dispose():i.children.length&&this.disposeObjects(i),e.remove(i),i=null)},traverseObjectNode:function(e,t){var n=this.getObjectsContainer().getObject(e.id);n&&this.getObjectsContainer().traverseDown(n,function(i){t(i)})},toggleObjectNode:function(e){var t=this,n=this.content.getClashes().getClashElement(e.id);n&&n.getClashObject().setVisible(e.visible),this.traverseObjectNode(e,function(i){e.visible?(i.visible=!0,i.show(t)):(i.visible=!1,i.hide(t))}),this.draw()},toggleObjectNodeOpacity:function(e){var t=this,n=this.content.getClashes().getClashElement(e.id);n&&n.getClashObject().setBackground(e.opacity<1),this.traverseObjectNode(e,function(i){return i.setBackground(t,e.opacity<1)}),this.draw()},displayCollisionElement:function(e,t){if(this.content){var n=this.content.getClashes().getClashObjectForClashElementId(e);n&&n.setVisible(t)}},displayRevisionCompareElement:function(e,t,n){var i=this.findSubsetIdsObjects(e);if(i.length>0){var s,c=__(i);try{for(c.s();!(s=c.n()).done;){var u=s.value;(!n||u.compareTo===n)&&(t?this.showObject(u):this.hideObject(u))}}catch(m){c.e(m)}finally{c.f()}}},findSubsetIdsObjects:function(e){return this.getObjectsContainer().findSubsetIdsObjects(e)},filterRevisionCompareElements:function(e,t,n){var i=this;if(e&&e.length>0){var s=this.checkSelectionMode("isolated");s&&this.disposeIsolatedSet(),e.forEach(function(c){var u,m=__(i.findSubsetIdsObjects(c));try{for(m.s();!(u=m.n()).done;){var v=u.value;v.compareTo&&(v.compareTo===n&&n!==0&&t.contains(v.discipline)?i.showObject(v):i.hideObject(v))}}catch(M){m.e(M)}finally{m.f()}}),s&&this.makeIsolatedSet()}},displayRevisionCompareOriginalElements:function(e,t){var n=this;if(e&&e.length>0){var i=this.checkSelectionMode("isolated");i&&this.disposeIsolatedSet(),e.forEach(function(s){var c=n.findSubsetIdsObjects(s);if(c.length>0){var u,m=__(c);try{for(m.s();!(u=m.n()).done;){var v=u.value;t?n.showObject(v):n.hideObject(v)}}catch(M){m.e(M)}finally{m.f()}}}),i&&this.makeIsolatedSet()}},setDisciplineOpacity:function(e,t){var n=this,i=this.getGeometryNodes().nodelist,s=e.id;t=t||this.disciplineOpacity,i.nodes.forEach(function(c){if(Object.hasOwn(i,c)&&i[c][s]&&i[c].divisionTopologyId===e.divisionTopologyId){var u=e.opaque?e.selectedUserOpacity:void 0;n.getGeometryNodes().setNodeDisciplineOpacity(c,s,t,u)}}),this.draw()},showPins:function(e,t){return e?(this.pins.showPins(e,t),this):this},hidePins:function(){return this.pins.hidePins(),this},getPinObject:function(){return this.deferred=$.Deferred(),this.setSelectionMode("addPin"),this.deferred},cancelAddPin:function(){this.checkSelectionMode("addPin")&&(this.deferred.reject(),this.unsetSelectionMode("addPin"))},getSlideThumbnail:function(){return this.slides.getSlideThumbnail()},getSlideThumbnailBlob:function(e,t){return this.slides.getSlideThumbnailBlob(e,t)},getSlideParams:function(){return this.slides.getSlideParams()},showRelatedObject:function(e){return this.pins.zoomToPin(e)},highlightPin:function(e){this.pins.highlightPin(e)},resetPinsMaterial:function(){this.pins.resetPinsMaterial()},refreshIsolatedSet:function(){this.checkSelectionMode("isolated")&&(this.disposeIsolatedSet(),this.makeIsolatedSet())},colorizeObjects:function(e,t){var n=this.getObjectsContainer().getObjects(e);this.addObjectsToColoredSet(n,t),this.draw()},hoverObject:function(e){this.lastObjectUnderMouse=this.objectUnderMouse,this.objectUnderMouseChanged=!0,this.objectUnderMouse=this.getObjectsContainer().getObject(e),this._setHoverEffect()},resetHoveredObject:function(){this._resetHoverEffect()},updateStats:function(){var e,t=this,n=$("#debug").data("st"),i=(e=window)!==null&&e!==void 0&&(e=e.performance)!==null&&e!==void 0&&e.memory?(window.performance.memory.jsHeapSizeLimit/1e9).toFixed(2)+" GB":"N/A";n&&(n.update(),$("div#debug > div#renderInfo").html("Shaders: "+t.renderer.info.memory.programs+"<br />Calls: "+t.renderer.info.render.calls+"<br />Triangles: "+(t.renderer.info.render.faces/1e6).toFixed(2)+" M<br />Meshes: "+t.root.children.length+"<br />Chrome JS heap: "+i+"<br />Chrome buffer: "+(t.maxWebGLBufferSize/1e9).toFixed(2)+" GB<br /><br />Objects<br />Total: "+t.getObjectsContainer().getObjectCount()))},isTouchMode:function(){return localStorage.getItem("inTouchMode")==="true"},cancelLongPress:function(){this.presstimer!==null&&(clearTimeout(this.presstimer),this.presstimer=null)},hasTouches:function(e,t){var n;return(e==null||(n=e.originalEvent)===null||n===void 0?void 0:n.touches)&&e.originalEvent.touches.length===t},disableDraw:function(e){this.drawDisabled=e,e===!0&&this.cancelDrawRequest()},getObject:function(e){return this.getObjectsContainer().getObject(e)},setLocalizationFnc:function(e){e instanceof Function&&(this.textLocalizationFnc=e)},modifyPreviewArrowPosition:function(e,t,n){var i;(i=this.currentInteractor)!==null&&i!==void 0&&i.modifyPreviewArrowPosition&&(this.currentInteractor.modifyPreviewArrowPosition(e,t,n),this.draw())},setMultiselect:function(e){this.forceMultiSelect=e},setSingleObjectSelection:function(e){this.forceSingleObjectSelection=e},escapeKeyPressed:function(){if(this.currentInteractor)return this.currentInteractor.name==="MeasurePerpendicularInteractor"||this.currentInteractor.name==="MeasureFreeInteractor"||this.currentInteractor.name==="MeasureAngleInteractor"||this.currentInteractor.name==="AnnotationInteractor"||this.currentInteractor.name==="LocalCoordSystemInteractor"||this.currentInteractor.name==="SelectPointsForOverlayInteractor"?(this.currentInteractor.cancel(),void this.currentInteractor.start()):void(this.currentInteractor.name==="SectionPlaneInteractor"&&(this.currentInteractor.cancel(),this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&!this.deleteActivePlanePossible()&&this.setSinglePlaneMode(),this.clippingPlanes.restoreClippingPlanes(),this.clippingPlanes.setEnabled(!0),this.clippingPlanes.addNewPlaneIsOn=!1,this.clippingPlanes.onUpdateSectionParams()))},getCommandPolicy:function(e,t){var n=e.GetCommandName();if(this.commandPolicies[n]!==void 0&&this.commandPolicies[n][t]!==void 0)return this.commandPolicies[n][t]},calculateDefaultBoundingBox:function(){this.visibleGeometryBoundingBox.set(new Ee(-1,-1,-1),new Ee(1,1,1)),this.visibleGeometryBoundingBox.getBoundingSphere(this.visibleGeometryBoundingSphere)},calculateVisibleGeometryBoundaries:function(){this.visibleGeometryBoundingBox.makeEmpty();var e=this.getGeometryNodes();return!!e&&(this.visibleGeometryBoundingBox=e.calculateVisibleGeometryBoundingBox(this.visibleGeometryBoundingBox),this.visibleGeometryBoundingBox.isEmpty()?(this.calculateDefaultBoundingBox(),!1):(this.visibleGeometryBoundingBox.getBoundingSphere(this.visibleGeometryBoundingSphere),!0))},calculateDrawRange:function(){this.dynamicDrawRange.calculateDrawRange(this)},useTranslationForTransformControls:function(){this.transformControls.setMode("translate"),this.updateTransformControls(!1)},useScaleForTransformControls:function(){this.transformControls.setMode("scale"),this.updateTransformControls(!1)},useRotationForTransformControls:function(){this.transformControls.setMode("rotate"),this.updateTransformControls(!1)},switchVisibilityOfTransformControls:function(){this.updateTransformControls(!0)},updateTransformControls:function(e){this.transformControls.visible=!e||!this.transformControls.visible,this.transformControls.visible===!1?(this.transformControls.showX=!1,this.transformControls.showY=!1,this.transformControls.showZ=!1):this.clippingPlanes.clippingPlaneSettings.useParallelPlane()?(this.transformControls.showX=!0,this.transformControls.showY=this.transformControls.getMode()==="rotate",this.transformControls.showZ=this.transformControls.getMode()==="rotate"):this.clippingPlanes.clippingPlaneSettings.useBoxPlanes()?(this.transformControls.showX=!0,this.transformControls.showY=!0,this.transformControls.showZ=!0):(this.transformControls.showX=!0,this.transformControls.showY=this.transformControls.getMode()==="rotate",this.transformControls.showZ=this.transformControls.getMode()==="rotate",this.transformControls.getMode()==="scale"&&(this.transformControls.showX=!1,this.transformControls.visible=!1)),this.draw()},showClippingFrames:function(e){this.clippingPlanes.showClippingFrames(e),this.draw()},_setPlaneMode:function(e){var t=arguments.length>1&&arguments[1]!==void 0&&arguments[1];this.clippingPlanes.resetActivePlane(),this.clippingPlanes.hideAdditionalClippingPlanes(),this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&this.clippingPlanes.setUseUpVector(!1);var n=this.clippingPlanes.getSectionCutOptions();n.sectionCutPlaneOption=e,this.clippingPlanes.setSectionCutOptions(n,t)},setSinglePlaneMode:function(){this._setPlaneMode("single",!0),this.clippingPlanes.addNewPlaneIsOn=!1},setParallelPlaneMode:function(){this._setPlaneMode("parallel",!0),this.clippingPlanes.addNewPlaneIsOn=!1},setBoxPlaneMode:function(){this._setPlaneMode("box",!0),this.clippingPlanes.addNewPlaneIsOn=!1},setMultiPlaneMode:function(){this._setPlaneMode("multi",!0),this.clippingPlanes.addNewPlaneIsOn=!0},isAxisModeEnabled:function(){var e;return!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()||((e=this.clippingPlanes)===null||e===void 0?void 0:e.areMorePlanesPossible())&&this.clippingPlanes.addNewPlaneIsOn},addNewPlaneClicked:function(){var e=this.clippingPlanes.addNewPlaneIsOn;this.clippingPlanes.addNewPlaneIsOn?this.deleteActivePlanePossible()||this.setSinglePlaneMode():this.clippingPlanes.clippingPlaneSettings.useSinglePlane()&&this.setMultiPlaneMode(),this.clippingPlanes.addNewPlaneIsOn=!e,this.clippingPlanes.addNewPlaneIsOn||this.escapeKeyPressed(),this.clippingPlanes.onUpdateSectionParams()},addNewPlanePossible:function(){return!!this.clippingPlanes.clippingPlaneSettings.useSinglePlane()||!!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&((e=this.clippingPlanes)===null||e===void 0?void 0:e.areMorePlanesPossible());var e},isAddNewPlaneEnabled:function(){return this.addNewPlanePossible()||(this.clippingPlanes.addNewPlaneIsOn=!1),this.clippingPlanes.addNewPlaneIsOn},moveTransformControlToPrevPlane:function(){this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&this.transformControls&&this.clippingPlanes.setTransformControlToPlane(this.clippingPlanes.setPrevPlaneAsActive())},moveToPrevPlanePossible:function(){var e;return!!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&((e=this.clippingPlanes)===null||e===void 0?void 0:e.moveToPrevPlanePossible())},moveTransformControlToNextPlane:function(){this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&this.transformControls&&this.clippingPlanes.setTransformControlToPlane(this.clippingPlanes.setNextPlaneAsActive())},moveToNextPlanePossible:function(){var e;return!!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&((e=this.clippingPlanes)===null||e===void 0?void 0:e.moveToNextPlanePossible())},deleteActivePlaneClicked:function(){this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&this.clippingPlanes.deleteActivePlane(),this.deleteActivePlanePossible()||this.setSinglePlaneMode()},deleteActivePlanePossible:function(){var e;return!!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&((e=this.clippingPlanes)===null||e===void 0?void 0:e.deleteActivePlanePossible())},flipOrientation:function(){this.clippingPlanes.isActivePlaneVisible()&&(this.clippingPlanes.flipOrientation(),this.renderGPUPickTextureNeeded())},currentClippingMode:function(){return this.clippingPlanes.getSectionCutOptions().sectionCutPlaneOption},currentManipulationMode:function(){return this.transformControls.mode},currentManipulationControlVisibility:function(){return this.transformControls.visible},isActivePlaneVisible:function(){var e;return!!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&((e=this.clippingPlanes)===null||e===void 0?void 0:e.isActivePlaneVisible())},isFlipPlanePossible:function(){var e;return!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()||((e=this.clippingPlanes)===null||e===void 0?void 0:e.isActivePlaneVisible())},_onFreePlaneSelected:function(){var e,t=new CustomEvent("onFreePlaneSelected",{bubbles:!0,cancelable:!0}),n=(e=document)===null||e===void 0?void 0:e.getElementById("mainViewportContainer");n&&n.dispatchEvent(t)},setFreePlaneSection:function(e,t){console.debug(`[Renderer] setFreePlaneSection
11639
+ `)),this.cameraBeforePointMatching=new nr,e.type==="perspective"?this.camera=new nr(e.fov,t/n,e.near,e.far):e.type==="orthographic"&&(this.camera=new CM(e.left,e.right,e.top,e.bottom,e.near,e.far),this.camera.aspect=t/n,this.name=="mainRendererViewport"&&(this.camera.fov=45)),this.camera.name="mainCamera",this.camera.type=e.type,this.camera.position.set(e.position.x,e.position.y,e.position.z),this.scene.add(this.camera),this.orthoCamera=new CM(-t/2,t/2,n/2,-n/2,1,10),this.orthoCamera.position.z=10;var i=e.far-e.near,s=t/n;this.orthographicCamera=new CM(i*s/-2,i*s/2,i/2,i/-2,e.near,e.far),this.orthographicCamera.position.set(e.position.x,e.position.y,e.position.z),this.orthographicCamera.aspect=t/n,this.orthographicCamera.fov=45,this.perspectiveCamera=new nr(e.fov,t/n,e.near,e.far)}},initControls:function(e,t){this.controls.target=new Ee(e.target.x||0,e.target.y||0,e.target.z||0),this.controls.object=this.camera,this.controls.domElement=this.renderer.domElement,this.controls.localElement=this.renderer.domElement,t||this.initTransformControls()},_transformControlsChangeEvent:function(){if(this.transformControls){switch(this.transformControls.mode){case"translate":this.clippingPlanes.recalcClippingSceneForTranslation(this.transformControlsPosition);break;case"rotate":this.clippingPlanes.recalcClippingSceneForRotation(this.transformControlsRotation);break;case"scale":this.clippingPlanes.recalcClippingSceneForScale(this.transformControlsScale)}this.draw()}},_transformControlsMouseDownEvent:function(){this.emptySectionCutSceneForSectionCutGeometry(),this.transformControlsPosition=this.clippingPlanes._clippingPlanes[this.clippingPlanes._activeClippingPlane].clippingPlaneFrame.position.clone(),this.transformControlsRotation=this.clippingPlanes._clippingPlanes[this.clippingPlanes._activeClippingPlane].clippingPlaneFrame.rotation.clone(),this.transformControlsScale=this.clippingPlanes._clippingPlanes[this.clippingPlanes._activeClippingPlane].clippingPlaneFrame.scale.clone()},_transformControlsMouseUp:function(){this.transformControlsPosition=null,this.transformControlsRotation=null,this.transformControlsScale=null,this.clippingPlanes.onRefreshSectionCuts()},initTransformControls:function(){this.transformControls=new gG(this.camera,this.renderer.domElement),this.transformControls.addEventListener("change",this._transformControlsChangeEvent.bind(this)),this.transformControls.addEventListener("mouseDown",this._transformControlsMouseDownEvent.bind(this)),this.transformControls.addEventListener("mouseUp",Lre.debounce(this._transformControlsMouseUp.bind(this),1e3)),this.transformControls.setSpace("local"),this.transformControls.setRotationSnap(pL.radians(5)),this.controlsScene.add(this.transformControls)},disposeTransformControls:function(){var e,t,n,i;(e=this.transformControls)===null||e===void 0||e.removeEventListener("change",this._transformControlsChangeEvent),(t=this.transformControls)===null||t===void 0||t.removeEventListener("mouseDown",this._transformControlsMouseDownEvent),(n=this.transformControls)===null||n===void 0||n.removeEventListener("mouseUp",this._transformControlsMouseUp),(i=this.transformControls)===null||i===void 0||i.dispose(),this.transformControls=null},initFrameSelection:function(){this.frameSelection=new _re(this),this.frameSelection.init()},disposeFrameSelection:function(){var e;(e=this.frameSelection)===null||e===void 0||e.dispose(),this.frameSelection=null},renderScene:function(e){var t,n=this,i=this.checkSelectionMode("isolated");this.defaultPassChain.getPass(4).setEnabled(i);var s=e.drawClashes&&((t=this.content)===null||t===void 0?void 0:t.getClashes().getCurrentClashFilter())!==null;Rre.forEach(function(c){n.defaultPassChain.getPass(c).setEnabled(s)}),e.drawHelperScene===!0&&this.renderer.render(this.helperScene,this.camera),e.drawPins===!0&&this.pins.render(),this.defaultPassChain.render(this.renderer,this.disciplineNodeMeshScene.getScene(),this.camera),s&&i&&this.defaultPassChain.renderPasses([1,2],this.renderer,this.scene,this.camera)},setContent:function(e){this.content=e},getContent:function(){return this.content},hasContent:function(){return this.content!==null},draw:function(){var e=this;return this.noRender||this.drawDisabled||this.drawRequest||!this.renderer?new Promise(function(t){t()}):new Promise(function(t){e.drawRequest=requestAnimationFrame(function(){if(e.noRender||e.drawDisabled||!e.renderer)return e.drawRequest=null,void t();e.drawSynchronous(),e.drawRequest=null,t()})})},cancelDrawRequest:function(){this.drawRequest&&(cancelAnimationFrame(this.drawRequest),this.drawRequest=null)},fillRenderQueue:function(){this.renderQueue.fill(this.camera,$(this.domElement).height()),this.content&&this.clashesRenderQueue.fill(this.content,this.camera)},prepareMeshMatrices:function(e){var t=e||this.camera;L0.updatePerspectiveCamera(t,!0),this.renderQueue.forEachQueuedMesh(function(n,i){i.modelViewMatrix.multiplyMatrices(t.matrixWorldInverse,i.matrixWorld),i.normalMatrix.getNormalMatrix(i.modelViewMatrix)})},drawSynchronous:function(){this.noRender||this.drawDisabled||!this.renderer||(this.render(this.defaultDrawFlags),this.afterDrawCallback&&this.afterDrawCallback(this),this.afterCameraFlyCallback&&this.afterCameraFlyCallback(this))},drawThumbnail:function(){var e,t=this.clippingPlanes.getAllVisibleStates();this.clippingPlanes.setAllVisible(!1),this.transformControls&&(e=this.transformControls.visible,this.transformControls.visible=!1);var n=new nj().setStatesForThumbnail();this.render(n),this.clippingPlanes.setAllVisibleStates(t),this.transformControls&&(this.transformControls.visible=e)},updateMeshesWebGLBuffer:function(){var e=this,t=this.getGeometryNodes();t&&t.forEachDisciplineNode(function(n){if(n.isGeometryLoaded()!==!1&&n.visible!==!1){var i=e.getDisciplineNodeMeshes().getNodeMesh(n);i&&i.updateMeshesWebGLBuffer(e,n.getGeometryTimestamp())}})},updateNavigationMapCameraFrustum:function(){var e=this.controls.getNavigationMap(),t=this.controls.getMainViewport();e.getCameraHelperType()!==t.camera.type&&e.updateNavigationMapProjectionMode(t)},updateNavigationMap:function(){this.name==="navigationMapViewport"&&this.updateNavigationMapCameraFrustum()},render:function(e){var t;if(e||(e=this.defaultDrawFlags),this.calculateDrawRange(),this.updateNavigationMap(),this.updateMeshesWebGLBuffer(),this.renderer.autoClear=!1,this.renderer.clear(),this.shadows.isEnabled()&&this.shadowsEnabled&&this.shadowsSupported&&this.shadows.renderShadowMaps(),this.fillRenderQueue(),this.debugView>0){if((this.debugView===4||this.debugView===5)&&!this.ssaoEnabled||this.debugView===6&&!this.shadowsEnabled)return;switch(this.debugView){case 1:this.debugFullscreenQuad.setColorTexture(this.colorLookup.getTexture());break;case 2:this.debugFullscreenQuad.setColorTexture(this.pickColorLookup.getTexture());break;case 3:this.debugFullscreenQuad.setColorTexture(this.gpuPicker.getRenderTarget().texture);break;case 4:this.debugFullscreenQuad.setColorTexture(this.ssaoPassChain.getPass(0).getRenderTarget().texture);break;case 5:this.debugFullscreenQuad.setColorTexture(this.ssaoPassChain.getPass(1).getRenderTarget().texture);break;case 6:this.debugFullscreenQuad.setColorTexture(this.shadows.shadowMaps[0].getDepthBuffer().texture)}this.debugFullscreenQuad.render(this.renderer)}else(t=this.currentInteractor)===null||t===void 0||t.beforeRender(),this.prepareMeshMatrices(this.camera),this.ssaoEnabled&&this.ssaoSupported&&this.ssaoPassChain?(this.ssaoPassChain.render(this.renderer,this.disciplineNodeMeshScene.getScene(),this.camera),this.ambientOcclusionTexture=this.ssaoPassChain.getLastPass().getRenderTarget().texture):this.ambientOcclusionTexture=null,this.renderer.clear(),this.renderer.autoClear=!1,this.doRenderGPUPickTexture(),this.renderer.autoClear=!1,this.renderer.clear(),e.drawBackground===!0&&this.background.draw(this.renderer),e.drawScene===!0&&this.renderScene(e),this.updateStats(),this.renderer.render(this.scene,this.camera),e.drawSectionCuts===!0&&this.sectionCuts.render(),e.drawOverlays===!0&&this.overlays.render(),e.drawMarkups===!0&&(this.markups.render(e.drawMarkupsOpaque),this.localCoordSystemManager.render()),e.drawHelperScene===!0&&this.highlightObjectEdges.render(),e.drawCustomScene===!0&&this.renderer.render(this.customScene,this.camera),e.drawHighlight===!0&&this.highlight.render(this),e.drawFingerPrint===!0&&this.fingerprintCursor.render(this),e.drawControlsScene===!0&&this.renderer.render(this.controlsScene,this.camera),this.renderer.autoClear=!0},isMultiselectActive:function(){return this.multiSelect},getDeselectedObjectId:function(){var e=this.deselectedObject;return e&&!this.checkSelectionMode("hidden")?e.id:null},moveDivisionBoundingBox:function(e,t,n,i){var s;(s=this.content)===null||s===void 0||s.getDivisions().moveDivisionBoundingBox(this,e,t,n,i)},resetDivisionBoundingBox:function(e){var t;(t=this.content)===null||t===void 0||t.getDivisions().resetDivisionBoundingBox(this,e)},resetSceneBoundingBox:function(){var e=this.getContentBoundingBox();e&&e.reset()},showDivisionBoundingBox:function(e){var t;(t=this.content)===null||t===void 0||t.getDivisions().showDivisionBoundingBox(this,e)},hideDivisionBoundingBox:function(e){var t;(t=this.content)===null||t===void 0||t.getDivisions().hideDivisionBoundingBox(this,e)},setDivisionVisible:function(e,t){var n;(n=this.content)===null||n===void 0||n.getDivisions().setDivisionVisible(e,t)},isRelativeModelDistancesTooLarge:function(e){return!!this.content&&this.content.getDivisions().isRelativeModelDistancesTooLarge(e)},getClashElementRevision:function(e){if(this.content){var t=this.content.getClashes().getClashElement(e);return t?t.getRevision():void 0}},toggleClashHoverBox:function(e,t){if(this.content){var n=this.content.getClashes().getClashObjectForClashElementId(e);n&&n.setHovered(t)}},setupClashIssueScene:function(){var e=this.objectSets.workingObjects.slice();this.resetSelectionMode(),this.addObjectsToWorkingSet(e),this.setSelectionMode("isolated"),this.draw()},resetClashScene:function(){var e;(e=this.content)===null||e===void 0||e.getClashes().resetClashScene(this),this.draw()},setupClashScene:function(e){var t=this.content.getClashes(),n=t.getClashObjectForClashElementId(e[0]);n&&t.setupClashScene(n,this)},calcObjectsBoundingbox:function(e){var t,n=new si,i=__(e);try{for(i.s();!(t=i.n()).done;){var s=t.value,c=this.getObject(s);if(c){var u=c.getBoundingBox(this.getObjectsContainer());u&&(n.expandByPoint(u.min),n.expandByPoint(u.max))}}}catch(m){i.e(m)}finally{i.f()}return n},resetRevisonComparisonScene:function(e,t){var n;e&&(n=this.objectSets.workingObjects.slice()),this.resetSelectionMode(),e&&(t&&(n=n.filter(function(i){return Object.hasOwn(i,"visibleRevisionComparison")===!1})),this.addObjectsToWorkingSet(n),this.setSelectionMode("isolated"))},centerBoundingBox:(XG=ee(ge().mark(function e(t){var n;return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return n=t.getBoundingSphere(new al),i.next=4,L0.centerBoundingSphere(this.camera,this.controls,this,n,L0.NO_CAMERA_FLIGHT,1.2);case 4:this.setRotationCenter(n.center);case 5:case"end":return i.stop()}},e,this)})),function(e){return XG.apply(this,arguments)}),centerOverlay:(YG=ee(ge().mark(function e(t){var n;return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return(n=new si).setFromObject(t),i.next=4,this.centerBoundingBox(n);case 4:case"end":return i.stop()}},e,this)})),function(e){return YG.apply(this,arguments)}),centerOverlayById:(VG=ee(ge().mark(function e(t){var n,i;return ge().wrap(function(s){for(;;)switch(s.prev=s.next){case 0:return s.next=2,this.overlayManager.loadOverlay(t);case 2:return n=s.sent,(i=new si).setFromObject(n),s.next=7,this.centerBoundingBox(i);case 7:case"end":return s.stop()}},e,this)})),function(e){return VG.apply(this,arguments)}),centerObjects:(GG=ee(ge().mark(function e(t){var n,i,s=this;return ge().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:return n=[],this.getObjectsContainer()&&t.forEach(function(u){return n=n.concat(s.getObjectsContainer().getObjectTreeIds(u))}),i=this.calcObjectsBoundingbox(n),c.abrupt("return",this.centerBoundingBox(i));case 5:case"end":return c.stop()}},e,this)})),function(e){return GG.apply(this,arguments)}),clipObjects:function(){var e=arguments.length>0&&arguments[0]!==void 0&&arguments[0],t=this.objectSets.selectedObjects.length>0&&!e?this.objectSets.selectedObjects.map(function(i){return i.id}):this.objectSets.workingObjects.map(function(i){return i.id}),n=this.calcObjectsBoundingbox(t);n.expandByScalar(1e3/this.normFactor),this.clippingPlanes.setSectionBox(n)},isolateObjects:function(e){var t=this.checkSelectionMode("isolated");t&&this.resetIsolationMode(),this.objectSets.workingObjects=[];var n=this.getObjectsContainer().getObjects(e);this.addObjectsToWorkingSet(n),t?this.setIsolationMode():this.setSelectionMode("isolated"),this.draw()},addObjectsToWorkingSet:function(e){new OL(this,this.objectSets.workingObjects,"working").Execute(e)},removeObjectsFromWorkingSet:function(e){new OL(this,this.objectSets.workingObjects,"working").Execute(e,{inverse:!0})},addObjectsToSelectedSet:function(e){new Ey(this,this.objectSets.selectedObjects).Execute(e)},addObjectsToHiddenSet:function(e){new B5(this,this.objectSets.hiddenObjects).Execute(e)},addObjectsToColoredSet:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;new hD(this,this.objectSets.coloredObjects,t).Execute(e,{noBubble:!0,colors:t,alpha:n}),this.triggerObjectSetChangedEvent("coloredObjects")},disposeIsolatedSet:function(){new pD(this).Execute(this.objectSets.workingObjects,{inverse:!0})},makeIsolatedSet:function(){new pD(this).Execute(this.objectSets.workingObjects)},restoreSelectedObjects:function(){new Ey(this).Execute(this.objectSets.selectedObjects,{noBubble:!0})},hideIsolateObjects:function(){this.isolateSelectedObjects&&this.objectSets.selectedObjects.length>0&&this.addSelectedObjectsToWorkingObjects(),new AL(this).Execute(this.objectSets.workingObjects,{noBubble:!0}),this.draw()},resetHideIsolateObjects:function(){this.restoreSelectedObjects(),new AL(this).Execute(this.objectSets.workingObjects,{noBubble:!0,inverse:!0}),this.draw()},hideObjects:function(e){var t=this.getObjectsContainer().getObjects(e);new B5(this,this.objectSets.hiddenObjects).Execute(t),this.draw()},getSelected3DObjectId:function(){var e=this.objectUnderMouse,t=this.rootObjectUnderMouse;if(e&&!this.checkSelectionMode("hidden"))return e.relatedObjects?e.id.substr(0,36):t?t.id:e.id},getAllSelected3DObjectIds:function(){var e=new Set;this.objectSets.selectedObjects.forEach(function(n){var i;i=n.relatedObjects?n.id.substr(0,36):n.parent||n.id,e.add(i)});var t=[];return e.forEach(function(n){return t.push(n)}),t},getAllSelected3DObjectIdsNodesRevisions:function(){var e=new Set;this.objectSets.selectedObjects.forEach(function(n){var i=n.id,s="",c=1;n.node&&(s=n.node),n.revision&&(c=n.revision);var u={id:i,node:s,revision:c},m=JSON.stringify(u);e.add(m)});var t=[];return e.forEach(function(n){var i=JSON.parse(n);t.push(i)}),t},getObjectRevision:function(e){if(e){var t=this.getObject(e);return t?t.revision:""}return""},pickGPU:function(){return this.gpuPicker.pick(),this},renderGPUPickTextureNeeded:function(){this.newGPUPickTextureNeeded=!0},doRenderGPUPickTexture:function(){this.newGPUPickTextureNeeded&&(this.newGPUPickTextureNeeded=!1,this.gpuPicker.render())},highlightNodeChildren:function(e,t){if(this.getGeometryNodes().getNode(e)===!1)return!1;var n=this.getObjectsContainer().getNodeObjectIds(e);return this.highlightObjects(n,t),!0},highlightObject:function(e,t,n){this.setObjectUnderMouse(this.getObject(e)),this.objectUnderMouse&&!this.objectUnderMouse.parent&&this.objectUnderMouse.discipline===o1.ClashLayer&&this.setObjectUnderMouse(this.content.getClashes().getClashElement(e)),this.objectUnderMouse||this.setObjectUnderMouse(this.content.getClashes().getClashElement(e)),this.handleObjectSelection(null,t,n),this.draw()},highlightObjects:function(e,t,n){t||(this.resetObjectUnderMouse(),this.handleObjectSelection(null,!1,n));var i,s=__(e);try{for(s.s();!(i=s.n()).done;){var c=i.value;this.setObjectUnderMouse(this.getObject(c)),this.handleObjectSelection(null,t,n)}}catch(u){s.e(u)}finally{s.f()}this.draw()},disposePins:function(e){this.pins.disposePins(e)},resetObjectUnderMouse:function(){this.objectUnderMouse=null,this.rootObjectUnderMouse=null},setBlockObjectSelection:function(e){this.blockObjectSelection=e},disposePinObject:function(e){this.pins.disposePinObject(e)},objectLoop:function(e,t){this.getObjectsContainer().objectLoop(e,t)},hideObject:function(e){return e.visible=!1,e.hide(this)},showObject:function(e){return e.visible=!0,e.show(this)},selectObject:function(e){var t=this.activeObjColor,n=[t.r,t.g,t.b];e.selected=!0,e.paint(this,n)},deselectObject:function(e){delete e.selected,e.paint(this)},_hoverEffectTurnedOn:function(e){this.useHoverEffect&&e&&new jW(this).Execute([e],{noBubble:!1})},_hoverEffectTurnedOff:function(e){this.useHoverEffect&&e&&(new jW(this).Execute([e],{inverse:!0,noBubble:!1}),e!=null&&e.selected&&new Ey(this).Execute([e],{noBubble:!1}))},_resetHoverEffect:function(){this.objectUnderMouseChanged=!1,this._hoverEffectTurnedOff(this.objectUnderMouse),this._hoverEffectTurnedOff(this.lastObjectUnderMouse),this.objectUnderMouse=null,this.lastObjectUnderMouse=null,this.draw()},_setHoverEffect:function(){this.objectUnderMouseChanged&&(this.objectUnderMouseChanged=!1,this._hoverEffectTurnedOff(this.lastObjectUnderMouse),this._hoverEffectTurnedOn(this.objectUnderMouse),this.lastObjectUnderMouse=null,this.draw())},_applyHoverEffect:function(){this.controls.supportsGPUPicking()&&this.pickGPU(),this.objectUnderMouse||this.setObjectUnderMouse(this.sectionCuts.getVisualObjectForMesh()),this.objectUnderMouse||this.setObjectUnderMouse(this.overlays.getVisualObjectForMesh()),this._setHoverEffect()},handleObjectSelection:function(e,t,n){var i=this.objectUnderMouse,s=t!==void 0?t:e&&(e.ctrlKey||e.isLongPress);this.deselectedObject=null;var c,u=this.checkSelectionMode("hidden");if(i&&i.isClashElement===!0){var m,v=i.getClashObject();return(m=this.content)===null||m===void 0||m.getClashes().setSelectedClash(v,this),void this.resetSelectedObjects()}if((c=this.content)===null||c===void 0||(c=c.getClashes())===null||c===void 0||c.resetSelectedClash(this),this.connectionElement._handleSelection(i),i&&s&&!u){var M=new Ey(this,this.objectSets.selectedObjects);return M.Execute([i],{multiSelect:s,noBubble:n}),void(M.deselectedObjects.length>0&&(i=null,this._resetHoverEffect(),this.deselectedObject=this.rootObjectUnderMouse,this.resetObjectUnderMouse()))}if(s||u||this.resetSelectedObjects(),this._resetHoverEffect(),this.objectUnderMouse=i,i){if(u){var w;if(this.showHiddenObjectsTransparent){var P=this.objectSets.hiddenObjects.find(function(pe){return pe.id===i.id});new B5(this,this.objectSets.hiddenObjects).Execute([i],{noBubble:!1,inverse:P})}else new B5(this,this.objectSets.hiddenObjects).Execute([i],{noBubble:!1});var q=new CustomEvent("onHidingObject",{bubbles:!0,cancelable:!0}),Z=(w=document)===null||w===void 0?void 0:w.getElementById("mainViewportContainer");Z&&Z.dispatchEvent(q)}else{var K=new Ey(this,this.objectSets.selectedObjects),he=this.getCommandPolicy(K,"noBubble"),le=this.getCommandPolicy(K,"noTraverse");K.Execute([i],{noBubble:n||he!==void 0,noTraverse:le})}i.relatedObjects&&this.objectSets.selectedObjects.length-1!==i.relatedObjects.length&&$(this.domElement).trigger("missingRelatedObjects")}},startInteractor:function(e,t){this.currentInteractor!==null&&(this.currentInteractor.selectionMode.length?this.unsetSelectionMode(this.currentInteractor.selectionMode):this.currentInteractor.cancel()),t.selectionMode=e,this.currentInteractor=t,this.currentInteractor.start()},subscribeToSelectionModeChanges:function(e){e instanceof Function&&(this.selectionModeChangeHandler=e)},subscribeToLCSDefinedChanges:function(e){e instanceof Function&&(this.localCoordSystemDefinedChangeHandler=e)},subscribeToOverlayPointSelectionModelViewFinished:function(e){e instanceof Function&&(this.overlayPointSelectionModelViewFinishedHandler=e)},subscribeToOverlayPointSelectionFileViewFinished:function(e){e instanceof Function&&(this.overlayPointSelectionFileViewFinishedHandler=e)},subscribeToConnectionElementSelected:function(e){e instanceof Function&&(this._connectionElementSelectedHandler=e)},setSelectionMode:function(e){if(this.checkSelectionMode(e))return this.unsetSelectionMode(e),this;e==="clipIsolated"?(this.unsetSelectionMode("isolated"),this.unsetSelectionMode("hideIsolated"),this.unsetSelectionMode("section"),this.clipObjects()):e==="hideIsolated"?(this.unsetSelectionMode("isolated"),this.unsetSelectionMode("clipIsolated"),this.unsetSelectionMode("section"),this.hideIsolateObjects()):e==="isolated"?(this.unsetSelectionMode("hideIsolated"),this.unsetSelectionMode("clipIsolated"),this.unsetSelectionMode("hidden"),this.unsetSelectionMode("selectSectionPlane")):e==="hidden"?(this.unsetSelectionMode("hideIsolated"),this.unsetSelectionMode("isolated"),this._unsetSelectionModesMarkups("")):e==="addPin"?this.unsetSelectionMode("hidden"):e==="section"?(this.unsetSelectionMode("hideIsolated"),this.unsetSelectionMode("clipIsolated"),this.clippingPlanes.restoreClippingPlanes(),this.clippingPlanes.setEnabled(!0),this.fillRenderQueue()):e==="measurePerpendicular"?(this._unsetSelectionModesMarkups("measurePerpendicular"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new xte(this))):e==="measureFree"?(this._unsetSelectionModesMarkups("measureFree"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new Fte(this))):e==="measureAngle"?(this._unsetSelectionModesMarkups("measureAngle"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new Ute(this))):e==="measureLocalPoint"?(this._unsetSelectionModesMarkups("measureLocalPoint"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new Qte(this))):e==="measureCalibratedPoint"?(this._unsetSelectionModesMarkups("measureCalibratedPoint"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new Kte(this))):e==="measureEdge"?(this._unsetSelectionModesMarkups("measureEdge"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new ene(this))):e==="measureAutoEdges"?(this._unsetSelectionModesMarkups("measureAutoEdges"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new ine(this))):e==="laserMeasurement"?(this._unsetSelectionModesMarkups("laserMeasurement"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new rne(this))):e==="localCoordSystemCreation"?(this._unsetSelectionModesMarkups("localCoordSystemCreation"),this.unsetSelectionMode("hidden"),this.localCoordSystemManager.hasLCS()||(this.localCoordSystemDefinedChangeHandler(!0),this.startInteractor(e,new lne(this)))):e==="localCoordSystemDefined"?(this._unsetSelectionModesMarkups("localCoordSystemDefined"),this.unsetSelectionMode("hidden"),this.localCoordSystemManager.reset(),this.localCoordSystemDefinedChangeHandler(!1),e="markupTurnedOff",this.startInteractor(e,new uW(this))):e==="objectProps"?(this._unsetSelectionModesMarkups("objectProps"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new pne(this))):e==="markupTurnedOff"?(this._unsetSelectionModesMarkups("markupTurnedOff"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new uW(this))):e==="annotation"?(this._unsetSelectionModesMarkups("annotation"),this.unsetSelectionMode("hidden"),this.startInteractor(e,new bne(this))):e==="moveModel"?this.startInteractor(e,new gne(this)):e==="selectSectionPlane"?(this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&(console.debug("multiPlanes in use. Don't remove current planes"),this.clippingPlanes.restoreClippingPlanes(),this.clippingPlanes.setEnabled(!0)),this.emptySectionCutSceneForSectionCutGeometry(),this.startInteractor(e,new yne(this)),this.clippingPlanes.addNewPlaneIsOn=!0):e==="selectPointsForOverlay"&&this.startInteractor(e,new k7(this));var t=this.selectionMode.slice();return e?(t.push(e),this.selectionMode=t,this.selectionModeChangeHandler&&this.selectionModeChangeHandler(t),e==="isolated"&&this.setIsolationMode()):(this.unsetSelectionMode("isolated"),this.unsetSelectionMode("hidden"),this.unsetSelectionMode("hideIsolated")),this.renderGPUPickTextureNeeded(),this.draw(),this},unsetSelectionMode:function(e){var t=this.selectionMode.indexOf(e),n=this.selectionMode.slice();if(t===-1||!e)return this;if(n.splice(t,1),this.selectionMode=n,this.selectionModeChangeHandler&&this.selectionModeChangeHandler(n),e==="isolated"){this.resetIsolationMode();var i=this.objectSets.selectedObjects.map(function(s){return s});i.length>0&&(this.resetSelectedObjects(),new Ey(this,this.objectSets.selectedObjects).Execute(i,{noBubble:!0}))}return e==="hideIsolated"&&this.resetHideIsolateObjects(),e==="clipIsolated"&&this.clippingPlanes.reset(),e!=="section"&&e!=="selectSectionPlane"||(this.clippingPlanes.storeClippingPlanes(),this.clippingPlanes.setEnabled(!1),this.clippingPlanes.hideAdditionalClippingPlanes(),this.emptySectionCutSceneForSectionCutGeometry(),this.setSectionAxis(),this.renderQueue.setInteractionMode(!1),this.fillRenderQueue(),this.renderGPUPickTextureNeeded()),e!=="measurePerpendicular"&&e!=="measureFree"&&e!=="measureAngle"&&e!=="measureLocalPoint"&&e!=="measureCalibratedPoint"&&e!=="measureEdge"&&e!=="measureAutoEdges"&&e!=="laserMeasurement"&&e!=="localCoordSystemCreation"&&e!=="localCoordSystemDefined"&&e!=="objectProps"&&e!=="markupTurnedOff"&&e!=="annotation"&&e!=="moveModel"&&e!=="selectSectionPlane"&&e!=="selectPointsForOverlay"||this.currentInteractor!==null&&(this.currentInteractor.cancel(),this.currentInteractor=null),e!=="hidden"&&(this.renderGPUPickTextureNeeded(),this.draw()),this},resetSelectedObjects:function(e){var t=new Ey(this,this.objectSets.selectedObjects,e),n=this.getCommandPolicy(t,"noTraverse");t.Execute(this.objectSets.selectedObjects,{inverse:!0,noBubble:!0,noTraverse:n})},resetHiddenObjects:function(e){new B5(this,this.objectSets.hiddenObjects,e).Execute(this.objectSets.hiddenObjects,{inverse:!0,noBubble:!0}),this.renderGPUPickTextureNeeded(),this.draw()},resetWorkingObjects:function(e){if(e){var t=this.checkSelectionMode("isolated");t&&this.resetIsolationMode(),new OL(this,this.objectSets.workingObjects,"working",e).Execute(this.objectSets.workingObjects,{inverse:!0,noBubble:!0}),t&&this.setIsolationMode()}else this.makeColoredSet([]);this.triggerObjectSetChangedEvent("workingObjects")},resetColoredObjects:function(e){new hD(this,this.objectSets.coloredObjects,e).Execute(this.objectSets.coloredObjects,{inverse:!0,noBubble:!0}),this.triggerObjectSetChangedEvent("coloredObjects")},resetAllObjectSets:function(e){this.resetSelectedObjects(e),this.resetHiddenObjects(e),this.resetWorkingObjects(e),this.resetColoredObjects(e)},moveSelectedObjectsToWorkingObjects:function(){var e=new Ey(this,this.objectSets.selectedObjects);e.Execute(this.objectSets.selectedObjects,{inverse:!0,noBubble:!0}),this.objectSets.workingObjects=e.deselectedObjects},addSelectedObjectsToWorkingObjects:function(){this.objectSets.workingObjects=[],this.addObjectsToWorkingSet(this.objectSets.selectedObjects)},setIsolationMode:function(){this.isolateSelectedObjects&&this.objectSets.selectedObjects.length>0&&this.addSelectedObjectsToWorkingObjects(),new pD(this,this.objectSets.workingObjects).Execute(this.objectSets.workingObjects,{noBubble:!0}),this.renderGPUPickTextureNeeded()},resetIsolationMode:function(){new pD(this).Execute(this.objectSets.workingObjects,{inverse:!0}),this.renderGPUPickTextureNeeded()},adaptMakeColoredSetParams:function(e){var t=this;if(!(e.length>0&&e[0]instanceof _T)){var n=[],i={};return e.forEach(function(s){var c=t.getObject(s.id);!c&&Object.hasOwn(s,"elementId")&&(c=t.getObject(s.elementId)),c&&(n.push(c),s.color&&(i[c.id]=s.color))}),{objects:n,colors:i}}},makeColoredSet:function(e){var t=this.checkSelectionMode("isolated"),n=this.checkSelectionMode("hideIsolated"),i=this.checkSelectionMode("clipIsolated");new hD(this).Execute(this.objectSets.workingObjects,{noBubble:!0,inverse:!0}),this.triggerObjectSetChangedEvent("workingObjects"),t&&this.resetIsolationMode(),n&&this.resetHideIsolateObjects(),this.removeObjectsFromWorkingSet(this.objectSets.workingObjects),this.objectSets.workingObjects=[];var s=new hD(this,this.objectSets.workingObjects),c=this.adaptMakeColoredSetParams(e);c?s.Execute(c.objects,{noBubble:!0,colors:c.colors}):s.Execute(e,{noBubble:!0}),this.triggerObjectSetChangedEvent("workingObjects"),t&&this.setIsolationMode(),n&&this.hideIsolateObjects(),i&&this.clipObjects(!0),this.objectSets.selectedObjects.length>0&&(new Ey(this).Execute(this.objectSets.selectedObjects),this.triggerObjectSetChangedEvent("selectedObjects")),this.draw()},resetSelectionMode:function(){var e,t;return this.resetObjectUnderMouse(),this.unsetSelectionMode("isolated"),this.unsetSelectionMode("clipIsolated"),this.unsetSelectionMode("hideIsolated"),this.unsetSelectionMode("hidden"),this.unsetSelectionMode("section"),this._unsetSelectionModesMarkups(""),this.unsetSelectionMode("moveModel"),this.unsetSelectionMode("selectSectionPlane"),this.resetAllObjectSets(),this.setSelectionMode(),(e=this.content)===null||e===void 0||e.getClashes().resetSelectedClash(this),(t=this.content)===null||t===void 0||t.getClashes().resetClashScene(this),this},checkSelectionMode:function(e,t){var n=!1;return e?(n=this.selectionMode.indexOf(e)!==-1,t&&(n&=this.selectionMode.length===1)):n=!!this.selectionMode.length,n},isMarkupMode:function(){return this.isMarkupModeTurnedOff()||this.isMeasureMode()||this.isLabelMode()||this.isAnnotationMode()},isMarkupModeTurnedOff:function(){return this.checkSelectionMode("markupTurnedOff")},isMeasureMode:function(){return this.checkSelectionMode("measurePerpendicular")||this.checkSelectionMode("measureFree")||this.checkSelectionMode("measureAngle")||this.checkSelectionMode("measureLocalPoint")||this.checkSelectionMode("measureCalibratedPoint")||this.checkSelectionMode("measureEdge")||this.checkSelectionMode("measureAutoEdges")||this.checkSelectionMode("laserMeasurement")||this.checkSelectionMode("localCoordSystemCreation")||this.checkSelectionMode("localCoordSystemDefined")},isLabelMode:function(){return this.checkSelectionMode("objectProps")},isAnnotationMode:function(){return this.checkSelectionMode("annotation")},isOverlayPointInputMode:function(){return this.checkSelectionMode("selectPointsForOverlay")},isSelectSectionPlane:function(){return this.checkSelectionMode("selectSectionPlane")},isFingerprintInputMode:function(){return this.isMarkupMode()||this.isOverlayPointInputMode()||this.isSelectSectionPlane()},_unsetSelectionModesMarkups:function(e){e!=="measurePerpendicular"&&this.unsetSelectionMode("measurePerpendicular"),e!=="measureFree"&&this.unsetSelectionMode("measureFree"),e!=="measureAngle"&&this.unsetSelectionMode("measureAngle"),e!=="measureLocalPoint"&&this.unsetSelectionMode("measureLocalPoint"),e!=="measureCalibratedPoint"&&this.unsetSelectionMode("measureCalibratedPoint"),e!=="measureEdge"&&this.unsetSelectionMode("measureEdge"),e!=="measureAutoEdges"&&this.unsetSelectionMode("measureAutoEdges"),e!=="lasermeasurement"&&this.unsetSelectionMode("laserMeasurement"),e!=="localCoordSystemCreation"&&this.unsetSelectionMode("localCoordSystemCreation"),e!=="localCoordSystemDefined"&&this.unsetSelectionMode("localCoordSystemDefined"),e!=="annotation"&&this.unsetSelectionMode("annotation"),e!=="objectProps"&&this.unsetSelectionMode("objectProps"),e!=="markupTurnedOff"&&this.unsetSelectionMode("markupTurnedOff")},hasLabels:function(){return this.markups.has("labels")},hasAnnotations:function(){return this.markups.has("annotations")},hasMeasurements:function(){return this.markups.has("dimensions")},resetLabels:function(){this.markups.removeAll("labels")},resetAnnotations:function(){this.markups.removeAll("annotations")},resetMeasurements:function(){this.markups.removeAll("dimensions")},getRotationCenter:function(){return this.rotationCenter},setRotationCenter:function(e){var t;this.rotationCenter=e?e.clone():(t=this.visibleGeometryBoundingSphere)===null||t===void 0?void 0:t.center.clone()},setCameraResetAxis:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:L0.CAMERA_FLIGHT;return console.debug("setCameraResetAxis axis= ".concat(e," fly=").concat(t)),this.resetCameraAxis=e,this.resetCamera(t)},setSectionAxis:function(e){var t=this.getContentBoundingBox();t!=null&&t.isValid()&&(this.camera.updateProjectionMatrix(),this.camera.updateMatrixWorld(),e&&(this.camera.position.x===t.getCenterX()&&(this.camera.position.x-=319.1),this.camera.position.y===t.getCenterY()&&(this.camera.position.y+=319.1),this.unsetSelectionMode("section"),this.unsetSelectionMode("selectSectionPlane"),e==="Free"?this.setSelectionMode("selectSectionPlane"):(this.setSelectionMode("section"),this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()?this.clippingPlanes.addSectionAxis(e):this.clippingPlanes.setSectionAxis(e),this.clippingPlanes.addNewPlaneIsOn=!1),this.clippingPlanes.onUpdateSectionParams(),this.clippingPlanes.storeClippingPlanes(),L0.updatePerspectiveCamera(this.camera,!0),this.draw()))},setViewportSize:function(e,t){var n=$(this.domElement),i=e||Math.floor(n.innerWidth()),s=t||Math.floor(n.innerHeight());i!==0&&s!==0&&(this.gpuPicker.resize(i,s),this.defaultPassChain.resizeViewport(i,s),this.ssaoSupported&&this.ssaoPassChain&&this.ssaoPassChain.resizeViewport(i,s),this.camera.aspect=i/s,this.camera.updateProjectionMatrix(),this.orthoCamera.left=-i/2,this.orthoCamera.right=i/2,this.orthoCamera.top=s/2,this.orthoCamera.bottom=-s/2,this.orthoCamera.updateProjectionMatrix(),this.camera.type==="orthographic"&&L0.resizeOrthographicFrustum(this.camera,i,s),this.renderer&&this.renderer.setSize(i,s,!0),this.renderGPUPickTextureNeeded(),this.draw())},resetViewport:function(){var e,t;console.debug("Viewport3d::resetViewport - name = '".concat(this.name,"'")),window.BimPlus.AnimationPending=0,this.resetAllObjectSets(),this.disposeObjects(this.pins.pinsObjects3D),this.objectSets.selectedObjects=[],this.disposeObjects(this.root),this.templateObjects={},this.templates=[],this.renderQueue.dispose(),(e=this.content)===null||e===void 0||e.getDivisions().hideDivisionBoundingBox(this),(t=this.content)===null||t===void 0||t.getDivisions().reset(),this.normFactor=1,this.sectionCuts.dispose(),this.overlays.clear(),this.disciplineNodeMeshScene.clearMeshes(),this.nodeMeshes.dispose(),this.content&&this.content.dispose(),this.transformControls&&this.transformControls.detach(),this.draw()},getScenePars:function(){var e,t=this.camera.fov?this.camera.fov:1,n=$(this.domElement),i=n.width()/n.height();this.calculateVisibleGeometryBoundaries();var s=new Ee,c=new Ee;return s=this.visibleGeometryBoundingBox.getSize(s),c=this.visibleGeometryBoundingBox.getCenter(c),e=Math.sqrt(s.x*s.x+s.y*s.y)/(i*Math.tan(t*Math.PI/360))/2,isFinite(e)||(e=0),{camera:{fov:this.camera.fov,far:this.camera.far,near:this.camera.near,position:{x:c.x,y:c.y,z:e+c.z+s.z/2}},controls:{target:{x:c.x,y:c.y,z:c.z}}}},restoreViewbox:(jG=ee(ge().mark(function e(){var t;return ge().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return t=this.visibleGeometryBoundingBox.getBoundingSphere(new al),n.next=3,L0.centerBoundingSphere(this.camera,this.controls,this,t,L0.CAMERA_FLIGHT);case 3:case"end":return n.stop()}},e,this)})),function(){return jG.apply(this,arguments)}),resetCamera:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:L0.NO_CAMERA_FLIGHT;return this.camera.zoom=1,L0.resetCamera(this.camera,this.controls,this,e)},setSlideScene:function(e,t,n){return this.slides.setSlideScene(e,t,n)},doubleClick:function(e){e.preventDefault()},contextMenu:function(e){e.preventDefault()},controlsUpdated:function(e){e.data.self.draw()},setTargetToObject:function(e,t){L0.setCameraTargetToObject(this.camera,this.controls,this,e,t)},calculateBoundingBox:function(e){return this.getObject(e).getBoundingBox(this.getObjectsContainer())},setPointMatchingCamera:function(){var e=this;if(!e.isCameraFlightInProgress()){e.toggleCameraType(e),e.controls.isPointMatching=!0,e.copyCameraAttributes(e.cameraBeforePointMatching,e.camera),e.cameraBeforePointMatching.target=e.controls.target.clone(),e.camera.zoom=1;var t=e.clippingPlanes.getActiveClippingPlane(),n=e.clippingPlanes.getActiveClippingPlaneMaterial(),i=new Ci;n.getWorldQuaternion(i);var s=new Ee;s.copy(t.normal),s.normalize();var c=e.dynamicDrawRange._geoBoundingSphere.radius,u=e.controls.getLastDragRotationCenter();u||(u=e.rotationCenter);var m=new qi;m.makeRotationFromQuaternion(i);var v=new Ee,M=new Ee,w=new Ee;m.extractBasis(v,M,w);var P=u.clone(),q=P.clone().add(s.clone().multiplyScalar(c));return L0.alignCameraOrhographic(e.camera,e.controls,e,q,P,M,c,L0.CAMERA_FLIGHT)}},unsetPointMatchingCamera:function(){var e=this;if(!e.isCameraFlightInProgress()){e.toggleCameraType(e),e.controls.isPointMatching=!1,e.camera.zoom=1;var t=e.camera,n=e.controls,i=e.cameraBeforePointMatching.position.clone(),s=e.cameraBeforePointMatching.target.clone(),c=e.cameraBeforePointMatching.up,u=e.cameraBeforePointMatching.quaternion.clone();L0.cameraFlyTo(t,n,e,i,s,c,u)}},copyCameraAttributes:function(e,t){e.name=t.name,e.up.copy(t.up),e.position.copy(t.position),e.rotation.copy(t.rotation),e.aspect=t.aspect,e.fov=t.fov,e.quaternion.copy(t.quaternion)},toggleProjectionMode:function(e){e.toggleCameraType(e),e.controls.reset();var t=e.visibleGeometryBoundingBox.getBoundingSphere(new al);L0.centerBoundingSphere(e.camera,e.controls,e,t,L0.CAMERA_FLIGHT)},toggleCameraType:function(e){e.camera.type==="perspective"?(e.perspectiveCamera=e.camera,e.camera=e.orthographicCamera,e.camera.type="orthographic",e.copyCameraAttributes(e.camera,e.perspectiveCamera),e.controls.updateOrthographicFrustum()):(e.orthographicCamera=e.camera,e.camera=e.perspectiveCamera,e.camera.type="perspective",e.copyCameraAttributes(e.camera,e.orthographicCamera)),e.transformControls&&(e.transformControls.camera=e.camera),e.controls.object=e.camera,e.renderGPUPickTextureNeeded(),e.draw()},isPerspectiveCamera:function(){var e;return(this==null||(e=this.camera)===null||e===void 0?void 0:e.type)==="perspective"},isOrthographicCamera:function(){var e;return(this==null||(e=this.camera)===null||e===void 0?void 0:e.type)==="orthographic"},mouseDown:function(e){var t,n=e.data.self;if(!n.isCameraFlightInProgress()){var i=e.offset?e.offset:$(this).offset(),s=n.hasTouches(e,1),c=n.hasTouches(e,2),u=n.hasTouches(e,3);n.mouseDownEventOfRenderer=!0,n!=null&&(t=n.transformControls)!==null&&t!==void 0&&t.dragging?n.renderQueue.setInteractionMode(!0):(n.touchWithOneFinger=!0,(c||u)&&(n.touchWithOneFinger=!1),s&&n.presstimer===null&&(n.isLongPress=!1,n.presstimer=setTimeout(function(){n.isLongPress=!0},500)),n.mouseClick=!0,n.renderQueue.setInteractionMode(!0),e.button===0||s?(e.preventDefault(),n.mouseDownButton=0,s&&(n.mouse.x=e.originalEvent.touches[0].clientX-i.left,n.mouse.y=e.originalEvent.touches[0].clientY-i.top,n.isFingerprintInputMode()&&n.fingerprintCursor.isMouseOver(e)&&(n.singleTouchFingerprintOffset=-n.fingerprintCursor.FINGERPRINT_OFFSET,n.mouse.y+=n.singleTouchFingerprintOffset))):e.button===1?n.mouseDownButton=1:(e.button===2||c||u)&&(e.preventDefault(),n.mouseDownButton=2),n.isFrameSelectionEvent=n.isDevMode()&&gA.isValid(e))}},mouseMove:function(e){var t,n=e.data.self;if(!n.isCameraFlightInProgress()){var i=e.offset?e.offset:$(this).offset(),s=n.hasTouches(e,1),c=n.hasTouches(e,2),u=n.hasTouches(e,3),m=e.clientX-i.left===n.mouse.x&&e.clientY-i.top+n.singleTouchFingerprintOffset===n.mouse.y;if(!n.isCameraFlightInProgress()&&!(n!=null&&(t=n.transformControls)!==null&&t!==void 0&&t.dragging||(s&&(m=e.originalEvent.touches[0].clientX-i.left===n.mouse.x&&e.originalEvent.touches[0].clientY-i.top+n.singleTouchFingerprintOffset===n.mouse.y),n.cancelLongPress(),m)))if(s?(n.mouse.x=e.originalEvent.touches[0].clientX-i.left,n.mouse.y=e.originalEvent.touches[0].clientY-i.top+n.singleTouchFingerprintOffset):c?(n.mouse.x=(e.originalEvent.touches[0].clientX+e.originalEvent.touches[1].clientX)/2-i.left,n.mouse.y=(e.originalEvent.touches[0].clientY+e.originalEvent.touches[1].clientY)/2-i.top):u?(n.mouse.x=e.originalEvent.touches[1].clientX-i.left,n.mouse.y=e.originalEvent.touches[1].clientY-i.top):(n.mouse.x=e.clientX-i.left,n.mouse.y=e.clientY-i.top),n.controls.processMouseMove(e),n.fingerprintCursor.processMouseMove(e),s&&n.isFingerprintInputMode()&&n.fingerprintCursor.fingerprintHit){n._applyHoverEffect();var v,M=!0;n.isMarkupMode()&&n.markups.mouseMove(e)&&(M=!1),M&&((v=n.currentInteractor)===null||v===void 0||v.processMouseMove(e))}else{s&&(n.controls.isPinching()&&n.controls.finishPinch(),n.controls.isPaning()&&n.controls.finishPan(e)),c&&(n.controls.isPaning()&&n.controls.finishPan(e),n.controls.isPinching()||n.controls.startPinch(),n.controls.processPinch(e)),u&&n.controls.isPinching()&&n.controls.finishPinch(),n.controls.isDragging()&&n.controls.processDrag(e);var w=n.mouseDownButton===0||n.mouseDownButton===1||n.mouseDownButton===2;if(!n.isFrameSelectionEvent&&w||s&&!n.mouseClick||c||u){var P;n.mouseClick&&(n.controls.supportsGPUPicking()&&n.pickGPU(),n.objectUnderMouse||n.setObjectUnderMouse(n.sectionCuts.getVisualObjectForMesh()),n.objectUnderMouse||n.setObjectUnderMouse(n.overlays.getVisualObjectForMesh()),n.controls.canStartDrag()?(n.isMarkupMode()&&n!=null&&(P=n.currentInteractor)!==null&&P!==void 0&&P.preview&&n.currentInteractor.name!=="MarkupNoInputInteractor"&&n.currentInteractor.name!=="LocalCoordSystemInteractor"&&(Array.isArray(n.currentInteractor.preview)?n.currentInteractor.preview.forEach(function(Z){return Z.setLabelVisible(!1)}):n.currentInteractor.preview.setLabelVisible(!1)),n.controls.startDrag(n.mouseDownButton,e)):n.controls.isDragging()&&n.controls.finishDrag(e)),n.mouseClick=!1}else{var q;n.isFrameSelectionEvent||n._applyHoverEffect(),n.isMarkupMode()?n.markups.mouseMove(e)||(q=n.currentInteractor)===null||q===void 0||q.processMouseMove(e):(n.checkSelectionMode("moveModel")||n.checkSelectionMode("selectSectionPlane")||n.checkSelectionMode("selectPointsForOverlay"))&&n.currentInteractor.processMouseMove(e)}}}},mouseUp:function(e){var t=e.data.self;if(!t.isCameraFlightInProgress()&&t.mouseDownEventOfRenderer){if(t.mouseDownEventOfRenderer=!1,t.cancelLongPress(),e.isLongPress=t.isLongPress,t.renderQueue.setInteractionMode(!1),t.fillRenderQueue(),clearTimeout(t.clickTimer),t.clickTimer=setTimeout(function(){t.clickCount=0},t.doubleClickDelay),t.clickCount>0){var n=null,i=null;if(t.isMarkupMode()&&(i=t.markups.mouseUpDblClick(e)),i)t.centerObjects(i.getObjectIds());else if(n=t.objectUnderMouse,t.controls.supportsGPUPicking()&&t.pickGPU(),t.touchWithOneFinger===!0)if(t.objectUnderMouse&&!t.isTouchMode())t.centerObjects([t.objectUnderMouse.id]);else{var s=t.overlays.getVisualObjectForMesh();s!=null&&s.mesh&&t.centerOverlay(s.mesh)}return t.setObjectUnderMouse(n),t.mouseClick=!1,t.mouseDownButton=null,t.isFrameSelectionEvent=!1,t.controls.isDragging()&&t.controls.finishDrag(e),t.clickCount=0,void t.renderGPUPickTextureNeeded()}if(t.clickCount++,t.controls.isDragging()&&(t.controls.finishDrag(e),t.draw()),t.controls.isPinching()&&(t.controls.finishPinch(),t.draw()),t.controls.isPaning()&&(t.controls.finishPan(),t.draw()),t._resetHoverEffect(),t.mouseClick&&t.mouseDownButton===0){var c,u=(c=t.content)===null||c===void 0?void 0:c.getClashes();if(u&&u.getCurrentClashFilter()!==null){u.resetSelectedClash(t),u.resetClashScene(t);var m=t.getNDCVector(),v=t.projector.pickingRay(m,t.camera).ray,M=t.clashesRenderQueue.castRayToClashes(v,200);if(M)return t.setObjectUnderMouse(M),u.setSelectedClash(M.getClashObject(),t),t.resetSelectedObjects(),$(t.domElement).trigger("select3DObject"),t.mouseClick=!1,t.mouseDownButton=null,void t.draw()}t.controls.supportsGPUPicking()&&t.pickGPU(),t.objectUnderMouse||t.setObjectUnderMouse(t.overlays.getVisualObjectForMesh());var w=!1;t.isMarkupMode()&&(w=t.markups.mouseUp(e)),w||t.controls.processClick(e)}t.mouseClick=!1,t.mouseDownButton=null,t.singleTouchFingerprintOffset=0,t.isMarkupMode()&&(t.markups.mouseActionNeedsLabelUpdate(e),t.fingerprintCursor.mouseUp()),t.renderGPUPickTextureNeeded(),t.draw()}},_mouseWheelBrowserSpecificDelta:function(e){return e.originalEvent.wheelDelta?e.originalEvent.wheelDelta:e.originalEvent.detail?-e.originalEvent.detail:void 0},mouseWheel:function(e){var t=e.data.self;if(!t.isCameraFlightInProgress()){var n=t._mouseWheelBrowserSpecificDelta(e);t.renderQueue.setInteractionMode(!0),e.preventDefault(),e.stopPropagation(),t.controls.processMouseWheel(n,e),t.isMarkupMode()&&t.markups.mouseActionNeedsLabelUpdate(e),clearTimeout($.data(e.target,"tid")),$.data(e.target,"tid",setTimeout(function(){t.renderQueue.setInteractionMode(!1),t.renderGPUPickTextureNeeded(),t.fillRenderQueue(),t.draw()},250)),t.draw()}},mouseOut:function(e){var t=e.data.self;t._resetHoverEffect(),t.mouse.x=-1,t.mouse.y=-1,t.draw()},restoreZoom:function(){var e=this;return e.resetSelectionMode(),e.cameraBackup?(this.controls.target.set(e.cameraBackup.target.x,e.cameraBackup.target.y,e.cameraBackup.target.z),this.camera.position.set(e.cameraBackup.position.x,e.cameraBackup.position.y,e.cameraBackup.position.z),this.camera.quaternion.set(e.cameraBackup.quaternion[0],e.cameraBackup.quaternion[1],e.cameraBackup.quaternion[2],e.cameraBackup.quaternion[3]),this.camera.up.set(e.cameraBackup.up.x,e.cameraBackup.up.y,e.cameraBackup.up.z),L0.updatePerspectiveCamera(this.camera,!1),this.setViewportSize(),Promise.resolve()):e.resetCamera(L0.CAMERA_FLIGHT)},backupCameraView:function(){L0.backupCameraView(this,this.camera,this.controls)},zoomToObject:function(){var e=ee(ge().mark(function t(n){return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:L0.zoomToObject(this.camera,this.controls,this,n);case 1:case"end":return i.stop()}},t,this)}));return function(t){return e.apply(this,arguments)}}(),zoomToObjects:function(){var e=ee(ge().mark(function t(n){return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:L0.zoomToObjects(this.camera,this.controls,this,n);case 1:case"end":return i.stop()}},t,this)}));return function(t){return e.apply(this,arguments)}}(),isCameraFlightInProgress:function(){return this.cameraFlightInProgress},getRayIntersectedObjects:function(e){var t,n,i,s,c=this,u=this.getNDCVector(),m=this.objectUnderMouse,v=[],M=[],w=0;if(this.camera.updateProjectionMatrix(),this.camera.updateMatrixWorld(),n=this.projector.pickingRay(u,this.camera),e)M=n.intersectObjects(e.children,!0);else if(m){var P=this.getObjectsContainer().getObjectRoot(m);if(P.hasOwnGeometry())if(P.meshesData.length===0)v.push(P.getMesh(c,0));else{var q,Z=__(P.meshesData.entries());try{for(Z.s();!(q=Z.n()).done;){var K=de(q.value,1)[0];(t=P.getMesh(c,K))&&v.indexOf(t)===-1&&v.push(t)}}catch(le){Z.e(le)}finally{Z.f()}}else this.getObjectsContainer().traverseDown(P,function(le){var pe,Ie=__(le.meshesData.entries());try{for(Ie.s();!(pe=Ie.n()).done;){var Ce=de(pe.value,1)[0];(t=le.getMesh(c,Ce))&&v.indexOf(t)===-1&&v.push(t)}}catch(Ne){Ie.e(Ne)}finally{Ie.f()}});M=n.intersectObjects(v)}if(m=null,M.length){var he;for(this.checkSelectionMode("section")&&this.clippingPlanes.intersects(n,he)&&(w=he),i=0,s=M.length;i<s;i++)if(M[i].distance>w){m=M[i];break}}return m},getNDCVector:function(e,t){var n=new Ai,i=(n=this.renderer.getSize(n)).x/2,s=n.y/2,c=e||this.mouse.x,u=t||this.mouse.y;return new Ee(c/i-1,1-u/s,.5)},addLights:function(e,t){var n,i,s,c=t;for(n=0,i=c.length;n<i;n++)c[n].type==="ambient"?e.add(new Hz(c[n].color)):c[n].type==="directional"?((s=new JC(c[n].color,c[n].intensity)).position.copy(c[n].position),e.add(s)):c[n].type==="spot"?console.debug("[Renderer] addLights - no spot lights defined at the moment"):c[n].type==="point"?console.debug("[Renderer] addLights - no point lights defined at the moment"):c[n].type==="hemisphere"&&e.add(new H8(c[n].skyColorHex,c[n].groundColorHex,c[n].intensity||1))},toggleDisciplinesOpacity:function(e,t){var n,i,s,c=this.content.getDisciplines();for(n=0,s=c.length;n<s;n++)(i=c[n]).isCollisionLayer||i.isRevisionComparisonLayer||(i.visible||t)&&this.setDisciplineOpacity(i,e?i.opacity:null);return this},toggleClashDisciplineOpacity:function(e){var t,n,i,s=this.content.getDisciplines();for(t=0,i=s.length;t<i;t++)(n=s[t]).isCollisionLayer&&n.visible&&this.setDisciplineOpacity(n,e?n.opacity:null);return this},disposeObjects:function(e,t,n){if(e)for(var i;e.children.length;)i=e.children[0],t=t||i.node,n=n||i.discipline,i&&i.node===t&&i.discipline===n&&(i.geometry?i.geometry.dispose():i.children.length&&this.disposeObjects(i),e.remove(i),i=null)},traverseObjectNode:function(e,t){var n=this.getObjectsContainer().getObject(e.id);n&&this.getObjectsContainer().traverseDown(n,function(i){t(i)})},toggleObjectNode:function(e){var t=this,n=this.content.getClashes().getClashElement(e.id);n&&n.getClashObject().setVisible(e.visible),this.traverseObjectNode(e,function(i){e.visible?(i.visible=!0,i.show(t)):(i.visible=!1,i.hide(t))}),this.draw()},toggleObjectNodeOpacity:function(e){var t=this,n=this.content.getClashes().getClashElement(e.id);n&&n.getClashObject().setBackground(e.opacity<1),this.traverseObjectNode(e,function(i){return i.setBackground(t,e.opacity<1)}),this.draw()},displayCollisionElement:function(e,t){if(this.content){var n=this.content.getClashes().getClashObjectForClashElementId(e);n&&n.setVisible(t)}},displayRevisionCompareElement:function(e,t,n){var i=this.findSubsetIdsObjects(e);if(i.length>0){var s,c=__(i);try{for(c.s();!(s=c.n()).done;){var u=s.value;(!n||u.compareTo===n)&&(t?this.showObject(u):this.hideObject(u))}}catch(m){c.e(m)}finally{c.f()}}},findSubsetIdsObjects:function(e){return this.getObjectsContainer().findSubsetIdsObjects(e)},filterRevisionCompareElements:function(e,t,n){var i=this;if(e&&e.length>0){var s=this.checkSelectionMode("isolated");s&&this.disposeIsolatedSet(),e.forEach(function(c){var u,m=__(i.findSubsetIdsObjects(c));try{for(m.s();!(u=m.n()).done;){var v=u.value;v.compareTo&&(v.compareTo===n&&n!==0&&t.contains(v.discipline)?i.showObject(v):i.hideObject(v))}}catch(M){m.e(M)}finally{m.f()}}),s&&this.makeIsolatedSet()}},displayRevisionCompareOriginalElements:function(e,t){var n=this;if(e&&e.length>0){var i=this.checkSelectionMode("isolated");i&&this.disposeIsolatedSet(),e.forEach(function(s){var c=n.findSubsetIdsObjects(s);if(c.length>0){var u,m=__(c);try{for(m.s();!(u=m.n()).done;){var v=u.value;t?n.showObject(v):n.hideObject(v)}}catch(M){m.e(M)}finally{m.f()}}}),i&&this.makeIsolatedSet()}},setDisciplineOpacity:function(e,t){var n=this,i=this.getGeometryNodes().nodelist,s=e.id;t=t||this.disciplineOpacity,i.nodes.forEach(function(c){if(Object.hasOwn(i,c)&&i[c][s]&&i[c].divisionTopologyId===e.divisionTopologyId){var u=e.opaque?e.selectedUserOpacity:void 0;n.getGeometryNodes().setNodeDisciplineOpacity(c,s,t,u)}}),this.draw()},showPins:function(e,t){return e?(this.pins.showPins(e,t),this):this},hidePins:function(){return this.pins.hidePins(),this},getPinObject:function(){return this.deferred=$.Deferred(),this.setSelectionMode("addPin"),this.deferred},cancelAddPin:function(){this.checkSelectionMode("addPin")&&(this.deferred.reject(),this.unsetSelectionMode("addPin"))},getSlideThumbnail:function(){return this.slides.getSlideThumbnail()},getSlideThumbnailBlob:function(e,t){return this.slides.getSlideThumbnailBlob(e,t)},getSlideParams:function(){return this.slides.getSlideParams()},showRelatedObject:function(e){return this.pins.zoomToPin(e)},highlightPin:function(e){this.pins.highlightPin(e)},resetPinsMaterial:function(){this.pins.resetPinsMaterial()},refreshIsolatedSet:function(){this.checkSelectionMode("isolated")&&(this.disposeIsolatedSet(),this.makeIsolatedSet())},colorizeObjects:function(e,t){var n=this.getObjectsContainer().getObjects(e);this.addObjectsToColoredSet(n,t),this.draw()},hoverObject:function(e){this.lastObjectUnderMouse=this.objectUnderMouse,this.objectUnderMouseChanged=!0,this.objectUnderMouse=this.getObjectsContainer().getObject(e),this._setHoverEffect()},resetHoveredObject:function(){this._resetHoverEffect()},updateStats:function(){var e,t=this,n=$("#debug").data("st"),i=(e=window)!==null&&e!==void 0&&(e=e.performance)!==null&&e!==void 0&&e.memory?(window.performance.memory.jsHeapSizeLimit/1e9).toFixed(2)+" GB":"N/A";n&&(n.update(),$("div#debug > div#renderInfo").html("Shaders: "+t.renderer.info.memory.programs+"<br />Calls: "+t.renderer.info.render.calls+"<br />Triangles: "+(t.renderer.info.render.faces/1e6).toFixed(2)+" M<br />Meshes: "+t.root.children.length+"<br />Chrome JS heap: "+i+"<br />Chrome buffer: "+(t.maxWebGLBufferSize/1e9).toFixed(2)+" GB<br /><br />Objects<br />Total: "+t.getObjectsContainer().getObjectCount()))},isTouchMode:function(){return localStorage.getItem("inTouchMode")==="true"},cancelLongPress:function(){this.presstimer!==null&&(clearTimeout(this.presstimer),this.presstimer=null)},hasTouches:function(e,t){var n;return(e==null||(n=e.originalEvent)===null||n===void 0?void 0:n.touches)&&e.originalEvent.touches.length===t},disableDraw:function(e){this.drawDisabled=e,e===!0&&this.cancelDrawRequest()},getObject:function(e){return this.getObjectsContainer().getObject(e)},setLocalizationFnc:function(e){e instanceof Function&&(this.textLocalizationFnc=e)},modifyPreviewArrowPosition:function(e,t,n){var i;(i=this.currentInteractor)!==null&&i!==void 0&&i.modifyPreviewArrowPosition&&(this.currentInteractor.modifyPreviewArrowPosition(e,t,n),this.draw())},setMultiselect:function(e){this.forceMultiSelect=e},setSingleObjectSelection:function(e){this.forceSingleObjectSelection=e},escapeKeyPressed:function(){if(this.currentInteractor)return this.currentInteractor.name==="MeasurePerpendicularInteractor"||this.currentInteractor.name==="MeasureFreeInteractor"||this.currentInteractor.name==="MeasureAngleInteractor"||this.currentInteractor.name==="AnnotationInteractor"||this.currentInteractor.name==="LocalCoordSystemInteractor"||this.currentInteractor.name==="SelectPointsForOverlayInteractor"?(this.currentInteractor.cancel(),void this.currentInteractor.start()):void(this.currentInteractor.name==="SectionPlaneInteractor"&&(this.currentInteractor.cancel(),this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&!this.deleteActivePlanePossible()&&this.setSinglePlaneMode(),this.clippingPlanes.restoreClippingPlanes(),this.clippingPlanes.setEnabled(!0),this.clippingPlanes.addNewPlaneIsOn=!1,this.clippingPlanes.onUpdateSectionParams()))},getCommandPolicy:function(e,t){var n=e.GetCommandName();if(this.commandPolicies[n]!==void 0&&this.commandPolicies[n][t]!==void 0)return this.commandPolicies[n][t]},calculateDefaultBoundingBox:function(){this.visibleGeometryBoundingBox.set(new Ee(-1,-1,-1),new Ee(1,1,1)),this.visibleGeometryBoundingBox.getBoundingSphere(this.visibleGeometryBoundingSphere)},calculateVisibleGeometryBoundaries:function(){this.visibleGeometryBoundingBox.makeEmpty();var e=this.getGeometryNodes();return!!e&&(this.visibleGeometryBoundingBox=e.calculateVisibleGeometryBoundingBox(this.visibleGeometryBoundingBox),this.visibleGeometryBoundingBox.isEmpty()?(this.calculateDefaultBoundingBox(),!1):(this.visibleGeometryBoundingBox.getBoundingSphere(this.visibleGeometryBoundingSphere),!0))},calculateDrawRange:function(){this.dynamicDrawRange.calculateDrawRange(this)},useTranslationForTransformControls:function(){this.transformControls.setMode("translate"),this.updateTransformControls(!1)},useScaleForTransformControls:function(){this.transformControls.setMode("scale"),this.updateTransformControls(!1)},useRotationForTransformControls:function(){this.transformControls.setMode("rotate"),this.updateTransformControls(!1)},switchVisibilityOfTransformControls:function(){this.updateTransformControls(!0)},updateTransformControls:function(e){this.transformControls.visible=!e||!this.transformControls.visible,this.transformControls.visible===!1?(this.transformControls.showX=!1,this.transformControls.showY=!1,this.transformControls.showZ=!1):this.clippingPlanes.clippingPlaneSettings.useParallelPlane()?(this.transformControls.showX=!0,this.transformControls.showY=this.transformControls.getMode()==="rotate",this.transformControls.showZ=this.transformControls.getMode()==="rotate"):this.clippingPlanes.clippingPlaneSettings.useBoxPlanes()?(this.transformControls.showX=!0,this.transformControls.showY=!0,this.transformControls.showZ=!0):(this.transformControls.showX=!0,this.transformControls.showY=this.transformControls.getMode()==="rotate",this.transformControls.showZ=this.transformControls.getMode()==="rotate",this.transformControls.getMode()==="scale"&&(this.transformControls.showX=!1,this.transformControls.visible=!1)),this.draw()},showClippingFrames:function(e){this.clippingPlanes.showClippingFrames(e),this.draw()},_setPlaneMode:function(e){var t=arguments.length>1&&arguments[1]!==void 0&&arguments[1];this.clippingPlanes.resetActivePlane(),this.clippingPlanes.hideAdditionalClippingPlanes(),this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&this.clippingPlanes.setUseUpVector(!1);var n=this.clippingPlanes.getSectionCutOptions();n.sectionCutPlaneOption=e,this.clippingPlanes.setSectionCutOptions(n,t)},setSinglePlaneMode:function(){this._setPlaneMode("single",!0),this.clippingPlanes.addNewPlaneIsOn=!1},setParallelPlaneMode:function(){this._setPlaneMode("parallel",!0),this.clippingPlanes.addNewPlaneIsOn=!1},setBoxPlaneMode:function(){this._setPlaneMode("box",!0),this.clippingPlanes.addNewPlaneIsOn=!1},setMultiPlaneMode:function(){this._setPlaneMode("multi",!0),this.clippingPlanes.addNewPlaneIsOn=!0},isAxisModeEnabled:function(){var e;return!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()||((e=this.clippingPlanes)===null||e===void 0?void 0:e.areMorePlanesPossible())&&this.clippingPlanes.addNewPlaneIsOn},addNewPlaneClicked:function(){var e=this.clippingPlanes.addNewPlaneIsOn;this.clippingPlanes.addNewPlaneIsOn?this.deleteActivePlanePossible()||this.setSinglePlaneMode():this.clippingPlanes.clippingPlaneSettings.useSinglePlane()&&this.setMultiPlaneMode(),this.clippingPlanes.addNewPlaneIsOn=!e,this.clippingPlanes.addNewPlaneIsOn||this.escapeKeyPressed(),this.clippingPlanes.onUpdateSectionParams()},addNewPlanePossible:function(){return!!this.clippingPlanes.clippingPlaneSettings.useSinglePlane()||!!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&((e=this.clippingPlanes)===null||e===void 0?void 0:e.areMorePlanesPossible());var e},isAddNewPlaneEnabled:function(){return this.addNewPlanePossible()||(this.clippingPlanes.addNewPlaneIsOn=!1),this.clippingPlanes.addNewPlaneIsOn},moveTransformControlToPrevPlane:function(){this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&this.transformControls&&this.clippingPlanes.setTransformControlToPlane(this.clippingPlanes.setPrevPlaneAsActive())},moveToPrevPlanePossible:function(){var e;return!!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&((e=this.clippingPlanes)===null||e===void 0?void 0:e.moveToPrevPlanePossible())},moveTransformControlToNextPlane:function(){this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&this.transformControls&&this.clippingPlanes.setTransformControlToPlane(this.clippingPlanes.setNextPlaneAsActive())},moveToNextPlanePossible:function(){var e;return!!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&((e=this.clippingPlanes)===null||e===void 0?void 0:e.moveToNextPlanePossible())},deleteActivePlaneClicked:function(){this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&this.clippingPlanes.deleteActivePlane(),this.deleteActivePlanePossible()||this.setSinglePlaneMode()},deleteActivePlanePossible:function(){var e;return!!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&((e=this.clippingPlanes)===null||e===void 0?void 0:e.deleteActivePlanePossible())},flipOrientation:function(){this.clippingPlanes.isActivePlaneVisible()&&(this.clippingPlanes.flipOrientation(),this.renderGPUPickTextureNeeded())},currentClippingMode:function(){return this.clippingPlanes.getSectionCutOptions().sectionCutPlaneOption},currentManipulationMode:function(){return this.transformControls.mode},currentManipulationControlVisibility:function(){return this.transformControls.visible},isActivePlaneVisible:function(){var e;return!!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()&&((e=this.clippingPlanes)===null||e===void 0?void 0:e.isActivePlaneVisible())},isFlipPlanePossible:function(){var e;return!this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()||((e=this.clippingPlanes)===null||e===void 0?void 0:e.isActivePlaneVisible())},_onFreePlaneSelected:function(){var e,t=new CustomEvent("onFreePlaneSelected",{bubbles:!0,cancelable:!0}),n=(e=document)===null||e===void 0?void 0:e.getElementById("mainViewportContainer");n&&n.dispatchEvent(t)},setFreePlaneSection:function(e,t){console.debug(`[Renderer] setFreePlaneSection
11640
11640
  normal: (`.concat(e.x.toFixed(2),", ").concat(e.y.toFixed(2),", ").concat(e.z.toFixed(2),`)
11641
11641
  pos: (`).concat(t.x.toFixed(2),", ").concat(t.y.toFixed(2),", ").concat(t.z.toFixed(2),`)
11642
11642
  `)),this.clippingPlanes.addNewPlaneIsOn=!1,this.clippingPlanes.clippingPlaneSettings.useMultiPlanes()?this.clippingPlanes.addSection(e,t):this.clippingPlanes.setSection(e,t,!0,!0),this.clippingPlanes.storeClippingPlanes(),this._onFreePlaneSelected()},emptySectionCutSceneForSectionCutGeometry:function(){this.sectionCuts.emptySectionCutSceneForSectionCutGeometry(),this.draw()},_onOverlayLoaded:function(e){var t,n=new CustomEvent("onOverlayLoaded",{bubbles:!0,cancelable:!0,detail:e}),i=(t=document)===null||t===void 0?void 0:t.getElementById("mainViewportContainer");i&&i.dispatchEvent(n)},createOverlay:(UG=ee(ge().mark(function e(t,n,i,s){var c;return ge().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return u.abrupt("return",(c=this.overlayManager)===null||c===void 0?void 0:c.createOverlay(t,n,i,s));case 1:case"end":return u.stop()}},e,this)})),function(e,t,n,i){return UG.apply(this,arguments)}),generateOverlay:(WG=ee(ge().mark(function e(t,n){var i;return ge().wrap(function(s){for(;;)switch(s.prev=s.next){case 0:return s.next=2,this.overlays.generateOverlay(t,n);case 2:return i=s.sent,s.abrupt("return",i);case 4:case"end":return s.stop()}},e,this)})),function(e,t){return WG.apply(this,arguments)}),loadOverlay:(qG=ee(ge().mark(function e(t,n){var i,s;return ge().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:return s=(i=this.overlayManager)===null||i===void 0?void 0:i.loadOverlay(t,n),this.draw(),c.abrupt("return",s);case 3:case"end":return c.stop()}},e,this)})),function(e,t){return qG.apply(this,arguments)}),loadOverlayList:(FG=ee(ge().mark(function e(t,n){var i,s,c;return ge().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:return s=this.getAllLoadedOverlays(),c=t.filter(function(m){return!s.find(function(v){return v===m})}),u.next=4,(i=this.overlayManager)===null||i===void 0?void 0:i.loadOverlayList(c,n);case 4:this.showOverlays(t),this.draw();case 6:case"end":return u.stop()}},e,this)})),function(e,t){return FG.apply(this,arguments)}),deleteOverlay:(HG=ee(ge().mark(function e(t){var n;return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return i.abrupt("return",(n=this.overlayManager)===null||n===void 0?void 0:n.deleteOverlay(t));case 1:case"end":return i.stop()}},e,this)})),function(e){return HG.apply(this,arguments)}),clearOverlays:function(){this.overlays.clear(),this.draw()},showOverlays:function(e){this.overlays.setOverlaysVisibility(e,!0),this.draw()},hideOverlays:function(e){this.overlays.setOverlaysVisibility(e,!1),this.draw()},hideAllOverlays:function(){this.overlays.hideAllOverlays(),this.draw()},removeOverlayFromSceneById:function(e){this.overlays.setOverlaysVisibility([e],!1),this.overlays.removeOverlayFromSceneById(e),this.draw()},getAllVisibleOverlays:function(){return this.overlays.getAllVisibleOverlays()},getAllLoadedOverlays:function(){return this.overlays.getAllLoadedOverlays()},setOverlaysTransparency:function(e,t){this.overlays.setOverlaysTransparency(e,t),this.draw()},getOverlayTransparency:function(e){return this.overlays.getOverlayTransparency(e)},startSelectPointsForOverlayInteractor:function(e){var t;if(!e&&!this.clippingPlanes.isEnabled())throw new Error("No clipping plane defined. One plane is needed for overlays");console.debug("[Renderer] selectPointsForOverlay (viewport: ".concat(this==null?void 0:this.name)),this.setSelectionMode("selectPointsForOverlay"),e&&((t=this.currentInteractor)===null||t===void 0||t.setfileViewInteractor()),this.draw()},getHiddenObjectsIds:function(){return this.objectSets.hiddenObjects.map(function(e){return e.id})},isValidSectionCutResult:function(e,t){return e.cuttingPlanes.length>0&&t.cuttingPlanes.length>0&&e.cuttingPlanes[0].cuttingPoint.x===t.cuttingPlanes[0].cuttingPoint.x&&e.cuttingPlanes[0].cuttingPoint.y===t.cuttingPlanes[0].cuttingPoint.y&&e.cuttingPlanes[0].cuttingPoint.z===t.cuttingPlanes[0].cuttingPoint.z&&e.modelLayer.includes(t.modelLayer[0])&&e.topologyNodes===t.topologyNodes&&e.hiddenObjects===t.hiddenObjects},generateSectionCuts:(kG=ee(ge().mark(function e(t,n){return ge().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return i.next=2,this.sectionCuts.createMeshesFromGlbResponse(t,n||this.clippingPlanes.getSectionCutOptions());case 2:this.draw();case 3:case"end":return i.stop()}},e,this)})),function(e,t){return kG.apply(this,arguments)}),setMeasureUnit:function(e,t,n,i){var s;this.units&&this.units[e]&&(this.units[e].unit=t,this.units[e].precision=n,this.units[e].multiplicator=i,(s=this.currentInteractor)!==null&&s!==void 0&&s.setUnit&&this.currentInteractor.setUnit())},getVectorScreenCoordinates:function(e){var t=new Ai;t=this.renderer.getSize(t);var n=e.clone().project(this.camera);return n.x=(n.x+1)*t.x/2,n.y=-(n.y-1)*t.y/2,n.z=0,n},getAmbientOcclusionOptions:function(){return this.ambientOcclusionSettings.get()},setAmbientOcclusionOptions:function(e){this.ambientOcclusionSettings.set(e),this.lightDirection.setFromSphericalCoords(1,e.lightElevation,e.lightRotation),this.lightColor.copy(e.lightColor),this.originalLightColor.copy(e.lightColor),this.ambientLightColor.copy(e.ambientLightColor),this.originalAmbientLightColor.copy(e.ambientLightColor),this.ssaoEnabled=this.ssaoSupported&&e.usage,this.ssaoEnabledInteraction=this.ssaoEnabled&&e.usageForInteraction;var t=e.useShadows&&this.shadowsSupported;this.shadows.setEnabled(t),this.shadowsEnabled=t,this.shadowsEnabledInteraction=t&&e.useShadowsForInteraction},resetAmbientOcclusionOptions:function(){return this.ambientOcclusionSettings.resetToDefault()},setSunPosition:function(e){var t=e.northDirection,n=e.year,i=e.month,s=e.day,c=e.hours,u=e.minutes,m=e.timezone,v=e.latitude,M=e.longitude,w=e.showSky,P=n+"-"+(i<10?"0":"")+i+"-"+(s<10?"0":"")+s,q=new(Ere()).utc(P).tz(m).clone().startOf("day").clone().add(c,"hours").add(u,"minute"),Z=this.sunCalculation.getPosition(q,v,M),K=(360-Ro.radToDeg(Z.azimuth)-t).toFixed(2),he=Z.altitude.toFixed(2),le=Math.PI/2-he,pe=Ro.degToRad(K);if(this.lightDirection.setFromSphericalCoords(1,le,pe),this.lightColor=this.originalLightColor.clone(),this.ambientLightColor=this.originalAmbientLightColor.clone(),he<.2){var Ie=pL.mapInterval(.1,.2,.8,1,he);this.lightColor.intensity=Ie,this.lightColor.multiplyScalar(Ie),this.ambientLightColor.intensity=Ie}if(he<.1){var Ce=pL.mapInterval(0,.1,0,.8,he);this.lightColor.intensity=Ce,this.lightColor.multiplyScalar(Ce),this.ambientLightColor.intensity=Ce}if(he<0&&(this.lightColor.setRGB(0,0,0),this.ambientLightColor.intensity=0),this.sky.visible=w,this.sky.visible){var Ne={turbidity:10,rayleigh:3,mieCoefficient:.005,mieDirectionalG:.7,exposure:.5},Ge=this.sky.material.uniforms;Ge.turbidity.value=Ne.turbidity,Ge.rayleigh.value=Ne.rayleigh,Ge.mieCoefficient.value=Ne.mieCoefficient,Ge.mieDirectionalG.value=Ne.mieDirectionalG,Ge.sunPosition.value.copy(this.lightDirection),this.renderer.toneMappingExposure=Ne.exposure,this.renderer.toneMapping=yu}else this.renderer.toneMappingExposure=1,this.renderer.toneMapping=D0;return this.draw(),{zenithAngle:le,azimuthAngle:pe}},getAnnotationOptions:function(){return this.annotationSettings.get()},setAnnotationOptions:function(e){this.annotationSettings.set(e),this.color[0].copy(e.color),this.color[1].copy(e.color),this.color[2].copy(e.color)},getAnnotationBorderColorType:function(){return this.annotationSettings.get().borderColorType},setAnnotationBorderColorType:function(e){var t=this.annotationSettings.get();t.borderColorType=e,this.annotationSettings.set(t)},resetAnnotationOptions:function(){return this.annotationSettings.resetToDefault()},getAnnotations:function(){return this.markups.getAll("annotations")},getDimensions:function(){return this.markups.getAll("dimensions")},getLabels:function(){return this.markups.getAll("labels")},setAnnotations:function(e){this.markups.setAnnotations(e)},setDimensions:function(e){this.markups.setDimensions(e)},setLabels:function(e){this.markups.setLabels(e)},getObjectsContainer:function(){return this.content?this.content.getObjectsContainer():null},getGeometryNodes:function(){return this.content?this.content.getGeometryNodes():null},getContentBoundingBox:function(){var e=this.content?this.content.getBoundingBox():null;return e||(e=new iO),e.isValid()||(e.expandByMinMax(-1e3,-1e3,-1e3,1e3,1e3,1e3),e.emptyContent=!0),e},drawBackgroundToCanvas:function(e,t,n){this.background.drawToCanvas(e,t,n)},setBackground:function(e,t){this.background.setBackground(e,t)},captureScreen:function(){this.drawSynchronous();var e=this.renderer.getContext(),t=new Uint8Array(e.drawingBufferWidth*e.drawingBufferHeight*4);return e.readPixels(0,0,e.drawingBufferWidth,e.drawingBufferHeight,e.RGBA,e.UNSIGNED_BYTE,t),t},captureScreenBlob:function(){var e=this;return this.drawSynchronous(),new Promise(function(t){e.renderer.domElement.toBlob(function(n){t(n)})})},getDisciplineNodeMeshes:function(){return this.nodeMeshes},updateWebGLBuffers:function(){this.content.getGeometryNodes().updateWebGLBuffers(this),this.draw()},updateWebGLBuffer:function(e){this.nodeMeshes.updateWebGLBuffer(this,e)},setCurrentClashFilter:function(e){var t;(t=this.content)===null||t===void 0||t.getClashes().setCurrentClashFilter(e)},beginChangeWorkingSet:function(){var e=this.checkSelectionMode("isolated"),t=this.checkSelectionMode("hideIsolated"),n=this.checkSelectionMode("clipIsolated");return e&&this.resetIsolationMode(),t&&this.resetHideIsolateObjects(),{isolated:e,hideIsolated:t,clipIsolated:n}},endChangeWorkingSet:function(e){e.isolated&&this.setIsolationMode(),e.hideIsolated&&this.hideIsolateObjects(),e.clipIsolated&&this.clipObjects(!0)},changeWorkingSet:function(e){var t=this.beginChangeWorkingSet();e(),this.endChangeWorkingSet(t)},getIsolationMode:function(){var e=0;return this.checkSelectionMode("isolated")&&(e=1),this.checkSelectionMode("hideIsolated")&&(e=2),e},setShowHiddenObjectsTransparent:function(){var e=!(arguments.length>0&&arguments[0]!==void 0)||arguments[0];this.showHiddenObjectsTransparent=e,this.renderGPUPickTextureNeeded(),this.draw()},hasLCS:function(){return this.localCoordSystemManager.hasLCS()},setupProjectView:function(){return this.calculateVisibleGeometryBoundaries()!==!1&&(this.resetCamera(),!0)},setObjectUnderMouse:function(e){var t,n;(this==null||(t=this.objectUnderMouse)===null||t===void 0?void 0:t.id)!==e?.id&&(this.lastObjectUnderMouse=this.objectUnderMouse,this._hoverEffectTurnedOff(this.lastObjectUnderMouse),this.objectUnderMouseChanged=!0),e?(this.objectUnderMouse=e,e.isClashElement?this.rootObjectUnderMouse=e:this.rootObjectUnderMouse=(n=this.getObjectsContainer())===null||n===void 0?void 0:n.getObjectRoot(e)):this.resetObjectUnderMouse()},isVisibleObject:function(e){var t=this.getObjectsContainer().getObject(e);if(!t)return this.overlays.isVisibleOverlay(e);var n=this.objectSets.hiddenObjects.find(function(c){return c.id===e}),i=t.getIsolation(this),s=this.checkSelectionMode("hideIsolated");return!(t==null||!t.isDisciplineNodeVisible(this)||!t.visible||n||s&&!i)},restoreObjectStates:function(){this.objectSets.selectedObjects.length>0&&new Ey(this).Execute(this.objectSets.selectedObjects),this.objectSets.hiddenObjects.length>0&&new B5(this).Execute(this.objectSets.hiddenObjects),this.objectSets.workingObjects.length>0&&this.checkSelectionMode("isolated")&&new pD(this).Execute(this.objectSets.workingObjects),this.objectSets.workingObjects.length>0&&this.checkSelectionMode("hideIsolated")&&new AL(this).Execute(this.objectSets.workingObjects)},restoreWorkingObjectsCustomColors:function(){var e=this,t=this.getObjectsContainer();this.objectSets.workingObjects.forEach(function(n){n.customColor?n.setCustomColor(e,n.customColor):n.resetCustomColor(e),n.customAlpha?n.setCustomAlpha(e,n.customAlpha):n.resetCustomAlpha(e),t.traverseDown(n,function(i){i.customColor?i.setCustomColor(e,i.customColor):i.resetCustomColor(e),i.customAlpha?i.setCustomAlpha(e,i.customAlpha):i.resetCustomAlpha(e)})})},setUseHoverEffect:function(e){this.useHoverEffect=e},triggerObjectSetChangedEvent:function(e){this.objectSetChangedCallback&&this.objectSetChangedCallback(e)}}})(),f})())});var o3e=G_((KK,Ace)=>{"use strict";(function(p,h){typeof KK=="object"&&typeof Ace=="object"?Ace.exports=h():typeof define=="function"&&define.amd?define([],h):typeof KK=="object"?KK.add=h():p.add=h()})(self,()=>(()=>{"use strict";var p={d:(Lt,$e)=>{for(var dt in $e)p.o($e,dt)&&!p.o(Lt,dt)&&Object.defineProperty(Lt,dt,{enumerable:!0,get:$e[dt]})},o:(Lt,$e)=>Object.prototype.hasOwnProperty.call(Lt,$e),r:Lt=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(Lt,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(Lt,"__esModule",{value:!0})}},h={};function a(Lt){return a=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},a(Lt)}function f(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,g(zt.key),zt)}}function g(Lt){var $e=function(dt,zt){if(a(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(a(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return a($e)=="symbol"?$e:$e+""}p.r(h),p.d(h,{BimExplorer:()=>$a,BimFilesIsoSelect:()=>fo,BimFilesOverlaySelect:()=>gf,BimFilesSelect:()=>wi,BimModelsIsoSelect:()=>Mf,BimModelsSelect:()=>vl,BimObjectProperties:()=>jd,BimPortal:()=>Zs,BimTaskList:()=>ms,BimTaskProperties:()=>us,ExportManager:()=>j1,ExternalClient:()=>H,ModelViewer:()=>m1,getUrlParameter:()=>Yp});var C,H=function(){return Lt=function zt(fn){(function(Tt,$t){if(!(Tt instanceof $t))throw new TypeError("Cannot call a class as a function")})(this,zt),this._messageHandlers={},this._errorHandler=null,this._clientName=fn},$e=[{key:"initialize",value:function(){var zt=this;console.log("ExternalClient initialized"),window.addEventListener("message",function(fn){var Tt=fn.data;if(Tt==="")zt.errorReceived({error:"External client got an empty message !"});else{var $t;try{$t=JSON.parse(Tt)}catch{return void zt.errorReceived({error:"External client got an invalid message json payload !"})}zt.messageReceived($t)}})}},{key:"addMessageHandler",value:function(zt,fn){this._messageHandlers[zt]=fn}},{key:"removeMessageHandler",value:function(zt){delete this._messageHandlers[zt]}},{key:"messageReceived",value:function(zt){var fn=this._messageHandlers[zt.message];fn&&fn(zt.data)}},{key:"addErrorHandler",value:function(zt){this._errorHandler=zt}},{key:"removeErrorHandler",value:function(){this._errorHandler=null}},{key:"errorReceived",value:function(zt){var fn=this._errorHandler;fn&&fn(zt)}},{key:"sendMessage",value:function(zt,fn,Tt){var $t=document.getElementById(zt);return!($t==null||!$t.contentWindow||($t.contentWindow.postMessage(JSON.stringify({messageType:"bimplusMessageIn",message:fn,data:Tt}),"*"),0))}},{key:"getClientName",value:function(){return this._clientName}}],$e&&f(Lt.prototype,$e),dt&&f(Lt,dt),Object.defineProperty(Lt,"prototype",{writable:!1}),Lt;var Lt,$e,dt}();function de(Lt){return de=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},de(Lt)}function G(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,ge(zt.key),zt)}}function ee(Lt,$e,dt){return $e&&G(Lt.prototype,$e),dt&&G(Lt,dt),Object.defineProperty(Lt,"prototype",{writable:!1}),Lt}function fe(Lt,$e,dt){return($e=ge($e))in Lt?Object.defineProperty(Lt,$e,{value:dt,enumerable:!0,configurable:!0,writable:!0}):Lt[$e]=dt,Lt}function ge(Lt){var $e=function(dt,zt){if(de(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(de(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return de($e)=="symbol"?$e:$e+""}var je=ee(function Lt(){(function($e,dt){if(!($e instanceof dt))throw new TypeError("Cannot call a class as a function")})(this,Lt)});function et(Lt){return et=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},et(Lt)}function Dt(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,Mn(zt.key),zt)}}function Mn(Lt){var $e=function(dt,zt){if(et(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(et(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return et($e)=="symbol"?$e:$e+""}C=je,fe(je,"embedded","?embedded=1"),fe(je,"url",function(Lt,$e){var dt="";return typeof $e?.baseUrl=="string"?(dt=$e.baseUrl).endsWith("/")||(dt+="/"):(dt="https://portal",Lt&&(Lt==="dev"&&(dt+="-dev"),Lt==="stage"&&(dt+="-stage")),dt+=".bimplus.net/"),dt}),fe(je,"token",function(Lt){return"&token="+Lt}),fe(je,"client",function(Lt){return Lt?"&external_client=PostMessage:"+Lt.getClientName():""}),fe(je,"source",function(Lt){return Lt&&typeof Lt=="string"?"&source="+Lt:""}),fe(je,"teamId",function(Lt){return Lt?"&team_id="+Lt:""}),fe(je,"projectId",function(Lt){return Lt?"&project_id="+Lt:""}),fe(je,"addParameter",function(Lt,$e,dt){return $e&&dt?Lt?Lt+"&".concat($e,"=").concat(dt):"?".concat($e,"=").concat(dt):Lt}),fe(je,"addParameters",function(Lt,$e){var dt=Lt;for(var zt in $e)dt=C.addParameter(dt,zt,$e[zt]);return dt});var Kn=function(){return Lt=function zt(fn,Tt,$t,fi,is){(function(Gi,ti){if(!(Gi instanceof ti))throw new TypeError("Cannot call a class as a function")})(this,zt),this._client=Tt,this._domId=fn,this._env=$t,this._token=fi,this._options=is},($e=[{key:"sendMessage",value:function(zt,fn){if(!this._client){var Tt="Error for SendMessage. Client not defined.";throw console.error(Tt),ReferenceError(Tt)}this._client.sendMessage(this._domId,zt,fn)}},{key:"getDOMElementId",value:function(){return this._domId}},{key:"initMessageHandlers",value:function(){}},{key:"loadIFrame",value:function(zt){var fn=document.getElementById(this._domId);if(!fn){var Tt="DOM element not found: "+this._domId;throw console.error(Tt),ReferenceError(Tt)}fn.src=zt}},{key:"loadIFrameShadowRoot",value:function(zt,fn){var Tt=zt.getElementById(this._domId);if(!Tt){var $t="DOM element not found: "+this._domId;throw console.error($t),ReferenceError($t)}Tt.src=fn}}])&&Dt(Lt.prototype,$e),dt&&Dt(Lt,dt),Object.defineProperty(Lt,"prototype",{writable:!1}),Lt;var Lt,$e,dt}();function Li(Lt){return Li=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},Li(Lt)}function es(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,sr(zt.key),zt)}}function sr(Lt){var $e=function(dt,zt){if(Li(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(Li(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return Li($e)=="symbol"?$e:$e+""}function ys(Lt,$e,dt){return $e=na($e),function(zt,fn){if(fn&&(Li(fn)=="object"||typeof fn=="function"))return fn;if(fn!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Tt){if(Tt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Tt}(zt)}(Lt,Yr()?Reflect.construct($e,dt||[],na(Lt).constructor):$e.apply(Lt,dt))}function Yr(){try{var Lt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(Yr=function(){return!!Lt})()}function Ei(){return Ei=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(Lt,$e,dt){var zt=function(Tt,$t){for(;!{}.hasOwnProperty.call(Tt,$t)&&(Tt=na(Tt))!==null;);return Tt}(Lt,$e);if(zt){var fn=Object.getOwnPropertyDescriptor(zt,$e);return fn.get?fn.get.call(arguments.length<3?Lt:dt):fn.value}},Ei.apply(null,arguments)}function na(Lt){return na=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($e){return $e.__proto__||Object.getPrototypeOf($e)},na(Lt)}function ur(Lt,$e){return ur=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(dt,zt){return dt.__proto__=zt,dt},ur(Lt,$e)}var Zs=function(Lt){function $e(Tt,$t,fi,is,Gi){var ti;return function(Yn,ro){if(!(Yn instanceof ro))throw new TypeError("Cannot call a class as a function")}(this,$e),(ti=ys(this,$e,[Tt,fi,is,$t,Gi])).onTeamChanged=null,ti.onProjectSelected=null,ti.onAttachmentSelected=null,ti.onAttachmentSelectedDetails=null,ti}return function(Tt,$t){if(typeof $t!="function"&&$t!==null)throw new TypeError("Super expression must either be null or a function");Tt.prototype=Object.create($t&&$t.prototype,{constructor:{value:Tt,writable:!0,configurable:!0}}),Object.defineProperty(Tt,"prototype",{writable:!1}),$t&&ur(Tt,$t)}($e,Lt),dt=$e,zt=[{key:"getUrl",value:function(){return je.url(this._env,this._options)+je.embedded+je.token(this._token)+je.client(this._client)}},{key:"load",value:function(){var Tt=this.getUrl();this.loadIFrame(Tt),this.initMessageHandlers()}},{key:"initMessageHandlers",value:function(){var Tt,$t,fi,is,Gi,ti=this;(Tt=$e,$t="initMessageHandlers",fi=this,Gi=Ei(na(1&(is=3)?Tt.prototype:Tt),$t,fi),2&is&&typeof Gi=="function"?function(Yn){return Gi.apply(fi,Yn)}:Gi)([]),this._client.addMessageHandler("TeamChanged",function(Yn){ti.onTeamChanged&&ti.onTeamChanged(Yn.id)}),this._client.addMessageHandler("ProjectSelected",function(Yn){ti.onProjectSelected&&ti.onProjectSelected(Yn.id)}),this._client.addMessageHandler("AttachmentSelected",function(Yn){ti.onAttachmentSelected&&ti.onAttachmentSelected(Yn!=null&&Yn.id?Yn.id:Yn)}),this._client.addMessageHandler("AttachmentSelectedDetails",function(Yn){ti.onAttachmentSelectedDetails&&ti.onAttachmentSelectedDetails(Yn!=null&&Yn.id?Yn.id:Yn)})}}],zt&&es(dt.prototype,zt),fn&&es(dt,fn),Object.defineProperty(dt,"prototype",{writable:!1}),dt;var dt,zt,fn}(Kn);function Dl(Lt){return Dl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},Dl(Lt)}function ha(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,So(zt.key),zt)}}function So(Lt){var $e=function(dt,zt){if(Dl(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(Dl(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return Dl($e)=="symbol"?$e:$e+""}function _l(Lt,$e,dt){return $e=ko($e),function(zt,fn){if(fn&&(Dl(fn)=="object"||typeof fn=="function"))return fn;if(fn!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Tt){if(Tt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Tt}(zt)}(Lt,R1()?Reflect.construct($e,dt||[],ko(Lt).constructor):$e.apply(Lt,dt))}function R1(){try{var Lt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(R1=function(){return!!Lt})()}function ll(){return ll=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(Lt,$e,dt){var zt=function(Tt,$t){for(;!{}.hasOwnProperty.call(Tt,$t)&&(Tt=ko(Tt))!==null;);return Tt}(Lt,$e);if(zt){var fn=Object.getOwnPropertyDescriptor(zt,$e);return fn.get?fn.get.call(arguments.length<3?Lt:dt):fn.value}},ll.apply(null,arguments)}function ko(Lt){return ko=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($e){return $e.__proto__||Object.getPrototypeOf($e)},ko(Lt)}function Iu(Lt,$e){return Iu=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(dt,zt){return dt.__proto__=zt,dt},Iu(Lt,$e)}var $a=function(Lt){function $e(Tt,$t,fi,is,Gi){var ti;return function(Yn,ro){if(!(Yn instanceof ro))throw new TypeError("Cannot call a class as a function")}(this,$e),(ti=_l(this,$e,[Tt,fi,is,$t,Gi])).onObjectSelected=null,ti.onObjectsSelected=null,ti.onIssueSelected=null,ti.onPinSelected=null,ti.onCheckAlive=null,ti.onDataLoaded=null,ti.onClickedHyperlink=null,ti}return function(Tt,$t){if(typeof $t!="function"&&$t!==null)throw new TypeError("Super expression must either be null or a function");Tt.prototype=Object.create($t&&$t.prototype,{constructor:{value:Tt,writable:!0,configurable:!0}}),Object.defineProperty(Tt,"prototype",{writable:!1}),$t&&Iu(Tt,$t)}($e,Lt),dt=$e,zt=[{key:"getUrl",value:function(Tt,$t){return(this._env&&this._env==="localhost"?"http://127.0.0.1:4200/":je.url(this._env,this._options))+"#/viewer"+je.embedded+je.token(this._token)+je.client(this._client)+"&project_id="+$t+"&team_id="+Tt}},{key:"load",value:function(Tt,$t){var fi=this.getUrl(Tt,$t);this.loadIFrame(fi),this.initMessageHandlers()}},{key:"initMessageHandlers",value:function(){var Tt,$t,fi,is,Gi,ti=this;(Tt=$e,$t="initMessageHandlers",fi=this,Gi=ll(ko(1&(is=3)?Tt.prototype:Tt),$t,fi),2&is&&typeof Gi=="function"?function(Yn){return Gi.apply(fi,Yn)}:Gi)([]),this._client.addMessageHandler("PinSelected",function(Yn){ti.onPinSelected&&ti.onPinSelected(Yn.id)}),this._client.addMessageHandler("ObjectSelected",function(Yn){ti.onObjectSelected&&ti.onObjectSelected(Yn.Id,Yn.multiSelect,Yn.selected)}),this._client.addMessageHandler("ObjectsSelected",function(Yn){ti.onObjectsSelected&&ti.onObjectsSelected(Yn.ids,Yn.multiSelect,Yn.selected)}),this._client.addMessageHandler("IssueSelected",function(Yn){ti.onIssueSelected&&ti.onIssueSelected(Yn.id)}),this._client.addMessageHandler("CheckAlive",function(Yn){ti.onCheckAlive&&ti.onCheckAlive(Yn.client)}),this._client.addMessageHandler("DataLoaded",function(){ti.onDataLoaded&&ti.onDataLoaded()}),this._client.addMessageHandler("ClickedHyperlink",function(Yn){ti.onClickedHyperlink&&ti.onClickedHyperlink(Yn.url)})}},{key:"resetView",value:function(){this.sendMessage("ResetView")}},{key:"centerObject",value:function(Tt,$t){this.sendMessage("CenterObject",{id:Tt,flyTo:$t})}},{key:"selectPin",value:function(Tt){this.sendMessage("PinSelected",{id:Tt})}},{key:"selectObjects",value:function(Tt,$t,fi,is){this.sendMessage("ObjectsSelected",{ids:Tt,multiSelect:$t,isolate:fi,blockProperties:is})}},{key:"isolateObjects",value:function(Tt){this.sendMessage("ObjectsIsolated",{ids:Tt})}},{key:"checkAlive",value:function(){this.sendMessage("CheckAlive",{})}},{key:"selectStructure",value:function(Tt,$t,fi,is,Gi,ti){this.sendMessage("StructureSelected",{id:Tt,visibleNodes:$t,showAll:fi,expandAll:is,hideUnreferencedTopology:Gi,isolate:ti})}},{key:"selectIssue",value:function(Tt){this.sendMessage("IssueSelected",{id:Tt})}},{key:"colorizeObjects",value:function(Tt,$t){this.sendMessage("ColorizeObjects",{ids:Tt,color:$t})}}],zt&&ha(dt.prototype,zt),fn&&ha(dt,fn),Object.defineProperty(dt,"prototype",{writable:!1}),dt;var dt,zt,fn}(Kn);function wo(Lt){return wo=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},wo(Lt)}function s0(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,x1(zt.key),zt)}}function x1(Lt){var $e=function(dt,zt){if(wo(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(wo(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return wo($e)=="symbol"?$e:$e+""}function r0(Lt,$e,dt){return $e=Bi($e),function(zt,fn){if(fn&&(wo(fn)=="object"||typeof fn=="function"))return fn;if(fn!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Tt){if(Tt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Tt}(zt)}(Lt,as()?Reflect.construct($e,dt||[],Bi(Lt).constructor):$e.apply(Lt,dt))}function as(){try{var Lt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(as=function(){return!!Lt})()}function Ea(){return Ea=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(Lt,$e,dt){var zt=function(Tt,$t){for(;!{}.hasOwnProperty.call(Tt,$t)&&(Tt=Bi(Tt))!==null;);return Tt}(Lt,$e);if(zt){var fn=Object.getOwnPropertyDescriptor(zt,$e);return fn.get?fn.get.call(arguments.length<3?Lt:dt):fn.value}},Ea.apply(null,arguments)}function Bi(Lt){return Bi=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($e){return $e.__proto__||Object.getPrototypeOf($e)},Bi(Lt)}function gi(Lt,$e){return gi=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(dt,zt){return dt.__proto__=zt,dt},gi(Lt,$e)}var ms=function(Lt){function $e(Tt,$t,fi,is,Gi){var ti;return function(Yn,ro){if(!(Yn instanceof ro))throw new TypeError("Cannot call a class as a function")}(this,$e),(ti=r0(this,$e,[Tt,fi,is,$t,Gi])).onObjectSelected=null,ti.onObjectsSelected=null,ti.onIssueSelected=null,ti.onCheckAlive=null,ti.onDataLoaded=null,ti}return function(Tt,$t){if(typeof $t!="function"&&$t!==null)throw new TypeError("Super expression must either be null or a function");Tt.prototype=Object.create($t&&$t.prototype,{constructor:{value:Tt,writable:!0,configurable:!0}}),Object.defineProperty(Tt,"prototype",{writable:!1}),$t&&gi(Tt,$t)}($e,Lt),dt=$e,zt=[{key:"getUrl",value:function(Tt,$t,fi){return je.url(this._env,this._options)+"viewer/"+je.embedded+"&destination=EMBEDDED_ISSUE_LIST"+je.source(fi)+je.token(this._token)+je.client(this._client)+"/#/embeddedissuelist?project_id="+$t+"&team_id="+Tt}},{key:"load",value:function(Tt,$t,fi){var is=this.getUrl(Tt,$t,fi);this.loadIFrame(is),this.initMessageHandlers()}},{key:"initMessageHandlers",value:function(){var Tt,$t,fi,is,Gi,ti=this;(Tt=$e,$t="initMessageHandlers",fi=this,Gi=Ea(Bi(1&(is=3)?Tt.prototype:Tt),$t,fi),2&is&&typeof Gi=="function"?function(Yn){return Gi.apply(fi,Yn)}:Gi)([]),this._client.addMessageHandler("ObjectSelected",function(Yn){ti.onObjectSelected&&ti.onObjectSelected(Yn.Id,Yn.multiSelect,Yn.selected)}),this._client.addMessageHandler("ObjectsSelected",function(Yn){ti.onObjectsSelected&&ti.onObjectsSelected(Yn.ids,Yn.multiSelect,Yn.selected)}),this._client.addMessageHandler("IssueSelected",function(Yn){ti.onIssueSelected&&ti.onIssueSelected(Yn.id)}),this._client.addMessageHandler("CheckAlive",function(Yn){ti.onCheckAlive&&ti.onCheckAlive(Yn.client)}),this._client.addMessageHandler("DataLoaded",function(){ti.onDataLoaded&&ti.onDataLoaded()})}},{key:"selectObjects",value:function(Tt,$t,fi,is){this.sendMessage("ObjectsSelected",{ids:Tt,multiSelect:$t,isolate:fi,blockProperties:is})}},{key:"checkAlive",value:function(){this.sendMessage("CheckAlive",{})}},{key:"selectIssue",value:function(Tt){this.sendMessage("IssueSelected",{id:Tt})}}],zt&&s0(dt.prototype,zt),fn&&s0(dt,fn),Object.defineProperty(dt,"prototype",{writable:!1}),dt;var dt,zt,fn}(Kn);function rr(Lt){return rr=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},rr(Lt)}function qs(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,rn(zt.key),zt)}}function rn(Lt){var $e=function(dt,zt){if(rr(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(rr(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return rr($e)=="symbol"?$e:$e+""}function vi(Lt,$e,dt){return $e=ws($e),function(zt,fn){if(fn&&(rr(fn)=="object"||typeof fn=="function"))return fn;if(fn!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Tt){if(Tt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Tt}(zt)}(Lt,Ui()?Reflect.construct($e,dt||[],ws(Lt).constructor):$e.apply(Lt,dt))}function Ui(){try{var Lt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(Ui=function(){return!!Lt})()}function Yi(){return Yi=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(Lt,$e,dt){var zt=function(Tt,$t){for(;!{}.hasOwnProperty.call(Tt,$t)&&(Tt=ws(Tt))!==null;);return Tt}(Lt,$e);if(zt){var fn=Object.getOwnPropertyDescriptor(zt,$e);return fn.get?fn.get.call(arguments.length<3?Lt:dt):fn.value}},Yi.apply(null,arguments)}function ws(Lt){return ws=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($e){return $e.__proto__||Object.getPrototypeOf($e)},ws(Lt)}function fa(Lt,$e){return fa=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(dt,zt){return dt.__proto__=zt,dt},fa(Lt,$e)}var us=function(Lt){function $e(Tt,$t,fi,is,Gi){var ti;return function(Yn,ro){if(!(Yn instanceof ro))throw new TypeError("Cannot call a class as a function")}(this,$e),(ti=vi(this,$e,[Tt,fi,is,$t,Gi])).onObjectSelected=null,ti.onObjectsSelected=null,ti.onIssueSelected=null,ti.onPinSelected=null,ti.onCheckAlive=null,ti.onDataLoaded=null,ti.onClickedHyperlink=null,ti}return function(Tt,$t){if(typeof $t!="function"&&$t!==null)throw new TypeError("Super expression must either be null or a function");Tt.prototype=Object.create($t&&$t.prototype,{constructor:{value:Tt,writable:!0,configurable:!0}}),Object.defineProperty(Tt,"prototype",{writable:!1}),$t&&fa(Tt,$t)}($e,Lt),dt=$e,zt=[{key:"getUrl",value:function(Tt,$t,fi,is){return je.url(this._env,this._options)+"viewer/"+je.embedded+"&destination=EMBEDDED_ISSUE"+je.source(is)+je.token(this._token)+je.client(this._client)+"/#/embeddedissue?project_id="+$t+"&issue_id="+fi+"&team_id="+Tt}},{key:"load",value:function(Tt,$t,fi,is){var Gi=this.getUrl(Tt,$t,fi,is);this.loadIFrame(Gi),this.initMessageHandlers()}},{key:"initMessageHandlers",value:function(){var Tt,$t,fi,is,Gi,ti=this;(Tt=$e,$t="initMessageHandlers",fi=this,Gi=Yi(ws(1&(is=3)?Tt.prototype:Tt),$t,fi),2&is&&typeof Gi=="function"?function(Yn){return Gi.apply(fi,Yn)}:Gi)([]),this._client.addMessageHandler("PinSelected",function(Yn){ti.onPinSelected&&ti.onPinSelected(Yn.id)}),this._client.addMessageHandler("ObjectSelected",function(Yn){ti.onObjectSelected&&ti.onObjectSelected(Yn.Id,Yn.multiSelect,Yn.selected)}),this._client.addMessageHandler("ObjectsSelected",function(Yn){ti.onObjectsSelected&&ti.onObjectsSelected(Yn.ids,Yn.multiSelect,Yn.selected)}),this._client.addMessageHandler("IssueSelected",function(Yn){ti.onIssueSelected&&ti.onIssueSelected(Yn.id)}),this._client.addMessageHandler("CheckAlive",function(Yn){ti.onCheckAlive&&ti.onCheckAlive(Yn.client)}),this._client.addMessageHandler("DataLoaded",function(){ti.onDataLoaded&&ti.onDataLoaded()}),this._client.addMessageHandler("ClickedHyperlink",function(Yn){ti.onClickedHyperlink&&ti.onClickedHyperlink(Yn.url)})}},{key:"selectPin",value:function(Tt){this.sendMessage("PinSelected",{id:Tt})}},{key:"selectObjects",value:function(Tt,$t,fi,is){this.sendMessage("ObjectsSelected",{ids:Tt,multiSelect:$t,isolate:fi,blockProperties:is})}},{key:"checkAlive",value:function(){this.sendMessage("CheckAlive",{})}},{key:"selectIssue",value:function(Tt){this.sendMessage("IssueSelected",{id:Tt})}}],zt&&qs(dt.prototype,zt),fn&&qs(dt,fn),Object.defineProperty(dt,"prototype",{writable:!1}),dt;var dt,zt,fn}(Kn);function so(Lt){return so=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},so(Lt)}function C0(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,Qo(zt.key),zt)}}function cr(Lt,$e,dt){return $e=zo($e),function(zt,fn){if(fn&&(so(fn)=="object"||typeof fn=="function"))return fn;if(fn!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Tt){if(Tt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Tt}(zt)}(Lt,N1()?Reflect.construct($e,dt||[],zo(Lt).constructor):$e.apply(Lt,dt))}function N1(){try{var Lt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(N1=function(){return!!Lt})()}function Du(){return Du=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(Lt,$e,dt){var zt=function(Tt,$t){for(;!{}.hasOwnProperty.call(Tt,$t)&&(Tt=zo(Tt))!==null;);return Tt}(Lt,$e);if(zt){var fn=Object.getOwnPropertyDescriptor(zt,$e);return fn.get?fn.get.call(arguments.length<3?Lt:dt):fn.value}},Du.apply(null,arguments)}function zo(Lt){return zo=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($e){return $e.__proto__||Object.getPrototypeOf($e)},zo(Lt)}function U1(Lt,$e){return U1=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(dt,zt){return dt.__proto__=zt,dt},U1(Lt,$e)}function Qo(Lt){var $e=function(dt,zt){if(so(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(so(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return so($e)=="symbol"?$e:$e+""}var jd=function(Lt){function $e(Tt,$t,fi,is,Gi){var ti,Yn,ro,q0;return function(g0,zu){if(!(g0 instanceof zu))throw new TypeError("Cannot call a class as a function")}(this,$e),ti=cr(this,$e,[Tt,fi,is,$t,Gi]),Yn=ti,q0=function(g0,zu,w1){var _1=je.url(this._env,this._options);return _1+="viewer/#/objproperties"+je.embedded+je.token(this._token)+je.client(this._client)+"&project_id="+zu+"&team_id="+g0+"&object_id="+w1},(ro=Qo(ro="getUrl"))in Yn?Object.defineProperty(Yn,ro,{value:q0,enumerable:!0,configurable:!0,writable:!0}):Yn[ro]=q0,ti}return function(Tt,$t){if(typeof $t!="function"&&$t!==null)throw new TypeError("Super expression must either be null or a function");Tt.prototype=Object.create($t&&$t.prototype,{constructor:{value:Tt,writable:!0,configurable:!0}}),Object.defineProperty(Tt,"prototype",{writable:!1}),$t&&U1(Tt,$t)}($e,Lt),dt=$e,zt=[{key:"load",value:function(Tt,$t,fi){var is=this.getUrl(Tt,$t,fi);this.loadIFrame(is),this.initMessageHandlers()}},{key:"initMessageHandlers",value:function(){var Tt,$t,fi,is,Gi;(Tt=$e,$t="initMessageHandlers",fi=this,Gi=Du(zo(1&(is=3)?Tt.prototype:Tt),$t,fi),2&is&&typeof Gi=="function"?function(ti){return Gi.apply(fi,ti)}:Gi)([])}}],zt&&C0(dt.prototype,zt),fn&&C0(dt,fn),Object.defineProperty(dt,"prototype",{writable:!1}),dt;var dt,zt,fn}(Kn);function cl(Lt){return cl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},cl(Lt)}function D0(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,sa(zt.key),zt)}}function sa(Lt){var $e=function(dt,zt){if(cl(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(cl(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return cl($e)=="symbol"?$e:$e+""}function ff(Lt,$e,dt){return $e=Ll($e),function(zt,fn){if(fn&&(cl(fn)=="object"||typeof fn=="function"))return fn;if(fn!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Tt){if(Tt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Tt}(zt)}(Lt,gu()?Reflect.construct($e,dt||[],Ll(Lt).constructor):$e.apply(Lt,dt))}function gu(){try{var Lt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(gu=function(){return!!Lt})()}function yu(){return yu=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(Lt,$e,dt){var zt=function(Tt,$t){for(;!{}.hasOwnProperty.call(Tt,$t)&&(Tt=Ll(Tt))!==null;);return Tt}(Lt,$e);if(zt){var fn=Object.getOwnPropertyDescriptor(zt,$e);return fn.get?fn.get.call(arguments.length<3?Lt:dt):fn.value}},yu.apply(null,arguments)}function Ll(Lt){return Ll=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($e){return $e.__proto__||Object.getPrototypeOf($e)},Ll(Lt)}function h1(Lt,$e){return h1=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(dt,zt){return dt.__proto__=zt,dt},h1(Lt,$e)}var j1=function(Lt){function $e(Tt,$t,fi,is,Gi){var ti;return function(Yn,ro){if(!(Yn instanceof ro))throw new TypeError("Cannot call a class as a function")}(this,$e),(ti=ff(this,$e,[Tt,$t,fi,is,Gi])).onExportStarted=null,ti}return function(Tt,$t){if(typeof $t!="function"&&$t!==null)throw new TypeError("Super expression must either be null or a function");Tt.prototype=Object.create($t&&$t.prototype,{constructor:{value:Tt,writable:!0,configurable:!0}}),Object.defineProperty(Tt,"prototype",{writable:!1}),$t&&h1(Tt,$t)}($e,Lt),dt=$e,zt=[{key:"getUrl",value:function(Tt,$t){var fi=this._env&&this._env==="localhost"?"http://127.0.0.1:4200/":je.url(this._env,this._options)+"export-manager/";return fi+="#/viewer"+je.embedded+je.token(this._token)+je.client(this._client)+"&project_id="+$t+"&team_id="+Tt}},{key:"initMessageHandlers",value:function(){var Tt,$t,fi,is,Gi,ti=this;(Tt=$e,$t="initMessageHandlers",fi=this,Gi=yu(Ll(1&(is=3)?Tt.prototype:Tt),$t,fi),2&is&&typeof Gi=="function"?function(Yn){return Gi.apply(fi,Yn)}:Gi)([]),this._client.addMessageHandler("ExportStarted",function(Yn){ti.onExportStarted&&ti.onExportStarted(Yn.id)})}}],zt&&D0(dt.prototype,zt),fn&&D0(dt,fn),Object.defineProperty(dt,"prototype",{writable:!1}),dt;var dt,zt,fn}($a);function Go(Lt){return Go=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},Go(Lt)}function Zo(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,f1(zt.key),zt)}}function f1(Lt){var $e=function(dt,zt){if(Go(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(Go(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return Go($e)=="symbol"?$e:$e+""}function F0(Lt,$e,dt){return $e=t0($e),function(zt,fn){if(fn&&(Go(fn)=="object"||typeof fn=="function"))return fn;if(fn!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Tt){if(Tt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Tt}(zt)}(Lt,b0()?Reflect.construct($e,dt||[],t0(Lt).constructor):$e.apply(Lt,dt))}function b0(){try{var Lt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(b0=function(){return!!Lt})()}function Vo(){return Vo=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(Lt,$e,dt){var zt=function(Tt,$t){for(;!{}.hasOwnProperty.call(Tt,$t)&&(Tt=t0(Tt))!==null;);return Tt}(Lt,$e);if(zt){var fn=Object.getOwnPropertyDescriptor(zt,$e);return fn.get?fn.get.call(arguments.length<3?Lt:dt):fn.value}},Vo.apply(null,arguments)}function t0(Lt){return t0=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($e){return $e.__proto__||Object.getPrototypeOf($e)},t0(Lt)}function Ns(Lt,$e){return Ns=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(dt,zt){return dt.__proto__=zt,dt},Ns(Lt,$e)}var wi=function(Lt){function $e(Tt,$t,fi,is,Gi){var ti;return function(Yn,ro){if(!(Yn instanceof ro))throw new TypeError("Cannot call a class as a function")}(this,$e),(ti=F0(this,$e,[Tt,fi,is,$t,Gi])).onAttachmentSelected=null,ti.onAttachmentSelectedDetails=null,ti}return function(Tt,$t){if(typeof $t!="function"&&$t!==null)throw new TypeError("Super expression must either be null or a function");Tt.prototype=Object.create($t&&$t.prototype,{constructor:{value:Tt,writable:!0,configurable:!0}}),Object.defineProperty(Tt,"prototype",{writable:!1}),$t&&Ns(Tt,$t)}($e,Lt),dt=$e,zt=[{key:"getUrl",value:function(Tt,$t){var fi=je.url(this._env,this._options);return fi+=je.embedded+je.token(this._token)+je.client(this._client)+"/#/project/"+Tt+"/"+$t+"/files/select"}},{key:"load",value:function(Tt,$t){var fi=this.getUrl(Tt,$t);this.loadIFrame(fi),this.initMessageHandlers()}},{key:"loadShadowRoot",value:function(Tt,$t,fi){var is=this.getUrl($t,fi);this.loadIFrameShadowRoot(Tt,is),this.initMessageHandlers()}},{key:"initMessageHandlers",value:function(){var Tt,$t,fi,is,Gi,ti=this;(Tt=$e,$t="initMessageHandlers",fi=this,Gi=Vo(t0(1&(is=3)?Tt.prototype:Tt),$t,fi),2&is&&typeof Gi=="function"?function(Yn){return Gi.apply(fi,Yn)}:Gi)([]),this._client.addMessageHandler("AttachmentSelected",function(Yn){ti.onAttachmentSelected&&ti.onAttachmentSelected(Yn!=null&&Yn.id?Yn.id:Yn)}),this._client.addMessageHandler("AttachmentSelectedDetails",function(Yn){ti.onAttachmentSelectedDetails&&ti.onAttachmentSelectedDetails(Yn!=null&&Yn.id?Yn.id:Yn)})}}],zt&&Zo(dt.prototype,zt),fn&&Zo(dt,fn),Object.defineProperty(dt,"prototype",{writable:!1}),dt;var dt,zt,fn}(Kn);function bl(Lt){return bl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},bl(Lt)}function P1(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,ji(zt.key),zt)}}function ji(Lt){var $e=function(dt,zt){if(bl(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(bl(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return bl($e)=="symbol"?$e:$e+""}function wl(Lt,$e,dt){return $e=Hi($e),function(zt,fn){if(fn&&(bl(fn)=="object"||typeof fn=="function"))return fn;if(fn!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Tt){if(Tt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Tt}(zt)}(Lt,hr()?Reflect.construct($e,dt||[],Hi(Lt).constructor):$e.apply(Lt,dt))}function hr(){try{var Lt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(hr=function(){return!!Lt})()}function O1(){return O1=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(Lt,$e,dt){var zt=function(Tt,$t){for(;!{}.hasOwnProperty.call(Tt,$t)&&(Tt=Hi(Tt))!==null;);return Tt}(Lt,$e);if(zt){var fn=Object.getOwnPropertyDescriptor(zt,$e);return fn.get?fn.get.call(arguments.length<3?Lt:dt):fn.value}},O1.apply(null,arguments)}function Hi(Lt){return Hi=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($e){return $e.__proto__||Object.getPrototypeOf($e)},Hi(Lt)}function Gs(Lt,$e){return Gs=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(dt,zt){return dt.__proto__=zt,dt},Gs(Lt,$e)}var gf=function(Lt){function $e(Tt,$t,fi,is,Gi){var ti;return function(Yn,ro){if(!(Yn instanceof ro))throw new TypeError("Cannot call a class as a function")}(this,$e),(ti=wl(this,$e,[Tt,fi,is,$t,Gi])).onAttachmentSelected=null,ti.onAttachmentSelectedDetails=null,ti}return function(Tt,$t){if(typeof $t!="function"&&$t!==null)throw new TypeError("Super expression must either be null or a function");Tt.prototype=Object.create($t&&$t.prototype,{constructor:{value:Tt,writable:!0,configurable:!0}}),Object.defineProperty(Tt,"prototype",{writable:!1}),$t&&Gs(Tt,$t)}($e,Lt),dt=$e,zt=[{key:"getUrl",value:function(Tt,$t){var fi=je.url(this._env,this._options);return fi+=je.embedded+je.token(this._token)+je.client(this._client)+"/#/project/"+Tt+"/"+$t+"/files/overlayselect"}},{key:"load",value:function(Tt,$t){var fi=this.getUrl(Tt,$t);this.loadIFrame(fi),this.initMessageHandlers()}},{key:"initMessageHandlers",value:function(){var Tt,$t,fi,is,Gi,ti=this;(Tt=$e,$t="initMessageHandlers",fi=this,Gi=O1(Hi(1&(is=3)?Tt.prototype:Tt),$t,fi),2&is&&typeof Gi=="function"?function(Yn){return Gi.apply(fi,Yn)}:Gi)([]),this._client.addMessageHandler("AttachmentSelected",function(Yn){ti.onAttachmentSelected&&ti.onAttachmentSelected(Yn!=null&&Yn.id?Yn.id:Yn)}),this._client.addMessageHandler("AttachmentSelectedDetails",function(Yn){ti.onAttachmentSelectedDetails&&ti.onAttachmentSelectedDetails(Yn!=null&&Yn.id?Yn.id:Yn)})}}],zt&&P1(dt.prototype,zt),fn&&P1(dt,fn),Object.defineProperty(dt,"prototype",{writable:!1}),dt;var dt,zt,fn}(Kn);function e1(Lt){return e1=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},e1(Lt)}function Ur(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,Br(zt.key),zt)}}function Br(Lt){var $e=function(dt,zt){if(e1(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(e1(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return e1($e)=="symbol"?$e:$e+""}function rl(Lt,$e,dt){return $e=jr($e),function(zt,fn){if(fn&&(e1(fn)=="object"||typeof fn=="function"))return fn;if(fn!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Tt){if(Tt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Tt}(zt)}(Lt,dr()?Reflect.construct($e,dt||[],jr(Lt).constructor):$e.apply(Lt,dt))}function dr(){try{var Lt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(dr=function(){return!!Lt})()}function Mr(){return Mr=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(Lt,$e,dt){var zt=function(Tt,$t){for(;!{}.hasOwnProperty.call(Tt,$t)&&(Tt=jr(Tt))!==null;);return Tt}(Lt,$e);if(zt){var fn=Object.getOwnPropertyDescriptor(zt,$e);return fn.get?fn.get.call(arguments.length<3?Lt:dt):fn.value}},Mr.apply(null,arguments)}function jr(Lt){return jr=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($e){return $e.__proto__||Object.getPrototypeOf($e)},jr(Lt)}function s1(Lt,$e){return s1=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(dt,zt){return dt.__proto__=zt,dt},s1(Lt,$e)}var vl=function(Lt){function $e(Tt,$t,fi,is,Gi){var ti;return function(Yn,ro){if(!(Yn instanceof ro))throw new TypeError("Cannot call a class as a function")}(this,$e),(ti=rl(this,$e,[Tt,fi,is,$t,Gi])).onModelSelected=null,ti.onModelSelectedDetails=null,ti}return function(Tt,$t){if(typeof $t!="function"&&$t!==null)throw new TypeError("Super expression must either be null or a function");Tt.prototype=Object.create($t&&$t.prototype,{constructor:{value:Tt,writable:!0,configurable:!0}}),Object.defineProperty(Tt,"prototype",{writable:!1}),$t&&s1(Tt,$t)}($e,Lt),dt=$e,zt=[{key:"getUrl",value:function(Tt,$t){var fi=je.url(this._env,this._options);return fi+=je.embedded+je.token(this._token)+je.client(this._client)+"/#/project/"+Tt+"/"+$t+"/models/select"}},{key:"load",value:function(Tt,$t){var fi=this.getUrl(Tt,$t);this.loadIFrame(fi),this.initMessageHandlers()}},{key:"initMessageHandlers",value:function(){var Tt,$t,fi,is,Gi,ti=this;(Tt=$e,$t="initMessageHandlers",fi=this,Gi=Mr(jr(1&(is=3)?Tt.prototype:Tt),$t,fi),2&is&&typeof Gi=="function"?function(Yn){return Gi.apply(fi,Yn)}:Gi)([]),this._client.addMessageHandler("ModelSelected",function(Yn){ti.onModelSelected&&ti.onModelSelected(Yn!=null&&Yn.id?Yn.id:Yn)}),this._client.addMessageHandler("ModelSelectedDetails",function(Yn){ti.onModelSelectedDetails&&ti.onModelSelectedDetails(Yn!=null&&Yn.id?Yn.id:Yn)})}}],zt&&Ur(dt.prototype,zt),fn&&Ur(dt,fn),Object.defineProperty(dt,"prototype",{writable:!1}),dt;var dt,zt,fn}(Kn);function Ho(Lt){return Ho=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},Ho(Lt)}function Rl(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,ql(zt.key),zt)}}function ql(Lt){var $e=function(dt,zt){if(Ho(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(Ho(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return Ho($e)=="symbol"?$e:$e+""}function v0(Lt,$e,dt){return $e=e0($e),function(zt,fn){if(fn&&(Ho(fn)=="object"||typeof fn=="function"))return fn;if(fn!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Tt){if(Tt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Tt}(zt)}(Lt,eo()?Reflect.construct($e,dt||[],e0(Lt).constructor):$e.apply(Lt,dt))}function eo(){try{var Lt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(eo=function(){return!!Lt})()}function jl(){return jl=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(Lt,$e,dt){var zt=function(Tt,$t){for(;!{}.hasOwnProperty.call(Tt,$t)&&(Tt=e0(Tt))!==null;);return Tt}(Lt,$e);if(zt){var fn=Object.getOwnPropertyDescriptor(zt,$e);return fn.get?fn.get.call(arguments.length<3?Lt:dt):fn.value}},jl.apply(null,arguments)}function e0(Lt){return e0=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($e){return $e.__proto__||Object.getPrototypeOf($e)},e0(Lt)}function yf(Lt,$e){return yf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(dt,zt){return dt.__proto__=zt,dt},yf(Lt,$e)}var fo=function(Lt){function $e(Tt,$t,fi,is,Gi){var ti;return function(Yn,ro){if(!(Yn instanceof ro))throw new TypeError("Cannot call a class as a function")}(this,$e),(ti=v0(this,$e,[Tt,fi,is,$t,Gi])).onAttachmentSelected=null,ti.onAttachmentSelectedDetails=null,ti}return function(Tt,$t){if(typeof $t!="function"&&$t!==null)throw new TypeError("Super expression must either be null or a function");Tt.prototype=Object.create($t&&$t.prototype,{constructor:{value:Tt,writable:!0,configurable:!0}}),Object.defineProperty(Tt,"prototype",{writable:!1}),$t&&yf(Tt,$t)}($e,Lt),dt=$e,zt=[{key:"getUrl",value:function(Tt,$t,fi){var is=fi||je.url(this._env,this._options);return is+=je.embedded+je.token(this._token)+je.client(this._client)+"/#/project/"+Tt+"/"+$t+"/files/isoselect"}},{key:"load",value:function(Tt,$t,fi){var is=this.getUrl(Tt,$t,fi);this.loadIFrame(is),this.initMessageHandlers()}},{key:"initMessageHandlers",value:function(){var Tt,$t,fi,is,Gi,ti=this;(Tt=$e,$t="initMessageHandlers",fi=this,Gi=jl(e0(1&(is=3)?Tt.prototype:Tt),$t,fi),2&is&&typeof Gi=="function"?function(Yn){return Gi.apply(fi,Yn)}:Gi)([]),this._client.addMessageHandler("AttachmentSelected",function(Yn){ti.onAttachmentSelected&&ti.onAttachmentSelected(Yn!=null&&Yn.id?Yn.id:Yn)}),this._client.addMessageHandler("AttachmentSelectedDetails",function(Yn){ti.onAttachmentSelectedDetails&&ti.onAttachmentSelectedDetails(Yn!=null&&Yn.id?Yn.id:Yn)})}}],zt&&Rl(dt.prototype,zt),fn&&Rl(dt,fn),Object.defineProperty(dt,"prototype",{writable:!1}),dt;var dt,zt,fn}(Kn);function Wa(Lt){return Wa=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},Wa(Lt)}function Ia(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,Su(zt.key),zt)}}function Su(Lt){var $e=function(dt,zt){if(Wa(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(Wa(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return Wa($e)=="symbol"?$e:$e+""}function G1(Lt,$e,dt){return $e=Ko($e),function(zt,fn){if(fn&&(Wa(fn)=="object"||typeof fn=="function"))return fn;if(fn!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Tt){if(Tt===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Tt}(zt)}(Lt,Bo()?Reflect.construct($e,dt||[],Ko(Lt).constructor):$e.apply(Lt,dt))}function Bo(){try{var Lt=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(Bo=function(){return!!Lt})()}function L1(){return L1=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(Lt,$e,dt){var zt=function(Tt,$t){for(;!{}.hasOwnProperty.call(Tt,$t)&&(Tt=Ko(Tt))!==null;);return Tt}(Lt,$e);if(zt){var fn=Object.getOwnPropertyDescriptor(zt,$e);return fn.get?fn.get.call(arguments.length<3?Lt:dt):fn.value}},L1.apply(null,arguments)}function Ko(Lt){return Ko=Object.setPrototypeOf?Object.getPrototypeOf.bind():function($e){return $e.__proto__||Object.getPrototypeOf($e)},Ko(Lt)}function Jp(Lt,$e){return Jp=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(dt,zt){return dt.__proto__=zt,dt},Jp(Lt,$e)}var Mf=function(Lt){function $e(Tt,$t,fi,is,Gi){var ti;return function(Yn,ro){if(!(Yn instanceof ro))throw new TypeError("Cannot call a class as a function")}(this,$e),(ti=G1(this,$e,[Tt,fi,is,$t,Gi])).onModelSelected=null,ti.onModelSelectedDetails=null,ti}return function(Tt,$t){if(typeof $t!="function"&&$t!==null)throw new TypeError("Super expression must either be null or a function");Tt.prototype=Object.create($t&&$t.prototype,{constructor:{value:Tt,writable:!0,configurable:!0}}),Object.defineProperty(Tt,"prototype",{writable:!1}),$t&&Jp(Tt,$t)}($e,Lt),dt=$e,zt=[{key:"getUrl",value:function(Tt,$t,fi){var is=fi||je.url(this._env,this._options);return is+=je.embedded+je.token(this._token)+je.client(this._client)+"/#/project/"+Tt+"/"+$t+"/models/isoselect"}},{key:"load",value:function(Tt,$t,fi){var is=this.getUrl(Tt,$t,fi);this.loadIFrame(is),this.initMessageHandlers()}},{key:"initMessageHandlers",value:function(){var Tt,$t,fi,is,Gi,ti=this;(Tt=$e,$t="initMessageHandlers",fi=this,Gi=L1(Ko(1&(is=3)?Tt.prototype:Tt),$t,fi),2&is&&typeof Gi=="function"?function(Yn){return Gi.apply(fi,Yn)}:Gi)([]),this._client.addMessageHandler("ModelSelected",function(Yn){ti.onModelSelected&&ti.onModelSelected(Yn!=null&&Yn.id?Yn.id:Yn)}),this._client.addMessageHandler("ModelSelectedDetails",function(Yn){ti.onModelSelectedDetails&&ti.onModelSelectedDetails(Yn!=null&&Yn.id?Yn.id:Yn)})}}],zt&&Ia(dt.prototype,zt),fn&&Ia(dt,fn),Object.defineProperty(dt,"prototype",{writable:!1}),dt;var dt,zt,fn}(Kn);function ic(Lt){return ic=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($e){return typeof $e}:function($e){return $e&&typeof Symbol=="function"&&$e.constructor===Symbol&&$e!==Symbol.prototype?"symbol":typeof $e},ic(Lt)}function Yd(Lt,$e){for(var dt=0;dt<$e.length;dt++){var zt=$e[dt];zt.enumerable=zt.enumerable||!1,zt.configurable=!0,"value"in zt&&(zt.writable=!0),Object.defineProperty(Lt,$u(zt.key),zt)}}function $u(Lt){var $e=function(dt,zt){if(ic(dt)!="object"||!dt)return dt;var fn=dt[Symbol.toPrimitive];if(fn!==void 0){var Tt=fn.call(dt,zt||"default");if(ic(Tt)!="object")return Tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(zt==="string"?String:Number)(dt)}(Lt,"string");return ic($e)=="symbol"?$e:$e+""}var m1=function(){return Lt=function zt(fn,Tt){(function($t,fi){if(!($t instanceof fi))throw new TypeError("Cannot call a class as a function")})(this,zt),this.viewerUri=fn&&fn!=="dev"&&fn!=="stage"&&fn!=="prod"?fn:je.url(fn,Tt)+"/viewer/#/modelviewer"},$e=[{key:"openFileUriWindow",value:function(zt,fn,Tt,$t){var fi="";fi=je.addParameters(fi,{fileUri:encodeURIComponent(zt),team_id:Tt,project_id:$t});var is=this.viewerUri+fi;return window.open(is,fn)}},{key:"openBufferDataWindow",value:function(zt,fn,Tt,$t){var fi="";fi=je.addParameters(fi,{awaitDataMessage:"true",team_id:Tt,project_id:$t});var is=this.viewerUri+fi,Gi=window.open(is,fn);if(Gi){var ti=function(Yn){Yn.data==="WatingForData"&&Gi&&window&&(Gi.postMessage(zt,"*",[zt]),window.removeEventListener("message",ti))};return window.addEventListener("message",ti,!1),Gi}alert("Could not open preview window. Please enable popups in your browser to use this feature")}}],$e&&Yd(Lt.prototype,$e),dt&&Yd(Lt,dt),Object.defineProperty(Lt,"prototype",{writable:!1}),Lt;var Lt,$e,dt}(),Yp=function(Lt){var $e,dt,zt=decodeURIComponent(window.location.search.substring(1)).split("&");for(dt=0;dt<zt.length;dt++)if(($e=zt[dt].split("="))[0]===Lt)return $e[1]===void 0||$e[1]};return h})())});var u3e=G_((_ce,Dk)=>{"use strict";(function(p,h){typeof _ce=="object"&&typeof Dk<"u"?Dk.exports=h():typeof define=="function"&&define.amd?define(h):p.moment=h()})(_ce,function(){"use strict";var p;function h(){return p.apply(null,arguments)}function a(E){p=E}function f(E){return E instanceof Array||Object.prototype.toString.call(E)==="[object Array]"}function g(E){return E!=null&&Object.prototype.toString.call(E)==="[object Object]"}function C(E,Y){return Object.prototype.hasOwnProperty.call(E,Y)}function H(E){if(Object.getOwnPropertyNames)return Object.getOwnPropertyNames(E).length===0;var Y;for(Y in E)if(C(E,Y))return!1;return!0}function de(E){return E===void 0}function G(E){return typeof E=="number"||Object.prototype.toString.call(E)==="[object Number]"}function ee(E){return E instanceof Date||Object.prototype.toString.call(E)==="[object Date]"}function fe(E,Y){var Ae=[],ze,Ye=E.length;for(ze=0;ze<Ye;++ze)Ae.push(Y(E[ze],ze));return Ae}function ge(E,Y){for(var Ae in Y)C(Y,Ae)&&(E[Ae]=Y[Ae]);return C(Y,"toString")&&(E.toString=Y.toString),C(Y,"valueOf")&&(E.valueOf=Y.valueOf),E}function je(E,Y,Ae,ze){return Zu(E,Y,Ae,ze,!0).utc()}function et(){return{empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidEra:null,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],era:null,meridiem:null,rfc2822:!1,weekdayMismatch:!1}}function Dt(E){return E._pf==null&&(E._pf=et()),E._pf}var Mn;Array.prototype.some?Mn=Array.prototype.some:Mn=function(E){var Y=Object(this),Ae=Y.length>>>0,ze;for(ze=0;ze<Ae;ze++)if(ze in Y&&E.call(this,Y[ze],ze,Y))return!0;return!1};function Kn(E){var Y=null,Ae=!1,ze=E._d&&!isNaN(E._d.getTime());if(ze&&(Y=Dt(E),Ae=Mn.call(Y.parsedDateParts,function(Ye){return Ye!=null}),ze=Y.overflow<0&&!Y.empty&&!Y.invalidEra&&!Y.invalidMonth&&!Y.invalidWeekday&&!Y.weekdayMismatch&&!Y.nullInput&&!Y.invalidFormat&&!Y.userInvalidated&&(!Y.meridiem||Y.meridiem&&Ae),E._strict&&(ze=ze&&Y.charsLeftOver===0&&Y.unusedTokens.length===0&&Y.bigHour===void 0)),Object.isFrozen==null||!Object.isFrozen(E))E._isValid=ze;else return ze;return E._isValid}function Li(E){var Y=je(NaN);return E!=null?ge(Dt(Y),E):Dt(Y).userInvalidated=!0,Y}var es=h.momentProperties=[],sr=!1;function ys(E,Y){var Ae,ze,Ye,xt=es.length;if(de(Y._isAMomentObject)||(E._isAMomentObject=Y._isAMomentObject),de(Y._i)||(E._i=Y._i),de(Y._f)||(E._f=Y._f),de(Y._l)||(E._l=Y._l),de(Y._strict)||(E._strict=Y._strict),de(Y._tzm)||(E._tzm=Y._tzm),de(Y._isUTC)||(E._isUTC=Y._isUTC),de(Y._offset)||(E._offset=Y._offset),de(Y._pf)||(E._pf=Dt(Y)),de(Y._locale)||(E._locale=Y._locale),xt>0)for(Ae=0;Ae<xt;Ae++)ze=es[Ae],Ye=Y[ze],de(Ye)||(E[ze]=Ye);return E}function Yr(E){ys(this,E),this._d=new Date(E._d!=null?E._d.getTime():NaN),this.isValid()||(this._d=new Date(NaN)),sr===!1&&(sr=!0,h.updateOffset(this),sr=!1)}function Ei(E){return E instanceof Yr||E!=null&&E._isAMomentObject!=null}function na(E){h.suppressDeprecationWarnings===!1&&typeof console<"u"&&console.warn&&console.warn("Deprecation warning: "+E)}function ur(E,Y){var Ae=!0;return ge(function(){if(h.deprecationHandler!=null&&h.deprecationHandler(null,E),Ae){var ze=[],Ye,xt,mn,j=arguments.length;for(xt=0;xt<j;xt++){if(Ye="",typeof arguments[xt]=="object"){Ye+=`