kitchen-simulator 4.0.11-react-18 → 4.1.1-react-18

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.
@@ -28,18 +28,18 @@ var _utils = require("../../components/viewer2d/utils");
28
28
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t2 in e) "default" !== _t2 && {}.hasOwnProperty.call(e, _t2) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t2)) && (i.get || i.set) ? o(f, _t2, i) : f[_t2] = e[_t2]); return f; })(e, t); }
29
29
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
30
30
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
31
- var INITIAL_NORMAL_MAP = '';
31
+ var INITIAL_NORMAL_MAP = "";
32
32
 
33
33
  // env Map ///////////////
34
34
  var paramsCounter = {
35
- envMap: 'HDR',
35
+ envMap: "HDR",
36
36
  roughness: 0.6,
37
37
  metalness: 0.3,
38
38
  exposure: 1
39
39
  // debug: true
40
40
  };
41
41
  var params = {
42
- envMap: 'HDR',
42
+ envMap: "HDR",
43
43
  roughness: 0.9,
44
44
  metalness: 0.1,
45
45
  metalness_glossy: 0.2,
@@ -47,18 +47,18 @@ var params = {
47
47
  // debug: false
48
48
  };
49
49
  var paramsModel = {
50
- envMap: 'HDR',
50
+ envMap: "HDR",
51
51
  roughness: 0.9,
52
52
  metalness: 0.2,
53
53
  exposure: 1.0
54
54
  // debug: false
55
55
  };
56
56
  var buttons = [{
57
- name: 'Edit',
58
- thumbnail: '/assets/img/svg/3d_item_warning_edit.svg'
57
+ name: "Edit",
58
+ thumbnail: "/assets/img/svg/3d_item_warning_edit.svg"
59
59
  }, {
60
- name: 'Info',
61
- thumbnail: '/assets/img/svg/3d_item_warning_info.svg'
60
+ name: "Info",
61
+ thumbnail: "/assets/img/svg/3d_item_warning_info.svg"
62
62
  }];
63
63
 
64
64
  // /////////////////////////
@@ -74,7 +74,7 @@ function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corner, sha
74
74
  var x = element.x,
75
75
  y = element.y,
76
76
  rotation = element.rotation;
77
- var el_DSN = 'el_DSN',
77
+ var el_DSN = "el_DSN",
78
78
  doorStylesKeys = [];
79
79
  var _element = element.toJS();
80
80
  if (_element.doorStyle !== undefined) {
@@ -82,10 +82,10 @@ function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corner, sha
82
82
  doorStylesKeys = Object.keys(_element.doorStyle.doorStyles);
83
83
  }
84
84
  }
85
- if ((doorStylesKeys.includes('euro_length') || doorStylesKeys.includes('euro_width') || doorStylesKeys.includes('euro_shape_svg')) && _element.doorStyle.doorStyles.is_euro_cds) {
85
+ if ((doorStylesKeys.includes("euro_length") || doorStylesKeys.includes("euro_width") || doorStylesKeys.includes("euro_shape_svg")) && _element.doorStyle.doorStyles.is_euro_cds) {
86
86
  el_DSN = _element.doorStyle.door_style_name;
87
87
  } else {
88
- el_DSN = 'el_DSN';
88
+ el_DSN = "el_DSN";
89
89
  }
90
90
  var width, depth, el_euro_length, el_euro_width, el_euro_length_unit, el_euro_width_unit, el_is_euro_cds, el_euro_shape_svg;
91
91
  if (doorStylesKeys.length > 0) {
@@ -95,41 +95,41 @@ function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corner, sha
95
95
  el_euro_shape_svg = _element.doorStyle.doorStyles.euro_shape_svg;
96
96
  }
97
97
  if (el_euro_length === undefined && el_euro_width === undefined) {
98
- el_DSN = 'el_DSN';
98
+ el_DSN = "el_DSN";
99
99
  }
100
- if (el_DSN === 'Euro & Frameless') {
100
+ if (el_DSN === "Euro & Frameless") {
101
101
  // sizeinfo["depth"] = el_euro_length;
102
102
  // sizeinfo["width"] = el_euro_width;
103
103
  }
104
- var tempWidth = element.properties.get('width');
105
- var tempDepth = element.properties.get('depth');
104
+ var tempWidth = element.properties.get("width");
105
+ var tempDepth = element.properties.get("depth");
106
106
  width = tempWidth && {
107
- length: tempWidth.get('_length'),
108
- unit: tempWidth.get('_unit')
107
+ length: tempWidth.get("_length"),
108
+ unit: tempWidth.get("_unit")
109
109
  };
110
110
  depth = tempDepth && {
111
- length: tempDepth.get('_length'),
112
- unit: tempDepth.get('_unit')
111
+ length: tempDepth.get("_length"),
112
+ unit: tempDepth.get("_unit")
113
113
  };
114
- var originalWidth = (0, _convertUnitsLite.convert)(sizeinfo.width).from('in').to('cm');
115
- var originalDepth = (0, _convertUnitsLite.convert)(sizeinfo.depth).from('in').to('cm');
116
- var newWidth = (0, _convertUnitsLite.convert)(width.length).from(width.unit).to('cm');
117
- var newDepth = (0, _convertUnitsLite.convert)(depth.length).from(depth.unit).to('cm');
114
+ var originalWidth = (0, _convertUnitsLite.convert)(sizeinfo.width).from("in").to("cm");
115
+ var originalDepth = (0, _convertUnitsLite.convert)(sizeinfo.depth).from("in").to("cm");
116
+ var newWidth = (0, _convertUnitsLite.convert)(width.length).from(width.unit).to("cm");
117
+ var newDepth = (0, _convertUnitsLite.convert)(depth.length).from(depth.unit).to("cm");
118
118
  var padding = (0, _convertUnitsLite.convert)(_constants.SHAPE_SVG_PADDING).from(_constants.UNIT_INCH).to(_constants.UNIT_CENTIMETER);
119
119
  var angle = element.rotation + 90;
120
120
  var textRotation = 0;
121
121
  if (Math.sin(angle * Math.PI / 180) < 0) {
122
122
  textRotation = 180;
123
123
  }
124
- var color = '#eee';
124
+ var color = "#eee";
125
125
  if (layoutpos == _constants.BASE_CABINET_LAYOUTPOS) {
126
- color = '#3f8db3';
126
+ color = "#3f8db3";
127
127
  }
128
128
  if (layoutpos == _constants.TALL_CABINET_LAYOUTPOS) {
129
- color = '#93b3be';
129
+ color = "#93b3be";
130
130
  }
131
131
  if (layoutpos == _constants.WALL_CABINET_LAYOUTPOS) {
132
- color = '#48b08dcc';
132
+ color = "#48b08dcc";
133
133
  }
134
134
  var splitStr = [];
135
135
  var txtContent = [];
@@ -143,7 +143,7 @@ function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corner, sha
143
143
  var dcId,
144
144
  doorStyle = element.doorStyle;
145
145
  if (doorStyle instanceof _immutable.Map) {
146
- dcId = doorStyle.get('id');
146
+ dcId = doorStyle.get("id");
147
147
  } else {
148
148
  dcId = doorStyle.id;
149
149
  }
@@ -162,7 +162,7 @@ function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corner, sha
162
162
  splitStr.push(type.slice(lineCount * rowCount));
163
163
  splitStr.forEach(function (el, key) {
164
164
  txtContent.push(/*#__PURE__*/_react["default"].createElement("text", {
165
- key: 'text' + key,
165
+ key: "text" + key,
166
166
  x: "0",
167
167
  y: newDepth / 2 - 12,
168
168
  dy: 16 * key,
@@ -172,16 +172,16 @@ function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corner, sha
172
172
  ,
173
173
  style: {
174
174
  fontWeight: 500,
175
- fontSize: '7px',
176
- textAnchor: 'middle',
177
- fill: '#FFF',
178
- display: 'block'
175
+ fontSize: "7px",
176
+ textAnchor: "middle",
177
+ fill: "#FFF",
178
+ display: "block"
179
179
  }
180
180
  }, el));
181
181
  });
182
182
  var style = {
183
- stroke: element.selected ? '#565658' : '#565658',
184
- strokeWidth: '2px',
183
+ stroke: element.selected ? "#565658" : "#565658",
184
+ strokeWidth: "2px",
185
185
  fill: color
186
186
  };
187
187
  // let arrow_style = { stroke: element.selected ? '#0096fd' : null, strokeWidth: "2px", fill: "#84e1ce" };
@@ -189,8 +189,8 @@ function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corner, sha
189
189
  var rendered = null;
190
190
  var svg_url, svg_width, svg_depth;
191
191
  if (shape_svg || el_euro_shape_svg) {
192
- if (typeof shape_svg == 'string' || typeof el_euro_shape_svg == 'string') {
193
- if (el_DSN === 'Euro & Frameless' && el_is_euro_cds) {
192
+ if (typeof shape_svg == "string" || typeof el_euro_shape_svg == "string") {
193
+ if (el_DSN === "Euro & Frameless" && el_is_euro_cds) {
194
194
  svg_url = el_euro_shape_svg;
195
195
  svg_width = newWidth;
196
196
  svg_depth = newDepth;
@@ -217,20 +217,20 @@ function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corner, sha
217
217
  var warning_buttons = /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("g", {
218
218
  id: "warning_info_2d",
219
219
  style: {
220
- cursor: 'pointer',
220
+ cursor: "pointer",
221
221
  transform: "translate(".concat(-transX, "px, ").concat(-transY, "px)")
222
222
  },
223
223
  onMouseEnter: function onMouseEnter(event) {
224
224
  var bbox = event.target.getBoundingClientRect();
225
- if (document.getElementById('warning_box_2d')) {
226
- document.getElementById('warning_box_2d').style.display = 'flex';
227
- document.getElementById('warning_box_2d').style.top = "".concat(bbox.top - 60, "px");
228
- document.getElementById('warning_box_2d').style.left = "".concat(bbox.left, "px");
225
+ if (document.getElementById("warning_box_2d")) {
226
+ document.getElementById("warning_box_2d").style.display = "flex";
227
+ document.getElementById("warning_box_2d").style.top = "".concat(bbox.top - 60, "px");
228
+ document.getElementById("warning_box_2d").style.left = "".concat(bbox.left, "px");
229
229
  }
230
230
  },
231
231
  onMouseLeave: function onMouseLeave() {
232
- if (document.getElementById('warning_box_2d')) {
233
- document.getElementById('warning_box_2d').style.display = 'none';
232
+ if (document.getElementById("warning_box_2d")) {
233
+ document.getElementById("warning_box_2d").style.display = "none";
234
234
  }
235
235
  }
236
236
  }, /*#__PURE__*/_react["default"].createElement("circle", {
@@ -249,7 +249,7 @@ function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corner, sha
249
249
  href: buttons[1].thumbnail
250
250
  })), /*#__PURE__*/_react["default"].createElement("g", {
251
251
  style: {
252
- cursor: 'pointer',
252
+ cursor: "pointer",
253
253
  transform: "translate(".concat(transX, "px, ").concat(transY, "px)")
254
254
  },
255
255
  "data-element-root": true,
@@ -295,7 +295,7 @@ function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corner, sha
295
295
  }, /*#__PURE__*/_react["default"].createElement("image", {
296
296
  preserveAspectRatio: "none",
297
297
  style: {
298
- pointerEvents: 'none'
298
+ pointerEvents: "none"
299
299
  },
300
300
  href: svg_url,
301
301
  width: "".concat(newWidth + 2 * padding_width),
@@ -308,16 +308,16 @@ function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corner, sha
308
308
  y: "".concat(padding_depth),
309
309
  width: "".concat(newWidth),
310
310
  height: "".concat(newDepth),
311
- visibility: 'hidden',
311
+ visibility: "hidden",
312
312
  style: {
313
- pointerEvents: 'all',
313
+ pointerEvents: "all",
314
314
  opacity: 0.7,
315
- postion: 'relative'
315
+ postion: "relative"
316
316
  }
317
317
  }), /*#__PURE__*/_react["default"].createElement("g", {
318
318
  transform: "translate(".concat(padding_width, ",").concat(padding_depth, ")")
319
- }, txtContent)), element.category === 'cabinet' && /*#__PURE__*/_react["default"].createElement("g", {
320
- visibility: (0, _utils.isWarningItem)(element) ? 'visible' : 'hidden'
319
+ }, txtContent)), element.category === "cabinet" && /*#__PURE__*/_react["default"].createElement("g", {
320
+ visibility: (0, _utils.isWarningItem)(element) ? "visible" : "hidden"
321
321
  }, warning_buttons)));
322
322
  } else {
323
323
  rendered = /*#__PURE__*/_react["default"].createElement("g", {
@@ -404,38 +404,38 @@ var assignUVs = function assignUVs(geometry) {
404
404
  function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner) {
405
405
  var mode = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : null;
406
406
  if (element.doorStyle.constructor !== _immutable.Map) {
407
- element = element.set('doorStyle', (0, _immutable.fromJS)(element.doorStyle));
407
+ element = element.set("doorStyle", (0, _immutable.fromJS)(element.doorStyle));
408
408
  }
409
- if (element.doorStyle.toJS().handle_gltf !== '') {
409
+ if (element.doorStyle.toJS().handle_gltf !== "") {
410
410
  // Check element has doorHandle
411
411
  for (var i = 1; i < 10; i++) {
412
- element = element.setIn(['doorStyle', 'doorStyles', 'door_handle_' + i + '_gltf'], element.doorStyle.toJS().handle_gltf);
413
- element = element.setIn(['doorStyle', 'doorStyles', 'fixed_drawer_door_handle_' + i + '_gltf'], element.doorStyle.toJS().handle_gltf);
414
- element = element.setIn(['doorStyle', 'doorStyles', 'drawer_door_handle_' + i + '_gltf'], element.doorStyle.toJS().handle_gltf);
412
+ element = element.setIn(["doorStyle", "doorStyles", "door_handle_" + i + "_gltf"], element.doorStyle.toJS().handle_gltf);
413
+ element = element.setIn(["doorStyle", "doorStyles", "fixed_drawer_door_handle_" + i + "_gltf"], element.doorStyle.toJS().handle_gltf);
414
+ element = element.setIn(["doorStyle", "doorStyles", "drawer_door_handle_" + i + "_gltf"], element.doorStyle.toJS().handle_gltf);
415
415
  }
416
416
  }
417
417
  var width = {
418
418
  length: sizeinfo.width,
419
- unit: 'in'
419
+ unit: "in"
420
420
  };
421
421
  var depth = {
422
422
  length: sizeinfo.depth,
423
- unit: 'in'
423
+ unit: "in"
424
424
  };
425
425
  var height = {
426
426
  length: sizeinfo.height,
427
- unit: 'in'
427
+ unit: "in"
428
428
  };
429
- var newWidth = (0, _convertUnitsLite.convert)(width.length).from(width.unit).to('in');
430
- var newDepth = (0, _convertUnitsLite.convert)(depth.length).from(depth.unit).to('in');
431
- var newHeight = (0, _convertUnitsLite.convert)(height.length).from(height.unit).to('in');
432
- var mainName = ''; // to get name structure//
433
- if (element.properties.get('width')) newWidth = element.getIn(['properties', 'width', '_length']);
434
- if (element.properties.get('depth')) newDepth = element.getIn(['properties', 'depth', '_length']);
435
- if (element.properties.get('height')) newHeight = element.getIn(['properties', 'height', '_length']);
429
+ var newWidth = (0, _convertUnitsLite.convert)(width.length).from(width.unit).to("in");
430
+ var newDepth = (0, _convertUnitsLite.convert)(depth.length).from(depth.unit).to("in");
431
+ var newHeight = (0, _convertUnitsLite.convert)(height.length).from(height.unit).to("in");
432
+ var mainName = ""; // to get name structure//
433
+ if (element.properties.get("width")) newWidth = element.getIn(["properties", "width", "_length"]);
434
+ if (element.properties.get("depth")) newDepth = element.getIn(["properties", "depth", "_length"]);
435
+ if (element.properties.get("height")) newHeight = element.getIn(["properties", "height", "_length"]);
436
436
  var structure = structure_json;
437
437
  // structure.push({name:'model', url: '/assets/model/DCM.gltf'});
438
- structure.model = '/assets/model/DCM.gltf';
438
+ structure.model = "/assets/model/DCM.gltf";
439
439
  var placeholders = structure.placeholders;
440
440
  var doorStyles = null;
441
441
  var color = 0xffffff,
@@ -445,20 +445,20 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
445
445
  if (layer.toJS().counterTop.uri) {
446
446
  counterTop.uri = layer.toJS().counterTop.uri;
447
447
  }
448
- if ('name' in element.doorStyle) {
448
+ if ("name" in element.doorStyle) {
449
449
  doorStyles = new _immutable.Map(element.doorStyle.doorStyles);
450
450
  color = element.doorStyle.color;
451
451
  glossness = element.doorStyle.glossness;
452
452
  handleMaterial.metalness = element.doorStyle.metalness;
453
453
  handleMaterial.roughness = element.doorStyle.roughness;
454
454
  } else if (element.doorStyle != null && element.doorStyle) {
455
- doorStyles = element.doorStyle.get('doorStyles');
456
- color = element.doorStyle.get('color');
457
- glossness = element.doorStyle.get('glossness');
458
- handleMaterial.metalness = element.doorStyle.get('metalness');
459
- handleMaterial.roughness = element.doorStyle.get('roughness');
455
+ doorStyles = element.doorStyle.get("doorStyles");
456
+ color = element.doorStyle.get("color");
457
+ glossness = element.doorStyle.get("glossness");
458
+ handleMaterial.metalness = element.doorStyle.get("metalness");
459
+ handleMaterial.roughness = element.doorStyle.get("roughness");
460
460
  }
461
- if (color === undefined) color = '#ffffff';
461
+ if (color === undefined) color = "#ffffff";
462
462
  if (glossness === undefined) glossness = 1;
463
463
  var tempDoorStyles = doorStyles.toJS();
464
464
  var tempPlaceholders = structure.tempPlaceholders;
@@ -483,13 +483,13 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
483
483
  areaMaterial.side = Three.DoubleSide;
484
484
  // areaMaterial.envMap = textureCube;
485
485
  if ((0, _helper.isEmpty)(doorStyles)) {
486
- var normalMap = doorStyles.get('base') || INITIAL_NORMAL_MAP;
486
+ var normalMap = doorStyles.get("base") || INITIAL_NORMAL_MAP;
487
487
  var interiortexture = loadTexture(normalMap);
488
488
  applyTexture(areaMaterial, interiortexture, 100, 100);
489
489
  }
490
490
  var object1 = object;
491
- var newAltitude = element.properties.get('altitude').get('_length');
492
- var newUnit = element.properties.get('altitude').get('_unit') || 'in';
491
+ var newAltitude = element.properties.get("altitude").get("_length");
492
+ var newUnit = element.properties.get("altitude").get("_unit") || "in";
493
493
  newAltitude = (0, _convertUnitsLite.convert)(newAltitude).from(newUnit).to(scene.unit);
494
494
  var _element = element.toJS();
495
495
  if (!_element.doorStyle.doorStyles.is_euro_cds) {
@@ -506,27 +506,27 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
506
506
  var door_match = child.name.match(matchStr);
507
507
  if (door_match && door_match.length > 2) {
508
508
  var _child$children$;
509
- var rotate_match_text = element.properties.toJS().flip_doorhandle ? 'rotate_L' : 'rotate_R';
510
- if (door_match[2] === '_L') {
511
- rotate_match_text = element.properties.toJS().flip_doorhandle ? 'rotate_R' : 'rotate_L';
509
+ var rotate_match_text = element.properties.toJS().flip_doorhandle ? "rotate_L" : "rotate_R";
510
+ if (door_match[2] === "_L") {
511
+ rotate_match_text = element.properties.toJS().flip_doorhandle ? "rotate_R" : "rotate_L";
512
512
  }
513
513
  var isDoubleDoor = door_match && door_match[2] !== undefined;
514
514
  (_child$children$ = child.children[0]) === null || _child$children$ === void 0 || _child$children$.children.forEach(function (it) {
515
515
  var _it$name, _it$children;
516
- if (it !== null && it !== void 0 && (_it$name = it.name) !== null && _it$name !== void 0 && _it$name.includes('handle') && (_it$children = it.children) !== null && _it$children !== void 0 && _it$children.length && is_corner === 1 && isDoubleDoor) {
516
+ if (it !== null && it !== void 0 && (_it$name = it.name) !== null && _it$name !== void 0 && _it$name.includes("handle") && (_it$children = it.children) !== null && _it$children !== void 0 && _it$children.length && is_corner === 1 && isDoubleDoor) {
517
517
  var _child$name, _child$name2, _object1$children, _t0$name, _t0$children;
518
- var tname = child !== null && child !== void 0 && (_child$name = child.name) !== null && _child$name !== void 0 && _child$name.endsWith('_L') ? child.name.replace('_L', '_R') : child === null || child === void 0 || (_child$name2 = child.name) === null || _child$name2 === void 0 ? void 0 : _child$name2.replace('_R', '_L');
518
+ var tname = child !== null && child !== void 0 && (_child$name = child.name) !== null && _child$name !== void 0 && _child$name.endsWith("_L") ? child.name.replace("_L", "_R") : child === null || child === void 0 || (_child$name2 = child.name) === null || _child$name2 === void 0 ? void 0 : _child$name2.replace("_R", "_L");
519
519
  var tmp = (object1 === null || object1 === void 0 || (_object1$children = object1.children) === null || _object1$children === void 0 ? void 0 : _object1$children.filter(function (item) {
520
520
  return (item === null || item === void 0 ? void 0 : item.name) === tname;
521
521
  })) || [];
522
522
  var t0 = tmp[0];
523
- var filterStr = t0 !== null && t0 !== void 0 && (_t0$name = t0.name) !== null && _t0$name !== void 0 && _t0$name.endsWith('_L') ? 'rotate_L' : 'rotate_R';
523
+ var filterStr = t0 !== null && t0 !== void 0 && (_t0$name = t0.name) !== null && _t0$name !== void 0 && _t0$name.endsWith("_L") ? "rotate_L" : "rotate_R";
524
524
  var tposArr = (t0 === null || t0 === void 0 || (_t0$children = t0.children) === null || _t0$children === void 0 || (_t0$children = _t0$children[0]) === null || _t0$children === void 0 || (_t0$children = _t0$children.children) === null || _t0$children === void 0 ? void 0 : _t0$children.filter(function (item) {
525
525
  var _item$name;
526
526
  return item === null || item === void 0 || (_item$name = item.name) === null || _item$name === void 0 ? void 0 : _item$name.endsWith(filterStr);
527
527
  })) || [];
528
528
  var tpos0 = tposArr[0];
529
- if (it.name.includes('base_end')) {
529
+ if (it.name.includes("base_end")) {
530
530
  var _it$position$x, _it$position, _it$position$y, _it$position2, _tpos0$position$x, _tpos0$position;
531
531
  door_animate_offset[child.name] = {
532
532
  x: -2 * ((_it$position$x = (_it$position = it.position) === null || _it$position === void 0 ? void 0 : _it$position.x) !== null && _it$position$x !== void 0 ? _it$position$x : 0) - 0.12,
@@ -594,16 +594,16 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
594
594
  // vertical line - 4 lines around object//////////////////////////
595
595
  var vLineGeom = new Three.BufferGeometry();
596
596
  var vertices = [(max.x - min.x) / 2 + min.x, 0, max.z, (max.x - min.x) / 2 + min.x, 0, max.z + 1.3];
597
- vLineGeom.setAttribute('position', new Three.BufferAttribute(new Float32Array(vertices), 3));
597
+ vLineGeom.setAttribute("position", new Three.BufferAttribute(new Float32Array(vertices), 3));
598
598
  var vLineGeom1 = new Three.BufferGeometry();
599
599
  var vertices1 = [(max.x - min.x) / 2 + min.x, 0, min.z, (max.x - min.x) / 2 + min.x, 0, min.z - 1.3];
600
- vLineGeom1.setAttribute('position', new Three.BufferAttribute(new Float32Array(vertices1), 3));
600
+ vLineGeom1.setAttribute("position", new Three.BufferAttribute(new Float32Array(vertices1), 3));
601
601
  var vLineGeom2 = new Three.BufferGeometry();
602
602
  var vertices2 = [max.x, 0, max.z - (max.z - min.z) / 2, max.x + 1.3, 0, max.z - (max.z - min.z) / 2];
603
- vLineGeom2.setAttribute('position', new Three.BufferAttribute(new Float32Array(vertices2), 3));
603
+ vLineGeom2.setAttribute("position", new Three.BufferAttribute(new Float32Array(vertices2), 3));
604
604
  var vLineGeom3 = new Three.BufferGeometry();
605
605
  var vertices3 = [min.x, 0, max.z - (max.z - min.z) / 2, min.x - 1.3, 0, max.z - (max.z - min.z) / 2];
606
- vLineGeom3.setAttribute('position', new Three.BufferAttribute(new Float32Array(vertices3), 3));
606
+ vLineGeom3.setAttribute("position", new Three.BufferAttribute(new Float32Array(vertices3), 3));
607
607
  // ///////////////////////////////////////
608
608
 
609
609
  // set names of transform object
@@ -616,12 +616,12 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
616
616
  color: new Three.Color(0xffffff).convertLinearToSRGB(),
617
617
  colorWrite: true
618
618
  }));
619
- rotFillObj.name = 'rotate';
619
+ rotFillObj.name = "rotate";
620
620
  var upObj = new Three.Mesh(upwardsGeom, new Three.MeshBasicMaterial({
621
621
  color: new Three.Color(0xffffff).convertLinearToSRGB(),
622
622
  side: Three.DoubleSide
623
623
  }));
624
- upObj.name = 'transUp';
624
+ upObj.name = "transUp";
625
625
  var mBox = new Three.Mesh(moveBox, new Three.MeshBasicMaterial({
626
626
  color: new Three.Color(0xdd6699).convertLinearToSRGB(),
627
627
  side: Three.DoubleSide,
@@ -663,7 +663,7 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
663
663
  //rotObj.translateOnAxis(uVec, 1);
664
664
  upObj.translateOnAxis(uVec, 1);
665
665
  upObj.translateY(max.y - min.y);
666
- mBox.name = 'TransformBox';
666
+ mBox.name = "TransformBox";
667
667
  mBox.translateOnAxis(new Three.Vector3(uVec.x, uVec.y + (max.y - min.y) / 2, uVec.z), 1);
668
668
  mBox.scale.set(1.01, 1.01, 1.01);
669
669
 
@@ -692,7 +692,7 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
692
692
  asrtObj.add(mBox);
693
693
  asrtObj.scale.set(1 / object.scale.x, object.scale.y, 1 / object.scale.z);
694
694
  //asrtObj.translateY(newAltitude / scalevec.y);
695
- asrtObj.name = 'TransformGizmo';
695
+ asrtObj.name = "TransformGizmo";
696
696
  // add assets Objects Group
697
697
  object1.add(asrtObj);
698
698
 
@@ -705,7 +705,7 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
705
705
  SceneCreator.getDistances(layer);
706
706
  }, 100);
707
707
  }
708
- var flip_doorhandle = element.properties.get('flip_doorhandle');
708
+ var flip_doorhandle = element.properties.get("flip_doorhandle");
709
709
  if (flip_doorhandle) {
710
710
  SceneCreator.updateDoorHandleMesh(element, object1, true);
711
711
  }
@@ -721,14 +721,14 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
721
721
  transparency: 0.8
722
722
  });
723
723
  obj.material = material;
724
- } else if (name.startsWith('sink_')) {
724
+ } else if (name.startsWith("sink_")) {
725
725
  // texture = loadTexture('/assets/img/texture/steel.jpg');
726
726
 
727
727
  var _material;
728
728
  // Get color from name
729
- if (name.includes('black') || name.includes('white')) {
729
+ if (name.includes("black") || name.includes("white")) {
730
730
  var _color2;
731
- if (name.includes('black')) {
731
+ if (name.includes("black")) {
732
732
  _color2 = new Three.Color(0x555555).convertLinearToSRGB();
733
733
  } else {
734
734
  _color2 = 0xffffff;
@@ -761,14 +761,14 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
761
761
  var open_doors = element.toJS().properties.open_doors;
762
762
  var object_match = obj.name.match(/\d_(interior_drawer[^LR1-9]*)(_[LR1-9])?$/) || obj.name.match(matchStr);
763
763
  if (object_match && object_match.length > 2) {
764
- var isDoor = object_match[1] === 'door';
764
+ var isDoor = object_match[1] === "door";
765
765
  if (isDoor) {
766
766
  var offsetData = object1.userData.door_animate_offset[obj.name];
767
767
  // Open Door
768
- (0, _helper.animateDoor)(offsetData, obj, open_doors, element.toJS(), is_corner, 'Opened2D');
768
+ (0, _helper.animateDoor)(offsetData, obj, open_doors, element.toJS(), is_corner, "Opened2D");
769
769
  } else {
770
770
  // Open Drawer
771
- (0, _helper.translateDrawer)(element.toJS(), obj, open_doors, 'Opened2D');
771
+ (0, _helper.translateDrawer)(element.toJS(), obj, open_doors, "Opened2D");
772
772
  }
773
773
  }
774
774
  }
@@ -778,30 +778,30 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
778
778
  // keys in structure
779
779
  var keys = Object.keys(structure);
780
780
  // if exist in cached Objects
781
- if (element.type + color + 'doorStyle' + JSON.stringify(doorStyles.toJS()) + element.counterTop.uri in cachedObject) {
782
- var _objGroup = cachedObject[element.type + color + 'doorStyle' + JSON.stringify(doorStyles.toJS())].clone();
781
+ if (element.type + color + "doorStyle" + JSON.stringify(doorStyles.toJS()) + element.counterTop.uri in cachedObject) {
782
+ var _objGroup = cachedObject[element.type + color + "doorStyle" + JSON.stringify(doorStyles.toJS())].clone();
783
783
  return Promise.resolve(onLoadItem(_objGroup.clone()));
784
784
  }
785
785
 
786
786
  // base Object/////
787
787
  var objGroup = null;
788
788
  var _loadGLTFs = function loadGLTFs(i) {
789
- if (keys[i] === 'animation') {
789
+ if (keys[i] === "animation") {
790
790
  // if animation info
791
791
  i++;
792
792
  return _loadGLTFs(i);
793
793
  }
794
- if (keys[i] === 'placeholders') {
794
+ if (keys[i] === "placeholders") {
795
795
  // if placeholders group
796
796
  i++;
797
797
  return _loadGLTFs(i);
798
798
  }
799
799
  if (i === keys.length) {
800
800
  // if end of keys
801
- cachedObject[element.type + color + 'doorStyle' + JSON.stringify(doorStyles.toJS())] = objGroup.clone(); //register to cachedObject
802
- return onLoadItem(cachedObject[element.type + color + 'doorStyle' + JSON.stringify(doorStyles.toJS())].clone());
801
+ cachedObject[element.type + color + "doorStyle" + JSON.stringify(doorStyles.toJS())] = objGroup.clone(); //register to cachedObject
802
+ return onLoadItem(cachedObject[element.type + color + "doorStyle" + JSON.stringify(doorStyles.toJS())].clone());
803
803
  }
804
- if (keys[i] === 'base') {
804
+ if (keys[i] === "base") {
805
805
  // if base Objects
806
806
  i++;
807
807
  return _loadGLTFs(i);
@@ -814,15 +814,15 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
814
814
  }
815
815
  for (var j = 0; j < placeholderStructure.length; j++) {
816
816
  var phData = placeholderStructure[j];
817
- var phs = phData.split('/');
818
- var temp = phData.split('/');
817
+ var phs = phData.split("/");
818
+ var temp = phData.split("/");
819
819
  // placeholder remake////////////////
820
820
  for (var k = 0; k < phs.length; k++) {
821
821
  if (phs[k] in placeholders) {
822
822
  var placeholderphs = placeholders[phs[k]];
823
823
  var key = placeholderStructure.length / placeholderphs.length;
824
824
  phs[k] = placeholderphs[Math.floor(j / key)];
825
- var splitedData = phs[k].split('/');
825
+ var splitedData = phs[k].split("/");
826
826
  if (splitedData.length > 1) {
827
827
  phs[k] = splitedData[splitedData.length - 1];
828
828
  for (var m = splitedData.length - 2; m >= 0; m--) {
@@ -833,41 +833,41 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
833
833
  k = -1;
834
834
  continue;
835
835
  }
836
- if (phs[k].indexOf('ph') == -1) {
836
+ if (phs[k].indexOf("ph") == -1) {
837
837
  var _url = structure[temp[k - 1]];
838
- if (temp[k - 1] + '_doorStyle' + element.type + 'doorStyle' + JSON.stringify(doorStyles.toJS()) in structure) {
839
- if (structure[temp[k - 1] + '_doorStyle' + element.type + 'doorStyle' + JSON.stringify(doorStyles.toJS())] != null) {
840
- _url = structure[temp[k - 1] + '_doorStyle' + element.type + 'doorStyle' + JSON.stringify(doorStyles.toJS())];
838
+ if (temp[k - 1] + "_doorStyle" + element.type + "doorStyle" + JSON.stringify(doorStyles.toJS()) in structure) {
839
+ if (structure[temp[k - 1] + "_doorStyle" + element.type + "doorStyle" + JSON.stringify(doorStyles.toJS())] != null) {
840
+ _url = structure[temp[k - 1] + "_doorStyle" + element.type + "doorStyle" + JSON.stringify(doorStyles.toJS())];
841
841
  }
842
842
  }
843
843
  if ((0, _typeof2["default"])(_url) == Array) _url = _url[0];
844
- var uData = _url.split('/');
844
+ var uData = _url.split("/");
845
845
  uData = uData[uData.length - 1];
846
846
  uData = uData.slice(0, -5);
847
- var datas = uData.split('_');
847
+ var datas = uData.split("_");
848
848
  uData = datas[1];
849
849
  for (var _i = 2; _i < datas.length; _i++) {
850
- uData += '_';
850
+ uData += "_";
851
851
  uData += datas[_i];
852
852
  }
853
- uData = mainName.replace('main', uData);
854
- phs[k] = 'ph_' + uData + '_' + phs[k];
853
+ uData = mainName.replace("main", uData);
854
+ phs[k] = "ph_" + uData + "_" + phs[k];
855
855
  }
856
856
  }
857
857
  phsArray.push(phs);
858
858
  }
859
859
  var url = structure[keys[i]];
860
- var normalMap = '';
861
- var urlData = url.split('/');
860
+ var normalMap = "";
861
+ var urlData = url.split("/");
862
862
  for (var _j = 0; _j < element.submodule.size; _j++) {
863
- var replaceUrlData = element.submodule.get(_j).split('/');
863
+ var replaceUrlData = element.submodule.get(_j).split("/");
864
864
  if (urlData.includes(replaceUrlData[replaceUrlData.length - 2])) {
865
865
  url = element.submodule.get(_j);
866
866
  break;
867
867
  }
868
868
  }
869
869
  for (var _j2 = 0; _j2 < element.normalMap.size; _j2++) {
870
- var normalMapData = element.normalMap.get(_j2).split('/');
870
+ var normalMapData = element.normalMap.get(_j2).split("/");
871
871
  if (urlData.includes(normalMapData[normalMapData.length - 2])) {
872
872
  normalMap = element.normalMap.get(_j2);
873
873
  break;
@@ -879,15 +879,15 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
879
879
  if (phsArray.length > 0) {
880
880
  // let loadUrl = dirName + url;
881
881
  var loadUrl = url;
882
- if (doorStyles.get(keys[i] + '_gltf') != undefined) {
883
- loadUrl = doorStyles.get(keys[i] + '_gltf');
884
- structure[keys[i] + '_doorStyle' + element.type + 'doorStyle' + JSON.stringify(doorStyles.toJS())] = loadUrl;
882
+ if (doorStyles.get(keys[i] + "_gltf") != undefined) {
883
+ loadUrl = doorStyles.get(keys[i] + "_gltf");
884
+ structure[keys[i] + "_doorStyle" + element.type + "doorStyle" + JSON.stringify(doorStyles.toJS())] = loadUrl;
885
885
  } else {
886
- structure[keys[i] + '_doorStyle' + element.type + 'doorStyle' + JSON.stringify(doorStyles.toJS())] = null;
886
+ structure[keys[i] + "_doorStyle" + element.type + "doorStyle" + JSON.stringify(doorStyles.toJS())] = null;
887
887
  }
888
888
  return (0, _loadObj.loadGLTF)(loadUrl).then(function (object) {
889
- if (normalMap !== '') {
890
- var normalUrl = normalMap.split('.')[0] + '-normal.' + normalMap.split('.')[1];
889
+ if (normalMap !== "") {
890
+ var normalUrl = normalMap.split(".")[0] + "-normal." + normalMap.split(".")[1];
891
891
  var t = loadTexture(normalMap);
892
892
  var _m = loadTexture(normalUrl);
893
893
  var mat2 = new Three.MeshStandardMaterial({
@@ -911,7 +911,7 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
911
911
  // let normalMap = "catalog/items/doorstyle/" + doorStyles.get(keys[i]);
912
912
  var _normalMap = doorStyles.get(keys[i]) || INITIAL_NORMAL_MAP;
913
913
  var _mat;
914
- if (_normalMap === '') {
914
+ if (_normalMap === "") {
915
915
  var examplecolor = new Three.Color(parseInt(color.slice(1), 16)).convertLinearToSRGB();
916
916
  _mat = new Three.MeshStandardMaterial({
917
917
  color: examplecolor,
@@ -935,8 +935,8 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
935
935
  object.children[_j4].material = _mat;
936
936
  object.children[_j4].receiveShadow = true;
937
937
  object.children[_j4].castShadow = true;
938
- !object.children[_j4].name.includes('handle') && addEdgesToMesh(object.children[_j4]);
939
- } else if (!object.children[_j4].name.startsWith('ph_') && object.children[_j4].type === _constants.OBJTYPE_GROUP) {
938
+ !object.children[_j4].name.includes("handle") && addEdgesToMesh(object.children[_j4]);
939
+ } else if (!object.children[_j4].name.startsWith("ph_") && object.children[_j4].type === _constants.OBJTYPE_GROUP) {
940
940
  object.children[_j4].traverse(function (prim) {
941
941
  prim.material = _mat;
942
942
  prim.receiveShadow = true;
@@ -976,10 +976,10 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
976
976
  } else {
977
977
  if (parent.children[_k].name == placeholder) {
978
978
  var tmp = object.clone();
979
- if (placeholder.includes('drawer_door') && placeholder.includes('_handle')) {
979
+ if (placeholder.includes("drawer_door") && placeholder.includes("_handle")) {
980
980
  tmp.rotateZ(Math.PI / 2);
981
981
  }
982
- if (placeholder.includes('_handle') && tmp.children[0].type === _constants.OBJTYPE_MESH) {
982
+ if (placeholder.includes("_handle") && tmp.children[0].type === _constants.OBJTYPE_MESH) {
983
983
  // NOTE: change metalness of handle
984
984
  tmp.children[0].material.metalness = 1;
985
985
  // handleMaterial.metalness || 0.2;
@@ -993,25 +993,25 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
993
993
  }
994
994
  }
995
995
  }, function (reason) {
996
- console.log('loadGLTF failed for reason:', reason);
996
+ console.log("loadGLTF failed for reason:", reason);
997
997
  }).then(function () {
998
998
  i++;
999
999
  return _loadGLTFs(i);
1000
1000
  });
1001
1001
  }
1002
1002
  };
1003
- return (0, _loadObj.loadGLTF)(structure['base']).then(function (object) {
1004
- object.name = 'MainObject';
1003
+ return (0, _loadObj.loadGLTF)(structure["base"]).then(function (object) {
1004
+ object.name = "MainObject";
1005
1005
  object.receiveShadow = true;
1006
1006
  objGroup = object;
1007
1007
  if (!(0, _helper.isEmpty)(doorStyles)) {
1008
- var normalMap = doorStyles.get('base') || INITIAL_NORMAL_MAP;
1008
+ var normalMap = doorStyles.get("base") || INITIAL_NORMAL_MAP;
1009
1009
  if (counterTop.uri === undefined) {
1010
1010
  try {
1011
1011
  counterTop = counterTop.toJS();
1012
1012
  } catch (error) {
1013
1013
  //@todo THIS IS A TEMPORARY FIX FOR COUNTERTOP TEXTURE UNDEFINED ISSUE
1014
- counterTop.uri = 'https://media.test.diydesignspace.com/uploads/CountTop/202105074107_5/texture/Unique_Calcatta_texture.jpg';
1014
+ counterTop.uri = "https://media.test.diydesignspace.com/uploads/CountTop/202105074107_5/texture/Unique_Calcatta_texture.jpg";
1015
1015
  console.log(error);
1016
1016
  }
1017
1017
  }
@@ -1019,7 +1019,7 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
1019
1019
  counterTop.uri = layer.toJS().counterTop.uri;
1020
1020
  }
1021
1021
  var countTopMap = counterTop.uri;
1022
- var interiorMap = doorStyles.get('interior');
1022
+ var interiorMap = doorStyles.get("interior");
1023
1023
  var countT = loadTexture(countTopMap);
1024
1024
  countT.wrapS = Three.RepeatWrapping;
1025
1025
  countT.wrapT = Three.RepeatWrapping;
@@ -1028,7 +1028,7 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
1028
1028
  var mat2 = null,
1029
1029
  mat3 = null,
1030
1030
  mat4 = null;
1031
- if (normalMap === '') {
1031
+ if (normalMap === "") {
1032
1032
  mat2 = new Three.MeshStandardMaterial({
1033
1033
  color: examplecolor,
1034
1034
  metalness: glossness === 1 ? params.metalness : params.metalness_glossy,
@@ -1045,11 +1045,11 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
1045
1045
  }
1046
1046
  // mat2.envMap = textureCube;
1047
1047
 
1048
- if (normalMap !== '') {
1048
+ if (normalMap !== "") {
1049
1049
  var t = loadTexture(normalMap);
1050
1050
  mat2.map = t;
1051
1051
  }
1052
- if (normalMap === '') {
1052
+ if (normalMap === "") {
1053
1053
  mat3 = new Three.MeshStandardMaterial({
1054
1054
  // color: examplecolor,
1055
1055
  metalness: counterTop.metalness,
@@ -1071,13 +1071,13 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
1071
1071
  });
1072
1072
  mat4.map = loadTexture(interiorMap);
1073
1073
  for (var j = 0; j < object.children.length; j++) {
1074
- if (object.children[j].name.includes('main')) {}
1075
- if (object.children[j].name.includes('countertop')) {
1074
+ if (object.children[j].name.includes("main")) {}
1075
+ if (object.children[j].name.includes("countertop")) {
1076
1076
  object.children[j].material = mat3;
1077
1077
  object.children[j].receiveShadow = true;
1078
1078
  object.children[j].castShadow = true;
1079
1079
  addEdgesToMesh(object.children[j]);
1080
- } else if (object.children[j].name.includes('_interior_')) {
1080
+ } else if (object.children[j].name.includes("_interior_")) {
1081
1081
  object.children[j].material = mat4;
1082
1082
  } else if (object.children[j].type === _constants.OBJTYPE_MESH) {
1083
1083
  object.children[j].material = mat2;
@@ -1087,7 +1087,7 @@ function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner
1087
1087
  }
1088
1088
  }
1089
1089
  }, function (reason) {
1090
- console.log('loadGLTF failed for reason:', reason);
1090
+ console.log("loadGLTF failed for reason:", reason);
1091
1091
  objGroup = GeomUtils.emptyBoxHolder(newWidth, newHeight, newDepth);
1092
1092
  }).then(function () {
1093
1093
  return _loadGLTFs(0);
@@ -1101,18 +1101,18 @@ function render3DApplianceItem(element, layer, scene, sizeinfo, structure_json)
1101
1101
  var applianceMaterial = element.applianceMaterial;
1102
1102
  if (applianceMaterial.metalness == undefined) applianceMaterial = applianceMaterial.toJS();
1103
1103
  var onLoadItem = function onLoadItem(object) {
1104
- var newAltitude = element.properties.get('altitude').get('_length');
1105
- var newUnit = element.properties.get('altitude').get('_unit') || 'in';
1104
+ var newAltitude = element.properties.get("altitude").get("_length");
1105
+ var newUnit = element.properties.get("altitude").get("_unit") || "in";
1106
1106
  newAltitude = (0, _convertUnitsLite.convert)(newAltitude).from(newUnit).to(scene.unit);
1107
- var newWidth = element.properties.get('width').get('_length');
1108
- var newWidthUnit = element.properties.get('width').get('_unit') || 'in';
1109
- newWidth = (0, _convertUnitsLite.convert)(newWidth).from(newWidthUnit).to('in');
1110
- var newHeight = element.properties.get('height').get('_length');
1111
- var newHeightUnit = element.properties.get('height').get('_unit') || 'in';
1112
- newHeight = (0, _convertUnitsLite.convert)(newHeight).from(newHeightUnit).to('in');
1113
- var newDepth = element.properties.get('depth').get('_length');
1114
- var newDepthUnit = element.properties.get('depth').get('_unit') || 'in';
1115
- newDepth = (0, _convertUnitsLite.convert)(newDepth).from(newDepthUnit).to('in');
1107
+ var newWidth = element.properties.get("width").get("_length");
1108
+ var newWidthUnit = element.properties.get("width").get("_unit") || "in";
1109
+ newWidth = (0, _convertUnitsLite.convert)(newWidth).from(newWidthUnit).to("in");
1110
+ var newHeight = element.properties.get("height").get("_length");
1111
+ var newHeightUnit = element.properties.get("height").get("_unit") || "in";
1112
+ newHeight = (0, _convertUnitsLite.convert)(newHeight).from(newHeightUnit).to("in");
1113
+ var newDepth = element.properties.get("depth").get("_length");
1114
+ var newDepthUnit = element.properties.get("depth").get("_unit") || "in";
1115
+ newDepth = (0, _convertUnitsLite.convert)(newDepth).from(newDepthUnit).to("in");
1116
1116
  object.scale.set(100 * newWidth / sizeinfo.width, 100 * newHeight / sizeinfo.height, 100 * newDepth / sizeinfo.depth);
1117
1117
  // Normalize the origin of the object
1118
1118
  var boundingBox = new Three.Box3().setFromObject(object);
@@ -1127,16 +1127,16 @@ function render3DApplianceItem(element, layer, scene, sizeinfo, structure_json)
1127
1127
  var name = obj.name;
1128
1128
  var texture,
1129
1129
  textureLoader = new Three.TextureLoader();
1130
- if (name.includes('_black')) {
1130
+ if (name.includes("_black")) {
1131
1131
  obj.material.roughness = 0.4;
1132
1132
  obj.material.metalness = 1.0;
1133
1133
  obj.material.color = new Three.Color(0, 0, 0);
1134
1134
  obj.castShadow = true;
1135
1135
  obj.receiveShadow = true;
1136
1136
  return object;
1137
- } else if (name.includes('_wood')) {
1138
- texture = loadTexture('/assets/img/texture/wood.jpg');
1139
- } else if (name.includes('_glass')) {
1137
+ } else if (name.includes("_wood")) {
1138
+ texture = loadTexture("/assets/img/texture/wood.jpg");
1139
+ } else if (name.includes("_glass")) {
1140
1140
  // texture = loadTexture('/assets/img/texture/glass.jpg');
1141
1141
  var material = new Three.MeshPhysicalMaterial({
1142
1142
  transparent: true,
@@ -1151,7 +1151,7 @@ function render3DApplianceItem(element, layer, scene, sizeinfo, structure_json)
1151
1151
  obj.castShadow = true;
1152
1152
  obj.receiveShadow = true;
1153
1153
  return object;
1154
- } else if (name.includes('_steel')) {
1154
+ } else if (name.includes("_steel")) {
1155
1155
  // texture = loadTexture('/assets/img/texture/steel.jpg');
1156
1156
  var _material2 = new Three.MeshPhysicalMaterial({
1157
1157
  roughness: 0.2,
@@ -1201,16 +1201,16 @@ function render3DApplianceItem(element, layer, scene, sizeinfo, structure_json)
1201
1201
  // vertical line - 4 lines around object//////////////////////////
1202
1202
  var vLineGeom = new Three.BufferGeometry();
1203
1203
  var vertices = [(max.x - min.x) / 2 + min.x, 0, min.z, (max.x - min.x) / 2 + min.x, 0, min.z + 1.3];
1204
- vLineGeom.setAttribute('position', new Three.BufferAttribute(new Float32Array(vertices), 3));
1204
+ vLineGeom.setAttribute("position", new Three.BufferAttribute(new Float32Array(vertices), 3));
1205
1205
  var vLineGeom1 = new Three.BufferGeometry();
1206
1206
  var vertices1 = [(max.x - min.x) / 2 + min.x, 0, min.z, (max.x - min.x) / 2 + min.x, 0, min.z - 1.3];
1207
- vLineGeom1.setAttribute('position', new Three.BufferAttribute(new Float32Array(vertices1), 3));
1207
+ vLineGeom1.setAttribute("position", new Three.BufferAttribute(new Float32Array(vertices1), 3));
1208
1208
  var vLineGeom2 = new Three.BufferGeometry();
1209
1209
  var vertices2 = [max.x, 0, max.z - (max.z - min.z) / 2, max.x + 1.3, 0, max.z - (max.z - min.z) / 2];
1210
- vLineGeom1.setAttribute('position', new Three.BufferAttribute(new Float32Array(vertices2), 3));
1210
+ vLineGeom1.setAttribute("position", new Three.BufferAttribute(new Float32Array(vertices2), 3));
1211
1211
  var vLineGeom3 = new Three.BufferGeometry();
1212
1212
  var vertices3 = [min.x, 0, max.z - (max.z - min.z) / 2, min.x - 1.3, 0, max.z - (max.z - min.z) / 2];
1213
- vLineGeom1.setAttribute('position', new Three.BufferAttribute(new Float32Array(vertices3), 3));
1213
+ vLineGeom1.setAttribute("position", new Three.BufferAttribute(new Float32Array(vertices3), 3));
1214
1214
  // ///////////////////////////////////////
1215
1215
 
1216
1216
  // set names of transform object
@@ -1223,12 +1223,12 @@ function render3DApplianceItem(element, layer, scene, sizeinfo, structure_json)
1223
1223
  color: 0xffffff,
1224
1224
  colorWrite: true
1225
1225
  }));
1226
- rotFillObj.name = 'rotate';
1226
+ rotFillObj.name = "rotate";
1227
1227
  var upObj = new Three.Mesh(upwardsGeom, new Three.MeshBasicMaterial({
1228
1228
  color: 0xffffff,
1229
1229
  side: Three.DoubleSide
1230
1230
  }));
1231
- upObj.name = 'transUp';
1231
+ upObj.name = "transUp";
1232
1232
  var mBox = new Three.Mesh(moveBox, new Three.MeshBasicMaterial({
1233
1233
  color: new Three.Color(0xdd6699).convertLinearToSRGB(),
1234
1234
  side: Three.DoubleSide,
@@ -1268,7 +1268,7 @@ function render3DApplianceItem(element, layer, scene, sizeinfo, structure_json)
1268
1268
  vLine3.translateY(0.1);
1269
1269
  upObj.translateOnAxis(uVec, 1);
1270
1270
  upObj.translateY(max.y - min.y + 0.05);
1271
- mBox.name = 'TransformBox';
1271
+ mBox.name = "TransformBox";
1272
1272
  mBox.translateOnAxis(new Three.Vector3(uVec.x, uVec.y + (max.y - min.y) / 2, uVec.z), 1);
1273
1273
  mBox.scale.set(1.01, 1.01, 1.01);
1274
1274
 
@@ -1296,7 +1296,7 @@ function render3DApplianceItem(element, layer, scene, sizeinfo, structure_json)
1296
1296
  asrtObj.add(mBox);
1297
1297
  asrtObj.scale.set(1 / object.scale.x, object.scale.y, 1 / object.scale.z);
1298
1298
  // asrtObj.translateY(newAltitude / scalevec.y);
1299
- asrtObj.name = 'TransformGizmo';
1299
+ asrtObj.name = "TransformGizmo";
1300
1300
  // add assets Objects Group
1301
1301
  object.add(asrtObj);
1302
1302
 
@@ -1326,7 +1326,7 @@ function render3DApplianceItem(element, layer, scene, sizeinfo, structure_json)
1326
1326
  cachedObject[element.type] = objGroup.clone(); //register to cachedObject
1327
1327
  return onLoadItem(cachedObject[element.type].clone());
1328
1328
  }
1329
- if (keys[i] === 'base') {
1329
+ if (keys[i] === "base") {
1330
1330
  // if base Objects
1331
1331
  i++;
1332
1332
  return _loadGLTFs2(i);
@@ -1335,13 +1335,13 @@ function render3DApplianceItem(element, layer, scene, sizeinfo, structure_json)
1335
1335
 
1336
1336
  // load base to start //
1337
1337
  // return loadGLTF(dirName + structure["base"])
1338
- return (0, _loadObj.loadGLTF)(structure['base']).then(function (object) {
1338
+ return (0, _loadObj.loadGLTF)(structure["base"]).then(function (object) {
1339
1339
  // let textureURL = `${API_SERVER_URL}/uploads/assets/default/steel.jpg`;
1340
1340
  // let texture = loadTexture(textureURL);
1341
1341
  // texture.wrapS = Three.MirroredRepeatWrapping;
1342
1342
  // texture.wrapT = Three.MirroredRepeatWrapping;
1343
1343
 
1344
- object.name = 'MainObject';
1344
+ object.name = "MainObject";
1345
1345
  // NOTE: changed appliance emissive color to black
1346
1346
  var mat2 = new Three.MeshStandardMaterial({
1347
1347
  emissive: new Three.Color(0x0d0d0d).convertLinearToSRGB(),
@@ -1359,7 +1359,7 @@ function render3DApplianceItem(element, layer, scene, sizeinfo, structure_json)
1359
1359
  }
1360
1360
  objGroup = object;
1361
1361
  }, function (reason) {
1362
- console.log('loadGLTF failed for reason:', reason);
1362
+ console.log("loadGLTF failed for reason:", reason);
1363
1363
  objGroup = GeomUtils.emptyBoxHolder(newWidth, newHeight, newDepth);
1364
1364
  }).then(function () {
1365
1365
  return _loadGLTFs2(0);
@@ -1372,21 +1372,21 @@ function render3DLightingItem(element, layer, scene, sizeinfo, structure_json) {
1372
1372
  var onLoadItem = function onLoadItem(object) {
1373
1373
  var width = {
1374
1374
  length: sizeinfo.width,
1375
- unit: 'in'
1375
+ unit: "in"
1376
1376
  };
1377
1377
  var depth = {
1378
1378
  length: sizeinfo.depth,
1379
- unit: 'in'
1379
+ unit: "in"
1380
1380
  };
1381
1381
  var height = {
1382
1382
  length: sizeinfo.height,
1383
- unit: 'in'
1383
+ unit: "in"
1384
1384
  };
1385
- var newWidth = (0, _convertUnitsLite.convert)(width.length).from(width.unit).to('cm');
1386
- var newDepth = (0, _convertUnitsLite.convert)(depth.length).from(depth.unit).to('cm');
1387
- var newHeight = (0, _convertUnitsLite.convert)(height.length).from(height.unit).to('cm');
1388
- var newAltitude = element.properties.get('altitude').get('_length');
1389
- var newUnit = element.properties.get('altitude').get('_unit') || 'in';
1385
+ var newWidth = (0, _convertUnitsLite.convert)(width.length).from(width.unit).to("cm");
1386
+ var newDepth = (0, _convertUnitsLite.convert)(depth.length).from(depth.unit).to("cm");
1387
+ var newHeight = (0, _convertUnitsLite.convert)(height.length).from(height.unit).to("cm");
1388
+ var newAltitude = element.properties.get("altitude").get("_length");
1389
+ var newUnit = element.properties.get("altitude").get("_unit") || "in";
1390
1390
  newAltitude = (0, _convertUnitsLite.convert)(newAltitude).from(newUnit).to(scene.unit);
1391
1391
 
1392
1392
  //object.scale.set(newWidth, newHeight, newDepth);
@@ -1433,16 +1433,16 @@ function render3DLightingItem(element, layer, scene, sizeinfo, structure_json) {
1433
1433
  // vertical line - 4 lines around object//////////////////////////
1434
1434
  var vLineGeom = new Three.BufferGeometry();
1435
1435
  var vertices = [(max.x - min.x) / 2 + min.x, 0, min.z, (max.x - min.x) / 2 + min.x, 0, min.z + 1.3];
1436
- vLineGeom.setAttribute('position', new Three.BufferAttribute(new Float32Array(vertices), 3));
1436
+ vLineGeom.setAttribute("position", new Three.BufferAttribute(new Float32Array(vertices), 3));
1437
1437
  var vLineGeom1 = new Three.BufferGeometry();
1438
1438
  var vertices1 = [(max.x - min.x) / 2 + min.x, 0, min.z, (max.x - min.x) / 2 + min.x, 0, min.z - 1.3];
1439
- vLineGeom1.setAttribute('position', new Three.BufferAttribute(new Float32Array(vertices1), 3));
1439
+ vLineGeom1.setAttribute("position", new Three.BufferAttribute(new Float32Array(vertices1), 3));
1440
1440
  var vLineGeom2 = new Three.BufferGeometry();
1441
1441
  var vertices2 = [min.x, 0, max.z - (max.z - min.z) / 2, min.x + 1.3, 0, max.z - (max.z - min.z) / 2];
1442
- vLineGeom2.setAttribute('position', new Three.BufferAttribute(new Float32Array(vertices2), 3));
1442
+ vLineGeom2.setAttribute("position", new Three.BufferAttribute(new Float32Array(vertices2), 3));
1443
1443
  var vLineGeom3 = new Three.BufferGeometry();
1444
1444
  var vertices3 = [min.x, 0, max.z - (max.z - min.z) / 2, min.x - 1.3, 0, max.z - (max.z - min.z) / 2];
1445
- vLineGeom3.setAttribute('position', new Three.BufferAttribute(new Float32Array(vertices3), 3));
1445
+ vLineGeom3.setAttribute("position", new Three.BufferAttribute(new Float32Array(vertices3), 3));
1446
1446
  // ///////////////////////////////////////
1447
1447
 
1448
1448
  // set names of transform object
@@ -1455,12 +1455,12 @@ function render3DLightingItem(element, layer, scene, sizeinfo, structure_json) {
1455
1455
  color: 0xffffff,
1456
1456
  colorWrite: true
1457
1457
  }));
1458
- rotFillObj.name = 'rotate';
1458
+ rotFillObj.name = "rotate";
1459
1459
  var upObj = new Three.Mesh(upwardsGeom, new Three.MeshBasicMaterial({
1460
1460
  color: 0xffffff,
1461
1461
  side: Three.DoubleSide
1462
1462
  }));
1463
- upObj.name = 'transUp';
1463
+ upObj.name = "transUp";
1464
1464
  var mBox = new Three.Mesh(moveBox, new Three.MeshBasicMaterial({
1465
1465
  color: 0xdd6699,
1466
1466
  side: Three.DoubleSide,
@@ -1502,7 +1502,7 @@ function render3DLightingItem(element, layer, scene, sizeinfo, structure_json) {
1502
1502
  //rotObj.translateOnAxis(uVec, 1);
1503
1503
  upObj.translateOnAxis(uVec, 1);
1504
1504
  upObj.translateY(max.y - min.y);
1505
- mBox.name = 'TransformBox';
1505
+ mBox.name = "TransformBox";
1506
1506
  mBox.translateOnAxis(new Three.Vector3(uVec.x, uVec.y + (max.y - min.y) / 2, uVec.z), 1);
1507
1507
  mBox.scale.set(1.01, 1.01, 1.01);
1508
1508
 
@@ -1531,7 +1531,7 @@ function render3DLightingItem(element, layer, scene, sizeinfo, structure_json) {
1531
1531
  asrtObj.add(mBox);
1532
1532
  asrtObj.scale.set(1, 1, 1);
1533
1533
  //asrtObj.translateY(newAltitude / scalevec.y);
1534
- asrtObj.name = 'TransformGizmo';
1534
+ asrtObj.name = "TransformGizmo";
1535
1535
  // add assets Objects Group
1536
1536
  object.add(asrtObj);
1537
1537
 
@@ -1564,7 +1564,7 @@ function render3DLightingItem(element, layer, scene, sizeinfo, structure_json) {
1564
1564
  cachedObject[element.type] = objGroup.clone(); //register to cachedObject
1565
1565
  return onLoadItem(cachedObject[element.type].clone());
1566
1566
  }
1567
- if (keys[i] === 'base') {
1567
+ if (keys[i] === "base") {
1568
1568
  // if base Objects
1569
1569
  i++;
1570
1570
  return _loadGLTFs3(i);
@@ -1573,13 +1573,13 @@ function render3DLightingItem(element, layer, scene, sizeinfo, structure_json) {
1573
1573
 
1574
1574
  // load base to start //
1575
1575
  // return loadGLTF(dirName + structure["base"])
1576
- return (0, _loadObj.loadGLTF)(structure['base']).then(function (object) {
1576
+ return (0, _loadObj.loadGLTF)(structure["base"]).then(function (object) {
1577
1577
  // let textureURL = `${API_SERVER_URL}/uploads/assets/default/steel.jpg`;
1578
1578
  // let texture = loadTexture(textureURL);
1579
1579
  // texture.wrapS = Three.MirroredRepeatWrapping;
1580
1580
  // texture.wrapT = Three.MirroredRepeatWrapping;
1581
1581
 
1582
- object.name = 'MainObject';
1582
+ object.name = "MainObject";
1583
1583
  var mat2 = new Three.MeshStandardMaterial({
1584
1584
  emissive: new Three.Color(0x666666).convertLinearToSRGB(),
1585
1585
  metalness: 0.7,
@@ -1595,7 +1595,7 @@ function render3DLightingItem(element, layer, scene, sizeinfo, structure_json) {
1595
1595
  }
1596
1596
  objGroup = object;
1597
1597
  }, function (reason) {
1598
- console.log('loadGLTF failed for reason:', reason);
1598
+ console.log("loadGLTF failed for reason:", reason);
1599
1599
  objGroup = GeomUtils.emptyBoxHolder(newWidth, newHeight, newDepth);
1600
1600
  }).then(function () {
1601
1601
  return _loadGLTFs3(0);