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
@@ -10,6 +10,7 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
10
10
  var _convertUnitsLite = require("../../utils/convert-units-lite");
11
11
  var _idBroker = _interopRequireDefault(require("../../utils/id-broker"));
12
12
  var _constants = require("../../constants");
13
+ var _line = require("./line");
13
14
  var STYLE = {
14
15
  stroke: _constants.TEXT_COLOR_NEUTRAL_7,
15
16
  strokeWidth: '1px'
@@ -22,6 +23,7 @@ var STYLE_TEXT = {
22
23
  textAnchor: 'middle',
23
24
  fontSize: '12px',
24
25
  pointerEvents: 'none',
26
+ fill: '#455A64',
25
27
  //http://stackoverflow.com/questions/826782/how-to-disable-text-selection-highlighting-using-css
26
28
  WebkitTouchCallout: 'none' /* iOS Safari */,
27
29
  WebkitUserSelect: 'none' /* Chrome/Safari/Opera */,
@@ -35,37 +37,11 @@ function Ruler(_ref) {
35
37
  unit = _ref.unit,
36
38
  rulerUnit = _ref.rulerUnit,
37
39
  transform = _ref.transform,
38
- flag = _ref.flag;
39
- var update = function update(lengthInput, unitInput, type) {
40
- var newLength = toFixedFloat(lengthInput);
41
- var merged = null;
42
- if (type === 0) {
43
- merged = value.merge({
44
- _length: newLength,
45
- length: (0, _convertUnitsLite.convert)(newLength).from(unitInput).to('cm')
46
- });
47
- } else {
48
- merged = value.merge({
49
- _length: (0, _convertUnitsLite.convert)(newLength).from(UNIT_INCH).to(unitInput),
50
- _unit: unitInput
51
- });
52
- }
53
- // if (hook) {
54
- // return hook(merged, sourceElement, internalState, state).then(val => {
55
- // return onUpdate(val);
56
- // });
57
- // }
58
- // return onUpdate(merged);
59
- };
60
- // let _unit = "in";
61
- // let distanceText = convert(length).from(unit).to(rulerUnit);
62
- var distanceText = (0, _convertUnitsLite.convert)(length).from(unit).to(rulerUnit).toFixed(0);
63
- var thickness = (0, _convertUnitsLite.convert)(_constants.LINE_THICKNESS).from(unit).to(rulerUnit).toFixed(0);
64
- // let _ft_len = convert(_length).from('in').to('ft');
65
- // let _ft_val = Math.floor(_ft_len); _ft_len -= _ft_val;
66
- // let _in_val = convert(_ft_len).from('ft').to('in').toFixed(0);
67
- // let distanceText = `${_ft_val}'${_in_val}"`;
68
- var textLength = (distanceText.length + layer.unit.length) * 18;
40
+ style = _ref.style;
41
+ var ruLength = (0, _convertUnitsLite.convert)(length).from(unit).to(rulerUnit);
42
+ var fixedLength = layer.unit === _constants.UNIT_METER || layer.unit === _constants.UNIT_FOOT ? 2 : 0;
43
+ var distanceText = (Math.round((0, _convertUnitsLite.convert)(ruLength).from(rulerUnit).to(layer.unit) * 100) / 100).toFixed(fixedLength);
44
+ var textLength = (distanceText.length + layer.unit.length) * 9;
69
45
  return /*#__PURE__*/_react["default"].createElement("g", {
70
46
  transform: transform
71
47
  }, /*#__PURE__*/_react["default"].createElement("g", {
@@ -85,19 +61,25 @@ function Ruler(_ref) {
85
61
  transform: "scale(1, -1)",
86
62
  style: STYLE_TEXT,
87
63
  fill: _constants.TEXT_COLOR_NEUTRAL_7
88
- }, Math.round((0, _convertUnitsLite.convert)(distanceText).from('in').to(layer.unit) * 100) / 100, layer.unit === 'in' ? '"' : layer.unit)), /*#__PURE__*/_react["default"].createElement("line", {
89
- x1: "0",
64
+ }, distanceText, layer.unit === 'in' ? '"' : layer.unit)), /*#__PURE__*/_react["default"].createElement("line", {
65
+ x1: style === _line.STYLE_ROOM_SHAPE ? 0 : 4,
90
66
  y1: "0",
91
67
  x2: (length - textLength) / 2 < 0 ? 0 : (length - textLength) / 2,
92
68
  y2: "0",
93
- style: STYLE
69
+ style: style
94
70
  }), /*#__PURE__*/_react["default"].createElement("line", {
95
71
  x1: (length + textLength) / 2 < 0 ? 0 : (length + textLength) / 2 < length ? (length + textLength) / 2 : length,
96
72
  y1: "0",
97
- x2: length,
73
+ x2: style === _line.STYLE_ROOM_SHAPE ? length : length - 4,
98
74
  y2: "0",
99
- style: STYLE
100
- }));
75
+ style: style
76
+ }), style !== _line.STYLE_ROOM_SHAPE && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("polygon", {
77
+ points: "3, 0, 6.5, -2, 6.5, 2 ",
78
+ style: style
79
+ }), /*#__PURE__*/_react["default"].createElement("polygon", {
80
+ points: "".concat(length - 3, ", 0, ").concat(length - 6.5, ", 2, ").concat(length - 6.5, ", -2"),
81
+ style: style
82
+ })));
101
83
  }
102
84
  Ruler.propTypes = {
103
85
  length: _propTypes["default"].number.isRequired,
@@ -8,19 +8,22 @@ exports["default"] = RulerDist;
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
  var _propTypes = _interopRequireDefault(require("prop-types"));
10
10
  var _convertUnitsLite = require("../../utils/convert-units-lite");
11
+ var _constants = require("../../constants");
11
12
  var ARROW_STYLE = {
12
13
  stroke: '#1183B7',
13
14
  strokeWidth: '2px',
14
15
  strokeLinecap: 'round'
15
16
  };
16
17
  var STYLE = {
17
- stroke: 'black',
18
- strokeWidth: '1.1px'
18
+ stroke: '#455A64',
19
+ fill: '#455A64',
20
+ strokeWidth: '1.5px'
19
21
  };
20
22
  var STYLE_TEXT = {
21
23
  textAnchor: 'middle',
22
24
  fontSize: '10px',
23
25
  pointerEvents: 'none',
26
+ fill: '#455A64',
24
27
  //http://stackoverflow.com/questions/826782/how-to-disable-text-selection-highlighting-using-css
25
28
  WebkitTouchCallout: 'none' /* iOS Safari */,
26
29
  WebkitUserSelect: 'none' /* Chrome/Safari/Opera */,
@@ -36,10 +39,10 @@ function RulerDist(_ref) {
36
39
  transform = _ref.transform,
37
40
  angle = _ref.angle,
38
41
  rotation = _ref.rotation;
39
- var _unit = 'in';
40
- // let _length = convert(length).from(unit).to(rulerUnit);
41
- var distanceText = "".concat((0, _convertUnitsLite.convert)(length).from('cm').to(rulerUnit).toFixed(0));
42
- var textLength = (distanceText.length + layer.unit.length) * 18;
42
+ var ruLength = (0, _convertUnitsLite.convert)(length).from(unit).to(rulerUnit);
43
+ var fixedLength = layer.unit === _constants.UNIT_METER || layer.unit === _constants.UNIT_FOOT ? 2 : 0;
44
+ var distanceText = (Math.round((0, _convertUnitsLite.convert)(ruLength).from(rulerUnit).to(layer.unit) * 100) / 100).toFixed(fixedLength);
45
+ var textLength = (distanceText.length + layer.unit.length) * 8;
43
46
  var textangle = angle + 90;
44
47
  var textRotation = 1;
45
48
  var ay = 2;
@@ -71,79 +74,46 @@ function RulerDist(_ref) {
71
74
  textRotation = 180;
72
75
  ay = 5;
73
76
  }
74
- if (Math.abs(length - textLength) / 2 <= 16) {
75
- var dy = textRotation == 0 ? 15 : -15;
76
- return /*#__PURE__*/_react["default"].createElement("g", {
77
- transform: transform
78
- }, /*#__PURE__*/_react["default"].createElement("g", {
79
- transform: "translate(0, ".concat(dy, ")")
80
- }, /*#__PURE__*/_react["default"].createElement("text", {
81
- x: "0",
82
- y: "0",
83
- transform: "translate(".concat(length / 2, ",").concat(ay, ") scale(1, -1) rotate(").concat(textRotation, ")"),
84
- style: STYLE_TEXT
85
- }, Math.round((0, _convertUnitsLite.convert)(distanceText).from('in').to(layer.unit) * 100) / 100, layer.unit)), /*#__PURE__*/_react["default"].createElement("circle", {
86
- cx: "1",
87
- cy: "0",
88
- fill: "white",
89
- r: "1.1",
90
- stroke: "black",
91
- strokeWidth: "0.6"
92
- }), /*#__PURE__*/_react["default"].createElement("line", {
93
- x1: "2",
94
- y1: "0",
95
- x2: (length - textLength) / 2 < 0 ? 0 : length,
96
- y2: "0",
97
- style: STYLE
98
- }), /*#__PURE__*/_react["default"].createElement("line", {
99
- x1: (length + textLength) / 2 < 0 ? 0 : (length + textLength) / 2 < length ? (length + textLength) / 2 : length,
100
- y1: "0",
101
- x2: length,
102
- y2: "0",
103
- style: STYLE
104
- }), /*#__PURE__*/_react["default"].createElement("circle", {
105
- cx: length - 1,
106
- cy: "0",
107
- fill: "white",
108
- r: "1.1",
109
- stroke: "black",
110
- strokeWidth: "0.6"
111
- }));
77
+ if (ruLength > 0) {
78
+ if (ruLength < 28) {
79
+ return /*#__PURE__*/_react["default"].createElement("g", {
80
+ transform: transform
81
+ }, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("text", {
82
+ x: "0",
83
+ y: "0",
84
+ transform: "translate(".concat(length / 2, ",").concat(ay, ") scale(1, -1) rotate(").concat(textRotation, ")"),
85
+ style: STYLE_TEXT
86
+ }, distanceText, layer.unit === 'in' ? '"' : layer.unit)));
87
+ } else {
88
+ return /*#__PURE__*/_react["default"].createElement("g", {
89
+ transform: transform
90
+ }, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("text", {
91
+ x: "0",
92
+ y: "0",
93
+ transform: "translate(".concat(length / 2, ",").concat(ay, ") scale(1, -1) rotate(").concat(textRotation, ")"),
94
+ style: STYLE_TEXT
95
+ }, distanceText, layer.unit === 'in' ? '"' : layer.unit)), /*#__PURE__*/_react["default"].createElement("line", {
96
+ x1: "2",
97
+ y1: "0",
98
+ x2: (length - textLength) / 2 < 0 ? 0 : (length - textLength) / 2,
99
+ y2: "0",
100
+ style: STYLE
101
+ }), /*#__PURE__*/_react["default"].createElement("polygon", {
102
+ points: "1, 0, 4.5, -2, 4.5, 2 ",
103
+ style: STYLE
104
+ }), /*#__PURE__*/_react["default"].createElement("line", {
105
+ x1: (length + textLength) / 2 < 0 ? 0 : (length + textLength) / 2 < length ? (length + textLength) / 2 : length,
106
+ y1: "0",
107
+ x2: length,
108
+ y2: "0",
109
+ style: STYLE
110
+ }), /*#__PURE__*/_react["default"].createElement("polygon", {
111
+ points: "".concat(length - 1, ", 0, ").concat(length - 4.5, ", 2, ").concat(length - 4.5, ", -2"),
112
+ style: STYLE
113
+ }));
114
+ }
112
115
  } else {
113
- return /*#__PURE__*/_react["default"].createElement("g", {
114
- transform: transform
115
- }, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("text", {
116
- x: "0",
117
- y: "0",
118
- transform: "translate(".concat(length / 2, ",").concat(ay, ") scale(1, -1) rotate(").concat(textRotation, ")"),
119
- style: STYLE_TEXT
120
- }, Math.round((0, _convertUnitsLite.convert)(distanceText).from('in').to(layer.unit) * 100) / 100, layer.unit)), /*#__PURE__*/_react["default"].createElement("circle", {
121
- cx: "1",
122
- cy: "0",
123
- fill: "white",
124
- r: "1.1",
125
- stroke: "black",
126
- strokeWidth: "0.6"
127
- }), /*#__PURE__*/_react["default"].createElement("line", {
128
- x1: "2",
129
- y1: "0",
130
- x2: (length - textLength) / 2 < 0 ? 0 : (length - textLength) / 2,
131
- y2: "0",
132
- style: STYLE
133
- }), /*#__PURE__*/_react["default"].createElement("line", {
134
- x1: (length + textLength) / 2 < 0 ? 0 : (length + textLength) / 2 < length ? (length + textLength) / 2 : length,
135
- y1: "0",
136
- x2: length,
137
- y2: "0",
138
- style: STYLE
139
- }), /*#__PURE__*/_react["default"].createElement("circle", {
140
- cx: length - 1,
141
- cy: "0",
142
- fill: "white",
143
- r: "1.1",
144
- stroke: "black",
145
- strokeWidth: "0.6"
146
- }));
116
+ return null;
147
117
  }
148
118
  }
149
119
  RulerDist.propTypes = {
@@ -9,6 +9,7 @@ exports.getInstallationSuffix = getInstallationSuffix;
9
9
  exports.getToeKickSKU = void 0;
10
10
  exports.isEmpty = isEmpty;
11
11
  exports.isEqualInstallationType = isEqualInstallationType;
12
+ exports.isWarningItem = void 0;
12
13
  exports.makeSKUForMagento = makeSKUForMagento;
13
14
  exports.searchForSkuValue = exports.returnReplaceableDeepSearchType = void 0;
14
15
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
@@ -197,4 +198,10 @@ var areaPolygon = exports.areaPolygon = function areaPolygon(points) {
197
198
  }
198
199
  var area = det / 2;
199
200
  return signed ? area : Math.abs(area);
201
+ };
202
+ var isWarningItem = exports.isWarningItem = function isWarningItem(item) {
203
+ var _item$toJS$doorStyle;
204
+ if (item.category === 'cabinet') return !(item !== null && item !== void 0 && (_item$toJS$doorStyle = item.toJS().doorStyle) !== null && _item$toJS$doorStyle !== void 0 && (_item$toJS$doorStyle = _item$toJS$doorStyle.doorStyles) !== null && _item$toJS$doorStyle !== void 0 && (_item$toJS$doorStyle = _item$toJS$doorStyle.cds) !== null && _item$toJS$doorStyle !== void 0 && _item$toJS$doorStyle.filter(function (cd) {
205
+ return cd.itemID == (item === null || item === void 0 ? void 0 : item.getIn(['itemID']));
206
+ }).length) > 0;else return false;
200
207
  };