kitchen-simulator 4.0.0-queuedEvents → 4.0.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 (111) hide show
  1. package/es/LiteKitchenConfigurator.js +141 -288
  2. package/es/LiteRenderer.js +159 -398
  3. package/es/actions/items-actions.js +10 -6
  4. package/es/actions/lines-actions.js +3 -1
  5. package/es/actions/project-actions.js +15 -5
  6. package/es/assets/img/svg/bottombar/elevation.svg +12 -5
  7. package/es/catalog/areas/area/planner-element.js +10 -5
  8. package/es/catalog/catalog.js +1 -4
  9. package/es/catalog/factories/area-factory-3d.js +2 -1
  10. package/es/catalog/factories/wall-factory-3d.js +2 -2
  11. package/es/catalog/factories/wall-factory.js +8 -8
  12. package/es/catalog/lines/wall/planner-element.js +18 -9
  13. package/es/catalog/utils/exporter.js +7 -3
  14. package/es/catalog/utils/item-loader.js +24 -14
  15. package/es/catalog/utils/mtl-loader.js +2 -2
  16. package/es/catalog/utils/obj-loader.js +2 -2
  17. package/es/class/hole.js +0 -2
  18. package/es/class/item.js +183 -184
  19. package/es/class/line.js +11 -3
  20. package/es/class/project.js +165 -48
  21. package/es/components/content.js +19 -6
  22. package/es/components/viewer2d/grids/grid-streak.js +1 -1
  23. package/es/components/viewer2d/item.js +84 -51
  24. package/es/components/viewer2d/line.js +315 -243
  25. package/es/components/viewer2d/ruler.js +20 -38
  26. package/es/components/viewer2d/rulerDist.js +48 -78
  27. package/es/components/viewer2d/utils.js +6 -0
  28. package/es/components/viewer2d/viewer2d.js +298 -220
  29. package/es/components/viewer3d/front3D.js +3 -2
  30. package/es/components/viewer3d/libs/mtl-loader.js +2 -2
  31. package/es/components/viewer3d/libs/obj-loader.js +2 -2
  32. package/es/components/viewer3d/libs/orbit-controls.js +3 -4
  33. package/es/components/viewer3d/libs/pointer-lock-controls.js +6 -7
  34. package/es/components/viewer3d/scene-creator.js +51 -15
  35. package/es/components/viewer3d/viewer3d.js +121 -82
  36. package/es/constants.js +111 -3
  37. package/es/devLiteRenderer.js +688 -31
  38. package/es/index.js +567 -87
  39. package/es/models.js +9 -5
  40. package/es/plugins/SVGLoader.js +7 -5
  41. package/es/plugins/console-debugger.js +0 -2
  42. package/es/plugins/keyboard.js +15 -6
  43. package/es/reducers/items-reducer.js +5 -5
  44. package/es/reducers/lines-reducer.js +1 -1
  45. package/es/reducers/project-reducer.js +5 -3
  46. package/es/shared-style.js +4 -4
  47. package/es/utils/geometry.js +163 -2
  48. package/es/utils/get-edges-of-subgraphs.js +1 -1
  49. package/es/utils/graph-cycles.js +1 -1
  50. package/es/utils/graph.js +1 -1
  51. package/es/utils/helper.js +105 -3
  52. package/es/utils/isolate-event-handler.js +1542 -164
  53. package/es/utils/molding.js +461 -11
  54. package/lib/LiteKitchenConfigurator.js +141 -289
  55. package/lib/LiteRenderer.js +159 -399
  56. package/lib/actions/items-actions.js +10 -6
  57. package/lib/actions/lines-actions.js +3 -1
  58. package/lib/actions/project-actions.js +15 -4
  59. package/lib/assets/img/svg/bottombar/elevation.svg +12 -5
  60. package/lib/catalog/areas/area/planner-element.js +11 -5
  61. package/lib/catalog/catalog.js +1 -4
  62. package/lib/catalog/factories/area-factory-3d.js +2 -1
  63. package/lib/catalog/factories/wall-factory-3d.js +2 -2
  64. package/lib/catalog/factories/wall-factory.js +8 -8
  65. package/lib/catalog/lines/wall/planner-element.js +19 -9
  66. package/lib/catalog/utils/exporter.js +7 -3
  67. package/lib/catalog/utils/item-loader.js +24 -14
  68. package/lib/catalog/utils/mtl-loader.js +9 -2
  69. package/lib/catalog/utils/obj-loader.js +10 -2
  70. package/lib/class/hole.js +0 -2
  71. package/lib/class/item.js +180 -181
  72. package/lib/class/line.js +9 -1
  73. package/lib/class/project.js +164 -47
  74. package/lib/components/content.js +19 -6
  75. package/lib/components/viewer2d/grids/grid-streak.js +1 -1
  76. package/lib/components/viewer2d/item.js +83 -50
  77. package/lib/components/viewer2d/line.js +315 -242
  78. package/lib/components/viewer2d/ruler.js +19 -37
  79. package/lib/components/viewer2d/rulerDist.js +48 -78
  80. package/lib/components/viewer2d/utils.js +7 -0
  81. package/lib/components/viewer2d/viewer2d.js +296 -219
  82. package/lib/components/viewer3d/front3D.js +3 -2
  83. package/lib/components/viewer3d/libs/mtl-loader.js +9 -2
  84. package/lib/components/viewer3d/libs/obj-loader.js +9 -2
  85. package/lib/components/viewer3d/libs/orbit-controls.js +11 -5
  86. package/lib/components/viewer3d/libs/pointer-lock-controls.js +13 -7
  87. package/lib/components/viewer3d/scene-creator.js +49 -13
  88. package/lib/components/viewer3d/viewer3d.js +119 -80
  89. package/lib/constants.js +116 -7
  90. package/lib/devLiteRenderer.js +687 -30
  91. package/lib/index.js +567 -87
  92. package/lib/models.js +9 -5
  93. package/lib/plugins/SVGLoader.js +7 -5
  94. package/lib/plugins/console-debugger.js +0 -2
  95. package/lib/plugins/keyboard.js +15 -6
  96. package/lib/reducers/items-reducer.js +5 -5
  97. package/lib/reducers/lines-reducer.js +1 -1
  98. package/lib/reducers/project-reducer.js +4 -2
  99. package/lib/shared-style.js +4 -4
  100. package/lib/utils/geometry.js +164 -2
  101. package/lib/utils/get-edges-of-subgraphs.js +6 -1
  102. package/lib/utils/graph-cycles.js +7 -8
  103. package/lib/utils/graph.js +6 -1
  104. package/lib/utils/helper.js +108 -2
  105. package/lib/utils/isolate-event-handler.js +1538 -159
  106. package/lib/utils/molding.js +463 -9
  107. package/package.json +1 -1
  108. package/es/assets/Window.hdr +0 -2100
  109. package/es/assets/img/1.jpg +0 -0
  110. package/lib/assets/Window.hdr +0 -2100
  111. package/lib/assets/img/1.jpg +0 -0
package/es/constants.js CHANGED
@@ -55,6 +55,7 @@ export var REMOVE_CIRCULAR_GUIDE = 'REMOVE_CIRCULAR_GUIDE';
55
55
  export var REMOVE_DRAWING_SUPPORT = 'REMOVE_DRAWING_SUPPORT';
56
56
  export var SET_IS_HELP = 'SET_IS_HELP';
57
57
  export var SET_IS_CABINET_DRAWING = 'SET_IS_CABINET_DRAWING';
58
+ export var CREATE_ROOM_WITH_SHAPE = 'CREATE_ROOM_WITH_SHAPE';
58
59
 
59
60
  // ACTIONS viewer2D
60
61
  export var SELECT_TOOL_ZOOM_IN = 'SELECT_TOOL_ZOOM_IN';
@@ -65,6 +66,7 @@ export var CHANGE_WALL_LENGTH_MEASURE = 'CHANGE_WALL_LENGTH_MEASURE';
65
66
  export var CHANGE_BASE_CABINET_MEASURE = 'CHANGE_BASE_CABINET_MEASURE';
66
67
  export var CHANGE_WALL_CABINET_MEASURE = 'CHANGE_WALL_CABINET_MEASURE';
67
68
  export var CHANGE_WINDOW_DOOR_MEASURE = 'CHANGE_WINDOW_DOOR_MEASURE';
69
+ export var CHANGE_MEASUREMENT_UNIT = 'CHANGE_MEASUREMENT_UNIT';
68
70
 
69
71
  //ACTIONS viewer3D
70
72
  export var SELECT_TOOL_3D_VIEW = 'SELECT_TOOL_3D_VIEW';
@@ -244,7 +246,8 @@ export var PROJECT_ACTIONS = {
244
246
  SHIFT2DOFF: SHIFT2DOFF,
245
247
  SHIFT2DON: SHIFT2DON,
246
248
  SET_IS_HELP: SET_IS_HELP,
247
- SET_IS_CABINET_DRAWING: SET_IS_CABINET_DRAWING
249
+ SET_IS_CABINET_DRAWING: SET_IS_CABINET_DRAWING,
250
+ CREATE_ROOM_WITH_SHAPE: CREATE_ROOM_WITH_SHAPE
248
251
  };
249
252
  export var VIEWER2D_ACTIONS = {
250
253
  SELECT_TOOL_ZOOM_IN: SELECT_TOOL_ZOOM_IN,
@@ -545,6 +548,12 @@ export var LABEL_COLOR = '#6E7191';
545
548
  export var TEXT_COLOR = '#000000';
546
549
  export var ACCENT_COLOR = '#AD00FF';
547
550
  export var BROWN_COLOR = '#624100';
551
+ export var ROOM_SHAPE_MEASUREMENT_LINE_COLOR = '#455A64';
552
+ export var ROOM_ELEMENT_MEASUREMENT_LINE_COLOR = '#B0BEC5';
553
+ export var BASE_ITEM_MEASUREMENT_LINE_COLOR = '#0277BD';
554
+ export var WALL_ITEM_MEASUREMENT_LINE_COLOR = '#00897B';
555
+ export var DISTANCE_MEASUREMENT_LINE_COLOR = '#7B1FA2';
556
+ export var DASH_LINE_COLOR = '#78909C';
548
557
  export var DEFAULT_FONT_FAMILY = 'Open Sans';
549
558
 
550
559
  // Download summary
@@ -637,6 +646,26 @@ export var ITEM_TYPE = {
637
646
  LIGHTING: 'lighting',
638
647
  FURNISHING: 'furnishing'
639
648
  };
649
+ export var PROJECT_SETTING_OPTION = {
650
+ UPDATE_CEIL_HEIGHT: UPDATE_CEIL_HEIGHT,
651
+ CHANGE_WALL_LENGTH_MEASURE: CHANGE_WALL_LENGTH_MEASURE,
652
+ CHANGE_BASE_CABINET_MEASURE: CHANGE_BASE_CABINET_MEASURE,
653
+ CHANGE_WALL_CABINET_MEASURE: CHANGE_WALL_CABINET_MEASURE,
654
+ CHANGE_WINDOW_DOOR_MEASURE: CHANGE_WINDOW_DOOR_MEASURE,
655
+ CHANGE_MEASUREMENT_UNIT: CHANGE_MEASUREMENT_UNIT
656
+ };
657
+ export var HOLE_NAMES = {
658
+ WINDOW_CLEAR: 'Window',
659
+ WINDOW_CROSS: 'Cross Window',
660
+ WINDOW_DOUBLE_HUNG: 'Double Hung Window',
661
+ WINDOW_VERTICAL: 'window-vertical',
662
+ DOOR_CLOSET: 'Closet',
663
+ DOOR_EXTERIOR: 'Exterior',
664
+ DOOR_INTERIOR: 'Interior',
665
+ DOOR_SLIDING: 'Sliding',
666
+ DOOR_FRAMED: 'Framed Doorway',
667
+ DOOR_FRAMELESS: 'FrameLess Doorway'
668
+ };
640
669
 
641
670
  // direction type
642
671
  export var LEFT = 'Left';
@@ -644,16 +673,95 @@ export var RIGHT = 'Right';
644
673
  export var TOP = 'Top';
645
674
  export var BOTTOM = 'Bottom';
646
675
 
676
+ // distance direction angle
677
+ export var LEFT_DIST_ANG = 0;
678
+ export var RIGHT_DIST_ANG = 180;
679
+ export var BACK_DIST_ANG = 90;
680
+ export var FRONT_DIST_ANG = -90;
681
+
682
+ // element prototype
683
+ export var ELEMENT_LINE = 'lines';
684
+ export var ELEMENT_HOLE = 'holes';
685
+ export var ELEMENT_ITEM = 'items';
686
+ export var ELEMENT_AREA = 'areas';
687
+ export var ELEMENT_VERTEX = 'vertices';
688
+ // element attributes
689
+ export var ATT_ITEM_POS = 'pos';
690
+ export var ATT_ITEM_ROTATION = 'rotation';
691
+ export var ATT_LINE_LENGTH = 'lineLength';
692
+ export var ATT_VERTEXT_ONE = 'vertexOne';
693
+ export var ATT_VERTEXT_TWO = 'vertexTwo';
694
+ export var ATT_HOLE_OFFSET_A = 'offsetA';
695
+ export var ATT_HOLE_OFFSET_B = 'offsetB';
696
+ // element properties
697
+ export var PROP_FLIP_DOOR_HANDLE = 'flip_doorhandle';
698
+ export var PROP_OPEN_DOORS = 'open_doors';
699
+ export var PROP_ALTITUDE = 'altitude';
700
+ export var PROP_RESIZE_WIDTH = 'width';
701
+ export var PROP_RESIZE_HEIGHT = 'height';
702
+ export var PROP_RESIZE_DEPTH = 'depth';
703
+
704
+ // finishing typs
705
+ export var FINISHING_TYPE = {
706
+ COUNTER_TOP: 'counterTop',
707
+ DOOR_HANDLE: 'doorHandle',
708
+ WALL_COLOR: 'wallColor',
709
+ FLOOR_STYLE: 'floorStyle',
710
+ BACKSPLASH: 'backsplash'
711
+ };
712
+ export var MAX_ZOOM_IN_SCALE = Infinity;
713
+
647
714
  // external event type
715
+ export var EXTERNAL_EVENT_SYNC_SCENE = 'EXTERNAL_EVENT_SYNC_SCENE'; // Host request the scene data to 3DTool for sync : Host -> 3DTool
716
+ export var INTERNAL_EVENT_SYNC_SCENE = 'INTERNAL_EVENT_SYNC_SCENE'; // 3DTool send the scene data to Host for sync : 3DTool -> HostApp
717
+ export var INTERNAL_EVENT_ITEMS_CATALOG = 'INTERNAL_EVENT_ITEMS_CATALOG'; // Request item's catalog data to Host
718
+
719
+ // external event type
720
+ export var EXTERNAL_EVENT_LOAD_PROJECT = 'EXTERNAL_EVENT_LOAD_PROJECT';
648
721
  export var EXTERNAL_EVENT_TOGGLE_TO_3D = 'EXTERNAL_EVENT_TOGGLE_TO_3D';
649
722
  export var EXTERNAL_EVENT_TOGGLE_TO_2D = 'EXTERNAL_EVENT_TOGGLE_TO_2D';
650
723
  export var EXTERNAL_EVENT_TOGGLE_TO_ELEVATION = 'EXTERNAL_EVENT_TOGGLE_TO_ELEVATION';
651
724
  export var EXTERNAL_EVENT_ADD_WALL = 'EXTERNAL_EVENT_ADD_WALL';
652
725
  export var EXTERNAL_EVENT_ADD_ITEM = 'EXTERNAL_EVENT_ADD_ITEM';
726
+ export var EXTERNAL_EVENT_ADD_HOLE = 'EXTERNAL_EVENT_ADD_HOLE';
653
727
  export var EXTERNAL_EVENT_MOVE_PAN = 'EXTERNAL_EVENT_MOVE_PAN';
654
728
  export var EXTERNAL_EVENT_NEW_PROJECT = 'EXTERNAL_EVENT_NEW_PROJECT';
655
729
  export var EXTERNAL_EVENT_CHANGE_DOORSTYLE = 'EXTERNAL_EVENT_CHANGE_DOORSTYLE';
656
- export var EXTERNAL_EVENT_SET_INITIAL_DATA = 'EXTERNAL_EVENT_SET_INITIAL_DATA';
657
730
  export var EXTERNAL_EVENT_ADD_ROOM_SHAPE = 'EXTERNAL_EVENT_ADD_ROOM_SHAPE';
658
731
  export var EXTERNAL_EVENT_ZOOM_IN = 'EXTERNAL_EVENT_ZOOM_IN';
659
- export var EXTERNAL_EVENT_ZOOM_OUT = 'EXTERNAL_EVENT_ZOOM_OUT';
732
+ export var EXTERNAL_EVENT_ZOOM_OUT = 'EXTERNAL_EVENT_ZOOM_OUT';
733
+ export var EXTERNAL_EVENT_UNDO = 'EXTERNAL_EVENT_UNDO';
734
+ export var EXTERNAL_EVENT_REDO = 'EXTERNAL_EVENT_REDO';
735
+ export var EXTERNAL_EVENT_SET_MOLDING = 'EXTERNAL_EVENT_SET_MOLDING';
736
+ export var EXTERNAL_EVENT_PROJECT_SETTING = 'EXTERNAL_EVENT_PROJECT_SETTING'; // project setting event
737
+ export var EXTERNAL_EVENT_CENTERING_2D = 'EXTERNAL_EVENT_CENTERING_2D';
738
+ export var EXTERNAL_EVENT_DUPLICATE_ELEMENT = 'EXTERNAL_EVENT_DUPLICATE_ELEMENT';
739
+ export var EXTERNAL_EVENT_DELETE_ELEMENT = 'EXTERNAL_EVENT_DELETE_ELEMENT';
740
+ export var EXTERNAL_EVENT_UPDATE_ATTRIBUTE = 'EXTERNAL_EVENT_UPDATE_ATTRIBUTE'; // update the element's attributes (distance, rotation...) in the property window
741
+ export var EXTERNAL_EVENT_UPDATE_PROPERTY = 'EXTERNAL_EVENT_UPDATE_PROPERTY'; // update the element's property (flip_doorhandle, open_doors...) in the property window
742
+ export var EXTERNAL_EVENT_REPLACE_CABINET = 'EXTERNAL_EVENT_REPLACE_CABINET';
743
+ export var EXTERNAL_EVENT_SET_FINISHING = 'EXTERNAL_EVENT_SET_FINISHING'; // set finishing(wallColor, floorStyle, doorHandle, backsplash, counterTop)
744
+ export var EXTERNAL_EVENT_ROTATE_PAN = 'EXTERNAL_EVENT_ROTATE_PAN'; // external event for rotate pan
745
+
746
+ // internal event type
747
+ export var INTERNAL_EVENT_UNSELECT_ALL = 'INTERNAL_EVENT_UNSELECT_ALL';
748
+ export var INTERNAL_EVENT_SELECT_ELEMENT = 'INTERNAL_EVENT_SELECT_ELEMENT';
749
+ export var INTERNAL_EVENT_DRAG_ELEMENT = 'INTERNAL_EVENT_DRAG_ELEMENT';
750
+ export var INTERNAL_EVENT_DRAW_ELEMENT = 'INTERNAL_EVENT_DRAW_ELEMENT';
751
+ export var INTERNAL_EVENT_ROTATE_ELEMENT = 'INTERNAL_EVENT_ROTATE_ELEMENT';
752
+ export var INTERNAL_EVENT_REPLACE_CABINET = 'INTERNAL_EVENT_REPLACE_CABINET';
753
+ export var INTERNAL_EVENT_START_DRAW_WALL = 'INTERNAL_EVENT_START_DRAW_WALL';
754
+
755
+ // room shape type
756
+ export var ROOM_SHAPE_TYPE = {
757
+ CUSTOM: 'custom',
758
+ RECTANGLE: 'rectangle',
759
+ TWO_WALLS_LEFT_TOP: '2wLeftTop',
760
+ TWO_WALLS_RIGHT_TOP: '2wRightTop',
761
+ TWO_WALLS_LEFT_BOTTOM: '2wLeftBottom',
762
+ TWO_WALLS_RIGHT_BOTTOM: '2wRightBottom',
763
+ THREE_WALLS_LEFT_TOP_RIGHT: '3wLeftTopRight',
764
+ THREE_WALLS_TOP_RIGHT_BOTTOM: '3wTopRightBottom',
765
+ THREE_WALLS_RIGHT_BOTTOM_LEFT: '3wRightBottomLeft',
766
+ THREE_WALLS_BOTTOM_LEFT_TOP: '3wBottomLeftTop'
767
+ };