kitchen-simulator 11.30.3 → 11.32.0

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 (77) hide show
  1. package/es/assets/img/svg/accessories.svg +4 -4
  2. package/es/assets/img/svg/bottombar/elevation-back.svg +6 -6
  3. package/es/assets/img/svg/bottombar/elevation-front.svg +6 -6
  4. package/es/assets/img/svg/bottombar/elevation-left.svg +6 -6
  5. package/es/assets/img/svg/bottombar/elevation-right.svg +7 -7
  6. package/es/assets/img/svg/bottombar/elevation.svg +13 -13
  7. package/es/assets/img/svg/detail.svg +77 -77
  8. package/es/assets/img/svg/filtersActive.svg +19 -19
  9. package/es/assets/img/svg/invert.svg +12 -12
  10. package/es/assets/img/svg/menubar/login.svg +84 -84
  11. package/es/assets/img/svg/menubar/my_projects.svg +85 -85
  12. package/es/assets/img/svg/menubar/new_project.svg +110 -110
  13. package/es/assets/img/svg/menubar/save_project.svg +84 -84
  14. package/es/assets/img/svg/options.svg +3 -3
  15. package/es/assets/img/svg/positioning.svg +3 -3
  16. package/es/assets/img/svg/toggleFilters.svg +19 -19
  17. package/es/assets/img/svg/toolbar/shopping-cart.svg +13 -13
  18. package/es/assets/img/svg/wizardstep/detail_view.svg +87 -87
  19. package/es/assets/img/svg/wizardstep/tile_view.svg +95 -95
  20. package/es/catalog/utils/exporter.js +2 -0
  21. package/es/catalog/utils/item-loader.js +9 -4
  22. package/es/class/item.js +1 -0
  23. package/es/components/viewer3d/camera-controls-module/camera-controls.module.js +556 -556
  24. package/es/components/viewer3d/scene-creator.js +5 -5
  25. package/es/constants.js +1 -0
  26. package/es/engine/2d/viewer-utils.js +11 -11
  27. package/es/events/external/handleExternalEvent.util.js +80 -66
  28. package/es/events/external/handlers.changeDoorStyle.js +8 -15
  29. package/es/events/external/handlers.loadProject.js +8 -15
  30. package/es/mappings/external-events/mapExternalEventPayload.js +4 -4
  31. package/es/mappings/external-events/mappers/addItemMapper.js +9 -9
  32. package/es/mappings/external-events/mappers/ccdfMapper.js +7 -13
  33. package/es/models.js +2 -0
  34. package/es/shared/concurrency/async-pool.js +71 -0
  35. package/es/shared/domain/asset/sanitize-asset-url.js +5 -5
  36. package/es/shared/math/line-metrics.js +11 -11
  37. package/es/utils/geometry.js +6 -4
  38. package/es/utils/skinPanelEngine.js +14 -14
  39. package/lib/assets/img/svg/accessories.svg +4 -4
  40. package/lib/assets/img/svg/bottombar/elevation-back.svg +6 -6
  41. package/lib/assets/img/svg/bottombar/elevation-front.svg +6 -6
  42. package/lib/assets/img/svg/bottombar/elevation-left.svg +6 -6
  43. package/lib/assets/img/svg/bottombar/elevation-right.svg +7 -7
  44. package/lib/assets/img/svg/bottombar/elevation.svg +13 -13
  45. package/lib/assets/img/svg/detail.svg +77 -77
  46. package/lib/assets/img/svg/filtersActive.svg +19 -19
  47. package/lib/assets/img/svg/invert.svg +12 -12
  48. package/lib/assets/img/svg/menubar/login.svg +84 -84
  49. package/lib/assets/img/svg/menubar/my_projects.svg +85 -85
  50. package/lib/assets/img/svg/menubar/new_project.svg +110 -110
  51. package/lib/assets/img/svg/menubar/save_project.svg +84 -84
  52. package/lib/assets/img/svg/options.svg +3 -3
  53. package/lib/assets/img/svg/positioning.svg +3 -3
  54. package/lib/assets/img/svg/toggleFilters.svg +19 -19
  55. package/lib/assets/img/svg/toolbar/shopping-cart.svg +13 -13
  56. package/lib/assets/img/svg/wizardstep/detail_view.svg +87 -87
  57. package/lib/assets/img/svg/wizardstep/tile_view.svg +95 -95
  58. package/lib/catalog/utils/exporter.js +2 -0
  59. package/lib/catalog/utils/item-loader.js +9 -4
  60. package/lib/class/item.js +1 -0
  61. package/lib/components/viewer3d/camera-controls-module/camera-controls.module.js +556 -556
  62. package/lib/components/viewer3d/scene-creator.js +5 -5
  63. package/lib/constants.js +5 -4
  64. package/lib/engine/2d/viewer-utils.js +11 -11
  65. package/lib/events/external/handleExternalEvent.util.js +80 -66
  66. package/lib/events/external/handlers.changeDoorStyle.js +8 -15
  67. package/lib/events/external/handlers.loadProject.js +8 -15
  68. package/lib/mappings/external-events/mapExternalEventPayload.js +4 -4
  69. package/lib/mappings/external-events/mappers/addItemMapper.js +9 -9
  70. package/lib/mappings/external-events/mappers/ccdfMapper.js +7 -13
  71. package/lib/models.js +2 -0
  72. package/lib/shared/concurrency/async-pool.js +78 -0
  73. package/lib/shared/domain/asset/sanitize-asset-url.js +5 -5
  74. package/lib/shared/math/line-metrics.js +11 -11
  75. package/lib/utils/geometry.js +5 -3
  76. package/lib/utils/skinPanelEngine.js +14 -14
  77. package/package.json +1 -1
@@ -3092,12 +3092,12 @@ function createBacksplash(item, layer, planData, scene) {
3092
3092
  var disD0 = lineLength * hole.offset - width / 2;
3093
3093
  var disD1 = lineLength * hole.offset + width / 2;
3094
3094
  D0 = {
3095
- x: v0.x + disD0 * Math.cos(hole.rotRad),
3096
- y: v0.y + disD0 * Math.sin(hole.rotRad)
3095
+ x: v0.x + disD0 * Math.cos(hole.rotation),
3096
+ y: v0.y + disD0 * Math.sin(hole.rotation)
3097
3097
  };
3098
3098
  D1 = {
3099
- x: v0.x + disD1 * Math.cos(hole.rotRad),
3100
- y: v0.y + disD1 * Math.sin(hole.rotRad)
3099
+ x: v0.x + disD1 * Math.cos(hole.rotation),
3100
+ y: v0.y + disD1 * Math.sin(hole.rotation)
3101
3101
  };
3102
3102
  }
3103
3103
  if (!(0, _helper.isEmpty)(width) && !(0, _helper.isEmpty)(altitude) && hole.line === (curLine === null || curLine === void 0 ? void 0 : curLine.id)) altItems.push({
@@ -3672,7 +3672,7 @@ function updateMoldingGroupArray(MGArray, selItem, planData, layer) {
3672
3672
  var _mg$items$2, _mg$items$3, _mg$items$4;
3673
3673
  var molding = (0, _helper.isImmutable)((_mg$items$2 = mg.items[0]) === null || _mg$items$2 === void 0 ? void 0 : _mg$items$2.molding) ? (_mg$items$3 = mg.items[0]) === null || _mg$items$3 === void 0 || (_mg$items$3 = _mg$items$3.molding) === null || _mg$items$3 === void 0 ? void 0 : _mg$items$3.filter(function (mol) {
3674
3674
  var _mol$toJS2;
3675
- return (mol === null || mol === void 0 || (_mol$toJS2 = mol.toJS()) === null || _mol$toJS2 === void 0 ? void 0 : _mol$toJS2.location_type) === mg.location_type;
3675
+ return (0, _helper.isImmutable)(mol) ? (mol === null || mol === void 0 || (_mol$toJS2 = mol.toJS()) === null || _mol$toJS2 === void 0 ? void 0 : _mol$toJS2.location_type) === mg.location_type : (mol === null || mol === void 0 ? void 0 : mol.location_type) === mg.location_type;
3676
3676
  }).toJS()[0] : (_mg$items$4 = mg.items[0]) === null || _mg$items$4 === void 0 || (_mg$items$4 = _mg$items$4.molding) === null || _mg$items$4 === void 0 ? void 0 : _mg$items$4.filter(function (mol) {
3677
3677
  return (mol === null || mol === void 0 ? void 0 : mol.location_type) === mg.location_type;
3678
3678
  })[0];
package/lib/constants.js CHANGED
@@ -4,10 +4,10 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.END_DRAGGING_VERTEX = exports.END_DRAGGING_LINE = exports.END_DRAGGING_ITEM_3D = exports.END_DRAGGING_ITEM = exports.END_DRAGGING_HOLE_3D = exports.END_DRAGGING_HOLE = exports.END_CREATING_HOLE = exports.END_CREATING_CABINET = exports.ELEVATION_VIEW_TITLE = exports.ELEVATION_VIEW_RIGHT = exports.ELEVATION_VIEW_LEFT = exports.ELEVATION_VIEW_KEYWORD = exports.ELEVATION_VIEW_FRONT = exports.ELEVATION_VIEW_BACK = exports.ELEVATION_VIEW = exports.ELEMENT_VERTEX = exports.ELEMENT_LINE = exports.ELEMENT_ITEM = exports.ELEMENT_HOLE = exports.ELEMENT_AREA = exports.EDIT_WIDTH = exports.EDIT = exports.DUPLICATE_SELECTED = exports.DOORSTYLE_SCOPE_SINGLE = exports.DOORSTYLE_SCOPE_MULTIPLE = exports.DOORSTYLE_SCOPE_ALL = exports.DISTANCE_MEASUREMENT_LINE_COLOR = exports.DISTANCE_EPSILON = exports.DIFFERENT_VALUES_PATH_LENGTH = exports.DELTA = exports.DEFAULT_MOLDING_PIECE_LENGTH = exports.DEFAULT_INTERIOR_TEXTURE = exports.DEFAULT_FONT_FAMILY = exports.DEFAULT_DOOR_HANDLE_TEXTURE_URL = exports.DECIMAL_PLACES_3 = exports.DECIMAL_PLACES_2 = exports.DASH_LINE_COLOR = exports.CREATE_ROOM_WITH_SHAPE = exports.COPY_PROPERTIES = exports.CLIENTS_NAME = exports.CHANGE_WINDOW_DOOR_MEASURE = exports.CHANGE_WALL_LENGTH_MEASURE = exports.CHANGE_WALL_CABINET_MEASURE = exports.CHANGE_MEASUREMENT_UNIT = exports.CHANGE_CATALOG_PAGE = exports.CHANGE_BASE_CABINET_MEASURE = exports.CEIL_UNITS_LENGTH = exports.BROWN_COLOR = exports.BOTTOM_MOLDING_LOCATION = exports.BOTTOM = exports.BG_COLOR_OVERLAY = exports.BG_COLOR_HOVER = exports.BG_COLOR_1 = exports.BG_COLOR_0 = exports.BEGIN_UPLOADING_IMAGE = exports.BEGIN_ROTATING_ITEM_3D = exports.BEGIN_ROTATING_ITEM = exports.BEGIN_FITTING_IMAGE = exports.BEGIN_DRAWING_LINE = exports.BEGIN_DRAGGING_VERTEX = exports.BEGIN_DRAGGING_LINE = exports.BEGIN_DRAGGING_ITEM_3D = exports.BEGIN_DRAGGING_ITEM = exports.BEGIN_DRAGGING_HOLE_3D = exports.BEGIN_DRAGGING_HOLE = exports.BASE_ITEM_MEASUREMENT_LINE_COLOR = exports.BASE_CABINET_LAYOUTPOS = exports.BACK_DIST_ANG = exports.ATT_VERTEXT_TWO = exports.ATT_VERTEXT_ONE = exports.ATT_LINE_LENGTH = exports.ATT_ITEM_ROTATION = exports.ATT_ITEM_POS = exports.ATT_HOLE_OFFSET_B = exports.ATT_HOLE_OFFSET_A = exports.ARROW_TEXT_FORECOLOR = exports.ARROW_TEXT_FONTFACE = exports.ARROW_TEXT_BACKCOLOR = exports.ARROW_COLOR = exports.ARRAY_ELEVATION_VIEW_MODES = exports.ARRAY_3D_MODES = exports.AREA_ACTIONS = exports.API_SERVER_URL = exports.ANIMATE_STEP_MIN = exports.ANIMATE_STEP_MAX = exports.ANIMATE_OBJECT_OPEN_DOOR_ROTATION_UNIT = exports.ANIMATE_OBJECT = exports.ALTERATE_STATE = exports.ADD_VERTICAL_GUIDE = exports.ADD_TO_GROUP = exports.ADD_LAYER = exports.ADD_HORIZONTAL_GUIDE = exports.ADD_GROUP_FROM_SELECTED = exports.ADD_GROUP = exports.ADD_ELEMENT_TO_CATALOG = exports.ADD_CIRCULAR_GUIDE = exports.ADD_CABINETS = exports.ADD_APPLIANCES = exports.ACCESSORIES_LAYOUTPOS = exports.ACCENT_COLOR = void 0;
7
- exports.MODE_CONFIGURING_PROJECT = exports.MODE_BACK_ELEVATION_VIEW = exports.MODE_3D_VIEW = exports.MODE_3D_FIRST_PERSON = exports.MODE_2D_ZOOM_OUT = exports.MODE_2D_ZOOM_IN = exports.MODE_2D_PAN = exports.MODE = exports.MIN_ANGLE_DISALLOW_DRAW_WALL = exports.MIDDLE_MOLDING_LOCATION = exports.MEPSILON = exports.MAX_ZOOM_IN_SCALE = exports.MAX_ANGLE_SCALE = exports.MAKE_FLOOR_PLAN = exports.LOGOUT = exports.LOGIN_SUCCESS = exports.LOGIN_ERROR = exports.LOCAL_STORAGE_TOKEN_VALUE = exports.LOCAL_STORAGE_TOKEN_NAME = exports.LOCAL_STORAGE_ORIGINAL_TOKEN = exports.LOCAL_STORAGE_CUSTOMER_INFO = exports.LOCAL_STORAGE_CART_ACTION = exports.LOAD_PROJECT = exports.LIST_QUANTITIES = exports.LIST_PARTS = exports.LINE_THICKNESS = exports.LINE_ACTIONS = exports.LEFT_DIST_ANG = exports.LEFT = exports.LABEL_COLOR = exports.KITCHEN_KONFIGURATOR = exports.KEYBOARD_BUTTON_CODE = exports.ITEM_TYPE = exports.ITEM_MOVE_UP = exports.ITEMS_ACTIONS = exports.INVERT = exports.INTERNAL_EVENT_UNSELECT_ALL = exports.INTERNAL_EVENT_TOGGLE_TO_ELEVATION = exports.INTERNAL_EVENT_SYNC_SCENE = exports.INTERNAL_EVENT_START_DRAW_WALL = exports.INTERNAL_EVENT_SELECT_ELEMENT = exports.INTERNAL_EVENT_ROTATE_ELEMENT = exports.INTERNAL_EVENT_REPLACE_CABINET = exports.INTERNAL_EVENT_MIRROR_ELEMENT = exports.INTERNAL_EVENT_ITEMS_CATALOG = exports.INTERNAL_EVENT_DRAW_ELEMENT = exports.INTERNAL_EVENT_DRAG_ELEMENT = exports.INSTALLATION_TYPE_SKU_SUFFIX = exports.INSTALLATION_TYPE_NAME = exports.INSTALLATION_SUFFIX_TYPE = exports.INIT_CATALOG = exports.HOLE_NAMES = exports.HOLE_ACTIONS = exports.HDR_URLS = exports.HAS_LOADINGBAR = exports.GROUP_TRANSLATE = exports.GROUP_ROTATE = exports.GROUP_ACTIONS = exports.GO_BACK_TO_CATALOG_PAGE = exports.FRONT_DIST_ANG = exports.FINISHING_TYPE = exports.FINISHING_TOUCH = exports.EXTERNAL_EVENT_ZOOM_OUT = exports.EXTERNAL_EVENT_ZOOM_IN = exports.EXTERNAL_EVENT_UPDATE_PROPERTY = exports.EXTERNAL_EVENT_UPDATE_ATTRIBUTE = exports.EXTERNAL_EVENT_UNDO = exports.EXTERNAL_EVENT_TOGGLE_TO_ELEVATION = exports.EXTERNAL_EVENT_TOGGLE_TO_3D = exports.EXTERNAL_EVENT_TOGGLE_TO_2D = exports.EXTERNAL_EVENT_SYNC_SCENE = exports.EXTERNAL_EVENT_SET_MOLDING = exports.EXTERNAL_EVENT_SET_FINISHING = exports.EXTERNAL_EVENT_ROTATE_PAN = exports.EXTERNAL_EVENT_REPLACE_CABINET = exports.EXTERNAL_EVENT_REDO = exports.EXTERNAL_EVENT_PROJECT_SETTING = exports.EXTERNAL_EVENT_NEW_PROJECT = exports.EXTERNAL_EVENT_MOVE_PAN = exports.EXTERNAL_EVENT_MIRROR_ELEMENT = exports.EXTERNAL_EVENT_LOAD_PROJECT = exports.EXTERNAL_EVENT_DUPLICATE_ELEMENT = exports.EXTERNAL_EVENT_DELETE_ELEMENT = exports.EXTERNAL_EVENT_CHANGE_DOORSTYLE = exports.EXTERNAL_EVENT_CENTERING_2D = exports.EXTERNAL_EVENT_ADD_WALL = exports.EXTERNAL_EVENT_ADD_ROOM_SHAPE = exports.EXTERNAL_EVENT_ADD_ITEM = exports.EXTERNAL_EVENT_ADD_HOLE = exports.ERROR_DATABASE = exports.EPSILON = exports.END_UPLOADING_IMAGE = exports.END_ROTATING_ITEM_3D = exports.END_ROTATING_ITEM = exports.END_LOADING = exports.END_FITTING_IMAGE = exports.END_DRAWING_LINE = exports.END_DRAWING_ITEM = exports.END_DRAWING_HOLE_3D = exports.END_DRAWING_HOLE = void 0;
8
- exports.SELECT_TOOL_PAN = exports.SELECT_TOOL_EDIT = exports.SELECT_TOOL_DRAWING_LINE = exports.SELECT_TOOL_DRAWING_ITEM_3D = exports.SELECT_TOOL_DRAWING_ITEM = exports.SELECT_TOOL_DRAWING_HOLE_3D = exports.SELECT_TOOL_DRAWING_HOLE = exports.SELECT_TOOL_3D_VIEW = exports.SELECT_TOOL_3D_FIRST_PERSON = exports.SELECT_LINE = exports.SELECT_LAYER = exports.SELECT_ITEM = exports.SELECT_HOLE = exports.SELECT_GROUP = exports.SELECT_DOOR_STYLE = exports.SELECT_AREA = exports.SELECT_ALL = exports.SELECTALL = exports.SECONDARY_PURPLE_COLOR = exports.SECONDARY_BLUE_COLOR = exports.SCENE_ACTIONS = exports.SAVE_PROJECT = exports.SAVE_DESIGN = exports.ROOM_SHAPE_TYPE = exports.ROOM_SHAPE_MEASUREMENT_LINE_COLOR = exports.ROOM_ELEMENT_MEASUREMENT_LINE_COLOR = exports.ROLLBACK = exports.RIGHT_DIST_ANG = exports.RIGHT = exports.REVIEW_AND_QUOTE = exports.REQUEST_ASSISTANCE = exports.REPLACE_SUBMODULE = exports.REPLACE_ITEM = exports.REMOVE_VERTICAL_GUIDE = exports.REMOVE_REPLACE_SUBMODULE = exports.REMOVE_LINEAR = exports.REMOVE_LAYER = exports.REMOVE_HORIZONTAL_GUIDE = exports.REMOVE_GROUP_AND_DELETE_ELEMENTS = exports.REMOVE_GROUP = exports.REMOVE_FROM_GROUP = exports.REMOVE_DRAWING_SUPPORT = exports.REMOVE_CIRCULAR_GUIDE = exports.REMOVE = exports.REDO = exports.RECREATE = exports.PUSH_LAST_SELECTED_CATALOG_ELEMENT_TO_HISTORY = exports.PROP_RESIZE_WIDTH = exports.PROP_RESIZE_HEIGHT = exports.PROP_RESIZE_DEPTH = exports.PROP_OPEN_DOORS = exports.PROP_FLIP_DOOR_HANDLE = exports.PROP_ALTITUDE = exports.PROJECT_SETTING_OPTION = exports.PROJECT_RE_NAME = exports.PROJECT_NAME_LENGTH_LIMIT = exports.PROJECT_ACTIONS = exports.PRODUCT = exports.PRIMARY_GREEN_COLOR = exports.PASTE_PROPERTIES = exports.OVERLAP_SOME = exports.OVERLAP_SAME = exports.OVERLAP_NONE = exports.OVERLAP_LINK = exports.OVERLAP_INCLUDED = exports.OPEN_PROJECT_CONFIGURATOR = exports.OPEN_CATALOG = exports.OBJTYPE_MESH = exports.OBJTYPE_GROUP = exports.NO_DATA_DATABASE = exports.NEW_PROJECT_BTN = exports.NEW_PROJECT = exports.NEW_DESIGN = exports.MOVE_COMPONENT = exports.MOLDING_LOCATIONS = exports.MODE_WAITING_DRAWING_LINE = exports.MODE_VIEWING_CATALOG = exports.MODE_UPLOADING_IMAGE = exports.MODE_SNAPPING = exports.MODE_ROTATING_ITEM_3D = exports.MODE_ROTATING_ITEM = exports.MODE_RIGHT_ELEVATION_VIEW = exports.MODE_LEFT_ELEVATION_VIEW = exports.MODE_IDLE_3D = exports.MODE_IDLE = exports.MODE_FRONT_VIEW = exports.MODE_FRONT_ELEVATION_VIEW = exports.MODE_FITTING_IMAGE = exports.MODE_ELEVATION_VIEW = exports.MODE_DRAWING_LINE = exports.MODE_DRAWING_ITEM_3D = exports.MODE_DRAWING_ITEM = exports.MODE_DRAWING_HOLE_3D = exports.MODE_DRAWING_HOLE = exports.MODE_DRAGGING_VERTEX = exports.MODE_DRAGGING_LINE = exports.MODE_DRAGGING_ITEM_3D = exports.MODE_DRAGGING_ITEM = exports.MODE_DRAGGING_HOLE_3D = exports.MODE_DRAGGING_HOLE = void 0;
9
- exports.UNSELECT_GROUP = exports.UNSELECT_ALL = exports.UNIT_MILLIMETER = exports.UNIT_MILE = exports.UNIT_METER = exports.UNIT_INCH_LONG = exports.UNIT_INCH = exports.UNIT_FOOT = exports.UNIT_CENTIMETER = exports.UNIT_ANGLE = exports.UNITS_LENGTH = exports.UNDO = exports.UNCREATE = exports.TWO_D_FLOOR_PLAN = exports.TOP_MOLDING_LOCATION = exports.TOP = exports.TOGGLE_SNAP = exports.TOGGLE_LOADING_CABINET = exports.TOGGLE_ITEM_MIRROR = exports.TOE_KICK_MOLDING = exports.TITLE_SMALL_COLOR = exports.TITLE_COLOR = exports.THROW_WARNING = exports.THROW_ERROR = exports.TEXT_COLOR_NEUTRAL_7 = exports.TEXT_COLOR_NEUTRAL_6 = exports.TEXT_COLOR_NEUTRAL_5 = exports.TEXT_COLOR_NEUTRAL_4 = exports.TEXT_COLOR_NEUTRAL_3 = exports.TEXT_COLOR_NEUTRAL_2 = exports.TEXT_COLOR_NEUTRAL_1 = exports.TEXT_COLOR_NEUTRAL_0 = exports.TEXT_COLOR = exports.TECHNICAL_VIEW = exports.TALL_CABINET_LAYOUTPOS = exports.TAKE_PICTURE = exports.SUBTOTAL = exports.SUBMIT_REQUEST_ASSIST = exports.SUBMIT_DESIGN = exports.SUBMIT_ADD_CART = exports.STORE_DIST_ARRAY = exports.STOP_DRAWING_LINE = exports.STEP_CABINET_CHOOSE_PRODUCT = exports.STATUS_WARNING_LIGHT_COLOR = exports.STATUS_WARNING_COLOR = exports.STATUS_POSITIVE_LIGHT_COLOR = exports.STATUS_POSITIVE_COLOR = exports.STATUS_OVERDUE_LIGHT_COLOR = exports.STATUS_OVERDUE_COLOR = exports.STATUS_NEGATIVE_LIGHT_COLOR = exports.STATUS_NEGATIVE_COLOR = exports.STATUS_INFO_LIGHT_COLOR = exports.STATUS_INFO_COLOR = exports.SHIFT2DON = exports.SHIFT2DOFF = exports.SHAPE_SVG_WIDTH = exports.SHAPE_SVG_PADDING = exports.SHAPE_SVG_DEPTH = exports.SHADE_LIGHT_PURPLE_COLOR = exports.SHADE_LIGHT_GREEN_COLOR = exports.SHADE_LIGHT_BLUE_COLOR = exports.SHADE_DARK_PURPLE_COLOR = exports.SHADE_DARK_GREEN_COLOR = exports.SHADE_DARK_BLUE_COLOR = exports.SET_WALL_COLOR = exports.SET_USER_DATA = exports.SET_STATE_PROPERTIES = exports.SET_ROTATE_STATUS = exports.SET_RELATED_LINE = exports.SET_PROPERTIES = exports.SET_PROJECT_PROPERTIES = exports.SET_PROJECT_ID = exports.SET_MOVE_STATUS = exports.SET_MOLDINGS_CCDF = exports.SET_MOLDING = exports.SET_MODELLING = exports.SET_MODE = exports.SET_LINES_ATTRIBUTES = exports.SET_LAYER_PROPERTIES = exports.SET_ITEMS_CCDF = exports.SET_ITEMS_ATTRIBUTES = exports.SET_IS_HELP = exports.SET_IS_CABINET_DRAWING = exports.SET_INITIAL_DOOR_STYLE = exports.SET_HOLES_ATTRIBUTES = exports.SET_HANDLE_MATERIAL = exports.SET_GROUP_PROPERTIES = exports.SET_GROUP_BARYCENTER = exports.SET_GROUP_ATTRIBUTES = exports.SET_FLOOR_STYLES = exports.SET_DOOR_STYLE = exports.SET_DOOR_HANDLE = exports.SET_DISTANT = exports.SET_COUNTER_TOP = exports.SET_BACKSPLASH_VISIBLE = exports.SET_BACKSPLASH = exports.SET_APPLIANCE_MATERIAL = exports.SELECT_TOOL_ZOOM_OUT = exports.SELECT_TOOL_ZOOM_IN = exports.SELECT_TOOL_UPLOAD_IMAGE = void 0;
10
- exports.ZOOM_VARIABLE = exports.WARRANTY_VIEW = exports.WARRANTY_SUPPORT = exports.WARNING_MESSAGE = exports.WALL_ITEM_MEASUREMENT_LINE_COLOR = exports.WALL_CABINET_LAYOUTPOS = exports.VIEWER3D_ACTIONS = exports.VIEWER2D_ACTIONS = exports.VERTEX_ACTIONS = exports.VANITY_CABINET_LAYOUTPOS = exports.VALIDATE_ITEM_POSTIONS = exports.USER_ACTIONS = exports.UPDATE_ZOOM_SCALE = exports.UPDATE_ROTATING_ITEM_CHANGED = exports.UPDATE_ROTATING_ITEM = exports.UPDATE_ROTATING = exports.UPDATE_POPUP_OPEN = exports.UPDATE_MOVING_STATE = exports.UPDATE_MOUSE_COORDS = exports.UPDATE_MOLDING = exports.UPDATE_ITEM_POSITION = exports.UPDATE_DRAWING_LINE = exports.UPDATE_DRAWING_ITEM = exports.UPDATE_DRAWING_HOLE_3D = exports.UPDATE_DRAWING_HOLE = exports.UPDATE_DRAGGING_VERTEX = exports.UPDATE_DRAGGING_LINE = exports.UPDATE_DRAGGING_ITEM_CHANGED = exports.UPDATE_DRAGGING_ITEM_3DY = exports.UPDATE_DRAGGING_ITEM_3DX = exports.UPDATE_DRAGGING_ITEM = exports.UPDATE_DRAGGING_HOLE_RULER_CHANGED = exports.UPDATE_DRAGGING_HOLE_CHANGED = exports.UPDATE_DRAGGING_HOLE_3D = exports.UPDATE_DRAGGING_HOLE = exports.UPDATE_CEIL_HEIGHT_UNIT = exports.UPDATE_CEIL_HEIGHT = exports.UPDATE_3D_CEIL_HEIGHT_UNIT = exports.UPDATE_3D_CEIL_HEIGHT = exports.UPDATE_2D_CAMERA = void 0;
7
+ exports.MODE_BACK_ELEVATION_VIEW = exports.MODE_3D_VIEW = exports.MODE_3D_FIRST_PERSON = exports.MODE_2D_ZOOM_OUT = exports.MODE_2D_ZOOM_IN = exports.MODE_2D_PAN = exports.MODE = exports.MIN_ANGLE_DISALLOW_DRAW_WALL = exports.MIDDLE_MOLDING_LOCATION = exports.MEPSILON = exports.MAX_ZOOM_IN_SCALE = exports.MAX_ANGLE_SCALE = exports.MAKE_FLOOR_PLAN = exports.LOGOUT = exports.LOGIN_SUCCESS = exports.LOGIN_ERROR = exports.LOCAL_STORAGE_TOKEN_VALUE = exports.LOCAL_STORAGE_TOKEN_NAME = exports.LOCAL_STORAGE_ORIGINAL_TOKEN = exports.LOCAL_STORAGE_CUSTOMER_INFO = exports.LOCAL_STORAGE_CART_ACTION = exports.LOAD_PROJECT = exports.LIST_QUANTITIES = exports.LIST_PARTS = exports.LINE_THICKNESS = exports.LINE_EPSILON = exports.LINE_ACTIONS = exports.LEFT_DIST_ANG = exports.LEFT = exports.LABEL_COLOR = exports.KITCHEN_KONFIGURATOR = exports.KEYBOARD_BUTTON_CODE = exports.ITEM_TYPE = exports.ITEM_MOVE_UP = exports.ITEMS_ACTIONS = exports.INVERT = exports.INTERNAL_EVENT_UNSELECT_ALL = exports.INTERNAL_EVENT_TOGGLE_TO_ELEVATION = exports.INTERNAL_EVENT_SYNC_SCENE = exports.INTERNAL_EVENT_START_DRAW_WALL = exports.INTERNAL_EVENT_SELECT_ELEMENT = exports.INTERNAL_EVENT_ROTATE_ELEMENT = exports.INTERNAL_EVENT_REPLACE_CABINET = exports.INTERNAL_EVENT_MIRROR_ELEMENT = exports.INTERNAL_EVENT_ITEMS_CATALOG = exports.INTERNAL_EVENT_DRAW_ELEMENT = exports.INTERNAL_EVENT_DRAG_ELEMENT = exports.INSTALLATION_TYPE_SKU_SUFFIX = exports.INSTALLATION_TYPE_NAME = exports.INSTALLATION_SUFFIX_TYPE = exports.INIT_CATALOG = exports.HOLE_NAMES = exports.HOLE_ACTIONS = exports.HDR_URLS = exports.HAS_LOADINGBAR = exports.GROUP_TRANSLATE = exports.GROUP_ROTATE = exports.GROUP_ACTIONS = exports.GO_BACK_TO_CATALOG_PAGE = exports.FRONT_DIST_ANG = exports.FINISHING_TYPE = exports.FINISHING_TOUCH = exports.EXTERNAL_EVENT_ZOOM_OUT = exports.EXTERNAL_EVENT_ZOOM_IN = exports.EXTERNAL_EVENT_UPDATE_PROPERTY = exports.EXTERNAL_EVENT_UPDATE_ATTRIBUTE = exports.EXTERNAL_EVENT_UNDO = exports.EXTERNAL_EVENT_TOGGLE_TO_ELEVATION = exports.EXTERNAL_EVENT_TOGGLE_TO_3D = exports.EXTERNAL_EVENT_TOGGLE_TO_2D = exports.EXTERNAL_EVENT_SYNC_SCENE = exports.EXTERNAL_EVENT_SET_MOLDING = exports.EXTERNAL_EVENT_SET_FINISHING = exports.EXTERNAL_EVENT_ROTATE_PAN = exports.EXTERNAL_EVENT_REPLACE_CABINET = exports.EXTERNAL_EVENT_REDO = exports.EXTERNAL_EVENT_PROJECT_SETTING = exports.EXTERNAL_EVENT_NEW_PROJECT = exports.EXTERNAL_EVENT_MOVE_PAN = exports.EXTERNAL_EVENT_MIRROR_ELEMENT = exports.EXTERNAL_EVENT_LOAD_PROJECT = exports.EXTERNAL_EVENT_DUPLICATE_ELEMENT = exports.EXTERNAL_EVENT_DELETE_ELEMENT = exports.EXTERNAL_EVENT_CHANGE_DOORSTYLE = exports.EXTERNAL_EVENT_CENTERING_2D = exports.EXTERNAL_EVENT_ADD_WALL = exports.EXTERNAL_EVENT_ADD_ROOM_SHAPE = exports.EXTERNAL_EVENT_ADD_ITEM = exports.EXTERNAL_EVENT_ADD_HOLE = exports.ERROR_DATABASE = exports.EPSILON = exports.END_UPLOADING_IMAGE = exports.END_ROTATING_ITEM_3D = exports.END_ROTATING_ITEM = exports.END_LOADING = exports.END_FITTING_IMAGE = exports.END_DRAWING_LINE = exports.END_DRAWING_ITEM = exports.END_DRAWING_HOLE_3D = exports.END_DRAWING_HOLE = void 0;
8
+ exports.SELECT_TOOL_EDIT = exports.SELECT_TOOL_DRAWING_LINE = exports.SELECT_TOOL_DRAWING_ITEM_3D = exports.SELECT_TOOL_DRAWING_ITEM = exports.SELECT_TOOL_DRAWING_HOLE_3D = exports.SELECT_TOOL_DRAWING_HOLE = exports.SELECT_TOOL_3D_VIEW = exports.SELECT_TOOL_3D_FIRST_PERSON = exports.SELECT_LINE = exports.SELECT_LAYER = exports.SELECT_ITEM = exports.SELECT_HOLE = exports.SELECT_GROUP = exports.SELECT_DOOR_STYLE = exports.SELECT_AREA = exports.SELECT_ALL = exports.SELECTALL = exports.SECONDARY_PURPLE_COLOR = exports.SECONDARY_BLUE_COLOR = exports.SCENE_ACTIONS = exports.SAVE_PROJECT = exports.SAVE_DESIGN = exports.ROOM_SHAPE_TYPE = exports.ROOM_SHAPE_MEASUREMENT_LINE_COLOR = exports.ROOM_ELEMENT_MEASUREMENT_LINE_COLOR = exports.ROLLBACK = exports.RIGHT_DIST_ANG = exports.RIGHT = exports.REVIEW_AND_QUOTE = exports.REQUEST_ASSISTANCE = exports.REPLACE_SUBMODULE = exports.REPLACE_ITEM = exports.REMOVE_VERTICAL_GUIDE = exports.REMOVE_REPLACE_SUBMODULE = exports.REMOVE_LINEAR = exports.REMOVE_LAYER = exports.REMOVE_HORIZONTAL_GUIDE = exports.REMOVE_GROUP_AND_DELETE_ELEMENTS = exports.REMOVE_GROUP = exports.REMOVE_FROM_GROUP = exports.REMOVE_DRAWING_SUPPORT = exports.REMOVE_CIRCULAR_GUIDE = exports.REMOVE = exports.REDO = exports.RECREATE = exports.PUSH_LAST_SELECTED_CATALOG_ELEMENT_TO_HISTORY = exports.PROP_RESIZE_WIDTH = exports.PROP_RESIZE_HEIGHT = exports.PROP_RESIZE_DEPTH = exports.PROP_OPEN_DOORS = exports.PROP_FLIP_DOOR_HANDLE = exports.PROP_ALTITUDE = exports.PROJECT_SETTING_OPTION = exports.PROJECT_RE_NAME = exports.PROJECT_NAME_LENGTH_LIMIT = exports.PROJECT_ACTIONS = exports.PRODUCT = exports.PRIMARY_GREEN_COLOR = exports.PASTE_PROPERTIES = exports.OVERLAP_SOME = exports.OVERLAP_SAME = exports.OVERLAP_NONE = exports.OVERLAP_LINK = exports.OVERLAP_INCLUDED = exports.OPEN_PROJECT_CONFIGURATOR = exports.OPEN_CATALOG = exports.OBJTYPE_MESH = exports.OBJTYPE_GROUP = exports.NO_DATA_DATABASE = exports.NEW_PROJECT_BTN = exports.NEW_PROJECT = exports.NEW_DESIGN = exports.MOVE_COMPONENT = exports.MOLDING_LOCATIONS = exports.MODE_WAITING_DRAWING_LINE = exports.MODE_VIEWING_CATALOG = exports.MODE_UPLOADING_IMAGE = exports.MODE_SNAPPING = exports.MODE_ROTATING_ITEM_3D = exports.MODE_ROTATING_ITEM = exports.MODE_RIGHT_ELEVATION_VIEW = exports.MODE_LEFT_ELEVATION_VIEW = exports.MODE_IDLE_3D = exports.MODE_IDLE = exports.MODE_FRONT_VIEW = exports.MODE_FRONT_ELEVATION_VIEW = exports.MODE_FITTING_IMAGE = exports.MODE_ELEVATION_VIEW = exports.MODE_DRAWING_LINE = exports.MODE_DRAWING_ITEM_3D = exports.MODE_DRAWING_ITEM = exports.MODE_DRAWING_HOLE_3D = exports.MODE_DRAWING_HOLE = exports.MODE_DRAGGING_VERTEX = exports.MODE_DRAGGING_LINE = exports.MODE_DRAGGING_ITEM_3D = exports.MODE_DRAGGING_ITEM = exports.MODE_DRAGGING_HOLE_3D = exports.MODE_DRAGGING_HOLE = exports.MODE_CONFIGURING_PROJECT = void 0;
9
+ exports.UNSELECT_ALL = exports.UNIT_MILLIMETER = exports.UNIT_MILE = exports.UNIT_METER = exports.UNIT_INCH_LONG = exports.UNIT_INCH = exports.UNIT_FOOT = exports.UNIT_CENTIMETER = exports.UNIT_ANGLE = exports.UNITS_LENGTH = exports.UNDO = exports.UNCREATE = exports.TWO_D_FLOOR_PLAN = exports.TOP_MOLDING_LOCATION = exports.TOP = exports.TOGGLE_SNAP = exports.TOGGLE_LOADING_CABINET = exports.TOGGLE_ITEM_MIRROR = exports.TOE_KICK_MOLDING = exports.TITLE_SMALL_COLOR = exports.TITLE_COLOR = exports.THROW_WARNING = exports.THROW_ERROR = exports.TEXT_COLOR_NEUTRAL_7 = exports.TEXT_COLOR_NEUTRAL_6 = exports.TEXT_COLOR_NEUTRAL_5 = exports.TEXT_COLOR_NEUTRAL_4 = exports.TEXT_COLOR_NEUTRAL_3 = exports.TEXT_COLOR_NEUTRAL_2 = exports.TEXT_COLOR_NEUTRAL_1 = exports.TEXT_COLOR_NEUTRAL_0 = exports.TEXT_COLOR = exports.TECHNICAL_VIEW = exports.TALL_CABINET_LAYOUTPOS = exports.TAKE_PICTURE = exports.SUBTOTAL = exports.SUBMIT_REQUEST_ASSIST = exports.SUBMIT_DESIGN = exports.SUBMIT_ADD_CART = exports.STORE_DIST_ARRAY = exports.STOP_DRAWING_LINE = exports.STEP_CABINET_CHOOSE_PRODUCT = exports.STATUS_WARNING_LIGHT_COLOR = exports.STATUS_WARNING_COLOR = exports.STATUS_POSITIVE_LIGHT_COLOR = exports.STATUS_POSITIVE_COLOR = exports.STATUS_OVERDUE_LIGHT_COLOR = exports.STATUS_OVERDUE_COLOR = exports.STATUS_NEGATIVE_LIGHT_COLOR = exports.STATUS_NEGATIVE_COLOR = exports.STATUS_INFO_LIGHT_COLOR = exports.STATUS_INFO_COLOR = exports.SHIFT2DON = exports.SHIFT2DOFF = exports.SHAPE_SVG_WIDTH = exports.SHAPE_SVG_PADDING = exports.SHAPE_SVG_DEPTH = exports.SHADE_LIGHT_PURPLE_COLOR = exports.SHADE_LIGHT_GREEN_COLOR = exports.SHADE_LIGHT_BLUE_COLOR = exports.SHADE_DARK_PURPLE_COLOR = exports.SHADE_DARK_GREEN_COLOR = exports.SHADE_DARK_BLUE_COLOR = exports.SET_WALL_COLOR = exports.SET_USER_DATA = exports.SET_STATE_PROPERTIES = exports.SET_ROTATE_STATUS = exports.SET_RELATED_LINE = exports.SET_PROPERTIES = exports.SET_PROJECT_PROPERTIES = exports.SET_PROJECT_ID = exports.SET_MOVE_STATUS = exports.SET_MOLDINGS_CCDF = exports.SET_MOLDING = exports.SET_MODELLING = exports.SET_MODE = exports.SET_LINES_ATTRIBUTES = exports.SET_LAYER_PROPERTIES = exports.SET_ITEMS_CCDF = exports.SET_ITEMS_ATTRIBUTES = exports.SET_IS_HELP = exports.SET_IS_CABINET_DRAWING = exports.SET_INITIAL_DOOR_STYLE = exports.SET_HOLES_ATTRIBUTES = exports.SET_HANDLE_MATERIAL = exports.SET_GROUP_PROPERTIES = exports.SET_GROUP_BARYCENTER = exports.SET_GROUP_ATTRIBUTES = exports.SET_FLOOR_STYLES = exports.SET_DOOR_STYLE = exports.SET_DOOR_HANDLE = exports.SET_DISTANT = exports.SET_COUNTER_TOP = exports.SET_BACKSPLASH_VISIBLE = exports.SET_BACKSPLASH = exports.SET_APPLIANCE_MATERIAL = exports.SELECT_TOOL_ZOOM_OUT = exports.SELECT_TOOL_ZOOM_IN = exports.SELECT_TOOL_UPLOAD_IMAGE = exports.SELECT_TOOL_PAN = void 0;
10
+ exports.ZOOM_VARIABLE = exports.WARRANTY_VIEW = exports.WARRANTY_SUPPORT = exports.WARNING_MESSAGE = exports.WALL_ITEM_MEASUREMENT_LINE_COLOR = exports.WALL_CABINET_LAYOUTPOS = exports.VIEWER3D_ACTIONS = exports.VIEWER2D_ACTIONS = exports.VERTEX_ACTIONS = exports.VANITY_CABINET_LAYOUTPOS = exports.VALIDATE_ITEM_POSTIONS = exports.USER_ACTIONS = exports.UPDATE_ZOOM_SCALE = exports.UPDATE_ROTATING_ITEM_CHANGED = exports.UPDATE_ROTATING_ITEM = exports.UPDATE_ROTATING = exports.UPDATE_POPUP_OPEN = exports.UPDATE_MOVING_STATE = exports.UPDATE_MOUSE_COORDS = exports.UPDATE_MOLDING = exports.UPDATE_ITEM_POSITION = exports.UPDATE_DRAWING_LINE = exports.UPDATE_DRAWING_ITEM = exports.UPDATE_DRAWING_HOLE_3D = exports.UPDATE_DRAWING_HOLE = exports.UPDATE_DRAGGING_VERTEX = exports.UPDATE_DRAGGING_LINE = exports.UPDATE_DRAGGING_ITEM_CHANGED = exports.UPDATE_DRAGGING_ITEM_3DY = exports.UPDATE_DRAGGING_ITEM_3DX = exports.UPDATE_DRAGGING_ITEM = exports.UPDATE_DRAGGING_HOLE_RULER_CHANGED = exports.UPDATE_DRAGGING_HOLE_CHANGED = exports.UPDATE_DRAGGING_HOLE_3D = exports.UPDATE_DRAGGING_HOLE = exports.UPDATE_CEIL_HEIGHT_UNIT = exports.UPDATE_CEIL_HEIGHT = exports.UPDATE_3D_CEIL_HEIGHT_UNIT = exports.UPDATE_3D_CEIL_HEIGHT = exports.UPDATE_2D_CAMERA = exports.UNSELECT_GROUP = void 0;
11
11
  //API server
12
12
  // export const API_SERVER = 'http://localhost:3000/';
13
13
  // ACTIONS project
@@ -469,6 +469,7 @@ var UNIT_MILE = exports.UNIT_MILE = 'mi';
469
469
  var UNITS_LENGTH = exports.UNITS_LENGTH = [UNIT_MILLIMETER, UNIT_CENTIMETER, UNIT_METER, UNIT_INCH, UNIT_FOOT, UNIT_MILE];
470
470
  var CEIL_UNITS_LENGTH = exports.CEIL_UNITS_LENGTH = [UNIT_CENTIMETER, UNIT_METER, UNIT_INCH, UNIT_FOOT];
471
471
  var EPSILON = exports.EPSILON = 0.5;
472
+ var LINE_EPSILON = exports.LINE_EPSILON = 0.01;
472
473
 
473
474
  // distance between item and wall
474
475
  var DISTANCE_EPSILON = exports.DISTANCE_EPSILON = 5.0; //5.08; // 2 inch
@@ -5,17 +5,17 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.shouldBypassItemIntersectionValidation = void 0;
7
7
  var _applianceCategories = require("../../constants/applianceCategories");
8
- /**
9
- * Returns `true` for items that are intentionally allowed to overlap other
10
- * elements while being placed/dragged in the 2D viewer.
11
- *
12
- * Why this exists:
13
- * - `GeometryUtils.validInterSect(...)` is used as a collision/intersection gate.
14
- * - Some appliances (e.g. cooktops/ranges/hoods) are expected to be placed "on"
15
- * or "inside" cabinetry/countertops, so they must not be blocked by that gate.
16
- *
17
- * NOTE: This currently identifies items by the appliance category strings found
18
- * in `itemInfo.name` / `itemInfo.cabinet_category`.
8
+ /**
9
+ * Returns `true` for items that are intentionally allowed to overlap other
10
+ * elements while being placed/dragged in the 2D viewer.
11
+ *
12
+ * Why this exists:
13
+ * - `GeometryUtils.validInterSect(...)` is used as a collision/intersection gate.
14
+ * - Some appliances (e.g. cooktops/ranges/hoods) are expected to be placed "on"
15
+ * or "inside" cabinetry/countertops, so they must not be blocked by that gate.
16
+ *
17
+ * NOTE: This currently identifies items by the appliance category strings found
18
+ * in `itemInfo.name` / `itemInfo.cabinet_category`.
19
19
  */
20
20
  var shouldBypassItemIntersectionValidation = exports.shouldBypassItemIntersectionValidation = function shouldBypassItemIntersectionValidation(itemRect) {
21
21
  var itemInfo = itemRect === null || itemRect === void 0 ? void 0 : itemRect.itemInfo;
@@ -57,40 +57,54 @@ function parseTempPlaceholdersFromCabinetPayload(_x) {
57
57
  }
58
58
  /***** Update cabinetPayloadData with updatedTempPlaceholders *****/
59
59
  function _parseTempPlaceholdersFromCabinetPayload() {
60
- _parseTempPlaceholdersFromCabinetPayload = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3(cabinetPayload) {
61
- var link, keys, temp, i, _cabinetPayload$struc, _cabinetPayload$struc2, tempPlaceholdersData, k, _cabinetPayload$struc3, el, tempData, doorKey, drawerKey, fixedKey, doorPHs, drawerPHs, has_single_door, fixedPHs, _t2, _t3, _t4;
62
- return _regenerator["default"].wrap(function (_context3) {
63
- while (1) switch (_context3.prev = _context3.next) {
60
+ _parseTempPlaceholdersFromCabinetPayload = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee4(cabinetPayload) {
61
+ var _cabinetPayload$struc;
62
+ var keys, gltfEntries, temp, tempPlaceholdersData, k, _cabinetPayload$struc3, el, tempData, doorKey, drawerKey, fixedKey, doorPHs, drawerPHs, has_single_door, fixedPHs;
63
+ return _regenerator["default"].wrap(function (_context4) {
64
+ while (1) switch (_context4.prev = _context4.next) {
64
65
  case 0:
65
- link = '';
66
- keys = Object.keys(cabinetPayload.structure_json);
67
- temp = [];
68
- i = 0;
69
- case 1:
70
- if (!(i < keys.length)) {
71
- _context3.next = 4;
72
- break;
73
- }
74
- if (!((_cabinetPayload$struc = cabinetPayload.structure_json[keys[i]]) !== null && _cabinetPayload$struc !== void 0 && (_cabinetPayload$struc = _cabinetPayload$struc.toString()) !== null && _cabinetPayload$struc !== void 0 && _cabinetPayload$struc.includes('.gltf') && (_cabinetPayload$struc2 = cabinetPayload.structure_json[keys[i]]) !== null && _cabinetPayload$struc2 !== void 0 && (_cabinetPayload$struc2 = _cabinetPayload$struc2.toString()) !== null && _cabinetPayload$struc2 !== void 0 && _cabinetPayload$struc2.startsWith('http'))) {
75
- _context3.next = 3;
76
- break;
77
- }
78
- link = cabinetPayload.structure_json[keys[i]];
79
- _t2 = temp;
80
- _t3 = keys[i];
81
- _context3.next = 2;
82
- return (0, _loadAssetJson.loadJSONWithFallback)(link);
83
- case 2:
84
- _t4 = _context3.sent;
85
- _t2.push.call(_t2, {
86
- name: _t3,
87
- data: _t4
66
+ keys = Object.keys((_cabinetPayload$struc = cabinetPayload.structure_json) !== null && _cabinetPayload$struc !== void 0 ? _cabinetPayload$struc : {}); // Load all referenced .gltf JSONs in parallel.
67
+ // NOTE: loadJSON() already has a per-URL promise cache, so duplicates are de-duped across calls.
68
+ gltfEntries = keys.map(function (name) {
69
+ var _cabinetPayload$struc2;
70
+ return {
71
+ name: name,
72
+ link: (_cabinetPayload$struc2 = cabinetPayload.structure_json) === null || _cabinetPayload$struc2 === void 0 ? void 0 : _cabinetPayload$struc2[name]
73
+ };
74
+ }).filter(function (_ref3) {
75
+ var _link$toString, _link$toString2;
76
+ var link = _ref3.link;
77
+ return (link === null || link === void 0 || (_link$toString = link.toString) === null || _link$toString === void 0 || (_link$toString = _link$toString.call(link)) === null || _link$toString === void 0 ? void 0 : _link$toString.includes('.gltf')) && (link === null || link === void 0 || (_link$toString2 = link.toString) === null || _link$toString2 === void 0 || (_link$toString2 = _link$toString2.call(link)) === null || _link$toString2 === void 0 ? void 0 : _link$toString2.startsWith('http'));
88
78
  });
89
- case 3:
90
- i++;
91
- _context3.next = 1;
92
- break;
93
- case 4:
79
+ _context4.next = 1;
80
+ return Promise.all(gltfEntries.map(/*#__PURE__*/function () {
81
+ var _ref5 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3(_ref4) {
82
+ var name, link, _t2, _t3;
83
+ return _regenerator["default"].wrap(function (_context3) {
84
+ while (1) switch (_context3.prev = _context3.next) {
85
+ case 0:
86
+ name = _ref4.name, link = _ref4.link;
87
+ _t2 = name;
88
+ _context3.next = 1;
89
+ return (0, _loadAssetJson.loadJSONWithFallback)(link);
90
+ case 1:
91
+ _t3 = _context3.sent;
92
+ return _context3.abrupt("return", {
93
+ name: _t2,
94
+ data: _t3
95
+ });
96
+ case 2:
97
+ case "end":
98
+ return _context3.stop();
99
+ }
100
+ }, _callee3);
101
+ }));
102
+ return function (_x9) {
103
+ return _ref5.apply(this, arguments);
104
+ };
105
+ }()));
106
+ case 1:
107
+ temp = _context4.sent;
94
108
  tempPlaceholdersData = [];
95
109
  for (k = 0; k < (cabinetPayload === null || cabinetPayload === void 0 || (_cabinetPayload$struc3 = cabinetPayload.structure_json) === null || _cabinetPayload$struc3 === void 0 || (_cabinetPayload$struc3 = _cabinetPayload$struc3.tempPlaceholders) === null || _cabinetPayload$struc3 === void 0 ? void 0 : _cabinetPayload$struc3.length); k++) {
96
110
  el = cabinetPayload.structure_json.tempPlaceholders[k].id;
@@ -399,12 +413,12 @@ function _parseTempPlaceholdersFromCabinetPayload() {
399
413
  structure: cabinetPayload.structure_json.tempPlaceholders[k].structure
400
414
  });
401
415
  }
402
- return _context3.abrupt("return", tempPlaceholdersData);
403
- case 5:
416
+ return _context4.abrupt("return", tempPlaceholdersData);
417
+ case 2:
404
418
  case "end":
405
- return _context3.stop();
419
+ return _context4.stop();
406
420
  }
407
- }, _callee3);
421
+ }, _callee4);
408
422
  }));
409
423
  return _parseTempPlaceholdersFromCabinetPayload.apply(this, arguments);
410
424
  }
@@ -412,16 +426,16 @@ function updateCabinetPayload(_x2) {
412
426
  return _updateCabinetPayload.apply(this, arguments);
413
427
  }
414
428
  function _updateCabinetPayload() {
415
- _updateCabinetPayload = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee4(cabinetPayload) {
429
+ _updateCabinetPayload = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee5(cabinetPayload) {
416
430
  var tempPlaceholders, cabinetPayloadKeys, i;
417
- return _regenerator["default"].wrap(function (_context4) {
418
- while (1) switch (_context4.prev = _context4.next) {
431
+ return _regenerator["default"].wrap(function (_context5) {
432
+ while (1) switch (_context5.prev = _context5.next) {
419
433
  case 0:
420
434
  tempPlaceholders = [];
421
- _context4.next = 1;
435
+ _context5.next = 1;
422
436
  return parseTempPlaceholdersFromCabinetPayload(cabinetPayload);
423
437
  case 1:
424
- tempPlaceholders = _context4.sent;
438
+ tempPlaceholders = _context5.sent;
425
439
  cabinetPayloadKeys = Object.keys(cabinetPayload);
426
440
  for (i = 0; i < cabinetPayloadKeys.length; i++) {
427
441
  if (cabinetPayloadKeys[i] === 'structure_json') {
@@ -433,12 +447,12 @@ function _updateCabinetPayload() {
433
447
  cabinetPayload[cabinetPayloadKeys[i]]['tempPlaceholders'] = tempPlaceholders;
434
448
  }
435
449
  }
436
- return _context4.abrupt("return", cabinetPayload);
450
+ return _context5.abrupt("return", cabinetPayload);
437
451
  case 2:
438
452
  case "end":
439
- return _context4.stop();
453
+ return _context5.stop();
440
454
  }
441
- }, _callee4);
455
+ }, _callee5);
442
456
  }));
443
457
  return _updateCabinetPayload.apply(this, arguments);
444
458
  }
@@ -537,23 +551,23 @@ function addItemToCatalog(_x4, _x5, _x6, _x7) {
537
551
  return _addItemToCatalog.apply(this, arguments);
538
552
  } // Get attributs of current selected element
539
553
  function _addItemToCatalog() {
540
- _addItemToCatalog = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee5(element, state, catalogInstance, projectActions) {
554
+ _addItemToCatalog = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee6(element, state, catalogInstance, projectActions) {
541
555
  var _elementJs, _elementJs$structure_, _elementJs$structure_2, _elementJs$structure_3, _elementJs$structure_4, _elementJs3;
542
556
  var elementJs, outlineSVGData, _state$getIn, cds, _cds$find, _elementJs2, currentCdsId, cdsIdx, ttph, updatedStructureJson, catalogElements, catalogElementKeys, catalogItem, k, _catalogElements$cata, tempPlaceholderArray, _catalogItem$structur, newTempPlaceholderArray, mergedTempPlaceholder;
543
- return _regenerator["default"].wrap(function (_context5) {
544
- while (1) switch (_context5.prev = _context5.next) {
557
+ return _regenerator["default"].wrap(function (_context6) {
558
+ while (1) switch (_context6.prev = _context6.next) {
545
559
  case 0:
546
560
  if (!(0, _helper.isEmpty)(element === null || element === void 0 ? void 0 : element.name)) {
547
- _context5.next = 1;
561
+ _context6.next = 1;
548
562
  break;
549
563
  }
550
- return _context5.abrupt("return");
564
+ return _context6.abrupt("return");
551
565
  case 1:
552
566
  elementJs = populateCCDFList(element); // if (isEmpty(catalog?.elements[element.name])) {
553
- _context5.next = 2;
567
+ _context6.next = 2;
554
568
  return loadSVGsByItem(elementJs);
555
569
  case 2:
556
- outlineSVGData = _context5.sent;
570
+ outlineSVGData = _context6.sent;
557
571
  if (((_elementJs = elementJs) === null || _elementJs === void 0 ? void 0 : _elementJs.type) === 'cabinet') {
558
572
  // move the tempPlaceholder of current door style to first of tempPlaceholders array
559
573
  cds = (_state$getIn = state.getIn(['scene', 'layers', 'layer-1', 'doorStyle'])) === null || _state$getIn === void 0 ? void 0 : _state$getIn.cds;
@@ -581,13 +595,13 @@ function _addItemToCatalog() {
581
595
  }
582
596
  });
583
597
  if ((0, _helper.isEmpty)((_elementJs$structure_4 = elementJs.structure_json) === null || _elementJs$structure_4 === void 0 ? void 0 : _elementJs$structure_4.tempPlaceholders)) {
584
- _context5.next = 4;
598
+ _context6.next = 4;
585
599
  break;
586
600
  }
587
- _context5.next = 3;
601
+ _context6.next = 3;
588
602
  return updateCabinetPayload(elementJs);
589
603
  case 3:
590
- elementJs = _context5.sent;
604
+ elementJs = _context6.sent;
591
605
  case 4:
592
606
  elementJs = _objectSpread(_objectSpread({}, elementJs), {}, {
593
607
  outlineSVGData: outlineSVGData,
@@ -604,18 +618,18 @@ function _addItemToCatalog() {
604
618
  k = 0;
605
619
  case 5:
606
620
  if (!(k < catalogElementKeys.length)) {
607
- _context5.next = 7;
621
+ _context6.next = 7;
608
622
  break;
609
623
  }
610
624
  if (!(((_catalogElements$cata = catalogElements[catalogElementKeys[k]]) === null || _catalogElements$cata === void 0 ? void 0 : _catalogElements$cata.itemID) === elementJs.itemID)) {
611
- _context5.next = 6;
625
+ _context6.next = 6;
612
626
  break;
613
627
  }
614
628
  catalogItem = catalogElements[catalogElementKeys[k]];
615
- return _context5.abrupt("continue", 7);
629
+ return _context6.abrupt("continue", 7);
616
630
  case 6:
617
631
  k++;
618
- _context5.next = 5;
632
+ _context6.next = 5;
619
633
  break;
620
634
  case 7:
621
635
  // get old tempPlaceholder array from catalog item
@@ -646,9 +660,9 @@ function _addItemToCatalog() {
646
660
  }
647
661
  case 8:
648
662
  case "end":
649
- return _context5.stop();
663
+ return _context6.stop();
650
664
  }
651
- }, _callee5);
665
+ }, _callee6);
652
666
  }));
653
667
  return _addItemToCatalog.apply(this, arguments);
654
668
  }
@@ -1012,11 +1026,11 @@ function loadMoldingSvg(_x8) {
1012
1026
  return _loadMoldingSvg.apply(this, arguments);
1013
1027
  }
1014
1028
  function _loadMoldingSvg() {
1015
- _loadMoldingSvg = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee6(molding) {
1016
- return _regenerator["default"].wrap(function (_context6) {
1017
- while (1) switch (_context6.prev = _context6.next) {
1029
+ _loadMoldingSvg = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee7(molding) {
1030
+ return _regenerator["default"].wrap(function (_context7) {
1031
+ while (1) switch (_context7.prev = _context7.next) {
1018
1032
  case 0:
1019
- return _context6.abrupt("return", new Promise(function (resolve, reject) {
1033
+ return _context7.abrupt("return", new Promise(function (resolve, reject) {
1020
1034
  var url = molding === null || molding === void 0 ? void 0 : molding.shape_svg;
1021
1035
  if (!url) {
1022
1036
  // Skip if no SVG URL available
@@ -1038,9 +1052,9 @@ function _loadMoldingSvg() {
1038
1052
  }));
1039
1053
  case 1:
1040
1054
  case "end":
1041
- return _context6.stop();
1055
+ return _context7.stop();
1042
1056
  }
1043
- }, _callee6);
1057
+ }, _callee7);
1044
1058
  }));
1045
1059
  return _loadMoldingSvg.apply(this, arguments);
1046
1060
  }
@@ -7,6 +7,7 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.handleChangeDoorStyleEvent = handleChangeDoorStyleEvent;
8
8
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
9
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
10
+ var _asyncPool = require("../../shared/concurrency/async-pool");
10
11
  function prepareMoldingCCDFList(doorStyle, moldingData) {
11
12
  var moldingCCDFs = [];
12
13
  for (var i = 0; i < moldingData.length; i++) {
@@ -117,7 +118,7 @@ function _handleChangeDoorStyleEvent() {
117
118
  function () {
118
119
  var _ref = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(result) {
119
120
  var _result$ccdf_list, _doorStyle$id2, _result$molding_ccdf_;
120
- var mappedCabinetDefinitionList, rt, _i;
121
+ var mappedCabinetDefinitionList, rt;
121
122
  return _regenerator["default"].wrap(function (_context) {
122
123
  while (1) switch (_context.prev = _context.next) {
123
124
  case 0:
@@ -125,27 +126,19 @@ function _handleChangeDoorStyleEvent() {
125
126
  // because host `cabinet_id` can vary by doorstyle.
126
127
  itemCDS = mapFromCCDFToCDS(result === null || result === void 0 ? void 0 : result.ccdf_list, targetItems);
127
128
  mappedCabinetDefinitionList = ccdfMapper(result === null || result === void 0 ? void 0 : result.ccdf_list, layer); // result: ccdf_list
128
- rt = mergeSameElements(mappedCabinetDefinitionList);
129
- _i = 0;
130
- case 1:
131
- if (!(_i < (rt === null || rt === void 0 ? void 0 : rt.length))) {
132
- _context.next = 3;
133
- break;
134
- }
135
- _context.next = 2;
136
- return addItemToCatalog(rt[_i], state, props.catalog, props.projectActions);
137
- case 2:
138
- _i++;
129
+ rt = mergeSameElements(mappedCabinetDefinitionList); // Load/parse cabinet assets in parallel (but capped to avoid flooding the network/main thread)
139
130
  _context.next = 1;
140
- break;
141
- case 3:
131
+ return (0, _asyncPool.asyncPool)(6, rt !== null && rt !== void 0 ? rt : [], function (element) {
132
+ return addItemToCatalog(element, state, props.catalog, props.projectActions);
133
+ });
134
+ case 1:
142
135
  // Persist ccdf on affected instances so SYNC includes the latest ccdf.id for each item.
143
136
  // IMPORTANT: host response `ccdf_list[]` may not include `door_finish_id`.
144
137
  // Use request door_finish_id (doorStyle.id) as the source of truth for door_finish_id.
145
138
  props.itemsActions.setItemsCCDF((_result$ccdf_list = result === null || result === void 0 ? void 0 : result.ccdf_list) !== null && _result$ccdf_list !== void 0 ? _result$ccdf_list : [], applyScope, itemIds, (_doorStyle$id2 = doorStyle === null || doorStyle === void 0 ? void 0 : doorStyle.id) !== null && _doorStyle$id2 !== void 0 ? _doorStyle$id2 : null);
146
139
  props.itemsActions.setMoldingsCCDF((_result$molding_ccdf_ = result === null || result === void 0 ? void 0 : result.molding_ccdf_list) !== null && _result$molding_ccdf_ !== void 0 ? _result$molding_ccdf_ : [], applyScope);
147
140
  props.itemsActions.setDoorStyle(doorStyle, itemCDS, applyScope, itemIds);
148
- case 4:
141
+ case 2:
149
142
  case "end":
150
143
  return _context.stop();
151
144
  }
@@ -11,6 +11,7 @@ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/
11
11
  var _convertUnitsLite = require("../../utils/convert-units-lite");
12
12
  var _constants = require("../../constants");
13
13
  var _models = require("../../models");
14
+ var _asyncPool = require("../../shared/concurrency/async-pool");
14
15
  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; }
15
16
  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; }
16
17
  function handleLoadProjectEvent(_x, _x2, _x3, _x4, _x5, _x6, _x7, _x8) {
@@ -66,7 +67,7 @@ function _handleLoadProjectEvent() {
66
67
  }, /*#__PURE__*/function () {
67
68
  var _ref = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(result) {
68
69
  var _evt$payload2;
69
- var cdsList, _result$ccdf_list, resp, cabinetDefinitionList, rt, i;
70
+ var cdsList, _result$ccdf_list, resp, cabinetDefinitionList, rt;
70
71
  return _regenerator["default"].wrap(function (_context) {
71
72
  while (1) switch (_context.prev = _context.next) {
72
73
  case 0:
@@ -98,22 +99,14 @@ function _handleLoadProjectEvent() {
98
99
  // best-effort only
99
100
  }
100
101
  cabinetDefinitionList = ccdfMapper(result === null || result === void 0 ? void 0 : result.ccdf_list, evt === null || evt === void 0 || (_evt$payload2 = evt.payload) === null || _evt$payload2 === void 0 ? void 0 : _evt$payload2.layers['layer-1']);
101
- rt = mergeSameElements(cabinetDefinitionList);
102
- i = 0;
103
- case 1:
104
- if (!(i < (rt === null || rt === void 0 ? void 0 : rt.length))) {
105
- _context.next = 3;
106
- break;
107
- }
108
- _context.next = 2;
109
- return addItemToCatalog(rt[i], tempState, props.catalog, props.projectActions);
110
- case 2:
111
- i++;
102
+ rt = mergeSameElements(cabinetDefinitionList); // Load/parse cabinet assets in parallel (but capped to avoid flooding the network/main thread)
112
103
  _context.next = 1;
113
- break;
114
- case 3:
104
+ return (0, _asyncPool.asyncPool)(6, rt !== null && rt !== void 0 ? rt : [], function (element) {
105
+ return addItemToCatalog(element, tempState, props.catalog, props.projectActions);
106
+ });
107
+ case 1:
115
108
  props.projectActions.loadProject(evt.payload);
116
- case 4:
109
+ case 2:
117
110
  case "end":
118
111
  return _context.stop();
119
112
  }
@@ -9,10 +9,10 @@ var _helper = require("../../utils/helper");
9
9
  var _addItemMapper = require("./mappers/addItemMapper");
10
10
  var _changeDoorStyleMapper = require("./mappers/changeDoorStyleMapper");
11
11
  var _loadProjectMapper = require("./mappers/loadProjectMapper");
12
- /**
13
- * Main dispatcher for external event payload mapping.
14
- * Converts new API formats into legacy internal formats (e.g. assets3d -> structure_json)
15
- * without changing the behavior of the existing 3D tool.
12
+ /**
13
+ * Main dispatcher for external event payload mapping.
14
+ * Converts new API formats into legacy internal formats (e.g. assets3d -> structure_json)
15
+ * without changing the behavior of the existing 3D tool.
16
16
  */
17
17
  function mapExternalEventPayload(evt, state, defaultTextures) {
18
18
  if ((0, _helper.isEmpty)(evt)) return null;
@@ -11,15 +11,15 @@ var _constants = require("../../../constants");
11
11
  var _helper = require("../../../utils/helper");
12
12
  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; }
13
13
  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; }
14
- /**
15
- * Mapping logic for EXTERNAL_EVENT_ADD_ITEM.
16
- *
17
- * Converts the new assets3d payload shape into the legacy structure_json format
18
- * expected by the existing 3D tool.
19
- *
20
- * @param {Object} evt.payload External event payload
21
- * @param {Immutable.Map} state Planner state
22
- * @returns {Object|null} Updated event (or null when payload is empty)
14
+ /**
15
+ * Mapping logic for EXTERNAL_EVENT_ADD_ITEM.
16
+ *
17
+ * Converts the new assets3d payload shape into the legacy structure_json format
18
+ * expected by the existing 3D tool.
19
+ *
20
+ * @param {Object} evt.payload External event payload
21
+ * @param {Immutable.Map} state Planner state
22
+ * @returns {Object|null} Updated event (or null when payload is empty)
23
23
  */
24
24
  function mapAddItemEvent(orgEvtPayload, state) {
25
25
  var _evtPayload, _evtPayload3;
@@ -5,9 +5,12 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.ccdfMapper = ccdfMapper;
8
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
8
9
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
9
10
  var _utils = require("../../../components/viewer2d/utils");
10
11
  var _immutable = require("../../../shared/objects/immutable");
12
+ 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; }
13
+ 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; }
11
14
  function ccdfMapper(ccdf_list, layer) {
12
15
  // This function make cabinet definition using ccdf, layer's item information and catalog
13
16
  // console.log(ccdf_list, catalog);
@@ -33,7 +36,7 @@ function ccdfMapper(ccdf_list, layer) {
33
36
  }
34
37
  var cd = layerJS.items[correctItemId];
35
38
  if (cd && !!(ccdf !== null && ccdf !== void 0 && ccdf.scene_cabinet_id) && (cd === null || cd === void 0 ? void 0 : cd.id) === ccdf.scene_cabinet_id) {
36
- var _ccdf$cabinet_id, _ccdf$long_name, _ccdf$sizeinfo, _ccdf$shape_svg, _ccdf$is_corner;
39
+ var _ccdf$cabinet_id, _ccdf$long_name, _ccdf$sizeinfo, _ccdf$shape_svg;
37
40
  if (!(0, _utils.isEmpty)(ccdf === null || ccdf === void 0 ? void 0 : ccdf.id)) {
38
41
  cdfId = ccdf.id;
39
42
  }
@@ -81,27 +84,18 @@ function ccdfMapper(ccdf_list, layer) {
81
84
  tempPlaceholders: tempPlaceholders
82
85
  };else structure_json = structure;
83
86
  // make cabinet definition using structure_json and catalog
84
- cabinetDefinition = {
87
+ cabinetDefinition = _objectSpread(_objectSpread({}, cd), {}, {
85
88
  type: cd.category,
86
89
  itemID: (_ccdf$cabinet_id = ccdf === null || ccdf === void 0 ? void 0 : ccdf.cabinet_id) !== null && _ccdf$cabinet_id !== void 0 ? _ccdf$cabinet_id : cd.itemID,
87
90
  // cd.itemID may be legacy from legacy project, so ccdf.cabinet_id is preferred if exists
88
- name: cd.name,
89
91
  long_name: (_ccdf$long_name = ccdf === null || ccdf === void 0 ? void 0 : ccdf.long_name) !== null && _ccdf$long_name !== void 0 ? _ccdf$long_name : cd.long_name,
90
92
  sizeinfo: (_ccdf$sizeinfo = ccdf === null || ccdf === void 0 ? void 0 : ccdf.sizeinfo) !== null && _ccdf$sizeinfo !== void 0 ? _ccdf$sizeinfo : cd.sizeinfo,
91
- description: cd.description,
92
- prototype: cd.prototype,
93
- base: cd.base,
94
- ccdf: cd.ccdf,
95
93
  shape_svg: (_ccdf$shape_svg = ccdf === null || ccdf === void 0 ? void 0 : ccdf.shape_svg) !== null && _ccdf$shape_svg !== void 0 ? _ccdf$shape_svg : cd.shape_svg,
96
94
  // If host provides cabinet base gltf/bin at CCDF top-level, prefer it.
97
95
  gltf: (ccdf === null || ccdf === void 0 ? void 0 : ccdf.gltf) || cd.gltf,
98
96
  bin: (ccdf === null || ccdf === void 0 ? void 0 : ccdf.bin) || (cd === null || cd === void 0 ? void 0 : cd.bin),
99
- structure_json: structure_json,
100
- layoutpos: cd.layoutpos,
101
- is_corner: (_ccdf$is_corner = ccdf === null || ccdf === void 0 ? void 0 : ccdf.is_corner) !== null && _ccdf$is_corner !== void 0 ? _ccdf$is_corner : cd.is_corner,
102
- obj_property: cd.obj_property,
103
- outline: cd.outline
104
- };
97
+ structure_json: structure_json
98
+ });
105
99
  }
106
100
  // make cabinet definition list using cabinetDefinition
107
101
  cabinetDefinitionList.push(cabinetDefinition);
package/lib/models.js CHANGED
@@ -215,6 +215,7 @@ var Item = exports.Item = /*#__PURE__*/function (_Record7) {
215
215
  uri: ''
216
216
  },
217
217
  molding: [],
218
+ do_not_overwrite_textures: false,
218
219
  can_be_mirrored: false,
219
220
  mirrored: false,
220
221
  isInitialPos: false,
@@ -365,6 +366,7 @@ var CatalogElement = exports.CatalogElement = /*#__PURE__*/function (_Record1) {
365
366
  type: '',
366
367
  cds: new _immutable.Map(),
367
368
  ccdf_list: new _immutable.List(),
369
+ do_not_overwrite_textures: false,
368
370
  can_be_mirrored: false,
369
371
  mirrored: false,
370
372
  structure_json: {},