kitchen-simulator 3.1.14 → 4.0.0-alpha.12

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 (105) hide show
  1. package/es/LiteKitchenConfigurator.js +204 -24
  2. package/es/LiteRenderer.js +277 -12
  3. package/es/actions/items-actions.js +6 -10
  4. package/es/actions/lines-actions.js +1 -3
  5. package/es/actions/project-actions.js +5 -15
  6. package/es/assets/Window.hdr +2100 -0
  7. package/es/assets/gltf/door_sliding.bin +0 -0
  8. package/es/assets/img/1.jpg +0 -0
  9. package/es/catalog/areas/area/planner-element.js +5 -10
  10. package/es/catalog/catalog.js +4 -1
  11. package/es/catalog/factories/area-factory-3d.js +17 -18
  12. package/es/catalog/factories/wall-factory-3d.js +2 -2
  13. package/es/catalog/factories/wall-factory.js +8 -8
  14. package/es/catalog/lines/wall/planner-element.js +9 -18
  15. package/es/catalog/utils/exporter.js +3 -6
  16. package/es/catalog/utils/item-loader.js +197 -202
  17. package/es/catalog/utils/mtl-loader.js +2 -2
  18. package/es/catalog/utils/obj-loader.js +2 -2
  19. package/es/class/item.js +127 -107
  20. package/es/class/line.js +2 -14
  21. package/es/class/project.js +44 -150
  22. package/es/components/content.js +6 -19
  23. package/es/components/viewer2d/grids/grid-streak.js +1 -1
  24. package/es/components/viewer2d/item.js +51 -84
  25. package/es/components/viewer2d/line.js +243 -315
  26. package/es/components/viewer2d/ruler.js +36 -16
  27. package/es/components/viewer2d/rulerDist.js +75 -44
  28. package/es/components/viewer2d/utils.js +0 -6
  29. package/es/components/viewer2d/viewer2d.js +205 -301
  30. package/es/components/viewer3d/front3D.js +2 -3
  31. package/es/components/viewer3d/libs/mtl-loader.js +2 -2
  32. package/es/components/viewer3d/libs/obj-loader.js +2 -2
  33. package/es/components/viewer3d/libs/orbit-controls.js +4 -3
  34. package/es/components/viewer3d/libs/pointer-lock-controls.js +7 -6
  35. package/es/components/viewer3d/viewer3d.js +80 -127
  36. package/es/constants.js +3 -110
  37. package/es/devLiteRenderer.js +38 -597
  38. package/es/index.js +86 -16
  39. package/es/models.js +5 -8
  40. package/es/plugins/SVGLoader.js +5 -7
  41. package/es/plugins/keyboard.js +6 -15
  42. package/es/reducers/items-reducer.js +5 -5
  43. package/es/reducers/lines-reducer.js +1 -1
  44. package/es/reducers/project-reducer.js +3 -5
  45. package/es/shared-style.js +4 -4
  46. package/es/utils/geometry.js +0 -161
  47. package/es/utils/get-edges-of-subgraphs.js +1 -1
  48. package/es/utils/graph-cycles.js +1 -1
  49. package/es/utils/graph.js +1 -1
  50. package/es/utils/helper.js +2 -67
  51. package/es/utils/isolate-event-handler.js +124 -1367
  52. package/es/utils/molding.js +2 -238
  53. package/lib/LiteKitchenConfigurator.js +205 -25
  54. package/lib/LiteRenderer.js +278 -13
  55. package/lib/actions/items-actions.js +6 -10
  56. package/lib/actions/lines-actions.js +1 -3
  57. package/lib/actions/project-actions.js +4 -15
  58. package/lib/assets/Window.hdr +2100 -0
  59. package/lib/assets/gltf/door_sliding.bin +0 -0
  60. package/lib/assets/img/1.jpg +0 -0
  61. package/lib/catalog/areas/area/planner-element.js +5 -11
  62. package/lib/catalog/catalog.js +4 -1
  63. package/lib/catalog/factories/area-factory-3d.js +14 -15
  64. package/lib/catalog/factories/wall-factory-3d.js +2 -2
  65. package/lib/catalog/factories/wall-factory.js +8 -8
  66. package/lib/catalog/lines/wall/planner-element.js +9 -19
  67. package/lib/catalog/utils/exporter.js +3 -6
  68. package/lib/catalog/utils/item-loader.js +194 -199
  69. package/lib/catalog/utils/mtl-loader.js +2 -9
  70. package/lib/catalog/utils/obj-loader.js +2 -10
  71. package/lib/class/item.js +125 -105
  72. package/lib/class/line.js +1 -13
  73. package/lib/class/project.js +43 -149
  74. package/lib/components/content.js +6 -19
  75. package/lib/components/viewer2d/grids/grid-streak.js +1 -1
  76. package/lib/components/viewer2d/item.js +50 -83
  77. package/lib/components/viewer2d/line.js +242 -315
  78. package/lib/components/viewer2d/ruler.js +35 -15
  79. package/lib/components/viewer2d/rulerDist.js +75 -44
  80. package/lib/components/viewer2d/utils.js +0 -7
  81. package/lib/components/viewer2d/viewer2d.js +205 -299
  82. package/lib/components/viewer3d/front3D.js +2 -3
  83. package/lib/components/viewer3d/libs/mtl-loader.js +2 -9
  84. package/lib/components/viewer3d/libs/obj-loader.js +2 -9
  85. package/lib/components/viewer3d/libs/orbit-controls.js +5 -11
  86. package/lib/components/viewer3d/libs/pointer-lock-controls.js +7 -13
  87. package/lib/components/viewer3d/viewer3d.js +79 -125
  88. package/lib/constants.js +7 -115
  89. package/lib/devLiteRenderer.js +33 -592
  90. package/lib/index.js +86 -16
  91. package/lib/models.js +5 -8
  92. package/lib/plugins/SVGLoader.js +5 -7
  93. package/lib/plugins/keyboard.js +6 -15
  94. package/lib/reducers/items-reducer.js +5 -5
  95. package/lib/reducers/lines-reducer.js +1 -1
  96. package/lib/reducers/project-reducer.js +2 -4
  97. package/lib/shared-style.js +4 -4
  98. package/lib/utils/geometry.js +0 -162
  99. package/lib/utils/get-edges-of-subgraphs.js +1 -6
  100. package/lib/utils/graph-cycles.js +8 -7
  101. package/lib/utils/graph.js +1 -6
  102. package/lib/utils/helper.js +3 -70
  103. package/lib/utils/isolate-event-handler.js +121 -1364
  104. package/lib/utils/molding.js +0 -238
  105. package/package.json +1 -1
@@ -10,7 +10,6 @@ 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");
14
13
  var STYLE = {
15
14
  stroke: _constants.TEXT_COLOR_NEUTRAL_7,
16
15
  strokeWidth: '1px'
@@ -23,7 +22,6 @@ var STYLE_TEXT = {
23
22
  textAnchor: 'middle',
24
23
  fontSize: '12px',
25
24
  pointerEvents: 'none',
26
- fill: '#455A64',
27
25
  //http://stackoverflow.com/questions/826782/how-to-disable-text-selection-highlighting-using-css
28
26
  WebkitTouchCallout: 'none' /* iOS Safari */,
29
27
  WebkitUserSelect: 'none' /* Chrome/Safari/Opera */,
@@ -37,9 +35,37 @@ function Ruler(_ref) {
37
35
  unit = _ref.unit,
38
36
  rulerUnit = _ref.rulerUnit,
39
37
  transform = _ref.transform,
40
- style = _ref.style;
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);
41
62
  var distanceText = (0, _convertUnitsLite.convert)(length).from(unit).to(rulerUnit).toFixed(0);
42
- var textLength = (distanceText.length + layer.unit.length) * 9;
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;
43
69
  return /*#__PURE__*/_react["default"].createElement("g", {
44
70
  transform: transform
45
71
  }, /*#__PURE__*/_react["default"].createElement("g", {
@@ -60,24 +86,18 @@ function Ruler(_ref) {
60
86
  style: STYLE_TEXT,
61
87
  fill: _constants.TEXT_COLOR_NEUTRAL_7
62
88
  }, Math.round((0, _convertUnitsLite.convert)(distanceText).from('in').to(layer.unit) * 100) / 100, layer.unit === 'in' ? '"' : layer.unit)), /*#__PURE__*/_react["default"].createElement("line", {
63
- x1: style === _line.STYLE_ROOM_SHAPE ? 0 : 4,
89
+ x1: "0",
64
90
  y1: "0",
65
91
  x2: (length - textLength) / 2 < 0 ? 0 : (length - textLength) / 2,
66
92
  y2: "0",
67
- style: style
93
+ style: STYLE
68
94
  }), /*#__PURE__*/_react["default"].createElement("line", {
69
95
  x1: (length + textLength) / 2 < 0 ? 0 : (length + textLength) / 2 < length ? (length + textLength) / 2 : length,
70
96
  y1: "0",
71
- x2: style === _line.STYLE_ROOM_SHAPE ? length : length - 4,
97
+ x2: length,
72
98
  y2: "0",
73
- style: style
74
- }), style !== _line.STYLE_ROOM_SHAPE && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("polygon", {
75
- points: "3, 0, 6.5, -2, 6.5, 2 ",
76
- style: style
77
- }), /*#__PURE__*/_react["default"].createElement("polygon", {
78
- points: "".concat(length - 3, ", 0, ").concat(length - 6.5, ", 2, ").concat(length - 6.5, ", -2"),
79
- style: style
80
- })));
99
+ style: STYLE
100
+ }));
81
101
  }
82
102
  Ruler.propTypes = {
83
103
  length: _propTypes["default"].number.isRequired,
@@ -14,15 +14,13 @@ var ARROW_STYLE = {
14
14
  strokeLinecap: 'round'
15
15
  };
16
16
  var STYLE = {
17
- stroke: '#455A64',
18
- fill: '#455A64',
19
- strokeWidth: '1.5px'
17
+ stroke: 'black',
18
+ strokeWidth: '1.1px'
20
19
  };
21
20
  var STYLE_TEXT = {
22
21
  textAnchor: 'middle',
23
22
  fontSize: '10px',
24
23
  pointerEvents: 'none',
25
- fill: '#455A64',
26
24
  //http://stackoverflow.com/questions/826782/how-to-disable-text-selection-highlighting-using-css
27
25
  WebkitTouchCallout: 'none' /* iOS Safari */,
28
26
  WebkitUserSelect: 'none' /* Chrome/Safari/Opera */,
@@ -41,7 +39,7 @@ function RulerDist(_ref) {
41
39
  var _unit = 'in';
42
40
  // let _length = convert(length).from(unit).to(rulerUnit);
43
41
  var distanceText = "".concat((0, _convertUnitsLite.convert)(length).from('cm').to(rulerUnit).toFixed(0));
44
- var textLength = (distanceText.length + layer.unit.length) * 8;
42
+ var textLength = (distanceText.length + layer.unit.length) * 18;
45
43
  var textangle = angle + 90;
46
44
  var textRotation = 1;
47
45
  var ay = 2;
@@ -73,46 +71,79 @@ function RulerDist(_ref) {
73
71
  textRotation = 180;
74
72
  ay = 5;
75
73
  }
76
- if (distanceText > 0) {
77
- if (distanceText < 28) {
78
- return /*#__PURE__*/_react["default"].createElement("g", {
79
- transform: transform
80
- }, /*#__PURE__*/_react["default"].createElement("g", null, /*#__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 === 'in' ? '"' : layer.unit)));
86
- } else {
87
- return /*#__PURE__*/_react["default"].createElement("g", {
88
- transform: transform
89
- }, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("text", {
90
- x: "0",
91
- y: "0",
92
- transform: "translate(".concat(length / 2, ",").concat(ay, ") scale(1, -1) rotate(").concat(textRotation, ")"),
93
- style: STYLE_TEXT
94
- }, Math.round((0, _convertUnitsLite.convert)(distanceText).from('in').to(layer.unit) * 100) / 100, layer.unit === 'in' ? '"' : layer.unit)), /*#__PURE__*/_react["default"].createElement("line", {
95
- x1: "2",
96
- y1: "0",
97
- x2: (length - textLength) / 2 < 0 ? 0 : (length - textLength) / 2,
98
- y2: "0",
99
- style: STYLE
100
- }), /*#__PURE__*/_react["default"].createElement("polygon", {
101
- points: "1, 0, 4.5, -2, 4.5, 2 ",
102
- style: STYLE
103
- }), /*#__PURE__*/_react["default"].createElement("line", {
104
- x1: (length + textLength) / 2 < 0 ? 0 : (length + textLength) / 2 < length ? (length + textLength) / 2 : length,
105
- y1: "0",
106
- x2: length,
107
- y2: "0",
108
- style: STYLE
109
- }), /*#__PURE__*/_react["default"].createElement("polygon", {
110
- points: "".concat(length - 1, ", 0, ").concat(length - 4.5, ", 2, ").concat(length - 4.5, ", -2"),
111
- style: STYLE
112
- }));
113
- }
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
+ }));
114
112
  } else {
115
- return null;
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
147
  }
117
148
  }
118
149
  RulerDist.propTypes = {
@@ -9,7 +9,6 @@ exports.getInstallationSuffix = getInstallationSuffix;
9
9
  exports.getToeKickSKU = void 0;
10
10
  exports.isEmpty = isEmpty;
11
11
  exports.isEqualInstallationType = isEqualInstallationType;
12
- exports.isWarningItem = void 0;
13
12
  exports.makeSKUForMagento = makeSKUForMagento;
14
13
  exports.searchForSkuValue = exports.returnReplaceableDeepSearchType = void 0;
15
14
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
@@ -198,10 +197,4 @@ var areaPolygon = exports.areaPolygon = function areaPolygon(points) {
198
197
  }
199
198
  var area = det / 2;
200
199
  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;
207
200
  };