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.
- package/es/assets/img/svg/accessories.svg +4 -4
- package/es/assets/img/svg/bottombar/elevation-back.svg +6 -6
- package/es/assets/img/svg/bottombar/elevation-front.svg +6 -6
- package/es/assets/img/svg/bottombar/elevation-left.svg +6 -6
- package/es/assets/img/svg/bottombar/elevation-right.svg +7 -7
- package/es/assets/img/svg/bottombar/elevation.svg +13 -13
- package/es/assets/img/svg/detail.svg +77 -77
- package/es/assets/img/svg/filtersActive.svg +19 -19
- package/es/assets/img/svg/invert.svg +12 -12
- package/es/assets/img/svg/menubar/login.svg +84 -84
- package/es/assets/img/svg/menubar/my_projects.svg +85 -85
- package/es/assets/img/svg/menubar/new_project.svg +110 -110
- package/es/assets/img/svg/menubar/save_project.svg +84 -84
- package/es/assets/img/svg/options.svg +3 -3
- package/es/assets/img/svg/positioning.svg +3 -3
- package/es/assets/img/svg/toggleFilters.svg +19 -19
- package/es/assets/img/svg/toolbar/shopping-cart.svg +13 -13
- package/es/assets/img/svg/wizardstep/detail_view.svg +87 -87
- package/es/assets/img/svg/wizardstep/tile_view.svg +95 -95
- package/es/catalog/utils/exporter.js +2 -0
- package/es/catalog/utils/item-loader.js +9 -4
- package/es/class/item.js +1 -0
- package/es/components/viewer3d/camera-controls-module/camera-controls.module.js +556 -556
- package/es/components/viewer3d/scene-creator.js +5 -5
- package/es/constants.js +1 -0
- package/es/engine/2d/viewer-utils.js +11 -11
- package/es/events/external/handleExternalEvent.util.js +80 -66
- package/es/events/external/handlers.changeDoorStyle.js +8 -15
- package/es/events/external/handlers.loadProject.js +8 -15
- package/es/mappings/external-events/mapExternalEventPayload.js +4 -4
- package/es/mappings/external-events/mappers/addItemMapper.js +9 -9
- package/es/mappings/external-events/mappers/ccdfMapper.js +7 -13
- package/es/models.js +2 -0
- package/es/shared/concurrency/async-pool.js +71 -0
- package/es/shared/domain/asset/sanitize-asset-url.js +5 -5
- package/es/shared/math/line-metrics.js +11 -11
- package/es/utils/geometry.js +6 -4
- package/es/utils/skinPanelEngine.js +14 -14
- package/lib/assets/img/svg/accessories.svg +4 -4
- package/lib/assets/img/svg/bottombar/elevation-back.svg +6 -6
- package/lib/assets/img/svg/bottombar/elevation-front.svg +6 -6
- package/lib/assets/img/svg/bottombar/elevation-left.svg +6 -6
- package/lib/assets/img/svg/bottombar/elevation-right.svg +7 -7
- package/lib/assets/img/svg/bottombar/elevation.svg +13 -13
- package/lib/assets/img/svg/detail.svg +77 -77
- package/lib/assets/img/svg/filtersActive.svg +19 -19
- package/lib/assets/img/svg/invert.svg +12 -12
- package/lib/assets/img/svg/menubar/login.svg +84 -84
- package/lib/assets/img/svg/menubar/my_projects.svg +85 -85
- package/lib/assets/img/svg/menubar/new_project.svg +110 -110
- package/lib/assets/img/svg/menubar/save_project.svg +84 -84
- package/lib/assets/img/svg/options.svg +3 -3
- package/lib/assets/img/svg/positioning.svg +3 -3
- package/lib/assets/img/svg/toggleFilters.svg +19 -19
- package/lib/assets/img/svg/toolbar/shopping-cart.svg +13 -13
- package/lib/assets/img/svg/wizardstep/detail_view.svg +87 -87
- package/lib/assets/img/svg/wizardstep/tile_view.svg +95 -95
- package/lib/catalog/utils/exporter.js +2 -0
- package/lib/catalog/utils/item-loader.js +9 -4
- package/lib/class/item.js +1 -0
- package/lib/components/viewer3d/camera-controls-module/camera-controls.module.js +556 -556
- package/lib/components/viewer3d/scene-creator.js +5 -5
- package/lib/constants.js +5 -4
- package/lib/engine/2d/viewer-utils.js +11 -11
- package/lib/events/external/handleExternalEvent.util.js +80 -66
- package/lib/events/external/handlers.changeDoorStyle.js +8 -15
- package/lib/events/external/handlers.loadProject.js +8 -15
- package/lib/mappings/external-events/mapExternalEventPayload.js +4 -4
- package/lib/mappings/external-events/mappers/addItemMapper.js +9 -9
- package/lib/mappings/external-events/mappers/ccdfMapper.js +7 -13
- package/lib/models.js +2 -0
- package/lib/shared/concurrency/async-pool.js +78 -0
- package/lib/shared/domain/asset/sanitize-asset-url.js +5 -5
- package/lib/shared/math/line-metrics.js +11 -11
- package/lib/utils/geometry.js +5 -3
- package/lib/utils/skinPanelEngine.js +14 -14
- 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.
|
|
3096
|
-
y: v0.y + disD0 * Math.sin(hole.
|
|
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.
|
|
3100
|
-
y: v0.y + disD1 * Math.sin(hole.
|
|
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.
|
|
8
|
-
exports.
|
|
9
|
-
exports.
|
|
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
|
|
61
|
-
var
|
|
62
|
-
|
|
63
|
-
|
|
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
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
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
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
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
|
|
403
|
-
case
|
|
416
|
+
return _context4.abrupt("return", tempPlaceholdersData);
|
|
417
|
+
case 2:
|
|
404
418
|
case "end":
|
|
405
|
-
return
|
|
419
|
+
return _context4.stop();
|
|
406
420
|
}
|
|
407
|
-
},
|
|
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
|
|
429
|
+
_updateCabinetPayload = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee5(cabinetPayload) {
|
|
416
430
|
var tempPlaceholders, cabinetPayloadKeys, i;
|
|
417
|
-
return _regenerator["default"].wrap(function (
|
|
418
|
-
while (1) switch (
|
|
431
|
+
return _regenerator["default"].wrap(function (_context5) {
|
|
432
|
+
while (1) switch (_context5.prev = _context5.next) {
|
|
419
433
|
case 0:
|
|
420
434
|
tempPlaceholders = [];
|
|
421
|
-
|
|
435
|
+
_context5.next = 1;
|
|
422
436
|
return parseTempPlaceholdersFromCabinetPayload(cabinetPayload);
|
|
423
437
|
case 1:
|
|
424
|
-
tempPlaceholders =
|
|
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
|
|
450
|
+
return _context5.abrupt("return", cabinetPayload);
|
|
437
451
|
case 2:
|
|
438
452
|
case "end":
|
|
439
|
-
return
|
|
453
|
+
return _context5.stop();
|
|
440
454
|
}
|
|
441
|
-
},
|
|
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
|
|
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 (
|
|
544
|
-
while (1) switch (
|
|
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
|
-
|
|
561
|
+
_context6.next = 1;
|
|
548
562
|
break;
|
|
549
563
|
}
|
|
550
|
-
return
|
|
564
|
+
return _context6.abrupt("return");
|
|
551
565
|
case 1:
|
|
552
566
|
elementJs = populateCCDFList(element); // if (isEmpty(catalog?.elements[element.name])) {
|
|
553
|
-
|
|
567
|
+
_context6.next = 2;
|
|
554
568
|
return loadSVGsByItem(elementJs);
|
|
555
569
|
case 2:
|
|
556
|
-
outlineSVGData =
|
|
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
|
-
|
|
598
|
+
_context6.next = 4;
|
|
585
599
|
break;
|
|
586
600
|
}
|
|
587
|
-
|
|
601
|
+
_context6.next = 3;
|
|
588
602
|
return updateCabinetPayload(elementJs);
|
|
589
603
|
case 3:
|
|
590
|
-
elementJs =
|
|
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
|
-
|
|
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
|
-
|
|
625
|
+
_context6.next = 6;
|
|
612
626
|
break;
|
|
613
627
|
}
|
|
614
628
|
catalogItem = catalogElements[catalogElementKeys[k]];
|
|
615
|
-
return
|
|
629
|
+
return _context6.abrupt("continue", 7);
|
|
616
630
|
case 6:
|
|
617
631
|
k++;
|
|
618
|
-
|
|
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
|
|
663
|
+
return _context6.stop();
|
|
650
664
|
}
|
|
651
|
-
},
|
|
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
|
|
1016
|
-
return _regenerator["default"].wrap(function (
|
|
1017
|
-
while (1) switch (
|
|
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
|
|
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
|
|
1055
|
+
return _context7.stop();
|
|
1042
1056
|
}
|
|
1043
|
-
},
|
|
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
|
|
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
|
-
|
|
141
|
-
|
|
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
|
|
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
|
|
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
|
-
|
|
114
|
-
|
|
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
|
|
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
|
|
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
|
-
|
|
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: {},
|