bimplus-renderer 1.3.16 → 1.3.19

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.
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2010-2021 Three.js Authors
4
+ * SPDX-License-Identifier: MIT
5
+ */
@@ -1 +1 @@
1
- !function(A){function I(e){if(g[e])return g[e].exports;var t=g[e]={i:e,l:!1,exports:{}};return A[e].call(t.exports,t,t.exports,I),t.l=!0,t.exports}var g={};I.m=A,I.c=g,I.d=function(A,g,e){I.o(A,g)||Object.defineProperty(A,g,{enumerable:!0,get:e})},I.r=function(A){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(A,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(A,"__esModule",{value:!0})},I.t=function(A,g){if(1&g&&(A=I(A)),8&g)return A;if(4&g&&"object"==typeof A&&A&&A.__esModule)return A;var e=Object.create(null);if(I.r(e),Object.defineProperty(e,"default",{enumerable:!0,value:A}),2&g&&"string"!=typeof A)for(var t in A)I.d(e,t,function(I){return A[I]}.bind(null,t));return e},I.n=function(A){var g=A&&A.__esModule?function(){return A.default}:function(){return A};return I.d(g,"a",g),g},I.o=function(A,I){return Object.prototype.hasOwnProperty.call(A,I)},I.p="",I(I.s=11)}([function(A,I){"use strict";I.a={isWorkerRuntime:function(){return!("undefined"==typeof self||!self.postMessage)},postMessageToMaster:function(A,I){self.postMessage(A,I)},subscribeToMasterMessages:function(A){const I=I=>{A(I.data)};return self.addEventListener("message",I),()=>{self.removeEventListener("message",I)}}}},function(A,I,g){"use strict";function e(A){return C.deserialize(A)}function t(A){return C.serialize(A)}g.d(I,"a",(function(){return e})),g.d(I,"b",(function(){return t}));const n={deserialize:A=>Object.assign(Error(A.message),{name:A.name,stack:A.stack}),serialize:A=>({__error_marker:"$$error",message:A.message,name:A.name,stack:A.stack})};let C={deserialize:A=>(A=>A&&"object"==typeof A&&"__error_marker"in A&&"$$error"===A.__error_marker)(A)?n.deserialize(A):A,serialize:A=>A instanceof Error?n.serialize(A):A}},function(A,I,g){"use strict";var e,t;g.d(I,"a",(function(){return e})),g.d(I,"b",(function(){return t})),function(A){A.run="run"}(e||(e={})),function(A){A.error="error",A.init="init",A.result="result",A.running="running",A.uncaughtError="uncaughtError"}(t||(t={}))},function(A,I,g){"use strict";function e(A){return A&&"object"==typeof A&&A[n]}function t(A,I){if(!I){if(!function(A){return!(!A||"object"!=typeof A)}(A))throw Error();I=[A]}return{[n]:!0,send:A,transferables:I}}g.d(I,"b",(function(){return e})),g.d(I,"a",(function(){return t}));Symbol("thread.errors"),Symbol("thread.events"),Symbol("thread.terminate");const n=Symbol("thread.transferable");Symbol("thread.worker")},function(A,I,g){"use strict";(function(A){function e(A){return Object(Q.b)(A)?{payload:A.send,transferables:A.transferables}:{payload:A,transferables:void 0}}function t(A,I){const{payload:g,transferables:t}=e(I),n={type:a.b.error,uid:A,error:Object(E.b)(g)};c.a.postMessageToMaster(n,t)}function n(A,I,g){const{payload:t,transferables:n}=e(g),C={type:a.b.result,uid:A,complete:!!I||void 0,payload:t};c.a.postMessageToMaster(C,n)}function C(A){const I={type:a.b.uncaughtError,error:Object(E.b)(A)};c.a.postMessageToMaster(I)}function B(A,I,g){return s(this,void 0,void 0,(function*(){let e;try{e=I(...g)}catch(I){return t(A,I)}const C=y(e)?"observable":"promise";if(function(A,I){const g={type:a.b.running,uid:A,resultType:I};c.a.postMessageToMaster(g)}(A,C),y(e))e.subscribe(I=>n(A,!1,Object(E.b)(I)),I=>t(A,Object(E.b)(I)),()=>n(A,!0));else try{const I=yield e;n(A,!0,Object(E.b)(I))}catch(I){t(A,Object(E.b)(I))}}))}function i(A){if(!c.a.isWorkerRuntime())throw Error("expose() called in the master thread.");if(u)throw Error("expose() called more than once. This is not possible. Pass an object to expose() if you want to expose multiple functions.");if(u=!0,"function"==typeof A)c.a.subscribeToMasterMessages(I=>{f(I)&&!I.method&&B(I.uid,A,I.args.map(E.a))}),function(){const A={type:a.b.init,exposed:{type:"function"}};c.a.postMessageToMaster(A)}();else{if("object"!=typeof A||!A)throw Error("Invalid argument passed to expose(). Expected a function or an object, got: "+A);c.a.subscribeToMasterMessages(I=>{f(I)&&I.method&&B(I.uid,A[I.method],I.args.map(E.a))});!function(A){const I={type:a.b.init,exposed:{type:"module",methods:A}};c.a.postMessageToMaster(I)}(Object.keys(A).filter(I=>"function"==typeof A[I]))}}g.d(I,"b",(function(){return i}));var r=g(5),o=g.n(r),E=g(1),Q=g(3),a=g(2),c=g(0);g.d(I,"a",(function(){return Q.a}));var s=function(A,I,g,e){function t(A){return A instanceof g?A:new g((function(I){I(A)}))}return new(g||(g=Promise))((function(g,n){function C(A){try{i(e.next(A))}catch(A){n(A)}}function B(A){try{i(e.throw(A))}catch(A){n(A)}}function i(A){A.done?g(A.value):t(A.value).then(C,B)}i((e=e.apply(A,I||[])).next())}))};let u=!1;const f=A=>A&&A.type===a.a.run,y=A=>o()(A)||function(A){return A&&"object"==typeof A&&"function"==typeof A.subscribe}(A);"undefined"!=typeof self&&"function"==typeof self.addEventListener&&c.a.isWorkerRuntime()&&(self.addEventListener("error",A=>{setTimeout(()=>C(A.error||A),250)}),self.addEventListener("unhandledrejection",A=>{const I=A.reason;I&&"string"==typeof I.message&&setTimeout(()=>C(I),250)})),void 0!==A&&"function"==typeof A.on&&c.a.isWorkerRuntime()&&(A.on("uncaughtException",A=>{setTimeout(()=>C(A),250)}),A.on("unhandledRejection",A=>{A&&"string"==typeof A.message&&setTimeout(()=>C(A),250)}))}).call(this,g(7))},function(A,I,g){"use strict";const e=g(8).default;A.exports=A=>!(!A||!A[e]||A!==A[e]())},function(A,I,g){"use strict";function e(A){var I,g=A.Symbol;return"function"==typeof g?g.observable?I=g.observable:(I=g("observable"),g.observable=I):I="@@observable",I}g.d(I,"a",(function(){return e}))},function(A){function I(){throw new Error("setTimeout has not been defined")}function g(){throw new Error("clearTimeout has not been defined")}function e(A){if(i===setTimeout)return setTimeout(A,0);if((i===I||!i)&&setTimeout)return i=setTimeout,setTimeout(A,0);try{return i(A,0)}catch(I){try{return i.call(null,A,0)}catch(I){return i.call(this,A,0)}}}function t(){a&&E&&(a=!1,E.length?Q=E.concat(Q):c=-1,Q.length&&n())}function n(){if(!a){var A=e(t);a=!0;for(var I=Q.length;I;){for(E=Q,Q=[];++c<I;)E&&E[c].run();c=-1,I=Q.length}E=null,a=!1,function(A){if(r===clearTimeout)return clearTimeout(A);if((r===g||!r)&&clearTimeout)return r=clearTimeout,clearTimeout(A);try{r(A)}catch(I){try{return r.call(null,A)}catch(I){return r.call(this,A)}}}(A)}}function C(A,I){this.fun=A,this.array=I}function B(){}var i,r,o=A.exports={};!function(){try{i="function"==typeof setTimeout?setTimeout:I}catch(A){i=I}try{r="function"==typeof clearTimeout?clearTimeout:g}catch(A){r=g}}();var E,Q=[],a=!1,c=-1;o.nextTick=function(A){var I=Array(arguments.length-1);if(1<arguments.length)for(var g=1;g<arguments.length;g++)I[g-1]=arguments[g];Q.push(new C(A,I)),1!==Q.length||a||e(n)},C.prototype.run=function(){this.fun.apply(null,this.array)},o.title="browser",o.browser=!0,o.env={},o.argv=[],o.version="",o.versions={},o.on=B,o.addListener=B,o.once=B,o.off=B,o.removeListener=B,o.removeAllListeners=B,o.emit=B,o.prependListener=B,o.prependOnceListener=B,o.listeners=function(){return[]},o.binding=function(){throw new Error("process.binding is not supported")},o.cwd=function(){return"/"},o.chdir=function(){throw new Error("process.chdir is not supported")},o.umask=function(){return 0}},function(A,I,g){"use strict";g.r(I),function(A,e){var t,n=g(6);t="undefined"==typeof self?"undefined"==typeof window?void 0===A?e:A:window:self;var C=Object(n.a)(t);I.default=C}.call(this,g(9),g(10)(A))},function(A){var I=function(){return this}();try{I=I||new Function("return this")()}catch(A){"object"==typeof window&&(I=window)}A.exports=I},function(A){A.exports=function(A){if(!A.webpackPolyfill){var I=Object.create(A);I.children||(I.children=[]),Object.defineProperty(I,"loaded",{enumerable:!0,get:function(){return I.l}}),Object.defineProperty(I,"id",{enumerable:!0,get:function(){return I.i}}),Object.defineProperty(I,"exports",{enumerable:!0}),I.webpackPolyfill=1}return I}},function(A,I,g){"use strict";g.r(I);var e=g(4),t=(()=>{var A="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0;return function(I){function g(A){return I["_"+A]}function e(A,I){return A?function(A,I,g){for(var e=I+g,t=I;A[t]&&!(t>=e);)++t;if(16<t-I&&A.subarray&&k)return k.decode(A.subarray(I,t));for(var n,C="";I<t;)if(128&(n=A[I++])){var B=63&A[I++];if(192!=(224&n)){var i=63&A[I++];if(65536>(n=224==(240&n)?(15&n)<<12|B<<6|i:(7&n)<<18|B<<12|i<<6|63&A[I++]))C+=y(n);else{var r=n-65536;C+=y(55296|r>>10,56320|1023&r)}}else C+=y((31&n)<<6|B)}else C+=y(n);return C}(b,A,I):""}function t(A,I,g){return function(A,I,g,e){if(!(0<e))return 0;for(var t,n=g,C=g+e-1,B=0;B<A.length;++B){if(55296<=(t=A.charCodeAt(B))&&57343>=t)t=65536+((1023&t)<<10)|1023&A.charCodeAt(++B);if(127>=t){if(g>=C)break;I[g++]=t}else if(2047>=t){if(g+1>=C)break;I[g++]=192|t>>6,I[g++]=128|63&t}else if(65535>=t){if(g+2>=C)break;I[g++]=224|t>>12,I[g++]=128|63&t>>6,I[g++]=128|63&t}else{if(g+3>=C)break;I[g++]=240|t>>18,I[g++]=128|63&t>>12,I[g++]=128|63&t>>6,I[g++]=128|63&t}}return I[g]=0,g-n}(A,b,I,g)}function n(A){N=A,I.HEAP8=p=new Int8Array(A),I.HEAP16=new Int16Array(A),I.HEAP32=new Int32Array(A),I.HEAPU8=b=new Uint8Array(A),I.HEAPU16=new Uint16Array(A),I.HEAPU32=new Uint32Array(A),I.HEAPF32=new Float32Array(A),I.HEAPF64=new Float64Array(A)}function C(A){m.unshift(A)}function B(A){S.unshift(A)}function i(A){I.onAbort&&I.onAbort(A),F(A="Aborted("+A+")"),M=!0,1,A+=". Build with -s ASSERTIONS=1 for more info.";var g=new WebAssembly.RuntimeError(A);throw f(g),g}function r(A){return A.startsWith(T)}function o(A){try{if(A==v&&R)return new Uint8Array(R);var I=c(A);if(I)return I;if(l)return l(A);throw"both async and sync fetching of the wasm failed"}catch(A){i(A)}}function E(A){for(;0<A.length;){var g=A.shift();if("function"!=typeof g){var e=g.func;"number"==typeof e?void 0===g.arg?Q(e)():Q(e)(g.arg):e(void 0===g.arg?null:g.arg)}else g(I)}}function Q(A){var I=H[A];return I||(A>=H.length&&(H.length=A+1),H[A]=I=Y.get(A)),I}function a(A){try{return G.grow(A-N.byteLength+65535>>>16),n(G.buffer),1}catch(A){}}function c(A){return r(A)?function(A){try{for(var I=q(A),g=new Uint8Array(I.length),e=0;e<I.length;++e)g[e]=I.charCodeAt(e);return g}catch(A){throw new Error("Converting base64 string to bytes failed.")}}(A.slice(T.length)):void 0}function s(A){function g(){x||(x=!0,I.calledRun=!0,M||(!0,E(J),u(I),I.onRuntimeInitialized&&I.onRuntimeInitialized(),function(){if(I.postRun)for("function"==typeof I.postRun&&(I.postRun=[I.postRun]);I.postRun.length;)B(I.postRun.shift());E(S)}()))}A=A||D,!(0<U)&&(function(){if(I.preRun)for("function"==typeof I.preRun&&(I.preRun=[I.preRun]);I.preRun.length;)C(I.preRun.shift());E(m)}(),0<U||(I.setStatus?(I.setStatus("Running..."),setTimeout((function(){setTimeout((function(){I.setStatus("")}),1),g()}),1)):g()))}var u,f,y=String.fromCharCode;(I=void 0===(I=I||{})?{}:I).ready=new Promise((function(A,I){u=A,f=I}));var l,h=Object.assign({},I),D=[],w=!0,d="";d=self.location.href,A&&(d=A),d=0===d.indexOf("blob:")?"":d.substr(0,d.replace(/[?#].*/,"").lastIndexOf("/")+1),l=A=>{try{var I=new XMLHttpRequest;return I.open("GET",A,!1),I.responseType="arraybuffer",I.send(null),new Uint8Array(I.response)}catch(I){var g=c(A);if(g)return g;throw I}};I.print;var R,F=I.printErr||function(){};Object.assign(I,h),h=null,I.arguments&&(D=I.arguments),I.thisProgram&&I.thisProgram,I.quit&&I.quit,I.wasmBinary&&(R=I.wasmBinary),I.noExitRuntime,"object"!=typeof WebAssembly&&i("no native wasm support detected");var G,N,p,b,Y,M=!1,k="undefined"==typeof TextDecoder?void 0:new TextDecoder("utf8"),m=(I.INITIAL_MEMORY,[]),J=[],S=[],U=0,L=null,K=null;I.preloadedImages={},I.preloadedAudios={};var v,T="data:application/octet-stream;base64,";r(v="data:application/octet-stream;base64,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")||(v=function(A){return I.locateFile?I.locateFile(A,d):d+A}(v));var x,H=[],q="function"==typeof atob?atob:function(A){var I,g,e,t,n,C,B="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",i="",r=0;A=A.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{e=B.indexOf(A.charAt(r++)),I=(15&(t=B.indexOf(A.charAt(r++))))<<4|(n=B.indexOf(A.charAt(r++)))>>2,g=(3&n)<<6|(C=B.indexOf(A.charAt(r++))),i+=y(e<<2|t>>4),64!==n&&(i+=y(I)),64!==C&&(i+=y(g))}while(r<A.length);return i},j={a:function(A){var I=Math.min,g=b.length,e=2147483648;if((A>>>=0)>e)return!1;let t=(A,I)=>A+(I-A%I)%I;for(var n,C=1;4>=C;C*=2){if(n=I(n=g*(1+.2/C),A+100663296),a(I(e,t(Math.max(A,n),65536))))return!0}return!1}},P=(function(){function A(A){var g=A.exports;I.asm=g,n((G=I.asm.b).buffer),Y=I.asm.j,function(A){J.unshift(A)}(I.asm.c),function(){if(U--,I.monitorRunDependencies&&I.monitorRunDependencies(U),0==U&&(null!==L&&(clearInterval(L),L=null),K)){var A=K;K=null,A()}}()}function g(I){A(I.instance)}function e(A){return(!R&&w&&"function"==typeof fetch?fetch(v,{credentials:"same-origin"}).then((function(A){if(!A.ok)throw"failed to load wasm binary file at '"+v+"'";return A.arrayBuffer()})).catch((function(){return o(v)})):Promise.resolve().then((function(){return o(v)}))).then((function(A){return WebAssembly.instantiate(A,t)})).then((function(A){return A})).then(A,(function(A){F("failed to asynchronously prepare wasm: "+A),i(A)}))}var t={a:j};if(U++,I.monitorRunDependencies&&I.monitorRunDependencies(U),I.instantiateWasm)try{return I.instantiateWasm(t,A)}catch(A){return F("Module.instantiateWasm callback failed with error: "+A),!1}(R||"function"!=typeof WebAssembly.instantiateStreaming||r(v)||"function"!=typeof fetch?e(g):fetch(v,{credentials:"same-origin"}).then((function(A){return WebAssembly.instantiateStreaming(A,t).then(g,(function(A){return F("wasm streaming compile failed: "+A),F("falling back to ArrayBuffer instantiation"),e(g)}))}))).catch(f)}(),I.___wasm_call_ctors=function(){return(I.___wasm_call_ctors=I.asm.c).apply(null,arguments)},I._processVertices=function(){return(I._processVertices=I.asm.d).apply(null,arguments)},I._malloc=function(){return(I._malloc=I.asm.e).apply(null,arguments)},I._free=function(){return(I._free=I.asm.f).apply(null,arguments)},I.stackSave=function(){return(P=I.stackSave=I.asm.g).apply(null,arguments)}),Z=I.stackRestore=function(){return(Z=I.stackRestore=I.asm.h).apply(null,arguments)},X=I.stackAlloc=function(){return(X=I.stackAlloc=I.asm.i).apply(null,arguments)};if(I.ccall=function(A,I,n,C){var B={string:function(A){var I=0;if(null!=A&&0!==A){var g=1+(A.length<<2);t(A,I=X(g),g)}return I},array:function(A){var I=X(A.length);return function(A,I){p.set(A,I)}(A,I),I}},i=g(A),r=[],o=0;if(C)for(var E,Q=0;Q<C.length;Q++)(E=B[n[Q]])?(0===o&&(o=P()),r[Q]=E(C[Q])):r[Q]=C[Q];var a=i.apply(null,r);return a=function(A){return 0!==o&&Z(o),function(A){return"string"===I?e(A):"boolean"===I?!!A:A}(A)}(a)},K=function A(){x||s(),x||(K=A)},I.run=s,I.preInit)for("function"==typeof I.preInit&&(I.preInit=[I.preInit]);0<I.preInit.length;)I.preInit.pop()();return s(),I.ready}})();let n;Object(e.b)({initModule:()=>new Promise(n?async A=>{A()}:async A=>{(new t).then(I=>{n=I,A()})}),processVertices(A,I,g,t){let C=new Float32Array(t),B=new Float32Array(I),i=new Uint32Array(g),r=C.length/6,o=new Float32Array(4*r),E=new Float32Array(24*A);var Q,a,c,s,u,f=0;Q=f,a=f+=B.length*B.BYTES_PER_ELEMENT,c=f+=i.length*i.BYTES_PER_ELEMENT,s=f+=C.length*C.BYTES_PER_ELEMENT,u=f+=o.length*o.BYTES_PER_ELEMENT,f+=E.length*E.BYTES_PER_ELEMENT;var y=n._malloc(f),l=new Uint8Array(n.HEAPU8.buffer,y,f);l.set(new Uint8Array(B.buffer),Q),l.set(new Uint8Array(i.buffer),a),l.set(new Uint8Array(C.buffer),c);let h=l.byteOffset;n.ccall("processVertices","null",["number","number","number","number","number","number","number"],[A,h+Q,h+a,h+c,h+s,h+u]);let D=new Float32Array(l.buffer,h+s,o.length);for(let A=0;A<o.length;A++)o[A]=D[A];let w=new Float32Array(l.buffer,h+u,E.length);for(let A=0;A<E.length;A++)E[A]=w[A];return n._free(l.byteOffset),C=null,B=null,i=null,{vertices:Object(e.a)(o.buffer),boundingBoxes:Object(e.a)(E.buffer)}}})}]);
1
+ !function(A){var I={};function g(C){if(I[C])return I[C].exports;var B=I[C]={i:C,l:!1,exports:{}};return A[C].call(B.exports,B,B.exports,g),B.l=!0,B.exports}g.m=A,g.c=I,g.d=function(A,I,C){g.o(A,I)||Object.defineProperty(A,I,{enumerable:!0,get:C})},g.r=function(A){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(A,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(A,"__esModule",{value:!0})},g.t=function(A,I){if(1&I&&(A=g(A)),8&I)return A;if(4&I&&"object"==typeof A&&A&&A.__esModule)return A;var C=Object.create(null);if(g.r(C),Object.defineProperty(C,"default",{enumerable:!0,value:A}),2&I&&"string"!=typeof A)for(var B in A)g.d(C,B,function(I){return A[I]}.bind(null,B));return C},g.n=function(A){var I=A&&A.__esModule?function(){return A.default}:function(){return A};return g.d(I,"a",I),I},g.o=function(A,I){return Object.prototype.hasOwnProperty.call(A,I)},g.p="",g(g.s=5)}([function(A,I,g){"use strict";const C=g(2).default;A.exports=A=>Boolean(A&&A[C]&&A===A[C]())},function(A,I,g){"use strict";function C(A){var I,g=A.Symbol;return"function"==typeof g?g.observable?I=g.observable:(I=g("observable"),g.observable=I):I="@@observable",I}g.d(I,"a",(function(){return C}))},function(A,I,g){"use strict";g.r(I),function(A,C){var B,e=g(1);B="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==A?A:C;var E=Object(e.a)(B);I.default=E}.call(this,g(3),g(4)(A))},function(A,I){var g;g=function(){return this}();try{g=g||new Function("return this")()}catch(A){"object"==typeof window&&(g=window)}A.exports=g},function(A,I){A.exports=function(A){if(!A.webpackPolyfill){var I=Object.create(A);I.children||(I.children=[]),Object.defineProperty(I,"loaded",{enumerable:!0,get:function(){return I.l}}),Object.defineProperty(I,"id",{enumerable:!0,get:function(){return I.i}}),Object.defineProperty(I,"exports",{enumerable:!0}),I.webpackPolyfill=1}return I}},function(A,I,g){"use strict";g.r(I);var C=g(0),B=g.n(C);const e={deserialize:A=>Object.assign(Error(A.message),{name:A.name,stack:A.stack}),serialize:A=>({__error_marker:"$$error",message:A.message,name:A.name,stack:A.stack})};let E={deserialize(A){return(I=A)&&"object"==typeof I&&"__error_marker"in I&&"$$error"===I.__error_marker?e.deserialize(A):A;var I},serialize:A=>A instanceof Error?e.serialize(A):A};function n(A){return E.deserialize(A)}function t(A){return E.serialize(A)}Symbol("thread.errors"),Symbol("thread.events"),Symbol("thread.terminate");const i=Symbol("thread.transferable");Symbol("thread.worker");function Q(A,I){if(!I){if(!(g=A)||"object"!=typeof g)throw Error();I=[A]}var g;return{[i]:!0,send:A,transferables:I}}var o,r;!function(A){A.run="run"}(o||(o={})),function(A){A.error="error",A.init="init",A.result="result",A.running="running",A.uncaughtError="uncaughtError"}(r||(r={}));var a=function(){return!("undefined"==typeof self||!self.postMessage)},s=function(A,I){self.postMessage(A,I)},c=function(A){const I=I=>{A(I.data)};return self.addEventListener("message",I),()=>{self.removeEventListener("message",I)}},f=function(A,I,g,C){return new(g||(g=Promise))((function(B,e){function E(A){try{t(C.next(A))}catch(A){e(A)}}function n(A){try{t(C.throw(A))}catch(A){e(A)}}function t(A){var I;A.done?B(A.value):(I=A.value,I instanceof g?I:new g((function(A){A(I)}))).then(E,n)}t((C=C.apply(A,I||[])).next())}))};let u=!1;const y=A=>A&&A.type===o.run,l=A=>B()(A)||function(A){return A&&"object"==typeof A&&"function"==typeof A.subscribe}(A);function h(A){return function(A){return A&&"object"==typeof A&&A[i]}(A)?{payload:A.send,transferables:A.transferables}:{payload:A,transferables:void 0}}function w(A,I){const{payload:g,transferables:C}=h(I),B={type:r.error,uid:A,error:t(g)};s(B,C)}function D(A,I,g){const{payload:C,transferables:B}=h(g),e={type:r.result,uid:A,complete:!!I||void 0,payload:C};s(e,B)}function R(A){const I={type:r.uncaughtError,error:t(A)};s(I)}function d(A,I,g){return f(this,void 0,void 0,(function*(){let C;try{C=I(...g)}catch(I){return w(A,I)}const B=l(C)?"observable":"promise";if(function(A,I){const g={type:r.running,uid:A,resultType:I};s(g)}(A,B),l(C))C.subscribe((I=>D(A,!1,t(I))),(I=>w(A,t(I))),(()=>D(A,!0)));else try{const I=yield C;D(A,!0,t(I))}catch(I){w(A,t(I))}}))}"undefined"!=typeof self&&"function"==typeof self.addEventListener&&a()&&(self.addEventListener("error",(A=>{setTimeout((()=>R(A.error||A)),250)})),self.addEventListener("unhandledrejection",(A=>{const I=A.reason;I&&"string"==typeof I.message&&setTimeout((()=>R(I)),250)}))),"undefined"!=typeof process&&"function"==typeof process.on&&a()&&(process.on("uncaughtException",(A=>{setTimeout((()=>R(A)),250)})),process.on("unhandledRejection",(A=>{A&&"string"==typeof A.message&&setTimeout((()=>R(A)),250)})));var F,N=(F="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0,function(A){var I,g;(A=void 0!==(A=A||{})?A:{}).ready=new Promise((function(A,C){I=A,g=C}));var C,B=Object.assign({},A),e=[],E="";E=self.location.href,F&&(E=F),E=0!==E.indexOf("blob:")?E.substr(0,E.replace(/[?#].*/,"").lastIndexOf("/")+1):"",C=A=>{try{var I=new XMLHttpRequest;return I.open("GET",A,!1),I.responseType="arraybuffer",I.send(null),new Uint8Array(I.response)}catch(I){var g=U(A);if(g)return g;throw I}},A.print||console.log.bind(console);var n,t,i=A.printErr||console.warn.bind(console);Object.assign(A,B),B=null,A.arguments&&(e=A.arguments),A.thisProgram&&A.thisProgram,A.quit&&A.quit,A.wasmBinary&&(n=A.wasmBinary),A.noExitRuntime,"object"!=typeof WebAssembly&&R("no native wasm support detected");var Q,o,r,a=!1,s="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function c(I){Q=I,A.HEAP8=o=new Int8Array(I),A.HEAP16=new Int16Array(I),A.HEAP32=new Int32Array(I),A.HEAPU8=r=new Uint8Array(I),A.HEAPU16=new Uint16Array(I),A.HEAPU32=new Uint32Array(I),A.HEAPF32=new Float32Array(I),A.HEAPF64=new Float64Array(I)}A.INITIAL_MEMORY;var f,u=[],y=[],l=[],h=0,w=null,D=null;function R(I){A.onAbort&&A.onAbort(I),i(I="Aborted("+I+")"),a=!0,I+=". Build with -s ASSERTIONS=1 for more info.";var C=new WebAssembly.RuntimeError(I);throw g(C),C}A.preloadedImages={},A.preloadedAudios={};var d,N,G="data:application/octet-stream;base64,";function Y(A){return A.startsWith(G)}function p(A){try{if(A==d&&n)return new Uint8Array(n);var I=U(A);if(I)return I;if(C)return C(A);throw"both async and sync fetching of the wasm failed"}catch(A){R(A)}}function k(I){for(;I.length>0;){var g=I.shift();if("function"!=typeof g){var C=g.func;"number"==typeof C?void 0===g.arg?J(C)():J(C)(g.arg):C(void 0===g.arg?null:g.arg)}else g(A)}}Y(d="data:application/octet-stream;base64,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")||(N=d,d=A.locateFile?A.locateFile(N,E):E+N);var M=[];function J(A){var I=M[A];return I||(A>=M.length&&(M.length=A+1),M[A]=I=f.get(A)),I}function S(A){try{return t.grow(A-Q.byteLength+65535>>>16),c(t.buffer),1}catch(A){}}var b="function"==typeof atob?atob:function(A){var I,g,C,B,e,E,n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",t="",i=0;A=A.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{I=n.indexOf(A.charAt(i++))<<2|(B=n.indexOf(A.charAt(i++)))>>4,g=(15&B)<<4|(e=n.indexOf(A.charAt(i++)))>>2,C=(3&e)<<6|(E=n.indexOf(A.charAt(i++))),t+=String.fromCharCode(I),64!==e&&(t+=String.fromCharCode(g)),64!==E&&(t+=String.fromCharCode(C))}while(i<A.length);return t};function U(A){if(Y(A))return function(A){try{for(var I=b(A),g=new Uint8Array(I.length),C=0;C<I.length;++C)g[C]=I.charCodeAt(C);return g}catch(A){throw new Error("Converting base64 string to bytes failed.")}}(A.slice(G.length))}var m,L={a:function(A){var I,g,C=r.length,B=2147483648;if((A>>>=0)>B)return!1;for(var e=1;e<=4;e*=2){var E=C*(1+.2/e);if(E=Math.min(E,A+100663296),S(Math.min(B,(I=Math.max(A,E))+((g=65536)-I%g)%g)))return!0}return!1}},K=(function(){var I={a:L};function C(I,g){var C,B=I.exports;A.asm=B,c((t=A.asm.b).buffer),f=A.asm.j,C=A.asm.c,y.unshift(C),function(I){if(h--,A.monitorRunDependencies&&A.monitorRunDependencies(h),0==h&&(null!==w&&(clearInterval(w),w=null),D)){var g=D;D=null,g()}}()}function B(A){C(A.instance)}function e(A){return(n||"function"!=typeof fetch?Promise.resolve().then((function(){return p(d)})):fetch(d,{credentials:"same-origin"}).then((function(A){if(!A.ok)throw"failed to load wasm binary file at '"+d+"'";return A.arrayBuffer()})).catch((function(){return p(d)}))).then((function(A){return WebAssembly.instantiate(A,I)})).then((function(A){return A})).then(A,(function(A){i("failed to asynchronously prepare wasm: "+A),R(A)}))}if(h++,A.monitorRunDependencies&&A.monitorRunDependencies(h),A.instantiateWasm)try{return A.instantiateWasm(I,C)}catch(A){return i("Module.instantiateWasm callback failed with error: "+A),!1}(n||"function"!=typeof WebAssembly.instantiateStreaming||Y(d)||"function"!=typeof fetch?e(B):fetch(d,{credentials:"same-origin"}).then((function(A){return WebAssembly.instantiateStreaming(A,I).then(B,(function(A){return i("wasm streaming compile failed: "+A),i("falling back to ArrayBuffer instantiation"),e(B)}))}))).catch(g)}(),A.___wasm_call_ctors=function(){return(A.___wasm_call_ctors=A.asm.c).apply(null,arguments)},A._processVertices=function(){return(A._processVertices=A.asm.d).apply(null,arguments)},A._malloc=function(){return(A._malloc=A.asm.e).apply(null,arguments)},A._free=function(){return(A._free=A.asm.f).apply(null,arguments)},A.stackSave=function(){return(K=A.stackSave=A.asm.g).apply(null,arguments)}),v=A.stackRestore=function(){return(v=A.stackRestore=A.asm.h).apply(null,arguments)},H=A.stackAlloc=function(){return(H=A.stackAlloc=A.asm.i).apply(null,arguments)};function x(g){function C(){m||(m=!0,A.calledRun=!0,a||(k(y),I(A),A.onRuntimeInitialized&&A.onRuntimeInitialized(),function(){if(A.postRun)for("function"==typeof A.postRun&&(A.postRun=[A.postRun]);A.postRun.length;)I=A.postRun.shift(),l.unshift(I);var I;k(l)}()))}g=g||e,h>0||(function(){if(A.preRun)for("function"==typeof A.preRun&&(A.preRun=[A.preRun]);A.preRun.length;)I=A.preRun.shift(),u.unshift(I);var I;k(u)}(),h>0||(A.setStatus?(A.setStatus("Running..."),setTimeout((function(){setTimeout((function(){A.setStatus("")}),1),C()}),1)):C()))}if(A.ccall=function(I,g,C,B,e){var E={string:function(A){var I=0;if(null!=A&&0!==A){var g=1+(A.length<<2);!function(A,I,g){!function(A,I,g,C){if(!(C>0))return 0;for(var B=g+C-1,e=0;e<A.length;++e){var E=A.charCodeAt(e);if(E>=55296&&E<=57343&&(E=65536+((1023&E)<<10)|1023&A.charCodeAt(++e)),E<=127){if(g>=B)break;I[g++]=E}else if(E<=2047){if(g+1>=B)break;I[g++]=192|E>>6,I[g++]=128|63&E}else if(E<=65535){if(g+2>=B)break;I[g++]=224|E>>12,I[g++]=128|E>>6&63,I[g++]=128|63&E}else{if(g+3>=B)break;I[g++]=240|E>>18,I[g++]=128|E>>12&63,I[g++]=128|E>>6&63,I[g++]=128|63&E}}I[g]=0}(A,r,I,g)}(A,I=H(g),g)}return I},array:function(A){var I=H(A.length);return function(A,I){o.set(A,I)}(A,I),I}};function n(A){return"string"===g?(I=A)?function(A,I,g){for(var C=I+g,B=I;A[B]&&!(B>=C);)++B;if(B-I>16&&A.buffer&&s)return s.decode(A.subarray(I,B));for(var e="";I<B;){var E=A[I++];if(128&E){var n=63&A[I++];if(192!=(224&E)){var t=63&A[I++];if((E=224==(240&E)?(15&E)<<12|n<<6|t:(7&E)<<18|n<<12|t<<6|63&A[I++])<65536)e+=String.fromCharCode(E);else{var i=E-65536;e+=String.fromCharCode(55296|i>>10,56320|1023&i)}}else e+=String.fromCharCode((31&E)<<6|n)}else e+=String.fromCharCode(E)}return e}(r,I,C):"":"boolean"===g?Boolean(A):A;var I,C}var t=function(I){return A["_"+I]}(I),i=[],Q=0;if(B)for(var a=0;a<B.length;a++){var c=E[C[a]];c?(0===Q&&(Q=K()),i[a]=c(B[a])):i[a]=B[a]}var f=t.apply(null,i);return f=function(A){return 0!==Q&&v(Q),n(A)}(f)},D=function A(){m||x(),m||(D=A)},A.run=x,A.preInit)for("function"==typeof A.preInit&&(A.preInit=[A.preInit]);A.preInit.length>0;)A.preInit.pop()();return x(),A.ready}),G=N;let Y;!function(A){if(!a())throw Error("expose() called in the master thread.");if(u)throw Error("expose() called more than once. This is not possible. Pass an object to expose() if you want to expose multiple functions.");if(u=!0,"function"==typeof A)c((I=>{y(I)&&!I.method&&d(I.uid,A,I.args.map(n))})),function(){const A={type:r.init,exposed:{type:"function"}};s(A)}();else{if("object"!=typeof A||!A)throw Error(`Invalid argument passed to expose(). Expected a function or an object, got: ${A}`);c((I=>{y(I)&&I.method&&d(I.uid,A[I.method],I.args.map(n))}));!function(A){const I={type:r.init,exposed:{type:"module",methods:A}};s(I)}(Object.keys(A).filter((I=>"function"==typeof A[I])))}}({initModule:()=>new Promise(Y?async A=>{A()}:async A=>{(new G).then((I=>{Y=I,A()}))}),processVertices(A,I,g,C){let B=new Float32Array(C),e=new Float32Array(I),E=new Uint32Array(g),n=B.length/6,t=new Float32Array(4*n),i=new Float32Array(24*A);var o,r,a,s,c,f=0;o=f,r=f+=e.length*e.BYTES_PER_ELEMENT,a=f+=E.length*E.BYTES_PER_ELEMENT,s=f+=B.length*B.BYTES_PER_ELEMENT,c=f+=t.length*t.BYTES_PER_ELEMENT,f+=i.length*i.BYTES_PER_ELEMENT;var u=Y._malloc(f),y=new Uint8Array(Y.HEAPU8.buffer,u,f);y.set(new Uint8Array(e.buffer),o),y.set(new Uint8Array(E.buffer),r),y.set(new Uint8Array(B.buffer),a);let l=y.byteOffset;Y.ccall("processVertices","null",["number","number","number","number","number","number","number"],[A,l+o,l+r,l+a,l+s,l+c]);let h=new Float32Array(y.buffer,l+s,t.length);for(let A=0;A<t.length;A++)t[A]=h[A];let w=new Float32Array(y.buffer,l+c,i.length);for(let A=0;A<i.length;A++)i[A]=w[A];return Y._free(y.byteOffset),B=null,e=null,E=null,{vertices:Q(t.buffer),boundingBoxes:Q(i.buffer)}}})}]);
package/package.json CHANGED
@@ -1,87 +1,87 @@
1
- {
2
- "name": "bimplus-renderer",
3
- "version": "1.3.16",
4
- "description": "bim+ renderer",
5
- "main": "dist/bimplus-renderer.js",
6
- "license": "MIT",
7
- "repository": {
8
- "type": "git",
9
- "url": "."
10
- },
11
- "scripts": {
12
- "eslint": "eslint src/** test/**",
13
- "build": "npm run build-wasm && webpack --config webpack.dev.js",
14
- "build-prod": "npm run build-wasm-prod && npm run eslint && webpack --config webpack.prod.js",
15
- "yarn-publish": "npm run build-prod && yarn publish",
16
- "yarn-publish-rc": "npm run build-prod && yarn publish --tag rc",
17
- "yarn-publish-branch": "npm run build-prod && yarn publish --tag",
18
- "npm-pack": "npm run build-prod && npm pack",
19
- "build-doc": "documentation build ./src/*.js --config doc_config.yml -f html -o ./documentation",
20
- "build-docMd": "documentation build ./src/*.js -f md -o ./documentation/Bimplus_Renderer_doc.md",
21
- "build-docConf": "npm run build-docMd && cd ./documentation && python convert_to_confluence_md.py",
22
- "build-docAll": "npm run build-doc && npm run build-docConf",
23
- "test": "npm-run-all -p -r test-polly-listen-task test-karma-task",
24
- "test-watch": "npm-run-all -p -r test-polly-listen-task test-watch--browser-task",
25
- "test-chrome": "npm-run-all -p -r test-polly-listen-task test-chrome-browser-task",
26
- "test-chrome-headless": "npm-run-all -p -r test-polly-listen-task test-chrome-headlss-task",
27
- "test-firefox": "npm-run-all -p -r test-polly-listen-task test-firefx-browser-task",
28
- "// TEST HELPERS ": "The next scripts are helpers for the test scripts which are needed because of usage of npm-run-all",
29
- "// npm run test ": "runs all test in different browsers as specified in karma.conf.js",
30
- "// npm run test-watch": "npm run test-watch runs all tests in one browser for debugging",
31
- "// firefox headless ": "cant be used because webgl is not defined",
32
- "// heap error ": "FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - process out of memory: increase --max_old_space_size=4096",
33
- "test-polly-listen-task": "polly listen",
34
- "test-karma-task": "node --max_old_space_size=8192 node_modules/karma/bin/karma start ",
35
- "test-watch--browser-task": "npm run test-karma-task -- --single-run=false --browsers=ChromeExt --auto-watch",
36
- "test-chrome-browser-task": "npm run test-karma-task -- --single-run=true --browsers=ChromeExt",
37
- "test-chrome-headlss-task": "npm run test-karma-task -- --single-run=true --browsers=ChromeHeadless",
38
- "test-firefx-browser-task": "npm run test-karma-task -- --single-run=true --browsers=Firefox",
39
- "test-firefx-headlss-task": "npm run test-karma-task -- --single-run=true --browsers=FirefoxHeadless",
40
- "build-wasm": "emcc -O3 ./src/assembly/processPartitionVertices.cpp -s EXPORT_ES6=1 -s MODULARIZE=1 -s USE_ES6_IMPORT_META=0 -s ENVIRONMENT='worker' -s SINGLE_FILE=1 -s INITIAL_MEMORY=64MB -s ALLOW_MEMORY_GROWTH=1 -s EXTRA_EXPORTED_RUNTIME_METHODS=['ccall'] -s EXPORTED_FUNCTIONS=['_processVertices','_malloc','_free'] -o ./bin/processPartitionVertices.js",
41
- "build-wasm-prod": "emcc -O3 ./src/assembly/processPartitionVertices.cpp -s EXPORT_ES6=1 -s MODULARIZE=1 -s USE_ES6_IMPORT_META=0 -s ENVIRONMENT='worker' -s SINGLE_FILE=1 -s INITIAL_MEMORY=64MB -s ALLOW_MEMORY_GROWTH=1 -s EXTRA_EXPORTED_RUNTIME_METHODS=['ccall'] -s EXPORTED_FUNCTIONS=['_processVertices','_malloc','_free'] -o ./bin/processPartitionVertices.js",
42
- "code-metrics": "plato -r -d metrics src"
43
- },
44
- "devDependencies": {
45
- "@babel/core": "^7.17.8",
46
- "@babel/plugin-transform-runtime": "^7.17.0",
47
- "@babel/preset-env": "^7.16.11",
48
- "@pollyjs/adapter-xhr": "^6.0.4",
49
- "@pollyjs/cli": "^6.0.1",
50
- "@pollyjs/core": "^6.0.4",
51
- "@pollyjs/persister-rest": "^6.0.4",
52
- "babel-eslint": "^10.1.0",
53
- "babel-loader": "^8.2.4",
54
- "babel-minify-webpack-plugin": "0.3.1",
55
- "babel-plugin-transform-async-to-generator": "^6.24.1",
56
- "babel-preset-es2015": "^6.22.0",
57
- "bimplus-websdk": "0.0.183",
58
- "clean-webpack-plugin": "^3.0.0",
59
- "documentation": "^13.0.0",
60
- "eslint": "^8.12.0",
61
- "file-loader": "6.2.0",
62
- "istanbul-instrumenter-loader": "^3.0.1",
63
- "karma": "^5.2.3",
64
- "karma-chrome-launcher": "^3.1.1",
65
- "karma-coverage-istanbul-reporter": "^3.0.2",
66
- "karma-eslint": "^2.2.0",
67
- "karma-firefox-launcher": "^2.1.2",
68
- "karma-host-environment": "^3.0.3",
69
- "karma-jquery": "^0.2.4",
70
- "karma-qunit": "^4.1.1",
71
- "karma-sharding": "^4.4.0",
72
- "karma-webpack": "^4.0.2",
73
- "npm-run-all": "4.1.5",
74
- "object-hash": "^3.0.0",
75
- "qunit": "^2.18.1",
76
- "shader-loader": "1.3.1",
77
- "threads-plugin": "1.4.0",
78
- "webpack": "^4.43.0",
79
- "webpack-cli": "^3.3.11"
80
- },
81
- "dependencies": {
82
- "@babel/runtime": "^7.17.8",
83
- "dexie": "3.2.1",
84
- "threads": "1.3.0",
85
- "three": "0.128.0"
86
- }
87
- }
1
+ {
2
+ "name": "bimplus-renderer",
3
+ "version": "1.3.19",
4
+ "description": "bim+ renderer",
5
+ "main": "dist/bimplus-renderer.js",
6
+ "license": "MIT",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "."
10
+ },
11
+ "scripts": {
12
+ "eslint": "eslint src/** test/**",
13
+ "build": "npm run build-wasm && webpack --config webpack.dev.js",
14
+ "build-prod": "npm run build-wasm-prod && npm run eslint && webpack --config webpack.prod.js",
15
+ "yarn-publish": "npm run build-prod && yarn publish",
16
+ "yarn-publish-rc": "npm run build-prod && yarn publish --tag rc",
17
+ "yarn-publish-branch": "npm run build-prod && yarn publish --tag",
18
+ "npm-pack": "npm run build-prod && npm pack",
19
+ "build-doc": "documentation build ./src/*.js --config doc_config.yml -f html -o ./documentation",
20
+ "build-docMd": "documentation build ./src/*.js -f md -o ./documentation/Bimplus_Renderer_doc.md",
21
+ "build-docConf": "npm run build-docMd && cd ./documentation && python convert_to_confluence_md.py",
22
+ "build-docAll": "npm run build-doc && npm run build-docConf",
23
+ "test": "npm-run-all -p -r test-polly-listen-task test-karma-task",
24
+ "test-watch": "npm-run-all -p -r test-polly-listen-task test-watch--browser-task",
25
+ "test-chrome": "npm-run-all -p -r test-polly-listen-task test-chrome-browser-task",
26
+ "test-chrome-headless": "npm-run-all -p -r test-polly-listen-task test-chrome-headlss-task",
27
+ "test-firefox": "npm-run-all -p -r test-polly-listen-task test-firefx-browser-task",
28
+ "// TEST HELPERS ": "The next scripts are helpers for the test scripts which are needed because of usage of npm-run-all",
29
+ "// npm run test ": "runs all test in different browsers as specified in karma.conf.js",
30
+ "// npm run test-watch": "npm run test-watch runs all tests in one browser for debugging",
31
+ "// firefox headless ": "cant be used because webgl is not defined",
32
+ "// heap error ": "FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - process out of memory: increase --max_old_space_size=4096",
33
+ "test-polly-listen-task": "polly listen",
34
+ "test-karma-task": "node --max_old_space_size=8192 node_modules/karma/bin/karma start ",
35
+ "test-watch--browser-task": "npm run test-karma-task -- --single-run=false --browsers=ChromeExt --auto-watch",
36
+ "test-chrome-browser-task": "npm run test-karma-task -- --single-run=true --browsers=ChromeExt",
37
+ "test-chrome-headlss-task": "npm run test-karma-task -- --single-run=true --browsers=ChromeHeadless",
38
+ "test-firefx-browser-task": "npm run test-karma-task -- --single-run=true --browsers=Firefox",
39
+ "test-firefx-headlss-task": "npm run test-karma-task -- --single-run=true --browsers=FirefoxHeadless",
40
+ "build-wasm": "emcc -O3 ./src/assembly/processPartitionVertices.cpp -s EXPORT_ES6=1 -s MODULARIZE=1 -s USE_ES6_IMPORT_META=0 -s ENVIRONMENT='worker' -s SINGLE_FILE=1 -s INITIAL_MEMORY=64MB -s ALLOW_MEMORY_GROWTH=1 -s EXTRA_EXPORTED_RUNTIME_METHODS=['ccall'] -s EXPORTED_FUNCTIONS=['_processVertices','_malloc','_free'] -o ./bin/processPartitionVertices.js",
41
+ "build-wasm-prod": "emcc -O3 ./src/assembly/processPartitionVertices.cpp -s EXPORT_ES6=1 -s MODULARIZE=1 -s USE_ES6_IMPORT_META=0 -s ENVIRONMENT='worker' -s SINGLE_FILE=1 -s INITIAL_MEMORY=64MB -s ALLOW_MEMORY_GROWTH=1 -s EXTRA_EXPORTED_RUNTIME_METHODS=['ccall'] -s EXPORTED_FUNCTIONS=['_processVertices','_malloc','_free'] -o ./bin/processPartitionVertices.js",
42
+ "code-metrics": "plato -r -d metrics src"
43
+ },
44
+ "devDependencies": {
45
+ "@babel/core": "^7.17.8",
46
+ "@babel/plugin-transform-runtime": "^7.17.0",
47
+ "@babel/preset-env": "^7.16.11",
48
+ "@pollyjs/adapter-xhr": "^6.0.4",
49
+ "@pollyjs/cli": "^6.0.1",
50
+ "@pollyjs/core": "^6.0.4",
51
+ "@pollyjs/persister-rest": "^6.0.4",
52
+ "babel-eslint": "^10.1.0",
53
+ "babel-loader": "^8.2.4",
54
+ "babel-plugin-transform-async-to-generator": "^6.24.1",
55
+ "babel-preset-es2015": "^6.22.0",
56
+ "bimplus-websdk": "0.0.183",
57
+ "clean-webpack-plugin": "^4.0.0",
58
+ "documentation": "^13.2.5",
59
+ "eslint": "^8.12.0",
60
+ "file-loader": "6.2.0",
61
+ "istanbul-instrumenter-loader": "^3.0.1",
62
+ "karma": "^5.2.3",
63
+ "karma-chrome-launcher": "^3.1.1",
64
+ "karma-coverage-istanbul-reporter": "^3.0.2",
65
+ "karma-eslint": "^2.2.0",
66
+ "karma-firefox-launcher": "^2.1.2",
67
+ "karma-host-environment": "^3.0.3",
68
+ "karma-jquery": "^0.2.4",
69
+ "karma-qunit": "^4.1.1",
70
+ "karma-sharding": "^4.4.0",
71
+ "karma-webpack": "^4.0.2",
72
+ "npm-run-all": "4.1.5",
73
+ "object-hash": "^3.0.0",
74
+ "qunit": "^2.18.1",
75
+ "shader-loader": "1.3.1",
76
+ "terser-webpack-plugin": "^4.2.3",
77
+ "threads-plugin": "1.4.0",
78
+ "webpack": "^4.46.0",
79
+ "webpack-cli": "^4.9.2"
80
+ },
81
+ "dependencies": {
82
+ "@babel/runtime": "^7.17.8",
83
+ "dexie": "3.2.1",
84
+ "threads": "1.3.0",
85
+ "three": "0.128.0"
86
+ }
87
+ }