@threekit-tools/treble 0.0.91 → 0.0.92-next-01

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 (189) hide show
  1. package/dist/Treble/Treble.d.ts +2 -2
  2. package/dist/Treble/Treble.js +2 -2
  3. package/dist/Treble/index.d.ts +1 -1
  4. package/dist/Treble/index.js +1 -1
  5. package/dist/components/ThreekitProvider/index.js +3 -2
  6. package/dist/connection.d.ts +4 -1
  7. package/dist/connection.js +16 -53
  8. package/dist/hooks/useAttribute/index.js +1 -5
  9. package/dist/hooks/useNestedConfigurator/index.js +1 -2
  10. package/dist/hooks/useSpaces/SpacesLayout.d.ts +11 -0
  11. package/dist/hooks/useSpaces/SpacesLayout.js +74 -0
  12. package/dist/hooks/useSpaces/SpacesState.d.ts +177 -0
  13. package/dist/hooks/useSpaces/SpacesState.js +1814 -0
  14. package/dist/hooks/useSpaces/constants.d.ts +79 -0
  15. package/dist/hooks/useSpaces/constants.js +130 -0
  16. package/dist/hooks/useSpaces/dataHandlers.d.ts +38 -0
  17. package/dist/hooks/useSpaces/dataHandlers.js +407 -0
  18. package/dist/hooks/useSpaces/draw/clearCanvas.d.ts +2 -0
  19. package/dist/hooks/useSpaces/draw/clearCanvas.js +9 -0
  20. package/dist/hooks/useSpaces/draw/drawBackground.d.ts +2 -0
  21. package/dist/hooks/useSpaces/draw/drawBackground.js +12 -0
  22. package/dist/hooks/useSpaces/draw/drawDimensions.d.ts +3 -0
  23. package/dist/hooks/useSpaces/draw/drawDimensions.js +53 -0
  24. package/dist/hooks/useSpaces/draw/drawDoors.d.ts +9 -0
  25. package/dist/hooks/useSpaces/draw/drawDoors.js +99 -0
  26. package/dist/hooks/useSpaces/draw/drawFloor.d.ts +3 -0
  27. package/dist/hooks/useSpaces/draw/drawFloor.js +36 -0
  28. package/dist/hooks/useSpaces/draw/drawGrid.d.ts +3 -0
  29. package/dist/hooks/useSpaces/draw/drawGrid.js +36 -0
  30. package/dist/hooks/useSpaces/draw/drawGuides.d.ts +3 -0
  31. package/dist/hooks/useSpaces/draw/drawGuides.js +23 -0
  32. package/dist/hooks/useSpaces/draw/drawOpenings.d.ts +9 -0
  33. package/dist/hooks/useSpaces/draw/drawOpenings.js +72 -0
  34. package/dist/hooks/useSpaces/draw/drawVertices.d.ts +8 -0
  35. package/dist/hooks/useSpaces/draw/drawVertices.js +61 -0
  36. package/dist/hooks/useSpaces/draw/drawWalls.d.ts +11 -0
  37. package/dist/hooks/useSpaces/draw/drawWalls.js +90 -0
  38. package/dist/hooks/useSpaces/draw/drawWindows.d.ts +9 -0
  39. package/dist/hooks/useSpaces/draw/drawWindows.js +82 -0
  40. package/dist/hooks/useSpaces/draw/index.d.ts +11 -0
  41. package/dist/hooks/useSpaces/draw/index.js +129 -0
  42. package/dist/hooks/useSpaces/geometry/addThicknessToLine.d.ts +3 -0
  43. package/dist/hooks/useSpaces/geometry/addThicknessToLine.js +13 -0
  44. package/dist/hooks/useSpaces/geometry/areLinesEqual.d.ts +3 -0
  45. package/dist/hooks/useSpaces/geometry/areLinesEqual.js +17 -0
  46. package/dist/hooks/useSpaces/geometry/arePointsEqual.d.ts +3 -0
  47. package/dist/hooks/useSpaces/geometry/arePointsEqual.js +8 -0
  48. package/dist/hooks/useSpaces/geometry/arePointsWithinProximity.d.ts +3 -0
  49. package/dist/hooks/useSpaces/geometry/arePointsWithinProximity.js +11 -0
  50. package/dist/hooks/useSpaces/geometry/closestPointOnLine.d.ts +3 -0
  51. package/dist/hooks/useSpaces/geometry/closestPointOnLine.js +13 -0
  52. package/dist/hooks/useSpaces/geometry/doLinesOverlap.d.ts +2 -0
  53. package/dist/hooks/useSpaces/geometry/doLinesOverlap.js +16 -0
  54. package/dist/hooks/useSpaces/geometry/euclideanMod.d.ts +2 -0
  55. package/dist/hooks/useSpaces/geometry/euclideanMod.js +6 -0
  56. package/dist/hooks/useSpaces/geometry/findLoops.d.ts +6 -0
  57. package/dist/hooks/{useRoomBuilder → useSpaces/geometry}/findLoops.js +31 -13
  58. package/dist/hooks/useSpaces/geometry/getAllLineIntersections.d.ts +6 -0
  59. package/dist/hooks/useSpaces/geometry/getAllLineIntersections.js +23 -0
  60. package/dist/hooks/useSpaces/geometry/getAngleOfLineSegment.d.ts +3 -0
  61. package/dist/hooks/useSpaces/geometry/getAngleOfLineSegment.js +7 -0
  62. package/dist/hooks/useSpaces/geometry/getClosestPointOnLineSegment.d.ts +3 -0
  63. package/dist/hooks/useSpaces/geometry/getClosestPointOnLineSegment.js +17 -0
  64. package/dist/hooks/useSpaces/geometry/getDistanceToLine.d.ts +3 -0
  65. package/dist/hooks/useSpaces/geometry/getDistanceToLine.js +10 -0
  66. package/dist/hooks/useSpaces/geometry/getLengthOfLineSegment.d.ts +3 -0
  67. package/dist/hooks/useSpaces/geometry/getLengthOfLineSegment.js +7 -0
  68. package/dist/hooks/useSpaces/geometry/getLineAtOffsetOnLineSegment.d.ts +3 -0
  69. package/dist/hooks/useSpaces/geometry/getLineAtOffsetOnLineSegment.js +17 -0
  70. package/dist/hooks/useSpaces/geometry/getLineOtherPoint.d.ts +3 -0
  71. package/dist/hooks/useSpaces/geometry/getLineOtherPoint.js +11 -0
  72. package/dist/hooks/useSpaces/geometry/getLineSegmentsIntersection.d.ts +3 -0
  73. package/dist/hooks/useSpaces/geometry/getLineSegmentsIntersection.js +43 -0
  74. package/dist/hooks/useSpaces/geometry/getMidpointOfLineSegment.d.ts +3 -0
  75. package/dist/hooks/useSpaces/geometry/getMidpointOfLineSegment.js +9 -0
  76. package/dist/hooks/useSpaces/geometry/getParallelLineSegmentAtDistance.d.ts +3 -0
  77. package/dist/hooks/useSpaces/geometry/getParallelLineSegmentAtDistance.js +20 -0
  78. package/dist/hooks/useSpaces/geometry/getPointAtOffsetOnLineSegment.d.ts +3 -0
  79. package/dist/hooks/useSpaces/geometry/getPointAtOffsetOnLineSegment.js +11 -0
  80. package/dist/hooks/useSpaces/geometry/getPolygonArea.d.ts +3 -0
  81. package/dist/hooks/useSpaces/geometry/getPolygonArea.js +15 -0
  82. package/dist/hooks/useSpaces/geometry/getQuadrilateralArea.d.ts +3 -0
  83. package/dist/hooks/useSpaces/geometry/getQuadrilateralArea.js +16 -0
  84. package/dist/hooks/useSpaces/geometry/getTangetIntersectionAndOffset.d.ts +6 -0
  85. package/dist/hooks/useSpaces/geometry/getTangetIntersectionAndOffset.js +17 -0
  86. package/dist/hooks/useSpaces/geometry/getTriangleArea.d.ts +3 -0
  87. package/dist/hooks/useSpaces/geometry/getTriangleArea.js +9 -0
  88. package/dist/hooks/useSpaces/geometry/getUnitVectorOfLineSegment.d.ts +3 -0
  89. package/dist/hooks/useSpaces/geometry/getUnitVectorOfLineSegment.js +12 -0
  90. package/dist/hooks/useSpaces/geometry/index.d.ts +30 -0
  91. package/dist/hooks/useSpaces/geometry/index.js +64 -0
  92. package/dist/hooks/useSpaces/geometry/isPointInPolygon.d.ts +3 -0
  93. package/dist/hooks/useSpaces/geometry/isPointInPolygon.js +21 -0
  94. package/dist/hooks/useSpaces/geometry/isPointInQuadrilateral.d.ts +3 -0
  95. package/dist/hooks/useSpaces/geometry/isPointInQuadrilateral.js +25 -0
  96. package/dist/hooks/useSpaces/geometry/orderCoordinatesOnLineSegment.d.ts +3 -0
  97. package/dist/hooks/useSpaces/geometry/orderCoordinatesOnLineSegment.js +11 -0
  98. package/dist/hooks/useSpaces/geometry/splitLineAtOffset.d.ts +3 -0
  99. package/dist/hooks/useSpaces/geometry/splitLineAtOffset.js +12 -0
  100. package/dist/hooks/useSpaces/geometry/splitLineAtPoint.d.ts +3 -0
  101. package/dist/hooks/useSpaces/geometry/splitLineAtPoint.js +9 -0
  102. package/dist/hooks/useSpaces/geometry/splitLineAtPoints.d.ts +3 -0
  103. package/dist/hooks/useSpaces/geometry/splitLineAtPoints.js +28 -0
  104. package/dist/hooks/useSpaces/index.d.ts +95 -0
  105. package/dist/hooks/useSpaces/index.js +557 -0
  106. package/dist/hooks/useSpaces/themes/blueprint.d.ts +3 -0
  107. package/dist/hooks/useSpaces/themes/blueprint.js +96 -0
  108. package/dist/hooks/useSpaces/themes/default.d.ts +3 -0
  109. package/dist/hooks/useSpaces/themes/default.js +96 -0
  110. package/dist/hooks/{useRoomBuilder/themes.d.ts → useSpaces/themes/index.d.ts} +3 -4
  111. package/dist/hooks/useSpaces/themes/index.js +21 -0
  112. package/dist/hooks/useSpaces/themes/light.d.ts +3 -0
  113. package/dist/hooks/useSpaces/themes/light.js +96 -0
  114. package/dist/hooks/useSpaces/types.d.ts +378 -0
  115. package/dist/hooks/{useRoomBuilder → useSpaces}/types.js +19 -1
  116. package/dist/hooks/useSpaces/validators/areWallsDuplicated.d.ts +3 -0
  117. package/dist/hooks/useSpaces/validators/areWallsDuplicated.js +61 -0
  118. package/dist/hooks/useSpaces/validators/areWallsIntersecting.d.ts +3 -0
  119. package/dist/hooks/useSpaces/validators/areWallsIntersecting.js +42 -0
  120. package/dist/hooks/useSpaces/validators/areWallsOrphaningFeatures.d.ts +3 -0
  121. package/dist/hooks/useSpaces/validators/areWallsOrphaningFeatures.js +52 -0
  122. package/dist/hooks/useSpaces/validators/areWallsTooShort.d.ts +3 -0
  123. package/dist/hooks/useSpaces/validators/areWallsTooShort.js +37 -0
  124. package/dist/hooks/useSpaces/validators/index.d.ts +15 -0
  125. package/dist/hooks/useSpaces/validators/index.js +40 -0
  126. package/dist/hooks/useSpaces/validators/isFeatureCollidingWithExistingFeature.d.ts +3 -0
  127. package/dist/hooks/useSpaces/validators/isFeatureCollidingWithExistingFeature.js +31 -0
  128. package/dist/hooks/useSpaces/validators/isFeatureOutsideWallBounds.d.ts +3 -0
  129. package/dist/hooks/useSpaces/validators/isFeatureOutsideWallBounds.js +19 -0
  130. package/dist/hooks/useSpaces/validators/isLineTooShort.d.ts +3 -0
  131. package/dist/hooks/useSpaces/validators/isLineTooShort.js +26 -0
  132. package/dist/hooks/useSpaces/validators/isVertexLandingOnFeature.d.ts +4 -0
  133. package/dist/hooks/useSpaces/validators/isVertexLandingOnFeature.js +19 -0
  134. package/dist/hooks/useSpaces/validators/isWallEndingOnFeature.d.ts +3 -0
  135. package/dist/hooks/useSpaces/validators/isWallEndingOnFeature.js +19 -0
  136. package/dist/hooks/useSpaces/validators/isWallIntersectingFeature.d.ts +3 -0
  137. package/dist/hooks/useSpaces/validators/isWallIntersectingFeature.js +41 -0
  138. package/dist/hooks/useSpaces/validators/isWallOverlappingExisitingWalls.d.ts +3 -0
  139. package/dist/hooks/useSpaces/validators/isWallOverlappingExisitingWalls.js +54 -0
  140. package/dist/hooks/useSpaces/validators/isWallTooShort.d.ts +3 -0
  141. package/dist/hooks/useSpaces/validators/isWallTooShort.js +10 -0
  142. package/dist/hooks/{useRoomBuilder → useSpaces/validators}/messaging.js +1 -1
  143. package/dist/icons/Boundary.d.ts +3 -0
  144. package/dist/icons/Boundary.js +21 -0
  145. package/dist/icons/Draw.js +3 -3
  146. package/dist/icons/Player3D.d.ts +3 -0
  147. package/dist/icons/Player3D.js +21 -0
  148. package/dist/icons/RulerBlank.d.ts +3 -0
  149. package/dist/icons/RulerBlank.js +25 -0
  150. package/dist/icons/RulerDetailed.d.ts +3 -0
  151. package/dist/icons/RulerDetailed.js +27 -0
  152. package/dist/icons/Window.js +4 -4
  153. package/dist/icons/index.js +28 -0
  154. package/dist/icons/types.d.ts +1 -1
  155. package/dist/index.d.ts +17 -2
  156. package/dist/index.js +35 -5
  157. package/dist/store/attributes.d.ts +2 -1
  158. package/dist/store/index.d.ts +17 -31
  159. package/dist/store/index.js +3 -1
  160. package/dist/store/product.js +4 -7
  161. package/dist/store/spaces.d.ts +74 -0
  162. package/dist/store/spaces.js +354 -0
  163. package/dist/store/treble.d.ts +4 -2
  164. package/dist/store/treble.js +58 -50
  165. package/dist/store/wishlist.d.ts +20 -2
  166. package/dist/types.d.ts +14 -3
  167. package/package.json +2 -1
  168. package/dist/hooks/useRoomBuilder/RoomBuilderState.d.ts +0 -95
  169. package/dist/hooks/useRoomBuilder/RoomBuilderState.js +0 -1237
  170. package/dist/hooks/useRoomBuilder/constants.d.ts +0 -41
  171. package/dist/hooks/useRoomBuilder/constants.js +0 -48
  172. package/dist/hooks/useRoomBuilder/dataHandlers.d.ts +0 -18
  173. package/dist/hooks/useRoomBuilder/dataHandlers.js +0 -187
  174. package/dist/hooks/useRoomBuilder/draw.d.ts +0 -55
  175. package/dist/hooks/useRoomBuilder/draw.js +0 -573
  176. package/dist/hooks/useRoomBuilder/findLoops.d.ts +0 -5
  177. package/dist/hooks/useRoomBuilder/geometry.d.ts +0 -33
  178. package/dist/hooks/useRoomBuilder/geometry.js +0 -325
  179. package/dist/hooks/useRoomBuilder/index.d.ts +0 -40
  180. package/dist/hooks/useRoomBuilder/index.js +0 -303
  181. package/dist/hooks/useRoomBuilder/themes.js +0 -273
  182. package/dist/hooks/useRoomBuilder/types.d.ts +0 -238
  183. package/dist/hooks/useRoomBuilder/validators.d.ts +0 -36
  184. package/dist/hooks/useRoomBuilder/validators.js +0 -362
  185. package/dist/hooks/useSpaces/Canvas.d.ts +0 -37
  186. package/dist/hooks/useSpaces/Canvas.js +0 -199
  187. /package/dist/Treble/{snapshots.d.ts → snapshot.d.ts} +0 -0
  188. /package/dist/Treble/{snapshots.js → snapshot.js} +0 -0
  189. /package/dist/hooks/{useRoomBuilder → useSpaces/validators}/messaging.d.ts +0 -0
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.Ruler = void 0;
11
+ var react_1 = __importDefault(require("react"));
12
+ var styled_components_1 = __importDefault(require("styled-components"));
13
+ var SVG = styled_components_1.default.svg(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n .tk-icon {\n stroke: ", ";\n }\n"], ["\n .tk-icon {\n stroke: ", ";\n }\n"])), function (props) { return props.color || props.theme.textColor; });
14
+ var Ruler = function (props) {
15
+ return (react_1.default.createElement(SVG, { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg", color: props.color },
16
+ react_1.default.createElement("g", { clipPath: "url(#clip0_1031_536)" },
17
+ react_1.default.createElement("rect", { x: "5.75732", y: "1.51465", width: "18", height: "6", transform: "rotate(45 5.75732 1.51465)", className: "tk-icon", strokeWidth: "2" })),
18
+ react_1.default.createElement("defs", null,
19
+ react_1.default.createElement("clipPath", { id: "clip0_1031_536" },
20
+ react_1.default.createElement("rect", { width: "20", height: "20", fill: "white" })))));
21
+ };
22
+ exports.Ruler = Ruler;
23
+ exports.Ruler.iconName = 'ruler';
24
+ exports.default = exports.Ruler;
25
+ var templateObject_1;
@@ -0,0 +1,3 @@
1
+ import { IIcon } from './types';
2
+ export declare const Ruler: IIcon;
3
+ export default Ruler;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.Ruler = void 0;
11
+ var react_1 = __importDefault(require("react"));
12
+ var styled_components_1 = __importDefault(require("styled-components"));
13
+ var SVG = styled_components_1.default.svg(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n .tk-icon {\n stroke: ", ";\n }\n"], ["\n .tk-icon {\n stroke: ", ";\n }\n"])), function (props) { return props.color || props.theme.textColor; });
14
+ var Ruler = function (props) {
15
+ return (react_1.default.createElement(SVG, { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg", color: props.color },
16
+ react_1.default.createElement("g", { clipPath: "url(#clip0_1031_521)" },
17
+ react_1.default.createElement("rect", { x: "5.75732", y: "1.51465", width: "18", height: "6", transform: "rotate(45 5.75732 1.51465)", className: "tk-icon", strokeWidth: "2" }),
18
+ react_1.default.createElement("path", { d: "M7.82837 4L4.99994 6.82843M9.16899 5.34062L7.04767 7.46194M10.5096 6.68123L8.38828 8.80255M11.8502 8.02185L9.02179 10.8503", className: "tk-icon" }),
19
+ react_1.default.createElement("path", { d: "M11.8284 8L8.99994 10.8284M13.169 9.34062L11.0477 11.4619M14.5096 10.6812L12.3883 12.8026M15.8502 12.0219L13.0218 14.8503", className: "tk-icon" })),
20
+ react_1.default.createElement("defs", null,
21
+ react_1.default.createElement("clipPath", { id: "clip0_1031_521" },
22
+ react_1.default.createElement("rect", { width: "20", height: "20", fill: "white" })))));
23
+ };
24
+ exports.Ruler = Ruler;
25
+ exports.Ruler.iconName = 'ruler';
26
+ exports.default = exports.Ruler;
27
+ var templateObject_1;
@@ -10,11 +10,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.Window = void 0;
11
11
  var react_1 = __importDefault(require("react"));
12
12
  var styled_components_1 = __importDefault(require("styled-components"));
13
- var SVG = styled_components_1.default.svg(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n .tk-icon {\n fill: ", ";\n }\n"], ["\n .tk-icon {\n fill: ", ";\n }\n"])), function (props) { return props.color || props.theme.textColor; });
13
+ var Path = styled_components_1.default.path(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n fill: ", ";\n"], ["\n fill: ", ";\n"])), function (props) { return props.color || props.theme.textColor; });
14
14
  var Window = function (props) {
15
- return (react_1.default.createElement(SVG, { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg", color: props.color },
16
- react_1.default.createElement("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M2.28571 15.4286V4.42858H17.7603V15.4286H2.28571ZM10.4891 10.3947V14.5714H16.9031V10.3947H10.4891ZM16.9031 9.46248V5.28572H10.4891V9.46248H16.9031ZM9.55688 5.28572H3.14286V9.46248H9.55688V5.28572ZM3.14286 14.5714V10.3947H9.55688V14.5714H3.14286Z", className: "tk-icon" }),
17
- react_1.default.createElement("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M0.285714 2.71429C0.127919 2.71429 0 2.84221 0 3.00001V17C0 17.1578 0.127918 17.2857 0.285714 17.2857H19.7143C19.8721 17.2857 20 17.1578 20 17V3.00001C20 2.84221 19.8721 2.71429 19.7143 2.71429H0.285714ZM0.857143 3.57144V16.4286H19.1429V3.57144H0.857143Z", className: "tk-icon" })));
15
+ return (react_1.default.createElement("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg" },
16
+ react_1.default.createElement(Path, { fillRule: "evenodd", clipRule: "evenodd", color: props.color, d: "M2.28571 15.4286V4.42858H17.7603V15.4286H2.28571ZM10.4891 10.3947V14.5714H16.9031V10.3947H10.4891ZM16.9031 9.46248V5.28572H10.4891V9.46248H16.9031ZM9.55688 5.28572H3.14286V9.46248H9.55688V5.28572ZM3.14286 14.5714V10.3947H9.55688V14.5714H3.14286Z" }),
17
+ react_1.default.createElement(Path, { fillRule: "evenodd", clipRule: "evenodd", color: props.color, d: "M0.285714 2.71429C0.127919 2.71429 0 2.84221 0 3.00001V17C0 17.1578 0.127918 17.2857 0.285714 17.2857H19.7143C19.8721 17.2857 20 17.1578 20 17V3.00001C20 2.84221 19.8721 2.71429 19.7143 2.71429H0.285714ZM0.857143 3.57144V16.4286H19.1429V3.57144H0.857143Z" })));
18
18
  };
19
19
  exports.Window = Window;
20
20
  exports.Window.iconName = 'window';
@@ -33,9 +33,12 @@ var More_1 = __importDefault(require("./More"));
33
33
  var NewWindow_1 = __importDefault(require("./NewWindow"));
34
34
  var Pause_1 = __importDefault(require("./Pause"));
35
35
  var Play_1 = __importDefault(require("./Play"));
36
+ var Player3D_1 = __importDefault(require("./Player3D"));
36
37
  var Redo_1 = __importDefault(require("./Redo"));
37
38
  var Remove_1 = __importDefault(require("./Remove"));
38
39
  var Ruler_1 = __importDefault(require("./Ruler"));
40
+ var RulerBlank_1 = __importDefault(require("./RulerBlank"));
41
+ var RulerDetailed_1 = __importDefault(require("./RulerDetailed"));
39
42
  var Search_1 = __importDefault(require("./Search"));
40
43
  var Settings_1 = __importDefault(require("./Settings"));
41
44
  var Share_1 = __importDefault(require("./Share"));
@@ -56,6 +59,17 @@ var Window_1 = __importDefault(require("./Window"));
56
59
  var Wall_1 = __importDefault(require("./Wall"));
57
60
  var TrashCan_1 = __importDefault(require("./TrashCan"));
58
61
  var TrashCanAlt_1 = __importDefault(require("./TrashCanAlt"));
62
+ var GridSnapping_1 = __importDefault(require("./GridSnapping"));
63
+ var AngleSnapping_1 = __importDefault(require("./AngleSnapping"));
64
+ var Center_1 = __importDefault(require("./Center"));
65
+ var LayoutAlt_1 = __importDefault(require("./LayoutAlt"));
66
+ var Magnet_1 = __importDefault(require("./Magnet"));
67
+ var Save_1 = __importDefault(require("./Save"));
68
+ var UnitCm_1 = __importDefault(require("./UnitCm"));
69
+ var UnitMeter_1 = __importDefault(require("./UnitMeter"));
70
+ var UnitFeet_1 = __importDefault(require("./UnitFeet"));
71
+ var UnitInch_1 = __importDefault(require("./UnitInch"));
72
+ var Boundary_1 = __importDefault(require("./Boundary"));
59
73
  exports.default = (_a = {},
60
74
  _a[Add_1.default.iconName] = Add_1.default,
61
75
  _a[ArrowLeft_1.default.iconName] = ArrowLeft_1.default,
@@ -86,9 +100,12 @@ exports.default = (_a = {},
86
100
  _a[NewWindow_1.default.iconName] = NewWindow_1.default,
87
101
  _a[Pause_1.default.iconName] = Pause_1.default,
88
102
  _a[Play_1.default.iconName] = Play_1.default,
103
+ _a[Player3D_1.default.iconName] = Player3D_1.default,
89
104
  _a[Redo_1.default.iconName] = Redo_1.default,
90
105
  _a[Remove_1.default.iconName] = Remove_1.default,
91
106
  _a[Ruler_1.default.iconName] = Ruler_1.default,
107
+ _a[RulerBlank_1.default.iconName] = RulerBlank_1.default,
108
+ _a[RulerDetailed_1.default.iconName] = RulerDetailed_1.default,
92
109
  _a[Search_1.default.iconName] = Search_1.default,
93
110
  _a[Settings_1.default.iconName] = Settings_1.default,
94
111
  _a[Share_1.default.iconName] = Share_1.default,
@@ -109,4 +126,15 @@ exports.default = (_a = {},
109
126
  _a[Wall_1.default.iconName] = Wall_1.default,
110
127
  _a[TrashCan_1.default.iconName] = TrashCan_1.default,
111
128
  _a[TrashCanAlt_1.default.iconName] = TrashCanAlt_1.default,
129
+ _a[GridSnapping_1.default.iconName] = GridSnapping_1.default,
130
+ _a[AngleSnapping_1.default.iconName] = AngleSnapping_1.default,
131
+ _a[Center_1.default.iconName] = Center_1.default,
132
+ _a[LayoutAlt_1.default.iconName] = LayoutAlt_1.default,
133
+ _a[Magnet_1.default.iconName] = Magnet_1.default,
134
+ _a[Save_1.default.iconName] = Save_1.default,
135
+ _a[UnitCm_1.default.iconName] = UnitCm_1.default,
136
+ _a[UnitMeter_1.default.iconName] = UnitMeter_1.default,
137
+ _a[UnitFeet_1.default.iconName] = UnitFeet_1.default,
138
+ _a[UnitInch_1.default.iconName] = UnitInch_1.default,
139
+ _a[Boundary_1.default.iconName] = Boundary_1.default,
112
140
  _a);
@@ -1,4 +1,4 @@
1
- import React from "react";
1
+ import React from 'react';
2
2
  export interface IIconProps {
3
3
  color?: string;
4
4
  }
package/dist/index.d.ts CHANGED
@@ -18,7 +18,7 @@ import useNestedConfigurator from './hooks/useNestedConfigurator';
18
18
  import useLoadingProgress from './hooks/useLoadingProgress';
19
19
  import usePlayerReady from './hooks/usePlayerReady';
20
20
  import usePlayer from './hooks/usePlayer';
21
- import useRoomBuilder from './hooks/useRoomBuilder';
21
+ import useSpaces from './hooks/useSpaces';
22
22
  import ThreekitProvider from './components/ThreekitProvider';
23
23
  import Player from './components/Player';
24
24
  import Button from './components/Button';
@@ -57,6 +57,7 @@ import PlayerLoadingSpinner from './components/PlayerLoadingSpinner';
57
57
  import DraggableHint from './components/DraggableHint';
58
58
  import TurntableAnimation from './components/TurntableAnimation';
59
59
  import BreatheAnimation from './components/BreatheAnimation';
60
+ import SpacesLayoutIcon from './hooks/useSpaces/SpacesLayout';
60
61
  import AddIcon from './icons/Add';
61
62
  import ArrowLeftIcon from './icons/ArrowLeft';
62
63
  import ArrowRightIcon from './icons/ArrowRight';
@@ -86,9 +87,12 @@ import MoreIcon from './icons/More';
86
87
  import NewWindowIcon from './icons/NewWindow';
87
88
  import PauseIcon from './icons/Pause';
88
89
  import PlayIcon from './icons/Play';
90
+ import Player3DIcon from './icons/Player3D';
89
91
  import RedoIcon from './icons/Redo';
90
92
  import RemoveIcon from './icons/Remove';
91
93
  import RulerIcon from './icons/Ruler';
94
+ import RulerBlankIcon from './icons/RulerBlank';
95
+ import RulerDetailedIcon from './icons/RulerDetailed';
92
96
  import SearchIcon from './icons/Search';
93
97
  import SettingsIcon from './icons/Settings';
94
98
  import ShareIcon from './icons/Share';
@@ -109,4 +113,15 @@ import DoorIcon from './icons/Door';
109
113
  import OpeningIcon from './icons/Opening';
110
114
  import WallIcon from './icons/Wall';
111
115
  import LayoutIcon from './icons/Layout';
112
- export { useAttribute, useConfigurator, useConfigurationLoader, useFirstPlayerInteraction, useMetadata, useName, usePlayerLoadingStatus, useConfigurationChangeStatus, usePrice, useThreekitInitStatus, useZoom, useSnapshot, useWishlist, useShare, usePlayerPortal, useProductCache, useNestedConfigurator, useLoadingProgress, usePlayer, useRoomBuilder, usePlayerReady, ThreekitProvider, Player, Button, Cards, Dropdown, Strips, Swatch, TextInput, Tiles, TilesGroup, Upload, Switch, ProductName, ProductDescription, AttributeTitle, AttributeValue, TotalPrice, Skeleton, message, Modal, Drawer, Accordion, Tabs, PortalToArOverlay, PortalToElement, AwaitThreekitLoad, FlatForm, Zoom, Snapshots, Wishlist, Share, TrebleApp, ProductLayout, PlayerLoadingCircular, PlayerLoadingSpinner, DraggableHint, TurntableAnimation, BreatheAnimation, AddIcon, ArrowLeftIcon, ArrowRightIcon, CameraIcon, CaretDownIcon, CaretUpIcon, CaretLeftIcon, CaretRightIcon, CartIcon, CheckmateIcon, ClipboardIcon, ColorPickerIcon, CopyIcon, DeleteIcon, DoubleCaretLeftIcon, DoubleCaretRightIcon, DownloadIcon, DraggableIcon, DragIcon, EditIcon, HeartIcon, ImageIcon, InfoIcon, MailIcon, MenuIcon, MoreIcon, NewWindowIcon, PauseIcon, PlayIcon, RedoIcon, RemoveIcon, RulerIcon, SearchIcon, SettingsIcon, ShareIcon, SwitchIcon, TagIcon, UndoIcon, WishlistIcon, ZoomInIcon, ZoomOutIcon, SpinnerIcon, AngleIcon, TrashCanIcon, TrashCanAltIcon, CursorIcon, WindowIcon, DrawIcon, DoorIcon, OpeningIcon, WallIcon, LayoutIcon, };
116
+ import GridSnappingIcon from './icons/GridSnapping';
117
+ import AngleSnappingIcon from './icons/AngleSnapping';
118
+ import CenterIcon from './icons/Center';
119
+ import LayoutAltIcon from './icons/LayoutAlt';
120
+ import MagnetIcon from './icons/Magnet';
121
+ import SaveIcon from './icons/Save';
122
+ import UnitCmIcon from './icons/UnitCm';
123
+ import UnitMeterIcon from './icons/UnitMeter';
124
+ import UnitFeetIcon from './icons/UnitFeet';
125
+ import UnitInchIcon from './icons/UnitInch';
126
+ import BoundaryIcon from './icons/Boundary';
127
+ export { useAttribute, useConfigurator, useConfigurationLoader, useFirstPlayerInteraction, useMetadata, useName, usePlayerLoadingStatus, useConfigurationChangeStatus, usePrice, useThreekitInitStatus, useZoom, useSnapshot, useWishlist, useShare, usePlayerPortal, useProductCache, useNestedConfigurator, useLoadingProgress, usePlayer, useSpaces, usePlayerReady, ThreekitProvider, Player, Button, Cards, Dropdown, Strips, Swatch, TextInput, Tiles, TilesGroup, Upload, Switch, ProductName, ProductDescription, AttributeTitle, AttributeValue, TotalPrice, Skeleton, message, Modal, Drawer, Accordion, Tabs, PortalToArOverlay, PortalToElement, AwaitThreekitLoad, FlatForm, Zoom, Snapshots, Wishlist, Share, TrebleApp, ProductLayout, PlayerLoadingCircular, PlayerLoadingSpinner, DraggableHint, TurntableAnimation, BreatheAnimation, SpacesLayoutIcon, AddIcon, ArrowLeftIcon, ArrowRightIcon, CameraIcon, CaretDownIcon, CaretUpIcon, CaretLeftIcon, CaretRightIcon, CartIcon, CheckmateIcon, ClipboardIcon, ColorPickerIcon, CopyIcon, DeleteIcon, DoubleCaretLeftIcon, DoubleCaretRightIcon, DownloadIcon, DraggableIcon, DragIcon, EditIcon, HeartIcon, ImageIcon, InfoIcon, MailIcon, MenuIcon, MoreIcon, NewWindowIcon, PauseIcon, PlayIcon, Player3DIcon, RedoIcon, RemoveIcon, RulerIcon, RulerBlankIcon, RulerDetailedIcon, SearchIcon, SettingsIcon, ShareIcon, SwitchIcon, TagIcon, UndoIcon, WishlistIcon, ZoomInIcon, ZoomOutIcon, SpinnerIcon, AngleIcon, TrashCanIcon, TrashCanAltIcon, CursorIcon, WindowIcon, DrawIcon, DoorIcon, OpeningIcon, WallIcon, LayoutIcon, GridSnappingIcon, AngleSnappingIcon, CenterIcon, LayoutAltIcon, MagnetIcon, SaveIcon, UnitCmIcon, UnitMeterIcon, UnitFeetIcon, UnitInchIcon, BoundaryIcon, };
package/dist/index.js CHANGED
@@ -3,9 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Snapshots = exports.Zoom = exports.FlatForm = exports.AwaitThreekitLoad = exports.PortalToElement = exports.PortalToArOverlay = exports.Tabs = exports.Accordion = exports.Drawer = exports.Modal = exports.message = exports.Skeleton = exports.TotalPrice = exports.AttributeValue = exports.AttributeTitle = exports.ProductDescription = exports.ProductName = exports.Switch = exports.Upload = exports.TilesGroup = exports.Tiles = exports.TextInput = exports.Swatch = exports.Strips = exports.Dropdown = exports.Cards = exports.Button = exports.Player = exports.ThreekitProvider = exports.usePlayerReady = exports.useRoomBuilder = exports.usePlayer = exports.useLoadingProgress = exports.useNestedConfigurator = exports.useProductCache = exports.usePlayerPortal = exports.useShare = exports.useWishlist = exports.useSnapshot = exports.useZoom = exports.useThreekitInitStatus = exports.usePrice = exports.useConfigurationChangeStatus = exports.usePlayerLoadingStatus = exports.useName = exports.useMetadata = exports.useFirstPlayerInteraction = exports.useConfigurationLoader = exports.useConfigurator = exports.useAttribute = void 0;
7
- exports.ZoomOutIcon = exports.ZoomInIcon = exports.WishlistIcon = exports.UndoIcon = exports.TagIcon = exports.SwitchIcon = exports.ShareIcon = exports.SettingsIcon = exports.SearchIcon = exports.RulerIcon = exports.RemoveIcon = exports.RedoIcon = exports.PlayIcon = exports.PauseIcon = exports.NewWindowIcon = exports.MoreIcon = exports.MenuIcon = exports.MailIcon = exports.InfoIcon = exports.ImageIcon = exports.HeartIcon = exports.EditIcon = exports.DragIcon = exports.DraggableIcon = exports.DownloadIcon = exports.DoubleCaretRightIcon = exports.DoubleCaretLeftIcon = exports.DeleteIcon = exports.CopyIcon = exports.ColorPickerIcon = exports.ClipboardIcon = exports.CheckmateIcon = exports.CartIcon = exports.CaretRightIcon = exports.CaretLeftIcon = exports.CaretUpIcon = exports.CaretDownIcon = exports.CameraIcon = exports.ArrowRightIcon = exports.ArrowLeftIcon = exports.AddIcon = exports.BreatheAnimation = exports.TurntableAnimation = exports.DraggableHint = exports.PlayerLoadingSpinner = exports.PlayerLoadingCircular = exports.ProductLayout = exports.TrebleApp = exports.Share = exports.Wishlist = void 0;
8
- exports.LayoutIcon = exports.WallIcon = exports.OpeningIcon = exports.DoorIcon = exports.DrawIcon = exports.WindowIcon = exports.CursorIcon = exports.TrashCanAltIcon = exports.TrashCanIcon = exports.AngleIcon = exports.SpinnerIcon = void 0;
6
+ exports.Snapshots = exports.Zoom = exports.FlatForm = exports.AwaitThreekitLoad = exports.PortalToElement = exports.PortalToArOverlay = exports.Tabs = exports.Accordion = exports.Drawer = exports.Modal = exports.message = exports.Skeleton = exports.TotalPrice = exports.AttributeValue = exports.AttributeTitle = exports.ProductDescription = exports.ProductName = exports.Switch = exports.Upload = exports.TilesGroup = exports.Tiles = exports.TextInput = exports.Swatch = exports.Strips = exports.Dropdown = exports.Cards = exports.Button = exports.Player = exports.ThreekitProvider = exports.usePlayerReady = exports.useSpaces = exports.usePlayer = exports.useLoadingProgress = exports.useNestedConfigurator = exports.useProductCache = exports.usePlayerPortal = exports.useShare = exports.useWishlist = exports.useSnapshot = exports.useZoom = exports.useThreekitInitStatus = exports.usePrice = exports.useConfigurationChangeStatus = exports.usePlayerLoadingStatus = exports.useName = exports.useMetadata = exports.useFirstPlayerInteraction = exports.useConfigurationLoader = exports.useConfigurator = exports.useAttribute = void 0;
7
+ exports.TagIcon = exports.SwitchIcon = exports.ShareIcon = exports.SettingsIcon = exports.SearchIcon = exports.RulerDetailedIcon = exports.RulerBlankIcon = exports.RulerIcon = exports.RemoveIcon = exports.RedoIcon = exports.Player3DIcon = exports.PlayIcon = exports.PauseIcon = exports.NewWindowIcon = exports.MoreIcon = exports.MenuIcon = exports.MailIcon = exports.InfoIcon = exports.ImageIcon = exports.HeartIcon = exports.EditIcon = exports.DragIcon = exports.DraggableIcon = exports.DownloadIcon = exports.DoubleCaretRightIcon = exports.DoubleCaretLeftIcon = exports.DeleteIcon = exports.CopyIcon = exports.ColorPickerIcon = exports.ClipboardIcon = exports.CheckmateIcon = exports.CartIcon = exports.CaretRightIcon = exports.CaretLeftIcon = exports.CaretUpIcon = exports.CaretDownIcon = exports.CameraIcon = exports.ArrowRightIcon = exports.ArrowLeftIcon = exports.AddIcon = exports.SpacesLayoutIcon = exports.BreatheAnimation = exports.TurntableAnimation = exports.DraggableHint = exports.PlayerLoadingSpinner = exports.PlayerLoadingCircular = exports.ProductLayout = exports.TrebleApp = exports.Share = exports.Wishlist = void 0;
8
+ exports.BoundaryIcon = exports.UnitInchIcon = exports.UnitFeetIcon = exports.UnitMeterIcon = exports.UnitCmIcon = exports.SaveIcon = exports.MagnetIcon = exports.LayoutAltIcon = exports.CenterIcon = exports.AngleSnappingIcon = exports.GridSnappingIcon = exports.LayoutIcon = exports.WallIcon = exports.OpeningIcon = exports.DoorIcon = exports.DrawIcon = exports.WindowIcon = exports.CursorIcon = exports.TrashCanAltIcon = exports.TrashCanIcon = exports.AngleIcon = exports.SpinnerIcon = exports.ZoomOutIcon = exports.ZoomInIcon = exports.WishlistIcon = exports.UndoIcon = void 0;
9
9
  var useAttribute_1 = __importDefault(require("./hooks/useAttribute"));
10
10
  exports.useAttribute = useAttribute_1.default;
11
11
  var useConfigurator_1 = __importDefault(require("./hooks/useConfigurator"));
@@ -46,8 +46,8 @@ var usePlayerReady_1 = __importDefault(require("./hooks/usePlayerReady"));
46
46
  exports.usePlayerReady = usePlayerReady_1.default;
47
47
  var usePlayer_1 = __importDefault(require("./hooks/usePlayer"));
48
48
  exports.usePlayer = usePlayer_1.default;
49
- var useRoomBuilder_1 = __importDefault(require("./hooks/useRoomBuilder"));
50
- exports.useRoomBuilder = useRoomBuilder_1.default;
49
+ var useSpaces_1 = __importDefault(require("./hooks/useSpaces"));
50
+ exports.useSpaces = useSpaces_1.default;
51
51
  var ThreekitProvider_1 = __importDefault(require("./components/ThreekitProvider"));
52
52
  exports.ThreekitProvider = ThreekitProvider_1.default;
53
53
  var Player_1 = __importDefault(require("./components/Player"));
@@ -124,6 +124,8 @@ var TurntableAnimation_1 = __importDefault(require("./components/TurntableAnimat
124
124
  exports.TurntableAnimation = TurntableAnimation_1.default;
125
125
  var BreatheAnimation_1 = __importDefault(require("./components/BreatheAnimation"));
126
126
  exports.BreatheAnimation = BreatheAnimation_1.default;
127
+ var SpacesLayout_1 = __importDefault(require("./hooks/useSpaces/SpacesLayout"));
128
+ exports.SpacesLayoutIcon = SpacesLayout_1.default;
127
129
  var Add_1 = __importDefault(require("./icons/Add"));
128
130
  exports.AddIcon = Add_1.default;
129
131
  var ArrowLeft_1 = __importDefault(require("./icons/ArrowLeft"));
@@ -182,12 +184,18 @@ var Pause_1 = __importDefault(require("./icons/Pause"));
182
184
  exports.PauseIcon = Pause_1.default;
183
185
  var Play_1 = __importDefault(require("./icons/Play"));
184
186
  exports.PlayIcon = Play_1.default;
187
+ var Player3D_1 = __importDefault(require("./icons/Player3D"));
188
+ exports.Player3DIcon = Player3D_1.default;
185
189
  var Redo_1 = __importDefault(require("./icons/Redo"));
186
190
  exports.RedoIcon = Redo_1.default;
187
191
  var Remove_1 = __importDefault(require("./icons/Remove"));
188
192
  exports.RemoveIcon = Remove_1.default;
189
193
  var Ruler_1 = __importDefault(require("./icons/Ruler"));
190
194
  exports.RulerIcon = Ruler_1.default;
195
+ var RulerBlank_1 = __importDefault(require("./icons/RulerBlank"));
196
+ exports.RulerBlankIcon = RulerBlank_1.default;
197
+ var RulerDetailed_1 = __importDefault(require("./icons/RulerDetailed"));
198
+ exports.RulerDetailedIcon = RulerDetailed_1.default;
191
199
  var Search_1 = __importDefault(require("./icons/Search"));
192
200
  exports.SearchIcon = Search_1.default;
193
201
  var Settings_1 = __importDefault(require("./icons/Settings"));
@@ -228,3 +236,25 @@ var Wall_1 = __importDefault(require("./icons/Wall"));
228
236
  exports.WallIcon = Wall_1.default;
229
237
  var Layout_1 = __importDefault(require("./icons/Layout"));
230
238
  exports.LayoutIcon = Layout_1.default;
239
+ var GridSnapping_1 = __importDefault(require("./icons/GridSnapping"));
240
+ exports.GridSnappingIcon = GridSnapping_1.default;
241
+ var AngleSnapping_1 = __importDefault(require("./icons/AngleSnapping"));
242
+ exports.AngleSnappingIcon = AngleSnapping_1.default;
243
+ var Center_1 = __importDefault(require("./icons/Center"));
244
+ exports.CenterIcon = Center_1.default;
245
+ var LayoutAlt_1 = __importDefault(require("./icons/LayoutAlt"));
246
+ exports.LayoutAltIcon = LayoutAlt_1.default;
247
+ var Magnet_1 = __importDefault(require("./icons/Magnet"));
248
+ exports.MagnetIcon = Magnet_1.default;
249
+ var Save_1 = __importDefault(require("./icons/Save"));
250
+ exports.SaveIcon = Save_1.default;
251
+ var UnitCm_1 = __importDefault(require("./icons/UnitCm"));
252
+ exports.UnitCmIcon = UnitCm_1.default;
253
+ var UnitMeter_1 = __importDefault(require("./icons/UnitMeter"));
254
+ exports.UnitMeterIcon = UnitMeter_1.default;
255
+ var UnitFeet_1 = __importDefault(require("./icons/UnitFeet"));
256
+ exports.UnitFeetIcon = UnitFeet_1.default;
257
+ var UnitInch_1 = __importDefault(require("./icons/UnitInch"));
258
+ exports.UnitInchIcon = UnitInch_1.default;
259
+ var Boundary_1 = __importDefault(require("./icons/Boundary"));
260
+ exports.BoundaryIcon = Boundary_1.default;
@@ -12,7 +12,8 @@ export declare const getHydrationData: ((state: {
12
12
  translations: import("./translations").TranslationsState;
13
13
  wishlist: import("../Treble").WishlistArray;
14
14
  price: import("./price").PriceState;
15
- }) => [Record<string, IThreekitDisplayAttribute>, ITranslationMap | undefined, string | undefined]) & import("reselect").OutputSelectorFields<(args_0: AttributesState, args_1: string | undefined) => [Record<string, IThreekitDisplayAttribute>, ITranslationMap | undefined, string | undefined] & {
15
+ spaces: import("./spaces").SpacesState;
16
+ }) => [Record<string, IThreekitDisplayAttribute>, ITranslationMap | undefined, string | undefined]) & import("reselect").OutputSelectorFields<(args_0: AttributesState, args_1: string | undefined) => [Record<string, IThreekitDisplayAttribute>, ITranslationMap | undefined, string | undefined], {
16
17
  clearCache: () => void;
17
18
  }> & {
18
19
  clearCache: () => void;
@@ -1,79 +1,65 @@
1
1
  import { TypedUseSelectorHook } from 'react-redux';
2
2
  import { Reducer } from 'redux';
3
- declare const store: import("@reduxjs/toolkit").EnhancedStore<{
3
+ declare const store: import("@reduxjs/toolkit/dist/configureStore").ToolkitStore<{
4
4
  treble: import("./treble").TrebleState;
5
5
  product: import("./product").ProductState;
6
6
  attributes: import("./attributes").AttributesState;
7
7
  translations: import("./translations").TranslationsState;
8
8
  wishlist: import("../Treble").WishlistArray;
9
9
  price: import("./price").PriceState;
10
- }, import("redux").AnyAction, import("@reduxjs/toolkit").MiddlewareArray<import("redux-thunk").ThunkMiddleware<{
10
+ spaces: import("./spaces").SpacesState;
11
+ }, import("redux").AnyAction, import("@reduxjs/toolkit").MiddlewareArray<[import("@reduxjs/toolkit").ThunkMiddleware<{
11
12
  treble: import("./treble").TrebleState;
12
13
  product: import("./product").ProductState;
13
14
  attributes: import("./attributes").AttributesState;
14
15
  translations: import("./translations").TranslationsState;
15
16
  wishlist: import("../Treble").WishlistArray;
16
17
  price: import("./price").PriceState;
17
- }, import("redux").AnyAction, null> | import("redux-thunk").ThunkMiddleware<{
18
+ spaces: import("./spaces").SpacesState;
19
+ }, import("redux").AnyAction, undefined>]> | import("@reduxjs/toolkit").MiddlewareArray<[import("@reduxjs/toolkit").ThunkMiddleware<{
18
20
  treble: import("./treble").TrebleState;
19
21
  product: import("./product").ProductState;
20
22
  attributes: import("./attributes").AttributesState;
21
23
  translations: import("./translations").TranslationsState;
22
24
  wishlist: import("../Treble").WishlistArray;
23
25
  price: import("./price").PriceState;
24
- }, import("redux").AnyAction, undefined> | import("redux").Middleware<{}, {
26
+ spaces: import("./spaces").SpacesState;
27
+ }, import("redux").AnyAction, undefined>, import("redux").Middleware<{}, any, import("redux").Dispatch<import("redux").AnyAction>>]>>;
28
+ export declare const createStore: (reducer?: Record<string, Reducer>) => import("@reduxjs/toolkit/dist/configureStore").ToolkitStore<{
25
29
  treble: import("./treble").TrebleState;
26
30
  product: import("./product").ProductState;
27
31
  attributes: import("./attributes").AttributesState;
28
32
  translations: import("./translations").TranslationsState;
29
33
  wishlist: import("../Treble").WishlistArray;
30
34
  price: import("./price").PriceState;
31
- }, import("redux").Dispatch<import("redux").AnyAction>>>>;
32
- export declare const createStore: (reducer?: Record<string, Reducer>) => import("@reduxjs/toolkit").EnhancedStore<{
35
+ spaces: import("./spaces").SpacesState;
36
+ }, import("redux").AnyAction, import("@reduxjs/toolkit").MiddlewareArray<[import("@reduxjs/toolkit").ThunkMiddleware<{
33
37
  treble: import("./treble").TrebleState;
34
38
  product: import("./product").ProductState;
35
39
  attributes: import("./attributes").AttributesState;
36
40
  translations: import("./translations").TranslationsState;
37
41
  wishlist: import("../Treble").WishlistArray;
38
42
  price: import("./price").PriceState;
39
- }, import("redux").AnyAction, import("@reduxjs/toolkit").MiddlewareArray<import("redux-thunk").ThunkMiddleware<{
43
+ spaces: import("./spaces").SpacesState;
44
+ }, import("redux").AnyAction, undefined>]> | import("@reduxjs/toolkit").MiddlewareArray<[import("@reduxjs/toolkit").ThunkMiddleware<{
40
45
  treble: import("./treble").TrebleState;
41
46
  product: import("./product").ProductState;
42
47
  attributes: import("./attributes").AttributesState;
43
48
  translations: import("./translations").TranslationsState;
44
49
  wishlist: import("../Treble").WishlistArray;
45
50
  price: import("./price").PriceState;
46
- }, import("redux").AnyAction, null> | import("redux-thunk").ThunkMiddleware<{
47
- treble: import("./treble").TrebleState;
48
- product: import("./product").ProductState;
49
- attributes: import("./attributes").AttributesState;
50
- translations: import("./translations").TranslationsState;
51
- wishlist: import("../Treble").WishlistArray;
52
- price: import("./price").PriceState;
53
- }, import("redux").AnyAction, undefined> | import("redux").Middleware<{}, {
54
- treble: import("./treble").TrebleState;
55
- product: import("./product").ProductState;
56
- attributes: import("./attributes").AttributesState;
57
- translations: import("./translations").TranslationsState;
58
- wishlist: import("../Treble").WishlistArray;
59
- price: import("./price").PriceState;
60
- }, import("redux").Dispatch<import("redux").AnyAction>>>>;
51
+ spaces: import("./spaces").SpacesState;
52
+ }, import("redux").AnyAction, undefined>, import("redux").Middleware<{}, any, import("redux").Dispatch<import("redux").AnyAction>>]>>;
61
53
  export declare type RootState = ReturnType<typeof store.getState>;
62
54
  export declare type ThreekitDispatch = typeof store.dispatch;
63
- export declare const useThreekitDispatch: () => import("redux").Dispatch<import("redux").AnyAction> & import("@reduxjs/toolkit").ThunkDispatch<{
64
- treble: import("./treble").TrebleState;
65
- product: import("./product").ProductState;
66
- attributes: import("./attributes").AttributesState;
67
- translations: import("./translations").TranslationsState;
68
- wishlist: import("../Treble").WishlistArray;
69
- price: import("./price").PriceState;
70
- }, null, import("redux").AnyAction> & import("@reduxjs/toolkit").ThunkDispatch<{
55
+ export declare const useThreekitDispatch: () => import("@reduxjs/toolkit").ThunkDispatch<{
71
56
  treble: import("./treble").TrebleState;
72
57
  product: import("./product").ProductState;
73
58
  attributes: import("./attributes").AttributesState;
74
59
  translations: import("./translations").TranslationsState;
75
60
  wishlist: import("../Treble").WishlistArray;
76
61
  price: import("./price").PriceState;
77
- }, undefined, import("redux").AnyAction>;
62
+ spaces: import("./spaces").SpacesState;
63
+ }, undefined, import("redux").AnyAction> & import("redux").Dispatch<import("redux").AnyAction>;
78
64
  export declare const useThreekitSelector: TypedUseSelectorHook<RootState>;
79
65
  export default createStore;
@@ -25,6 +25,7 @@ var attributes_1 = __importDefault(require("./attributes"));
25
25
  var wishlist_1 = __importDefault(require("./wishlist"));
26
26
  var translations_1 = __importDefault(require("./translations"));
27
27
  var price_1 = __importDefault(require("./price"));
28
+ var spaces_1 = __importDefault(require("./spaces"));
28
29
  var store = (0, toolkit_1.configureStore)({
29
30
  reducer: {
30
31
  treble: treble_1.default,
@@ -33,6 +34,7 @@ var store = (0, toolkit_1.configureStore)({
33
34
  translations: translations_1.default,
34
35
  wishlist: wishlist_1.default,
35
36
  price: price_1.default,
37
+ spaces: spaces_1.default,
36
38
  },
37
39
  middleware: function (getDefaultMiddleware) {
38
40
  return constants_1.TREBLE_DEBUG
@@ -44,7 +46,7 @@ var createStore = function (reducer) {
44
46
  if (!reducer)
45
47
  return store;
46
48
  return (0, toolkit_1.configureStore)({
47
- reducer: __assign(__assign({}, reducer), { treble: treble_1.default, product: product_1.default, attributes: attributes_1.default, translations: translations_1.default, wishlist: wishlist_1.default, price: price_1.default }),
49
+ reducer: __assign(__assign({}, reducer), { treble: treble_1.default, product: product_1.default, attributes: attributes_1.default, translations: translations_1.default, wishlist: wishlist_1.default, price: price_1.default, spaces: spaces_1.default }),
48
50
  middleware: function (getDefaultMiddleware) {
49
51
  return constants_1.TREBLE_DEBUG
50
52
  ? getDefaultMiddleware().concat(redux_logger_1.default)
@@ -52,7 +52,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
52
52
  Object.defineProperty(exports, "__esModule", { value: true });
53
53
  exports.resetProductConfiguration = exports.removeProductIdx = exports.changeActiveCacheIdx = exports.loadNewProduct = exports.loadProduct = exports.cacheActiveProduct = exports.initProduct = exports.setProducts = exports.getProductCache = exports.getActiveCacheIdx = exports.getMetadata = exports.getName = exports.getProductId = exports.decrementActiveCacheIdx = exports.incrementActiveCacheIdx = exports.setActiveCacheIdx = exports.removeFromCache = exports.updateActiveProductCache = exports.appendToCache = exports.setMetadata = exports.setName = exports.setProductId = exports.PRODUCTS = void 0;
54
54
  var toolkit_1 = require("@reduxjs/toolkit");
55
- var types_1 = require("../types");
56
55
  var connection_1 = __importDefault(require("../connection"));
57
56
  var treble_1 = require("./treble");
58
57
  var attributes_1 = require("./attributes");
@@ -157,8 +156,7 @@ var initProduct = function () { return function (dispatch, getState) {
157
156
  var metadata = window.threekit.configurator.getMetadata();
158
157
  var productId = state.product.id;
159
158
  if (productId && !INITIAL_CONFIGURATIONS[productId]) {
160
- var player = window.threekit.player.enableApi(types_1.PRIVATE_APIS.PLAYER);
161
- var configuration = player.configurator.getFullConfiguration();
159
+ var configuration = window.threekit.configurator.getFullConfiguration();
162
160
  INITIAL_CONFIGURATIONS[productId] = JSON.stringify(configuration);
163
161
  }
164
162
  dispatch((0, exports.setName)(name));
@@ -176,8 +174,7 @@ var cacheActiveProduct = function (config) {
176
174
  var thumbnail = config === null || config === void 0 ? void 0 : config.thumbnail;
177
175
  var connectionObj = connection_1.default.getConnection();
178
176
  delete connectionObj.threekitDomain;
179
- var player = window.threekit.player.enableApi(types_1.PRIVATE_APIS.PLAYER);
180
- var configuration = player.configurator.getFullConfiguration();
177
+ var configuration = window.threekit.configurator.getFullConfiguration();
181
178
  var data = { connection: connectionObj, configuration: configuration };
182
179
  var product = Object.assign({
183
180
  id: state.product.id,
@@ -253,19 +250,19 @@ var changeActiveCacheIdx = function (idx) {
253
250
  state = getState();
254
251
  cache = state.product.cache;
255
252
  if (idx >= cache.length)
256
- return [2, Promise.resolve()];
253
+ return [2];
257
254
  dispatch((0, exports.cacheActiveProduct)());
258
255
  cachedProduct = __assign({}, state.product.cache[idx]);
259
256
  data = JSON.parse(cachedProduct.data);
260
257
  connection_1.default.connect(data.connection);
261
258
  dispatch((0, exports.setActiveCacheIdx)(idx));
262
- dispatch((0, exports.setProductId)(cachedProduct.id));
263
259
  return [4, dispatch((0, treble_1.reloadPlayer)({
264
260
  assetId: data.connection.assetId,
265
261
  configuration: data.configuration,
266
262
  }))];
267
263
  case 1:
268
264
  _a.sent();
265
+ dispatch((0, exports.setProductId)(cachedProduct.id));
269
266
  return [2];
270
267
  }
271
268
  });
@@ -0,0 +1,74 @@
1
+ import { RootState, ThreekitDispatch } from './index';
2
+ import { IConfiguration } from '../types';
3
+ import { IAttributeDefaults, ICoordinate2D, IDimensionOptions, IModes, ISpacesAttributes, ISpacesConfigUser, IUnits } from '../hooks/useSpaces/types';
4
+ import { WallModes } from '../hooks/useSpaces/constants';
5
+ import Spaces from '../hooks/useSpaces/SpacesState';
6
+ interface ILayout {
7
+ label: string;
8
+ configuration: IConfiguration;
9
+ loop: Array<ICoordinate2D[]>;
10
+ }
11
+ interface IAttributeMap {
12
+ walls: string;
13
+ startX: string;
14
+ startZ: string;
15
+ endX: string;
16
+ endZ: string;
17
+ }
18
+ interface InitConfig {
19
+ parameters: Partial<ISpacesConfigUser>;
20
+ layoutIds: Array<string>;
21
+ attributeNames: ISpacesAttributes;
22
+ canvasDimensions?: ICoordinate2D;
23
+ setPendingStatus: (status: boolean) => void;
24
+ }
25
+ export interface SpacesState {
26
+ initialized: boolean;
27
+ mode: IModes;
28
+ layouts: Array<ILayout>;
29
+ unit: IUnits;
30
+ zoom: number;
31
+ translation: ICoordinate2D;
32
+ showDimensions: IDimensionOptions;
33
+ angleSnappingEnabled: boolean;
34
+ guideSnappingEnabled: boolean;
35
+ gridSnappingEnabled: boolean;
36
+ defaults: IAttributeDefaults;
37
+ wallModeOptions: WallModes[];
38
+ wallModeAssetIds: Record<WallModes, string>;
39
+ wallModeValue: WallModes;
40
+ }
41
+ export declare const setInitialized: import("@reduxjs/toolkit").ActionCreatorWithPayload<boolean, string>;
42
+ export declare const setLayouts: import("@reduxjs/toolkit").ActionCreatorWithPayload<ILayout[], string>;
43
+ export declare const setZoom: import("@reduxjs/toolkit").ActionCreatorWithPayload<number, string>;
44
+ export declare const setUnit: import("@reduxjs/toolkit").ActionCreatorWithPayload<IUnits, string>;
45
+ export declare const setTranslation: import("@reduxjs/toolkit").ActionCreatorWithPayload<ICoordinate2D, string>;
46
+ export declare const setMode: import("@reduxjs/toolkit").ActionCreatorWithPayload<IModes, string>;
47
+ export declare const setShowDimensions: import("@reduxjs/toolkit").ActionCreatorWithPayload<IDimensionOptions, string>;
48
+ export declare const setAngleSnappingEnabled: import("@reduxjs/toolkit").ActionCreatorWithPayload<boolean, string>;
49
+ export declare const setGuideSnappingEnabled: import("@reduxjs/toolkit").ActionCreatorWithPayload<boolean, string>;
50
+ export declare const setGridSnappingEnabled: import("@reduxjs/toolkit").ActionCreatorWithPayload<boolean, string>;
51
+ export declare const setDefaults: import("@reduxjs/toolkit").ActionCreatorWithPayload<IAttributeDefaults, string>;
52
+ export declare const setWallModeOptions: import("@reduxjs/toolkit").ActionCreatorWithPayload<WallModes[], string>;
53
+ export declare const setWallModeAssetIds: import("@reduxjs/toolkit").ActionCreatorWithPayload<Record<WallModes, string>, string>;
54
+ export declare const setWallModeValue: import("@reduxjs/toolkit").ActionCreatorWithPayload<WallModes, string>;
55
+ declare const reducer: import("redux").Reducer<SpacesState, import("redux").AnyAction>;
56
+ export declare const getInitialized: (state: RootState) => boolean;
57
+ export declare const getMode: (state: RootState) => IModes;
58
+ export declare const getLayouts: (state: RootState) => Array<ILayout>;
59
+ export declare const getUnit: (state: RootState) => IUnits;
60
+ export declare const getZoom: (state: RootState) => number;
61
+ export declare const getTranslation: (state: RootState) => ICoordinate2D;
62
+ export declare const getShowDimensions: (state: RootState) => IDimensionOptions;
63
+ export declare const getAngleSnappingEnabled: (state: RootState) => boolean;
64
+ export declare const getGuideSnappingEnabled: (state: RootState) => boolean;
65
+ export declare const getGridSnappingEnabled: (state: RootState) => boolean;
66
+ export declare const getDefaults: (state: RootState) => IAttributeDefaults;
67
+ export declare const getWallMode: (state: RootState) => {
68
+ options: WallModes[];
69
+ value: WallModes;
70
+ assetId: string;
71
+ };
72
+ export declare const hydrateLayouts: (configurationIds: Array<string>, attributeMap: IAttributeMap) => (dispatch: ThreekitDispatch, getState: () => RootState) => Promise<void>;
73
+ export declare const initSpaces: (initConfig: InitConfig) => (dispatch: ThreekitDispatch, getState: () => RootState) => Promise<Spaces>;
74
+ export default reducer;