kitchen-simulator 4.1.6-react-18 → 4.2.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 (206) hide show
  1. package/README.md +3 -0
  2. package/es/AppContext.js +1 -1
  3. package/es/LiteKitchenConfigurator.js +162 -111
  4. package/es/LiteRenderer.js +161 -129
  5. package/es/actions/export.js +25 -12
  6. package/es/actions/project-actions.js +2 -1
  7. package/es/assets/gltf/door_sliding.bin +0 -0
  8. package/es/assets/img/svg/bottombar/elevation.svg +12 -5
  9. package/es/catalog/catalog.js +21 -5
  10. package/es/catalog/factories/area-factory-3d.js +17 -17
  11. package/es/catalog/factories/wall-factory.js +1 -1
  12. package/es/catalog/holes/window-clear/planner-element.js +2 -2
  13. package/es/catalog/properties/export.js +21 -0
  14. package/es/catalog/properties/property-checkbox.js +68 -0
  15. package/es/catalog/properties/property-color.js +39 -0
  16. package/es/catalog/properties/property-enum.js +50 -0
  17. package/es/catalog/properties/property-hidden.js +19 -0
  18. package/es/catalog/properties/property-lenght-measure.js +100 -0
  19. package/es/catalog/properties/property-length-measure.js +84 -0
  20. package/es/catalog/properties/property-length-measure_hole.js +100 -0
  21. package/es/catalog/properties/property-number.js +48 -0
  22. package/es/catalog/properties/property-read-only.js +26 -0
  23. package/es/catalog/properties/property-string.js +48 -0
  24. package/es/catalog/properties/property-toggle.js +39 -0
  25. package/es/catalog/properties/shared-property-style.js +14 -0
  26. package/es/catalog/utils/exporter.js +24 -11
  27. package/es/catalog/utils/item-loader.js +224 -220
  28. package/es/class/hole.js +0 -2
  29. package/es/class/item.js +92 -70
  30. package/es/class/layer.js +1 -1
  31. package/es/class/line.js +4 -8
  32. package/es/class/project.js +96 -81
  33. package/es/components/content.js +5 -93
  34. package/es/components/export.js +4 -6
  35. package/es/components/style/button.js +106 -0
  36. package/es/components/style/cancel-button.js +21 -0
  37. package/es/components/style/content-container.js +30 -0
  38. package/es/components/style/content-title.js +25 -0
  39. package/es/components/style/delete-button.js +24 -0
  40. package/es/components/style/export.js +28 -2
  41. package/es/components/style/form-block.js +20 -0
  42. package/es/components/style/form-color-input.js +26 -0
  43. package/es/components/style/form-label.js +22 -0
  44. package/es/components/style/form-number-input.js +29 -29
  45. package/es/components/style/form-number-input_2.js +200 -0
  46. package/es/components/style/form-select.js +19 -0
  47. package/es/components/style/form-slider.js +60 -0
  48. package/es/components/style/form-submit-button.js +25 -0
  49. package/es/components/style/form-text-input.js +69 -0
  50. package/es/components/viewer2d/grids/grid-streak.js +1 -1
  51. package/es/components/viewer2d/group.js +5 -4
  52. package/es/components/viewer2d/item.js +155 -359
  53. package/es/components/viewer2d/layer.js +1 -1
  54. package/es/components/viewer2d/line.js +22 -54
  55. package/es/components/viewer2d/ruler.js +16 -11
  56. package/es/components/viewer2d/rulerDist.js +38 -51
  57. package/es/components/viewer2d/rulerX.js +4 -2
  58. package/es/components/viewer2d/rulerY.js +3 -0
  59. package/es/components/viewer2d/scene.js +17 -12
  60. package/es/components/viewer2d/state.js +1 -1
  61. package/es/components/viewer2d/utils.js +2 -2
  62. package/es/components/viewer2d/vertex.js +3 -2
  63. package/es/components/viewer2d/viewer2d.js +76 -118
  64. package/es/components/viewer3d/front3D.js +2 -1
  65. package/es/components/viewer3d/ruler-utils/scene3D.js +1 -1
  66. package/es/components/viewer3d/scene-creator.js +270 -69
  67. package/es/components/viewer3d/viewer3d-first-person.js +26 -32
  68. package/es/components/viewer3d/viewer3d.js +106 -130
  69. package/es/constants.js +7 -2
  70. package/es/devLiteRenderer.js +491 -150
  71. package/es/index.js +589 -61
  72. package/es/models.js +13 -8
  73. package/es/plugins/SVGLoader.js +1414 -0
  74. package/es/plugins/console-debugger.js +34 -0
  75. package/es/plugins/export.js +7 -0
  76. package/es/plugins/keyboard.js +110 -0
  77. package/es/reducers/project-reducer.js +4 -1
  78. package/es/reducers/viewer2d-reducer.js +3 -1
  79. package/es/reducers/viewer3d-reducer.js +3 -1
  80. package/es/styles/export.js +5 -0
  81. package/es/styles/tabs.css +40 -0
  82. package/es/utils/geometry.js +77 -119
  83. package/es/utils/helper.js +38 -1
  84. package/es/utils/isolate-event-handler.js +829 -609
  85. package/es/utils/molding.js +459 -11
  86. package/es/utils/ruler.js +58 -0
  87. package/lib/AppContext.js +1 -1
  88. package/lib/LiteKitchenConfigurator.js +161 -111
  89. package/lib/LiteRenderer.js +160 -129
  90. package/lib/actions/export.js +35 -39
  91. package/lib/actions/project-actions.js +2 -1
  92. package/lib/assets/gltf/door_sliding.bin +0 -0
  93. package/lib/assets/img/svg/bottombar/elevation.svg +12 -5
  94. package/lib/catalog/catalog.js +20 -4
  95. package/lib/catalog/factories/area-factory-3d.js +14 -14
  96. package/lib/catalog/factories/wall-factory.js +1 -1
  97. package/lib/catalog/holes/window-clear/planner-element.js +2 -2
  98. package/lib/catalog/properties/export.js +81 -0
  99. package/lib/catalog/properties/property-checkbox.js +76 -0
  100. package/lib/catalog/properties/property-color.js +47 -0
  101. package/lib/catalog/properties/property-enum.js +58 -0
  102. package/lib/catalog/properties/property-hidden.js +27 -0
  103. package/lib/catalog/properties/property-lenght-measure.js +108 -0
  104. package/lib/catalog/properties/property-length-measure.js +92 -0
  105. package/lib/catalog/properties/property-length-measure_hole.js +108 -0
  106. package/lib/catalog/properties/property-number.js +56 -0
  107. package/lib/catalog/properties/property-read-only.js +34 -0
  108. package/lib/catalog/properties/property-string.js +56 -0
  109. package/lib/catalog/properties/property-toggle.js +47 -0
  110. package/lib/catalog/properties/shared-property-style.js +21 -0
  111. package/lib/catalog/utils/exporter.js +24 -11
  112. package/lib/catalog/utils/item-loader.js +221 -217
  113. package/lib/class/hole.js +0 -2
  114. package/lib/class/item.js +90 -68
  115. package/lib/class/layer.js +1 -1
  116. package/lib/class/line.js +3 -7
  117. package/lib/class/project.js +96 -81
  118. package/lib/components/content.js +5 -93
  119. package/lib/components/export.js +6 -26
  120. package/lib/components/style/button.js +115 -0
  121. package/lib/components/style/cancel-button.js +29 -0
  122. package/lib/components/style/content-container.js +38 -0
  123. package/lib/components/style/content-title.js +35 -0
  124. package/lib/components/style/delete-button.js +34 -0
  125. package/lib/components/style/export.js +105 -1
  126. package/lib/components/style/form-block.js +28 -0
  127. package/lib/components/style/form-color-input.js +34 -0
  128. package/lib/components/style/form-label.js +30 -0
  129. package/lib/components/style/form-number-input.js +29 -29
  130. package/lib/components/style/form-number-input_2.js +209 -0
  131. package/lib/components/style/form-select.js +29 -0
  132. package/lib/components/style/form-slider.js +68 -0
  133. package/lib/components/style/form-submit-button.js +35 -0
  134. package/lib/components/style/form-text-input.js +78 -0
  135. package/lib/components/viewer2d/grids/grid-streak.js +1 -1
  136. package/lib/components/viewer2d/group.js +5 -4
  137. package/lib/components/viewer2d/item.js +152 -356
  138. package/lib/components/viewer2d/layer.js +1 -1
  139. package/lib/components/viewer2d/line.js +22 -54
  140. package/lib/components/viewer2d/ruler.js +15 -10
  141. package/lib/components/viewer2d/rulerDist.js +38 -51
  142. package/lib/components/viewer2d/rulerX.js +4 -2
  143. package/lib/components/viewer2d/rulerY.js +3 -0
  144. package/lib/components/viewer2d/scene.js +17 -12
  145. package/lib/components/viewer2d/state.js +1 -1
  146. package/lib/components/viewer2d/utils.js +2 -2
  147. package/lib/components/viewer2d/vertex.js +3 -2
  148. package/lib/components/viewer2d/viewer2d.js +74 -115
  149. package/lib/components/viewer3d/front3D.js +2 -1
  150. package/lib/components/viewer3d/ruler-utils/scene3D.js +1 -1
  151. package/lib/components/viewer3d/scene-creator.js +267 -66
  152. package/lib/components/viewer3d/viewer3d-first-person.js +26 -32
  153. package/lib/components/viewer3d/viewer3d.js +103 -126
  154. package/lib/constants.js +12 -7
  155. package/lib/devLiteRenderer.js +489 -148
  156. package/lib/index.js +591 -61
  157. package/lib/models.js +13 -8
  158. package/lib/plugins/SVGLoader.js +1419 -0
  159. package/lib/plugins/console-debugger.js +42 -0
  160. package/lib/plugins/export.js +25 -0
  161. package/lib/plugins/keyboard.js +117 -0
  162. package/lib/reducers/project-reducer.js +4 -1
  163. package/lib/reducers/viewer2d-reducer.js +3 -1
  164. package/lib/reducers/viewer3d-reducer.js +3 -1
  165. package/lib/styles/export.js +13 -0
  166. package/lib/styles/tabs.css +40 -0
  167. package/lib/utils/geometry.js +77 -119
  168. package/lib/utils/helper.js +40 -1
  169. package/lib/utils/isolate-event-handler.js +829 -608
  170. package/lib/utils/molding.js +460 -9
  171. package/lib/utils/ruler.js +63 -0
  172. package/package.json +21 -20
  173. package/es/mocks/appliancePayload.json +0 -27
  174. package/es/mocks/cabinetPayload.json +0 -1914
  175. package/es/mocks/cabinetPayload2.json +0 -76
  176. package/es/mocks/dataBundle2.json +0 -4
  177. package/es/mocks/distancePayload.json +0 -6
  178. package/es/mocks/doorStylePayload2.json +0 -84
  179. package/es/mocks/furnishingPayload.json +0 -23
  180. package/es/mocks/itemCDSPayload.json +0 -27
  181. package/es/mocks/lightingPayload.json +0 -23
  182. package/es/mocks/mockProps.json +0 -43
  183. package/es/mocks/mockProps2.json +0 -9
  184. package/es/mocks/moldingPayload.json +0 -19
  185. package/es/mocks/projectItemsCatalog.json +0 -133
  186. package/es/mocks/rectangleShape.json +0 -238
  187. package/es/mocks/replaceCabinetPayload.json +0 -81
  188. package/es/mocks/roomShapePayload.json +0 -5
  189. package/es/useAppContext.js +0 -8
  190. package/lib/mocks/appliancePayload.json +0 -27
  191. package/lib/mocks/cabinetPayload.json +0 -1914
  192. package/lib/mocks/cabinetPayload2.json +0 -76
  193. package/lib/mocks/dataBundle2.json +0 -4
  194. package/lib/mocks/distancePayload.json +0 -6
  195. package/lib/mocks/doorStylePayload2.json +0 -84
  196. package/lib/mocks/furnishingPayload.json +0 -23
  197. package/lib/mocks/itemCDSPayload.json +0 -27
  198. package/lib/mocks/lightingPayload.json +0 -23
  199. package/lib/mocks/mockProps.json +0 -43
  200. package/lib/mocks/mockProps2.json +0 -9
  201. package/lib/mocks/moldingPayload.json +0 -19
  202. package/lib/mocks/projectItemsCatalog.json +0 -133
  203. package/lib/mocks/rectangleShape.json +0 -238
  204. package/lib/mocks/replaceCabinetPayload.json +0 -81
  205. package/lib/mocks/roomShapePayload.json +0 -5
  206. package/lib/useAppContext.js +0 -16
@@ -4,14 +4,118 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
+ Object.defineProperty(exports, "Button", {
8
+ enumerable: true,
9
+ get: function get() {
10
+ return _button["default"];
11
+ }
12
+ });
13
+ Object.defineProperty(exports, "CancelButton", {
14
+ enumerable: true,
15
+ get: function get() {
16
+ return _cancelButton["default"];
17
+ }
18
+ });
19
+ Object.defineProperty(exports, "ContentContainer", {
20
+ enumerable: true,
21
+ get: function get() {
22
+ return _contentContainer["default"];
23
+ }
24
+ });
25
+ Object.defineProperty(exports, "ContentTitle", {
26
+ enumerable: true,
27
+ get: function get() {
28
+ return _contentTitle["default"];
29
+ }
30
+ });
31
+ Object.defineProperty(exports, "DeleteButton", {
32
+ enumerable: true,
33
+ get: function get() {
34
+ return _deleteButton["default"];
35
+ }
36
+ });
37
+ Object.defineProperty(exports, "FormBlock", {
38
+ enumerable: true,
39
+ get: function get() {
40
+ return _formBlock["default"];
41
+ }
42
+ });
43
+ Object.defineProperty(exports, "FormColorInput", {
44
+ enumerable: true,
45
+ get: function get() {
46
+ return _formColorInput["default"];
47
+ }
48
+ });
49
+ Object.defineProperty(exports, "FormLabel", {
50
+ enumerable: true,
51
+ get: function get() {
52
+ return _formLabel["default"];
53
+ }
54
+ });
7
55
  Object.defineProperty(exports, "FormNumberInput", {
8
56
  enumerable: true,
9
57
  get: function get() {
10
58
  return _formNumberInput["default"];
11
59
  }
12
60
  });
61
+ Object.defineProperty(exports, "FormNumberInput2", {
62
+ enumerable: true,
63
+ get: function get() {
64
+ return _formNumberInput_["default"];
65
+ }
66
+ });
67
+ Object.defineProperty(exports, "FormSelect", {
68
+ enumerable: true,
69
+ get: function get() {
70
+ return _formSelect["default"];
71
+ }
72
+ });
73
+ Object.defineProperty(exports, "FormSlider", {
74
+ enumerable: true,
75
+ get: function get() {
76
+ return _formSlider["default"];
77
+ }
78
+ });
79
+ Object.defineProperty(exports, "FormSubmitButton", {
80
+ enumerable: true,
81
+ get: function get() {
82
+ return _formSubmitButton["default"];
83
+ }
84
+ });
85
+ Object.defineProperty(exports, "FormTextInput", {
86
+ enumerable: true,
87
+ get: function get() {
88
+ return _formTextInput["default"];
89
+ }
90
+ });
13
91
  exports["default"] = void 0;
92
+ var _button = _interopRequireDefault(require("./button"));
93
+ var _cancelButton = _interopRequireDefault(require("./cancel-button"));
94
+ var _contentContainer = _interopRequireDefault(require("./content-container"));
95
+ var _contentTitle = _interopRequireDefault(require("./content-title"));
96
+ var _deleteButton = _interopRequireDefault(require("./delete-button"));
97
+ var _formBlock = _interopRequireDefault(require("./form-block"));
98
+ var _formColorInput = _interopRequireDefault(require("./form-color-input"));
99
+ var _formLabel = _interopRequireDefault(require("./form-label"));
14
100
  var _formNumberInput = _interopRequireDefault(require("./form-number-input"));
101
+ var _formSelect = _interopRequireDefault(require("./form-select"));
102
+ var _formSlider = _interopRequireDefault(require("./form-slider"));
103
+ var _formSubmitButton = _interopRequireDefault(require("./form-submit-button"));
104
+ var _formTextInput = _interopRequireDefault(require("./form-text-input"));
105
+ var _formNumberInput_ = _interopRequireDefault(require("./form-number-input_2"));
15
106
  var _default = exports["default"] = {
16
- FormNumberInput: _formNumberInput["default"]
107
+ Button: _button["default"],
108
+ CancelButton: _cancelButton["default"],
109
+ ContentContainer: _contentContainer["default"],
110
+ ContentTitle: _contentTitle["default"],
111
+ DeleteButton: _deleteButton["default"],
112
+ FormBlock: _formBlock["default"],
113
+ FormColorInput: _formColorInput["default"],
114
+ FormLabel: _formLabel["default"],
115
+ FormNumberInput: _formNumberInput["default"],
116
+ FormSelect: _formSelect["default"],
117
+ FormSlider: _formSlider["default"],
118
+ FormSubmitButton: _formSubmitButton["default"],
119
+ FormTextInput: _formTextInput["default"],
120
+ FormNumberInput2: _formNumberInput_["default"]
17
121
  };
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = FormBlock;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
+ var _react = _interopRequireDefault(require("react"));
12
+ var _excluded = ["children", "style"];
13
+ 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; }
14
+ 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) { (0, _defineProperty2["default"])(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; }
15
+ var BASE_STYLE = {
16
+ marginBottom: '16px'
17
+ };
18
+ function FormBlock(_ref) {
19
+ var children = _ref.children,
20
+ style = _ref.style,
21
+ rest = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
22
+ return /*#__PURE__*/_react["default"].createElement("div", (0, _extends2["default"])({
23
+ style: _objectSpread(_objectSpread({}, BASE_STYLE), {}, {
24
+ style: style
25
+ })
26
+ }, rest), children);
27
+ }
28
+ module.exports = exports.default;
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = FormColorInput;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _formTextInput = _interopRequireDefault(require("./form-text-input"));
12
+ var _excluded = ["onChange"];
13
+ var STYLE = {
14
+ padding: 0,
15
+ border: 0
16
+ };
17
+ var EREG_NUMBER = /^.*$/;
18
+ function FormColorInput(_ref) {
19
+ var onChange = _ref.onChange,
20
+ rest = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
21
+ var onChangeCustom = function onChangeCustom(event) {
22
+ var value = event.target.value;
23
+ if (EREG_NUMBER.test(value)) {
24
+ onChange(event);
25
+ }
26
+ };
27
+ return /*#__PURE__*/_react["default"].createElement(_formTextInput["default"], (0, _extends2["default"])({
28
+ type: "color",
29
+ style: STYLE,
30
+ onChange: onChangeCustom,
31
+ autoComplete: "off"
32
+ }, rest));
33
+ }
34
+ module.exports = exports.default;
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = FormLabel;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
+ var _react = _interopRequireDefault(require("react"));
12
+ var _excluded = ["children", "style"];
13
+ 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; }
14
+ 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) { (0, _defineProperty2["default"])(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; }
15
+ var BASE_STYLE = {
16
+ display: 'block',
17
+ marginBottom: '2px',
18
+ fontSize: '12px'
19
+ };
20
+ function FormLabel(_ref) {
21
+ var children = _ref.children,
22
+ style = _ref.style,
23
+ rest = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
24
+ return /*#__PURE__*/_react["default"].createElement("label", (0, _extends2["default"])({
25
+ style: _objectSpread(_objectSpread({}, BASE_STYLE), {}, {
26
+ style: style
27
+ })
28
+ }, rest), children);
29
+ }
30
+ module.exports = exports.default;
@@ -11,17 +11,17 @@ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/creat
11
11
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
12
12
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
13
13
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
14
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
14
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
15
15
  var _react = _interopRequireWildcard(require("react"));
16
16
  var _propTypes = _interopRequireDefault(require("prop-types"));
17
17
  var _constants = require("../../constants");
18
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
18
19
  var _helper = require("../../utils/helper");
19
- var _AppContext = _interopRequireDefault(require("../../AppContext"));
20
+ var _templateObject;
20
21
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
21
- 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; }
22
- 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) { (0, _defineProperty2["default"])(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; }
23
22
  function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
24
23
  function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
24
+ var StyledInput = _styledComponents["default"].input(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: block;\n padding: 15px 25px 12px 0px;\n width: 120px;\n color: ", ";\n background-color: rgb(255, 255, 255);\n border: 2px solid;\n text-align: right;\n float: right;\n font-family: ", ";\n font-size: 16px;\n font-weight: 600;\n line-height: 17px;\n border-radius: 5px;\n outline: 0;\n :focus {\n border-color: ", ";\n }\n"])), _constants.TEXT_COLOR_NEUTRAL_0, _constants.DEFAULT_FONT_FAMILY, _constants.SECONDARY_PURPLE_COLOR);
25
25
  var FormNumberInput = exports["default"] = /*#__PURE__*/function (_Component) {
26
26
  function FormNumberInput(props, context) {
27
27
  var _this;
@@ -39,14 +39,26 @@ var FormNumberInput = exports["default"] = /*#__PURE__*/function (_Component) {
39
39
  }
40
40
  (0, _inherits2["default"])(FormNumberInput, _Component);
41
41
  return (0, _createClass2["default"])(FormNumberInput, [{
42
- key: "componentDidUpdate",
43
- value: function componentDidUpdate(prevProps) {
44
- if (this.props.value !== prevProps.value || this.props.focus !== prevProps.focus) {
42
+ key: "componentDidMount",
43
+ value: function componentDidMount() {
44
+ if (this.input.current && ['width', 'length'].includes(this.props.labelName.toLowerCase())) {
45
+ this.input.current.focus();
46
+ this.input.current.select();
47
+ }
48
+ }
49
+ }, {
50
+ key: "componentWillReceiveProps",
51
+ value: function componentWillReceiveProps(nextProps) {
52
+ if (this.props.value !== nextProps.value || this.props.focus !== nextProps.focus) {
45
53
  this.setState({
46
- showedValue: this.props.value,
47
- focusOn: this.props.focus
54
+ showedValue: nextProps.value,
55
+ focusOn: nextProps.focus
48
56
  });
49
57
  }
58
+ }
59
+ }, {
60
+ key: "componentDidUpdate",
61
+ value: function componentDidUpdate(prevProps, preprevState) {
50
62
  if (this.props.value !== prevProps.value && prevProps.labelName !== 'Ceiling Height') {
51
63
  this.input.current.focus();
52
64
  this.input.current.select();
@@ -67,6 +79,7 @@ var FormNumberInput = exports["default"] = /*#__PURE__*/function (_Component) {
67
79
  });
68
80
  }
69
81
  }
82
+ return null;
70
83
  }
71
84
  }, {
72
85
  key: "render",
@@ -100,30 +113,13 @@ var FormNumberInput = exports["default"] = /*#__PURE__*/function (_Component) {
100
113
  });
101
114
  }
102
115
  };
103
- var baseInputStyle = {
104
- display: 'block',
105
- padding: '15px 25px 12px 0px',
106
- width: '120px',
107
- color: _constants.TEXT_COLOR_NEUTRAL_0,
108
- backgroundColor: 'rgb(255, 255, 255)',
109
- border: '2px solid',
110
- textAlign: 'right',
111
- "float": 'right',
112
- fontFamily: _constants.DEFAULT_FONT_FAMILY,
113
- fontSize: '16px',
114
- fontWeight: 600,
115
- lineHeight: '17px',
116
- borderRadius: '5px',
117
- outline: 0,
118
- borderColor: this.state.focusOn ? _constants.SECONDARY_PURPLE_COLOR : undefined
119
- };
120
- return /*#__PURE__*/_react["default"].createElement("input", {
116
+ return /*#__PURE__*/_react["default"].createElement(StyledInput, {
121
117
  id: "form_number_input",
122
118
  autoFocus: this.state.focusOn,
123
119
  readOnly: !!this.props.disabled,
124
120
  type: "text",
125
121
  value: currValue,
126
- style: _objectSpread(_objectSpread({}, baseInputStyle), style),
122
+ style: style,
127
123
  onChange: function onChange(evt) {
128
124
  _this2.context.projectActions.copyProperties('ddddd');
129
125
  var valid = regexp.test(evt.nativeEvent.target.value);
@@ -166,7 +162,6 @@ var FormNumberInput = exports["default"] = /*#__PURE__*/function (_Component) {
166
162
  }
167
163
  }]);
168
164
  }(_react.Component);
169
- (0, _defineProperty2["default"])(FormNumberInput, "contextType", _AppContext["default"]);
170
165
  FormNumberInput.propTypes = {
171
166
  value: _propTypes["default"].oneOfType([_propTypes["default"].number, _propTypes["default"].string]),
172
167
  style: _propTypes["default"].object,
@@ -180,6 +175,11 @@ FormNumberInput.propTypes = {
180
175
  labelName: _propTypes["default"].string,
181
176
  isCeiling: _propTypes["default"].string
182
177
  };
178
+ FormNumberInput.contextTypes = {
179
+ translator: _propTypes["default"].object.isRequired,
180
+ projectActions: _propTypes["default"].object.isRequired,
181
+ linesActions: _propTypes["default"].object.isRequired
182
+ };
183
183
  FormNumberInput.defaultProps = {
184
184
  value: 0,
185
185
  style: {},
@@ -0,0 +1,209 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
13
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
14
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
+ var _react = _interopRequireWildcard(require("react"));
16
+ var _propTypes = _interopRequireDefault(require("prop-types"));
17
+ var SharedStyle = _interopRequireWildcard(require("../../shared-style"));
18
+ var _md = require("react-icons/md");
19
+ var _constants = require("../../constants");
20
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
21
+ 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; }
22
+ 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) { (0, _defineProperty2["default"])(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; }
23
+ function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
24
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
25
+ var STYLE_INPUT = {
26
+ display: 'block',
27
+ width: '100%',
28
+ padding: '0 2px',
29
+ fontSize: '13px',
30
+ lineHeight: '1.25',
31
+ color: SharedStyle.PRIMARY_COLOR.input,
32
+ backgroundColor: SharedStyle.COLORS.white,
33
+ backgroundImage: 'none',
34
+ border: '1px solid rgba(0,0,0,.15)',
35
+ outline: 'none',
36
+ height: '30px'
37
+ };
38
+ var confirmStyle = {
39
+ position: 'absolute',
40
+ cursor: 'pointer',
41
+ width: '20px',
42
+ height: '20px',
43
+ right: '5px',
44
+ top: '5px',
45
+ backgroundColor: SharedStyle.SECONDARY_COLOR.main,
46
+ color: '#FFF',
47
+ transition: 'all 0.1s linear'
48
+ };
49
+ var FormNumberInput = exports["default"] = /*#__PURE__*/function (_Component) {
50
+ function FormNumberInput(props, context) {
51
+ var _this;
52
+ (0, _classCallCheck2["default"])(this, FormNumberInput);
53
+ _this = _callSuper(this, FormNumberInput, [props, context]);
54
+ _this.state = {
55
+ focus: false,
56
+ valid: true,
57
+ showedValue: props.value,
58
+ disabled: props.disabled === true ? true : false,
59
+ focusOn: false
60
+ };
61
+ return _this;
62
+ }
63
+ (0, _inherits2["default"])(FormNumberInput, _Component);
64
+ return (0, _createClass2["default"])(FormNumberInput, [{
65
+ key: "componentWillReceiveProps",
66
+ value: function componentWillReceiveProps(nextProps) {
67
+ if (this.props.value !== nextProps.value || this.props.focus !== nextProps.focus) {
68
+ this.setState({
69
+ showedValue: nextProps.value,
70
+ focusOn: nextProps.focus
71
+ });
72
+ }
73
+ if (this.props.focus !== nextProps.focus) {
74
+ this.Input.focus();
75
+ this.Input.select();
76
+ }
77
+ }
78
+ }, {
79
+ key: "render",
80
+ value: function render() {
81
+ var _this2 = this;
82
+ var _this$props = this.props,
83
+ value = _this$props.value,
84
+ min = _this$props.min,
85
+ max = _this$props.max,
86
+ precision = _this$props.precision,
87
+ onChange = _this$props.onChange,
88
+ onValid = _this$props.onValid,
89
+ onInvalid = _this$props.onInvalid,
90
+ style = _this$props.style,
91
+ placeholder = _this$props.placeholder;
92
+ var numericInputStyle = _objectSpread(_objectSpread({}, STYLE_INPUT), style);
93
+ if (this.state.focusOn) numericInputStyle.border = "1px solid ".concat(SharedStyle.SECONDARY_COLOR.main);
94
+ var regexp = new RegExp("^-?([0-9]+)?\\.?([0-9]{0,".concat(precision, "})?$"));
95
+ if (!isNaN(min) && isFinite(min) && this.state.showedValue < min) this.setState({
96
+ showedValue: min
97
+ }); // value = min;
98
+ if (!isNaN(max) && isFinite(max) && this.state.showedValue > max) this.setState({
99
+ showedValue: max
100
+ }); // value = max;
101
+
102
+ var currValue = regexp.test(this.state.showedValue) ? this.state.showedValue : parseFloat(this.state.showedValue).toFixed(precision);
103
+ var different = parseFloat(this.props.value).toFixed(precision) !== parseFloat(this.state.showedValue).toFixed(precision);
104
+ var saveFn = function saveFn(e) {
105
+ e.stopPropagation();
106
+ if (_this2.state.valid) {
107
+ var savedValue = _this2.state.showedValue !== '' && _this2.state.showedValue !== '-' ? parseFloat(_this2.state.showedValue) : 0;
108
+ _this2.setState({
109
+ showedValue: savedValue
110
+ });
111
+ onChange({
112
+ target: {
113
+ value: savedValue
114
+ }
115
+ });
116
+ }
117
+ };
118
+ return /*#__PURE__*/_react["default"].createElement("div", {
119
+ style: {
120
+ position: 'relative'
121
+ }
122
+ }, /*#__PURE__*/_react["default"].createElement("input", {
123
+ autoFocus: this.state.focusOn,
124
+ readOnly: this.state.disabled,
125
+ type: "text",
126
+ value: currValue,
127
+ style: numericInputStyle,
128
+ onChange: function onChange(evt) {
129
+ var valid = regexp.test(evt.nativeEvent.target.value);
130
+ if (valid) {
131
+ _this2.setState({
132
+ showedValue: evt.nativeEvent.target.value
133
+ });
134
+ if (onValid) onValid(evt.nativeEvent);
135
+ } else {
136
+ if (onInvalid) onInvalid(evt.nativeEvent);
137
+ }
138
+ _this2.setState({
139
+ valid: valid
140
+ });
141
+ },
142
+ onFocus: function onFocus(e) {
143
+ return _this2.setState({
144
+ focusOn: true
145
+ });
146
+ },
147
+ onBlur: function onBlur(e) {
148
+ return _this2.setState({
149
+ focusOn: false
150
+ });
151
+ },
152
+ ref: function ref(ele) {
153
+ _this2.Input = ele;
154
+ },
155
+ onKeyDown: function onKeyDown(e) {
156
+ var keyCode = e.keyCode || e.which;
157
+ if (keyCode == _constants.KEYBOARD_BUTTON_CODE.ENTER || keyCode == _constants.KEYBOARD_BUTTON_CODE.TAB) {
158
+ saveFn(e);
159
+ _this2.Input.blur();
160
+ }
161
+ if (keyCode == _constants.KEYBOARD_BUTTON_CODE.ESC) {
162
+ _this2.context.projectActions.rollback();
163
+ }
164
+ },
165
+ placeholder: placeholder
166
+ }), /*#__PURE__*/_react["default"].createElement("div", {
167
+ onClick: function onClick(e) {
168
+ if (different) saveFn(e);
169
+ },
170
+ title: this.context.translator.t('Confirm'),
171
+ style: _objectSpread(_objectSpread({}, confirmStyle), {}, {
172
+ visibility: different ? 'visible' : 'hidden',
173
+ opacity: different ? '1' : '0'
174
+ })
175
+ }, /*#__PURE__*/_react["default"].createElement(_md.MdUpdate, {
176
+ style: {
177
+ width: '100%',
178
+ height: '100%',
179
+ padding: '0.2em',
180
+ color: '#FFF'
181
+ }
182
+ })));
183
+ }
184
+ }]);
185
+ }(_react.Component);
186
+ FormNumberInput.propTypes = {
187
+ value: _propTypes["default"].oneOfType([_propTypes["default"].number, _propTypes["default"].string]),
188
+ style: _propTypes["default"].object,
189
+ onChange: _propTypes["default"].func.isRequired,
190
+ onValid: _propTypes["default"].func,
191
+ onInvalid: _propTypes["default"].func,
192
+ min: _propTypes["default"].number,
193
+ max: _propTypes["default"].number,
194
+ precision: _propTypes["default"].number,
195
+ placeholder: _propTypes["default"].string
196
+ };
197
+ FormNumberInput.contextTypes = {
198
+ translator: _propTypes["default"].object.isRequired,
199
+ projectActions: _propTypes["default"].object.isRequired
200
+ };
201
+ FormNumberInput.defaultProps = {
202
+ value: 0,
203
+ style: {},
204
+ min: Number.MIN_SAFE_INTEGER,
205
+ max: Number.MAX_SAFE_INTEGER,
206
+ precision: 2,
207
+ disabled: false
208
+ };
209
+ module.exports = exports.default;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = FormSelect;
9
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
12
+ var _react = _interopRequireDefault(require("react"));
13
+ var SharedStyle = _interopRequireWildcard(require("../../shared-style"));
14
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
15
+ var _constants = require("../../constants");
16
+ var _excluded = ["children", "style"];
17
+ var _templateObject;
18
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
19
+ var StyledSelect = _styledComponents["default"].select(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: block;\n width: 120px;\n float: right;\n padding: 15px 10px 12px 0px;\n color: ", ";\n border: 2px solid;\n font-family: ", ";\n font-size: 12px;\n font-weight: 600;\n line-height: 17px;\n text-align: right;\n outline: none;\n border-radius: 5px;\n :hover {\n border-color: ", ";\n }\n :focus {\n border-color: ", ";\n }\n"])), _constants.TEXT_COLOR_NEUTRAL_3, _constants.DEFAULT_FONT_FAMILY, _constants.SECONDARY_PURPLE_COLOR, _constants.SECONDARY_PURPLE_COLOR);
20
+ function FormSelect(_ref) {
21
+ var children = _ref.children,
22
+ style = _ref.style,
23
+ rest = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
24
+ return /*#__PURE__*/_react["default"].createElement(StyledSelect, (0, _extends2["default"])({
25
+ type: "text",
26
+ style: style
27
+ }, rest), children);
28
+ }
29
+ module.exports = exports.default;
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = FormNumberInput;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _formTextInput = _interopRequireDefault(require("./form-text-input"));
12
+ var _excluded = ["value", "onChange", "min", "max", "step"];
13
+ var sliderContainerStyle = {
14
+ display: 'inline-block',
15
+ width: '80%',
16
+ marginRight: '5%'
17
+ };
18
+ var sliderStyle = {
19
+ display: 'block',
20
+ width: '100%',
21
+ height: '30px'
22
+ };
23
+ var textContainerStyle = {
24
+ display: 'inline-block',
25
+ width: '15%',
26
+ "float": 'right'
27
+ };
28
+ var textStyle = {
29
+ height: '34px',
30
+ textAlign: 'center'
31
+ };
32
+ function FormNumberInput(_ref) {
33
+ var value = _ref.value,
34
+ onChange = _ref.onChange,
35
+ _ref$min = _ref.min,
36
+ min = _ref$min === void 0 ? 0 : _ref$min,
37
+ _ref$max = _ref.max,
38
+ max = _ref$max === void 0 ? 100 : _ref$max,
39
+ _ref$step = _ref.step,
40
+ step = _ref$step === void 0 ? 1 : _ref$step,
41
+ rest = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
42
+ // Handle both slider and text input changes
43
+ var handleSliderChange = function handleSliderChange(e) {
44
+ onChange(Number(e.target.value));
45
+ };
46
+ var handleTextChange = function handleTextChange(e) {
47
+ var val = e.target.value === '' ? '' : Number(e.target.value);
48
+ onChange(val);
49
+ };
50
+ return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("div", {
51
+ style: sliderContainerStyle
52
+ }, /*#__PURE__*/_react["default"].createElement("input", (0, _extends2["default"])({
53
+ type: "range",
54
+ style: sliderStyle,
55
+ min: min,
56
+ max: max,
57
+ step: step,
58
+ value: value,
59
+ onChange: handleSliderChange
60
+ }, rest))), /*#__PURE__*/_react["default"].createElement("div", {
61
+ style: textContainerStyle
62
+ }, /*#__PURE__*/_react["default"].createElement(_formTextInput["default"], {
63
+ value: value,
64
+ onChange: handleTextChange,
65
+ style: textStyle
66
+ })));
67
+ }
68
+ module.exports = exports.default;