kitchen-simulator 4.4.6 → 5.0.0-new-api.1

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 (187) hide show
  1. package/es/LiteRenderer.js +15 -53
  2. package/es/assets/Window.hdr +2100 -0
  3. package/es/assets/img/default/maple.jpg +0 -0
  4. package/es/assets/img/default/steel.jpg +0 -0
  5. package/es/catalog/catalog.js +0 -2
  6. package/es/catalog/factories/area-factory-3d.js +0 -4
  7. package/es/catalog/holes/door-double/door_double.png +0 -0
  8. package/es/catalog/holes/door-panic/panicDoor.png +0 -0
  9. package/es/catalog/holes/door-panic-double/panicDoorDouble.png +0 -0
  10. package/es/catalog/holes/gate/gate.jpg +0 -0
  11. package/es/catalog/holes/window-clear/texture.png +0 -0
  12. package/es/catalog/holes/window-cross/texture.png +0 -0
  13. package/es/catalog/holes/window-double-hung/texture.png +0 -0
  14. package/es/catalog/holes/window-vertical/texture.png +0 -0
  15. package/es/catalog/utils/exporter.js +2 -0
  16. package/es/catalog/utils/item-loader.js +0 -4
  17. package/es/class/area.js +0 -1
  18. package/es/class/export.js +1 -3
  19. package/es/class/item.js +17 -6
  20. package/es/components/content.js +1 -3
  21. package/es/components/style/export.js +2 -28
  22. package/es/components/viewer2d/line.js +2 -2
  23. package/es/components/viewer2d/viewer2d.js +0 -1
  24. package/es/components/viewer3d/front3D.js +1 -2
  25. package/es/components/viewer3d/pointer-lock-navigation.js +0 -90
  26. package/es/components/viewer3d/scene-creator.js +0 -1
  27. package/es/components/viewer3d/three-memory-cleaner.js +0 -14
  28. package/es/components/viewer3d/viewer3d.js +1 -1
  29. package/es/constants.js +11 -6
  30. package/es/devLiteRenderer.js +124 -84
  31. package/es/mappings/external-events/mapExternalEventPayload.js +28 -0
  32. package/es/mappings/external-events/mappers/addItemMapper.js +86 -0
  33. package/es/mappings/external-events/mappers/ccdfMapper.js +86 -0
  34. package/es/mappings/external-events/mappers/ccdfToCDSMapper.js +31 -0
  35. package/es/mappings/external-events/mappers/changeDoorStyleMapper.js +37 -0
  36. package/es/mappings/external-events/mappers/loadProjectMapper.js +62 -0
  37. package/es/mappings/holesToCatalog.js +139 -0
  38. package/es/models.js +12 -1
  39. package/es/plugins/keyboard.js +1 -1
  40. package/es/reducers/export.js +2 -4
  41. package/es/reducers/items-reducer.js +1 -1
  42. package/es/reducers/project-reducer.js +1 -1
  43. package/es/reducers/reducer.js +2 -3
  44. package/es/shared/objects/immutable.js +3 -0
  45. package/es/utils/geometry.js +276 -74
  46. package/es/utils/history.js +2 -2
  47. package/es/utils/isolate-event-handler.js +57 -45
  48. package/es/utils/molding.js +5 -3
  49. package/lib/LiteRenderer.js +17 -55
  50. package/lib/assets/Window.hdr +2100 -0
  51. package/lib/assets/img/default/maple.jpg +0 -0
  52. package/lib/assets/img/default/steel.jpg +0 -0
  53. package/lib/catalog/catalog.js +0 -2
  54. package/lib/catalog/factories/area-factory-3d.js +0 -4
  55. package/lib/catalog/holes/door-double/door_double.png +0 -0
  56. package/lib/catalog/holes/door-panic/panicDoor.png +0 -0
  57. package/lib/catalog/holes/door-panic-double/panicDoorDouble.png +0 -0
  58. package/lib/catalog/holes/gate/gate.jpg +0 -0
  59. package/lib/catalog/holes/window-clear/texture.png +0 -0
  60. package/lib/catalog/holes/window-cross/texture.png +0 -0
  61. package/lib/catalog/holes/window-double-hung/texture.png +0 -0
  62. package/lib/catalog/holes/window-vertical/texture.png +0 -0
  63. package/lib/catalog/utils/exporter.js +2 -0
  64. package/lib/catalog/utils/item-loader.js +0 -4
  65. package/lib/class/area.js +0 -1
  66. package/lib/class/export.js +0 -8
  67. package/lib/class/item.js +17 -6
  68. package/lib/components/content.js +1 -3
  69. package/lib/components/style/export.js +1 -105
  70. package/lib/components/viewer2d/line.js +1 -1
  71. package/lib/components/viewer2d/viewer2d.js +0 -1
  72. package/lib/components/viewer3d/front3D.js +1 -2
  73. package/lib/components/viewer3d/pointer-lock-navigation.js +0 -90
  74. package/lib/components/viewer3d/scene-creator.js +0 -1
  75. package/lib/components/viewer3d/three-memory-cleaner.js +0 -14
  76. package/lib/constants.js +16 -11
  77. package/lib/devLiteRenderer.js +126 -86
  78. package/lib/mappings/external-events/mapExternalEventPayload.js +33 -0
  79. package/lib/mappings/external-events/mappers/addItemMapper.js +92 -0
  80. package/lib/mappings/external-events/mappers/ccdfMapper.js +93 -0
  81. package/lib/mappings/external-events/mappers/ccdfToCDSMapper.js +37 -0
  82. package/lib/mappings/external-events/mappers/changeDoorStyleMapper.js +44 -0
  83. package/lib/mappings/external-events/mappers/loadProjectMapper.js +70 -0
  84. package/lib/mappings/holesToCatalog.js +148 -0
  85. package/lib/models.js +12 -1
  86. package/lib/reducers/export.js +1 -9
  87. package/lib/reducers/reducer.js +0 -1
  88. package/lib/shared/objects/immutable.js +9 -0
  89. package/lib/utils/geometry.js +276 -74
  90. package/lib/utils/history.js +1 -1
  91. package/lib/utils/isolate-event-handler.js +57 -45
  92. package/lib/utils/molding.js +5 -3
  93. package/package.json +1 -1
  94. package/es/assets/gltf/door_closet.bin +0 -0
  95. package/es/assets/gltf/door_closet.fbx +0 -0
  96. package/es/assets/gltf/door_exterior.bin +0 -0
  97. package/es/assets/gltf/door_exterior.fbx +0 -0
  98. package/es/assets/gltf/door_interior.bin +0 -0
  99. package/es/assets/gltf/door_interior.fbx +0 -0
  100. package/es/assets/gltf/door_sliding.bin +0 -0
  101. package/es/assets/gltf/door_sliding.fbx +0 -0
  102. package/es/assets/img/png/helper/video_preview_3d.png +0 -0
  103. package/es/assets/img/png/helper/video_preview_start.png +0 -0
  104. package/es/assets/img/svg/color/Brown.svg +0 -9
  105. package/es/assets/img/svg/color/Dark.svg +0 -9
  106. package/es/assets/img/svg/color/Light.svg +0 -9
  107. package/es/assets/img/svg/color/Medium.svg +0 -9
  108. package/es/assets/img/svg/color/Unfinished.svg +0 -9
  109. package/es/catalog/lines/wall/textures/bricks-normal2.jpg +0 -0
  110. package/es/catalog/lines/wall/textures/bricks3.jpg +0 -0
  111. package/es/catalog/properties/export.js +0 -21
  112. package/es/catalog/properties/property-checkbox.js +0 -68
  113. package/es/catalog/properties/property-color.js +0 -39
  114. package/es/catalog/properties/property-enum.js +0 -50
  115. package/es/catalog/properties/property-hidden.js +0 -19
  116. package/es/catalog/properties/property-lenght-measure.js +0 -100
  117. package/es/catalog/properties/property-length-measure.js +0 -84
  118. package/es/catalog/properties/property-length-measure_hole.js +0 -100
  119. package/es/catalog/properties/property-number.js +0 -48
  120. package/es/catalog/properties/property-read-only.js +0 -26
  121. package/es/catalog/properties/property-string.js +0 -48
  122. package/es/catalog/properties/property-toggle.js +0 -39
  123. package/es/catalog/properties/shared-property-style.js +0 -14
  124. package/es/catalog/utils/FuseUtils.js +0 -79
  125. package/es/class/FuseUtils.js +0 -79
  126. package/es/components/style/button.js +0 -106
  127. package/es/components/style/cancel-button.js +0 -21
  128. package/es/components/style/content-container.js +0 -30
  129. package/es/components/style/content-title.js +0 -25
  130. package/es/components/style/delete-button.js +0 -24
  131. package/es/components/style/form-block.js +0 -20
  132. package/es/components/style/form-color-input.js +0 -26
  133. package/es/components/style/form-label.js +0 -22
  134. package/es/components/style/form-number-input_2.js +0 -200
  135. package/es/components/style/form-select.js +0 -19
  136. package/es/components/style/form-slider.js +0 -60
  137. package/es/components/style/form-text-input.js +0 -69
  138. package/es/reducers/user-reducer.js +0 -41
  139. package/es/styles/export.js +0 -5
  140. package/es/styles/tabs.css +0 -40
  141. package/lib/assets/gltf/door_closet.bin +0 -0
  142. package/lib/assets/gltf/door_closet.fbx +0 -0
  143. package/lib/assets/gltf/door_exterior.bin +0 -0
  144. package/lib/assets/gltf/door_exterior.fbx +0 -0
  145. package/lib/assets/gltf/door_interior.bin +0 -0
  146. package/lib/assets/gltf/door_interior.fbx +0 -0
  147. package/lib/assets/gltf/door_sliding.bin +0 -0
  148. package/lib/assets/gltf/door_sliding.fbx +0 -0
  149. package/lib/assets/img/png/helper/video_preview_3d.png +0 -0
  150. package/lib/assets/img/png/helper/video_preview_start.png +0 -0
  151. package/lib/assets/img/svg/color/Brown.svg +0 -9
  152. package/lib/assets/img/svg/color/Dark.svg +0 -9
  153. package/lib/assets/img/svg/color/Light.svg +0 -9
  154. package/lib/assets/img/svg/color/Medium.svg +0 -9
  155. package/lib/assets/img/svg/color/Unfinished.svg +0 -9
  156. package/lib/catalog/lines/wall/textures/bricks-normal2.jpg +0 -0
  157. package/lib/catalog/lines/wall/textures/bricks3.jpg +0 -0
  158. package/lib/catalog/properties/export.js +0 -81
  159. package/lib/catalog/properties/property-checkbox.js +0 -76
  160. package/lib/catalog/properties/property-color.js +0 -47
  161. package/lib/catalog/properties/property-enum.js +0 -58
  162. package/lib/catalog/properties/property-hidden.js +0 -27
  163. package/lib/catalog/properties/property-lenght-measure.js +0 -108
  164. package/lib/catalog/properties/property-length-measure.js +0 -92
  165. package/lib/catalog/properties/property-length-measure_hole.js +0 -108
  166. package/lib/catalog/properties/property-number.js +0 -56
  167. package/lib/catalog/properties/property-read-only.js +0 -34
  168. package/lib/catalog/properties/property-string.js +0 -56
  169. package/lib/catalog/properties/property-toggle.js +0 -47
  170. package/lib/catalog/properties/shared-property-style.js +0 -21
  171. package/lib/catalog/utils/FuseUtils.js +0 -87
  172. package/lib/class/FuseUtils.js +0 -87
  173. package/lib/components/style/button.js +0 -115
  174. package/lib/components/style/cancel-button.js +0 -29
  175. package/lib/components/style/content-container.js +0 -38
  176. package/lib/components/style/content-title.js +0 -35
  177. package/lib/components/style/delete-button.js +0 -34
  178. package/lib/components/style/form-block.js +0 -28
  179. package/lib/components/style/form-color-input.js +0 -34
  180. package/lib/components/style/form-label.js +0 -30
  181. package/lib/components/style/form-number-input_2.js +0 -209
  182. package/lib/components/style/form-select.js +0 -29
  183. package/lib/components/style/form-slider.js +0 -68
  184. package/lib/components/style/form-text-input.js +0 -78
  185. package/lib/reducers/user-reducer.js +0 -48
  186. package/lib/styles/export.js +0 -13
  187. package/lib/styles/tabs.css +0 -40
@@ -1,19 +1,12 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
- import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
5
- import _createClass from "@babel/runtime/helpers/esm/createClass";
6
- import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
7
- import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
8
- import _inherits from "@babel/runtime/helpers/esm/inherits";
9
- var _excluded = ["width", "height", "configData", "externalEvent", "onInternalEvent", "onError"];
4
+ var _excluded = ["width", "height", "configData", "externalEvent", "onInternalEvent", "onError", "holes"];
10
5
  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; }
11
6
  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) { _defineProperty(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; }
12
7
  function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
13
8
  function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
14
9
  function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
15
- function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
16
- function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
17
10
  // LiteRenderer.jsx
18
11
  import React, { useCallback, useEffect, useMemo, useRef } from 'react';
19
12
  import PropTypes from 'prop-types';
@@ -29,7 +22,7 @@ import AppContext from "./AppContext";
29
22
  import Catalog from "./catalog/catalog";
30
23
  import * as Areas from "./catalog/areas/area/planner-element";
31
24
  import * as Lines from "./catalog/lines/wall/planner-element";
32
- import * as Holes from "./catalog/holes/export";
25
+ import { buildHoleElements, registerDynamicHoles } from "./mappings/holesToCatalog";
33
26
  import { ConsoleDebugger, Keyboard } from "./plugins/export";
34
27
  import LiteKitchenConfigurator from "./LiteKitchenConfigurator";
35
28
  var isBrowser = typeof window !== 'undefined';
@@ -80,50 +73,15 @@ function serializeError(err) {
80
73
  }
81
74
  }
82
75
 
83
- /* ---------- Error Boundary that pushes into buffer ---------- */
84
- var ToolErrorBoundary = /*#__PURE__*/function (_React$Component) {
85
- function ToolErrorBoundary() {
86
- _classCallCheck(this, ToolErrorBoundary);
87
- return _callSuper(this, ToolErrorBoundary, arguments);
88
- }
89
- _inherits(ToolErrorBoundary, _React$Component);
90
- return _createClass(ToolErrorBoundary, [{
91
- key: "componentDidCatch",
92
- value: function componentDidCatch(error, info) {
93
- var pushError = this.props.pushError;
94
- pushError({
95
- type: 'render-error',
96
- error: serializeError(error),
97
- info: {
98
- componentStack: info === null || info === void 0 ? void 0 : info.componentStack
99
- }
100
- });
101
- }
102
- }, {
103
- key: "render",
104
- value: function render() {
105
- return this.props.children;
106
- }
107
- }]);
108
- }(React.Component);
109
- ToolErrorBoundary.propTypes = {
110
- pushError: PropTypes.func.isRequired,
111
- children: PropTypes.any
112
- };
113
-
114
76
  // ----------------- catalog init -----------------
115
77
  function initCatalogOnce(catalog) {
116
78
  if (!catalog) return;
117
- if (catalog.__ksInitialized) return;
118
- for (var x in Areas) catalog.registerElement(Areas[x]);
119
- for (var _x in Lines) catalog.registerElement(Lines[_x]);
120
- for (var _x2 in Holes) catalog.registerElement(Holes[_x2]);
121
- catalog.registerCategory('Windows', 'Windows', [Holes.windowClear, Holes.windowCross, Holes.windowDoubleHung, Holes.windowVertical]);
122
- catalog.registerCategory('Doors', 'Doors', [Holes.doorInterior, Holes.doorExterior, Holes.doorCloset, Holes.doorSliding, Holes.doorwayFramed, Holes.doorwayFrameless]);
123
- catalog.__ksInitialized = true;
79
+ if (!catalog.__ksInitialized) {
80
+ for (var x in Areas) catalog.registerElement(Areas[x]);
81
+ for (var _x in Lines) catalog.registerElement(Lines[_x]);
82
+ catalog.__ksInitialized = true;
83
+ }
124
84
  }
125
-
126
- // ----------------- store factory -----------------
127
85
  function createInstanceStore() {
128
86
  var AppState = Map({
129
87
  KitchenConfigurator: new State()
@@ -164,7 +122,11 @@ export default function LiteRenderer(props) {
164
122
  externalEvent = props.externalEvent,
165
123
  onInternalEvent = props.onInternalEvent,
166
124
  onError = props.onError,
125
+ holes = props.holes,
167
126
  passThrough = _objectWithoutProperties(props, _excluded);
127
+ var holePayload = useMemo(function () {
128
+ return buildHoleElements(holes);
129
+ }, [holes]);
168
130
 
169
131
  // ✅ instance-scoped store (no module singleton)
170
132
  var storeRef = useRef(null);
@@ -174,8 +136,9 @@ export default function LiteRenderer(props) {
174
136
  var catalogRef = useRef(null);
175
137
  if (!catalogRef.current) {
176
138
  catalogRef.current = new Catalog();
177
- initCatalogOnce(catalogRef.current);
178
139
  }
140
+ initCatalogOnce(catalogRef.current);
141
+ registerDynamicHoles(catalogRef.current, holePayload);
179
142
 
180
143
  // ✅ stable plugins array
181
144
  var plugins = useMemo(function () {
@@ -313,8 +276,6 @@ export default function LiteRenderer(props) {
313
276
  companyUrl = _ref.companyUrl;
314
277
  return /*#__PURE__*/React.createElement(AppContext.Provider, null, /*#__PURE__*/React.createElement(Provider, {
315
278
  store: storeRef.current
316
- }, /*#__PURE__*/React.createElement(ToolErrorBoundary, {
317
- pushError: pushError
318
279
  }, /*#__PURE__*/React.createElement(LiteKitchenConfigurator, _extends({
319
280
  catalog: catalogRef.current,
320
281
  width: width,
@@ -328,7 +289,7 @@ export default function LiteRenderer(props) {
328
289
  configData: configData,
329
290
  externalEvent: externalEvent,
330
291
  onInternalEvent: onInternalEvent
331
- }, passThrough)))));
292
+ }, passThrough))));
332
293
  }
333
294
  LiteRenderer.propTypes = {
334
295
  width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
@@ -348,5 +309,6 @@ LiteRenderer.propTypes = {
348
309
  externalEvent: PropTypes.object,
349
310
  onInternalEvent: PropTypes.func,
350
311
  onError: PropTypes.func,
312
+ holes: PropTypes.array,
351
313
  store: PropTypes.object
352
314
  };