kitchen-simulator 3.1.14 → 4.0.0-alpha.12
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/es/LiteKitchenConfigurator.js +204 -24
- package/es/LiteRenderer.js +277 -12
- package/es/actions/items-actions.js +6 -10
- package/es/actions/lines-actions.js +1 -3
- package/es/actions/project-actions.js +5 -15
- package/es/assets/Window.hdr +2100 -0
- package/es/assets/gltf/door_sliding.bin +0 -0
- package/es/assets/img/1.jpg +0 -0
- package/es/catalog/areas/area/planner-element.js +5 -10
- package/es/catalog/catalog.js +4 -1
- package/es/catalog/factories/area-factory-3d.js +17 -18
- package/es/catalog/factories/wall-factory-3d.js +2 -2
- package/es/catalog/factories/wall-factory.js +8 -8
- package/es/catalog/lines/wall/planner-element.js +9 -18
- package/es/catalog/utils/exporter.js +3 -6
- package/es/catalog/utils/item-loader.js +197 -202
- package/es/catalog/utils/mtl-loader.js +2 -2
- package/es/catalog/utils/obj-loader.js +2 -2
- package/es/class/item.js +127 -107
- package/es/class/line.js +2 -14
- package/es/class/project.js +44 -150
- package/es/components/content.js +6 -19
- package/es/components/viewer2d/grids/grid-streak.js +1 -1
- package/es/components/viewer2d/item.js +51 -84
- package/es/components/viewer2d/line.js +243 -315
- package/es/components/viewer2d/ruler.js +36 -16
- package/es/components/viewer2d/rulerDist.js +75 -44
- package/es/components/viewer2d/utils.js +0 -6
- package/es/components/viewer2d/viewer2d.js +205 -301
- package/es/components/viewer3d/front3D.js +2 -3
- package/es/components/viewer3d/libs/mtl-loader.js +2 -2
- package/es/components/viewer3d/libs/obj-loader.js +2 -2
- package/es/components/viewer3d/libs/orbit-controls.js +4 -3
- package/es/components/viewer3d/libs/pointer-lock-controls.js +7 -6
- package/es/components/viewer3d/viewer3d.js +80 -127
- package/es/constants.js +3 -110
- package/es/devLiteRenderer.js +38 -597
- package/es/index.js +86 -16
- package/es/models.js +5 -8
- package/es/plugins/SVGLoader.js +5 -7
- package/es/plugins/keyboard.js +6 -15
- package/es/reducers/items-reducer.js +5 -5
- package/es/reducers/lines-reducer.js +1 -1
- package/es/reducers/project-reducer.js +3 -5
- package/es/shared-style.js +4 -4
- package/es/utils/geometry.js +0 -161
- package/es/utils/get-edges-of-subgraphs.js +1 -1
- package/es/utils/graph-cycles.js +1 -1
- package/es/utils/graph.js +1 -1
- package/es/utils/helper.js +2 -67
- package/es/utils/isolate-event-handler.js +124 -1367
- package/es/utils/molding.js +2 -238
- package/lib/LiteKitchenConfigurator.js +205 -25
- package/lib/LiteRenderer.js +278 -13
- package/lib/actions/items-actions.js +6 -10
- package/lib/actions/lines-actions.js +1 -3
- package/lib/actions/project-actions.js +4 -15
- package/lib/assets/Window.hdr +2100 -0
- package/lib/assets/gltf/door_sliding.bin +0 -0
- package/lib/assets/img/1.jpg +0 -0
- package/lib/catalog/areas/area/planner-element.js +5 -11
- package/lib/catalog/catalog.js +4 -1
- package/lib/catalog/factories/area-factory-3d.js +14 -15
- package/lib/catalog/factories/wall-factory-3d.js +2 -2
- package/lib/catalog/factories/wall-factory.js +8 -8
- package/lib/catalog/lines/wall/planner-element.js +9 -19
- package/lib/catalog/utils/exporter.js +3 -6
- package/lib/catalog/utils/item-loader.js +194 -199
- package/lib/catalog/utils/mtl-loader.js +2 -9
- package/lib/catalog/utils/obj-loader.js +2 -10
- package/lib/class/item.js +125 -105
- package/lib/class/line.js +1 -13
- package/lib/class/project.js +43 -149
- package/lib/components/content.js +6 -19
- package/lib/components/viewer2d/grids/grid-streak.js +1 -1
- package/lib/components/viewer2d/item.js +50 -83
- package/lib/components/viewer2d/line.js +242 -315
- package/lib/components/viewer2d/ruler.js +35 -15
- package/lib/components/viewer2d/rulerDist.js +75 -44
- package/lib/components/viewer2d/utils.js +0 -7
- package/lib/components/viewer2d/viewer2d.js +205 -299
- package/lib/components/viewer3d/front3D.js +2 -3
- package/lib/components/viewer3d/libs/mtl-loader.js +2 -9
- package/lib/components/viewer3d/libs/obj-loader.js +2 -9
- package/lib/components/viewer3d/libs/orbit-controls.js +5 -11
- package/lib/components/viewer3d/libs/pointer-lock-controls.js +7 -13
- package/lib/components/viewer3d/viewer3d.js +79 -125
- package/lib/constants.js +7 -115
- package/lib/devLiteRenderer.js +33 -592
- package/lib/index.js +86 -16
- package/lib/models.js +5 -8
- package/lib/plugins/SVGLoader.js +5 -7
- package/lib/plugins/keyboard.js +6 -15
- package/lib/reducers/items-reducer.js +5 -5
- package/lib/reducers/lines-reducer.js +1 -1
- package/lib/reducers/project-reducer.js +2 -4
- package/lib/shared-style.js +4 -4
- package/lib/utils/geometry.js +0 -162
- package/lib/utils/get-edges-of-subgraphs.js +1 -6
- package/lib/utils/graph-cycles.js +8 -7
- package/lib/utils/graph.js +1 -6
- package/lib/utils/helper.js +3 -70
- package/lib/utils/isolate-event-handler.js +121 -1364
- package/lib/utils/molding.js +0 -238
- package/package.json +1 -1
package/lib/LiteRenderer.js
CHANGED
|
@@ -9,6 +9,7 @@ exports["default"] = LiteRenderer;
|
|
|
9
9
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
10
10
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
11
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
12
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
12
13
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
14
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
14
15
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
@@ -26,17 +27,21 @@ var _reducer = _interopRequireDefault(require("./reducers/reducer"));
|
|
|
26
27
|
var _AppContext = _interopRequireDefault(require("./AppContext"));
|
|
27
28
|
var _catalog = _interopRequireDefault(require("./catalog/catalog"));
|
|
28
29
|
var _SVGLoader = require("three/addons/loaders/SVGLoader");
|
|
30
|
+
var _helper = require("./utils/helper");
|
|
29
31
|
var _constants = require("./constants");
|
|
30
32
|
var Areas = _interopRequireWildcard(require("./catalog/areas/area/planner-element"));
|
|
31
33
|
var Lines = _interopRequireWildcard(require("./catalog/lines/wall/planner-element"));
|
|
32
34
|
var Holes = _interopRequireWildcard(require("./catalog/holes/export"));
|
|
35
|
+
var _itemLoader = require("./catalog/utils/item-loader");
|
|
33
36
|
var _export2 = require("./plugins/export");
|
|
34
37
|
var _immutable = require("immutable");
|
|
35
38
|
var Sentry = _interopRequireWildcard(require("@sentry/react"));
|
|
39
|
+
var _projectActions = require("./actions/project-actions");
|
|
40
|
+
var _exporter = _interopRequireDefault(require("./catalog/utils/exporter"));
|
|
36
41
|
var THREE = _interopRequireWildcard(require("three"));
|
|
37
42
|
var _LiteKitchenConfigurator = _interopRequireDefault(require("./LiteKitchenConfigurator"));
|
|
38
|
-
var _excluded = ["width", "height", "configData", "options", "user", "auth", "featureFlags", "sentry", "analytics", "externalEvent", "
|
|
39
|
-
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" != _typeof(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
|
|
43
|
+
var _excluded = ["width", "height", "projectElement", "categoryData", "dataBundle", "configData", "options", "user", "auth", "featureFlags", "sentry", "analytics", "externalEvent", "onExternalEventProcessed", "onError"];
|
|
44
|
+
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" != _typeof(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); }
|
|
40
45
|
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; }
|
|
41
46
|
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; }
|
|
42
47
|
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
|
@@ -148,6 +153,9 @@ var ToolErrorBoundary = /*#__PURE__*/function (_React$Component) {
|
|
|
148
153
|
function LiteRenderer(props) {
|
|
149
154
|
var width = props.width,
|
|
150
155
|
height = props.height,
|
|
156
|
+
projectElement = props.projectElement,
|
|
157
|
+
categoryData = props.categoryData,
|
|
158
|
+
dataBundle = props.dataBundle,
|
|
151
159
|
configData = props.configData,
|
|
152
160
|
options = props.options,
|
|
153
161
|
user = props.user,
|
|
@@ -156,7 +164,7 @@ function LiteRenderer(props) {
|
|
|
156
164
|
sentry = props.sentry,
|
|
157
165
|
analytics = props.analytics,
|
|
158
166
|
externalEvent = props.externalEvent,
|
|
159
|
-
|
|
167
|
+
onExternalEventProcessed = props.onExternalEventProcessed,
|
|
160
168
|
onError = props.onError,
|
|
161
169
|
passThrough = (0, _objectWithoutProperties2["default"])(props, _excluded);
|
|
162
170
|
|
|
@@ -246,12 +254,35 @@ function LiteRenderer(props) {
|
|
|
246
254
|
emit(lastExternalEventRef.current, last.errors);
|
|
247
255
|
}
|
|
248
256
|
}, [externalEvent, emit]);
|
|
257
|
+
var _ref = categoryData && categoryData.data || {},
|
|
258
|
+
catalogs = _ref.catalogs,
|
|
259
|
+
colorAlias = _ref.colorAlias,
|
|
260
|
+
subgroups = _ref.subgroups;
|
|
261
|
+
var _ref2 = dataBundle || {},
|
|
262
|
+
_ref2$data = _ref2.data,
|
|
263
|
+
data = _ref2$data === void 0 ? [] : _ref2$data,
|
|
264
|
+
_ref2$appliances = _ref2.appliances,
|
|
265
|
+
appliances = _ref2$appliances === void 0 ? [] : _ref2$appliances,
|
|
266
|
+
_ref2$furnishing = _ref2.furnishing,
|
|
267
|
+
furnishing = _ref2$furnishing === void 0 ? [] : _ref2$furnishing,
|
|
268
|
+
_ref2$lighting = _ref2.lighting,
|
|
269
|
+
lighting = _ref2$lighting === void 0 ? [] : _ref2$lighting;
|
|
270
|
+
var _projectElement = (0, _slicedToArray2["default"])(projectElement, 1),
|
|
271
|
+
project_data = _projectElement[0].project_data;
|
|
249
272
|
var id = configData.id,
|
|
250
273
|
logoImg = configData.logoImg,
|
|
251
274
|
companyUrl = configData.companyUrl;
|
|
275
|
+
var _React$useState = _react["default"].useState([]),
|
|
276
|
+
_React$useState2 = (0, _slicedToArray2["default"])(_React$useState, 2),
|
|
277
|
+
outlineSVGData = _React$useState2[0],
|
|
278
|
+
setOutlineSVGData = _React$useState2[1];
|
|
279
|
+
var _React$useState3 = _react["default"].useState(false),
|
|
280
|
+
_React$useState4 = (0, _slicedToArray2["default"])(_React$useState3, 2),
|
|
281
|
+
catalogInitiated = _React$useState4[0],
|
|
282
|
+
setCatalogInitiated = _React$useState4[1];
|
|
252
283
|
(0, _react.useEffect)(function () {
|
|
253
284
|
var initMyCatalog = /*#__PURE__*/function () {
|
|
254
|
-
var
|
|
285
|
+
var _ref3 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
255
286
|
var x, _x, _x2;
|
|
256
287
|
return _regenerator["default"].wrap(function (_context) {
|
|
257
288
|
while (1) switch (_context.prev = _context.next) {
|
|
@@ -268,29 +299,258 @@ function LiteRenderer(props) {
|
|
|
268
299
|
}, _callee);
|
|
269
300
|
}));
|
|
270
301
|
return function initMyCatalog() {
|
|
271
|
-
return
|
|
302
|
+
return _ref3.apply(this, arguments);
|
|
272
303
|
};
|
|
273
304
|
}();
|
|
274
|
-
var
|
|
275
|
-
var
|
|
305
|
+
var loadMoldings = /*#__PURE__*/function () {
|
|
306
|
+
var _ref4 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2() {
|
|
307
|
+
var door_color_alias, subgroup_ids, door_color_alias_ids, doorStyleData, molding, toeMoldingData, cabinets, promises;
|
|
276
308
|
return _regenerator["default"].wrap(function (_context2) {
|
|
277
309
|
while (1) switch (_context2.prev = _context2.next) {
|
|
278
310
|
case 0:
|
|
279
|
-
|
|
280
|
-
|
|
311
|
+
door_color_alias = [];
|
|
312
|
+
subgroup_ids = catalogs.filter(function (item) {
|
|
313
|
+
return item.id == id;
|
|
314
|
+
})[0].manufacturer_subgroup_ids.split(',');
|
|
315
|
+
door_color_alias_ids = [];
|
|
316
|
+
subgroups.forEach(function (subgroup) {
|
|
317
|
+
if (subgroup_ids.some(function (id) {
|
|
318
|
+
return id == subgroup.id.toString();
|
|
319
|
+
})) {
|
|
320
|
+
subgroup.door_color_alias_ids.split(',').forEach(function (item) {
|
|
321
|
+
item != '' && door_color_alias_ids.push(item);
|
|
322
|
+
});
|
|
323
|
+
}
|
|
324
|
+
});
|
|
325
|
+
colorAlias.forEach(function (color) {
|
|
326
|
+
return door_color_alias_ids.some(function (id) {
|
|
327
|
+
return id == color.id.toString();
|
|
328
|
+
}) && door_color_alias.push(color);
|
|
329
|
+
});
|
|
330
|
+
doorStyleData = categoryData.data.doorStyles.items;
|
|
331
|
+
categoryData.data.doorStyles.items = doorStyleData.treeStruct;
|
|
332
|
+
door_color_alias.forEach(function (dca) {
|
|
333
|
+
doorStyleData.doorColorData.forEach(function (dc) {
|
|
334
|
+
dc.door_style_id = parseInt(dc.door_style_id);
|
|
335
|
+
if (dc.id !== dca.door_color_id) return;
|
|
336
|
+
dc.name = dca.alias_name;
|
|
337
|
+
dc.color_sku_alias = dca.sku_alias_name;
|
|
338
|
+
doorStyleData.treeStruct.forEach(function (el) {
|
|
339
|
+
el.items.forEach(function (elem) {
|
|
340
|
+
return dc.door_style_id === elem.id && (dc.door_style_name = elem.name);
|
|
341
|
+
});
|
|
342
|
+
});
|
|
343
|
+
dca.alias_installation_type = (0, _helper.isEmpty)(dca.alias_installation_type) ? [] : dca.alias_installation_type.split(',').map(function (n) {
|
|
344
|
+
return parseInt(n);
|
|
345
|
+
});
|
|
346
|
+
categoryData.data.doorStyles.items.forEach(function (item) {
|
|
347
|
+
if (dca.alias_installation_type.some(function (ait) {
|
|
348
|
+
return ait === item.id;
|
|
349
|
+
})) item.items.forEach(function (ds) {
|
|
350
|
+
if (ds.name === dc.door_style_name) ds.items.push(dc);
|
|
351
|
+
});
|
|
352
|
+
});
|
|
353
|
+
});
|
|
354
|
+
});
|
|
355
|
+
molding = [];
|
|
356
|
+
toeMoldingData = [];
|
|
357
|
+
cabinets = categoryData.data.cabinets;
|
|
358
|
+
cabinets[cabinets.length - 1].items.forEach(function (index) {
|
|
359
|
+
if (index.name.toLowerCase().includes('molding')) {
|
|
360
|
+
index.items.forEach(function (item) {
|
|
361
|
+
return molding.push(item);
|
|
362
|
+
});
|
|
363
|
+
}
|
|
364
|
+
if (index.name.includes(_constants.TOE_KICK_MOLDING)) {
|
|
365
|
+
index.items.forEach(function (item) {
|
|
366
|
+
return toeMoldingData.push(item);
|
|
367
|
+
});
|
|
368
|
+
}
|
|
369
|
+
});
|
|
370
|
+
categoryData.data.toeMoldingData = toeMoldingData;
|
|
371
|
+
promises = molding.map(function (child) {
|
|
372
|
+
return new Promise(function (resolve, reject) {
|
|
373
|
+
var url = child === null || child === void 0 ? void 0 : child.shape_svg;
|
|
374
|
+
if (!url) return resolve();
|
|
375
|
+
var loader = new _SVGLoader.SVGLoader();
|
|
376
|
+
loader.load(url, function (data) {
|
|
377
|
+
var _data$xml$viewBox$ani, _data$xml, _data$xml$viewBox$ani2, _data$xml2;
|
|
378
|
+
child.data = {
|
|
379
|
+
paths: data.paths,
|
|
380
|
+
svg_width: (_data$xml$viewBox$ani = (_data$xml = data.xml) === null || _data$xml === void 0 || (_data$xml = _data$xml.viewBox) === null || _data$xml === void 0 || (_data$xml = _data$xml.animVal) === null || _data$xml === void 0 ? void 0 : _data$xml.width) !== null && _data$xml$viewBox$ani !== void 0 ? _data$xml$viewBox$ani : 0,
|
|
381
|
+
svg_height: (_data$xml$viewBox$ani2 = (_data$xml2 = data.xml) === null || _data$xml2 === void 0 || (_data$xml2 = _data$xml2.viewBox) === null || _data$xml2 === void 0 || (_data$xml2 = _data$xml2.animVal) === null || _data$xml2 === void 0 ? void 0 : _data$xml2.height) !== null && _data$xml$viewBox$ani2 !== void 0 ? _data$xml$viewBox$ani2 : 0
|
|
382
|
+
};
|
|
383
|
+
resolve();
|
|
384
|
+
}, null, function (error) {
|
|
385
|
+
console.error(error);
|
|
386
|
+
reject(error);
|
|
387
|
+
});
|
|
388
|
+
});
|
|
389
|
+
});
|
|
390
|
+
return _context2.abrupt("return", Promise.all(promises));
|
|
281
391
|
case 1:
|
|
282
392
|
case "end":
|
|
283
393
|
return _context2.stop();
|
|
284
394
|
}
|
|
285
395
|
}, _callee2);
|
|
286
396
|
}));
|
|
397
|
+
return function loadMoldings() {
|
|
398
|
+
return _ref4.apply(this, arguments);
|
|
399
|
+
};
|
|
400
|
+
}();
|
|
401
|
+
var loadSVGs = /*#__PURE__*/function () {
|
|
402
|
+
var _ref5 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee4() {
|
|
403
|
+
var svgLoadPromises, outlineData;
|
|
404
|
+
return _regenerator["default"].wrap(function (_context4) {
|
|
405
|
+
while (1) switch (_context4.prev = _context4.next) {
|
|
406
|
+
case 0:
|
|
407
|
+
svgLoadPromises = data.map(/*#__PURE__*/function () {
|
|
408
|
+
var _ref6 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3(item) {
|
|
409
|
+
var _parsed$xml$viewBox, _parsed$xml$viewBox2, response, svgText, loader, parsed, _t;
|
|
410
|
+
return _regenerator["default"].wrap(function (_context3) {
|
|
411
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
412
|
+
case 0:
|
|
413
|
+
if (item.outline) {
|
|
414
|
+
_context3.next = 1;
|
|
415
|
+
break;
|
|
416
|
+
}
|
|
417
|
+
return _context3.abrupt("return", null);
|
|
418
|
+
case 1:
|
|
419
|
+
_context3.prev = 1;
|
|
420
|
+
_context3.next = 2;
|
|
421
|
+
return fetch(item.outline, {
|
|
422
|
+
cache: 'no-store'
|
|
423
|
+
});
|
|
424
|
+
case 2:
|
|
425
|
+
response = _context3.sent;
|
|
426
|
+
_context3.next = 3;
|
|
427
|
+
return response.text();
|
|
428
|
+
case 3:
|
|
429
|
+
svgText = _context3.sent;
|
|
430
|
+
loader = new _SVGLoader.SVGLoader();
|
|
431
|
+
parsed = loader.parse(svgText);
|
|
432
|
+
if (!(0, _helper.isEmpty)(parsed.paths)) {
|
|
433
|
+
_context3.next = 4;
|
|
434
|
+
break;
|
|
435
|
+
}
|
|
436
|
+
return _context3.abrupt("return", null);
|
|
437
|
+
case 4:
|
|
438
|
+
return _context3.abrupt("return", {
|
|
439
|
+
paths: parsed.paths,
|
|
440
|
+
svgWidth: parseFloat(parsed.xml.getAttribute('width')) || ((_parsed$xml$viewBox = parsed.xml.viewBox) === null || _parsed$xml$viewBox === void 0 || (_parsed$xml$viewBox = _parsed$xml$viewBox.animVal) === null || _parsed$xml$viewBox === void 0 ? void 0 : _parsed$xml$viewBox.width) || 0,
|
|
441
|
+
svgHeight: parseFloat(parsed.xml.getAttribute('height')) || ((_parsed$xml$viewBox2 = parsed.xml.viewBox) === null || _parsed$xml$viewBox2 === void 0 || (_parsed$xml$viewBox2 = _parsed$xml$viewBox2.animVal) === null || _parsed$xml$viewBox2 === void 0 ? void 0 : _parsed$xml$viewBox2.height) || 0,
|
|
442
|
+
reverse: !parseFloat(parsed.xml.getAttribute('height'))
|
|
443
|
+
});
|
|
444
|
+
case 5:
|
|
445
|
+
_context3.prev = 5;
|
|
446
|
+
_t = _context3["catch"](1);
|
|
447
|
+
console.error('Failed to load SVG:', item.outline, _t);
|
|
448
|
+
return _context3.abrupt("return", null);
|
|
449
|
+
case 6:
|
|
450
|
+
case "end":
|
|
451
|
+
return _context3.stop();
|
|
452
|
+
}
|
|
453
|
+
}, _callee3, null, [[1, 5]]);
|
|
454
|
+
}));
|
|
455
|
+
return function (_x3) {
|
|
456
|
+
return _ref6.apply(this, arguments);
|
|
457
|
+
};
|
|
458
|
+
}());
|
|
459
|
+
_context4.next = 1;
|
|
460
|
+
return Promise.all(svgLoadPromises);
|
|
461
|
+
case 1:
|
|
462
|
+
outlineData = _context4.sent;
|
|
463
|
+
setOutlineSVGData(outlineData);
|
|
464
|
+
case 2:
|
|
465
|
+
case "end":
|
|
466
|
+
return _context4.stop();
|
|
467
|
+
}
|
|
468
|
+
}, _callee4);
|
|
469
|
+
}));
|
|
470
|
+
return function loadSVGs() {
|
|
471
|
+
return _ref5.apply(this, arguments);
|
|
472
|
+
};
|
|
473
|
+
}();
|
|
474
|
+
var initCatalog = /*#__PURE__*/function () {
|
|
475
|
+
var _ref7 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee5() {
|
|
476
|
+
return _regenerator["default"].wrap(function (_context5) {
|
|
477
|
+
while (1) switch (_context5.prev = _context5.next) {
|
|
478
|
+
case 0:
|
|
479
|
+
setCatalogInitiated(false);
|
|
480
|
+
_context5.next = 1;
|
|
481
|
+
return initMyCatalog();
|
|
482
|
+
case 1:
|
|
483
|
+
_context5.next = 2;
|
|
484
|
+
return loadMoldings();
|
|
485
|
+
case 2:
|
|
486
|
+
_context5.next = 3;
|
|
487
|
+
return loadSVGs();
|
|
488
|
+
case 3:
|
|
489
|
+
setCatalogInitiated(true);
|
|
490
|
+
case 4:
|
|
491
|
+
case "end":
|
|
492
|
+
return _context5.stop();
|
|
493
|
+
}
|
|
494
|
+
}, _callee5);
|
|
495
|
+
}));
|
|
287
496
|
return function initCatalog() {
|
|
288
|
-
return
|
|
497
|
+
return _ref7.apply(this, arguments);
|
|
289
498
|
};
|
|
290
499
|
}();
|
|
291
500
|
initCatalog();
|
|
292
501
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
293
|
-
}, [id]);
|
|
502
|
+
}, [categoryData, data, id, catalogs, colorAlias, subgroups]);
|
|
503
|
+
|
|
504
|
+
// Register items once SVGs are loaded
|
|
505
|
+
(0, _react.useEffect)(function () {
|
|
506
|
+
if (!outlineSVGData.length) return;
|
|
507
|
+
var Item = [];
|
|
508
|
+
data.forEach(function (obj, index) {
|
|
509
|
+
Item.push((0, _exporter["default"])(_objectSpread(_objectSpread({}, obj), {}, {
|
|
510
|
+
type: 'cabinet',
|
|
511
|
+
outlineSVGData: outlineSVGData[index],
|
|
512
|
+
render2DItem: _itemLoader.render2DItem,
|
|
513
|
+
render3DItem: _itemLoader.render3DItem
|
|
514
|
+
})));
|
|
515
|
+
});
|
|
516
|
+
appliances.forEach(function (obj) {
|
|
517
|
+
Item.push((0, _exporter["default"])(_objectSpread(_objectSpread({}, obj), {}, {
|
|
518
|
+
render2DItem: _itemLoader.render2DItem,
|
|
519
|
+
render3DItem: _itemLoader.render3DApplianceItem,
|
|
520
|
+
type: 'appliance'
|
|
521
|
+
})));
|
|
522
|
+
});
|
|
523
|
+
lighting.forEach(function (obj) {
|
|
524
|
+
Item.push((0, _exporter["default"])(_objectSpread(_objectSpread({}, obj), {}, {
|
|
525
|
+
type: 'lighting',
|
|
526
|
+
render2DItem: _itemLoader.render2DItem,
|
|
527
|
+
render3DItem: _itemLoader.render3DLightingItem
|
|
528
|
+
})));
|
|
529
|
+
});
|
|
530
|
+
furnishing.forEach(function (obj) {
|
|
531
|
+
Item.push((0, _exporter["default"])(_objectSpread(_objectSpread({}, obj), {}, {
|
|
532
|
+
type: 'furnishing',
|
|
533
|
+
render2DItem: _itemLoader.render2DItem,
|
|
534
|
+
render3DItem: _itemLoader.render3DApplianceItem
|
|
535
|
+
})));
|
|
536
|
+
});
|
|
537
|
+
for (var x in Item) MyCatalog.registerElement(Item[x]);
|
|
538
|
+
}, [outlineSVGData, data, appliances, furnishing, lighting]);
|
|
539
|
+
(0, _react.useEffect)(function () {
|
|
540
|
+
if (projectElement.length === 0) return;
|
|
541
|
+
if (!catalogInitiated) return;
|
|
542
|
+
sessionStorage.setItem('projectTitle', projectElement[0].title);
|
|
543
|
+
store.dispatch((0, _projectActions.rename)(projectElement[0].title));
|
|
544
|
+
sessionStorage.setItem('projectId', projectElement[0].id);
|
|
545
|
+
sessionStorage.setItem('email', projectElement[0].email);
|
|
546
|
+
sessionStorage.setItem('firstName', projectElement[0].firstName);
|
|
547
|
+
sessionStorage.setItem('lastName', projectElement[0].lastName);
|
|
548
|
+
sessionStorage.setItem('phone', projectElement[0].phone);
|
|
549
|
+
var jsonData;
|
|
550
|
+
jsonData = JSON.parse(projectElement[0].project_data);
|
|
551
|
+
jsonData.isLoadingCabinet = false;
|
|
552
|
+
store.dispatch((0, _projectActions.loadProject)(jsonData, categoryData));
|
|
553
|
+
}, [project_data, catalogInitiated]);
|
|
294
554
|
return /*#__PURE__*/_react["default"].createElement(_AppContext["default"].Provider, null, /*#__PURE__*/_react["default"].createElement(_reactRedux.Provider, {
|
|
295
555
|
store: store
|
|
296
556
|
}, /*#__PURE__*/_react["default"].createElement(ToolErrorBoundary, {
|
|
@@ -305,9 +565,11 @@ function LiteRenderer(props) {
|
|
|
305
565
|
stateExtractor: function stateExtractor(state) {
|
|
306
566
|
return state.get('KitchenConfigurator');
|
|
307
567
|
},
|
|
568
|
+
categoryData: categoryData,
|
|
569
|
+
data: data,
|
|
308
570
|
configData: configData,
|
|
309
571
|
externalEvent: externalEvent,
|
|
310
|
-
|
|
572
|
+
onExternalEventProcessed: onExternalEventProcessed
|
|
311
573
|
}, passThrough)))));
|
|
312
574
|
}
|
|
313
575
|
|
|
@@ -316,6 +578,9 @@ function LiteRenderer(props) {
|
|
|
316
578
|
LiteRenderer.propTypes = {
|
|
317
579
|
width: _propTypes["default"].oneOfType([_propTypes["default"].number, _propTypes["default"].string]),
|
|
318
580
|
height: _propTypes["default"].oneOfType([_propTypes["default"].number, _propTypes["default"].string]),
|
|
581
|
+
projectElement: _propTypes["default"].arrayOf(_propTypes["default"].object),
|
|
582
|
+
categoryData: _propTypes["default"].any,
|
|
583
|
+
dataBundle: _propTypes["default"].any,
|
|
319
584
|
configData: _propTypes["default"].any,
|
|
320
585
|
catalog: _propTypes["default"].oneOfType([_propTypes["default"].object, _propTypes["default"].instanceOf(Models.Catalog)]),
|
|
321
586
|
logoImg: _propTypes["default"].any,
|
|
@@ -329,7 +594,7 @@ LiteRenderer.propTypes = {
|
|
|
329
594
|
environment: _propTypes["default"].string
|
|
330
595
|
}),
|
|
331
596
|
externalEvent: _propTypes["default"].object,
|
|
332
|
-
|
|
597
|
+
onExternalEventProcessed: _propTypes["default"].func,
|
|
333
598
|
onError: _propTypes["default"].func,
|
|
334
599
|
store: _propTypes["default"].object
|
|
335
600
|
};
|
|
@@ -83,11 +83,9 @@ function editWidth(newWidth, layerID, itemID) {
|
|
|
83
83
|
};
|
|
84
84
|
}
|
|
85
85
|
function duplicateSelected(currentObject) {
|
|
86
|
-
var onInternalEvent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
|
|
87
86
|
return {
|
|
88
87
|
type: _constants.DUPLICATE_SELECTED,
|
|
89
|
-
currentObject: currentObject
|
|
90
|
-
onInternalEvent: onInternalEvent
|
|
88
|
+
currentObject: currentObject
|
|
91
89
|
};
|
|
92
90
|
}
|
|
93
91
|
function replaceItem(selectedPos, currentObject, selectedObject) {
|
|
@@ -129,13 +127,11 @@ function selectToolDrawingItem3D(sceneComponentType) {
|
|
|
129
127
|
};
|
|
130
128
|
}
|
|
131
129
|
function updateDrawingItem(layerID, x, y) {
|
|
132
|
-
var isInitialPos = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
|
133
130
|
return {
|
|
134
131
|
type: _constants.UPDATE_DRAWING_ITEM,
|
|
135
132
|
layerID: layerID,
|
|
136
133
|
x: x,
|
|
137
|
-
y: y
|
|
138
|
-
isInitialPos: isInitialPos
|
|
134
|
+
y: y
|
|
139
135
|
};
|
|
140
136
|
}
|
|
141
137
|
function endDrawingItem(layerID, x, y) {
|
|
@@ -278,11 +274,10 @@ function updateItemsAltitude(layerID, itemID, value) {
|
|
|
278
274
|
value: value
|
|
279
275
|
};
|
|
280
276
|
}
|
|
281
|
-
function setDoorStyle(doorStyle,
|
|
277
|
+
function setDoorStyle(doorStyle, isAll) {
|
|
282
278
|
return {
|
|
283
279
|
type: _constants.SET_DOOR_STYLE,
|
|
284
280
|
doorStyle: doorStyle,
|
|
285
|
-
itemCDS: itemCDS,
|
|
286
281
|
isAll: isAll
|
|
287
282
|
};
|
|
288
283
|
}
|
|
@@ -347,10 +342,11 @@ function setModelling(model) {
|
|
|
347
342
|
model: model
|
|
348
343
|
};
|
|
349
344
|
}
|
|
350
|
-
function setInitialDoorStyle(doorStyle) {
|
|
345
|
+
function setInitialDoorStyle(doorStyle, oStyle) {
|
|
351
346
|
return {
|
|
352
347
|
type: _constants.SET_INITIAL_DOOR_STYLE,
|
|
353
|
-
doorStyle: doorStyle
|
|
348
|
+
doorStyle: doorStyle,
|
|
349
|
+
oStyle: oStyle
|
|
354
350
|
};
|
|
355
351
|
}
|
|
356
352
|
function setMoveStatus(status) {
|
|
@@ -28,14 +28,12 @@ function selectToolDrawingLine(sceneComponentType) {
|
|
|
28
28
|
};
|
|
29
29
|
}
|
|
30
30
|
function beginDrawingLine(layerID, x, y, snapMask) {
|
|
31
|
-
var onInternalEvent = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null;
|
|
32
31
|
return {
|
|
33
32
|
type: _constants.BEGIN_DRAWING_LINE,
|
|
34
33
|
layerID: layerID,
|
|
35
34
|
x: x,
|
|
36
35
|
y: y,
|
|
37
|
-
snapMask: snapMask
|
|
38
|
-
onInternalEvent: onInternalEvent
|
|
36
|
+
snapMask: snapMask
|
|
39
37
|
};
|
|
40
38
|
}
|
|
41
39
|
function updateDrawingLine(x, y, relatedLines, snapMask) {
|
|
@@ -9,7 +9,6 @@ exports.addHorizontalGuide = addHorizontalGuide;
|
|
|
9
9
|
exports.addVerticalGuide = addVerticalGuide;
|
|
10
10
|
exports.changeCatalogPage = changeCatalogPage;
|
|
11
11
|
exports.copyProperties = copyProperties;
|
|
12
|
-
exports.createRoomWithShape = createRoomWithShape;
|
|
13
12
|
exports.goBackToCatalogPage = goBackToCatalogPage;
|
|
14
13
|
exports.initCatalog = initCatalog;
|
|
15
14
|
exports.loadProject = loadProject;
|
|
@@ -70,10 +69,11 @@ function setStateProperties(properties) {
|
|
|
70
69
|
properties: properties
|
|
71
70
|
};
|
|
72
71
|
}
|
|
73
|
-
function loadProject(sceneJSON) {
|
|
72
|
+
function loadProject(sceneJSON, categoryData) {
|
|
74
73
|
return {
|
|
75
74
|
type: _constants.LOAD_PROJECT,
|
|
76
|
-
sceneJSON: sceneJSON
|
|
75
|
+
sceneJSON: sceneJSON,
|
|
76
|
+
categoryData: categoryData
|
|
77
77
|
};
|
|
78
78
|
}
|
|
79
79
|
function newProject() {
|
|
@@ -151,10 +151,8 @@ function setHolesAttributes(holesAttributes) {
|
|
|
151
151
|
};
|
|
152
152
|
}
|
|
153
153
|
function remove() {
|
|
154
|
-
var delObject = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
|
|
155
154
|
return {
|
|
156
|
-
type: _constants.REMOVE
|
|
157
|
-
delObject: delObject
|
|
155
|
+
type: _constants.REMOVE
|
|
158
156
|
};
|
|
159
157
|
}
|
|
160
158
|
function undo() {
|
|
@@ -338,13 +336,4 @@ function selectAll() {
|
|
|
338
336
|
type: _constants.SELECT_ALL,
|
|
339
337
|
value: value
|
|
340
338
|
};
|
|
341
|
-
}
|
|
342
|
-
function createRoomWithShape(roomShapeType, width, height, doorStyle) {
|
|
343
|
-
return {
|
|
344
|
-
type: _constants.CREATE_ROOM_WITH_SHAPE,
|
|
345
|
-
width: width,
|
|
346
|
-
height: height,
|
|
347
|
-
roomShapeType: roomShapeType,
|
|
348
|
-
doorStyle: doorStyle
|
|
349
|
-
};
|
|
350
339
|
}
|