hart-estate-widget 0.0.66 → 0.0.69
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -0
- package/build/assets/css/index.css +2 -0
- package/build/assets/img/floor-dark.jpg +0 -0
- package/build/assets/img/floor-white.jpg +0 -0
- package/build/assets/img/grass.jpg +0 -0
- package/build/bundle.js +2 -0
- package/build/components/Application.js +2 -135
- package/build/components/Buttons/FullScreenButton.js +2 -50
- package/build/components/Buttons/TabButton.js +2 -24
- package/build/components/Instructions.js +2 -54
- package/build/components/Loader.js +2 -22
- package/build/components/ModelTab.js +2 -213
- package/build/components/PanoramaTab.js +2 -620
- package/build/components/RotationTab/DefaultView.js +2 -124
- package/build/components/RotationTab/ThreesixtyView.js +2 -45
- package/build/components/RotationTab/index.js +2 -194
- package/build/components/Widget.js +2 -110
- package/build/config/defaultConfig.js +2 -32
- package/build/enums/deviceOrientationStatuses.js +2 -11
- package/build/enums/deviceWidth.js +2 -21
- package/build/enums/imageExtentions.js +2 -16
- package/build/enums/rotationModes.js +2 -11
- package/build/index.css +1 -1
- package/build/index.js +2 -75
- package/build/locale/index.js +2 -71
- package/build/store/apiStore.js +2 -231
- package/build/store/deviceStore.js +2 -60
- package/build/store/fullScreenStore.js +2 -159
- package/build/store/houseStore.js +2 -952
- package/build/store/index.js +2 -124
- package/build/store/modelStore.js +2 -338
- package/build/threesixty/events.js +2 -220
- package/build/threesixty/index.js +2 -264
- package/build/utils/csg/csg-lib.js +2 -472
- package/build/utils/csg/csg-worker.js +2 -84
- package/build/utils/csg/three-csg.js +2 -277
- package/build/utils/helpers.js +2 -12
- package/build/utils/modelHelpers.js +2 -161
- package/build/utils/panoramaHelpers.js +2 -117
- package/package.json +17 -5
- package/build/assets/css/app.css +0 -1
- package/build/assets/css/app.css.map +0 -1
- package/build/assets/img/floor-dark.png +0 -0
- package/build/assets/img/floor-white.png +0 -0
- package/build/assets/img/grass.png +0 -0
@@ -1,277 +1,2 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
4
|
-
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
6
|
-
value: true
|
7
|
-
});
|
8
|
-
exports.default = void 0;
|
9
|
-
|
10
|
-
var _react = _interopRequireDefault(require("react"));
|
11
|
-
|
12
|
-
var THREE = _interopRequireWildcard(require("three"));
|
13
|
-
|
14
|
-
var _csgLib = require("./csg-lib.js");
|
15
|
-
|
16
|
-
require("./csg-worker.js");
|
17
|
-
|
18
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
19
|
-
|
20
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
21
|
-
|
22
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
23
|
-
|
24
|
-
var Geometry = THREE.Geometry,
|
25
|
-
BufferGeometry = THREE.BufferGeometry,
|
26
|
-
Vector3 = THREE.Vector3,
|
27
|
-
Vector2 = THREE.Vector2;
|
28
|
-
|
29
|
-
_csgLib.CSG.fromGeometry = function (geom, objectIndex) {
|
30
|
-
var polys = [];
|
31
|
-
|
32
|
-
if (geom.isGeometry) {
|
33
|
-
var fs = geom.faces;
|
34
|
-
var vs = geom.vertices;
|
35
|
-
var fm = ['a', 'b', 'c'];
|
36
|
-
|
37
|
-
for (var i = 0; i < fs.length; i++) {
|
38
|
-
var f = fs[i];
|
39
|
-
var vertices = [];
|
40
|
-
|
41
|
-
for (var j = 0; j < 3; j++) {
|
42
|
-
vertices.push(new _csgLib.Vertex(vs[f[fm[j]]], f.vertexNormals[j], geom.faceVertexUvs[0][i][j]));
|
43
|
-
}
|
44
|
-
|
45
|
-
polys.push(new _csgLib.Polygon(vertices, objectIndex));
|
46
|
-
}
|
47
|
-
} else if (geom.isBufferGeometry) {
|
48
|
-
var _vertices, normals, uvs;
|
49
|
-
|
50
|
-
var posattr = geom.attributes.position;
|
51
|
-
var normalattr = geom.attributes.normal;
|
52
|
-
var uvattr = geom.attributes.uv;
|
53
|
-
var colorattr = geom.attributes.color;
|
54
|
-
var index;
|
55
|
-
if (geom.index) index = geom.index.array;else {
|
56
|
-
index = new Array(posattr.array.length / posattr.itemSize | 0);
|
57
|
-
|
58
|
-
for (var _i = 0; _i < index.length; _i++) {
|
59
|
-
index[_i] = _i;
|
60
|
-
}
|
61
|
-
}
|
62
|
-
var triCount = index.length / 3 | 0;
|
63
|
-
polys = new Array(triCount);
|
64
|
-
|
65
|
-
for (var _i2 = 0, pli = 0, l = index.length; _i2 < l; _i2 += 3, pli++) {
|
66
|
-
var _vertices2 = new Array(3);
|
67
|
-
|
68
|
-
for (var _j = 0; _j < 3; _j++) {
|
69
|
-
var vi = index[_i2 + _j];
|
70
|
-
var vp = vi * 3;
|
71
|
-
var vt = vi * 2;
|
72
|
-
var x = posattr.array[vp];
|
73
|
-
var y = posattr.array[vp + 1];
|
74
|
-
var z = posattr.array[vp + 2];
|
75
|
-
var nx = normalattr.array[vp];
|
76
|
-
var ny = normalattr.array[vp + 1];
|
77
|
-
var nz = normalattr.array[vp + 2]; //let u = uvattr.array[vt]
|
78
|
-
//let v = uvattr.array[vt + 1]
|
79
|
-
|
80
|
-
_vertices2[_j] = new _csgLib.Vertex({
|
81
|
-
x: x,
|
82
|
-
y: y,
|
83
|
-
z: z
|
84
|
-
}, {
|
85
|
-
x: nx,
|
86
|
-
y: ny,
|
87
|
-
z: nz
|
88
|
-
}, uvattr && {
|
89
|
-
x: uvattr.array[vt],
|
90
|
-
y: uvattr.array[vt + 1],
|
91
|
-
z: 0
|
92
|
-
}, colorattr && {
|
93
|
-
x: colorattr.array[vt],
|
94
|
-
y: colorattr.array[vt + 1],
|
95
|
-
z: colorattr.array[vt + 2]
|
96
|
-
});
|
97
|
-
}
|
98
|
-
|
99
|
-
polys[pli] = new _csgLib.Polygon(_vertices2, objectIndex);
|
100
|
-
}
|
101
|
-
} else console.error("Unsupported CSG input type:" + geom.type);
|
102
|
-
|
103
|
-
return _csgLib.CSG.fromPolygons(polys);
|
104
|
-
};
|
105
|
-
|
106
|
-
var ttvv0 = new THREE.Vector3();
|
107
|
-
var tmpm3 = new THREE.Matrix3();
|
108
|
-
|
109
|
-
_csgLib.CSG.fromMesh = function (mesh, objectIndex) {
|
110
|
-
var csg = _csgLib.CSG.fromGeometry(mesh.geometry, objectIndex);
|
111
|
-
|
112
|
-
tmpm3.getNormalMatrix(mesh.matrix);
|
113
|
-
|
114
|
-
for (var i = 0; i < csg.polygons.length; i++) {
|
115
|
-
var p = csg.polygons[i];
|
116
|
-
|
117
|
-
for (var j = 0; j < p.vertices.length; j++) {
|
118
|
-
var v = p.vertices[j];
|
119
|
-
v.pos.copy(ttvv0.copy(v.pos).applyMatrix4(mesh.matrix));
|
120
|
-
v.normal.copy(ttvv0.copy(v.normal).applyMatrix3(tmpm3));
|
121
|
-
}
|
122
|
-
}
|
123
|
-
|
124
|
-
return csg;
|
125
|
-
};
|
126
|
-
|
127
|
-
var nbuf3 = function nbuf3(ct) {
|
128
|
-
return {
|
129
|
-
top: 0,
|
130
|
-
array: new Float32Array(ct),
|
131
|
-
write: function write(v) {
|
132
|
-
this.array[this.top++] = v.x;
|
133
|
-
this.array[this.top++] = v.y;
|
134
|
-
this.array[this.top++] = v.z;
|
135
|
-
}
|
136
|
-
};
|
137
|
-
};
|
138
|
-
|
139
|
-
var nbuf2 = function nbuf2(ct) {
|
140
|
-
return {
|
141
|
-
top: 0,
|
142
|
-
array: new Float32Array(ct),
|
143
|
-
write: function write(v) {
|
144
|
-
this.array[this.top++] = v.x;
|
145
|
-
this.array[this.top++] = v.y;
|
146
|
-
}
|
147
|
-
};
|
148
|
-
};
|
149
|
-
|
150
|
-
_csgLib.CSG.toGeometry = function (csg) {
|
151
|
-
var buffered = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
152
|
-
var ps = csg.polygons;
|
153
|
-
var geom;
|
154
|
-
var g2;
|
155
|
-
|
156
|
-
if (!buffered) //Old geometry path...
|
157
|
-
{
|
158
|
-
geom = new Geometry();
|
159
|
-
var vs = geom.vertices;
|
160
|
-
var fvuv = geom.faceVertexUvs[0];
|
161
|
-
|
162
|
-
for (var i = 0; i < ps.length; i++) {
|
163
|
-
var p = ps[i];
|
164
|
-
var pvs = p.vertices;
|
165
|
-
var v0 = vs.length;
|
166
|
-
var pvlen = pvs.length;
|
167
|
-
|
168
|
-
for (var j = 0; j < pvlen; j++) {
|
169
|
-
vs.push(new THREE.Vector3().copy(pvs[j].pos));
|
170
|
-
}
|
171
|
-
|
172
|
-
for (var _j2 = 3; _j2 <= pvlen; _j2++) {
|
173
|
-
var fc = new THREE.Face3();
|
174
|
-
var fuv = [];
|
175
|
-
fvuv.push(fuv);
|
176
|
-
var fnml = fc.vertexNormals;
|
177
|
-
fc.a = v0;
|
178
|
-
fc.b = v0 + _j2 - 2;
|
179
|
-
fc.c = v0 + _j2 - 1;
|
180
|
-
fnml.push(new THREE.Vector3().copy(pvs[0].normal));
|
181
|
-
fnml.push(new THREE.Vector3().copy(pvs[_j2 - 2].normal));
|
182
|
-
fnml.push(new THREE.Vector3().copy(pvs[_j2 - 1].normal));
|
183
|
-
fuv.push(new THREE.Vector3().copy(pvs[0].uv));
|
184
|
-
fuv.push(new THREE.Vector3().copy(pvs[_j2 - 2].uv));
|
185
|
-
fuv.push(new THREE.Vector3().copy(pvs[_j2 - 1].uv));
|
186
|
-
fc.normal = new THREE.Vector3().copy(p.plane.normal);
|
187
|
-
geom.faces.push(fc);
|
188
|
-
}
|
189
|
-
}
|
190
|
-
|
191
|
-
geom = new THREE.BufferGeometry().fromGeometry(geom);
|
192
|
-
geom.verticesNeedUpdate = geom.elementsNeedUpdate = geom.normalsNeedUpdate = true;
|
193
|
-
} else {
|
194
|
-
//BufferGeometry path
|
195
|
-
var triCount = 0;
|
196
|
-
ps.forEach(function (p) {
|
197
|
-
return triCount += p.vertices.length - 2;
|
198
|
-
});
|
199
|
-
geom = new THREE.BufferGeometry();
|
200
|
-
var vertices = nbuf3(triCount * 3 * 3);
|
201
|
-
var normals = nbuf3(triCount * 3 * 3);
|
202
|
-
var uvs; // = nbuf2(triCount * 2 * 3)
|
203
|
-
|
204
|
-
var colors;
|
205
|
-
var grps = [];
|
206
|
-
ps.forEach(function (p) {
|
207
|
-
var pvs = p.vertices;
|
208
|
-
var pvlen = pvs.length;
|
209
|
-
|
210
|
-
if (p.shared !== undefined) {
|
211
|
-
if (!grps[p.shared]) grps[p.shared] = [];
|
212
|
-
}
|
213
|
-
|
214
|
-
if (pvlen) {
|
215
|
-
if (pvs[0].color !== undefined) {
|
216
|
-
if (!colors) colors = nbuf3(triCount * 3 * 3);
|
217
|
-
}
|
218
|
-
|
219
|
-
if (pvs[0].uv !== undefined) {
|
220
|
-
if (!uvs) uvs = nbuf2(triCount * 2 * 3);
|
221
|
-
}
|
222
|
-
}
|
223
|
-
|
224
|
-
for (var _j3 = 3; _j3 <= pvlen; _j3++) {
|
225
|
-
p.shared !== undefined && grps[p.shared].push(vertices.top / 3, vertices.top / 3 + 1, vertices.top / 3 + 2);
|
226
|
-
vertices.write(pvs[0].pos);
|
227
|
-
vertices.write(pvs[_j3 - 2].pos);
|
228
|
-
vertices.write(pvs[_j3 - 1].pos);
|
229
|
-
normals.write(pvs[0].normal);
|
230
|
-
normals.write(pvs[_j3 - 2].normal);
|
231
|
-
normals.write(pvs[_j3 - 1].normal);
|
232
|
-
uvs && pvs[0].uv && (uvs.write(pvs[0].uv) || uvs.write(pvs[_j3 - 2].uv) || uvs.write(pvs[_j3 - 1].uv));
|
233
|
-
colors && (colors.write(pvs[0].color) || colors.write(pvs[_j3 - 2].color) || colors.write(pvs[_j3 - 1].color));
|
234
|
-
}
|
235
|
-
});
|
236
|
-
geom.setAttribute('position', new THREE.BufferAttribute(vertices.array, 3));
|
237
|
-
geom.setAttribute('normal', new THREE.BufferAttribute(normals.array, 3));
|
238
|
-
uvs && geom.setAttribute('uv', new THREE.BufferAttribute(uvs.array, 2));
|
239
|
-
colors && geom.setAttribute('color', new THREE.BufferAttribute(colors.array, 3));
|
240
|
-
|
241
|
-
if (grps.length) {
|
242
|
-
var index = [];
|
243
|
-
var gbase = 0;
|
244
|
-
|
245
|
-
for (var gi = 0; gi < grps.length; gi++) {
|
246
|
-
geom.addGroup(gbase, grps[gi].length, gi);
|
247
|
-
gbase += grps[gi].length;
|
248
|
-
index = index.concat(grps[gi]);
|
249
|
-
}
|
250
|
-
|
251
|
-
geom.setIndex(index);
|
252
|
-
}
|
253
|
-
|
254
|
-
g2 = geom;
|
255
|
-
}
|
256
|
-
|
257
|
-
return geom;
|
258
|
-
};
|
259
|
-
|
260
|
-
_csgLib.CSG.toMesh = function (csg, toMatrix, toMaterial) {
|
261
|
-
var geom = _csgLib.CSG.toGeometry(csg);
|
262
|
-
|
263
|
-
var inv = new THREE.Matrix4().copy(toMatrix).invert();
|
264
|
-
geom.applyMatrix4(inv);
|
265
|
-
geom.computeBoundingSphere();
|
266
|
-
geom.computeBoundingBox();
|
267
|
-
var m = new THREE.Mesh(geom, toMaterial);
|
268
|
-
m.matrix.copy(toMatrix);
|
269
|
-
m.matrix.decompose(m.position, m.quaternion, m.scale);
|
270
|
-
m.rotation.setFromQuaternion(m.quaternion);
|
271
|
-
m.updateMatrixWorld();
|
272
|
-
m.castShadow = m.receiveShadow = true;
|
273
|
-
return m;
|
274
|
-
};
|
275
|
-
|
276
|
-
var _default = _csgLib.CSG;
|
277
|
-
exports.default = _default;
|
1
|
+
"use strict";function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _react=_interopRequireDefault(require("react")),THREE=_interopRequireWildcard(require("three")),_csgLib=require("./csg-lib.js");function _getRequireWildcardCache(e){if("function"!=typeof WeakMap)return null;var r=new WeakMap,t=new WeakMap;return(_getRequireWildcardCache=function(e){return e?t:r})(e)}function _interopRequireWildcard(e,r){if(!r&&e&&e.__esModule)return e;if(null===e||"object"!==_typeof(e)&&"function"!=typeof e)return{default:e};r=_getRequireWildcardCache(r);if(r&&r.has(e))return r.get(e);var t,o,a={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(t in e)"default"!==t&&Object.prototype.hasOwnProperty.call(e,t)&&((o=n?Object.getOwnPropertyDescriptor(e,t):null)&&(o.get||o.set)?Object.defineProperty(a,t,o):a[t]=e[t]);return a.default=e,r&&r.set(e,a),a}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}require("./csg-worker.js");var Geometry=THREE.Geometry,BufferGeometry=THREE.BufferGeometry,Vector3=THREE.Vector3,Vector2=THREE.Vector2,ttvv0=(_csgLib.CSG.fromGeometry=function(e,r){var t=[];if(e.isGeometry)for(var o=e.faces,a=e.vertices,n=["a","b","c"],i=0;i<o.length;i++){for(var u=o[i],c=[],s=0;s<3;s++)c.push(new _csgLib.Vertex(a[u[n[s]]],u.vertexNormals[s],e.faceVertexUvs[0][i][s]));t.push(new _csgLib.Polygon(c,r))}else if(e.isBufferGeometry){var p=e.attributes.position,f=e.attributes.normal,y=e.attributes.uv,l=e.attributes.color;if(e.index)v=e.index.array;else for(var v=new Array(p.array.length/p.itemSize|0),m=0;m<v.length;m++)v[m]=m;for(var h=v.length/3|0,t=new Array(h),d=0,w=0,E=v.length;d<E;d+=3,w++){for(var g=new Array(3),b=0;b<3;b++){var _=v[d+b],R=3*_,_=2*_,x=p.array[R],G=p.array[1+R],H=p.array[2+R],T=f.array[R],S=f.array[1+R],R=f.array[2+R];g[b]=new _csgLib.Vertex({x:x,y:G,z:H},{x:T,y:S,z:R},y&&{x:y.array[_],y:y.array[1+_],z:0},l&&{x:l.array[_],y:l.array[1+_],z:l.array[2+_]})}t[w]=new _csgLib.Polygon(g,r)}}else console.error("Unsupported CSG input type:"+e.type);return _csgLib.CSG.fromPolygons(t)},new THREE.Vector3),tmpm3=new THREE.Matrix3,nbuf3=(_csgLib.CSG.fromMesh=function(e,r){var t=_csgLib.CSG.fromGeometry(e.geometry,r);tmpm3.getNormalMatrix(e.matrix);for(var o=0;o<t.polygons.length;o++)for(var a=t.polygons[o],n=0;n<a.vertices.length;n++){var i=a.vertices[n];i.pos.copy(ttvv0.copy(i.pos).applyMatrix4(e.matrix)),i.normal.copy(ttvv0.copy(i.normal).applyMatrix3(tmpm3))}return t},function(e){return{top:0,array:new Float32Array(e),write:function(e){this.array[this.top++]=e.x,this.array[this.top++]=e.y,this.array[this.top++]=e.z}}}),nbuf2=function(e){return{top:0,array:new Float32Array(e),write:function(e){this.array[this.top++]=e.x,this.array[this.top++]=e.y}}},_default=(_csgLib.CSG.toGeometry=function(e){var r=e.polygons;if(!(1<arguments.length&&void 0!==arguments[1])||arguments[1]){var a,n,i=0,u=(r.forEach(function(e){return i+=e.vertices.length-2}),f=new THREE.BufferGeometry,nbuf3(3*i*3)),c=nbuf3(3*i*3),s=[];if(r.forEach(function(e){var r=e.vertices,t=r.length;void 0===e.shared||s[e.shared]||(s[e.shared]=[]),t&&(void 0!==r[0].color&&(n=n||nbuf3(3*i*3)),void 0!==r[0].uv&&(a=a||nbuf2(2*i*3)));for(var o=3;o<=t;o++)void 0!==e.shared&&s[e.shared].push(u.top/3,u.top/3+1,u.top/3+2),u.write(r[0].pos),u.write(r[o-2].pos),u.write(r[o-1].pos),c.write(r[0].normal),c.write(r[o-2].normal),c.write(r[o-1].normal),a&&r[0].uv&&(a.write(r[0].uv)||a.write(r[o-2].uv)||a.write(r[o-1].uv)),!n||n.write(r[0].color)||n.write(r[o-2].color)||n.write(r[o-1].color)}),f.setAttribute("position",new THREE.BufferAttribute(u.array,3)),f.setAttribute("normal",new THREE.BufferAttribute(c.array,3)),a&&f.setAttribute("uv",new THREE.BufferAttribute(a.array,2)),n&&f.setAttribute("color",new THREE.BufferAttribute(n.array,3)),s.length){for(var t=[],o=0,p=0;p<s.length;p++)f.addGroup(o,s[p].length,p),o+=s[p].length,t=t.concat(s[p]);f.setIndex(t)}0}else{for(var f,y=(f=new Geometry).vertices,l=f.faceVertexUvs[0],v=0;v<r.length;v++){for(var m=r[v],h=m.vertices,d=y.length,w=h.length,E=0;E<w;E++)y.push((new THREE.Vector3).copy(h[E].pos));for(var g=3;g<=w;g++){var b=new THREE.Face3,_=[],R=(l.push(_),b.vertexNormals);b.a=d,b.b=d+g-2,b.c=d+g-1,R.push((new THREE.Vector3).copy(h[0].normal)),R.push((new THREE.Vector3).copy(h[g-2].normal)),R.push((new THREE.Vector3).copy(h[g-1].normal)),_.push((new THREE.Vector3).copy(h[0].uv)),_.push((new THREE.Vector3).copy(h[g-2].uv)),_.push((new THREE.Vector3).copy(h[g-1].uv)),b.normal=(new THREE.Vector3).copy(m.plane.normal),f.faces.push(b)}}(f=(new THREE.BufferGeometry).fromGeometry(f)).verticesNeedUpdate=f.elementsNeedUpdate=f.normalsNeedUpdate=!0}return f},_csgLib.CSG.toMesh=function(e,r,t){var e=_csgLib.CSG.toGeometry(e),o=(new THREE.Matrix4).copy(r).invert(),o=(e.applyMatrix4(o),e.computeBoundingSphere(),e.computeBoundingBox(),new THREE.Mesh(e,t));return o.matrix.copy(r),o.matrix.decompose(o.position,o.quaternion,o.scale),o.rotation.setFromQuaternion(o.quaternion),o.updateMatrixWorld(),o.castShadow=o.receiveShadow=!0,o},_csgLib.CSG);exports.default=_default;
|
2
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInV0aWxzL2NzZy90aHJlZS1jc2cuanMiXSwibmFtZXMiOlsiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJUSFJFRSIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwiX2NzZ0xpYiIsIkdlb21ldHJ5IiwiQnVmZmVyR2VvbWV0cnkiLCJWZWN0b3IzIiwiVmVjdG9yMiIsInR0dnYwIiwiQ1NHIiwiZnJvbUdlb21ldHJ5IiwiZ2VvbSIsIm9iamVjdEluZGV4IiwicG9seXMiLCJpc0dlb21ldHJ5IiwiZnMiLCJmYWNlcyIsInZzIiwidmVydGljZXMiLCJmbSIsImkiLCJsZW5ndGgiLCJmIiwiaiIsInB1c2giLCJWZXJ0ZXgiLCJ2ZXJ0ZXhOb3JtYWxzIiwiZmFjZVZlcnRleFV2cyIsIlBvbHlnb24iLCJpc0J1ZmZlckdlb21ldHJ5IiwicG9zYXR0ciIsImF0dHJpYnV0ZXMiLCJwb3NpdGlvbiIsIm5vcm1hbGF0dHIiLCJub3JtYWwiLCJjb2xvcmF0dHIiLCJjb2xvciIsImluZGV4IiwiYXJyYXkiLCJBcnJheSIsIml0ZW1TaXplIiwidHJpQ291bnQiLCJsIiwicGxpIiwidmkiLCJ2dCIsIngiLCJ2cCIsInkiLCJ6Iiwibm9ybWFscyIsIm56IiwidXYiLCJueCIsInV2YXR0ciIsImNvbnNvbGUiLCJlcnJvciIsInR5cGUiLCJmcm9tUG9seWdvbnMiLCJ0bXBtMyIsIm5idWYzIiwiZnJvbU1lc2giLCJjc2ciLCJnZW9tZXRyeSIsImdldE5vcm1hbE1hdHJpeCIsInBvbHlnb25zIiwicCIsInYiLCJwb3MiLCJjb3B5IiwiYXBwbHlNYXRyaXg0IiwibWVzaCIsIm1hdHJpeCIsImN0IiwidG9wIiwid3JpdGUiLCJ0aGlzIiwibmJ1ZjIiLCJGbG9hdDMyQXJyYXkiLCJ0b0dlb21ldHJ5IiwicHMiLCJhcmd1bWVudHMiLCJ1bmRlZmluZWQiLCJidWZmZXJlZCIsImZvckVhY2giLCJncnBzIiwicHZzIiwicHZsZW4iLCJzaGFyZWQiLCJjb2xvcnMiLCJ1dnMiLCJGYWNlMyIsImZ1diIsImZubWwiLCJmYyIsIkJ1ZmZlckF0dHJpYnV0ZSIsInNldEF0dHJpYnV0ZSIsImdpIiwiYWRkR3JvdXAiLCJnYmFzZSIsInNldEluZGV4IiwidjAiLCJhcHBseU1hdHJpeDMiLCJmdnV2IiwiYSIsImIiLCJjIiwicGxhbmUiLCJ2ZXJ0aWNlc05lZWRVcGRhdGUiLCJlbGVtZW50c05lZWRVcGRhdGUiLCJub3JtYWxzTmVlZFVwZGF0ZSIsInRvTWVzaCIsInRvTWF0ZXJpYWwiLCJNYXRyaXg0IiwidG9NYXRyaXgiLCJpbnZlcnQiLCJpbnYiLCJNZXNoIiwibSIsInF1YXRlcm5pb24iLCJzY2FsZSIsInJvdGF0aW9uIiwic2V0RnJvbVF1YXRlcm5pb24iLCJ1cGRhdGVNYXRyaXhXb3JsZCIsImNhc3RTaGFkb3ciXSwibWFwcGluZ3MiOiI0VUFBQSxJQUFBQSxPQUFBQyx1QkFBQUMsUUFBQSxVQUNBQyxNQUFBQyx3QkFBQUYsUUFBQSxVQUNBRyxRQUFBSCxRQUFBLGdCLDB0QkFDQUEsUUFBQSxtQkFFQSxJQUFNSSxTQUE4Q0gsTUFBOUNHLFNBQVVDLGVBQW9DSixNQUFwQ0ksZUFBZ0JDLFFBQW9CTCxNQUFwQkssUUFBU0MsUUFBV04sTUFBWE0sUUFtRXJDQyxPQWpFSkMsUUFBQUEsSUFBSUMsYUFBZSxTQUFTQyxFQUFLQyxHQUM3QixJQUFJQyxFQUFRLEdBUmhCLEdBQUFGLEVBQUFHLFdBRUEsSUFRUSxJQUFJQyxFQUFLSixFQUFLSyxNQVR0QkMsRUFBQU4sRUFBQU8sU0FXWUMsRUFBSyxDQUFDLElBQUssSUFBSyxLQVY1QkMsRUFBQSxFQUFBQSxFQUFBTCxFQUFBTSxPQUFBRCxJQUFBLENBY1ksSUFGQSxJQUFJRSxFQUFJUCxFQUFHSyxHQVh2QkYsRUFBQSxHQWFxQkssRUFBSSxFQUFHQSxFQUFJLEVBQUdBLElBQ25CTCxFQUFTTSxLQUFLLElBQUlDLFFBQUFBLE9BQU9SLEVBQUdLLEVBQUVILEVBQUdJLEtBQUtELEVBQUVJLGNBQWNILEdBQUdaLEVBQUtn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LEVBQUM5QixlQUFlQSxFQUM3QjhCLEdBRVM3RyxRQUFBQSIsImZpbGUiOiJ1dGlscy9jc2cvdGhyZWUtY3NnLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCAqIGFzIFRIUkVFIGZyb20gJ3RocmVlJztcbmltcG9ydCB7IENTRywgVmVydGV4LCBWZWN0b3IsIFBvbHlnb24gfSBmcm9tICcuL2NzZy1saWIuanMnO1xuaW1wb3J0ICcuL2NzZy13b3JrZXIuanMnO1xuXG5sZXQgeyBHZW9tZXRyeSwgQnVmZmVyR2VvbWV0cnksIFZlY3RvcjMsIFZlY3RvcjJ9ID0gVEhSRUU7XG5cbkNTRy5mcm9tR2VvbWV0cnkgPSBmdW5jdGlvbihnZW9tLG9iamVjdEluZGV4KSB7XG4gICAgbGV0IHBvbHlzID0gW107XG4gICAgaWYgKGdlb20uaXNHZW9tZXRyeSkge1xuICAgICAgICBsZXQgZnMgPSBnZW9tLmZhY2VzO1xuICAgICAgICBsZXQgdnMgPSBnZW9tLnZlcnRpY2VzO1xuICAgICAgICBsZXQgZm0gPSBbJ2EnLCAnYicsICdjJ107XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZnMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGxldCBmID0gZnNbaV07XG4gICAgICAgICAgICBsZXQgdmVydGljZXMgPSBbXTtcbiAgICAgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgMzsgaisrKVxuICAgICAgICAgICAgICAgIHZlcnRpY2VzLnB1c2gobmV3IFZlcnRleCh2c1tmW2ZtW2pdXV0sZi52ZXJ0ZXhOb3JtYWxzW2pdLGdlb20uZmFjZVZlcnRleFV2c1swXVtpXVtqXSkpO1xuICAgICAgICAgICAgcG9seXMucHVzaChuZXcgUG9seWdvbih2ZXJ0aWNlcywgb2JqZWN0SW5kZXgpKTtcbiAgICAgICAgfVxuICAgIH0gZWxzZSBpZiAoZ2VvbS5pc0J1ZmZlckdlb21ldHJ5KSB7XG4gICAgICAgIGxldCB2ZXJ0aWNlcywgbm9ybWFscywgdXZzO1xuICAgICAgICBsZXQgcG9zYXR0ciA9IGdlb20uYXR0cmlidXRlcy5wb3NpdGlvbjtcbiAgICAgICAgbGV0IG5vcm1hbGF0dHIgPSBnZW9tLmF0dHJpYnV0ZXMubm9ybWFsO1xuICAgICAgICBsZXQgdXZhdHRyID0gZ2VvbS5hdHRyaWJ1dGVzLnV2O1xuICAgICAgICBsZXQgY29sb3JhdHRyID0gZ2VvbS5hdHRyaWJ1dGVzLmNvbG9yO1xuICAgICAgICBsZXQgaW5kZXg7XG4gICAgICAgIGlmIChnZW9tLmluZGV4KVxuICAgICAgICAgICAgaW5kZXggPSBnZW9tLmluZGV4LmFycmF5O1xuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGluZGV4ID0gbmV3IEFycmF5KChwb3NhdHRyLmFycmF5Lmxlbmd0aCAvIHBvc2F0dHIuaXRlbVNpemUpIHwgMCk7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGluZGV4Lmxlbmd0aDsgaSsrKVxuICAgICAgICAgICAgICAgIGluZGV4W2ldID0gaTtcbiAgICAgICAgfVxuICAgICAgICBsZXQgdHJpQ291bnQgPSAoaW5kZXgubGVuZ3RoIC8gMykgfCAwO1xuICAgICAgICBwb2x5cyA9IG5ldyBBcnJheSh0cmlDb3VudCk7XG4gICAgICAgIGZvciAobGV0IGkgPSAwLCBwbGkgPSAwLCBsID0gaW5kZXgubGVuZ3RoOyBpIDwgbDsgaSArPSAzLFxuICAgICAgICBwbGkrKykge1xuICAgICAgICAgICAgbGV0IHZlcnRpY2VzID0gbmV3IEFycmF5KDMpO1xuICAgICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCAzOyBqKyspIHtcbiAgICAgICAgICAgICAgICBsZXQgdmkgPSBpbmRleFtpICsgal07XG4gICAgICAgICAgICAgICAgbGV0IHZwID0gdmkgKiAzO1xuICAgICAgICAgICAgICAgIGxldCB2dCA9IHZpICogMjtcbiAgICAgICAgICAgICAgICBsZXQgeCA9IHBvc2F0dHIuYXJyYXlbdnBdO1xuICAgICAgICAgICAgICAgIGxldCB5ID0gcG9zYXR0ci5hcnJheVt2cCArIDFdO1xuICAgICAgICAgICAgICAgIGxldCB6ID0gcG9zYXR0ci5hcnJheVt2cCArIDJdO1xuICAgICAgICAgICAgICAgIGxldCBueCA9IG5vcm1hbGF0dHIuYXJyYXlbdnBdO1xuICAgICAgICAgICAgICAgIGxldCBueSA9IG5vcm1hbGF0dHIuYXJyYXlbdnAgKyAxXTtcbiAgICAgICAgICAgICAgICBsZXQgbnogPSBub3JtYWxhdHRyLmFycmF5W3ZwICsgMl07XG4gICAgICAgICAgICAgICAgLy9sZXQgdSA9IHV2YXR0ci5hcnJheVt2dF1cbiAgICAgICAgICAgICAgICAvL2xldCB2ID0gdXZhdHRyLmFycmF5W3Z0ICsgMV1cbiAgICAgICAgICAgICAgICB2ZXJ0aWNlc1tqXSA9IG5ldyBWZXJ0ZXgoe1xuICAgICAgICAgICAgICAgICAgICB4LFxuICAgICAgICAgICAgICAgICAgICB5LFxuICAgICAgICAgICAgICAgICAgICB6XG4gICAgICAgICAgICAgICAgfSx7XG4gICAgICAgICAgICAgICAgICAgIHg6IG54LFxuICAgICAgICAgICAgICAgICAgICB5OiBueSxcbiAgICAgICAgICAgICAgICAgICAgejogbnpcbiAgICAgICAgICAgICAgICB9LHV2YXR0ciYme1xuICAgICAgICAgICAgICAgICAgICB4OiB1dmF0dHIuYXJyYXlbdnRdLFxuICAgICAgICAgICAgICAgICAgICB5OiB1dmF0dHIuYXJyYXlbdnQrMV0sXG4gICAgICAgICAgICAgICAgICAgIHo6IDBcbiAgICAgICAgICAgICAgICB9LGNvbG9yYXR0ciYme3g6Y29sb3JhdHRyLmFycmF5W3Z0XSx5OmNvbG9yYXR0ci5hcnJheVt2dCsxXSx6OmNvbG9yYXR0ci5hcnJheVt2dCsyXX0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcG9seXNbcGxpXSA9IG5ldyBQb2x5Z29uKHZlcnRpY2VzLG9iamVjdEluZGV4KTtcbiAgICAgICAgfVxuICAgIH0gZWxzZVxuICAgICAgICBjb25zb2xlLmVycm9yKFwiVW5zdXBwb3J0ZWQgQ1NHIGlucHV0IHR5cGU6XCIgKyBnZW9tLnR5cGUpO1xuICAgIHJldHVybiBDU0cuZnJvbVBvbHlnb25zKHBvbHlzKTtcbn07XG5cbmxldCB0dHZ2MCA9IG5ldyBUSFJFRS5WZWN0b3IzKCk7XG5sZXQgdG1wbTMgPSBuZXcgVEhSRUUuTWF0cml4MygpO1xuQ1NHLmZyb21NZXNoID0gZnVuY3Rpb24obWVzaCxvYmplY3RJbmRleCkge1xuICAgIGxldCBjc2cgPSBDU0cuZnJvbUdlb21ldHJ5KG1lc2guZ2VvbWV0cnksb2JqZWN0SW5kZXgpO1xuICAgIHRtcG0zLmdldE5vcm1hbE1hdHJpeChtZXNoLm1hdHJpeCk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjc2cucG9seWdvbnMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgbGV0IHAgPSBjc2cucG9seWdvbnNbaV07XG4gICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgcC52ZXJ0aWNlcy5sZW5ndGg7IGorKykge1xuICAgICAgICAgICAgbGV0IHYgPSBwLnZlcnRpY2VzW2pdO1xuICAgICAgICAgICAgdi5wb3MuY29weSh0dHZ2MC5jb3B5KHYucG9zKS5hcHBseU1hdHJpeDQobWVzaC5tYXRyaXgpKTtcbiAgICAgICAgICAgIHYubm9ybWFsLmNvcHkodHR2djAuY29weSh2Lm5vcm1hbCkuYXBwbHlNYXRyaXgzKHRtcG0zKSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGNzZztcbn07XG5cbmxldCBuYnVmMz0oY3QpPT57XG4gICAgcmV0dXJue1xuICAgICAgICB0b3A6MCxcbiAgICAgICAgYXJyYXk6bmV3IEZsb2F0MzJBcnJheShjdCksXG4gICAgICAgIHdyaXRlOmZ1bmN0aW9uKHYpeyh0aGlzLmFycmF5W3RoaXMudG9wKytdPXYueCk7KHRoaXMuYXJyYXlbdGhpcy50b3ArK109di55KTsodGhpcy5hcnJheVt0aGlzLnRvcCsrXT12LnopO31cbiAgICB9O1xufTtcbmxldCBuYnVmMj0oY3QpPT57XG4gICAgcmV0dXJue1xuICAgICAgICB0b3A6MCxcbiAgICAgICAgYXJyYXk6bmV3IEZsb2F0MzJBcnJheShjdCksXG4gICAgICAgIHdyaXRlOmZ1bmN0aW9uKHYpeyh0aGlzLmFycmF5W3RoaXMudG9wKytdPXYueCk7KHRoaXMuYXJyYXlbdGhpcy50b3ArK109di55KTt9XG4gICAgfTtcbn07XG5cbkNTRy50b0dlb21ldHJ5ID0gZnVuY3Rpb24oY3NnLCBidWZmZXJlZD10cnVlKSB7XG4gICAgbGV0IHBzID0gY3NnLnBvbHlnb25zO1xuICAgIGxldCBnZW9tO1xuICAgIGxldCBnMjtcbiAgICBpZighYnVmZmVyZWQpIC8vT2xkIGdlb21ldHJ5IHBhdGguLi5cbiAgICB7XG4gICAgICAgIGdlb20gPSBuZXcgR2VvbWV0cnkoKTtcbiAgICAgICAgbGV0IHZzID0gZ2VvbS52ZXJ0aWNlcztcbiAgICAgICAgbGV0IGZ2dXYgPSBnZW9tLmZhY2VWZXJ0ZXhVdnNbMF07XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGxldCBwID0gcHNbaV07XG4gICAgICAgICAgICBsZXQgcHZzID0gcC52ZXJ0aWNlcztcbiAgICAgICAgICAgIGxldCB2MCA9IHZzLmxlbmd0aDtcbiAgICAgICAgICAgIGxldCBwdmxlbiA9IHB2cy5sZW5ndGg7XG5cbiAgICAgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgcHZsZW47IGorKylcbiAgICAgICAgICAgICAgICB2cy5wdXNoKG5ldyBUSFJFRS5WZWN0b3IzKCkuY29weShwdnNbal0ucG9zKSk7XG5cbiAgICAgICAgICAgIGZvciAobGV0IGogPSAzOyBqIDw9IHB2bGVuOyBqKyspIHtcbiAgICAgICAgICAgICAgICBsZXQgZmMgPSBuZXcgVEhSRUUuRmFjZTMoKTtcbiAgICAgICAgICAgICAgICBsZXQgZnV2ID0gW107XG4gICAgICAgICAgICAgICAgZnZ1di5wdXNoKGZ1dik7XG4gICAgICAgICAgICAgICAgbGV0IGZubWwgPSBmYy52ZXJ0ZXhOb3JtYWxzO1xuICAgICAgICAgICAgICAgIGZjLmEgPSB2MDtcbiAgICAgICAgICAgICAgICBmYy5iID0gdjAgKyBqIC0gMjtcbiAgICAgICAgICAgICAgICBmYy5jID0gdjAgKyBqIC0gMTtcblxuICAgICAgICAgICAgICAgIGZubWwucHVzaChuZXcgVEhSRUUuVmVjdG9yMygpLmNvcHkocHZzWzBdLm5vcm1hbCkpO1xuICAgICAgICAgICAgICAgIGZubWwucHVzaChuZXcgVEhSRUUuVmVjdG9yMygpLmNvcHkocHZzW2ogLSAyXS5ub3JtYWwpKTtcbiAgICAgICAgICAgICAgICBmbm1sLnB1c2gobmV3IFRIUkVFLlZlY3RvcjMoKS5jb3B5KHB2c1tqIC0gMV0ubm9ybWFsKSk7XG4gICAgICAgICAgICAgICAgZnV2LnB1c2gobmV3IFRIUkVFLlZlY3RvcjMoKS5jb3B5KHB2c1swXS51dikpO1xuICAgICAgICAgICAgICAgIGZ1di5wdXNoKG5ldyBUSFJFRS5WZWN0b3IzKCkuY29weShwdnNbaiAtIDJdLnV2KSk7XG4gICAgICAgICAgICAgICAgZnV2LnB1c2gobmV3IFRIUkVFLlZlY3RvcjMoKS5jb3B5KHB2c1tqIC0gMV0udXYpKTtcblxuICAgICAgICAgICAgICAgIGZjLm5vcm1hbCA9IG5ldyBUSFJFRS5WZWN0b3IzKCkuY29weShwLnBsYW5lLm5vcm1hbCk7XG4gICAgICAgICAgICAgICAgZ2VvbS5mYWNlcy5wdXNoKGZjKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBnZW9tID0gbmV3IFRIUkVFLkJ1ZmZlckdlb21ldHJ5KCkuZnJvbUdlb21ldHJ5KGdlb20pO1xuICAgICAgICBnZW9tLnZlcnRpY2VzTmVlZFVwZGF0ZSA9IGdlb20uZWxlbWVudHNOZWVkVXBkYXRlID0gZ2VvbS5ub3JtYWxzTmVlZFVwZGF0ZSA9IHRydWU7XG4gICAgfWVsc2UgeyAvL0J1ZmZlckdlb21ldHJ5IHBhdGhcbiAgICAgICAgbGV0IHRyaUNvdW50ID0gMDtcbiAgICAgICAgcHMuZm9yRWFjaChwPT50cmlDb3VudCArPSAocC52ZXJ0aWNlcy5sZW5ndGggLSAyKSk7XG4gICAgICAgICBnZW9tID0gbmV3IFRIUkVFLkJ1ZmZlckdlb21ldHJ5KCk7XG5cbiAgICAgICAgbGV0IHZlcnRpY2VzID0gbmJ1ZjModHJpQ291bnQgKiAzICogMyk7XG4gICAgICAgIGxldCBub3JtYWxzID0gbmJ1ZjModHJpQ291bnQgKiAzICogMyk7XG4gICAgICAgIGxldCB1dnM7IC8vID0gbmJ1ZjIodHJpQ291bnQgKiAyICogMylcbiAgICAgICAgbGV0IGNvbG9ycztcbiAgICAgICAgbGV0IGdycHM9W107XG4gICAgICAgIHBzLmZvckVhY2gocD0+e1xuICAgICAgICAgICAgbGV0IHB2cyA9IHAudmVydGljZXM7XG4gICAgICAgICAgICBsZXQgcHZsZW4gPSBwdnMubGVuZ3RoO1xuICAgICAgICAgICAgaWYocC5zaGFyZWQhPT11bmRlZmluZWQpe1xuICAgICAgICAgICAgICAgIGlmKCFncnBzW3Auc2hhcmVkXSlncnBzW3Auc2hhcmVkXT1bXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmKHB2bGVuKXtcbiAgICAgICAgICAgICAgICBpZihwdnNbMF0uY29sb3IhPT11bmRlZmluZWQpe1xuICAgICAgICAgICAgICAgICAgICBpZighY29sb3JzKWNvbG9ycyA9IG5idWYzKHRyaUNvdW50KjMqMyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmKHB2c1swXS51diE9PXVuZGVmaW5lZCl7XG4gICAgICAgICAgICAgICAgICAgIGlmKCF1dnMpdXZzID0gbmJ1ZjIodHJpQ291bnQgKiAyICogMyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZm9yIChsZXQgaiA9IDM7IGogPD0gcHZsZW47IGorKykge1xuICAgICAgICAgICAgICAgIChwLnNoYXJlZCE9PXVuZGVmaW5lZCkgJiYgKGdycHNbcC5zaGFyZWRdLnB1c2godmVydGljZXMudG9wLzMsKHZlcnRpY2VzLnRvcC8zKSsxLCh2ZXJ0aWNlcy50b3AvMykrMikpO1xuICAgICAgICAgICAgICAgIHZlcnRpY2VzLndyaXRlKHB2c1swXS5wb3MpO1xuICAgICAgICAgICAgICAgIHZlcnRpY2VzLndyaXRlKHB2c1tqLTJdLnBvcyk7XG4gICAgICAgICAgICAgICAgdmVydGljZXMud3JpdGUocHZzW2otMV0ucG9zKTtcbiAgICAgICAgICAgICAgICBub3JtYWxzLndyaXRlKHB2c1swXS5ub3JtYWwpO1xuICAgICAgICAgICAgICAgIG5vcm1hbHMud3JpdGUocHZzW2otMl0ubm9ybWFsKTtcbiAgICAgICAgICAgICAgICBub3JtYWxzLndyaXRlKHB2c1tqLTFdLm5vcm1hbCk7XG4gICAgICAgICAgICAgICAgdXZzJiYocHZzWzBdLnV2KSYmKHV2cy53cml0ZShwdnNbMF0udXYpfHx1dnMud3JpdGUocHZzW2otMl0udXYpfHx1dnMud3JpdGUocHZzW2otMV0udXYpKTtcbiAgICAgICAgICAgICAgICBjb2xvcnMmJihjb2xvcnMud3JpdGUocHZzWzBdLmNvbG9yKXx8Y29sb3JzLndyaXRlKHB2c1tqLTJdLmNvbG9yKXx8Y29sb3JzLndyaXRlKHB2c1tqLTFdLmNvbG9yKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgKTtcbiAgICAgICAgZ2VvbS5zZXRBdHRyaWJ1dGUoJ3Bvc2l0aW9uJywgbmV3IFRIUkVFLkJ1ZmZlckF0dHJpYnV0ZSh2ZXJ0aWNlcy5hcnJheSwzKSk7XG4gICAgICAgIGdlb20uc2V0QXR0cmlidXRlKCdub3JtYWwnLCBuZXcgVEhSRUUuQnVmZmVyQXR0cmlidXRlKG5vcm1hbHMuYXJyYXksMykpO1xuICAgICAgICB1dnMgJiYgZ2VvbS5zZXRBdHRyaWJ1dGUoJ3V2JywgbmV3IFRIUkVFLkJ1ZmZlckF0dHJpYnV0ZSh1dnMuYXJyYXksMikpO1xuICAgICAgICBjb2xvcnMgJiYgZ2VvbS5zZXRBdHRyaWJ1dGUoJ2NvbG9yJywgbmV3IFRIUkVFLkJ1ZmZlckF0dHJpYnV0ZShjb2xvcnMuYXJyYXksMykpO1xuICAgICAgICBpZihncnBzLmxlbmd0aCl7XG4gICAgICAgICAgICBsZXQgaW5kZXggPSBbXTtcbiAgICAgICAgICAgIGxldCBnYmFzZT0wO1xuICAgICAgICAgICAgZm9yKGxldCBnaT0wO2dpPGdycHMubGVuZ3RoO2dpKyspe1xuICAgICAgICAgICAgICAgIGdlb20uYWRkR3JvdXAoZ2Jhc2UsZ3Jwc1tnaV0ubGVuZ3RoLGdpKTtcbiAgICAgICAgICAgICAgICBnYmFzZSs9Z3Jwc1tnaV0ubGVuZ3RoO1xuICAgICAgICAgICAgICAgIGluZGV4PWluZGV4LmNvbmNhdChncnBzW2dpXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBnZW9tLnNldEluZGV4KGluZGV4KTtcbiAgICAgICAgfVxuICAgICAgICBnMiA9IGdlb207XG4gICAgfVxuICAgIHJldHVybiBnZW9tO1xufTtcblxuQ1NHLnRvTWVzaCA9IGZ1bmN0aW9uKGNzZywgdG9NYXRyaXgsIHRvTWF0ZXJpYWwpIHtcbiAgICBsZXQgZ2VvbSA9IENTRy50b0dlb21ldHJ5KGNzZyk7XG4gICAgbGV0IGludiA9IG5ldyBUSFJFRS5NYXRyaXg0KCkuY29weSh0b01hdHJpeCkuaW52ZXJ0KCk7XG4gICAgZ2VvbS5hcHBseU1hdHJpeDQoaW52KTtcbiAgICBnZW9tLmNvbXB1dGVCb3VuZGluZ1NwaGVyZSgpO1xuICAgIGdlb20uY29tcHV0ZUJvdW5kaW5nQm94KCk7XG4gICAgbGV0IG0gPSBuZXcgVEhSRUUuTWVzaChnZW9tLHRvTWF0ZXJpYWwpO1xuICAgIG0ubWF0cml4LmNvcHkodG9NYXRyaXgpO1xuICAgIG0ubWF0cml4LmRlY29tcG9zZShtLnBvc2l0aW9uLCBtLnF1YXRlcm5pb24sIG0uc2NhbGUpO1xuICAgIG0ucm90YXRpb24uc2V0RnJvbVF1YXRlcm5pb24obS5xdWF0ZXJuaW9uKTtcbiAgICBtLnVwZGF0ZU1hdHJpeFdvcmxkKCk7XG4gICAgbS5jYXN0U2hhZG93ID0gbS5yZWNlaXZlU2hhZG93ID0gdHJ1ZTtcbiAgICByZXR1cm4gbTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IENTRztcbiJdfQ==
|
package/build/utils/helpers.js
CHANGED
@@ -1,12 +1,2 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
4
|
-
value: true
|
5
|
-
});
|
6
|
-
exports.preventRightClick = void 0;
|
7
|
-
|
8
|
-
var preventRightClick = function preventRightClick(event) {
|
9
|
-
event.preventDefault();
|
10
|
-
};
|
11
|
-
|
12
|
-
exports.preventRightClick = preventRightClick;
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.preventRightClick=void 0;var preventRightClick=function(e){e.preventDefault()};exports.preventRightClick=preventRightClick;
|
2
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInV0aWxzL2hlbHBlcnMuanMiXSwibmFtZXMiOlsicHJldmVudFJpZ2h0Q2xpY2siLCJldmVudCIsInByZXZlbnREZWZhdWx0Il0sIm1hcHBpbmdzIjoicUdBQU8sSUFBTUEsa0JBQW9CLFNBQUNDLEdBQ2hDQSxFQUFNQyIsImZpbGUiOiJ1dGlscy9oZWxwZXJzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IHByZXZlbnRSaWdodENsaWNrID0gKGV2ZW50KSA9PiB7XG4gIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG59O1xuIl19
|
@@ -1,161 +1,2 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
4
|
-
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
6
|
-
value: true
|
7
|
-
});
|
8
|
-
exports.getMinMaxCoordinates = exports.getKeyEvents = exports.getFloorParams = exports.getDirectionsFromDegrees = void 0;
|
9
|
-
|
10
|
-
var _react = _interopRequireDefault(require("react"));
|
11
|
-
|
12
|
-
var holdEvent = _interopRequireWildcard(require("hold-event"));
|
13
|
-
|
14
|
-
var _floor = _interopRequireDefault(require("../assets/img/floor.jpg"));
|
15
|
-
|
16
|
-
var _floorDark = _interopRequireDefault(require("../assets/img/floor-dark.png"));
|
17
|
-
|
18
|
-
var _floorWhite = _interopRequireDefault(require("../assets/img/floor-white.png"));
|
19
|
-
|
20
|
-
var _floorBathroom = _interopRequireDefault(require("../assets/img/floor-bathroom.jpg"));
|
21
|
-
|
22
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
23
|
-
|
24
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
25
|
-
|
26
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
27
|
-
|
28
|
-
var FloorParams = {
|
29
|
-
'default': {
|
30
|
-
texture: _floorDark.default,
|
31
|
-
roughnessMap: null,
|
32
|
-
color: '#FFFFFF'
|
33
|
-
},
|
34
|
-
'Kitchen': {
|
35
|
-
texture: _floorWhite.default,
|
36
|
-
roughnessMap: null,
|
37
|
-
color: '#FFFFFF'
|
38
|
-
},
|
39
|
-
'Balcony': {
|
40
|
-
texture: _floor.default,
|
41
|
-
roughnessMap: null,
|
42
|
-
color: '#DADADA'
|
43
|
-
},
|
44
|
-
'Bathroom': {
|
45
|
-
texture: _floorBathroom.default,
|
46
|
-
roughnessMap: null,
|
47
|
-
color: '#FFFFFF'
|
48
|
-
}
|
49
|
-
};
|
50
|
-
|
51
|
-
var getKeyEvents = function getKeyEvents(controls) {
|
52
|
-
var KEYCODE = {
|
53
|
-
W: 87,
|
54
|
-
A: 65,
|
55
|
-
S: 83,
|
56
|
-
D: 68,
|
57
|
-
ARROW_LEFT: 37,
|
58
|
-
ARROW_UP: 38,
|
59
|
-
ARROW_RIGHT: 39,
|
60
|
-
ARROW_DOWN: 40
|
61
|
-
};
|
62
|
-
var wKey = new holdEvent.KeyboardKeyHold(KEYCODE.W, 100);
|
63
|
-
var upKey = new holdEvent.KeyboardKeyHold(KEYCODE.ARROW_UP, 100);
|
64
|
-
var upArr = [wKey, upKey];
|
65
|
-
var aKey = new holdEvent.KeyboardKeyHold(KEYCODE.A, 100);
|
66
|
-
var leftKey = new holdEvent.KeyboardKeyHold(KEYCODE.ARROW_LEFT, 100);
|
67
|
-
var leftArr = [aKey, leftKey];
|
68
|
-
var sKey = new holdEvent.KeyboardKeyHold(KEYCODE.S, 100);
|
69
|
-
var downKey = new holdEvent.KeyboardKeyHold(KEYCODE.ARROW_DOWN, 100);
|
70
|
-
var downArr = [sKey, downKey];
|
71
|
-
var dKey = new holdEvent.KeyboardKeyHold(KEYCODE.D, 100);
|
72
|
-
var rightKey = new holdEvent.KeyboardKeyHold(KEYCODE.ARROW_RIGHT, 100);
|
73
|
-
var rightArr = [dKey, rightKey];
|
74
|
-
var keyEvents = [{
|
75
|
-
keys: upArr,
|
76
|
-
callback: function callback() {
|
77
|
-
return controls.forward(1, true);
|
78
|
-
}
|
79
|
-
}, {
|
80
|
-
keys: leftArr,
|
81
|
-
callback: function callback() {
|
82
|
-
return controls.truck(-1, 0, true);
|
83
|
-
}
|
84
|
-
}, {
|
85
|
-
keys: downArr,
|
86
|
-
callback: function callback() {
|
87
|
-
return controls.forward(-1, true);
|
88
|
-
}
|
89
|
-
}, {
|
90
|
-
keys: rightArr,
|
91
|
-
callback: function callback() {
|
92
|
-
return controls.truck(1, 0, true);
|
93
|
-
}
|
94
|
-
}];
|
95
|
-
return keyEvents;
|
96
|
-
};
|
97
|
-
|
98
|
-
exports.getKeyEvents = getKeyEvents;
|
99
|
-
|
100
|
-
var getFloorParams = function getFloorParams(type) {
|
101
|
-
var params = FloorParams[type];
|
102
|
-
if (!params) return FloorParams['default'];
|
103
|
-
return params;
|
104
|
-
};
|
105
|
-
|
106
|
-
exports.getFloorParams = getFloorParams;
|
107
|
-
|
108
|
-
var getMinMaxCoordinates = function getMinMaxCoordinates(walls) {
|
109
|
-
var maxX = 0;
|
110
|
-
var minX = Infinity;
|
111
|
-
var maxY = 0;
|
112
|
-
var minY = Infinity;
|
113
|
-
walls.forEach(function (_ref) {
|
114
|
-
var start = _ref.start,
|
115
|
-
end = _ref.end;
|
116
|
-
// CALCULATE MAX COORDS
|
117
|
-
if (start.x > maxX) maxX = start.x;
|
118
|
-
if (start.x > maxX) maxX = start.x;
|
119
|
-
if (end.y > maxY) maxY = end.y;
|
120
|
-
if (end.y > maxY) maxY = end.y; // CALCULATE MIN COORDS
|
121
|
-
|
122
|
-
if (start.x < minX) minX = start.x;
|
123
|
-
if (start.x < minX) minX = start.x;
|
124
|
-
if (end.y < minY) minY = end.y;
|
125
|
-
if (end.y < minY) minY = end.y;
|
126
|
-
});
|
127
|
-
return {
|
128
|
-
maxX: maxX,
|
129
|
-
minX: minX,
|
130
|
-
maxY: maxY,
|
131
|
-
minY: minY
|
132
|
-
};
|
133
|
-
};
|
134
|
-
|
135
|
-
exports.getMinMaxCoordinates = getMinMaxCoordinates;
|
136
|
-
|
137
|
-
var getDirectionsFromDegrees = function getDirectionsFromDegrees(deg) {
|
138
|
-
var directions = [];
|
139
|
-
|
140
|
-
if (deg > 80 && deg < 100) {
|
141
|
-
directions = ['forward'];
|
142
|
-
} else if (deg > 10 && deg < 80) {
|
143
|
-
directions = ['forward', 'right'];
|
144
|
-
} else if (deg > 100 && deg < 170) {
|
145
|
-
directions = ['forward', 'left'];
|
146
|
-
} else if (deg > 260 && deg < 280) {
|
147
|
-
directions = ['backward'];
|
148
|
-
} else if (deg > 190 && deg < 260) {
|
149
|
-
directions = ['backward', 'left'];
|
150
|
-
} else if (deg > 280 && deg < 350) {
|
151
|
-
directions = ['backward', 'right'];
|
152
|
-
} else if (deg > 350 || deg < 10) {
|
153
|
-
directions = ['right'];
|
154
|
-
} else if (deg > 170 && deg < 190) {
|
155
|
-
directions = ['left'];
|
156
|
-
}
|
157
|
-
|
158
|
-
return directions;
|
159
|
-
};
|
160
|
-
|
161
|
-
exports.getDirectionsFromDegrees = getDirectionsFromDegrees;
|
1
|
+
"use strict";function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(exports,"__esModule",{value:!0}),exports.getMinMaxCoordinates=exports.getKeyEvents=exports.getFloorParams=exports.getDirectionsFromDegrees=void 0;var _react=_interopRequireDefault(require("react")),holdEvent=_interopRequireWildcard(require("hold-event")),_floor=_interopRequireDefault(require("../assets/img/floor.jpg")),_floorDark=_interopRequireDefault(require("../assets/img/floor-dark.jpg")),_floorWhite=_interopRequireDefault(require("../assets/img/floor-white.jpg")),_floorBathroom=_interopRequireDefault(require("../assets/img/floor-bathroom.jpg"));function _getRequireWildcardCache(e){if("function"!=typeof WeakMap)return null;var r=new WeakMap,t=new WeakMap;return(_getRequireWildcardCache=function(e){return e?t:r})(e)}function _interopRequireWildcard(e,r){if(!r&&e&&e.__esModule)return e;if(null===e||"object"!==_typeof(e)&&"function"!=typeof e)return{default:e};r=_getRequireWildcardCache(r);if(r&&r.has(e))return r.get(e);var t,o,n={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(t in e)"default"!==t&&Object.prototype.hasOwnProperty.call(e,t)&&((o=a?Object.getOwnPropertyDescriptor(e,t):null)&&(o.get||o.set)?Object.defineProperty(n,t,o):n[t]=e[t]);return n.default=e,r&&r.set(e,n),n}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var FloorParams={default:{texture:_floorDark.default,roughnessMap:null,color:"#FFFFFF"},Kitchen:{texture:_floorWhite.default,roughnessMap:null,color:"#FFFFFF"},Balcony:{texture:_floor.default,roughnessMap:null,color:"#DADADA"},Bathroom:{texture:_floorBathroom.default,roughnessMap:null,color:"#FFFFFF"}},getKeyEvents=function(e){var r=87,t=65,o=83,n=68,a=37,l=38,u=39,i=40;return[{keys:[new holdEvent.KeyboardKeyHold(r,100),new holdEvent.KeyboardKeyHold(l,100)],callback:function(){return e.forward(1,!0)}},{keys:[new holdEvent.KeyboardKeyHold(t,100),new holdEvent.KeyboardKeyHold(a,100)],callback:function(){return e.truck(-1,0,!0)}},{keys:[new holdEvent.KeyboardKeyHold(o,100),new holdEvent.KeyboardKeyHold(i,100)],callback:function(){return e.forward(-1,!0)}},{keys:[new holdEvent.KeyboardKeyHold(n,100),new holdEvent.KeyboardKeyHold(u,100)],callback:function(){return e.truck(1,0,!0)}}]},getFloorParams=(exports.getKeyEvents=getKeyEvents,function(e){e=FloorParams[e];return e||FloorParams.default}),getMinMaxCoordinates=(exports.getFloorParams=getFloorParams,function(e){var t=0,o=1/0,n=0,a=1/0;return e.forEach(function(e){var r=e.start,e=e.end;r.x>t&&(t=r.x),r.x>t&&(t=r.x),e.y>n&&(n=e.y),e.y>n&&(n=e.y),r.x<o&&(o=r.x),r.x<o&&(o=r.x),e.y<a&&(a=e.y),e.y<a&&(a=e.y)}),{maxX:t,minX:o,maxY:n,minY:a}}),getDirectionsFromDegrees=(exports.getMinMaxCoordinates=getMinMaxCoordinates,function(e){var r=[];return 80<e&&e<100?r=["forward"]:10<e&&e<80?r=["forward","right"]:100<e&&e<170?r=["forward","left"]:260<e&&e<280?r=["backward"]:190<e&&e<260?r=["backward","left"]:280<e&&e<350?r=["backward","right"]:350<e||e<10?r=["right"]:170<e&&e<190&&(r=["left"]),r});exports.getDirectionsFromDegrees=getDirectionsFromDegrees;
|
2
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInV0aWxzL21vZGVsSGVscGVycy5qcyJdLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsImhvbGRFdmVudCIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwiX2Zsb29yIiwiX2Zsb29yRGFyayIsIl9mbG9vcldoaXRlIiwiX2Zsb29yQmF0aHJvb20iLCJGbG9vclBhcmFtcyIsImRlZmF1bHQiLCJ0ZXh0dXJlIiwiRmxvb3JEYXJrIiwicm91Z2huZXNzTWFwIiwiY29sb3IiLCJLaXRjaGVuIiwiRmxvb3JXaGl0ZSIsIkJhbGNvbnkiLCJGbG9vciIsIkJhdGhyb29tIiwiRmxvb3JCYXRocm9vbSIsImNvbnRyb2xzIiwiS0VZQ09ERSIsIkFSUk9XX0xFRlQiLCJBUlJPV19VUCIsIktleWJvYXJkS2V5SG9sZCIsIkFSUk9XX1JJR0hUIiwiZm9yd2FyZCIsIndLZXkiLCJ1cEtleSIsImxlZnRLZXkiLCJsZWZ0QXJyIiwiZG93bkFyciIsImRLZXkiLCJnZXRGbG9vclBhcmFtcyIsInR5cGUiLCJwYXJhbXMiLCJrZXlzIiwiZ2V0TWluTWF4Q29vcmRpbmF0ZXMiLCJ3YWxscyIsImNhbGxiYWNrIiwiSW5maW5pdHkiLCJtYXhZIiwibWluWSIsImZvckVhY2giLCJyaWdodEFyciIsInN0YXJ0IiwiX3JlZiIsImVuZCIsInRydWNrIiwieCIsIm1heFgiLCJ5Iiwia2V5RXZlbnRzIiwibWluWCIsImdldERpcmVjdGlvbnNGcm9tRGVncmVlcyIsImRlZyIsImRpcmVjdGlvbnMiXSwibWFwcGluZ3MiOiJzYUFBQSxJQUFBQSxPQUFBQyx1QkFBQUMsUUFBQSxVQUNBQyxVQUFBQyx3QkFBQUYsUUFBQSxlQUVBRyxPQUFBSix1QkFBQUMsUUFBQSw0QkFDQUksV0FBQUwsdUJBQUFDLFFBQUEsaUNBQ0FLLFlBQUFOLHVCQUFBQyxRQUFBLGtDQUNBTSxlQUFBUCx1QkFBQUMsUUFBQSxxQywwdEJBRUEsSUFBTU8sWUFBYyxDQVJwQkMs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QlcsRUFBWWQsQ0FBQUEsU0FWZGMiLCJmaWxlIjoidXRpbHMvbW9kZWxIZWxwZXJzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCAqIGFzIGhvbGRFdmVudCBmcm9tICdob2xkLWV2ZW50JztcblxuaW1wb3J0IEZsb29yIGZyb20gJy4uL2Fzc2V0cy9pbWcvZmxvb3IuanBnJztcbmltcG9ydCBGbG9vckRhcmsgZnJvbSAnLi4vYXNzZXRzL2ltZy9mbG9vci1kYXJrLmpwZyc7XG5pbXBvcnQgRmxvb3JXaGl0ZSBmcm9tICcuLi9hc3NldHMvaW1nL2Zsb29yLXdoaXRlLmpwZyc7XG5pbXBvcnQgRmxvb3JCYXRocm9vbSBmcm9tICcuLi9hc3NldHMvaW1nL2Zsb29yLWJhdGhyb29tLmpwZyc7XG5cbmNvbnN0IEZsb29yUGFyYW1zID0ge1xuICAnZGVmYXVsdCc6IHtcbiAgICB0ZXh0dXJlOiBGbG9vckRhcmssXG4gICAgcm91Z2huZXNzTWFwOiBudWxsLFxuICAgIGNvbG9yOiAnI0ZGRkZGRicsXG4gIH0sXG4gICdLaXRjaGVuJzoge1xuICAgIHRleHR1cmU6IEZsb29yV2hpdGUsXG4gICAgcm91Z2huZXNzTWFwOiBudWxsLFxuICAgIGNvbG9yOiAnI0ZGRkZGRicsXG4gIH0sXG4gICdCYWxjb255Jzoge1xuICAgIHRleHR1cmU6IEZsb29yLFxuICAgIHJvdWdobmVzc01hcDogbnVsbCxcbiAgICBjb2xvcjogJyNEQURBREEnLFxuICB9LFxuICAnQmF0aHJvb20nOiB7XG4gICAgdGV4dHVyZTogRmxvb3JCYXRocm9vbSxcbiAgICByb3VnaG5lc3NNYXA6IG51bGwsXG4gICAgY29sb3I6ICcjRkZGRkZGJyxcbiAgfSxcbn07XG5cbmNvbnN0IGdldEtleUV2ZW50cyA9IChjb250cm9scykgPT4ge1xuICBjb25zdCBLRVlDT0RFID0ge1xuICAgIFc6IDg3LCBBOiA2NSxcbiAgICBTOiA4MywgRDogNjgsXG4gICAgQVJST1dfTEVGVDogMzcsIEFSUk9XX1VQOiAzOCxcbiAgICBBUlJPV19SSUdIVDogMzksIEFSUk9XX0RPV046IDQwXG4gIH07XG5cbiAgY29uc3Qgd0tleSA9IG5ldyBob2xkRXZlbnQuS2V5Ym9hcmRLZXlIb2xkKEtFWUNPREUuVywgMTAwKTtcbiAgY29uc3QgdXBLZXkgPSBuZXcgaG9sZEV2ZW50LktleWJvYXJkS2V5SG9sZChLRVlDT0RFLkFSUk9XX1VQLCAxMDApO1xuICBjb25zdCB1cEFyciA9IFt3S2V5LCB1cEtleV07XG5cbiAgY29uc3QgYUtleSA9IG5ldyBob2xkRXZlbnQuS2V5Ym9hcmRLZXlIb2xkKEtFWUNPREUuQSwgMTAwKTtcbiAgY29uc3QgbGVmdEtleSA9IG5ldyBob2xkRXZlbnQuS2V5Ym9hcmRLZXlIb2xkKEtFWUNPREUuQVJST1dfTEVGVCwgMTAwKTtcbiAgY29uc3QgbGVmdEFyciA9IFthS2V5LCBsZWZ0S2V5XTtcblxuICBjb25zdCBzS2V5ID0gbmV3IGhvbGRFdmVudC5LZXlib2FyZEtleUhvbGQoS0VZQ09ERS5TLCAxMDApO1xuICBjb25zdCBkb3duS2V5ID0gbmV3IGhvbGRFdmVudC5LZXlib2FyZEtleUhvbGQoS0VZQ09ERS5BUlJPV19ET1dOLCAxMDApO1xuICBjb25zdCBkb3duQXJyID0gW3NLZXksIGRvd25LZXldO1xuXG4gIGNvbnN0IGRLZXkgPSBuZXcgaG9sZEV2ZW50LktleWJvYXJkS2V5SG9sZChLRVlDT0RFLkQsIDEwMCk7XG4gIGNvbnN0IHJpZ2h0S2V5ID0gbmV3IGhvbGRFdmVudC5LZXlib2FyZEtleUhvbGQoS0VZQ09ERS5BUlJPV19SSUdIVCwgMTAwKTtcbiAgY29uc3QgcmlnaHRBcnIgPSBbZEtleSwgcmlnaHRLZXldO1xuXG4gIGNvbnN0IGtleUV2ZW50cyA9IFtcbiAgICB7XG4gICAgICBrZXlzOiB1cEFycixcbiAgICAgIGNhbGxiYWNrOiAoKSA9PiBjb250cm9scy5mb3J3YXJkKDEsIHRydWUpLFxuICAgIH0sXG4gICAge1xuICAgICAga2V5czogbGVmdEFycixcbiAgICAgIGNhbGxiYWNrOiAoKSA9PiBjb250cm9scy50cnVjaygtMSwgMCwgdHJ1ZSksXG4gICAgfSxcbiAgICB7XG4gICAgICBrZXlzOiBkb3duQXJyLFxuICAgICAgY2FsbGJhY2s6ICgpID0+IGNvbnRyb2xzLmZvcndhcmQoLTEsIHRydWUpLFxuICAgIH0sXG4gICAge1xuICAgICAga2V5czogcmlnaHRBcnIsXG4gICAgICBjYWxsYmFjazogKCkgPT4gY29udHJvbHMudHJ1Y2soMSwgMCwgdHJ1ZSksXG4gICAgfSxcbiAgXTtcblxuICByZXR1cm4ga2V5RXZlbnRzO1xufTtcblxuY29uc3QgZ2V0Rmxvb3JQYXJhbXMgPSAodHlwZSkgPT4ge1xuICBjb25zdCBwYXJhbXMgPSBGbG9vclBhcmFtc1t0eXBlXTtcbiAgaWYgKCFwYXJhbXMpIHJldHVybiBGbG9vclBhcmFtc1snZGVmYXVsdCddO1xuICByZXR1cm4gcGFyYW1zO1xufTtcblxuY29uc3QgZ2V0TWluTWF4Q29vcmRpbmF0ZXMgPSAod2FsbHMpID0+IHtcbiAgbGV0IG1heFggPSAwO1xuICBsZXQgbWluWCA9IEluZmluaXR5O1xuICBsZXQgbWF4WSA9IDA7XG4gIGxldCBtaW5ZID0gSW5maW5pdHk7XG5cbiAgd2FsbHMuZm9yRWFjaCgoeyBzdGFydCwgZW5kIH0pID0+IHtcbiAgICAvLyBDQUxDVUxBVEUgTUFYIENPT1JEU1xuICAgIGlmIChzdGFydC54ID4gbWF4WCkgbWF4WCA9IHN0YXJ0Lng7XG4gICAgaWYgKHN0YXJ0LnggPiBtYXhYKSBtYXhYID0gc3RhcnQueDtcbiAgICBpZiAoZW5kLnkgPiBtYXhZKSBtYXhZID0gZW5kLnk7XG4gICAgaWYgKGVuZC55ID4gbWF4WSkgbWF4WSA9IGVuZC55O1xuXG4gICAgLy8gQ0FMQ1VMQVRFIE1JTiBDT09SRFNcbiAgICBpZiAoc3RhcnQueCA8IG1pblgpIG1pblggPSBzdGFydC54O1xuICAgIGlmIChzdGFydC54IDwgbWluWCkgbWluWCA9IHN0YXJ0Lng7XG4gICAgaWYgKGVuZC55IDwgbWluWSkgbWluWSA9IGVuZC55O1xuICAgIGlmIChlbmQueSA8IG1pblkpIG1pblkgPSBlbmQueTtcbiAgfSk7XG5cbiAgcmV0dXJuIHsgbWF4WCwgbWluWCwgbWF4WSwgbWluWSB9O1xufTtcblxuY29uc3QgZ2V0RGlyZWN0aW9uc0Zyb21EZWdyZWVzID0gKGRlZykgPT4ge1xuICBsZXQgZGlyZWN0aW9ucyA9IFtdO1xuICBpZiAoZGVnID4gODAgJiYgZGVnIDwgMTAwKSB7XG4gICAgZGlyZWN0aW9ucyA9IFsnZm9yd2FyZCddO1xuICB9IGVsc2UgaWYgKGRlZyA+IDEwICYmIGRlZyA8IDgwKSB7XG4gICAgZGlyZWN0aW9ucyA9IFsnZm9yd2FyZCcsICdyaWdodCddO1xuICB9IGVsc2UgaWYgKGRlZyA+IDEwMCAmJiBkZWcgPCAxNzApIHtcbiAgICBkaXJlY3Rpb25zID0gWydmb3J3YXJkJywgJ2xlZnQnXTtcbiAgfSBlbHNlIGlmIChkZWcgPiAyNjAgJiYgZGVnIDwgMjgwKSB7XG4gICAgZGlyZWN0aW9ucyA9IFsnYmFja3dhcmQnXTtcbiAgfSBlbHNlIGlmIChkZWcgPiAxOTAgJiYgZGVnIDwgMjYwKSB7XG4gICAgZGlyZWN0aW9ucyA9IFsnYmFja3dhcmQnLCAnbGVmdCddO1xuICB9IGVsc2UgaWYgKGRlZyA+IDI4MCAmJiBkZWcgPCAzNTApIHtcbiAgICBkaXJlY3Rpb25zID0gWydiYWNrd2FyZCcsICdyaWdodCddO1xuICB9IGVsc2UgaWYgKGRlZyA+IDM1MCB8fCBkZWcgPCAxMCkge1xuICAgIGRpcmVjdGlvbnMgPSBbJ3JpZ2h0J107XG4gIH0gZWxzZSBpZiAoZGVnID4gMTcwICYmIGRlZyA8IDE5MCkge1xuICAgIGRpcmVjdGlvbnMgPSBbJ2xlZnQnXTtcbiAgfVxuICByZXR1cm4gZGlyZWN0aW9ucztcbn07XG5cbmV4cG9ydCB7XG4gIGdldEtleUV2ZW50cyxcbiAgZ2V0Rmxvb3JQYXJhbXMsXG4gIGdldE1pbk1heENvb3JkaW5hdGVzLFxuICBnZXREaXJlY3Rpb25zRnJvbURlZ3JlZXMsXG59O1xuIl19
|