kitchen-simulator 4.4.4 → 5.0.0-new-api

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.
Files changed (51) hide show
  1. package/es/LiteRenderer.js +15 -53
  2. package/es/catalog/factories/area-factory-3d.js +0 -4
  3. package/es/catalog/holes/door-double/door_double.png +0 -0
  4. package/es/catalog/holes/door-panic/panicDoor.png +0 -0
  5. package/es/catalog/holes/door-panic-double/panicDoorDouble.png +0 -0
  6. package/es/catalog/holes/gate/gate.jpg +0 -0
  7. package/es/catalog/holes/window-clear/texture.png +0 -0
  8. package/es/catalog/holes/window-cross/texture.png +0 -0
  9. package/es/catalog/holes/window-double-hung/texture.png +0 -0
  10. package/es/catalog/holes/window-vertical/texture.png +0 -0
  11. package/es/catalog/utils/item-loader.js +0 -4
  12. package/es/class/item.js +17 -6
  13. package/es/constants.js +12 -7
  14. package/es/devLiteRenderer.js +91 -109
  15. package/es/mappings/external-events/mapExternalEventPayload.js +28 -0
  16. package/es/mappings/external-events/mappers/addItemMapper.js +86 -0
  17. package/es/mappings/external-events/mappers/ccdfMapper.js +86 -0
  18. package/es/mappings/external-events/mappers/ccdfToCDSMapper.js +31 -0
  19. package/es/mappings/external-events/mappers/changeDoorStyleMapper.js +65 -0
  20. package/es/mappings/external-events/mappers/loadProjectMapper.js +62 -0
  21. package/es/mappings/holesToCatalog.js +139 -0
  22. package/es/models.js +12 -1
  23. package/es/utils/isolate-event-handler.js +55 -45
  24. package/es/utils/molding.js +17 -1
  25. package/es/utils/skinPanelEngine.js +16 -11
  26. package/lib/LiteRenderer.js +17 -55
  27. package/lib/catalog/factories/area-factory-3d.js +0 -4
  28. package/lib/catalog/holes/door-double/door_double.png +0 -0
  29. package/lib/catalog/holes/door-panic/panicDoor.png +0 -0
  30. package/lib/catalog/holes/door-panic-double/panicDoorDouble.png +0 -0
  31. package/lib/catalog/holes/gate/gate.jpg +0 -0
  32. package/lib/catalog/holes/window-clear/texture.png +0 -0
  33. package/lib/catalog/holes/window-cross/texture.png +0 -0
  34. package/lib/catalog/holes/window-double-hung/texture.png +0 -0
  35. package/lib/catalog/holes/window-vertical/texture.png +0 -0
  36. package/lib/catalog/utils/item-loader.js +0 -4
  37. package/lib/class/item.js +17 -6
  38. package/lib/constants.js +17 -12
  39. package/lib/devLiteRenderer.js +93 -111
  40. package/lib/mappings/external-events/mapExternalEventPayload.js +33 -0
  41. package/lib/mappings/external-events/mappers/addItemMapper.js +92 -0
  42. package/lib/mappings/external-events/mappers/ccdfMapper.js +93 -0
  43. package/lib/mappings/external-events/mappers/ccdfToCDSMapper.js +37 -0
  44. package/lib/mappings/external-events/mappers/changeDoorStyleMapper.js +72 -0
  45. package/lib/mappings/external-events/mappers/loadProjectMapper.js +70 -0
  46. package/lib/mappings/holesToCatalog.js +148 -0
  47. package/lib/models.js +12 -1
  48. package/lib/utils/isolate-event-handler.js +55 -45
  49. package/lib/utils/molding.js +17 -1
  50. package/lib/utils/skinPanelEngine.js +15 -10
  51. package/package.json +1 -1
@@ -6,10 +6,11 @@ import { Map } from 'immutable';
6
6
  import ContainerDimensions from 'react-container-dimensions';
7
7
  import projectItemsCatalog from "./mocks/projectItemsCatalog.json";
8
8
  import mockProps from "./mocks/mockProps.json";
9
- import cabinetPaylod from "./mocks/cabinetPayload2.json";
9
+ import cabinetPaylod from "./mocks/cabinetPayload_new.json";
10
10
  import cabinetW0940Payload from "./mocks/cabinetPayload.json";
11
11
  import appliancePaylod from "./mocks/appliancePayload.json";
12
12
  import doorStylePaylod2 from "./mocks/doorStylePayload2.json";
13
+ import doorStylePayloadNew from "./mocks/doorStylePayload_new.json";
13
14
  import roomShapePayload from "./mocks/roomShapePayload.json";
14
15
  import itemCDSPayload from "./mocks/itemCDSPayload.json";
15
16
  import lightingPayload from "./mocks/lightingPayload.json";
@@ -17,10 +18,11 @@ import furnishingPayload from "./mocks/furnishingPayload.json";
17
18
  import rectangleData from "./mocks/rectangleShape.json";
18
19
  import moldingPayload from "./mocks/moldingPayload.json";
19
20
  import replaceCabinetPayload from "./mocks/replaceCabinetPayload.json";
21
+ import holesPayload from "./mocks/holesPayload.json";
20
22
  import ReactDOM from 'react-dom';
21
23
  import LiteRenderer from "./LiteRenderer";
22
24
  import { Button } from 'antd';
23
- import { LEFT, RIGHT, TOP, BOTTOM, EXTERNAL_EVENT_ADD_ITEM, EXTERNAL_EVENT_ADD_WALL, EXTERNAL_EVENT_TOGGLE_TO_3D, EXTERNAL_EVENT_TOGGLE_TO_2D, EXTERNAL_EVENT_TOGGLE_TO_ELEVATION, EXTERNAL_EVENT_MOVE_PAN, EXTERNAL_EVENT_NEW_PROJECT, EXTERNAL_EVENT_CHANGE_DOORSTYLE, EXTERNAL_EVENT_ADD_ROOM_SHAPE, EXTERNAL_EVENT_ZOOM_IN, EXTERNAL_EVENT_ZOOM_OUT, EXTERNAL_EVENT_UNDO, EXTERNAL_EVENT_REDO, EXTERNAL_EVENT_SET_MOLDING, EXTERNAL_EVENT_PROJECT_SETTING, PROJECT_SETTING_OPTION, EXTERNAL_EVENT_SYNC_SCENE, EXTERNAL_EVENT_UPDATE_ATTRIBUTE, BACK_DIST_ANG, ATT_ITEM_POS, ATT_ITEM_ROTATION, ATT_LINE_LENGTH, EXTERNAL_EVENT_UPDATE_PROPERTY, PROP_FLIP_DOOR_HANDLE, PROP_OPEN_DOORS, EXTERNAL_EVENT_LOAD_PROJECT, INTERNAL_EVENT_ITEMS_CATALOG, EXTERNAL_EVENT_ADD_HOLE, HOLE_NAMES, EXTERNAL_EVENT_CENTERING_2D, PROP_ALTITUDE, EXTERNAL_EVENT_DUPLICATE_ELEMENT, ELEMENT_ITEM, EXTERNAL_EVENT_DELETE_ELEMENT, PROP_RESIZE_WIDTH, EXTERNAL_EVENT_REPLACE_CABINET, EXTERNAL_EVENT_SET_FINISHING, FINISHING_TYPE, EXTERNAL_EVENT_ROTATE_PAN, DOORSTYLE_SCOPE_ALL } from "./constants";
25
+ import { LEFT, RIGHT, TOP, BOTTOM, EXTERNAL_EVENT_ADD_ITEM, EXTERNAL_EVENT_ADD_WALL, EXTERNAL_EVENT_TOGGLE_TO_3D, EXTERNAL_EVENT_TOGGLE_TO_2D, EXTERNAL_EVENT_TOGGLE_TO_ELEVATION, EXTERNAL_EVENT_MOVE_PAN, EXTERNAL_EVENT_NEW_PROJECT, EXTERNAL_EVENT_CHANGE_DOORSTYLE, EXTERNAL_EVENT_ADD_ROOM_SHAPE, EXTERNAL_EVENT_ZOOM_IN, EXTERNAL_EVENT_ZOOM_OUT, EXTERNAL_EVENT_UNDO, EXTERNAL_EVENT_REDO, EXTERNAL_EVENT_SET_MOLDING, EXTERNAL_EVENT_PROJECT_SETTING, PROJECT_SETTING_OPTION, EXTERNAL_EVENT_SYNC_SCENE, EXTERNAL_EVENT_UPDATE_ATTRIBUTE, BACK_DIST_ANG, ATT_ITEM_POS, ATT_ITEM_ROTATION, ATT_LINE_LENGTH, EXTERNAL_EVENT_UPDATE_PROPERTY, PROP_FLIP_DOOR_HANDLE, PROP_OPEN_DOORS, EXTERNAL_EVENT_LOAD_PROJECT, INTERNAL_EVENT_ITEMS_CATALOG, EXTERNAL_EVENT_ADD_HOLE, EXTERNAL_EVENT_CENTERING_2D, PROP_ALTITUDE, EXTERNAL_EVENT_DUPLICATE_ELEMENT, ELEMENT_ITEM, EXTERNAL_EVENT_DELETE_ELEMENT, PROP_RESIZE_WIDTH, EXTERNAL_EVENT_REPLACE_CABINET, EXTERNAL_EVENT_SET_FINISHING, FINISHING_TYPE, EXTERNAL_EVENT_ROTATE_PAN, DOORSTYLE_SCOPE_ALL } from "./constants";
24
26
  import { convert } from "./utils/convert-units-lite";
25
27
 
26
28
  // --- renderer props ---
@@ -60,6 +62,9 @@ function WorkSpace(props) {
60
62
  externalEvent = _useState2[0],
61
63
  setExternalEvent = _useState2[1];
62
64
  var offset = 5;
65
+ var holeButtons = Array.isArray(holesPayload) ? holesPayload.filter(function (hole) {
66
+ return hole && !hole.is_deleted;
67
+ }) : [];
63
68
  return /*#__PURE__*/React.createElement("div", {
64
69
  className: "flex gap-4"
65
70
  }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Button, {
@@ -237,6 +242,18 @@ function WorkSpace(props) {
237
242
  setExternalEvent(evt);
238
243
  }
239
244
  }, "DoorStyle (Change into Midtown White Shaker)"), /*#__PURE__*/React.createElement(Button, {
245
+ actionType: "danger",
246
+ onClick: function onClick() {
247
+ var evt = {
248
+ type: EXTERNAL_EVENT_CHANGE_DOORSTYLE,
249
+ payload: {
250
+ doorStyle: doorStylePayloadNew === null || doorStylePayloadNew === void 0 ? void 0 : doorStylePayloadNew.doorStyle,
251
+ applyScope: doorStylePayloadNew === null || doorStylePayloadNew === void 0 ? void 0 : doorStylePayloadNew.applyScope
252
+ }
253
+ };
254
+ setExternalEvent(evt);
255
+ }
256
+ }, "DoorStyle Change(New-Cambriage)"), /*#__PURE__*/React.createElement(Button, {
240
257
  actionType: "danger",
241
258
  onClick: function onClick() {
242
259
  var evt = {
@@ -245,7 +262,6 @@ function WorkSpace(props) {
245
262
  roomShapeType: 'rectangle',
246
263
  width: 250,
247
264
  height: 100,
248
- measurementUnit: 'in',
249
265
  doorStyle: {
250
266
  id: 36,
251
267
  type: 'door',
@@ -264,70 +280,70 @@ function WorkSpace(props) {
264
280
  doorStyles: {
265
281
  base: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
266
282
  counttop: 'https://media.test.diydesignspace.com/uploads/CountTop/202105074107_5/texture/Unique_Calcatta_texture.jpg',
267
- interior: 'http://127.0.0.1:4002/uploads/assets/default/maple.jpg',
283
+ interior: 'https://media.test.diydesignspace.com/uploads/assets/default/maple.jpg',
268
284
  base_door_1: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
269
285
  base_fixed_drawer_door_1: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
270
286
  base_drawer_1: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
271
287
  base_drawer_door_1: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
272
- door_handle_1: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
273
- fixed_drawer_door_handle_1: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
274
- drawer_door_handle_1: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
288
+ door_handle_1: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
289
+ fixed_drawer_door_handle_1: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
290
+ drawer_door_handle_1: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
275
291
  base_door_2: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
276
292
  base_fixed_drawer_door_2: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
277
293
  base_drawer_2: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
278
294
  base_drawer_door_2: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
279
- door_handle_2: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
280
- fixed_drawer_door_handle_2: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
281
- drawer_door_handle_2: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
295
+ door_handle_2: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
296
+ fixed_drawer_door_handle_2: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
297
+ drawer_door_handle_2: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
282
298
  base_door_3: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
283
299
  base_fixed_drawer_door_3: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
284
300
  base_drawer_3: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
285
301
  base_drawer_door_3: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
286
- door_handle_3: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
287
- fixed_drawer_door_handle_3: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
288
- drawer_door_handle_3: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
302
+ door_handle_3: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
303
+ fixed_drawer_door_handle_3: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
304
+ drawer_door_handle_3: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
289
305
  base_door_4: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
290
306
  base_fixed_drawer_door_4: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
291
307
  base_drawer_4: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
292
308
  base_drawer_door_4: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
293
- door_handle_4: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
294
- fixed_drawer_door_handle_4: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
295
- drawer_door_handle_4: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
309
+ door_handle_4: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
310
+ fixed_drawer_door_handle_4: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
311
+ drawer_door_handle_4: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
296
312
  base_door_5: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
297
313
  base_fixed_drawer_door_5: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
298
314
  base_drawer_5: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
299
315
  base_drawer_door_5: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
300
- door_handle_5: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
301
- fixed_drawer_door_handle_5: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
302
- drawer_door_handle_5: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
316
+ door_handle_5: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
317
+ fixed_drawer_door_handle_5: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
318
+ drawer_door_handle_5: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
303
319
  base_door_6: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
304
320
  base_fixed_drawer_door_6: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
305
321
  base_drawer_6: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
306
322
  base_drawer_door_6: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
307
- door_handle_6: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
308
- fixed_drawer_door_handle_6: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
309
- drawer_door_handle_6: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
323
+ door_handle_6: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
324
+ fixed_drawer_door_handle_6: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
325
+ drawer_door_handle_6: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
310
326
  base_door_7: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
311
327
  base_fixed_drawer_door_7: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
312
328
  base_drawer_7: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
313
329
  base_drawer_door_7: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
314
- door_handle_7: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
315
- fixed_drawer_door_handle_7: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
316
- drawer_door_handle_7: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
330
+ door_handle_7: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
331
+ fixed_drawer_door_handle_7: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
332
+ drawer_door_handle_7: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
317
333
  base_door_8: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
318
334
  base_fixed_drawer_door_8: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
319
335
  base_drawer_8: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
320
336
  base_drawer_door_8: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
321
- door_handle_8: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
322
- fixed_drawer_door_handle_8: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
323
- drawer_door_handle_8: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
337
+ door_handle_8: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
338
+ fixed_drawer_door_handle_8: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
339
+ drawer_door_handle_8: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
324
340
  base_door_9: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
325
341
  base_fixed_drawer_door_9: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
326
342
  base_drawer_9: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
327
343
  base_drawer_door_9: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
328
- door_handle_9: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
329
- fixed_drawer_door_handle_9: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
330
- drawer_door_handle_9: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg'
344
+ door_handle_9: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
345
+ fixed_drawer_door_handle_9: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
346
+ drawer_door_handle_9: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg'
331
347
  },
332
348
  installation_types: [125, 124]
333
349
  }
@@ -362,70 +378,70 @@ function WorkSpace(props) {
362
378
  doorStyles: {
363
379
  base: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
364
380
  counttop: 'https://media.test.diydesignspace.com/uploads/CountTop/202105074107_5/texture/Unique_Calcatta_texture.jpg',
365
- interior: 'http://127.0.0.1:4002/uploads/assets/default/maple.jpg',
381
+ interior: 'https://media.test.diydesignspace.com/uploads/assets/default/maple.jpg',
366
382
  base_door_1: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
367
383
  base_fixed_drawer_door_1: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
368
384
  base_drawer_1: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
369
385
  base_drawer_door_1: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
370
- door_handle_1: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
371
- fixed_drawer_door_handle_1: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
372
- drawer_door_handle_1: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
386
+ door_handle_1: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
387
+ fixed_drawer_door_handle_1: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
388
+ drawer_door_handle_1: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
373
389
  base_door_2: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
374
390
  base_fixed_drawer_door_2: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
375
391
  base_drawer_2: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
376
392
  base_drawer_door_2: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
377
- door_handle_2: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
378
- fixed_drawer_door_handle_2: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
379
- drawer_door_handle_2: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
393
+ door_handle_2: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
394
+ fixed_drawer_door_handle_2: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
395
+ drawer_door_handle_2: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
380
396
  base_door_3: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
381
397
  base_fixed_drawer_door_3: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
382
398
  base_drawer_3: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
383
399
  base_drawer_door_3: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
384
- door_handle_3: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
385
- fixed_drawer_door_handle_3: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
386
- drawer_door_handle_3: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
400
+ door_handle_3: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
401
+ fixed_drawer_door_handle_3: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
402
+ drawer_door_handle_3: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
387
403
  base_door_4: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
388
404
  base_fixed_drawer_door_4: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
389
405
  base_drawer_4: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
390
406
  base_drawer_door_4: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
391
- door_handle_4: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
392
- fixed_drawer_door_handle_4: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
393
- drawer_door_handle_4: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
407
+ door_handle_4: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
408
+ fixed_drawer_door_handle_4: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
409
+ drawer_door_handle_4: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
394
410
  base_door_5: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
395
411
  base_fixed_drawer_door_5: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
396
412
  base_drawer_5: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
397
413
  base_drawer_door_5: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
398
- door_handle_5: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
399
- fixed_drawer_door_handle_5: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
400
- drawer_door_handle_5: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
414
+ door_handle_5: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
415
+ fixed_drawer_door_handle_5: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
416
+ drawer_door_handle_5: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
401
417
  base_door_6: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
402
418
  base_fixed_drawer_door_6: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
403
419
  base_drawer_6: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
404
420
  base_drawer_door_6: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
405
- door_handle_6: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
406
- fixed_drawer_door_handle_6: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
407
- drawer_door_handle_6: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
421
+ door_handle_6: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
422
+ fixed_drawer_door_handle_6: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
423
+ drawer_door_handle_6: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
408
424
  base_door_7: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
409
425
  base_fixed_drawer_door_7: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
410
426
  base_drawer_7: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
411
427
  base_drawer_door_7: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
412
- door_handle_7: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
413
- fixed_drawer_door_handle_7: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
414
- drawer_door_handle_7: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
428
+ door_handle_7: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
429
+ fixed_drawer_door_handle_7: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
430
+ drawer_door_handle_7: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
415
431
  base_door_8: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
416
432
  base_fixed_drawer_door_8: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
417
433
  base_drawer_8: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
418
434
  base_drawer_door_8: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
419
- door_handle_8: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
420
- fixed_drawer_door_handle_8: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
421
- drawer_door_handle_8: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
435
+ door_handle_8: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
436
+ fixed_drawer_door_handle_8: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
437
+ drawer_door_handle_8: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
422
438
  base_door_9: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
423
439
  base_fixed_drawer_door_9: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
424
440
  base_drawer_9: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
425
441
  base_drawer_door_9: 'https://media.test.diydesignspace.com/uploads/DoorColor/202105065453_36/texture/White1px.jpeg',
426
- door_handle_9: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
427
- fixed_drawer_door_handle_9: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg',
428
- drawer_door_handle_9: 'http://127.0.0.1:4002/uploads/assets/default/steel.jpg'
442
+ door_handle_9: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
443
+ fixed_drawer_door_handle_9: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg',
444
+ drawer_door_handle_9: 'https://media.test.diydesignspace.com/uploads/assets/default/steel.jpg'
429
445
  },
430
446
  installation_types: [125, 124]
431
447
  }
@@ -614,56 +630,21 @@ function WorkSpace(props) {
614
630
  };
615
631
  setExternalEvent(evt);
616
632
  }
617
- }, "Delete Item"), /*#__PURE__*/React.createElement(Button, {
618
- actionType: "danger",
619
- onClick: function onClick() {
620
- var evt = {
621
- type: EXTERNAL_EVENT_ADD_HOLE,
622
- payload: {
623
- holeName: HOLE_NAMES.WINDOW_CROSS
624
- }
625
- };
626
- setExternalEvent(evt);
627
- }
628
- }, "Add Hole (Cross Window)"), /*#__PURE__*/React.createElement(Button, {
629
- actionType: "danger",
630
- onClick: function onClick() {
631
- var evt = {
632
- type: EXTERNAL_EVENT_ADD_HOLE,
633
- payload: {
634
- holeName: HOLE_NAMES.DOOR_EXTERIOR
635
- }
636
- };
637
- setExternalEvent(evt);
638
- }
639
- }, "Add Hole (DOOR_EXTERIOR)"), /*#__PURE__*/React.createElement(Button, {
640
- actionType: "danger",
641
- onClick: function onClick() {
642
- var evt = {
643
- type: EXTERNAL_EVENT_ADD_ITEM,
644
- payload: appliancePaylod
645
- };
646
- setExternalEvent(evt);
647
- }
648
- }, "Add Appliance (30 Bottom Freezer)"), /*#__PURE__*/React.createElement(Button, {
649
- actionType: "danger",
650
- onClick: function onClick() {
651
- var evt = {
652
- type: EXTERNAL_EVENT_ADD_ITEM,
653
- payload: lightingPayload
654
- };
655
- setExternalEvent(evt);
656
- }
657
- }, "Add Lighting"), /*#__PURE__*/React.createElement(Button, {
658
- actionType: "danger",
659
- onClick: function onClick() {
660
- var evt = {
661
- type: EXTERNAL_EVENT_ADD_ITEM,
662
- payload: furnishingPayload
663
- };
664
- setExternalEvent(evt);
665
- }
666
- }, "Add Furnishing"), /*#__PURE__*/React.createElement(Button, {
633
+ }, "Delete Item"), holeButtons.map(function (hole) {
634
+ return /*#__PURE__*/React.createElement(Button, {
635
+ key: "".concat(hole.type, "-").concat(hole.name),
636
+ actionType: "danger",
637
+ onClick: function onClick() {
638
+ var evt = {
639
+ type: EXTERNAL_EVENT_ADD_HOLE,
640
+ payload: {
641
+ holeName: hole.name
642
+ }
643
+ };
644
+ setExternalEvent(evt);
645
+ }
646
+ }, "Add Hole (".concat(hole.type, " - ").concat(hole.name, ")"));
647
+ }), /*#__PURE__*/React.createElement(Button, {
667
648
  actionType: "danger",
668
649
  onClick: function onClick() {
669
650
  var evt = {
@@ -860,6 +841,7 @@ function WorkSpace(props) {
860
841
  logoImg: "/assets/logo.png",
861
842
  companyUrl: "https://example.com",
862
843
  toolbarButtons: [],
844
+ holes: holesPayload,
863
845
  externalEvent: externalEvent,
864
846
  onInternalEvent: onInternalEvent,
865
847
  onError: function onError(payload) {
@@ -0,0 +1,28 @@
1
+ import { EXTERNAL_EVENT_ADD_ITEM, EXTERNAL_EVENT_CHANGE_DOORSTYLE, EXTERNAL_EVENT_LOAD_PROJECT, EXTERNAL_EVENT_REPLACE_CABINET } from "../../constants";
2
+ import { isEmpty } from "../../utils/helper";
3
+ import { mapAddItemEvent } from "./mappers/addItemMapper";
4
+ import { mapChangeDoorStyleEvent } from "./mappers/changeDoorStyleMapper";
5
+ import { mapLoadProjectEvent } from "./mappers/loadProjectMapper";
6
+
7
+ /**
8
+ * Main dispatcher for external event payload mapping.
9
+ * Converts new API formats into legacy internal formats (e.g. assets3d -> structure_json)
10
+ * without changing the behavior of the existing 3D tool.
11
+ */
12
+ export function mapExternalEventPayload(evt, state) {
13
+ if (isEmpty(evt)) return null;
14
+ switch (evt.type) {
15
+ case EXTERNAL_EVENT_REPLACE_CABINET:
16
+ evt.payload.replaceItemInfo = mapAddItemEvent(evt.payload.replaceItemInfo, state);
17
+ return evt;
18
+ case EXTERNAL_EVENT_ADD_ITEM:
19
+ evt.payload = mapAddItemEvent(evt.payload, state);
20
+ return evt;
21
+ case EXTERNAL_EVENT_CHANGE_DOORSTYLE:
22
+ return mapChangeDoorStyleEvent(evt, state);
23
+ case EXTERNAL_EVENT_LOAD_PROJECT:
24
+ return mapLoadProjectEvent(evt, state);
25
+ default:
26
+ return evt;
27
+ }
28
+ }
@@ -0,0 +1,86 @@
1
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
+ import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
3
+ 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; }
4
+ 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) { _defineProperty(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; }
5
+ import { isEmpty } from "../../../utils/helper";
6
+
7
+ /**
8
+ * Mapping logic for EXTERNAL_EVENT_ADD_ITEM.
9
+ *
10
+ * Converts the new assets3d payload shape into the legacy structure_json format
11
+ * expected by the existing 3D tool.
12
+ *
13
+ * @param {Object} evt.payload External event payload
14
+ * @param {Immutable.Map} state Planner state
15
+ * @returns {Object|null} Updated event (or null when payload is empty)
16
+ */
17
+ export function mapAddItemEvent(evtPayload, state) {
18
+ var _evtPayload;
19
+ // make structure_json using assest3D
20
+ var layerId = state.getIn(['scene', 'selectedLayer']);
21
+ var layer = state.getIn(['scene', 'layers', layerId]);
22
+ var tempStructure = {};
23
+ var tempPlaceholders = [];
24
+ var cabinetDoorFinishId, animation;
25
+ if (isEmpty(evtPayload)) return null;
26
+ var cabinetDoorFinish = (_evtPayload = evtPayload) === null || _evtPayload === void 0 ? void 0 : _evtPayload.ccdf;
27
+ var assets3d = cabinetDoorFinish === null || cabinetDoorFinish === void 0 ? void 0 : cabinetDoorFinish.assets3d;
28
+ if (isEmpty(assets3d)) {
29
+ // nothing to map; keep event as-is
30
+ return evtPayload;
31
+ }
32
+ if (!isEmpty(cabinetDoorFinish === null || cabinetDoorFinish === void 0 ? void 0 : cabinetDoorFinish.id)) {
33
+ cabinetDoorFinishId = cabinetDoorFinish.id;
34
+ }
35
+
36
+ // clone so we can push injected handle assets without mutating original
37
+ var updatedAssets3D = _toConsumableArray(assets3d);
38
+
39
+ // first pass: inject door-handle assets where needed
40
+ assets3d.forEach(function (asItem) {
41
+ // make door handle
42
+ if (!isEmpty(asItem === null || asItem === void 0 ? void 0 : asItem.placeholder_name)) {
43
+ var phName = asItem.placeholder_name;
44
+ if (phName.includes('door_')) {
45
+ var doorHandleName = phName.slice(0, phName.length - 2) + '_handle' + phName.slice(phName.length - 2);
46
+ updatedAssets3D.push({
47
+ placeholder_name: doorHandleName,
48
+ gltf: layer.get('doorHandle')
49
+ });
50
+ }
51
+ }
52
+ });
53
+
54
+ // second pass: build structure + placeholders from full asset list
55
+ updatedAssets3D.forEach(function (asitem) {
56
+ var _evtPayload2;
57
+ // set base field with gltf
58
+ tempStructure.base = (_evtPayload2 = evtPayload) === null || _evtPayload2 === void 0 ? void 0 : _evtPayload2.gltf;
59
+ if (!isEmpty(asitem === null || asitem === void 0 ? void 0 : asitem.placeholder_name)) {
60
+ // make the structure using placeholder_name and gltf
61
+ var phName = asitem.placeholder_name;
62
+ if (!phName.includes('_handle_') && !phName.includes('sink')) {
63
+ phName = 'base_' + phName;
64
+ }
65
+ tempStructure[phName] = asitem.gltf;
66
+ }
67
+ });
68
+
69
+ // make the tempPlaceholders using structure and id
70
+ tempPlaceholders.push({
71
+ id: cabinetDoorFinishId,
72
+ structure: tempStructure
73
+ });
74
+
75
+ // make the structure_json using animation and tempPlaceholders
76
+ var structure_json = {
77
+ animation: animation,
78
+ tempPlaceholders: tempPlaceholders
79
+ };
80
+
81
+ // rebuild the cabinet payload with structure_json
82
+ evtPayload = _objectSpread(_objectSpread({}, evtPayload), {}, {
83
+ structure_json: structure_json
84
+ });
85
+ return evtPayload;
86
+ }
@@ -0,0 +1,86 @@
1
+ import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
2
+ import { isEmpty } from "../../../components/viewer2d/utils";
3
+ import { Map } from 'immutable';
4
+ export function ccdfMapper(ccdf_list, layer) {
5
+ // This function make cabinet definition using ccdf, layer's item information and catalog
6
+ // console.log(ccdf_list, catalog);
7
+ // make structure_json list using ccdf-list
8
+ var cabinetDefinitionList = [];
9
+ var tempPlaceholders = [];
10
+ var structure = {};
11
+ var cdfId;
12
+ var structure_json = {};
13
+ var cabinetDefinition = {};
14
+ var layerJS = Map.isMap(layer) ? layer.toJS() : layer;
15
+ ccdf_list === null || ccdf_list === void 0 || ccdf_list.forEach(function (ccdf) {
16
+ var itemKeys = Object.keys(layerJS.items);
17
+ var correctItemId = '';
18
+ for (var i = 0; i < itemKeys.length; i++) {
19
+ if (layerJS.items[itemKeys[i]].itemID === ccdf.cabinet_id) correctItemId = layerJS.items[itemKeys[i]].id;
20
+ }
21
+ var cd = layerJS.items[correctItemId];
22
+ if (cd.itemID === ccdf.cabinet_id) {
23
+ if (!isEmpty(ccdf === null || ccdf === void 0 ? void 0 : ccdf.id)) {
24
+ cdfId = ccdf.id;
25
+ }
26
+ var assets3d = ccdf === null || ccdf === void 0 ? void 0 : ccdf.assets3d;
27
+ var updatedAssets3D = _toConsumableArray(assets3d);
28
+ // make structure
29
+ assets3d.forEach(function (asItem) {
30
+ // make door handle
31
+ if (!isEmpty(asItem === null || asItem === void 0 ? void 0 : asItem.placeholder_name)) {
32
+ var phName = asItem.placeholder_name;
33
+ if (phName.includes('door_')) {
34
+ var doorHandleName = phName.slice(0, phName.length - 2) + '_handle' + phName.slice(phName.length - 2);
35
+ updatedAssets3D.push({
36
+ placeholder_name: doorHandleName,
37
+ gltf: layerJS.doorHandle
38
+ });
39
+ }
40
+ }
41
+ });
42
+ updatedAssets3D.forEach(function (asitem) {
43
+ // set base field with gltf
44
+ structure.base = cd.gltf;
45
+ if (!isEmpty(asitem === null || asitem === void 0 ? void 0 : asitem.placeholder_name)) {
46
+ // make the structure using placeholder_name and gltf
47
+ var phName = asitem.placeholder_name;
48
+ if (!phName.includes('_handle_') && !phName.includes('sink')) {
49
+ phName = 'base_' + phName;
50
+ }
51
+ structure[phName] = asitem.gltf;
52
+ }
53
+ });
54
+ // make tempPlaceholders
55
+ tempPlaceholders.push({
56
+ structure: structure,
57
+ id: cdfId
58
+ });
59
+ // make structure_json
60
+ structure_json = {
61
+ tempPlaceholders: tempPlaceholders
62
+ };
63
+ // make cabinet definition using structure_json and catalog
64
+ cabinetDefinition = {
65
+ type: cd.category,
66
+ itemID: cd.itemID,
67
+ name: cd.name,
68
+ long_name: cd.long_name,
69
+ sizeinfo: cd.sizeinfo,
70
+ description: cd.description,
71
+ prototype: cd.prototype,
72
+ base: cd.base,
73
+ shape_svg: cd.shape_svg,
74
+ gltf: cd.gltf,
75
+ structure_json: structure_json,
76
+ layoutpos: cd.layoutpos,
77
+ is_corner: cd.is_corner,
78
+ obj_property: cd.obj_property,
79
+ outline: cd.outline
80
+ };
81
+ }
82
+ // make cabinet definition list using cabinetDefinition
83
+ cabinetDefinitionList.push(cabinetDefinition);
84
+ });
85
+ return cabinetDefinitionList;
86
+ }
@@ -0,0 +1,31 @@
1
+ import { isEmpty } from "../../../components/viewer2d/utils";
2
+ export function mapFromCCDFToCDS(ccdf_list) {
3
+ // This function make CDS from CCDF_List
4
+ var itemCDSList = [];
5
+ var itemCDSData = {};
6
+ var cabitnetDoorStyleId;
7
+ ccdf_list === null || ccdf_list === void 0 || ccdf_list.forEach(function (asItem) {
8
+ if (!isEmpty(asItem === null || asItem === void 0 ? void 0 : asItem.id)) {
9
+ cabitnetDoorStyleId = asItem.id;
10
+ }
11
+ asItem === null || asItem === void 0 || asItem.assets3d.forEach(function (as) {
12
+ if (!isEmpty(as === null || as === void 0 ? void 0 : as.placeholder_name) && !isEmpty(as === null || as === void 0 ? void 0 : as.gltf)) {
13
+ var updatedName = 'base_' + (as === null || as === void 0 ? void 0 : as.placeholder_name) + '_gltf';
14
+ itemCDSData[updatedName] = as === null || as === void 0 ? void 0 : as.gltf;
15
+ }
16
+ itemCDSData['is_euro_cds'] = !isEmpty(as === null || as === void 0 ? void 0 : as.is_euro_cds) ? as.is_euro_cds : 0;
17
+ itemCDSData['euro_shape_svg'] = !isEmpty(as === null || as === void 0 ? void 0 : as.euro_shape_svg) ? as.is_euro_cds : null;
18
+ itemCDSData['euro_width'] = !isEmpty(as === null || as === void 0 ? void 0 : as.euro_width) ? as.is_euro_cds : null;
19
+ itemCDSData['euro_height'] = !isEmpty(as === null || as === void 0 ? void 0 : as.euro_height) ? as.is_euro_cds : null;
20
+ itemCDSData['euro_length'] = !isEmpty(as === null || as === void 0 ? void 0 : as.euro_length) ? as.is_euro_cds : null;
21
+ });
22
+ var data = [];
23
+ data.push(itemCDSData);
24
+ itemCDSList.push({
25
+ itemID: asItem.cabinet_id,
26
+ data: data,
27
+ cabinet_door_style_id: cabitnetDoorStyleId
28
+ });
29
+ });
30
+ return itemCDSList;
31
+ }