kitchen-simulator 1.1.1-test.5 → 1.1.1-test.51

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 (198) hide show
  1. package/es/KitchenConfigurator.js +10 -17
  2. package/es/KitchenConfiguratorApp.js +16 -31
  3. package/es/actions/area-actions.js +1 -1
  4. package/es/actions/export.js +10 -10
  5. package/es/actions/groups-actions.js +1 -1
  6. package/es/actions/holes-actions.js +1 -1
  7. package/es/actions/items-actions.js +1 -1
  8. package/es/actions/lines-actions.js +1 -1
  9. package/es/actions/project-actions.js +1 -1
  10. package/es/actions/scene-actions.js +1 -1
  11. package/es/actions/vertices-actions.js +1 -1
  12. package/es/actions/viewer2d-actions.js +1 -1
  13. package/es/actions/viewer3d-actions.js +1 -1
  14. package/es/catalog/areas/area/planner-element.js +10 -7
  15. package/es/catalog/catalog.js +3 -3
  16. package/es/catalog/factories/area-factory-3d.js +1 -1
  17. package/es/catalog/factories/area-factory.js +3 -3
  18. package/es/catalog/factories/export.js +2 -2
  19. package/es/catalog/factories/wall-factory-3d.js +5 -5
  20. package/es/catalog/factories/wall-factory.js +6 -6
  21. package/es/catalog/holes/door-closet/planner-element.js +2 -2
  22. package/es/catalog/holes/door-exterior/planner-element.js +2 -2
  23. package/es/catalog/holes/door-interior/planner-element.js +2 -2
  24. package/es/catalog/holes/door-sliding/planner-element.js +2 -2
  25. package/es/catalog/holes/doorway-framed/planner-element.js +2 -2
  26. package/es/catalog/holes/export.js +13 -13
  27. package/es/catalog/holes/window-clear/planner-element.js +2 -2
  28. package/es/catalog/holes/window-cross/planner-element.js +2 -2
  29. package/es/catalog/holes/window-double-hung/planner-element.js +2 -2
  30. package/es/catalog/holes/window-vertical/planner-element.js +2 -2
  31. package/es/catalog/lines/wall/planner-element.js +13 -10
  32. package/es/catalog/molding/molding-dcm/planner-element.js +1 -1
  33. package/es/catalog/molding/molding-fbm/planner-element.js +1 -1
  34. package/es/catalog/molding/molding-lrm/planner-element.js +1 -1
  35. package/es/catalog/properties/export.js +9 -9
  36. package/es/catalog/properties/property-checkbox.js +64 -19
  37. package/es/catalog/properties/property-color.js +2 -2
  38. package/es/catalog/properties/property-enum.js +51 -9
  39. package/es/catalog/properties/property-lenght-measure.js +4 -4
  40. package/es/catalog/properties/property-length-measure.js +58 -9
  41. package/es/catalog/properties/property-length-measure_hole.js +4 -4
  42. package/es/catalog/properties/property-number.js +2 -2
  43. package/es/catalog/properties/property-read-only.js +2 -2
  44. package/es/catalog/properties/property-string.js +2 -2
  45. package/es/catalog/properties/property-toggle.js +2 -2
  46. package/es/catalog/utils/geom-utils.js +1 -1
  47. package/es/catalog/utils/item-loader.js +6 -6
  48. package/es/catalog/utils/load-obj.js +1 -1
  49. package/es/catalog/utils/mtl-loader.js +3 -2
  50. package/es/catalog/utils/obj-loader.js +3 -2
  51. package/es/class/area.js +2 -2
  52. package/es/class/export.js +10 -10
  53. package/es/class/group.js +4 -4
  54. package/es/class/guide.js +1 -1
  55. package/es/class/hole.js +5 -6
  56. package/es/class/item.js +10 -12
  57. package/es/class/layer.js +4 -4
  58. package/es/class/line.js +4 -4
  59. package/es/class/project.js +8 -8
  60. package/es/class/vertex.js +5 -5
  61. package/es/components/content.js +6 -5
  62. package/es/components/disclaimer/disclaimer.js +66 -86
  63. package/es/components/export.js +3 -3
  64. package/es/components/style/button.js +1 -1
  65. package/es/components/style/cancel-button.js +1 -1
  66. package/es/components/style/content-title.js +1 -1
  67. package/es/components/style/delete-button.js +2 -2
  68. package/es/components/style/export.js +14 -14
  69. package/es/components/style/form-color-input.js +1 -1
  70. package/es/components/style/form-number-input.js +32 -8
  71. package/es/components/style/form-number-input_2.js +2 -2
  72. package/es/components/style/form-select.js +56 -8
  73. package/es/components/style/form-slider.js +23 -7
  74. package/es/components/style/form-submit-button.js +2 -2
  75. package/es/components/style/form-text-input.js +31 -12
  76. package/es/components/viewer2d/area.js +5 -5
  77. package/es/components/viewer2d/export.js +14 -14
  78. package/es/components/viewer2d/grids/grids.js +1 -1
  79. package/es/components/viewer2d/group.js +2 -2
  80. package/es/components/viewer2d/item.js +5 -5
  81. package/es/components/viewer2d/layer.js +4 -4
  82. package/es/components/viewer2d/line.js +6 -9
  83. package/es/components/viewer2d/ruler.js +3 -3
  84. package/es/components/viewer2d/rulerX.js +1 -1
  85. package/es/components/viewer2d/rulerY.js +1 -1
  86. package/es/components/viewer2d/scene.js +2 -2
  87. package/es/components/viewer2d/snap.js +1 -1
  88. package/es/components/viewer2d/state.js +3 -3
  89. package/es/components/viewer2d/utils.js +38 -2
  90. package/es/components/viewer2d/vertex.js +1 -1
  91. package/es/components/viewer2d/viewer2d.js +9 -9
  92. package/es/components/viewer3d/front3D.js +2 -2
  93. package/es/components/viewer3d/grid-creator.js +2 -2
  94. package/es/components/viewer3d/grids/grid-horizontal-streak.js +1 -1
  95. package/es/components/viewer3d/grids/grid-streak.js +1 -1
  96. package/es/components/viewer3d/grids/grid-vertical-streak.js +1 -1
  97. package/es/components/viewer3d/libs/mtl-loader.js +2 -2
  98. package/es/components/viewer3d/libs/obj-loader.js +2 -2
  99. package/es/components/viewer3d/libs/orbit-controls.js +6 -5
  100. package/es/components/viewer3d/libs/pointer-lock-controls.js +5 -4
  101. package/es/components/viewer3d/pointer-lock-navigation.js +1 -1
  102. package/es/components/viewer3d/ruler-utils/itemRect.js +1 -1
  103. package/es/components/viewer3d/ruler-utils/layer3D.js +5 -5
  104. package/es/components/viewer3d/ruler-utils/ruler3D.js +1 -1
  105. package/es/components/viewer3d/ruler-utils/scene3D.js +3 -4
  106. package/es/components/viewer3d/ruler-utils/state3D.js +1 -1
  107. package/es/components/viewer3d/scene-creator.js +10 -10
  108. package/es/components/viewer3d/viewer3d-first-person.js +5 -5
  109. package/es/components/viewer3d/viewer3d.js +14 -16
  110. package/es/index.js +16 -15
  111. package/es/models.js +4 -4
  112. package/es/plugins/autosave.js +1 -1
  113. package/es/plugins/console-debugger.js +1 -1
  114. package/es/plugins/export.js +3 -3
  115. package/es/plugins/keyboard.js +2 -2
  116. package/es/reducers/areas-reducer.js +2 -2
  117. package/es/reducers/export.js +11 -11
  118. package/es/reducers/groups-reducer.js +3 -3
  119. package/es/reducers/holes-reducer.js +3 -3
  120. package/es/reducers/items-reducer.js +3 -6
  121. package/es/reducers/lines-reducer.js +3 -3
  122. package/es/reducers/project-reducer.js +3 -3
  123. package/es/reducers/reducer.js +3 -3
  124. package/es/reducers/scene-reducer.js +3 -3
  125. package/es/reducers/user-reducer.js +1 -2
  126. package/es/reducers/vertices-reducer.js +3 -3
  127. package/es/reducers/viewer2d-reducer.js +1 -1
  128. package/es/reducers/viewer3d-reducer.js +3 -3
  129. package/es/styles/export.js +1 -1
  130. package/es/translator/translator.js +3 -3
  131. package/es/utils/export.js +11 -11
  132. package/es/utils/geometry.js +5 -5
  133. package/es/utils/get-edges-of-subgraphs.js +2 -1
  134. package/es/utils/graph-cycles.js +2 -3
  135. package/es/utils/graph-inner-cycles.js +3 -3
  136. package/es/utils/graph.js +2 -1
  137. package/es/utils/helper.js +3 -71
  138. package/es/utils/id-broker.js +2 -2
  139. package/es/utils/molding.js +5 -5
  140. package/es/utils/snap-scene.js +2 -2
  141. package/es/utils/snap.js +1 -1
  142. package/lib/KitchenConfigurator.js +20 -27
  143. package/lib/KitchenConfiguratorApp.js +32 -46
  144. package/lib/catalog/areas/area/planner-element.js +11 -8
  145. package/lib/catalog/factories/wall-factory-3d.js +2 -2
  146. package/lib/catalog/factories/wall-factory.js +1 -1
  147. package/lib/catalog/holes/door-closet/planner-element.js +1 -1
  148. package/lib/catalog/holes/door-exterior/planner-element.js +1 -1
  149. package/lib/catalog/holes/door-interior/planner-element.js +1 -1
  150. package/lib/catalog/holes/door-sliding/planner-element.js +1 -1
  151. package/lib/catalog/holes/doorway-framed/planner-element.js +1 -1
  152. package/lib/catalog/holes/export.js +13 -13
  153. package/lib/catalog/holes/window-clear/planner-element.js +1 -1
  154. package/lib/catalog/holes/window-cross/planner-element.js +1 -1
  155. package/lib/catalog/holes/window-double-hung/planner-element.js +1 -1
  156. package/lib/catalog/holes/window-vertical/planner-element.js +1 -1
  157. package/lib/catalog/lines/wall/planner-element.js +14 -11
  158. package/lib/catalog/properties/property-checkbox.js +64 -19
  159. package/lib/catalog/properties/property-enum.js +49 -7
  160. package/lib/catalog/properties/property-length-measure.js +55 -6
  161. package/lib/catalog/utils/geom-utils.js +1 -1
  162. package/lib/catalog/utils/item-loader.js +4 -4
  163. package/lib/catalog/utils/load-obj.js +1 -1
  164. package/lib/catalog/utils/mtl-loader.js +7 -3
  165. package/lib/catalog/utils/obj-loader.js +7 -3
  166. package/lib/class/item.js +3 -5
  167. package/lib/class/line.js +1 -1
  168. package/lib/class/vertex.js +1 -1
  169. package/lib/components/content.js +1 -0
  170. package/lib/components/disclaimer/disclaimer.js +66 -86
  171. package/lib/components/style/form-number-input.js +30 -6
  172. package/lib/components/style/form-select.js +54 -8
  173. package/lib/components/style/form-slider.js +22 -6
  174. package/lib/components/style/form-text-input.js +30 -12
  175. package/lib/components/viewer2d/area.js +3 -3
  176. package/lib/components/viewer2d/line.js +3 -6
  177. package/lib/components/viewer2d/scene.js +1 -1
  178. package/lib/components/viewer2d/utils.js +37 -0
  179. package/lib/components/viewer2d/viewer2d.js +15 -15
  180. package/lib/components/viewer3d/libs/mtl-loader.js +6 -2
  181. package/lib/components/viewer3d/libs/obj-loader.js +6 -2
  182. package/lib/components/viewer3d/libs/orbit-controls.js +10 -5
  183. package/lib/components/viewer3d/libs/pointer-lock-controls.js +9 -4
  184. package/lib/components/viewer3d/ruler-utils/scene3D.js +1 -2
  185. package/lib/components/viewer3d/scene-creator.js +2 -2
  186. package/lib/components/viewer3d/viewer3d.js +5 -6
  187. package/lib/index.js +3 -1
  188. package/lib/reducers/user-reducer.js +0 -1
  189. package/lib/utils/get-edges-of-subgraphs.js +7 -1
  190. package/lib/utils/graph-cycles.js +9 -9
  191. package/lib/utils/graph.js +9 -3
  192. package/lib/utils/helper.js +2 -70
  193. package/lib/utils/id-broker.js +2 -2
  194. package/package.json +30 -61
  195. package/es/analytics/ga4.js +0 -191
  196. package/es/analytics/posthog.js +0 -60
  197. package/lib/analytics/ga4.js +0 -197
  198. package/lib/analytics/posthog.js +0 -68
@@ -1,7 +1,9 @@
1
1
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
2
  var _excluded = ["style"];
3
- var _templateObject;
4
3
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
4
+ 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; }
5
+ 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; }
6
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
5
7
  function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
6
8
  function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
7
9
  function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
@@ -16,12 +18,27 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
16
18
  function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); }
17
19
  function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); }
18
20
  function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
19
- function _taggedTemplateLiteral(e, t) { return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, { raw: { value: Object.freeze(t) } })); }
20
21
  import React, { Component } from 'react';
21
- import * as SharedStyle from '../../shared-style';
22
- import { PROJECT_NAME_LENGTH_LIMIT, TEXT_COLOR_NEUTRAL_3, BG_COLOR_0, DEFAULT_FONT_FAMILY, SECONDARY_PURPLE_COLOR } from '../../constants';
23
- import styled from 'styled-components';
24
- var StyledInput = styled.input(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: block;\n padding: 15px 10px 12px 0px;\n width: 120px;\n font-family: ", ";\n font-size: 12px;\n font-weight: 600;\n line-height: 17px;\n color: ", ";\n background-color: ", ";\n border: 2px solid;\n text-align: right;\n float: right;\n border-radius: 5px;\n outline: 0;\n :focus {\n border-color: ", ";\n }\n"])), DEFAULT_FONT_FAMILY, TEXT_COLOR_NEUTRAL_3, BG_COLOR_0, SECONDARY_PURPLE_COLOR);
22
+ import { BG_COLOR_0, DEFAULT_FONT_FAMILY, PROJECT_NAME_LENGTH_LIMIT, SECONDARY_PURPLE_COLOR, TEXT_COLOR_NEUTRAL_3 } from "../../constants";
23
+ var styles = {
24
+ input: {
25
+ display: 'block',
26
+ padding: '15px 10px 12px 0px',
27
+ width: 120,
28
+ fontFamily: DEFAULT_FONT_FAMILY,
29
+ fontSize: 12,
30
+ fontWeight: 600,
31
+ lineHeight: '17px',
32
+ color: TEXT_COLOR_NEUTRAL_3,
33
+ backgroundColor: BG_COLOR_0,
34
+ border: '2px solid',
35
+ textAlign: 'right',
36
+ "float": 'right',
37
+ borderRadius: 5,
38
+ outline: 0,
39
+ transition: 'border-color 0.2s'
40
+ }
41
+ };
25
42
  var FormTextInput = /*#__PURE__*/function (_Component) {
26
43
  function FormTextInput(props) {
27
44
  var _this;
@@ -48,21 +65,23 @@ var FormTextInput = /*#__PURE__*/function (_Component) {
48
65
  var _this$props = this.props,
49
66
  style = _this$props.style,
50
67
  rest = _objectWithoutProperties(_this$props, _excluded);
51
- return /*#__PURE__*/React.createElement(StyledInput, _extends({
68
+ var focus = this.state.focus;
69
+ var inputStyle = _objectSpread(_objectSpread({}, styles.input), {}, {
70
+ borderColor: focus ? SECONDARY_PURPLE_COLOR : undefined
71
+ }, style);
72
+ return /*#__PURE__*/React.createElement("input", _extends({
52
73
  ref: this.input,
53
- onFocus: function onFocus(e) {
74
+ onFocus: function onFocus() {
54
75
  return _this2.setState({
55
76
  focus: true
56
77
  });
57
78
  },
58
- onBlur: function onBlur(e) {
79
+ onBlur: function onBlur() {
59
80
  return _this2.setState({
60
81
  focus: false
61
82
  });
62
83
  },
63
- style: style
64
- // autoFocus
65
- ,
84
+ style: inputStyle,
66
85
  type: "text"
67
86
  }, rest, {
68
87
  maxLength: PROJECT_NAME_LENGTH_LIMIT
@@ -1,10 +1,10 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import polylabel from 'polylabel';
4
- import areapolygon from 'area-polygon';
5
4
  import convert from 'convert-units';
6
- import { formatNumber } from '../../utils/math';
7
- import { DECIMAL_PLACES_2 } from '../../constants';
5
+ import { formatNumber } from "../../utils/math";
6
+ import { DECIMAL_PLACES_2 } from "../../constants";
7
+ import { areaPolygon } from "./utils";
8
8
  var STYLE_TEXT = {
9
9
  textAnchor: 'middle',
10
10
  fontSize: '12px',
@@ -44,7 +44,7 @@ export default function Area(_ref) {
44
44
  polygonWithHoles = polygonWithHoles.concat(polygonHole.reverse());
45
45
  });
46
46
  var center = polylabel([polygonWithHoles], 1.0);
47
- var areaSize = areapolygon(polygon, false);
47
+ var areaSize = areaPolygon(polygon, false);
48
48
  //subtract holes area
49
49
  area.holes.forEach(function (areaID) {
50
50
  var hole = layer.areas.get(areaID);
@@ -54,7 +54,7 @@ export default function Area(_ref) {
54
54
  y = _layer$vertices$get3.y;
55
55
  return [x, y];
56
56
  });
57
- areaSize -= areapolygon(holePolygon, false);
57
+ areaSize -= areaPolygon(holePolygon, false);
58
58
  });
59
59
  renderedAreaSize = /*#__PURE__*/React.createElement("text", {
60
60
  x: "0",
@@ -1,17 +1,17 @@
1
- import Viewer2D from './viewer2d';
2
- import Vertex from './vertex';
3
- import State from './state';
4
- import Snap from './snap';
5
- import Scene from './scene';
6
- import Ruler from './ruler';
7
- import Line from './line';
8
- import Layer from './layer';
9
- import Item from './item';
10
- import Area from './area';
11
- import Grids from './grids/grids';
12
- import Group from './group';
13
- import RulerX from './rulerX';
14
- import RulerY from './rulerY';
1
+ import Viewer2D from "./viewer2d";
2
+ import Vertex from "./vertex";
3
+ import State from "./state";
4
+ import Snap from "./snap";
5
+ import Scene from "./scene";
6
+ import Ruler from "./ruler";
7
+ import Line from "./line";
8
+ import Layer from "./layer";
9
+ import Item from "./item";
10
+ import Area from "./area";
11
+ import Grids from "./grids/grids";
12
+ import Group from "./group";
13
+ import RulerX from "./rulerX";
14
+ import RulerY from "./rulerY";
15
15
  export { Viewer2D, Vertex, State, Snap, Scene, Ruler, Line, Layer, Item, Area, Grids, Group, RulerX, RulerY };
16
16
  export default {
17
17
  Viewer2D: Viewer2D,
@@ -6,7 +6,7 @@ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" !=
6
6
  function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
7
7
  import React, { memo } from 'react';
8
8
  import PropTypes from 'prop-types';
9
- import GridStreak from './grid-streak';
9
+ import GridStreak from "./grid-streak";
10
10
  var propsAreEqual = function propsAreEqual(oldScene, newScene) {
11
11
  return oldScene.scene.width === newScene.scene.width && oldScene.scene.height === newScene.scene.height && oldScene.scene.grids === newScene.scene.grids;
12
12
  };
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
- import If from '../../utils/react-if';
4
- import * as sharedStyles from '../../shared-style';
3
+ import If from "../../utils/react-if";
4
+ import * as sharedStyles from "../../shared-style";
5
5
  var cx = 0;
6
6
  var cy = 0;
7
7
  var radius = 5;
@@ -7,12 +7,12 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
7
7
  import React from 'react';
8
8
  import { useState } from 'react';
9
9
  import PropTypes from 'prop-types';
10
- import If from '../../utils/react-if';
11
- import RulerDist from './rulerDist';
10
+ import If from "../../utils/react-if";
11
+ import RulerDist from "./rulerDist";
12
12
  import convert from 'convert-units';
13
- import { GeometryUtils } from '../../utils/export';
14
- import { MODE_ROTATING_ITEM, SECONDARY_PURPLE_COLOR, STATUS_NEGATIVE_COLOR, BG_COLOR_1, STATUS_WARNING_COLOR, WALL_CABINET_LAYOUTPOS } from '../../constants';
15
- import { returnReplaceableDeepSearchType } from './utils';
13
+ import { GeometryUtils } from "../../utils/export";
14
+ import { MODE_ROTATING_ITEM, SECONDARY_PURPLE_COLOR, STATUS_NEGATIVE_COLOR, BG_COLOR_1, STATUS_WARNING_COLOR, WALL_CABINET_LAYOUTPOS } from "../../constants";
15
+ import { returnReplaceableDeepSearchType } from "./utils";
16
16
  var STYLE_LINE = {
17
17
  fill: '#0096fd',
18
18
  stroke: '#0096fd'
@@ -1,9 +1,9 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
- import { Line, Area, Vertex, Item, Group } from './export';
4
- import { GeometryUtils } from '../../utils/export';
5
- import { MODE_DRAWING_LINE, WALL_CABINET_LAYOUTPOS } from '../../constants';
6
- import { returnReplaceableDeepSearchType } from './utils';
3
+ import { Line, Area, Vertex, Item, Group } from "./export";
4
+ import { GeometryUtils } from "../../utils/export";
5
+ import { MODE_DRAWING_LINE, WALL_CABINET_LAYOUTPOS } from "../../constants";
6
+ import { returnReplaceableDeepSearchType } from "./utils";
7
7
  var STYLE = {
8
8
  stroke: '#494949',
9
9
  strokeWidth: 1,
@@ -1,11 +1,10 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
- import { GeometryUtils } from '../../utils/export';
4
- import Ruler from './ruler';
5
- import { BASE_CABINET_LAYOUTPOS, LINE_THICKNESS, WALL_CABINET_LAYOUTPOS } from 'src/constants';
3
+ import { GeometryUtils } from "../../utils/export";
4
+ import Ruler from "./ruler";
5
+ import { BASE_CABINET_LAYOUTPOS, LINE_THICKNESS, WALL_CABINET_LAYOUTPOS } from "../../constants";
6
6
  import * as Three from 'three';
7
- import { isEmpty } from './utils';
8
- import Tooltip from '@material-ui/core/Tooltip';
7
+ import { isEmpty } from "./utils";
9
8
  var STYLE = {
10
9
  stroke: 'rgb(77, 77, 77)',
11
10
  strokeWidth: '1px'
@@ -795,9 +794,7 @@ export default function Line(_ref) {
795
794
  } : {}
796
795
  }, renderedLine, /*#__PURE__*/React.createElement("g", {
797
796
  transform: "translate(".concat(x1, ", ").concat(y1, ") rotate(").concat(angle, ", 0, 0)")
798
- }, renderedHoles)), line.selected && /*#__PURE__*/React.createElement(Tooltip, {
799
- title: "Elevation View"
800
- }, /*#__PURE__*/React.createElement("g", {
797
+ }, renderedHoles)), line.selected && /*#__PURE__*/React.createElement("g", {
801
798
  id: 'elevation-button',
802
799
  key: 1,
803
800
  transform: "translate(".concat(x1 + 35, ", ").concat(y1 - 15, ")"),
@@ -827,7 +824,7 @@ export default function Line(_ref) {
827
824
  style: {
828
825
  transform: 'rotateX(180deg)'
829
826
  }
830
- }))), line.selected && /*#__PURE__*/React.createElement("g", {
827
+ })), line.selected && /*#__PURE__*/React.createElement("g", {
831
828
  id: 'remove-button',
832
829
  key: 2,
833
830
  transform: "translate(".concat(x1 + 10, ", ").concat(y1, ")"),
@@ -1,9 +1,9 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import convert from 'convert-units';
4
- import IDBroker from '../../utils/id-broker';
5
- import { FormNumberInput2 } from '../style/export';
6
- import { LINE_THICKNESS, SHADE_LIGHT_BLUE_COLOR, TEXT_COLOR_NEUTRAL_7 } from '../../constants';
4
+ import IDBroker from "../../utils/id-broker";
5
+ import { FormNumberInput2 } from "../style/export";
6
+ import { LINE_THICKNESS, SHADE_LIGHT_BLUE_COLOR, TEXT_COLOR_NEUTRAL_7 } from "../../constants";
7
7
  var STYLE = {
8
8
  stroke: TEXT_COLOR_NEUTRAL_7,
9
9
  strokeWidth: '1px'
@@ -16,7 +16,7 @@ function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new T
16
16
  function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
17
17
  import React, { Component } from 'react';
18
18
  import PropTypes from 'prop-types';
19
- import * as SharedStyle from '../../shared-style';
19
+ import * as SharedStyle from "../../shared-style";
20
20
  var RulerX = /*#__PURE__*/function (_Component) {
21
21
  function RulerX(props, context) {
22
22
  _classCallCheck(this, RulerX);
@@ -16,7 +16,7 @@ function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new T
16
16
  function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
17
17
  import React, { Component } from 'react';
18
18
  import PropTypes from 'prop-types';
19
- import * as SharedStyle from '../../shared-style';
19
+ import * as SharedStyle from "../../shared-style";
20
20
  var RulerY = /*#__PURE__*/function (_Component) {
21
21
  function RulerY(props, context) {
22
22
  _classCallCheck(this, RulerY);
@@ -23,8 +23,7 @@ function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new T
23
23
  function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
24
24
  import React, { Component } from 'react';
25
25
  import PropTypes from 'prop-types';
26
- import { Layer, Grids } from './export';
27
- import { searchForSkuValue } from './utils';
26
+ import { Grids, Layer } from "./export";
28
27
  var Scene = /*#__PURE__*/function (_Component) {
29
28
  function Scene() {
30
29
  _classCallCheck(this, Scene);
@@ -43,6 +42,7 @@ var Scene = /*#__PURE__*/function (_Component) {
43
42
  if (this.props.scene.hashCode() !== nextProps.scene.hashCode()) {
44
43
  scene = nextProps.scene, catalog = nextProps.catalog;
45
44
  height = scene.height, layers = scene.layers;
45
+ console.log(layers.toJS());
46
46
  selectedLayer = layers.get(scene.selectedLayer);
47
47
  msg = '';
48
48
  isNotFoundInElements = false;
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
- import * as Geometry from '../../utils/geometry';
3
+ import * as Geometry from "../../utils/geometry";
4
4
  var STYLE = {
5
5
  stroke: '#D32F2F',
6
6
  strokeWidth: '1px'
@@ -6,9 +6,9 @@ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" !=
6
6
  function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
7
7
  import React from 'react';
8
8
  import PropTypes from 'prop-types';
9
- import Scene from './scene';
10
- import Snap from './snap';
11
- import * as SharedStyle from '../../shared-style';
9
+ import Scene from "./scene";
10
+ import Snap from "./snap";
11
+ import * as SharedStyle from "../../shared-style";
12
12
  var guideStyle = {
13
13
  stroke: SharedStyle.SECONDARY_COLOR.main,
14
14
  strokewidth: '2.5px'
@@ -1,6 +1,12 @@
1
+ function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
2
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3
+ 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; } }
4
+ function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
5
+ function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
6
+ 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; }
1
7
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
- import { isImmutable, toPlainObject } from '../../utils/helper';
3
- import { INSTALLATION_SUFFIX_TYPE, INSTALLATION_TYPE_NAME, INSTALLATION_TYPE_SKU_SUFFIX, TOE_KICK_MOLDING } from '../../constants';
8
+ import { toPlainObject } from "../../utils/helper";
9
+ import { INSTALLATION_SUFFIX_TYPE, INSTALLATION_TYPE_NAME, INSTALLATION_TYPE_SKU_SUFFIX, TOE_KICK_MOLDING } from "../../constants";
4
10
  export var searchForSkuValue = function searchForSkuValue(catalog, selectedLayer, elementType) {
5
11
  return new Promise(function (resolve) {
6
12
  if (elementType) {
@@ -159,4 +165,34 @@ export var getToeKickSKU = function getToeKickSKU() {
159
165
  });
160
166
  if (!skuData) return false;
161
167
  return skuData;
168
+ };
169
+
170
+ // ESM version of "area-polygon" with default + named export.
171
+ // Same behavior: takes an array of [x,y] tuples or {x,y} objects.
172
+ // If `signed` is truthy, returns signed area; otherwise absolute area.
173
+ // Does not mutate the input array.
174
+
175
+ function normalize(point) {
176
+ if (Array.isArray(point)) {
177
+ return {
178
+ x: point[0],
179
+ y: point[1]
180
+ };
181
+ }
182
+ return point;
183
+ }
184
+ export var areaPolygon = function areaPolygon(points) {
185
+ var signed = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
186
+ if (!Array.isArray(points) || points.length < 3) return 0;
187
+
188
+ // normalize and ensure closed ring (without mutating input)
189
+ var pts = points.map(normalize);
190
+ var closed = pts.length > 0 && (pts[0].x !== pts[pts.length - 1].x || pts[0].y !== pts[pts.length - 1].y) ? [].concat(_toConsumableArray(pts), [pts[0]]) : pts;
191
+ var det = 0;
192
+ var l = closed.length - 1; // last index before the duplicated first point
193
+ for (var i = 0; i < l; i++) {
194
+ det += closed[i].x * closed[i + 1].y - closed[i].y * closed[i + 1].x;
195
+ }
196
+ var area = det / 2;
197
+ return signed ? area : Math.abs(area);
162
198
  };
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
- import * as SharedStyle from '../../shared-style';
3
+ import * as SharedStyle from "../../shared-style";
4
4
  //Space from the center of the point(Use cases:x - vertexthickness,y + vertexthickness )
5
5
  var vertexthickness = 4;
6
6
  var STYLE = {
@@ -17,17 +17,17 @@ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
17
17
  import React, { useEffect, useRef, useState } from 'react';
18
18
  import PropTypes from 'prop-types';
19
19
  import { ReactSVGPanZoom, TOOL_AUTO, TOOL_NONE, TOOL_PAN, TOOL_ZOOM_IN, TOOL_ZOOM_OUT, zoom } from 'react-svg-pan-zoom';
20
- import * as constants from '../../constants';
21
- import State from './state';
22
- import * as SharedStyle from '../../shared-style';
23
- import { RulerX, RulerY } from './export';
24
- import { DECIMAL_PLACES_2, LINE_THICKNESS, MIN_ANGLE_DISALLOW_DRAW_WALL, MODE_ELEVATION_VIEW, MODE_IDLE, UNIT_ANGLE } from 'src/constants';
25
- import { GeometryUtils } from '../../utils/export';
26
- import FormNumberInput from '../style/form-number-input';
20
+ import * as constants from "../../constants";
21
+ import State from "./state";
22
+ import * as SharedStyle from "../../shared-style";
23
+ import { RulerX, RulerY } from "./export";
24
+ import { DECIMAL_PLACES_2, LINE_THICKNESS, MIN_ANGLE_DISALLOW_DRAW_WALL, MODE_ELEVATION_VIEW, MODE_IDLE, UNIT_ANGLE } from "../../constants";
25
+ import { GeometryUtils } from "../../utils/export";
26
+ import FormNumberInput from "../style/form-number-input";
27
27
  import convert from 'convert-units';
28
28
  import { Map } from 'immutable';
29
- import { formatNumber } from 'src/utils/math';
30
- import { isEmpty } from 'src/utils/helper';
29
+ import { formatNumber } from "../../utils/math";
30
+ import { isEmpty } from "../../utils/helper";
31
31
 
32
32
  // variables
33
33
  var pinFlag = false;
@@ -5,8 +5,8 @@ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length)
5
5
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
6
6
  function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
7
7
  import React, { useState, useEffect } from 'react';
8
- import Viewer3D from './viewer3d';
9
- import State3D from './ruler-utils/state3D';
8
+ import Viewer3D from "./viewer3d";
9
+ import State3D from "./ruler-utils/state3D";
10
10
  var k = 0;
11
11
  export default function Front3D(_ref, _ref2) {
12
12
  var width = _ref.width,
@@ -1,6 +1,6 @@
1
1
  import * as Three from 'three';
2
- import { HELVETIKER } from './libs/helvetiker_regular.typeface.js';
3
- import gridStreak from './grids/grid-streak';
2
+ import { HELVETIKER } from "./libs/helvetiker_regular.typeface.js";
3
+ import gridStreak from "./grids/grid-streak";
4
4
  import { FontLoader } from 'three/examples/jsm/loaders/FontLoader.js';
5
5
  export default function createGrid(scene) {
6
6
  var gridMesh = new Three.Object3D();
@@ -1,6 +1,6 @@
1
1
  import * as Three from 'three';
2
2
  import { List } from 'immutable';
3
- import { COLORS } from '../../../shared-style';
3
+ import { COLORS } from "../../../shared-style";
4
4
  export default function (width, height, grid, font) {
5
5
  var step = grid.properties.get('step');
6
6
  var colors = grid.properties.has('color') ? new List([grid.properties.get('color')]) : grid.properties.get('colors');
@@ -1,6 +1,6 @@
1
1
  import * as Three from 'three';
2
2
  import { List } from 'immutable';
3
- import { COLORS } from '../../../shared-style';
3
+ import { COLORS } from "../../../shared-style";
4
4
  export default function (width, height, grid, font) {
5
5
  var step = grid.properties.get('step');
6
6
  var colors = grid.properties.has('color') ? new List([grid.properties.get('color')]) : grid.properties.get('colors');
@@ -1,6 +1,6 @@
1
1
  import * as Three from 'three';
2
2
  import { List } from 'immutable';
3
- import { COLORS } from '../../../shared-style';
3
+ import { COLORS } from "../../../shared-style";
4
4
  export default function (width, height, grid, font) {
5
5
  var step = grid.properties.get('step');
6
6
  var colors = grid.properties.has('color') ? new List([grid.properties.get('color')]) : grid.properties.get('colors');
@@ -4,7 +4,7 @@
4
4
  * @author angelxuanchang
5
5
  */
6
6
 
7
- var THREE = window.THREE || require('three');
7
+ var THREE = window.THREE;
8
8
  var MTLLoader;
9
9
  MTLLoader = function MTLLoader(manager) {
10
10
  this.manager = manager !== undefined ? manager : THREE.DefaultLoadingManager;
@@ -354,4 +354,4 @@ MTLLoader.MaterialCreator.prototype = {
354
354
  return texture;
355
355
  }
356
356
  };
357
- module.exports = MTLLoader;
357
+ export default MTLLoader;
@@ -2,7 +2,7 @@
2
2
  * @author mrdoob / http://mrdoob.com/
3
3
  */
4
4
 
5
- var THREE = window.THREE || require('three');
5
+ var THREE = window.THREE;
6
6
  var OBJLoader;
7
7
  OBJLoader = function OBJLoader(manager) {
8
8
  this.manager = manager !== undefined ? manager : THREE.DefaultLoadingManager;
@@ -459,4 +459,4 @@ OBJLoader.prototype = {
459
459
  return container;
460
460
  }
461
461
  };
462
- module.exports = OBJLoader;
462
+ export default OBJLoader;
@@ -13,9 +13,8 @@
13
13
  // Zoom - middle mouse, or mousewheel / touch: two finger spread or squish
14
14
  // Pan - right mouse, or arrow keys / touch: three finter swipe
15
15
 
16
- var THREE = window.THREE || require('three');
17
- var OrbitControls;
18
- module.exports = OrbitControls = function OrbitControls(object, domElement) {
16
+ var THREE = window.THREE;
17
+ function OrbitControls(object, domElement) {
19
18
  this.object = object;
20
19
  this.domElement = domElement !== undefined ? domElement : document;
21
20
 
@@ -623,7 +622,7 @@ module.exports = OrbitControls = function OrbitControls(object, domElement) {
623
622
  // force an update at start
624
623
 
625
624
  this.update();
626
- };
625
+ }
627
626
  OrbitControls.prototype = Object.create(THREE.EventDispatcher.prototype);
628
627
  OrbitControls.prototype.constructor = OrbitControls;
629
628
  Object.defineProperties(OrbitControls.prototype, {
@@ -695,4 +694,6 @@ Object.defineProperties(OrbitControls.prototype, {
695
694
  this.dampingFactor = value;
696
695
  }
697
696
  }
698
- });
697
+ });
698
+ export default OrbitControls;
699
+ export { OrbitControls };
@@ -2,9 +2,8 @@
2
2
  * @author mrdoob / http://mrdoob.com/
3
3
  */
4
4
 
5
- var THREE = window.THREE || require('three');
6
- var PointerLockControls;
7
- module.exports = PointerLockControls = function PointerLockControls(camera) {
5
+ var THREE = window.THREE;
6
+ function PointerLockControls(camera) {
8
7
  var scope = this;
9
8
  camera.rotation.set(0, 0, 0);
10
9
  var pitchObject = new THREE.Object3D();
@@ -42,4 +41,6 @@ module.exports = PointerLockControls = function PointerLockControls(camera) {
42
41
  return v;
43
42
  };
44
43
  }();
45
- };
44
+ }
45
+ export default PointerLockControls;
46
+ export { PointerLockControls };
@@ -1,4 +1,4 @@
1
- import PointerLockControls from './libs/pointer-lock-controls';
1
+ import PointerLockControls from "./libs/pointer-lock-controls";
2
2
  export function initPointerLock(camera, rendererElement) {
3
3
  var havePointerLock = 'pointerLockElement' in document || 'mozPointerLockElement' in document || 'webkitPointerLockElement' in document;
4
4
  var pointerlockchange = function pointerlockchange(event) {
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { MODE_BACK_ELEVATION_VIEW, MODE_FRONT_ELEVATION_VIEW, MODE_LEFT_ELEVATION_VIEW, MODE_RIGHT_ELEVATION_VIEW } from '../../../constants';
2
+ import { MODE_BACK_ELEVATION_VIEW, MODE_FRONT_ELEVATION_VIEW, MODE_LEFT_ELEVATION_VIEW, MODE_RIGHT_ELEVATION_VIEW } from "../../../constants";
3
3
  import convert from 'convert-units';
4
4
  export default function ItemRect(_ref) {
5
5
  var scene = _ref.scene,
@@ -1,10 +1,10 @@
1
1
  import React from 'react';
2
- import Ruler3D from './ruler3D';
2
+ import Ruler3D from "./ruler3D";
3
3
  import convert from 'convert-units';
4
- import { GeometryUtils } from '../../../utils/export';
5
- import { returnReplaceableDeepSearchType } from '../../../components/viewer2d/utils';
6
- import { DELTA, DISTANCE_EPSILON, DECIMAL_PLACES_2 } from '../../../constants';
7
- import { formatNumber, isNonZeroText } from '../../../utils/math';
4
+ import { GeometryUtils } from "../../../utils/export";
5
+ import { returnReplaceableDeepSearchType } from "../../../components/viewer2d/utils";
6
+ import { DELTA, DISTANCE_EPSILON, DECIMAL_PLACES_2 } from "../../../constants";
7
+ import { formatNumber, isNonZeroText } from "../../../utils/math";
8
8
  export default function Layer3D(_ref) {
9
9
  var layer = _ref.layer,
10
10
  frontRect = _ref.frontRect,
@@ -5,7 +5,7 @@ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object
5
5
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
6
6
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
7
  import React from 'react';
8
- import { TEXT_COLOR_NEUTRAL_0, TEXT_COLOR_NEUTRAL_6 } from '../../../constants';
8
+ import { TEXT_COLOR_NEUTRAL_0, TEXT_COLOR_NEUTRAL_6 } from "../../../constants";
9
9
  export default function Ruler3D(_ref) {
10
10
  var layer = _ref.layer,
11
11
  line = _ref.line,
@@ -1,9 +1,7 @@
1
1
  import React from 'react';
2
- import { GeometryUtils } from '../../../utils/export';
3
- import { isElevationView } from '../../..//utils/helper';
4
- import { verticesDistance } from '../../../utils/geometry';
2
+ import { verticesDistance } from "../../../utils/geometry";
5
3
  import convert from 'convert-units';
6
- import Layer3D from './layer3D';
4
+ import Layer3D from "./layer3D";
7
5
  export function compareVertices(v0, v1) {
8
6
  return v0.x === v1.x ? v0.y - v1.y : v0.x - v1.x;
9
7
  }
@@ -15,6 +13,7 @@ export default function Scene3D(_ref) {
15
13
  mode = _ref.mode,
16
14
  downloadFlag = _ref.downloadFlag;
17
15
  var layers = scene.layers;
16
+ console.log(layers.toJS());
18
17
  var selectedLayer = layers.get(scene.selectedLayer);
19
18
  var ceilHeight = selectedLayer.ceilHeight;
20
19
  var selectedLine = selectedLayer.lines.get(selectedLayer.selected.lines.toJS()[0]);
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import Scene3D from './scene3D';
2
+ import Scene3D from "./scene3D";
3
3
  export default function State3D(_ref) {
4
4
  var state = _ref.state,
5
5
  catalog = _ref.catalog,